Humanoid Robot
This project took a long time. We tried to build a remotely controlled human robot capable of moving around and (mostly) succeeded! I think the result was pretty good.
We got the methods for making the mold of the human body from this YouTube video: https://www.youtube.com/watch?v=1PnXCqOnYVU&t=1s&ab_channel=YouHereProductions
Supplies
· Plastic food wrap
· Transparent packaging tape (1.9 in wide preferred, 2-3 mil thickness)
· A Long rectangular foams box for body and to enclose wires, chips, etc. We do not have 3D printer, so we use foams instead. It will be great if we can have a better structure for the body.
· Foam blocks for various connection as needed
· A plastic bottle with the diameter around that of the neck. We used Tropicana Orange bottle.
· Plastic sheets (we cut a piece of the Costco’s Croissant’s box)
· Velcro dots to secure battery packs, chips, and bread board.
· Needle and thread
· Zip ties (6”, 8”)
· 3M removable wall mounting stickers
· EPS8266 wireless chip for WIFI (remote control)
· MG996R Metal Gear Servo Motors x 5
· Thin wood strip/plank 1” wide and about 12” long (I used wood rulers)
· Breadboard
· Wires
· Install Blynk app on phone for wireless control
Wrap Leg in Plastic Wrap
Wrap plastic food wrap around foreleg. Do not wrap too tight as we need to cut open later, and also because you don't want to start losing circulation.
Wrap Leg in Duct Tape
Wrap packaging tape over the plastic wrap. Instead of wrapping around continuously, cutting tapes into strips of length around 8”, then wrap piece by piece. This gives a smoother feeling.
Wrap at least 3 layers.
Cut Open & Remove
Cut open the leg mold and take it off the leg.
Tape Back Together
Tape together the cut, inside and outside.
Repeat
Repeat the process for upper leg, arm & hand.
Tip: Use narrow strips for details while doing the fingers!
Be Careful With the Head!
Repeat for the head but make sure to leave the nostrils out!
Attach Head Servo
Drill a hole on the top of the foam as shown and thread the wire through the hole to the center of the body.
Attach Bottle to Servo
Cut out the bottom of the bottle. Drill a hole in the center and align the center of servo arm with the hole. Use the needle and thread to secure the servo arm to the bottom of the bottle as shown.
Secure Servo
Secure the servo to the foam with zip ties.
Attach Head to Bottle
Tape the side of the bottle around inside of the neck model.
Cut Out Block of Foam (for the Shoulder)
Cut a block of foam to fit in the shoulder hole on the human bot body.
Drill Hole for Servo + Wire
Cut out a rectangular insert on the foam to fit the server in with the turning arm facing outside. Drill a hole through the foam and thread the wires from the servo through as shown.
Secure Shoulder Foam
Secure the shoulder foam to the body foam as shown with zip ties. Repeat steps for the other shoulder.
Cut a Plastic Strip
Cut a strip piece of plastic 1”x 3”, or the size of your servo.
Cut Hole for Servo Arm
Drill and cut a circle in the middle so the servo arm base & screw can stick through.
Secure Arm to Plastic
Use thread to secure the servo arm to the plastic strip.
Secure Servo Arm to Motor
Secure the motor arm to the motor with screw.
Repeat
Cut a plastic piece size of the side of servo motor. Drill and cut a circle in the middle so the motor metal pole can stick through. Thread to secure the motor arm to the plastic strip. Secure the motor arm to the motor.
Apply Adhesives
Apply 3M wall mounting stickers to the plastic strip.
Place 2nd Servo
Put the 2nd servo on to the plastic strip, then further secure with zip ties.
Secure Arms
Tape the wood strip/ruler along the plastic strip. Then tape the wood strip/ruler to the arm, and the ruler to the plastic strip on the corresponding shoulder.
Configure Blynk
Go to https://blynk.cloud/ and make an account. You will also need to download the Blynk app on your phone (get the new version, I don't think the old one is supported)
Click on the Templates tab (the 3x3 grid in the left panel). Click the "New Template" button in the upper right.
Navigate to Datastreams. Click "Edit" (top right) and create a new Virtual Pin datastream. Set the minimum to 0 and the maximum to 180. You can adjust as needed, for example, I limited shoulder left-right motion to 135 degrees.
Create one datastream for each servo, then click Save and Apply.
Make sure the datastreams for the Neck, Left shoulder front/back, left shoulder left/right, right shoulder front/back, and right shoulder left/right go from pin V0 to pin V4, or else the code won't work. Ignore the leg/knee parts - we didn't end up with enough power to support more servos.
Next, open the Blynk app on your phone. Create 5 new sliders. Name each of them after a servo location, and set the datastream portion to the appropriate datastream. Tap the slider to open the menu, and hold to resize/move. I also experimented with joysticks, which worked okay.
Coding, Wiring & Secure Electronics
Coding: Upload the code below to the EPS8266 wireless chip for WIFI chip. The configured Blynk template allows user control pass on to the EPS8266 chip, which then relay the instruction of movement to individual servo motors.
Wiring: The circuit may look complicated, but it is actually pretty simple. Servos have 3 wires attached to them: positive, negative, and data. The circuit consists of a power supply wired to the servos and the chip (The Wemos D1 Mini takes in power through the 5V pin). Then, wire the D1, D2, D3, D4, and D5 motors to the neck, left shoulder front-back motor, left shoulder left-right motor, right shoulder front-back motor, and right shoulder left-right motor, respectively.
Use Velcro dots to secure battery packs, chips, and breadboard onto the foam body.
We experimented with a lot of different batteries. We tried packs of 4 AAA batteries (6V) first, which ended up not having enough battery charge. We then tried a 6V lantern battery, which was much better. The best solution would probably have been a regulated 6v power supply with a barrel jack.
Downloads
Secure Legs/Waist
Tape the other parts of human parts together to finish up.
Calibrate
Test your robot to see if it works. If the angles are off (like the head turning until it's facing backwards, or the arm is able to rotate way too far in one direction), unscrew the servo arm and re-screw in the right position. However, to edit the arm's up-down range of motion, you need to unstick and re-stick the adhesives & zip ties connecting the two arm servos instead.