<div dir="ltr">Hi Murray,<br><div><br></div><div>Yes that video you saw was mine.</div><div><br></div><div>'HoverSim'  has odometers on all 4 mecanum wheels.</div><div><br></div><div>Currently, I only use a velocity loop for speed control. So far, I make no attempt to close any loop around position.</div><div>Hence, the video you saw was simply time and speed.</div><div><br></div><div>My next step for HoverSim will be to calibrate encoder ticks to distance traveled for</div><div>- forward</div><div>- sideways</div><div>- 45 degree diagonal</div><div>- rotate in place</div><div><br></div><div>and to try that on different surfaces. Empirical observation hints that distance traveled might vary by surface.</div><div>Also, I suspect that floor flatness could have a significant impact. You'll recall my video was on a tiled floor, which is anything but 'ultra-flat'.</div><div>HoverSim has a flat aluminum plate as base. And we've found spots in the Dallas Makerspace Interactive Classroom where two wheels do not have enough grab to overcome the third and fourth when they're adding drag.</div><div>To overcome that, I've seen at least one suspension design which has the front wheels and rear wheels on separate beams, connected by a front-to-back pivot, to ensure that all 4 wheels touch on uneven surfaces.</div><div><br></div><div>At quick glance, the motors on HoverSim themselves seem well matched and pretty repeatable. They accumulate pretty similar values after running one of those timed velocity loop patterns...</div><div><br></div><div>It seems that repeatability varies the most for 45 degree diagonal. That may not be surprising, considering that in such case, only two wheels are active and the other two just drag...</div><div>In contrast, forward and sideways travel seems to have remarkable consistency - those seem to return to start pretty well, even with timed velocity loops, even on an uneven tiled surface.</div><div>Amusingly, we also discovered what happens when a wheel falls off. Yes - that was an unexpected experiment. Remarkably, the robot still responded to controls quite well -it was almost as if the 4th wheel didn't matter. I'm still trying to wrap my brain around that one - but...</div><div><br></div><div>The fun will really start after calibrating encoder ticks to distance, to see how well simple encoders can work.</div><div>However, no matter how good simple encoders work, I fully expect to get a pair or triplet of optical flow sensors, and dabble with pointing at floor or ceiling...</div><div>And then there's another even more fun branch to explore - adding an adapter layer that makes control response mimic hovercraft motion ;-)</div><div><br></div><div>- Carl</div><div><br></div><div><br></div><div><br></div></div><br><div class="gmail_quote"><div dir="ltr" class="gmail_attr">On Tue, Apr 14, 2020 at 3:42 AM Murray Altheim via DPRGlist <<a href="mailto:dprglist@lists.dprg.org">dprglist@lists.dprg.org</a>> wrote:<br></div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex">Hi everyone,<br>
<br>
I've just been corresponding with Gareth over at 4Tronix and discussing<br>
the firmware changes necessary to run a second Picon Zero motor controller,<br>
which is not trivial but doable. Not that I need another project (!) but<br>
I've been thinking about adding a second pair of motors and a controller<br>
to my tiny KRZ01 robot and using Pimoroni's tiny Mecanum wheels that fit<br>
onto the micro gear motors. It'd certainly be one of the smaller four-<br>
wheeled Mecanum robots.<br>
<br>
The big question is: does anyone bother to do odometry on a Mecanum-wheeled<br>
robot? There's so much slippage it seems I could get away with not using<br>
encoders on the motors, which would simplify at least one part of the<br>
programming. I did remember seeing the video somebody in the group showed<br>
recently where his robot was navigating the kitchen floor (Carl or Doug?)<br>
and coming back to the same location after a complicated maneuver. Which<br>
I *think* requires odometry...<br>
<br>
Any advice welcome.<br>
<br>
Cheers,<br>
<br>
Murray<br>
<br>
...........................................................................<br>
Murray Altheim <murray18 at altheim dot com>                       = =  ===<br>
<a href="http://www.altheim.com/murray/" rel="noreferrer" target="_blank">http://www.altheim.com/murray/</a>                                     ===  ===<br>
                                                                    = =  ===<br>
     In the evening<br>
     The rice leaves in the garden<br>
     Rustle in the autumn wind<br>
     That blows through my reed hut.<br>
            -- Minamoto no Tsunenobu<br>
<br>
_______________________________________________<br>
DPRGlist mailing list<br>
<a href="mailto:DPRGlist@lists.dprg.org" target="_blank">DPRGlist@lists.dprg.org</a><br>
<a href="http://lists.dprg.org/listinfo.cgi/dprglist-dprg.org" rel="noreferrer" target="_blank">http://lists.dprg.org/listinfo.cgi/dprglist-dprg.org</a><br>
</blockquote></div>