文章目录
- 控制器与运动底盘状态数据:里程计、IMU
- 运动学分析与轮子
- 运动学分析公式
- 串口通信控制与反馈通讯协议
- 串口通信反馈上行数据帧解析
- 串口通信控制下行数据帧解析
- 代码实现IMU、里程计数据的获取、解析、计算
控制器与运动底盘状态数据:里程计、IMU
控制器需要负责外发底盘运动状态数据,这里最重要的数据就是里程计和IMU,它们的作用都是用于机器人定位的,即用于确认机器人
目前所在的物理位置。
里程计的推导流程如图所示,其中运动学分析部分是运动底盘控制器需要做的工作。
轮式底盘的XYZ三轴里程计数据为:X-前后方向的位移、Y-左右方向的位移、Z-旋转的角度(航向角)。
IMU数据可以来自运动底盘自身板载的IMU芯片,也可以来自外置的IMU模块。运动底盘一般都有板载IMU。
其工作流程如图所示,控制器只需要负责发送IMU数据,解算为姿态角部分由上层决策部分(ROS)处理。
扩展内容
IMU的角速度可以通过时间积分(速度*时间)计算三轴姿态角。
IMU的加速度可以通过特定公式计算除Z轴航向角外的XY两轴姿态角,IMU的加速度通过时间积分计算三轴位移。
里程计提供了XY两轴位移和Z轴航向角。
XYZ三轴位移、XYZ三轴姿态角,有两个或以上的数据来源,就可以融合计算出相对更准确的位姿数据。