一、 物理身体(机械结构层)
负责把电子件装起来,让机器鸭能站、能动。
HD1910飞特舵机 (15个):机器的“肌肉”。对应我们之前聊的项目一(舵机与通信)。这是替代官方昂贵Dynamixel(XL330)的平替方案,通过单总线串联,控制腿和头部的角度。
嘉立创3D打印 (9000HE) + 螺丝:机器的“骨骼与关节外壳”。光敏树脂打印,把舵机固定成一只鸭子的形状。
2216轴承 (9个) + 小轴承 (4个):装在关节处,减少摩擦,让舵机转动时更顺滑,不至于卡死。
脚底翻模硅胶:鸭子的“鞋垫”。3D打印的模具翻模出来的硅胶,用来增加脚底摩擦力,起到减震防滑的作用(对应项目五:机械装配)。
二、 大脑与神经系统(控制计算层)
负责算数据、发指令。
OrangePi Zero 3W全志A733 (1个):机器的“大脑”主控。对应项目二(主控与嵌入式系统)。这块板子性能比原版官方用的Radxa Zero 3W更强。它运行Linux(Armbian),负责跑强化学习策略、处理传感器数据,并向舵机发送控制指令。
HAT板打样 + HAT板元件:这是主控的“脊椎/扩展板”。因为OrangePi的引脚是裸露的,HAT板把它接出来,方便连接外部电源、串口、摄像头和喇叭等。
喇叭 (1个):机器的“声带”,用来发出鸭叫或提示音。
摄像头 (1个) + ToF模块 (1个):机器的“眼睛”。摄像头负责视觉识别,ToF(激光测距)负责感知前方障碍物的距离(对应项目三:传感器集成)。
三、 感知与能量(电源与传感层)
负责平衡感、提供动力和通信转换。
imu_to_dxl板打样 + 板元件(LSM6DSOWTR + CH32V003F4P6):这是整个清单中最巧妙的一块板子,对应项目三和项目六。它用了廉价的LSM6DSOWTR(IMU姿态传感器)和CH32V003(一颗极便宜的国产MCU)。它的核心作用是:把IMU数据转换成Dynamixel总线协议!这样IMU就能像“第16个舵机”一样,直接挂在舵机总线上,主控一次
sync_read就能同时读到姿态和舵机数据。电池+充电器 (1个):机器的“心脏”。为整个系统提供7.4V左右的电源。
IMU直接与电池连接:就像表格底部的备注说的,因为没有单独的电源PCB板,所以IMU模块和电池是直接取电的。
🔗 它们之间是如何联系起来的?(数据流与控制流)
从底层到上层,它们的联系是这样的:
物理与电气连接:电池供电 → 主控板(OrangePi) → HAT板 → 串口/Dynamixel总线。
控制回路(50Hz):
采集:主控通过总线(一条线串起15个舵机 + IMU)读取15个关节角度 + IMU四元数姿态。
决策:主控上的强化学习策略(onnx)计算出下一步每个舵机应该转到什么角度。
下发:主控通过总线,用
Sync Write一次性把新角度发给15个舵机。执行:飞特舵机听到指令,转到目标角度,机器鸭开始迈步。
外部调试:因为清单里没买遥控器,所以备注里说“通过电脑ssh进行控制”,也就是你通过WiFi连到OrangePi,在电脑上敲命令来控制。
💡 总结与建议
这是一个非常极客且充满性价比的方案(总成本约2259元)。作者为了省钱并增强性能,做了很多魔改:
用国产OrangePi替代原版板子;
用飞特舵机替代Dynamixel,并重新调参(kp=3-5);
用低成本的LSM6DSO+CH32V003替代昂贵的BNO085传感器;
用3D打印完全替代注塑件。