使用xsens-driver读取imu数据
- 驱动安装
sudo apt-get install ros-melodic-xsens-driver
- 修改访问MTI设备的权限,ttyUSB0换成你的设备号
sudo chmod 777 /dev/ttyUSB0
- 启动MTI
roslaunch xsens_driver xsens_driver.launch
这个xsens_driver 打印的topic list 如下:
MTI-G-710,可以连接GPS。利用MTmanager及xsens_ros_mti_driver可以显示位置输出。
MTmanager使用
下载MT_Software_Suite_linux-x64_2019.3.2.tar.gz,可以从官网https://www.xsens.com/software-downloads下载(可能需要tizi),可以从MT_Software_Suite_linux-x64_2019.3.2.zip下载。
-
下载后 解压tar包:
tar xvf MT_Software_Suite_linux-x64_2019.3.2.tar.gz
解压后得到MT_Software_Suite_linux-x64_2019.3.2文件夹:
.
├── magfieldmapper_linux-x64_2019.3.2.tar.gz
├── mfmsdk_linux-x64_2019.3.2.sh
├── mtmanager
├── mtmanager_linux-x64_2019.3.2.tar.gz
├── mtsdk_linux-x64_2019.3.2.sh
└── MTSS.README -
分别执行两个.sh文件:
执行mtsdk默认在/usr/local/生成xsens
sudo ./mtsdk_linux-x64_2019.3.2.sh
如果出错,错误信息如下:
‘uudecode’ could not be found. It is usually installed with the ‘sharutils’ package
安装sharutils:
sudo apt-get install sharutils
重新执行mtsdk脚本。执行mfmsdk默认在/usr/local/xsens/下生成xsens_ros_mti_driver文件。
sudo ./mfmsdk_linux-x64_2019.3.2.sh
-
解压后得到的mtmanager下存放MTmanager可执行应用:
cd MT_Software_Suite_linux-x64_2019.3.2/mtmanager/linux-x64/bin/
./mtmanager
打开界面如下图所示。
mtmanager使用参考资料:资料提供的《MT_Manager_user_manual.pdf》
使用mtmanager可以改变mti的数据输出。
在mtmanager界面,点击设置,打开如下界面:
选择不同的preset,并可以根据自己的需求勾选以下的数据,比如quaternion。选择apply。此时,mti便会对应的输出选定的数据。
这个设置,对mti ros节点也会生效。
启动xsens_driver时,ros topic 对应的会输出mtmanager配置的数据。
xsens_ros_mti_driver使用
- 编译xsens_ros_mti_driver ROS版本:
cp /usr/local/xsens/xsens_ros_mti_driver ~/catkin_ws/src/
pushd ~/catkin_ws/src/xsens_ros_mti_driver/lib/xspublic && make && popd
cd ~/catkin_ws
catkin_make
source devel/setup.bash
#以下用其一:
roslaunch xsens_mti_driver display.launch
roslaunch xsens_mti_driver example.launch
xsens_mti_driver node发布的topic list
display.launch打开的rviz界面:
该xsens_mti_driver 对mti的坐标系定义:
参考链接:
安装Xsens MTi-300的ROS驱动
Xsens MTi传感器 ROS下配置
http://wiki.ros.org/xsens_mti_driver
https://www.xsens.com/software-downloads
为什么静止时imu加速度计理论值为[0, 0, g]
因为imu加速度计类似弹簧质量快,静止防止时,弹簧质量块仍受到重力的影响。