Replies: 4 comments
-
|
You said your robot now pivots in the middle. I think you mean the front half may be pointing in a different direction than the back half while it's turning. If so, and if the IMU was not on the same part of the robot as the lidar it could be pointing in a different direction than the lidar. I have found that lidar issues (latency, etc) can lead to loss of localization. You could try turning off the lidar and see if the problem gets better. |
Beta Was this translation helpful? Give feedback.
-
|
Hello Thomas and Paul, thanks so much for the feedback. The pivoting allows the front and rear sets of wheels to climb over obstacles independently. For example, if the front left wheel is elevated due to a rock, the back left wheel stays on the ground thus preserving traction, and direction, and all wheels point in the same direction at all times, if that makes sense. As for IMU and MAG, I have yet to uncomment them in the configuration file for troubleshooting purposes. Next steps will be to enable both modules, play around with LR wheel distances, and turn off the lidar, to see what that does. The paper Thomas sent me (thank you) about the challenges of skid steering leaves me with the impression that odometry is for the most part a best effort and incorporating additional position sensors is necessary to reduce errors. Watching the behaviour of skid steering makes me appreciate the complexity of this kind of steering, almost something that shouldn't work, but it does, and there's much wheel slippage / skidding. BTW, I found a linorobot2 fork that utilizes rtk for position info. I'll check it out after I have exhausted everything discussed above. Again, thanks for your valuable feedback. |
Beta Was this translation helpful? Give feedback.
-
|
@tbalatka Thanks for your share. I should try out skid drive 4wd myself. Maybe next week. |
Beta Was this translation helpful? Give feedback.
-
|
Well I'm embarrassed. Turns out my URDF/xacro file was set to 2WD and not 4WD. After fixing that the robot is now behaving as it should and the mapping is no longer erratic. Thanks and I will endeavor to be more mindful in the future! |
Beta Was this translation helpful? Give feedback.
Uh oh!
There was an error while loading. Please reload this page.
Uh oh!
There was an error while loading. Please reload this page.
-
Hello,
I modified my 2WD robot so that it now has four powered wheels (see attached photos). I also swapped out the ESP32 for an ESP32-S3, giving me more pins to play with and improved network performance. The robot has grown to 17" wide by 22" long and weighs around 14 pounds. For added traction, it pivots in the middle. Skid steering works surprisingly well.
In the near future I will be experimenting with mapping and navigation around our hilly property (approx 12 acres). Of course the robot's LD19 lidar won't be suitable for this kind of use case, and I will need to install outdoor wifi access points. As such I have been researching Real-Time Kinematics to compliment (replace?) lidar. I'll start experimenting with Waveshare's LC29H GPS module to see how far that takes me.
Meanwhile, indoors, I am testing the changes I made. The mapping is not performing all that well...the usual circular ghosting pattern and lots of drift, especially when I turn the robot. With previous iterations of my design, this issue usually occurred when the encoders were not configured correctly or I had the RPMs set wrong. One thing different with my new 4WD setup is 2 of the 4 encoders have different specs (diff. ticks per revolution), but I have accounted for those differences in the ESP32-S3 configuration file, and changing those values don't seem to improve the mapping...
Question: I noticed on your wiki, in the "Configuration examples" section, you make reference to 2WD setups but nothing for 4WD. Is that because there has been no testing on 4WD setups?
I greatly appreciate the work you are doing and look forward to your reply.
Thank you!
Beta Was this translation helpful? Give feedback.
All reactions