ROS机器人使用A1M8激光雷达进行扫描使用view_rplidar.launch文件
启动A1M8激光雷达扫描使用指令:
roslaunch rplidar_ros view_rplidar.launch
启动时可能会遇到以下情况:
此为无法联系ROS主机[http://192.168.1.114:11311]
注:虚拟机的Ubuntu系统和ROS机器人是处于同一个网络下,这样才能通讯。
解决方法:
解决多机通讯,使用简单方法:
首先确定好主机和从机,我们在这里确定树莓派是主机,自己使用的虚拟机是从机。
打开虚拟机的终端输入指令:
sudo vim ~/.bashrc
进入文件找到export ROS_MSTERT_URI=http://....:11311
按I键更改IP地址为主机的IP地址(注意后面的:11311不用去掉)
最后按esc键,输入:wq,回车。
然后输入指令source ~/.bashrchu回车。
最后输入roslaunch rplidar_ros view_rplidar.launch指令。
如果成功,说明多机通讯没有配置。
如果没有成功,就进行虚拟机和树莓派之间的ping 操作,如果能够成功ping,就说明多机通讯是配置成功的。
(注意:ping操作是输入指令ping 需要ping的IP地址。可以多方验证虚拟机是否与树莓派进行连接,可以使用ssh pi@主机IP进行连接,成功说明多机通讯没有问题。)
还是不能够启动,那么观察WIFI是否可用,如果不能用,就换一个可用的WIFI。换了之后还是不可用,那么可以在官网上从新下载虚拟机覆盖原来的虚拟机,如果可行,说明了虚拟机中文件有损坏无法使用,如果还是不行,请重新烧录树莓派系统。(注意:更换新的虚拟机和树莓派系统,都需要确定好主机和从机,然后配置多机通讯。)
如果不想重新下载覆盖虚拟机和树莓派系统,那么参照ROS/NetworkSetup - ROS Wiki上的内容进行检测,如果不能成功,就请下载新的系统进行操作。
(注意从官方下载的压缩包不要删除,如果电脑空间不够,请用移动U盘进行保存,这样就不用再去官网下载拖慢自己的进度。)
以上检查之后还是不行,尝试以下方法:
使用ssh远程连接树莓派4B
我这里的树莓派的IP地址是192.168.1.101,则输入
ssh pi@192.168.1.101
然后输入roscore
再去虚拟机中输入命令roslaunch rplidar_ros view_rplidar.launch
如图所示:
这里可以看到启动成功,但是出现了串口报错。
输入指令ls -l /dev |grep ttyUSB发现没有任何串口,发现雷达没有连接电脑,将USB接到电脑上,再次尝试成功
在我的不断尝试中发现,将雷达USB接到电脑上,更改虚拟机的多机通讯让虚拟机不去通讯其他系统,更改回自己的IP地址。
输入命令查看串口:
ls -l /dev |grep ttyUSB
更改权限:
sudo chmod 666 /dev/ttyUSB0
最后输入
roslaunch rplidar_ros view_rplidar.launch
成功: