We cannot drive the motors directly from the Altera chip, so we need various components:
The Robot board
The technique used for this board is still the wire wrapping method.
The robot didn't work immediately, and it appears that the bridge driver needed at least 12V to work.
After adding a second 6V battery and placing the batteries on both sides of the robot to be equilibrate the robot start, but was going only forward and backward and never turned.
After a simulation of the counter, it appears that the counters did not count whereas the VHDL code appeared correct. This error is due in fact to a bug in the Max+PlusII compiler.
Those errors are difficult to anticipate and I spent two days finding an error in the project where the compiler was at fault.
After some modification in the code, the compiler agreed to compile the counters correctly.
Now the robot is doing s sequence in the good order: forward, backward, turn right, forward, turn left, forward again until a path.
But those movement are not made correctly: the distances are wrong.
Sometime the robot moves forward for a short distance then and stops, but sometimes does not.
When the robot turns the angle, which should be 90 degrees, but can be less or the robot can turn on itself for a long time (which looks funny).
In fact the counters, which maybe counting correctly now, are disturbed by the noise generated by the electric engines.
A solution would be to separate the engine power from the components power, to reduce the noise.
The robot on its way