Skip to content

Humanoid robot detailed design document

[!NOTE] For the latest implementation status, please refer to Functional Implementation Status (Remaining Functionality).

This document summarizes the design outline of an autonomous bipedal humanoid robot in the EvoSpikeNet project. Describe the sensor and actuator configuration, control architecture, integration method with distributed brain, functions of each part, etc.

0. Distributed brain overall configuration

Structure of a large-scale distributed brain system involving robots. Showing major cortical areas and interconnections.

0.1 RANK and node type

Each process has a numerical value called RANK that indicates its position in the brain, and a node_type that specifies its functional category. The table below shows examples of major ranges and corresponding types.

RANK range node_type functional area description
0 executive / pfc prefrontal cortex decision making/executive control
1–9 vision visual cortex image processing/pattern recognition
5–15 auditory auditory cortex speech/sound processing
10–12,16–17 motor / spatial motor cortex/parietal lobe motor planning/spatial processing
18–19 speech language generation Broca/Wernicke domain
20–21 memory memory hippocampus/context retention
22–23 decision additional executive higher-order reasoning
Other general General purpose No specific area

The above corresponds to NODE_TYPE_DEFINITIONS defined in evospikenet/node_types.py.

0.2 Rank number list and explanation

More detailed correspondence for each rank number is shown below. Node types may overlap.

RANK biological name node_type description
0 Prefrontal cortex (PFC) executive/pfc decision making, planning
1 V1 vision early visual processing
2 V2 vision lower-order visual processing
3 V4 vision Color/shape processing
4 IT / language vision / language Higher vision/language
5 A1 auditory Basic audio processing
6 A2 auditory secondary hearing
7 Dorsal1 vision visual-spatial processing
8 Dorsal2 vision visual-spatial processing
9 Dorsal3 vision visual-spatial processing
10 M1 motor Main motor execution
11 Premotor motor Motor planning support
12 Cerebellum motor Cooperation and learning
13 STG1 auditory Higher order hearing
14 STG2 auditory Higher order hearing
15 STG3 auditory Higher order hearing
16 Parietal1 spatial spatial cognition
17 Parietal2 spatial Spatial cognition │
18 Broca speech language generation
19 Wernicke speech language understanding
20 memory memory context storage
21 memory memory long-term memory
22 decision decision additional executive
23 decision decision additional executive

0.3 Inter-node correlation table

Shows communication and dependencies between major node types.

Sender node_type Receiver node_type Purpose/Example
vision motor Motor planning based on visual input
auditory motor Exercise by voice command
executive motor Control by higher-order decisions
motor vision Visual feedback of motor prediction
motor auditory Voice adjustment during motor movements that involve speech
memory executive providing context

0.4 Humanoid-specific node mapping

A list of nodes actually activated for humanoid robots and their corresponding RANK/name/number are shown.

Rank Node name (internal ID) node_type Description
0 node_pfc_main executive central decision-making public node
1 node_v1_frontcam vision Front camera V1 processing
2 node_v2_frontcam vision Front camera V2 processing
3 node_v4_rearcam vision Rear camera V4 processing
4 node_it_objdet vision Object recognition integration (IT)
5 node_a1_mic auditory Microphone input A1
6 node_a2_mic auditory Microphone input A2
7 node_dorsal_leg vision Leg visual-spatial (Dorsal1)
8 node_dorsal_arm vision Arm visual-spatial (Dorsal2)
9 node_dorsal_env vision Environment visual-spatial (Dorsal3)
10 node_m1_leg_left motor Left leg main movement execution
11 node_premotor_leg motor Leg movement planning support
12 node_cerebellum motor cooperation/learning
13 node_stg1_audio auditory High-order audio processing
14 node_stg2_audio auditory High-order audio processing
15 node_stg3_audio auditory High-order audio processing
16 node_parietal_nav spatial spatial navigation
17 node_parietal_balance spatial Balance spatial processing
18 node_broca_speech speech speech generation
19 node_wernicke_lang speech language understanding
20 node_memory_short memory short-term memory storage
21 node_memory_long memory long-term memory
22 node_decision_aux1 decision additional executive 1
23 node_decision_aux2 decision additional executive 2

The above mapping can be changed in the configuration file config/node_assignments.yaml.

