Introduction: WireBeings Beta: a 3D Printed and Expandable Robot for Arduino With Android Control

http://wirebeings.com/

Check out video here:

This is a nice project that you can continue to work on and modify as you learn more Arduino projects. This Instructable goes through the complete build for the bluetooth enabled robot in the first half of the video. As long as you have a 3D printer this project is really easy to do and the electronic parts cost only around $30-$35. It takes in total about 35 hours to 3D print, but can be assembled and programmed in around 30 minutes. Requires only 2 screwdrivers to build and does not require any soldering.

All the individual .stl files are available on Thingiverse, as well as a complete 123d Design file so the robot can be modified.

http://www.thingiverse.com/thing:1252523

There are 3 different scripts demonstrated in the video for the basic build that will be up on

http://wirebeings.com/code.html

I wanted to design this thing to be inexpensive and use common parts, so this robot uses 9V batteries currently. They run out pretty quickly with a lot of use, so I will probably end up designing a new piece that allows for the use of rechargeable lithium ion batteries and Adafruit power booster.

Also, if anyone knows of a good 3D printing service, so people without printers can make this, it would be much appreciated, I got an initial estimate of over $1000 so I was discouraged from wasting any more time uploading the files elsewhere.

Creative Commons License: Attribution Non-Commercial- Share Alike

Step 1: Gather 3d Printed Parts, Tools, and Electronic Components.

First gather all the 3d printed parts that can be downloaded from Thingiverse.

Tools: You will need a regular screwdriver, a skinny screwdriver, superglue, and a little sandpaper.

Parts:

$9 ———————2 Wheels with DC Motors

$3 ——————— 4 pieces of thin insulated wire (about 4 inches each) if the DC motors do not already have them.

$3————-l298 Motor Driver

$4———————-Arduino Uno R3 board

$4————————Jumper Wires (male to male and female to male)

$1———————9v Battery Holder

$2———————-HC-Sr04 sensor

$1————————Mini breadboard

$2————————2 RGB LEDS

$1————————3 220 ohm resistors

$3————————HC-06 Bluetooth module

$7————————6-32 X 1/2" SCREWS (Usually come in a pack of 100, only about 40 are needed)

? ———————— 9 volt battery

Parts list with links can be found here:

http://WireBeings.com/code.html

Step 2: Lightly Sand Wheels and Put Together Legs

The wheels print in two pieces so use super glue and put them together. Lightly sand out the imperfections. Put the 4 balls inside the castors and push them all the way until they snap into place. Attach the 4 castors to the legs like in the last picture.

Step 3: Get the Legs Ready and Add the Geared DC Motors.

Get the two posts in the first picture and connect each one to each leg. Get the piece that will hold the battery in the second picture and screw that into one leg. Find the small L shaped piece and attach it to a motor exactly like the 4th picture shown above. Do the same thing with the other motor, and attach both to the legs. Meet the two legs together, being sure the motors are facing the same direction and you should have something exactly like the last picture.

Step 4: Add Battery With Box and Complete Base.

Find the two curved side pieces in the first picture and connect them to the base according to the second picture. Place the battery box with battery onto the base according to the third picture and find the battery back piece and use it to enclose the battery like the last picture. The base is not complete.

Step 5: Add the Middle Pieces to the Base and Add the Range Sensor and Motor Driver.

- First use a skinny screwdriver and start the screw in the (robot's) left side middle piece according to the first picture. Its a tight fit and the screw will barely fit under that tab, I have broken the tab off many times, but luckily you have super glue and its an easy fix.

-Pull both battery wires and left side motor wires through the hole and tighten the screw you started. Tighten the second screw and secure the left side piece. Add the faux servo piece to this side and tighten both screws that hold it in, as in the third picture.

-Attach all 4 male to female wires to the HC-SR04 range sensor, it doesn't really matter what colors you use as long as they are different colors and you write down what color goes to what pin on the sensor.

-Put the range sensor into the whole on the side piece like in the 5th picture and put the l298 motor driver on top. You must remove the two jumpers on the motor driver shown in the 6th picture.

-Attach the wires from the battery and the left side motor to the l298 motor driver according to the diagram. Add some male to female (or male to male) wires coming from the positive and negative terminals of the motor driver.

-You will have now two connections in the negative terminal, one going in and one coming out. Just to be clear it will look like the 7th picture.

-Grab the right side middle piece and add the other faux servo piece to that side with two screws.

-Now pull the right side motor wires through the right side piece and attach those wires to the motor driver. Try to attach them in order, i.e. left side wire to left most hookup on the driver (same thing on the other side), that way you don't have to change anything in the code later.

-Use two screws to secure the right side piece, and use two screws to secure the motor driver, one per side piece is fine but there are holes to add all 4 if you want.

-Finally, add 6 different color male to female jumper wires to the 6 pins on the motor driver.

Step 6: Almost There.

-Use a screwdriver and add slack to the positive and negative battery wires as shown in the first picture (makes it easier for the battery to slide out the side when you need to change it).

- Attach the claws to the arms and attach those to the shoulder pieces as shown in the first picture.

-Attach the arms to the faux servo pieces, as in the second picture.

-Find the neck piece in the third picture and attach the C shaped piece (file name neckNoServo.stl) with two screws from the bottom. Pull all the wires through that assembly.

-Attach the neck assembly with 4 screws to the base that you have so far.

-Add the head bottom piece and pull the wires through that try to use the orientation of the wires in the 4th and 5th picture. Range sensor wires through the left most hole (robot's right), motor driver wires through the center, and power and ground through the right most hole.

-Attach 4 male to female connectors to you bluetooth module and tape them together if possible. It is going to go underneath your Arduino board like in the last picture. This is down so it can be unplugged easily when uploading new sketches.

-Wire everything according to the diagram (second to last picture).

Step 7: Done.

-Attach the two halves of the face with 4 screws.

-Find the ears/antennae and attach them to filename earsNoServo.stl. They should now look like the T shaped pieces in the first picture. Attach them to the head top piece. Each one has two screws.

-Put the face piece on and pop the LEDs into the eyes, bending the pins at a 90 degree angle so they can't fall off like in the second picture.

-Done...kinda.

-Download the scripts here under the code section:

http://wirebeings.com/code.html

-Download the Android apps in the last two pictures.

-Pair your bluetooth module to your computer or phone with the password "1234" it will be called HC-06.

-Everything else is pretty straight forward to use, if you watched the video, the apps are pretty intuitive to use.

-To control the robot via bluetooth from you computer connect the serial monitor to bluetooth port HC-06 and use these commands with CAPITAL LETTERS (put caps lock on) and hit enter after each command:

S = stop, F = forward, B = backward, L = left, and R = right.

-IMPORTANT*** anytime you need to upload a new sketch the bluetooth module must be unplugged or else the code will not upload.

I'm sure I forgot stuff so whatever questions anyone has I will try to answer to the best of my ability in the comments. Thanks for looking.

Comments

author
HéctorR54 made it! (author)2017-07-31

I made it! Now I have to reprint some parts and add new features.

B8TO.jpg
author
AlfonsoG35 (author)2017-07-21

Good job, could you put manual how to mount servos in neck and antennas? Thank you

author
SissyM6 made it! (author)2016-12-12

Thank you Matthew !! It's amazing !!

IMG_20161212_012447_647.jpg
author
TimV94 (author)SissyM62017-04-23

hello,

do you have a builders manual? can you sent it

author
varunkoppuru (author)2016-01-26

will you please send us the procedure or the pdf file for the expandable features as you shown in the video

author
matthewh8 (author)varunkoppuru2016-01-26

I wasn't going to do a complete list of everything because there are just too many connections and different ways of doing it, so I was going to just make individual tutorials on how to do each feature. I just made one about giving your robot a voice:

I will probably do the next one on how to use a voice recognition module. So, you can get your Arduino to respond to voice commands.

author
TimV94 (author)matthewh82017-04-23

hello matthewh,

i wanne build a robot like this, buth can you put a builders instuction below

author
NematH (author)2017-01-17

Any chance of doing it without 3D printer? Don't have one ((

author
DonaldR2 (author)2016-12-02

For those of you having difficulties with the Thingiverse files try this - Open the .stl file first in 123Design (download and install 123Design and create an account first, obviously, if needed). The build should now look like the picture in Thingiverse. Save this file. It doesn't seem to matter if you rename it or not. Next, in 123Design, Export the piece as an .stl and try to open this newly saved file in your 3D Printer managing software. This worked for me with a MakerBot Replicator 2.

author
Jason Tan (author)2016-12-01

PLEASE reply to me HOW did you manage to print the right leg & left leg with a 3d printer?

author
zhuchuanhai (author)2016-06-12

Line section has no detailed installation tutorial?I do not understand

author
LewisP10 (author)2016-04-24

For those who made this, how did you get all the correct files for printing? There are a lot of missing/incorrect files if you try to get them from http://www.thingiverse.com/thing:1252523

I've had my printer running for a day, and just realized I don't have all the pieces :/

Thanks, I hope!

author
normand861 (author)LewisP102016-04-24

Hi, I use file from http://www.thingiverse.com/thing:1252523 and work good for me. The same you said .

author
normand861 made it! (author)2016-04-16

Yes done !!!!

2016-04-16 14.16.02.jpg
author
normand861 (author)2016-04-06

Can anyone help me with the wiring? Can not get the wheel to work.Probably make a bad wiring somewhere.

Post more photo or better wiring schema .Thank .

author
normand861 (author)2016-04-02

Hi Matthew . I very Glad that you share the build of your Robot with all the community .It so nice .Can you tell more about adding Servo to let arm and ear to move. What are the kind of servo do you use ?. It a lot of time to print the part but it fun. I am at the neck part for now, bottom is done..Thanks !!!!

author
normand861 (author)normand8612016-04-02

Forget the servo Question you already tell us in the bottom of the tread that is 9 Gram mini servo.

author
varunkoppuru made it! (author)2016-03-11

Hii matthew finally did it. But battery not coming for long time can you tell how much mAh battery using in the robot.

12517082_965144223532822_2054585110_o.jpg
author
matthewh8 (author)varunkoppuru2016-03-14

awesome job! I havn't got to figure that out yet, but as soon as I get some time I will keep you posted.

author
varunkoppuru (author)2016-02-19

Hiii matthew is there any possibility of combining the obstacle avoidance code and bluetooth control code.

author
Slk_Stephane (author)2016-02-07

Is it only 9V battery or did you include more as mine powers on but doesnt move and the LED wont turn on

author
matthewh8 (author)Slk_Stephane2016-02-16

Did you get it working yet? If so I wanna see it!

author
Slk_Stephane (author)matthewh82016-02-16

No luck, its still not working

author
matthewh8 (author)Slk_Stephane2016-02-08

Yeah it is only the 9V battery, some of your connections might be wrong. Also, make sure it is a 9V battery. Sorry about the late response it's probably already fixed...

author
matthewh8 (author)matthewh82016-02-08

*I meant to say a NEW 9V battery, whenever the voltage drops to like 8 volts as the battery loses charge wierd things start happening.

author
Slk_Stephane (author)matthewh82016-02-08

I bought a rechargeable 9V. Is that okay? Also like to change the battery I have to remove the middle piece?

author
varunkoppuru (author)2016-01-26

Hi matthew your bot is nice and will you please tell us how to check mails and weather details with the help of bot

author
PauloL15 (author)2016-01-18

Hi Matthew. Very nice bot! My son will love it.

What kind of servos do you use in it? Could
you please share your code for servo control? Thanks. Paulo

author
matthewh8 (author)PauloL152016-01-19

Yeah any 9g micro servo should fit and I could send you the code via google drive if you want. It might differ though depending on how you decide to control them, I did not use a servo shield or controller in mine.

author
mmg7 (author)2016-01-18

as you did for recognized your voice when you say bad robot? and what type of servo used, I congratulate a great project!

author
matthewh8 (author)mmg72016-01-19

I used the Geeetech voice recognition module and this chassis will fit any common 9g mini micro servos. Thanks!

author
kd8bxp (author)2016-01-13

Curious about the speech, what did you use to generate it?

author
matthewh8 (author)kd8bxp2016-01-13

I used an MP3 shield and loaded pre recorded speech snippets to an sd card and then just accessed each one based on results from the api's

author
kd8bxp (author)matthewh82016-01-13

Ok, thanks - yes I think that is the go to for low cost speech, was hoping it was some other low cost thing. I have a EMIC 2 in my Hero Jr, and just started messing with MP3 players recently. I should have skipped over the EMIC 2 and went with MP3 years ago I think :-) Thanks again, I have this project in my list of things to build

author
matthewh8 (author)kd8bxp2016-01-13

Yeah actually finding an inexpensive way to generate voice was the hardest part of this project. I used the mp3 elechouse shield I think and it took me a while to figure out how to play a specific track. If you decide to go this route I can send you the code I used.

author
kd8bxp (author)matthewh82016-01-13

I used the Seeed Studio MP3 v1 shield - and a Catalex MP3 device, between the two I prefer the slightly older seeed studio shield, it lets you play by file name. But only supports the old 8x3 file names (no long names) Still it's much better than trying to figure out when/where the files are in the directory tree, which is how the Catalex player works. It looks like the player you have may work the same, so I'd love to know what you did. I'll PM you with and we can talk about it off the forum.

author
Tsartsanis (author)2016-01-10

Great project

author
FadiJ (author)2016-01-08

Can you provide the chassis parts? What site I can order them?

author
matthewh8 (author)FadiJ2016-01-08

As of right now you can't order the chassis parts because they cost about $1000 from a 3d printing service, so its cheaper to just buy a 3d printer for like $300 and print them yourself.

author
Slk_Stephane (author)matthewh82016-01-09

What is the print size of your 3D printer in mm?

author
matthewh8 (author)Slk_Stephane2016-01-09

I actually don't know, I'm not going to be home until Monday but I will find out what the biggest piece is in mm so you can figure out what 3D printers will work.

author
Slk_Stephane (author)matthewh82016-01-10

Also can you tell me what microns does your 3d printer has.

author
deswiger (author)matthewh82016-01-10

Would I be correct in saying that, the parts and/or robot dimensions/looks themselves are not important? As long as the arduino components fit, most any robot should work. Following the basic needs that the code requires to run "whatever" and as long as the code can access said "whatever" it should be all good. "YES" or "YES" (yea, I know what I wrote).

author
Slk_Stephane (author)2016-01-09

Can I buy one off you? Like the whole parts and the chassis plus shipping?

author
davidex720 (author)2016-01-08

What is the android talk with your robot for?

About This Instructable

15,480views

201favorites

License:

Bio: My name is Matthew and I attend the University of Pittsburgh. Currently I am a senior, going for a bachelors in Information Science with a ... More »
More by matthewh8:Apple ArKit Augmented Reality AppAugmented Reality Fidget SpinnerFacial Recognition With Tracking.js
Add instructable to: