本文主要是介绍Xsense MTI300在 ROS-kinetic下的使用,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
Xsense MTI 300在 ROS下的使用
- 1、MTI设备驱动安装及启动
- (1)驱动安装
- (2)修改USB接口的权限
- (3)启动MTI设备
- 2、MTmanager下载及使用
- (1)将下载的压缩包解压得到如下的文件
- (2)执行脚本文件,生成xsens文件
- (3)解压`mtmanager_linux-x64_2019.2.tar.gz`文件
- (4)在mtmanager中调整设备的初始方位
- (5)在mtmanager中设备设置的输出配置
- 3、 官方的 ROS driver for Xsens安装
- 4、使用rqt_plot绘制数据曲线
- 5、日常使用步骤总结
1、MTI设备驱动安装及启动
(1)驱动安装
sudo apt-get install ros-kinetic-xsens-driver
(2)修改USB接口的权限
sudo chmod 777 /dev/ttyUSB0
将ttyUSB0
换成自己的接口名
(3)启动MTI设备
roslaunch xsens_driver xsens_driver.launch
2、MTmanager下载及使用
截至2021年10月20日,官网.下载页面只提供了最新2021版本,不适配于UBuntu16.04,需要旧的版本MT_Software_Suite_linux-x64_2019.2
,这里提供百度网盘下载,在该版本软件下的菜单栏中Help/Updates/Check for new MT SofteWare Suit Versions
也提供了其他版本的下载。
(1)将下载的压缩包解压得到如下的文件
(2)执行脚本文件,生成xsens文件
在解压之后的文件夹中先执行
sudo ./mtsdk_linux-x64_2019.2.sh
然后执行
sudo ./mfmsdk_linux-x64_2019.2.sh
这两步在/usr/local/
下生成xsens
文件夹
(3)解压mtmanager_linux-x64_2019.2.tar.gz
文件
解压之后生成mtmanager
文件夹,运行mtmanager/linux-x64/bin
中的可执行程序mtmanager
,程序运行图如图所示
(4)在mtmanager中调整设备的初始方位
依照传感器在机器人机体的初始姿态,设定MTI设备的初始姿态值,在工具栏中的Orientation Reset Methods
中设置方位调整的方式,这里选择Alignment Reset
,然后分别点击Reset Orientation
和Store Current Orientation Reset
按钮设定并保存MTI设备的初始方位。
(5)在mtmanager中设备设置的输出配置
勾选需要输出的数据,为了接下来能让设备在ROS中传输数据,方位输出选择四元数,并且将各项数据的输出频率设定为相同的值。
这个设置,对xsens_mti_node
节点也会生效。该节点会按照前面的配置输出特定格式的数据到相应的topic
上。
3、 官方的 ROS driver for Xsens安装
参考官网教程即可
在xsens_ros_mti_driver
package中的launch文件夹中运行
roslaunch xsens_mti_driver xsens_mti_node.launch
来启动xsens_mti_node
节点
使用rosnode list
,rostopic list
,rostopic info topic_name
,rosmsg show msg_name
来了解这个节点所输出的数据及其格式
这里的xsens_mti_node
节点向如下几个topic发送消息,括号内为topic上的消息数据的格式
imu/data (sensor_msgs/Imu)
quaternion, angular velocity and linear accelerationimu/acceleration (geometry_msgs/Vector3Stamped)
calibrated linear accelerationimu/angular_velocity (geometry_msgs/Vector3Stamped)
calibrated angular velocityimu/mag (geometry_msgs/Vector3Stamped)
calibrated magnetic fieldimu/dq (geometry_msgs/QuaternionStamped)
integrated angular velocity from sensor (in quaternion representation)imu/dv (geometry_msgs/Vector3Stamped)
integrated linear acceleration from sensorimu/time_ref (sensor_msgs/TimeReference)
timestamp from devicefilter/quaternion (geometry_msgs/QuaternionStamped)
quaternion from filterfilter/free_acceleration (geometry_msgs/Vector3Stamped)
linear acceleration from filterfilter/twist (geometry_msgs/TwistStamped)
velocity and angular velocityfilter/positionlla (geometry_msgs/Vector3Stamped) (MTSS2019.3.2 and later)
filtered position output in latitude (x), longitude (y) and altitude (z) as Vector3filter/velocity (MTSS2019.3.2 and later)
filtered velocity output as Vector3temperature (sensor_msgs/Temperature)
temperature from devicepressure (sensor_msgs/FluidPressure)
barometric pressure from devicegnss (sensor_msgs/NavSatFix)
raw 4 Hz latitude, longitude, altitude and status data from GNSS receivertf (geometry_msgs/TransformStamped)
transformed orientatio
4、使用rqt_plot绘制数据曲线
这里以/imu/data
为例,其数据格式为sensor_msg/Imu
,使用
rosmsg show sensor_msg/Imu
获取msg的具体信息,
终端输入
rqt_plot
在topic栏中输入
即可画出相关数据的变化图。
5、日常使用步骤总结
1、修改权限
sudo chmod 777 /dev/ttyUSB0
2、启动设备
roslaunch xsens_driver xsens_driver.launch
打开mtmanager程序,设定传感器的初始方位并设置传感器输出配置
3、运行节点,传输数据
roslaunch xsens_mti_driver xsens_mti_node.launch
这篇关于Xsense MTI300在 ROS-kinetic下的使用的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!