当Rplidar雷达突然报错:
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/zhaokai/.ros/log/2e561d84-4ae0-11e9-b751-58fb84c1a1d8/rplidarNode-2.log]. log file: /home/zhaokai/.ros/log/2e561d84-4ae0-11e9-b751-58fb84c1a1d8/rplidarNode-2*.log
遇到这种问题,首先要判断自己有没有动过launch文件里面的参数,以及转接板上的按钮,转接板就是那个和雷达连接的方形的东西。
第一,看按钮上的波特率和launch文件里的参数是不是一致的:光一致是不行的,还要调成对的数字。关于这点,要看你的雷达型号是什么,雷达型号可以看雷达背面贴的二维码下面的字。
通常A1&A2为115200,(A2M7比较特殊,它的波特率为256000),A3&S1为256000。有时候不小心把雷达摔一下,那个按钮会跑到中间,至少接触不良,所以得调一调。
第二,要看供电是否有问题,雷达的供电至少是5V,1.5A。(供电不足通常可能导致operation time out报错)第三,要检查雷达的USB端口是不是launch文件里的ttyUSB0。很有可能是你的电脑可能插了好几个不同的设备(鼠标键盘不算),先插进去的会被识别为ttyUSB0,后插的就是ttyUSB1。有可能是别的端口占用了ttyUSB0,所以不能正常启动launch文件,报timeout错误。所以需要先拔掉雷达,输入 ll /dev/ttyUSB*然后再插上雷达,再输入上述指令,查看多出的端口是不是ttyUSB0。这样才能确定雷达的启动端口。另外,需要对端口权限进行修改:
sudo chmod 777 /dev/ttyUSB0否则会报错Cannot bind to specific serial port。
第四,如果以上都没有问题,那么则需要判断一下是不是雷达自身坏了。如何判断呢?先下载一个软件,链接: https://pan.baidu.com/s/1GANZ5pwgU-klWRIqJu5WMA 密码: i46u,(请放心下载,这是思岚官方之前提供的windows sdk其中的一个文件,不是病毒,可执行文件名为frame_grabber.exe,如果链接过期了请留言或者私信联系我,我重新更新一个),切换到windows系统下。打开windows下的设备管理器(“此电脑”右键“管理”再进入设备管理器,点击“端口”,然后插上雷达,观察一下多了哪个端口,一般名字叫“Silicon Labs …… ”观察后面的端口号,一般为(COM3)。然后把下好的frame_grabber.exe直接打开,选择端口号为之前看到的COM3,然后把波特率改对,A1&A2为115200,(A2M7比较特殊,它的波特率为256000),A3&S1为256000。点击OK,进入frame_grabber.exe文件的主页面,其中,上方有一个绿色的按钮:点击绿色按钮,开始扫描。如果还是没有扫描到的显示,雷达也没有开始转,说明雷达真的坏掉了,需要联系官方退回去报修了。
实测的时候,发现有接触不良的情况。当报错的时候,这个软件也不能正常打开。但是对雷达拍拍打打一顿,不知道怎么的它自己又好了。这种情况同一个雷达我这里出现过好多次莫名其妙又好了。这其实是产品质量问题导致。
如果这个能转也能扫描到障碍物,那就再回去检查上面的第一点、第二点和第三点弄对了没有,尤其是第一点波特率设置。