mirobot-py icon indicating copy to clipboard operation
mirobot-py copied to clipboard

Implement Rover Protocol

Open rirze opened this issue 4 years ago • 4 comments

image

rirze avatar Apr 28 '20 13:04 rirze

I noticed that W0 (Stop) is missing in the library. Perhaps this is due to the assumption that the Rover move commands are 'discrete'; so a 'W8' would spin all wheels forward by some given angle and then stop.

Unfortunately, Wlkata currently implemented Rover move command as latching switches: a W8 makes all wheels to spin forward. And they will just keep spinning forward, forever, unless the W0 command is issued. So in current rover firmware the W0 command is quite vital :))

As a side note: the current speed of the rover after move commands is very high, and I hope that after we get access to the firmware I can change this. Of just change it to a discrete, repeating angular movement, as you have already implemented

JorisvanDamTUD avatar May 21 '20 21:05 JorisvanDamTUD

So to be clear, move forward, backward and stop are continuous operations right? Not discrete?

Are all the others like this as well?

rirze avatar May 21 '20 21:05 rirze

Yes, all move command are continous, and stop will always stop all wheels. Sorry. I gives it a rather course way of controlling movement offcourse. The rover hardware itself is capable of better control, it has encoders on the motorwheels

JorisvanDamTUD avatar May 21 '20 21:05 JorisvanDamTUD

Thanks for clarifying.

This means I have to redo the wrapper around the rover commands to include some kind of time parameter for how long it should run before stopping. Will upload something soon.

rirze avatar May 21 '20 22:05 rirze