调试时来回拷贝代码总是不利于版本管理的,并且十分麻烦。因此就想要一种直接通过局域网连接就可以调试的方法了。
iptux
首先介绍一个ubuntu下信息传输的软件iptux,iptux是一个国人开发的开源Linux版飞鸽传书,其中文名为:信使。类似于飞秋等。
安装方法:
sudo apt-get install iptux
运行方式为: 直接在终端运行,iptux
可以使用这款软件进行可执行程序和数据包的拷贝,速度还可以,比一般的u盘还是快很多了。
ros分布式通信
分布式通信的作用可以作为调试工具,用网线连接笔记本和测试主机,可以直接收发数据和简单功能调试,持续保持在线,使用较为方便。调试好后可用iptux进行软件包的传输。
按照这个ros wiki的教程设置即可
ros wiki网络设置
由于我们的两台主机不需要通过ssh登录,因此就不按照ssh了。
假设在qy和cargo的电脑上运行程序,为了简化测试的过程,进行如下的功能分工:在qy的电脑上运行roscore和接收程序,在cargo的电脑上运行其他发送数据的节点;
- in qy
- 首先设置自己的ros_ip为本机ip
hostname -I
export ROS_IP=192.168.5.100
roscore
可以看到设置的ROS_MASTER_URI=http://192.168.5.100:11311/
- 打开新终端按照以上操作打开rqt,查看收到的ros消息列表、带宽、频率的信息,由于在qy本机没有运行任何程序,收到的消息都来自其他分布式机器。
export ROS_MASTER_URI=http://192.168.5.100:11311
export ROS_IP=192.168.5.100
rqt #rqt-plugins-topic_monitors
- 在cargo中运行ros节点
cargo中的ip为192.168.5.103
这里设置的ros_ip都需要是自己本机的ip
export ROS_MASTER_URI=http://192.168.5.100:11311
export ROS_IP=192.168.5.103
< start your code >
- 以上设置也可以加入.bashrc使得不需要每次设置,如果要改回本地的删除相应的设置即可。