Ubuntu18下xsens IMU的驱动安装及使用imu_utils标定_KingL_wu的博客-CSDN博客
上篇博客写了使用imu_utils标定xsens IMU,其实在使用imu_utils脚本之前可以先用MT manager看看当前IMU的输出或者进行内参标定,imu_utils的标定是得出当前标定存在的噪声和零偏,有时候为了方便计算还有节省标定的时间,不一定会使用imu_utils的出来的偏差数值,毕竟为了得出这个数值需要录取2个小时以上的数据(后面自己证实其实不需要两个小时的数据也可以得出结果,就可能结果没有那么准确罢了)。
----------------------------------------------------------------------------------------------------------------------------
下载安装包
我在官方Software downloads下载的安装包安装完后不能使用,而且在官网中找不到对应的2019或2020、2021的版本,只有一个linux版本,但是安装完后使用不了,后面找了一个2019的版本,MT_Software_Suite_linux-x64_2019.3.2.zip_xsens_ros_mti_driverMT710-制造文档类资源-CSDN下载
有资源的大佬忽略我的分享,有需要的可以到我网盘提取:
百度网盘 提取 下载后解压,里面包含3个文件,分别是MT上位机的说明文档、安装包、安装步骤说明文档,后续的步骤也可以直接参考readme进行安装。
安装MT Manager
1. 将压缩包解压:
$ tar -xvzf MT_Software_Suite_linux-x64_2019.3.2.tar.gz
解压后顺便将mtmanager_linux-x64_2019.3.2.tar.gz和magfieldmapper_linux-x64_2019.3.2.tar.gz也解压出来,后面会用到。
2. 然后再解压的目录下先运行mtsdk_linux-x64_2019.3.2.sh文件,使用sudo命令默认在/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
3. 再执行mfmsdk_linux-x64_2019.3.2.sh文件,使用sudo命令默认在/usr/local/xsens/下生成xsens_ros_mti_driver文件
$ sudo ./mfmsdk_linux-x64_2019.3.2.sh
当前也可以先不执行mfmsdk_linux-x64_2019.3.2.sh文件就可以运行MT manager上位机,生成的xsens_ros_mti_driver中有两个文件,一个是为了在ROS 中观察Rviz中的模型运动是否准确,另一个是用于MTI系列产品发送消息。此项后续详述。
4. 安装完之后记得先给设备赋予权限:
$ sudo chmod 777 /dev/ttyUSB0
5. 按照mtmanager_linux-x64_2019.3.2/mtmanager_linux-x64_2019.3.2/mtmanager/linux-x64/bin此路径找到bin目录下的mtmanager可执行文件,可以直接双击打开,也可以在此目录下打开一个终端输入以下命令运行:
$ ./mtmanager
打开后是这样子的,正在搜索设备,详细的配置可以参考此文档MT_Manager_user_manual_2019.pdf
若是没有连接设备或者没有设置输出选项,则有一些 功能按钮是灰色的。
平时主要用到的几个功能是:(从左到右介绍)
:输入输出配置的窗口,打开后显示如下,包含有软件的版本号、输出配置、输入参数修改等
:搜索单个设备
:搜索多个设备
:断开设备
:查看3D视图
:惯性数据图
对于标定最重要的功能是:
无论IMU怎么安装,安装好之后点击上图中的三个Reset功能,将所有数据清零,以当前位置为标准,然后再点击进行应用,如果需要掉电保存,需要点击,重启后IMU会以上次标定的参数进行工作。
其他的功能看自己需要去使用。
xsens_ros_mti_driver
1. 先创建一个ROS的工作空间,可参考ROS学习--第3篇:ROS基础---创建工作空间_BIT王大东-CSDN博客_ros创建工作空间
我本次创建的工作空间名字为catkin_ws,可以根据自己需求命名。然后将/usr/local/xsens/下的xsens_ros_mti_driver文件夹复制到工作空间的src目录下,可以直接复制也可以使用命令复制。
$ cp /usr/local/xsens/xsens_ros_mti_driver ~/catkin_ws/src/
2. 确认当前文件和目录的权限为o+rw,如果是则不需要修改,我用的时候不用修改,如果权限不是则需要修改:
$ chmod -R o+rw xsens_ros_mti_driver/
3. 从catkin工作区构建xspublic,pushd是目录入栈
,popd是目录出栈
$ pushd ~/catkin_ws/src/xsens_ros_mti_driver/lib/xspublic && make && popd
4. 运行launch节点:
$ cd ~/catkin_ws
$ catkin_make
$ source devel/setup.bash
5. 选择一个launch文件运行:
$ roslaunch xsens_mti_driver display.launch
# 在ROS 中观察Rviz中的模型运动
$ roslaunch xsens_mti_driver xsens_mti_node.launch
# 用于MTI系列产品发送消息
选择display.launch,会自动打开Rviz,移动xsens,观察Rviz中的模型运动是否准确。
重新打开一个终端,查看当前的话题,并打印话题/imu/data的数据:
$ rostopic list
$ rostopic echo /imu/data
输出的信息如下:
则设备正常启动。