Robotics StackExchange | Archived questions

laser_scan_matcher giving error when robot in a large open place

Hello, I have a robot with a RPLIDAR A2, a IMU and not so accurate wheel encoders. The robot works well in corridors, but when it is in large open room, the laserscanmatcher node keep producing the following error.

laser_scan_matcher_error

Why is this happening and how to fix it?

Asked by HM Mehrab on 2018-01-22 07:45:33 UTC

Comments

Can you please update your question with a copy and paste of the error instead of a screenshot? Text is searchable, images are not.

Asked by jayess on 2018-01-22 12:15:07 UTC

Added text of the error. Could not copy and paste since I do not have access to the machine now. So manually typed it in.

Asked by HM Mehrab on 2018-01-22 16:30:09 UTC

I appreciate the effort but please copy and paste the error when you have access to the machine vs manually typing it in. Manually typing it is prone to error. It's best just to wait until you have access.

Asked by jayess on 2018-01-22 16:31:22 UTC

Sure. I'll remove it and add it again by copy pasting.

Asked by HM Mehrab on 2018-01-22 16:33:10 UTC

Depending on the range of your laser, it might be that the laser scan matcher simply can't get any significant information due to seeing the same thing (or nothing) on all sides of the robot. In that case he won't know where he is compared to where he was last scan if nothing changed (for him).

Asked by JamesDoe on 2018-01-23 09:56:53 UTC

Yeah, I dug into the source code and found out that the CSM library that laser_scan_matcher uses produces this error if less than 10% of points of a scan are valid (value is between range_min and range_max).

Asked by HM Mehrab on 2018-01-23 10:05:52 UTC

Sounds like HM Mehrab got the answer up there. That explains why it's happening at least. I'm not actually sure if there's a fix in this case. Only things I can think of to fix it are: Change the range_min and range_max values (within what your laser_scanner can handle) or get another form of odom.

Asked by JamesDoe on 2018-01-23 10:21:50 UTC

Answers