GoPi5Go-Dave has "Flopsy Wheel Syndrome"

While I am still feeling nearly overwhelming dissatisfaction with GoPi5Go-Dave, I also miss messing with him. There is something very satisfying about writing a few lines of code and seeing them actually work.

Every ten minutes I give up on him and investigate my alternatives, then even more frustrated I return to what I could do with Dave.

I wrote a program to compare heading measurement accuracy with raw encoder ticks which occur 5.3 times per degree versus the GoPiGo3 API which uses 1 tick per degree of wheel rotation. Interestingly, the 5 times more precise wheel rotation measurement provided less than 1/2 degree improvement in heading estimates.

This exercise did expose what I think is the actual issue for GoPi5Go-Dave - “Flopsy Wheel Syndrome”.
He just does not drive straight with his axles flopping loosely. The GoPiGo3 drive commands result in equal wheel rotations to within one degree after 1 meter, but the robot actually ends up many centimeters to the right of straight and having turned significantly from the original heading. I tried giving him a “two wheel alignment” which improved his driving slightly but no angle combination can fully straighten his driving.

My current thinking is that Dave’s floppy wheels are the cause for the poor directional control, and subsequently this causes his localization and navigation difficulties.

While I am waffling back and forth on building a new robot, I built a list of what I could do with Dave:

GoPi5Go-Dave PROJECT IDEAS

  • Change Dock location out of “bad for navigation” office
  • Fix driving accuracy (dY < 1cm, dHeading < 2 deg, for dX of 1m)
  • Add wrap-around bumper
  • Programmatic Nav2 set Initial Pose, publish location goals
  • Use ros_control
  • Get Oak-D-W ROS Driver up
  • Get ArUco marker recognition up
  • Investigate Nav2 Docking Behavior
  • Get MPU9250 ROS Driver up
  • Investigate RTABmap with GoPi5Go-Dave
  • Create C++ version of ros2_gopigo3_node
  • Migrate simualation to Gazebo Harmonic
  • Migrate everything to Ubuntu 24.04 Noble and ROS 2 Jazzy Jalisco

And consider starting all over building a totally new robot for high accuracy odometry

2 Likes

Interesting!

I have not noticed this on either of my two robots.  Have you confirmed this with Carl?

P.S.
Have you confirmed that your floor is level?  Mine isn’t and the robot ends up all over the place.

2 Likes

Here is “Floppy Wheel Syndrome”:

Oh boy, it is the wheel, not the motors…

I swapped the flopsiest Dave wheel with a Carl wheel - Carl seemed to have more flopsy, and Dave had less.

Uh,oh…Carl can’t back straight onto his dock! Docking failure. Carl wants his good wheel back.

2 Likes

Carl is wondering where Dave disappeared to - The Dining Room of course. He wanted to be closer to the kitchen, historical robot playground with perfect walls for localization.

Today I sent GoPi5Go-Dave to the kitchen three times. He made it back twice, but called his “designated driver” (me) to get him home the third time. I also tried giving him an excursion with about 20 waypoints - the visualization program crashed before Dave left for the journey, so Dave just got back on his dock to get ready for tomorrow’s adventures.

2 Likes

Is the wheel moving around on the motor shaft?  It’s kinda’ hard to tell from the video.

My two robots have wheels that are quite tight - to the point that I fear damaging the motors when I remove them.

If the wheels are loose on the axle, that’s likely a manufacturing defect[1] [2] and is easy to fix.  This kind of wheel, (and motor for that matter - sans encoder), is quite common and you should be able to find it at a well-stocked hobby/robotics shop.  Even here, they’re available at Chip & Dip which has a number of robotics/hobby offerings including wheels, motors, and driver boards.

Side note: The Google AI box I have, (with the speaker and buttons that ran off of a Raspberry Pi), has a lot of interesting logic on that controller board that’s suitable for robotics - including sound, (mic and speaker), servos, motor drivers, i2c, SPI, and other stuff as well.  One of these days I want to make a GoPiGo clone out of it.  Or the GiggleBot From Hell. :rofl:
 

And:

  • Get better wheels so that the robot doesn’t flop around like a drunken sailor with recent knee surgery!

Actually, I’m thinking that new wheels that don’t flop might solve a lot of your odometery issues.

==================== Footnotes ====================

  1. I’m not sure what the problem is, but it appears that the later runs of the GoPiGo controller board, (and perhaps the wheels too?), have had serious quality issues ranging from poor solder connections to micro-voids in the traces that cause intermittent connections.  I’ve had to do a number of repairs to Charlene due to manufacturing defects.

  2. One thing I’ve noticed is that, apparently, the thickness of the traces on Charlene’s controller board are much thinner, (top to bottom), and even relatively small amounts of heat will cause them to lift and break.  Charlie, on the other hand, has traces that are more rugged and can be reworked with the degree of ease that is normal for commercial-grade PC boards.  I don’t know this for sure, but it’s possible that the PCB manufacturer didn’t plate the board to the required thickness - or bought thinner-plated masters - to save on manufacturing costs at the expense of overall quality and the ultimate purchaser.

2 Likes

Certainly will minimize variability.

Carl is happy to have his tight wheels back - he managed to “find his own way home” successfully twice since.

