ROS主从网络设置(分布式通信)+ ssh远程登陆与文件传输
主从机配置
确保主从机在同一个局域网中!我的目的是实现移动小车的远程rviz功能,及手动定位恢复——set pose
主机:小车工控机
从机:调试笔记本
1.查看hostname
终端@符号后面那个名字
wjh@wjh_vm1:~$ hostname
wjh_vm1
wjh@wjh_honor:~$ hostname
wjh_honor
2.永久修改主从机hostname(可选:本身名字就不同可以不用修改)
我的电脑习惯性取同一个名字,包括pc名字和主机名字。(@前面的名字和后面的名字)
为了区分主从机,可以修改hostname。
主机名存放在/etc/hostname文件中,修改主机名时,编辑hostname文件,在文件中输入新的主机名并保存该文件即可。重启系统后,终端输入 hostname 确认主机名有没有修改成功。
修改成功后需要在/etc/hosts中修改hostname名字,ros才能启动成功。
127.0.0.1 localhost
127.0.1.1 xxxxx #修改这里的名字为hostname
3.修改主从机bashrc文件
sudo gedit ~/.bashrc
主机在最后加入
export ROS_MASTER_URI = http://主机的ip:11311
export ROS_HOSTNAME =主机IP #或者主机hostname
从机在最后加入
export ROS_MASTER_URI = http://主机的ip:11311
export ROS_HOSTNAME =从机IP #或者从机hostname
4.修改主从机/etc/hosts文件
sudo gedit /etc/hosts
主机加入
从机的ip 从机名
192.168.1.31 wjh_honor
从机加入
主机的ip 主机名
192.168.1.13 wjh_vm1
这样保存之后便可以在调试笔记本端远程查看rviz,并进行话题发布!
补充:ssh远程登录与文件传输
ssh远程登陆,终端输入
ssh username@ip_address
username为远程计算机用户名!!!不是hostname名字!!!
ip_address为远程计算机的IP地址。
按提示输入工控机密码。
退出:终端Ctrl+D 或者 终端输入exit
将本地文件或文件夹上传到远程计算机
在工控机端操作为例:
wjh@wjh_vm1:~$ scp /home/wjh/111 wjh@192.168.1.13:/home/wjh/
wjh@wjh_vm1:~$ scp -r /home/wjh/112/ wjh@192.168.1.13:/home/wjh/
这里的wjh也是电脑的名字,不是hostname!!!!
获取远程计算机上的文件或文件夹
在工控机端操作为例:
wjh@wjh_vm1:~$ scp wjh@192.168.1.13:/home/wjh/111 /home/wjh/
wjh@wjh_vm1:~$ scp -r wjh@192.168.1.13:/home/wjh/112/ /home/wjh/