ROS中使用罗技G29遥控器

ROS中使用罗技G29遥控器


本教程主要教大家如何在ROS环境中读取G29 摇杆的值。
在这里插入图片描述

在实验过程中需要使用G29遥控器可以用来做自动驾驶,G29 没有官方的驱动,github上存在两个使用G29的包,但是安装比较复杂,需要依赖的东西太多,网上也有大佬使用node.js脚本来启动G29摇杆。

在折腾了一圈以后发现只需要使用ROS自带的Joy包就可以启动G29摇杆,因此记录下本教程,避免大家以后在使用G29的时候重复填坑。

系统使用的环境是Ubuntu1604+ROS K版本。

1、首先安装两个ROS 依赖包

sudo apt-get install ros-kinetic-pacmod*
sudo apt-get install ros-kinetic-joy*

2、创建一个launch文件,填入以下内容

<?xml version="1.0"?>
<launch>
  
  <group ns="G29">
    <node pkg="joy" type="joy_node" name="joy">
      <param name="coalesce_interval" type="double" value="0.02"/>
      <param name="default_trig_val" value="true"/>
      <!-- param name="deadzone" value="0.0"/ -->
      <param name="dev" value="/dev/input/js0" type="string "/>
      <param name="deadzone" value="0.05" type="double"/>    
      <!-- aram name="autorepeat_rate" value="10" type="double"/--> 
    </node>
 
  </group>
</launch>

这里我把命名空间改为了G29,这是由于我们还需要使用手柄式的遥控器(也是用的Joy包),这里主要是为了避免冲突

3、接下来把G29插到USB口(插上USB以后,G29的方向盘会自己旋转到逆时针最大值和顺时针最大值),确保G29没有问题以后,我们新建一个终端然后启动launch文件。并打印话题 “/G29/joy” 即可看到如下现象:
在这里插入图片描述

猜你喜欢

转载自blog.csdn.net/crp997576280/article/details/106924467