Saturday, 17 December 2011

Tree Lamp

Here's another project that I made a little while ago, back in June. I call it a Tree Lamp and I made it for my wife for her birthday. Basically it's an old tree branch wired up with a couple of flexible lamps, a switch and a dimmer. It took me a little over a week, on and off. But if you were to have all the materials ready to go, it could probably be done in about 2 days easily.


Now odds are it's been done before, so I can't say that it's a first. But it seems to get a good reaction from people who see it, and they say they haven't seen anything like it before.

If anyone reading this has seen it done before, please let me know. I'm curious to see how others might have gone about making one.

In case you might be interested in how I made it, it just so happens that I recently finished a second Tree Lamp last week as a Christmas pressie for my sister.
So at some point soon, I will post plenty of pictures of the Tree Lamp 2.0, along with some explanation of how I made it.

Friday, 11 November 2011

Page filler *With Painting!*

It's been a while. Busy.

Anyway, I've found some time and I've updated a couple of old posts. I got rid of all that annoying code and instead added links to the program files which have been uploaded to a file sharing web site. Don't worry, the sharing site isn't dodgy!

So as the title suggests I don't have anything huge to add today. I'm currently trying to order parts to make an 8x8x8 led cube. LED cubes aren't anything really new, but ever since I saw them on YouTube a few months ago, I really wanted to make one!
I'm gonna loosely follow the method someone else used to make one. I'm basically gonna use his circuit design and some of the computer code to make a start. Eventually, when I show more details about it, you'll see why I chose to go with an already working design rather than figure it all out from scratch!


So anyway, YouTube search "8x8x8 led cube" and check one out, they're awesome!






So to go with this page filler, here's a photo of my first painting ever. I made it for my wife mid last year whilst on arvo shift.

Friday, 7 October 2011

iPhone to PC to Hand!

This should be my final Robot Hand instalment folks!

I'm not gonna post the Arduino code because I simply used the "servo firmata" program which is in the examples section of the Arduino software. With the "servo firmata" program loaded onto my Arduino, all I needed to do was figure out some software called "Processing". Processing allows you to do all sorts of things from you pc and other devices. In my case it will allow me to talk to the Arduino from my PC as long as the USB cable is connected between the Arduino and the PC. Best of all, the programming language is pretty much the same as the Arduino!
So anyway, to get the Processing code to work, I first had to add the arduino.cc library and the oscp5 library. The oscp5 library automatically added the netp5 library. Both of these libraries can be found at the following:
With these libraries loaded up, the code I pieced together mainly from the two sources in my last post actually worked!

So before I could actually try this out, I needed to sort the iPhone side of things out. I used software called TouchOSCEditor to create a layout which I then uploaded to my iPhone.
So what happens now is my iPhone sends a signal from which ever button is used in the app. This signal is listened for by processing. Processing then takes that signal and sends an instruction through the USB cable, all the way to the Arduino. And ta-da! A moving robot hand!

Here's the TouchOSC layout I made:
I labelled each of the faders; /1/fader1, /1/fader2, etc, from left to right.




Here's a couple of links for the processing code and the TouchOSC layout. (Remember you only need to use the "servo firmata" program for the Arduino)


robot_hand_serial_processing_code_firmata.pde
robot_hand_fader.touchosc


Thursday, 6 October 2011

Now Controlled by my iPhone!

I just finished adding a new control method to my Robot Hand; my iPhone!

This was achieved by keeping it connected to the pc and running some software called "processing". That software then talks to my iPhone over wifi when I use an app called "TouchOSC". Unfortunately it will cost you about $6 on the app store. I'm pretty sure there is an equivalent app for android and it's probably a lot cheaper too!

I used the following tutorial as a starting point and used some code from another project I found on youtube.
http://www.sparkfun.com/tutorials/152 (How to control an Arduino with your iPhone)
http://www.youtube.com/watch?v=s9etKD2y-Zk (Arduino iPhone colour mixing tutorial)

From these two sources mainly, I eventually figured it out!


Check it out the final product:

Friday, 23 September 2011

Wooden Robot Hand Part 3

Here the last part of the robot hand, the program, I hope the robot hand posts have been somewhat interesting to read for you!


These are the different switches mentioned in the code:
Switch 2 = Open Hand
Switch 3 = Fist
Switch 4 = Flippin the bird
Switch 5 = Rock on!
Switch 6 = Pointing
Switch 7 = Thumbs up
Switch 8 = Peace!
Switch 9 = Wrist forward and back

