按照wiki装rplidar_ros的时候:
https://github.com/robopeak/rplidar_ros/wiki
运行:
roslaunch rplidar_ros view_rplidar.launch
报错:
Error, operation time out. RESULT_OPERATION_TIMEOUT!
[rplidarNode-2] process has died [pid 22745, exit code 255, cmd /home/likeyu/catkin_ws/devel/lib/rplidar_ros/rplidarNode __name:=rplidarNode __log:=/home/likeyu/.ros/log/2e561d84-4ae0-11e9-b751-58fb84c1a1d8/rplidarNode-2.log].
log file: /home/likeyu/.ros/log/2e561d84-4ae0-11e9-b751-58fb84c1a1d8/rplidarNode-2*.log
解决方法:
问题在于launch文件里指定的USB的serial port端口号是ttyUSB0,而实际上雷达插的端口号是ttyUSB1。可以手动修改 rplidar.launch 里的这句:
< param name=“serial_port” type=“string” value="/dev/ttyUSB0"/ >
这里将 ttyUSB0 改成 ttyUSB1 即可解决本次问题。
再介绍一个通用方法:
为了以后不用每次都修改Launch文件,可进行scripts文件夹里的USB端口映射:
cd rplidar_ros
./scripts/create_udev_rules.sh
拔掉lidar再重新插上,查看端口:
ls -l /dev|grep ttyUSB
显示:
lrwxrwxrwx 1 root root 7 Mar 20 15:51 rplidar -> ttyUSB0
crwxrwxrwx 1 root dialout 188, 0 Mar 20 15:51 ttyUSB0
这样不管插到哪个端口都会映射成rplidar这个名字了。
最后修改rplidar.launch:
< param name=“serial_port” type=“string” value="/dev/rplidar"/ >
完美解决。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)