flowchart TB
    subgraph PFC[Prefrontal cortex - Rank 0]
    end
    subgraph VIS[Visual Cortex - Ranks 1-9]
      V1[V1 (Rank1)]
      V2[V2 (Rank2)]
      V4[V4 (Rank3)]
      IT[IT (Rank4)]
    end
    subgraph AUD[Auditory Cortex - Ranks 5-15]
      A1[A1 (Rank5)]
      A2[A2 (Rank6)]
      STG1[STG1 (Rank13)]
      STG2[STG2 (Rank14)]
      STG3[STG3 (Rank15)]
    end
    subgraph SOM[Somatic sensation/parietal - Ranks 16-17]
      PAR1[Parietal1 (Rank16)]
      PAR2[Parietal2 (Rank17)]
    end
    subgraph MOTOR[Motor cortex/cerebellum - Ranks 10-12]
      M1[M1 (Rank10)]
      PRE[Premotor (Rank11)]
      CBL[Cerebellum (Rank12)]
    end
    PFC --> VIS
    PFC --> AUD
    PFC --> MOTOR
    VIS --> MOTOR
    AUD --> MOTOR
    SOM --> MOTOR
    MOTOR --> VIS
    MOTOR --> AUD
    MOTOR --> PFC

1. Purpose and scope

  • Construction of a bipedal robot with autonomous walking ability, capable of environmental awareness, self-retention, and ability to recover from falls.
  • Assumes cooperation with distributed brain systems (motor cortex/sensory cortex nodes).
  • Provide design guidelines for mechanical structures, sensors, motors, communications, and software.

1.1 Product overview diagram

An overview of the hardware and software elements that make up the entire robot.

flowchart LR
    HW[hardware frame]
    SW[embedded software]
    B[distributed brain network]
    HW --> SW
    SW --> B
    B --> SW

1.2 Functional block diagram

Indicates functional areas such as "sensation", "cognition", "motor", "communication", and "power".

Motor cortex hub and node responsivity

The motor cortex is divided into multiple hubs for each body part, and each hub manages related nodes and performs cooperative control. Nodes exchange state frequently and are directly connected via Zenoh topics to minimize latency.

flowchart TB
  subgraph Motor Cortex
    HubLeg[leg hub]
    HubArm[arm hub]
    HubTrunk[fuselage hub]
  end
  HubLeg --> NodeLL[left leg node]
  HubLeg --> NodeRL[right leg node]
  HubArm --> NodeLA[left arm node]
  HubArm --> NodeRA[right arm node]
  HubTrunk --> NodeWaist[fuselage node]
  NodeLL <--> NodeRL
  NodeLA <--> NodeRA
flowchart TB
    subgraph センサー群
      IMU[IMU]
      CAM[Camera/LiDAR]
      MIC[microphone]
      ENV[environmental sensor]
    end
    subgraph 認知処理
      VIS[visual cortex]
      AUD[auditory cortex]
      ENVNODE[environment node]
      MOTOR[motor cortex]
    end
    subgraph 制御系
      HUB[exercise hub]
      NODE[exercise node]
      ACT[actuator driver]
    end
    IMU --> VIS
    CAM --> VIS
    MIC --> AUD
    ENV --> ENVNODE
    VIS --> MOTOR
    AUD --> MOTOR
    ENVNODE --> MOTOR
    MOTOR --> HUB
    HUB --> NODE
    NODE --> ACT

2. Mechanical structure

2.1 Degrees of Freedom (DoF)

Part Degree of freedom Number of motors Notes
Hip joints (left and right) 3 axes (flexion/extension, internal/external rotation, rotation) 6 Requires high speed and high torque
Knee joint (left and right) 1 axis (flexion and extension) 2 Simple link structure
Ankle (left and right) 2 axes (forward and backward tilt, left and right tilt) 4 For balance correction
Waist/torso 1 axis (rotation) 1 Torsion control of upper body
Arms/upper limbs (left and right) 2–6 axes x 2 4–12 For grasping and balance assistance

The goal is to have a total of 13-25 actuators with scalability.

2.2 Frame/Material

Based on lightweight aluminum alloy/carbon fiber, achieving both rigidity and impact resistance.
Adopts leg and torso sections that can be modularized for each generation.


3. Sensor configuration

3.1 Posture/Balance

  • 6-axis/9-axis IMU (each leg base/body)
  • Plantar pressure sensor (all around the foot pad)
  • Angular acceleration sensor/gyro

3.2 Joint information

  • Built-in encoder (relative/absolute) on each motor
  • Gear with torque sensor if required

3.3 Environmental awareness

  • Front stereo camera (obstacle detection/distance estimation)
  • Upper wide-angle camera (ceiling/distant view confirmation)
  • LiDAR or depth camera
  • Microphone array (sound source localization/command reception)

3.4 Internal state

  • Temperature and humidity sensor (battery temperature, indoor environment)
  • Current/voltage monitor (each motor driver)

