1.Mini六自由度IMU板快速上手
0x00 Mini六自由度IMU板简介
现在虽然市面上有很多IMU芯片,但是在使用的时候非常的麻烦。尤其是接线,大多数都需要使用USB转TTL模块来通过杜邦线接到主控机上。而且模块买到手后,还需要经过加速度、陀螺仪的标定才能使用。对于很多初学者来说,基本上就会一脸茫然、不知所措。所以,我们ROS小课堂就自己开发了,可以直接通过Type-C数据线接到你的设备上,大大的减少了接线的麻烦。而且想要在ROS中使用IMU信息,还需要经过编程。现在我们配套的ROS代码已经完成,所以只要拿到模块后,3分钟就能立刻与自己的ROS系统集成在一起使用了。我们不仅提供了ROS下的代码,还提供了Linux、Windows、Matlab、Arduino、STM32的代码,省去您开发IMU相关代码的工作量。
0x01 Mini六自由度IMU板性能参数
该IMU板集成高精度陀螺仪、加速度计,采用高性能的微处理器和先进的动力学解算与卡尔曼滤波算法,能够快速求解出模块当前的实时运动姿态。姿态测量精度静态0.05度,动态0.1度,稳定性极高,可以输出三轴加速度、三轴角速度、三轴欧拉角、四元数信息。
- 支持Type-C串口数据输出,波特率115200bps
- 支持IIC接口数据输出,最高速率400K
- 测量量程:加速度±16G、角速度±2000°/s、角度±180°
- 测量稳定性:加速度0.01G、角速度0.05°/s、姿态稳定度:0.01°
- 数据输出频率:0.1Hz~100Hz
0x02 正方向规定
该IMU中坐标系是3维的,而且遵循右手法则,Z轴用拇指表示,X轴用食指表示,Y轴用中指。X轴指向前方,Y轴指向左方,Z指向上方。研究坐标系绕某轴旋转时,也是用右手法则,右手握住坐标轴,大拇指的方向朝着坐标轴的正方向,四指环绕的方向定义为这个坐标轴旋转的正方向。
0x03 配套源码
我们的源码都可以在代码仓库中下载,后续更新的代码都会提交到该仓库中,代码仓库地址如下:
https://code.corvin.cn/corvin_zhang/mini_6dof_imu
0x04 设备连接
1. 使用Type-C接口连接
使用Type-C的数据线将其一端接到IMU板上,另一端USB口接到你的设备上即可,这种方式使用的是串口通信。
2. 使用串口排针连接
使用串口排针连接时需要将IMU板的RXD接到你的设备的TXD,IMU板的TXD接到你的设备的RXD。
3. 使用IIC排针连接
使用IIC排针连接时需要将IMU板的SCL接到你的设备的SCL,IMU板的SDA接到你的设备的SDA上。
0x05 运行演示
1. 使用ROS代码
2. 使用Linux代码
3. 使用Matlab代码
4. 使用Arduino代码
5. 使用Windows代码
0x06 购买链接
https://shop535478033.taobao.com/shop/view_shop.htm?spm=a1z0k.6846577.0.0.5daa11caPIa8WT
0x07 注意事项
[1].角度Z轴经过陀螺仪积分,会有累计误差。X、Y轴没有累计误差,误差控制在静态0.05°,动态0.1°。
[2].IMU板在发货时,已经把加速度计和陀螺仪标定好了,这样用户在拿到手上可以直接使用,不用再次花费时间标定。
0x08 问题反馈
大家在文章发现中有任何问题或者疑问,可以直接在文章末尾给我留言,或者关注ROS小课堂的官方微信公众号,在公众号中给我发消息反馈问题也行。我基本上每天都会处理公众号中的留言!