windows和虚拟机ROS串口通信
最近在学习ROS时,想模拟真实的数据通信,但苦于没有硬件,所以通过模拟方法实现ROS与硬件之间的通信,以便于后期学习。
平台:Ubuntu20.04
ROS:noetic
ROS串口通信步骤
1.windows下安装VSPD(虚拟串口工具)
如图所示,通过单机Pair添加需要通信的两个串口COM2和COM3
2.VMWare虚拟机添加串口
如图,在虚拟机关机状态下,通过添加新增串口,例如我的串行端口2,对应选择Windows下COM2串口,
3. Windows下串口通信测试工具设置
由于之前设置的串口通信组为COM2和COM3,COM2在ROS中使用,因此串口通信工具中使用COM3收发数据,图中红线部分需要与ROS中的通信串口设置相同。
4.ROS通信代码
参考https://blog.csdn.net/qqliuzhitong/article/details/114384297
COM2串口对应Ubuntu下的/dev/ttyS1,注意修改17行代码为
源代码
sp.setPort("/dev/ttyUSB0");
修改为
sp.setPort("/dev/ttyS1");
5. 运行结果
注意:运行前需要更改串口的权限,否则会打不开串口
sudo chmod 666 /dev/ttyS1