Arduino based humanoid robot using servo motors

Written by: admin@makezilla

WP_20151127_11_34_00_Pro.jpgWP_20151127_11_37_44_Pro.jpg

Hello everyone,

This is my first humanoid robot, made by thick plastic sheet which I don't know the name of the sheet. It is available in various thickness. Here, I used 0.5mm. At now this robot can just walk when I switched ON. Now I'm working on connecting Arduino and Mobile through Bluetooth module. I have already done an App like Cortana and Siri for windows phone which is available in app store https://www.microsoft.com/en-us/store/apps/patrick... After Successfully connecting both, I can control it through voice command in Windows Phone.

I've spent many months in solving the battery over weight problem and ended with an epic fail due to budget problem. So, finally I decided to give power from external Lead-Acid Battery.

Lets see how I figured out the perfect design of the body for the robot.

Step 1: Trials and errors on designing the model

Picture of Trials and errors on designing the modelWP_20150125_14_08_44_Pro.jpgWP_20150610_008.jpgWP_20150131_23_27_15_Pro.jpgWP_20150202_19_14_19_Pro.jpgWP_20150307_23_44_02_Pro.jpgWP_20150210_12_28_39_Pro.jpgWP_20150131_18_17_49_Pro.jpgWP_20150310_12_52_01_Pro.jpgWP_20150610_005.jpg

 

WP_20160114_009.jpgWP_20160114_010.jpg

At first I have no idea about the power of Servo motors and Electronics-Electricals that deals with batteries and circuits. I first planned for a life size robot for about 5 to 6 feet. After trying almost 6 or 7 times I realized the maximum torque of a servo and reduced upto 2 to 3 feet of total height of the robot.

I then tried upto hip of the robot to check the walking algorithm.

Step 2: Designing the model and Algorithm

Picture of Designing the model and AlgorithmWP_20150912_004.jpgWP_20150201_12_42_48_Pro.jpgWP_20150224_20_53_44_Pro.jpg

Before moving on we need to decide how many motors needed, where we need to fix. Then design the body parts according to the images given.

Step 3: Components required

Picture of Components requiredWP_20160114_007.jpg

1) Plastic sheet

2) Super Glue

3) 15 - High torque Servo motors ( I used TowerPro MG995 )

4) Arduino Atmega 2560 or other Arduino boards

5) 6V Battery (minimum 3 nos. Atmost 5 motors for each battery)

6) HC-05 Bluetooth module for communication

7) Other basic stuffs which every hobbyist have!

Step 4: Building the body

Picture of Building the bodyWP_20150912_005.jpgWP_20150912_007.jpgWP_20150913_002.jpgWP_20150924_005.jpgWP_20150924_003.jpgWP_20150917_001.jpg

After struggling with wooden pieces I found this plastic sheet pretty easy to cut and paste to make various shapes.

I cut holes to fit servo motors directly into the sheet by applying super glue (I used 743).

Step 5: Wiring

Picture of WiringWP_20150913_005.jpgWP_20151123_14_03_37_Pro.jpg

I'm not studying an electronics or electrical major. And I have not enough patience to design a PCB or designing proper wiring. That's why this messy wiring.

Step 6: Increasing power

Picture of Increasing power

You can see that I used only 11 servo motors at first. due to over weight problem, It fell down and broken during testing. So, I increased 4 more servos at each joins of legs.

Step 7: Coding

I've attached Arduino code.

for(i=0;i<180;i++)

{

servo.write(i);

}

This is the basic code for rotate any servo motor attached to any Arduino board.

But calibrating the rotating degrees and deciding which motors should run during the movement of each leg is the most tricky part of coding. It can be done by another Sketch called (Servo_Test). By testing the degree of rotation of each motors through serial communication through Arduino board, we can calibrate every motors.

Finally, the robot begins to walk after entering the value "0" in serial monitor window.

http://www.instructables.com/files/orig/FQH/EI1F/IJD55XMI/FQHEI1FIJD55XMI.ino

http://www.instructables.com/files/orig/FAV/ZH0V/IJD55ZLR/FAVZH0VIJD55ZLR.ino

Leave a Reply