User loginNavigation
Who's onlineThere are currently 0 users and 5 guests online.
Krabos - walking robot |
- Walking algorithmSubmitted by dolinay on July 28, 2008 - 9:46pm.
To figure out the sequence of servo movements which make the robot move was a tough task for me. My imagination betrayed me, so I had to use the robot, moving its legs by hand and taking notes of the movements. I use the following notation when describing the movements: The position of servo is A, B or Center. Center is self explanatory. Position A is with the lever of the servo moved counter clockwise from the center, B is moved clockwise (looking at the servo from the side on which the lever is attached). Servos are assigned numbers: 1 – left-hand side servo, 2 – right-hand side servo, 3 – center servo. See the pictures for details:
Fig. 6.1 – Positions of servos
Fig. 6.2 – Servos on the robot – top view
To present the algorithms in a clear way I use table where the columns mark position of the servo in each step of the algorithm. There is about 0.2 s pause in the execution of the MCU program between steps, so that the servo has enough time to reach desired position. Don't be suprised if you won't understand the tables just by reading this. You will probably need to try it on the real robot (just like I had to) if you decide to make some changes in the walking algorithms. On the other hand, if you will be satisfied with the way Krabos walks with the provided algorithms, you do not need to spend much time on this "low level" information.
Algorithm to walking forward
The robot starts from neutral position (all servos at center). Steps 1 and 2 are performed only once when it starts to move. Then the program cycles through steps 3 to 8 to keep the robot moving. Note that at each step only one servo changes its position.
To describe the algorithm in words:
Algorithm for turning left
Step 1 is performed only at the start of the rotation from neutral position, then steps 2 through 5 repeat to keep the robot rotating.
Algorithm for tunrning right
Step 1 is performed only at the start of the rotation from neutral position, then steps 2 through 5 repeat to keep the robot rotating.
To rotate left or right the robot uses this simple algorithm (right rotation described):
Algorithm for walking backwards
Steps 1 and 2 are performed only once when robot starts to move. Then the program cycles through steps 3 to 8 to keep the robot moving. Note that in each step only one servo changes its position.
|
|