偷得浮生半桶水(半日闲), 好记性不如抄下来(烂笔头). 信息爆炸的时代, 学习是一项持续的工作.
全部博文(1748)
分类: 其他平台
2019-04-04 21:35:01
机器人操作系统(ROS)作为一个工具常用于机器人群在机器人设备的各个子系统之间传递数据。在的各种项目中都有使用它,公司创始人读博期间就已经对此非常熟悉。惯性测量单元不仅仅是机器人学的一个标准工具,我们在中使用的MEMS器件其实就是机器人学研究的成果。对我们的IMU应用中一个重要的案例来说,不涉及到我们的LpSensor软件,即我们不提供ROS驱动程序感觉会有点奇怪。我们很高兴告诉您其实这样的驱动程序已经存在,也并不需要我们自己去写 : Zagreb大学的Larics laboratory 是使用ROS和我们的传感器的狂热用户。所以他们也就自己开发了一个ROS驱动程序,并在他们的上有提供。最近,我有机会尝试了下,这篇博文推送的目的主要是和你们分享一下我的经验,以便让你在Ubuntu Linux系统上使用ROS和LPMS传感器。
请找到我们的中最新版本的库,目前为止最新版本是1.3.5。下载并解压,然后按以下步骤进行安装:
LPMS-B2需要蓝牙的支持,所以我也安装了libbluettoth-dev。
如果您还未安装ROS,请按ROS安装说明进行安装。如果你已经有一个catkin工作空间,则可跳过这个步骤,然后用下面的代替。工作空间创建如下,注意在工作空间的src子目录中运行catkin_init_workspace。
我们现在可以从Github下载驱动源。它可以选择性地利用和增加的ROS模块通过Larics实验室同步ROS和IMU数据流之间的时间戳。所以我们必须复制两个git存储库以获得所有创建驱动源的先决条件。
接下来开始准备运行catkin_make,这和搭建catkin_make一样简单。但在此之前你需要设置好ROS环境,如果你还没有,可以按以下所示进行设置:
搭建完成,接下来进行测试。
现在我们设置好后就可以使用ROS的所有功能了。我简单向您展示下如何不用任何进一步的编程就可以使用标准ROS工具让数据可视化。首先,你需要两个虚拟终端,如果你还没有运行roscore的话请开始运行;其次,启动rqt_plot查看我们的IMU和提供它的lpms_imu_node。在下框中您可以看到我用来连接到IMU的命令。你需要使用设备对应的值替换_sensor_model和_port字符串。需要注意的是第二个为_port的参数,因为对于一个USB设备来说,是需要与其虚拟串行端口(通常为dev/ttyUSB0)相对应的。
一旦输入这些命令后,您会看到熟悉的LpSensor启动消息,如下面截图所示。正如你所看到的驱动程序连接到我的LPMS-B2 IMU。如果无法连接,可能蓝牙关闭或你没有输入连接到IMU所需的信息。验证完参数,您可以将它们存储在启动文件中或调整相应的源代码。
lpms_imu_node使用标准IMU和ROS提供的磁场信息类型,并将其发布在imu主题上。这就是我们实际可视的即时数据。下面你可以看到在rqt_plot中。你能看出我是怎样移动我的IMU的吗 ?
怎样在ROS中显示LPMS传感器数据的动图
如果您使用上遇到什么问题,或者对我们感兴趣的话,请联系我们:020-39119933