Humanoid Robot
Humanoid Robot is a robot that
imitates one or more human actions. The aim behind its creation is that one day
it will be able to understand human intelligence and work with and like humans.
Humanoid robots could have structure same as a human body or some part of it.
The robot Frankenstein imitates the walking mechanism of human body.
Intelligence
The intelligence shown by the robot is in following an obstacle. The sensors are used to achieve this task. 2 sonar sensors are needed for this purpose. If left sonar reading is less than right sonar reading, and obstacle is sufficiently close, robot turns left. If right sonar reading is less, robot turns right. Otherwise, robot goes straight. To avoid wrong behavior due to inaccuracy in sensor readings, and also to compensate for difference in sonar positions, robot is programmed such that minimum difference in left and right sonar readings should be atleast 10 for turning.
Concept: How
humans walk?
When walking with legs, location of centre of gravity of the
human body is very important. In case of two legged walking, if left leg is
first put forward, right hand also moves naturally with it. This serves two
purposes: Move position of CG forward and maintain CG at centre.
This concept will be used for this project. The robot will consist of two legs joined by a channel. A heavy mass will be placed over it and will be able to slide along the channel by motor power. Another pair of motors will be used to rotate legs and channel, so as to move forward. The robot should be able to stand on one leg. The heavy mass will be used to shift robot balance from one leg to the other leg.
The Mechanism:
Mechanism of this robot is quite simple. It basically has 2 legs, 2 feet and a pendulum. The two motors at the top of the legs serve as hip joints. These two motors are powered simultaneously to move one leg forward. While doing this, pendulum is at the top of one of the legs. The next step is to move the pendulum to the top of the other leg. This shifts the balance of the robot to that leg. Now, both hips motors are powered again. This moves the other leg forward. The whole process is repeated for the complete walking mechanism.
Following
steps are taken to complete the walking mechanism.
Steps:
1.
Shift
the weight to left leg
2.
Rotate
the channel anticlockwise by X0
3.
Shift
the weight to right leg
4.
Rotate
channel by 2X0, clockwise and anticlockwise alternatively while
shifting the weight
5.
Iterate
6.
Change
the angle of rotation to turn
A pair of battery packs is attached at the end of pendulum. The battery packs are quite heavy. So, the serve as the shifting weight. It was a difficult task to manage wirings of the battery pack and switches, as the batteries are continuously moving.
After completing the robot, it was found that there is a considerable bend in the motor shaft. Due to this bend, there is excessive load on motors which is not good. Hence, an attachment was designed to prevent this bend. The attachment has a couple of caster wheels, which act as bearing and prevent bending.
Parts Used
1. Servos: Servo-motor is the most important component of this robot. As the load on motors is heavy, they have to be high torque. I tried different motors on my robot and also accidentally burnt some of them. Finally, I am using a 333 oz-inch torque motor for my pendulum, and two 144 oz-inch motors for legs. I found that Hitec servos are more reliable compared to other brands.
2. Batteries:
A set of 12 NiMH batteries, 2600mAh was used to power the robot. 6 of them power the motor and 6 of them power the microprocessor board. Separate battery packs are used, because if motor draws extra current due to heavy load, it would damage the microprocessor board. Separate power keeps it safe.
3. Sonar Sensors:
2 sonar sensors were used to do the obstacle following task. A sonar gives the distance at which it finds an obstacle. If the left sonar reading is low and right sonar reading is high, it means that obstacle is on left side of robot, and it needs to torn left. If the right sonar
reading is low and left sonar reading is high, it means that obstacle
is on right side of robot, and it needs to turn right. The sensors were found to be pretty noisy. This noise can be reduced by taking average of hundred readings to make a decision.
4. Microprocessor board
The microprocessor board used is Atmega 128 Mavric IIB. The board is primarily used to give PWM signal to the motors and to take inputs from sensors. It can control 6 servos.
The clock frequency is 14.7 Mhz. Board also has A to D converter pins to take input from sensors. The board is programmed using Jtag programmer. Overall, this board is very easy to use.
5. Feet
Foot is an important part of the robot. Stability of the
robot depends on feet design. Feet should be large enough to stabilize the
robot and small enough to maintain enough distance from the ground when lifted.

For code, please see the following txt :
Code.txt