To view the program code, you will need the Arduino software (which can be found at http://arduino.cc/)

Here's a link to download the program.

Thursday, 22 September 2011

Wooden Robot Hand Part 2

Here's how I went about making the wrist:







I traced out and cut the wrist from some 19mm thick pine (same width as the wrist servo).
In the wrist I cut out a spot for the servo to mount and a large notch in the centre for the wiring. I made the top section a bit narrower so that it will match the width of the palm.
I finished up with a stain and varnish!






I used similar hinges to secure the wrist to the palm. I then mounted the servo to the wrist and made a small arm to stop the hand falling and to enable the wrist to move forward and back.
I originally had trouble with the servo arm. I first tried to attach the arm to the side of the palm, but the servo turned out to be too weak to hold the weight of the hand. So I made a small bracket out of sheet metal to add more leverage to aid the servo.
Below shows the servo, hinge and servo arm.







I next wired up a prototyping circuit board with some switches, resistors and a few leds. The circuit for all of this is shown a bit further down.
A you can see in the photo to the right, I also made a removable base by screwing two pieces of 12mm dowel to the base and then drilling two 13mm holes into the bottom of the wrist. I makes for easy programming and testing. It also looks pretty cool.


Next came mounting the circuit board to the wrist. On top of it I mounted some clear perspex with holes for the switches and leds to poke through. I also mounted two toggle switches onto the perspex, one to isolate the 9V to the Arduino and another to isolate the 9V to the three regulators that supply the servos.
The purpose of the servo isolation switch is to allow me to make changes to the program without the servos moving about.
I finished up the wrist by mounting the Arduino, screwing on the voltage regulators and attaching a battery.

Before I mounted the Arduino, I dressed in the cables from the switches and servos so that they looked nice when they went into the Arduino. I also added a piece of perspex to protect the Arduino.

For the voltage regulators, I used the LM7805. The ones I chose only had a 1A capacity, so to be on the safe side I used three (two servos per regulator). In hindsight, I could have used 10A regulators, but they would have taken longer to obtain and I was impatient!
I mounted them all on a piece of aluminium that can act as a heat sink. The regulators are mounted on the side of the wrist, in between the Arduino and the battery.

The battery is just an ordinary 9V battery with a piece of aluminium holding it in place. I discovered later that a 9V battery doesn't last long when operating the servos constantly. So I would recommend either hard wiring a socket so you can plug in a power supply adapter or just getting a bigger battery.



Here's the circuit I drew up for all of this. At the bottom of the image is the circuit for each of the voltage regulators. I only used one 0.33uF capacitor on the input side since the regulators were paralleled up.
Switch S1 and the green led is for the Arduino supply. S2 and the orange led is for the voltage regulator and servo supply. The red is just an output from the Arduino. The red led lights up when the servos are moving, just to let you know not to press any other buttons.


































I will post the Arduino program I used soon.




Wednesday, 21 September 2011

Wooden Robot Hand Part 1



This is one of my most recent projects: a wooden robot hand.
The fingers are controlled through 5 servos pulling on 2 pieces of fishing line each, one on the front of the finger and another on the back. When the servo moves it releases one side of the finger and tighten those other. I chose this method because at the time, it sounded pretty simple and cheap to achieve.
The drawback to this design is that the fingers are extremely weak and cannot grasp anything. So until I get around to figuring out how to make the fingers curl around tighter, the hand will probably never hold anything.
I have since seen some videos of other servo robot hands that seem to achieve hand strength, but I haven't really looked into how they did it. But in my defence, I think my hand looks more hand-like than the others that I've seen. Also, none of their's "flips the bird"!

The servos are controlled using an Arduino Mega 2560. Obviously my choice of Arduino is a bit of an overkill (since only 14 I/O's are required), but it is all I have available for now. Eventually I'll replace it with an Arduino Uno or Nano. The whole thing is fed from a 9V battery. The servos get their 5V from 3x 1A voltage regulators. I'll get into the wiring and what-not on another day.

So here's a run down of how I made the hand:





I started with tracing out my left hand and marked out the design that I was going use to build the hand itself.
I first measured out and cut the segments to make the fingers and thumb. I used 12mm dowel. I chose to make my own hinges because anything at the hardware store was either too big, too flimsy or simply split the dowel in half when I tried to put screws in! So I ended up making the hinges by cutting up some sheet metal into a two hole mechano-like piece. I used two of these metal pieces for each pivot point with a 1/8" brass screw holding it all together. The small ring hooks are for the fishing line to thread through and tie off at the end of each finger, front and back.



After redrawing several times, I decided upon this design for the palm. It allowed room for the servos to fit and kept the palm pretty strong.
The palm is made up of 2 separate parts that screw together later; the main section which holds all 5 servos and 4 of the fingers (attached with the same sheet metal hinges) and a small section that holds the thumb. The smaller section is angled roughly 45 degrees down.










This is how the palm turned out (thumb piece not built yet!)













After assembling all of the fingers and the two palm pieces, I gave it all a quick once-over with some stain and varnish (just to be fancy).
As you can see in the photo, I then mounted the 5 servos.


I got the 5 servos for AU$30 on eBay. Heaps cheaper than at the hobby shops in Adelaide!


Now the reason I used 12mm ply in the construction of the palm becomes a bit obvious in this photo. I matched the width of the servos to the ply wood width so I could attach some aluminium sheet on both sides of the servos. Two reasons; it prevents the servos from falling out (they weren't screwed in too well) and it looks kinda cool!











I'll continue with the construction of the wrist and the wiring on another day.