ROS配置和使用“北通”无线手柄,主从机远程控制JP-Chassis底盘

ROS配置和使用“北通”无线手柄,主从机远程控制JP-Chassis底盘

环境:Ubuntu18.04 + ROS Melodic
硬件:北通阿修罗2te无线版+笔记本(主机)+AGX工控机(从机)+JP-Chassis

一、ROS配置和使用“北通”无线手柄
(1)安装joy package

sudo apt-get install ros-melodic-joy

joy package为通用的Linux操纵杆提供了ROS驱动,可以实现Linux操纵杆和ROS交互。joy_node节点发布一个包含操纵杆每一个按钮和轴状态的”Joy”消息。joy-ROS Wiki说明
(2)配置Xbox One无线手柄
1)将手柄接收机与笔记本相连

ls /dev/input/

显示所有输入设备的列表,如出现jsX则表示连接成功(我的电脑显示为js0)。
2)测试手柄

sudo jstest /dev/input/jsX

终端会显示手柄的如下输出信息,移动手柄可看到数据的变化。(注意:Axes正负状态相反)

Axes: 0: 0 1: 0 2:-32767 3: 0 4: 0 5:-32767 6: 0 7: 0
Buttons: 0:off 1:off 2:off 3:off 4:off 5:off 6:off 7:off 8:off 9:off 10:off

3)更改手柄权限
让ROS的节点joy_node可以使用手柄

ls -l /dev/input/jsX

显示如下:

crw-rw-XX-+ 1 root input 13, 0 8月 4 19:18 /dev/input/js0

如果XX是rw的话,说明设备配置成功.
如果XX是r–或者其他的话,说明没有配置成功,你需要:

sudo chmod a+rw /dev/input/jsX

(3)配置“北通”无线手柄
要使手柄的数据发布在ROS上,我们需要启动joy package中的joy_node节点。
首先,我们需要将设备名这个参数设置为当前的设备名,默认为js0.

roscore
rosparam set joy_node/dev "/dev/input/jsX"

然后启动joy_node节点:

rosrun joy joy_node

在新终端用rostopic echo查看joy这个话题的数据:

rostopic echo joy

(4)测试和校准
jstest-gtk是一个可以测试手柄的工具,可以显示哪个按钮和轴被按下,可以校准和重新为手柄设置每个按钮的索引
1)安装jstest-gtk:

sudo apt-get install jstest-gtk

2)在终端输入以下命令,打开jstest-gtk的GUI:

jstest-gtk

3)点击属性按钮,可以进行测试

二、主从机远程控制JP-Chassis底盘
ROS主从机设置详见:主从机设置
主机(全部在笔记本完成)

(开服务、进远程)

roscore
ssh kyxz(被控AGX工控机用户名)@192.168.10.10(被控AGX工控机IP Adress)
    安装ssh: sudo apt-get install ssh
byobu
    安装byobu:sudo apt install byobu
    F2:新建终端,F3:上一终端,F4:下一终端;Ctrl+D:退出
cd catkin_ws
source devel/setup.bash
roslaunch mick_bringup mickx2_bringup.launch

新建终端:

roslaunch transfor_joy transfor_joy.launch

至此,已完成ROS配置和使用“北通”无线手柄,主从机远程控制JP-Chassis底盘!

  • 6
    点赞
  • 28
    收藏
    觉得还不错? 一键收藏
  • 4
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值