First version :

This robot was my first mobile robot project. The first version of the crawling robot made in 2016 was supposed to allow me to use the reinforcement learning algorithm called QLearning, but apart from a few examples found on the Internet and a few attempts at algorithms, the robot was not moving in an optimal way. As soon as a viable solution was found, the mutation was not enough to improve the walking technique found.

Functional principle :

  • The Arduino commands the 2 servomotors to join a series of random positions
  • Then the distance traveled is measured using an ultrasonic distance sensor (not shown in the picture)
  • The algorithm adapts the next random positions according to the reward (the distance traveled)
  • And (normally) and so on until the algorithm has found the best combination

Second version :

As the robot was not moving properly, I decided to use a “Nunchuck” to control the arm using an axis of the accelerometer and an axis of the joystick. The robot’s progress now depends on who controls it.

Functional principle :

  • The nunchuck pitch axis is used to rotate the “knee” (the first servomotor) and the “Up-Down” axis of the joystick to rotate the “ankle” (the second servomotor)