Today I wanted to show you a small video about the PID control typical reactions.
In the next video you can see a robot with 4 wheels, when I grab one to stop it at the time of release it an overshoot is caused. Next the wheel stabilises its speed but the distance gets a little bit off, so the motor now moves forward until it reach the desired position.
Also you can see that the other wheels don't move until the one I grab finish its movement, them every wheel continues with the sequence.
This is ideal in a robot because it allows to sequence complex movements routines and automatically waits every motor is done before continue. This is done thanks to my library for Arduino that checks the "isRunning" flag to coordinate the sequences. This code is in the examples.
However this also introduces a new problem into the equation. What happens if motors gets slightly unsynchronized? Well the robot will not navigate so precisely or even do weird things in extreme scenarios. To correct this you should do a check in your master controller and keep things synchronized by getting is something unexpected happens. Also is a good idea to use a IMU to completely take off the error, other kinds of sensors can help too.
What I want to say, is that SAMI would not make a miracle by itself. But together with clever programming and joining forces with other sensors can be an unbeatable navigation system.
Thanks for reading :)