Author Archive

Roladex Clock

Posted in 2. Buttonless Clock on December 17, 2009 by zingzhang

So… I know this is months late… but I was looking through my posts to make sure I hit each assignment, turns out, I never did this one. Mark, if you accept this 3+ months late… you’re awesome. Either way, thought it wouldn’t hurt to post it:

My idea for this is pretty simple. Remember the roladex?

well… imagine two roladex type objects.  One would hold the numbers 1-12 or 1-24 for military time, and the other would hold numbers 00-59 for the minutes.  The two would be hung side by side and to change the time, all you would have to do is rotate the corresponding knob through to the appropriate spot.

This goes without saying, but during normal operation, the cards would flip through automatically.

HexaCrawler – Final Report

Posted in 11. Project Final Reports on December 15, 2009 by zingzhang


The HexaCrawler Hexabot is a six legged robot that is controlled via a Wii NunChuck.  The purpose of my project was to experiment and have fun with robotics.  As someone who has never done anything related to robotics, circuitry or machines (past what this class has taught me), I really wanted to find a fun way to learn first hand how these types of things work.  With that in mind, the purpose of this project is so that others that are in a similar situation as myself can go through the same educational experience and come out with a fun toy in the end.  HexaCrawler is easily reprogrammable and comes with basic, easy to understand functions so that users may customize and add to the robot.

Final Report: HexaCrawler – Final Report


Arduino Sketch:
Wii Nunchuck Documentation

Laser Cut Template:
Hexabot Template


10. The Hardest Part – Building the Spider

Posted in 10. Build the Hardest Part on December 11, 2009 by zingzhang

Hey everyone, so my project was the robotic spider controlled via the wiichuck and (for me) the hardest part about this assignment was how to actually build the spider.  I did a lot of research as to what was the easiest and strongest build for it.  Initially, I wanted to work off this design.  However, when I prototyped a leg in this design with balsa wood, I found it difficult to attach a metal wire to the servo arm and get enough control and accuracy to operate the leg.

I did some more research and found the hexapod robot, it also appeared in many youtube videos.  I ended up designing my robot largely off of this design… the only major change I incorporated was downsizing the legs from 3 servos to 2 servos on each (as the arduino only has 12 digital outputs). Although the hexapod robot is documented, there is no exact specification of what dimensions each part is since they were selling a kit.  I didn’t want to buy the kit, partially because I couldn’t use 18 servos, but mostly because I thought it’d be fun to make it myself.

Because of this I did a lot of measurements and planning, and made a prototype out of wood.  I drew up a design in Illustrator and had it laser cut on acrylic plastic.  To my surprise, all of my laser cut pieces matched perfectly to what I wanted.  If I had to do it again, I would make some slight changes in my shapes, but nothing too major.

For specific step by step instructions as to how to make the robot, look for my instructable that I will (hopefully) post shortly.  Attached are some images of my robot and the process in making it.

Project Proposal – Remote Controlled Hexabot

Posted in 9. Project Proposals on November 5, 2009 by zingzhang

The Idea:
I was really intrigued by the small hexabot robot Mark brought in earlier in the year so I thought it might be interesting to create a larger one.  Little to my surprise, there have been hundreds of these types of machines made throughout the years… many of them are REALLY COOL.  Regardless, I really want to make one.  As someone whos never really worked with robotics or electronics before, I feel like it will be sufficiently challenging for me to make and yet a reasonable goal.

The Build
I’ve already done a bit of research on the idea, and looked at a lot of other people’s designs.  So, I have a decent idea in how to actually build the thing.  Almost all of them use two servos per leg (totaling to 12 servos).  A lot of people have metal or plastic covers, but I don’t know where I could find that, nor do I really have access to a studio, so I am going to settle for thin plates of plywood.  I plan on basing a lot of my design on this website (it is very well documented and seems to also work very well).  I will also be referencing other hexabot creations found all over the internet.

After seeing Paul’s post on using a Wiichuck to control LEDs, I thought it’d be fun to have the hexabot controlled via this controller.

The Bare Mininum
-Create a hexabot that can move forward, background, left and right via control from the wiichuck in an organic manner.

The Ideal:
-Have another “free” state which would have the hexabot act on its own accord.  My initial idea is to have it search for shadow (avoiding obstacles as it does) and chill there until a loud noise causes it to scurry somewhere else.
-Enable the hexabot to move in the y-axis so that it may stand taller or slouch accordingly (I’m not sure how to get this to work… the only way I can think of is to have a 3rd servo on each leg).  I could also sync these motions to the wiichuck’s accelerometer.

The Plan:
Week 1: Order parts, settle on a final design and build, do sketches, do more research, decide on final functionalities… basically, figure out exactly what I want to do and have all parts ordered by week 2.
Week 2 (most likely this will flow to week 3): Build it. Create all physical parts and put it together.
Week 3: Program it! (I don’t think this will take very long as there is plenty of documentation for this type of robot and I’m pretty good at programming…).
Week 4: Can I create that second state?  Can I make it any… cooler?  Aesthetics and final touches.

High-Five Machine

Posted in 8. Finite State Machines on November 2, 2009 by zingzhang

This robot was pretty neat, I thought it was rather humorous too. The point of the robot was to give out high-fives. The three states are rest, standby and high-fiving. There are two IR sensors in the system. One of them detects if anyone is near and another detects if a hand is in position for a high-five. The three states are determined by these two IR sensors.

When no one is near either sensor, the system is in rest state, where the hand is stretched out parallel to the floor. When someone is near the system (triggering one IR sensor), the hand raises up and is in standby mode. At this point, it is waiting to get a high-five. When you put your hand next to the robot’s hand, it will trigger the second IR sensor and slap your hand.

circuit board... kinda

Arduino Sketch: High-Five Robot!

Walking Puppet

Posted in 7. A Mechanical Automaton on November 2, 2009 by zingzhang

Materials : Cardboard, paper clips, glue, tape

This idea was supposed to be a simple one, but in hindsight, I realized that even the simplest of gears are very frustrating to get working when you are creating them from hand. The “gears” are just two egg-shaped prisms that are pierced through by a bent apart paperclip such that by turning the paperclip, you are turning the gears as well.

Next, I just have a cardboard man with cardboard legs that can move vertically up and down (guided by another bent paperclip). I put the man on top of the gears so that by turning the gears, the man’s legs will alternately go up and down as if he was walking.

Giving a bone to Marshmallow

Posted in 6 Form & Motion on October 16, 2009 by zingzhang

For this assignment, I made a dog out of paper that would wag his tail quicker if you come close to it. If no one is close, it will wag its tail slowly. Inside the dog, I put a servo that attached to the dog’s tail and an IR sensor on the dog’s front.

In terms of my circuit diagram, I could make one… but I feel like its extraordinarily unnecessary for what I did. All I did was connect my servo and my IR sensor into power, ground and connected the signal wire for the IR into analog (servo into digital) – everything else was just programming.

Arduino Sketch: TailWag