Dave is struggling but managing to navigate with about 60% success. There are more tunable parameters in ROS 2 navigation package than an entire philharmonic orchestra, and their interaction effects are equally multiplying.

Showing Dave singing “I’ll be home for Christmas”, but I’m not believing the part about “You can count on me”

Like why did he choose to go very close to the chair leg, instead of driving straight forward and then spinning in place at the goal x,y? (Nav package has a litany of planners and recovery planners that jump in to give advice. Each planner has its own set of parameters, short and long-term goal solution approaches.) Instead of flying the plane - I’m figuring out which dials and buttons to twiddle.

2 Likes

You should put this in the “What did you do in MSFS today?” forum. :rofl:  This really sounds like me when I’m flying!

This sounds like “Too many cooks spoil the soup.”  Have you considered turning off all the “planners”, (or maybe leaving only one or two on), to reduce the noise?  With zero planners enabled you can note the effect, then slowly enable one at a time noting the improvement or divergence from the ideal route.
 

Looking at the map, and assuming simple navigation logic, I would expect something like this:

  1. Getting ready to move:  What am I closest to?  [The large angular object above Dave.]
  2. Which direction has the largest open space that isn’t moving away from the goal?  [Behind me.]
  3. How do I go in that direction?  [Start moving than execute a U-turn.  This assumes that a “spin in place” isn’t a favored move.]
  4. Which direction to turn?  [To the right, away from the obstruction.  This also assumes that a sharp U-turn isn’t a favored move.]
  5. [After executing a certain amount of the U-turn]  Am I still headed toward the goal?  [No.  Assuming the “goal” is the barbed arrow point at the end of the line.]
  6. Which way should I go?  [Turn left.]

Dave is now headed directly toward the goal and eventually reaches it.

2 Likes

It appears there are grad students doing their entire research project on just this package. Again, I was hoping for a “somebody else already figured this all out and it just works” solution. It is clear that, owning a ROS robot, I will not suffer from having nothing to do for the rest of my life.

(I took a “TheConstruct” course in “Robot Perception” yesterday to get a promised “wall detector” program. I’m still hoping to find some ROS person wrote a “doorway detector”, and a “corner detector” program. It is also interesting that Amazon says “Astro does not work in homes with round corners.”)

2 Likes

The Luminaire’ brothers in France and the Wright brothers in the USA looked for that too.  All it got them was broken models and broken bones.

If grad students are writing Ph.D. theses on this, you are obviously in uncharted territory.  (Like most of us, it seems.)

The bad news is that it is extremely unlikely that you will find a pre-packaged solution.  (Maybe you can buddy-up with some of these grad students?)

The good news is that you will get the opportunity to do some really significant and original robotics/AI research in a field that is still dripping blood from the cut at the bleeding-edge.[1]

==================== Footnotes ====================

  1. That has been a dream of mine for as long as I can remember - to be able to do significant research in a field that is “ripe for the picking”, perhaps even something worthy of being published in a peer-reviewed journal.  Being married and having grandchildren makes that difficult - especially since I don’t have a dedicated and isolated workspace of my own.
2 Likes

That was a dream of mine that I remember - to do something, anything, significant. There came a point where I realized that dream was not going to be realized, and I’m very ok with it. My robot not going straight? I’m very NOT OK with that.

I’m also not ok with:

2 Likes

I may not have done something worthy of being published in a peer-reviewed journal, (yet), but I can point to one accomplishment that should, God willing, outlive me:  My family.

I have a son that, though I want to strangle him at times, is a true blessing with a heart of gold.
I have two granddaughters that I wouldn’t part with for all the fame and fortune in the world.
I have a wife that, though she drives me crazy, loves me more than I could possibly deserve.

If I accomplish nothing more than that, I still feel I have done well.

2 Likes

Are you not OK with FS2024 or the forum for it?  Opinions appear to be divided - some people hate it with an unbridled passion while others think it’s better than FS2020, though with teething pains.

As I remember, FS2020 was a lot like X-Plane12 when I bought it - great but watch out for the gortcha’s - it was obviously a work in progress.  Nowadays it’s much better, though there are things I’d like to see done and/or changed - but that’s true with the GoPiGo and its software too.

2 Likes

How am I supposed to get anything done when I wake up to “1372 new or updated topics”?

TBH, I think they released FS2024 before they should have, but I don’t have any major functional complaints - I can stick fly VFR all three of my birds (LongEZ, Cabri G2 heli, and the ICON A5) just like in FS2020 and I can’t say either has better graphics or better modeling. I spent $70 and am enjoying the “early access”. I was successful at the first few helicopter training activities, but I’m not into building a virtual career and paying funny money for insurance, or another virtual airplane. There supposedly is a voice chat buddy flying feature in FS2024 that I have not had the opportunity to try yet, but for as much as I am asking of a flight sim, FS2024 has delivered my $70 value already.

2 Likes

That’s a preference if I’m not mistaken.

I believe you can set what you get notified about - as some boards tend to be a bit generous by default.

2 Likes

I click on the “million new waiting for you”, then scan the first page for helicopter, and I’ve had enough whining for the rest of the day.

2 Likes