4. Motor/actuator specifications

  • Brushless DC motor + high resolution encoder
  • With torque gear (reduction ratio 10–100:1)
  • Communication protocol: CAN/CANopen or EtherCAT
  • Control period: Run position/torque loops at minimum 1kHz, ideally 2–4kHz

5. Control architecture

5.0 Node Driver Device Configuration

Clarify the software layer that connects the distributed brain and physical devices.

flowchart LR
    subgraph DistributedBrain
      VNode[visual cortex node]
      ANode[auditory cortex node]
      MNode[motor cortex node]
    end
    subgraph RobotSW
      Hub[MotionHub]
      MotionNode[MotionNode]
      MotorDriver[MotorDriver]
      SensorDriver[SensorDriver]
    end
    subgraph Hardware
      Cameras[Camera/LiDAR]
      IMUs[IMU]
      Mics[microphone]
      Motors[motor]
      GPIOs[GPIO/Switch]
    end
    VNode -->|image data| Hub
    ANode -->|audio| Hub
    MNode -->|exercise command| Hub
    Hub --> MotionNode
    MotionNode --> MotorDriver
    SensorDriver --> Cameras
    SensorDriver --> IMUs
    SensorDriver --> Mics
    MotorDriver --> Motors
    SensorDriver --> GPIOs

5.1 Hierarchy

  • Exercise hub (top level): Exercise planning and synchronized time stamping.
  • Motor node: Separate and local control for each leg/torso.
  • Motor node: Low layer library that manages each actuator.
MotionHub
 ├─ MotionNode_LegLeft
 │    ├─ Motor_HipPitch
 │    ├─ Motor_HipRoll
 │    └─ …
 ├─ MotionNode_LegRight
 │    ├─ Motor_HipPitch
 │    └─ …
 └─ MotionNode_Waist
      └─ Motor_WaistYaw

5.2 Sensor Fusion

  • Posture estimation by combining IMU + plantar pressure + camera
  • Extended Kalman Filter (EKF) or sliding window

5.3 Fall detection and recovery

  1. Detects sudden acceleration/angular velocity changes.
  2. Cuts the motor torque and releases the landing buffer (spring mechanism).
  3. Calculate reset attitude and execute restart sequence.

6. Cooperation with distributed brain

  • [Sensory field] Sends camera images, audio, and IMU data to nodes.
  • [Motor cortex] performs trajectory generation and ZMP calculations, and returns commands to the motor hub.
  • Uses Zenoh topics and PTP clock synchronization.

6.1 Data flow example

  1. Camera image → visual cortex node → object detection/terrain analysis
  2. Visual output → motor cortex (gait plan) → motor hub
  3. Motion hub → each motion node → motor control command
  4. Return state/sensor back from each node to sensory cortex via hub

6.2 Control Flow

Below is the order of high-level control in the main loop.

sequenceDiagram
    participant Brain as Distributed Brain
    participant Hub as MotionHub
    participant Node as MotionNode
    participant Motor as MotorDriver
    participant Sensor as SensorDriver

    Brain->>Hub: 歩行目標 / 時刻同期
    Hub->>Node: 指令パケット
    Node->>Motor: PWM/トルクコマンド
    Node-->>Hub: 状態報告(位置、トルク)
    Sensor->>Hub: IMU/カメラ/その他センサデータ
    Hub->>Brain: センサフィードバック

7. Software/Communication

  • ROS 2 compatible layer or lightweight custom protocol (Zenoh)
  • Main processes are assumed to be containerized (Docker/Kubernetes)
  • Motor driver runs on real-time OS (FreeRTOS/NuttX)

8. Safety and failsafe

  • Hardware interlock (emergency stop button)
  • Software overcurrent and overheat protection
  • Immediate shutdown and emergency landing behavior in case of fall

9. Extensibility and modularity

  • Legs/arms designed as hot-swappable modules
  • Contains connectors for easy sensor and battery replacement

10. Reference diagram

flowchart TB
    subgraph 感覚野
      V[visual node]
      A[auditory node]
      E[environment node]
    end
    subgraph 運動野
      M[Higher order generation]
    end
    subgraph ハブ
      H[exercise hub]
    end
    subgraph ノード群
      N1[Motor node: left leg]
      N2[Motor node: right leg]
      N3[Motor node: waist]
    end

    V --> M
    A --> M
    E --> M
    M --> H
    H --> N1
    H --> N2
    H --> N3

This design document serves as the standard for the project, so it should be updated every time there are new sensors or changes to the aircraft.