使用Xbox360手柄控制你的turtlebot/rbx1/mrobot小车机器人

使用xbox手柄控制小车机器人具体步骤(以mrobot程序包为例)

1.安装xbox360手柄驱动

sudo apt-get install ros-indigo-joystick-drivers
2.测试手柄(一般连接为js0)

ls /dev/input/
可能为js0一个,也有可能为js0,js1两个,还有可能出现js0-3四个,在测试中可确定手柄为哪一个

第一种方法:

使用 jstest-gtk 测试你的手柄

sudo apt-get install jstest-gtk
jstest-gtk

输入上诉指令后会出现图形化手柄测试程序,选择测试

第二种方法:

sudo jstest /dev/input/js0
输入后摇动手柄,如果终端的数据发生变化,即为js0

若没有变化可改为js1,继续测试

3.配置joystick_teleop.launch(turtlebot名字为xbox360_teleop.launch)

   mrobot在程序包mrobot_nav/launch中,rbx1在程序包rbx1_nav/launch中,turtlebot在turtlebot_teleop/launch

选择使能键(即只有按着这个按键转动摇杆,小车才会移动)

   找到 <param name="axis_deadman" value="7"/>     ,其中7刚好为xbox手柄的start按键,不同手柄可能不同需要多次测试选择,如你的为8则将上句中的7改为8即可。

找到<node pkg="joy" type="joy_node" name="joystick" output="screen" /> (在倒数几行),按回车另起一行,填写:

<param name="dev" type="string" value="/dev/input/js0" />
4.使用手柄控制你的小车

roscore
roslaunch mrobot_bringup mrobot.launch 
roslaunch mrobot_nav joystick_teleop.launch

使用不同的小车程序包启动指令不同但是类似,rbx1为

roscore
roslaunch rbx1_bringup minimal.launch 
roslaunch rbx1_nav joystick_teleop.launch
turtlebot为

roscore
roslaunch turtlebot_bringup minimal.launch  
roslaunch turtlebot_teleop xbox360_teleop.launch




猜你喜欢

转载自blog.csdn.net/qq_35379989/article/details/79022774