由于项目需要,采购了两块SparkFun的9DoF Razor IMU器件,对就是下图这个红色的东西。
这个器件默认是以USB的方式传输数据的,但是实际运用的时候,并没有那么多usb接口可供使用,因而转换其输出方式,使其以串口方式输出是必要的。老哥我花了一晚上时间研究出了更改的方法,特呈现如下:
1.配置Arduino IDE
首先要安装9DoF Razor Arduino Core
打开Arduino IDE,选择Tools > Board > Boards Manager...,如下图
选择安装,版本一定要按照图中要求,我试过用别的版本,就不好用。
然后安装SparkFun Board Definition
复制如下的网址,粘贴到下图红框处。
https://raw.githubusercontent.com/sparkfun/Arduino_Boards/master/IDE_Board_Manager/package_sparkfun_index.json
点击OK,然后再次选择下图,
点击安装,版本要按照图中要求。
选择Board和串口
在Arduino中安装需要的库文件,链接如下,
https://github.com/sparkfun/SparkFun_MPU-9250-DMP_Arduino_Library/archive/master.zip
https://cdn.sparkfun.com/assets/learn_tutorials/5/6/7/FlashStorage.zip
在Sketch->Include Library->Add .zip中分别选择这两个zip文件,即可。
重启Arduino IDE,这样就完成了固件环境配置。
2.固件内容的更改及烧写
由于本项目中IMU是用在ROS环境下,因此烧写此固件,网址如下:
https://github.com/KristofRobot/razor_imu_9dof
在SRC文件夹下
需要更改Razor AHRS.ino文件的第223行,将原来的内容如下:
#define LOG_PORT SERIAL_PORT_USBVIRTUAL
改为
#define LOG_PORT SERIAL_PORT_HARDWARE
然后上传固件即可完成接口更改。
参考资料:
https://learn.sparkfun.com/tutorials/9dof-razor-imu-m0-hookup-guide