Real Balance car laser point cloud roation

Hi @rzegers ,

I’m sorry to bother you again.

I have recently assembled a two-wheeled balance car. It is controlled by the stm32 program to keep balance. This all works fine.

But when I put radar on it and tried to control it through ROS to complete the map building and navigation function, it get wrong.

The process was just like the one shown in the video. When building the map, I felt that its radar point cloud felt constantly floating, unlike a four-wheeled car which is very stable. I consider that the stm32 is controlling its balance at the time, which may cause its radar x, y, and z position to keep changing, which may be the reason for its point cloud floating. In the end, I saw that the map build was actually acceptable, so I left it alone.
(I couldn’t upload the video so I made it a gif and turned up the size of the point cloud to show in rviz, I’m sorry it’s so unclear.)
B585mapping00-01-02--00-01-15

But when I use the built map to perform the navigation function. I found that his radar point cloud was slowly rotating clockwise, as shown in the video, but in reality, my car was just moving back and forth to keep it balanced. This baffles me as to what is causing his radar point cloud to rotate.
B585navigation00-00-33--00-00-53

Has any ROSer encountered this problem and can you help me?

Thank you very much,
zlwnge

Maybe you have a drift in your odometry?

Do you have an odom topic you can introspect while the robot is standing still?

Thank you for your reply.

I turned off the enable switch on the balance bike and found that his odom data was always 0 and did not change.
But his imu value is not 0. Is there anything wrong with this?


I feel like the IMU shouldn’t be zero, especially in a self balancing robot. It will pick up every movement the robot has to do to stay balanced.

It’s strange that the odom position says exactly zero. Does it change when you move it around?

If the odom does change when you move it and the robot doesn’t actually spin like it shows in your video, then it’s probably an issue with the attempt of using navigation with a self balancing robot

I moved it manually and its odom changed and was very stable.

But it’s self-balancing is what I implemented in the bottom with stm32. It’s not controlled by ROS. Could it be a conflict between the stm32 and ROS program?

This topic was automatically closed after 7 days. New replies are no longer allowed.