采用ROS多机通信,使用手柄完成对车体控制的操作说明

本文详细介绍了如何在Ubuntu20.04系统下的两台电脑(上位机rk3588和下位机rk3588)通过ROS实现多机通信,包括网络静态IP的设置、配置文件的修改以及手柄控制的接入和测试。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

目录

一、网络静态IP设置

二、修改多机通信配置文件

1、修改上位机配置文件

(1)打开上位机电脑上的bashrc文件

(2)上位机电脑的bashrc文件中添加语句

2、修改下位机配置文件

(1)打开下位机电脑上的bashrc文件

 (2)下位机电脑的bashrc文件中添加语句

三、上位机的准备工作

四、下位机的准备工作

硬件:

1.一块 rk3588(接从机显示屏)【下位机】

2、一个有线手柄(接入主机)

3、主机、主机显示屏 【上位机】

4、一个路由器(主从机wifi接入同一个网络wifi名称:cdXXX)

软件:两台电脑上均是ubuntu20.04系统

实现效果:采用两台电脑,实现rk3588上使用无线手柄控制车体运动

将工控机作为上位机,rk3588作为下位机。

实现多机通信的主要步骤:

一、网络静态IP设置

利用ubuntu自身的系统配置设置静态ip的方法如下:

本人采用的是上位机下位机连接同一个WIFI进行通信(接入同一个路由器WiFi)的方法。两台电脑操作完全相同。点开设置,选中WIFI,所连接网络右侧有设置按键,点击按键,进入设置,选择IPv4。

使用命令 ifconfig 分别查看两台电脑IP:

上位机电脑中ifconfig内容:

wlx0025中显示ip地址为:192.168.3.2,即为上位机电脑的ip地址。 

下位机电脑中ifconfig内容:

wlan0中显示ip地址为:192.168.3.3,即为下位机电脑的ip地址。

在IPv4手动配置页面中,地址填为ip地址,子网掩码填255.255.255.0,网关填ip地址的前三个部分,加上.1,按照上图示例,即为192.168.3+.1->192.168.3.1,DNS与网关相同,亦为192.168.3.1。至此完成网络静态ip配置。设置完成后,可知上位机电脑IP为192.168.3.2,下位机电脑ip为192.168.3.3(这两个IP在随后的配置文件修改中需要用到)。

二、修改多机通信配置文件

ROS多机通信需要两台电脑的ROS连接同一个ROS Master。运行时,需要在PC端开启roscore。

1、修改上位机配置文件

(1)打开上位机电脑上的bashrc文件

gedit ~/.bashrc

(2)上位机电脑的bashrc文件中添加语句

export ROS_MASTER_URI=http://192.168.3.2:11311
export ROS_HOSTNAME=192.168.3.2

其中 192.168.3.2是 上位机电脑的IP,端口号写11311即可。

2、修改下位机配置文件

(1)打开下位机电脑上的bashrc文件

gedit ~/.bashrc

 (2)下位机电脑的bashrc文件中添加语句

export ROS_HOSTNAME=192.168.3.3
export ROS_MASTER_URI=http://192.168.3.2:11311

其中 ROS_HOSTNAME表示下位机,192.168.3.3表示下位机ip, ROS_MASTER_URI表示上位机的URI,192.168.3.2是上位机IP,端口号11311。

三、上位机的准备工作

有线手柄接入上位机主机后,查看手柄的设备号:

ls /dev/input/

设备号一般表示为: jsX ,如果有js0、js1等多个设备号,可以通过拔插USB设备确定。

 增加可执行权限:

sudo chmod 777 /dev/input/js0

之后,运行:

rosrun joy joy_node

使用rostopic list查看话题:

rostopic list

 查看/joy话题的数据:

rostopic echo /joy

 动动摇杆、按键看看/joy话题的数据是否变化,如果变化,则说明手柄接入正常。

四、下位机的准备工作

rk3588接入显示屏,连上路由器的wifi,运行:

roslaunch odXXX uav_serial_communicate.launch

 其中,odXXX表示功能包(XXX模糊写法)。

输出例如上述图片内容,表明可以正常控制无人车运动了。 

同时重开新terminal,使用rostopic list查看话题:

rostopic list

运行以下命令查看/joy话题的数据:

rostopic hz /joy

摇晃摇杆,能够订阅到/joy话题数据,就会输出上图红色方框里的数据;当停止摇晃摇杆,无法订阅/joy话题数据时,就会输出“no new messages”。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

太想进步了~

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值