提高MAVROS的IMU发布频率
Pixhawk的IMU数据可通过MAVROS获得,相关的话题为:
/mavros/imu/data
但是MAVROS默认的IMU输出频率较低,可能只有不到10Hz,而VIO一般需要100Hz以上的IMU数据。此时需要通过mavlink指令设置一些参数来提高MAVROS中IMU数据的频率。具体方法如下:
在Pixhawk的SD卡中添加文件/etc/extras.txt,文件中添加指令:
mavlink stream -d /dev/ttyACM0 -s ATTITUDE -r 100
mavlink stream -d /dev/ttyACM0 -s ATTITUDE_QUATERNION -r 100
mavlink stream -d /dev/ttyACM0 -s HIGHERS_IMU -r 100
其中/dev/ttyACM0表示Pixhawk与机载计算机连接的端口,ttyACM0表示用的是USB口。这几条指令分别表示将Pixhawk的USB口输出的姿态和IMU数据流的频率设置为100Hz,其中Pixhawk内置的IMU最高频率为200Hz,因此最高可设置输出200Hz的IMU数据。
实际输出频率如下:
Pixhawk IMU + D435i image运行VINS-Mono