第 16 章 足底压力传感器:让机器人“感觉”到地面 极低成本 · 实物上手 · 可迁移至高端人形平台 第五部分:参数调优与数据驱动第 16 章 足底压力传感器:让机器人“感觉”到地面 极低成本 · 实物上手 · 可迁移至高端人形平台16.1 为什么需要足底压力传感器纯IMU的平衡控制,就像闭着眼睛站立。IMU只能告诉你“我已经倾斜了”,不能告诉你“我的重心还在脚底范围内吗”。这是反馈控制——先倾斜,再纠正。足底压力传感器提供的是前馈信息——倾斜还没发生,我就知道重心在偏移了,提前调整。反馈+前馈,比纯反馈稳定得多。足底压力传感器做三件事:计算ZMP(零力矩点,即全身重量压在脚底的哪个位置),检测双脚着地状态(机器人被拿起时停止平衡补偿),提供行走时的步态反馈(摆动脚离地、着地的瞬间信号)。这三件事,IMU一件都做不到。ZMP的概念来自Vukobratovic的零力矩点理论:在脚底支撑区域内,存在一个点,地面反力对该点的力矩为零。如果ZMP在支撑多边形内,机器人是稳定的;如果ZMP移出支撑多边形,机器人就会绕脚掌边缘旋转——也就是摔倒。IMU只能检测倾斜,但ZMP可以预测倾斜——这个区别对于高速行走至关重要。16.2 硬件方案足底压力传感器的硬件方案,我折腾过两个版本。16.2.1 第一代:ADS1115(已废弃)最早用ADS1115模数转换模块,16位分辨率,I2C总线直连ARM主板。两个ADS1115(地址0x48和0x49)和IMU(0x23)都挂在同一条I2C上。三个设备同时通信时,I2C总线偶尔冲突导致数据丢失。对IMU