Tuesday, 16 October 2007

NXT Programming - Lesson 6


Date: 10.10.2007
Duration of activity: 3 hours
List of participants: Alessandro, Daniela, Samuele

Goal of the day: Build a balancing robot.

First of all we followed the Philippe Hurbain building instructions to build the balancing robot. Then we tried a naive proportional implementation, for its software, and then compared to the Philippe Hurbain code.
The result wasn't satisfying. Since its many falls, we added some to the robot, to avoid damage to it.

Then, instead of changing the constants inside of the code to make it work better, we tried some hardware modifications.

First, we tried to move the robot's weight to the bottom, to make it more firm, as the gyroscope does.
It actually was better in recovering, when it was about to fall, but it oscillated more.

Then "somebody" made us notice that it would have been easier to balance, moving the weight to the top of the robot. We then built our ridiculous robot of the week: .
It worked better with balancing, but it only could stand small oscillations. Whenever there was an error, it couldn't recover from it, since a bigger motor power should have been required (or a more precise sensor, to avoid such oscillations).

In order to build a good balancing robot, we then think that it is necessary that its mass center is located at an height proportional to motors power, depending also on the maximum angle (and speed of fall) of recovering tolerance.

No comments: