RoboBrrd using arduino
RoboBrrd is an robot / animatronic character whose purpose morphs to mirror that of the virtual world. It is designed to be used as a tangible real world interface to virtual world learning applications. As a standalone robot, RoboBrrd is an entertaining platform that can be used to learn about robotics, Arduino, circuits, and programming.
Here is a teaser video for this RoboBrrd:
Here are other videos about RoboBrrd:
http://www.youtube.com/user/RobotGrrl91#grid/user/CAEAA1300E7BF036 (Big green RoboBrrd)
http://www.youtube.com/user/RobotGrrl91#grid/user/55260A24369DD65D (Learning Pet)
This Instructable will guide you through creating a RoboBrrd- all the way from the circuits to programming to the felt decorations. We will also include reasoning behind our design choices to further enlighten the Instructable.
“We are so excited about this [RoboBrrd] project. What a great way to introduce microcontrollers to our young roboticist. We so appreciate all the work you are doing to make Robotbrrd a great activity for our students. […] Our goal is to grab their imaginations and run with them. Hopefully after building this project, they will not only want to learn more about programming and buidling robots but create inventions of their own. Thank you so much for helping Eaglesnest Robotics accomplish this task. We hope to create future engineers and Scientist, and also students who are like yourself.”
With that said, read on to the next step for the inspiration, motivation, and future of RoboBrrd. Or you can jump right into the build on Step 2! Happy RoboBrrd’ing!
Step 1: Inspiration, History, Motivation
The history of RoboBrrd is quite extensive, but really fun. Back in March 2011, we were contacted by Adafruit Industries asking to make some robot videos for their Ask an Engineer show (before Google+ existed). They didn’t have any requirements for the robot, which allowed me to brainstorm about building a robot that can be made out of common materials, such as pencils and coffee stir sticks.
We chose to look at birds as inspiration for this robot.The interesting thing with birds is that they can be anthropomorphized extremely well, examples being Woody the Woodpecker and Donald Duck. I decided to put my own spin on a bird robot, and create one that is an iconic cube shape. The beak mechanism would be similar to a scotch-yoke mechanism to push both halves of the beak open, as opposed to lifting one beak half.
RoboBrrd started out as a 30cm version, with notable pencil eraser tops as eyelashes. This robot was fun to experiment with various behaviours and applications. We added in my robot mesh networking to have it communicate with my other robot, MANOI. Also, we created a Processing sketch that used the RoboBrrd as a tool to make “cosmic soap” artwork from a fluid dynamics meets physics simulation. It even appeared in an Adafruit Show & Tell through IRC, so viewers could message it and it would dance around. To top it all off, it was mentioned in MAKE Magazine Volume 27!
Fast forward to September 2011, the Open Hardware Summit announced they were having a scholarship contest. They only announced this a little less than a week before the conference, and I wanted to create a RoboBrrd that I could bring and show around to everyone. The 10cm version of RoboBrrd was created from start to finish over 4.5 days (don’t ask how much time I slept during those days), and was able to work with the Android Accessory Development Kit or Processing to demonstrate the virtual to real world connection, with a focus on learning. The prize was $2000, which would have been able to get us started on being able to create more robust versions of RoboBrrd that we could give to students. Unfortunately, we didn’t win.
Thankfully, the story doesn’t stop here. The RoboBrrds were featured on MAKE Blog after the Maker Faire, and Adafruit Industries has kindly given me some more servos to create another RoboBrrd, with perfect timing for this amazing laser cutter contest opportunity.
People think I’m crazy with all of my RoboBrrds and staying awake to crazy hours in the morning working on them. The main motivation behind these robots is the challenge of creating a tangible embodied character that can interact with the virtual world. I was heavily inspired by a project at the MIT Media Lab with a similar physical-virtual world premise, but wanted to make something that can be taken everywhere and thrown into a backpack at the end of a school day. Something where the learning can be brought with you everywhere, and interface with anything. RoboBrrd would mainly serve as a physical tie-in to the virtual world learning, aimed at K-6 students.
Our ultimate goal is to be able to create RoboBrrds and work together with schools to give RoboBrrds to students as DIY kits that they put together, and then use as a tool. This is extremely valuable, as the students will have a special connection with their RoboBrrd since /they/ put it together and are able to fix it. They are learning about various subjects while using their creation. It is a magical experience.
We have had a lot of fun with the RoboBrrd platform, and it is only just beginning. We are extremely excited about this, as we already have had some RoboBrrd fan artwork sent to us. We refined RoboBrrd so that there is a clear Instructable to build one, so everyone can get started.
With that said, let’s go and build a RoboBrrd!
Step 2: Setup
Before we embark on this journey of building a RoboBrrd, there are some parts that you will need and some tools!
– 2 Large Servos
– 2 Micro Servos
– 2 Light Dependant Resistors aka Photocells
– 2 RGB LEDs
– 1 Arduino
– 1 Proto Screwshield
– 1 Spool of wire
– 1 USB B Cable for Arduino (you probably already have one)
– 1 Speaker
– 2x 1k Ohm resistors
– 6x 100 Ohm resistors
– 4x 3 Pin double sided male headers – for connecting the servo plugs
Voltage Regulator Circuit
– 1x LM317
– 1x 5k Trimpot
– 2x 10uF Electrolytic capacitors
– 1x 280 Ohm Resistor
– 7x 100 Ohm Resistors
– 2x 1N4001 Diodes
– 1x 2.1cm DC barel jack
– 2x 2-pin Male headers
– 1x 2-Terminal screw terminal
– 3x 5-pin Female headers
DC Motor Circuit
– 3x 0.1uF Ceramic capacitors
– 1x TIP 120
– 1x 1N4001 Diode
– 1x 100uF Electrolytic capacitor
– 1x 2-Terminal screw terminal
– Popsicle sticks (~$3 at Walmart)
– Coffee stir sticks ($1 at Dollarama)
– Craft sticks (~$4 at Walmart)
– Paints, felt, foam (~$10 at Walmart)
– Pipecleaners (~$3 at Walmart)
– Googely eyes (~$2 at Walmart)
– Dual Lock ($5 at Staples)
– Sticky Tack ($5 at Staples)
– Strong sculpting wire ($2 at local hobby store?)
– Awl (sharp poking tool)
– Xacto knife
– Wire strippers
– Wire cutters
– Soldering iron
– Solder & wire
– Desoldering pump
– Hot glue gun
– Glue sticks
Building a RoboBrrd takes some time if you are working by yourself. If you have someone helping you, it can be done in about 8 hours. Below is an approximate amount of time that it took me to create this RoboBrrd for each of the steps.
– 2.50 hr : Faces Construction
– 1.50 hr : Beak & Wings Construction
– 1.00 hr : Base Construction
– 2.00 hr : Beak Mechanism
– 0.50 hr : Wings & Servos
– 0.50 hr : Rotational Servo
– 1.50 hr : Hula Hoop
– 1.25 hr : LM317
– 0.50 hr : TIP 120 & DC Motor
– 2.00 hr : Proto-Screw Shield
– 0.75 hr : Wiring
– 0.50 hr : Calibration & Testing
– 1.50 hr : Felting
– 0.75 hr : Foaming
– 0.75 hr : Behaviours
– 1.50 hr : Dances
– 0.50 hr : Final Touches
– 1.00 hr : Above & Beyond
Total time: 20.5 hours (it is best to split this across multiple days – perhaps 2 weekends)
Note: All of the dimensions in this Instructable are in centimeters, with the exception of the CAD illustrations which are in millimeters.
Step 3: Faces Construction
There are three different faces that we need to create to form the cube of RoboBrrd’s skeleton. These are the bottom face, the side faces, and the front & back face.
The bottom face is designed with a large hole in the back to route the wires from the LEDs & LDRs and servos into the base where the controller board will be. There is a 3 popsicle stick wide platform in the middle in order for the dual-lock to attach to the rotational servo in the base.
For the side faces, you will need to create two for the left and right side of the bottom face. The only difference between the two sides will be the positioning of the ledge. The ledge is always closest to the back of the RoboBrrd. The ledge in the side faces is used to neatly route the LED & LDR wires, allowing them to not interfere with the movement of the wings and beak mechanism.
Front & Back Face
The front and back face are constructed out of coffee stir sticks as their main structural purpose is to help the side faces remain perpendicular to the bottom face.
The front face is specifically used to mount the beak halves. This will be in more detail in a later step.
When all of the faces are constructed, they need to be attached. It is important to ensure that the faces are perpendicular to each other. Placing the hot glue on the edges of the faces that are being mounted is usually the best tactic for this.
Step 4: Beak & Wings Construction
The beak is designed to be as light as possible, but also sturdy. We need to create two beak halves. They are both identical in construction.
There are two coffee stir sticks as the bridge of the nose to allow for an additional coffee stir stick to be inserted. This will be done in a later step.
The popsicle stick for the beak is used for attaching to the axels from the servo. This attachment is done using a loop of wire, which allows for some flexibility.
We will eventually be mounting the beak halves on the front face by threading a coffee stir stick through the side of the nose.
We need to create two wings for RoboBrrd, one for each side. The only aspect of the construction that will have to be mirrored is the diagonal piece attaching the bottom of the wing to the vertical coffee stir stick.
For the wings, we want to keep them as light as possible, but still give them a good structure for when we are placing felt over them. This is why there is a diagonal piece only on the front side of the wing. There are two coffee stir sticks that attach the wing onto the servo arm on each side. This allows for a better attachment to the servo.
On the other side of the servo arm, we have a counter balance. This uses two pennies in order to move the balance point of the entire wing construction closer to the middle. Theoretically, this will alleviate some stress on the servos.
Step 5: Base Construction
The base is where the rotational servo, battery, and controller board will be housed. It is also good to keep in mind that it will also be where all of the wires will be situated. The controller board will be placed to the right of the servo, and the battery and speaker to the left of the servo.
The rotational servo will be placed directly in the middle of the base, and it is what will be bearing all of the weight of the faces construction above. We will use the circular servo horn on the rotational servo as it has the largest surface area. On top of here, we will have a small popsicle stick construction which will have a piece of dual lock on it. On the bottom face of RoboBrrd we will attach the other piece of dual lock. This will allow us to be able to take off the main RoboBrrd structure without having to dismantle everything.
If you need some more room for the controller board, move the rotational servo to the left a few millimetres. For this RoboBrrd, we had to move the rotational servo 3mm to the left to allow for enough room for the controller board.
The easiest way to construct the base is to make the bottom and top ‘flat’ pieces first. Then, attach the perpendicular stands to the bottom. To finish, glue the top piece onto the stands.
Step 6: Beak Mechanism
The beak mechanism is the “creme de la creme” of RoboBrrd. To illustrate its elegance in words, the beak mechanism allows for the two beak halves to open at once, rather than lifting one half of the beak.
To begin with the beak mechanism, we first have to mount the servo for the beak. This should be placed in the middle of the back left platform. We will then attach a 4-point servo arm to the servo and glue on the popsicle stick arm. The popsicle stick arm should have a hole near the end, and it should also be securely glued onto the servo’s servo arm.
We will thread the beak halves with a 10cm piece of coffee stir stick. Now, in order to make the rotation of the beaks on these coffee stir sticks about a more central fulcrum, we need to cut some small ‘blocker’ pieces that will stop the beak from falling. There should be a couple of millimetres of clearance between the blocker and coffee stir stick.
Next, we need to mount this coffee stir stick to the face. Sometimes adjustments have to be made, so it is better to first measure everything and temporarily mount them with sticky tack.
When both halves are mounted onto their coffee stir sticks, you should ensure that there is enough room to open and close the beak. The gap between the two beak halves should be a little less than 1cm. When testing this, it is important to be rotating the beaks about their fulcrum, which will be closest to the back of the beak where the vertical popsicle stick is. The blocker that was just mounted should be assisting you with this.
Now we have to measure the length of the axels that connect the beak to the popsicle servo arm. To do this, it is critical that the popsicle servo arm’s hole is located directly where the middle of the two beaks will be.
To measure the length of the axels, take a blank popsicle stick and hold it on the beak where the hole is, and move the other end to where the popsicle servo arm is. Draw a line for where the axel should be cut. If this is done correctly, they should be the same (or very close, within a few mm) length.
Poke holes in each end of the axel and attach them with some solid core wire to the beak and popsicle servo arm.
Test the mechanism by manually moving the servo. You should check and see if the beak is able to smoothly open and close. If it does not, see where the modifications need to be made. Usually it is something blocking something else from moving.
When the testing is complete, you can remove the sticky tack from the coffee stir sticks and mount them using hot glue.
Next, we need to prevent the beak from moving horizontally. We will use small coffee stir sticks mounted vertically to assist with this task. They should be placed about 1cm apart from the center to allow for some wiggle room.
As always, test the mechanism to ensure that it is working properly. To make the wires not come unraveled, loop them tightly to the popsicle sticks and use hot glue to keep the windings secure.
In programming the beak, it will be important to properly set the boundaries for this servo for the open and closed positions. Doing so will ensure that we are not going to cause any accidental damage on the front face.
For more detail: RoboBrrd