Let's Make Robots!
AttachmentSize
ssc2313.c5.15 KB
OZZY4.pde28.06 KB

09/06/09

I finished the latest cleaner head and mounted it temporarily on Ozzy with double sided tape. This is the 3rd revision of the vacuum head, the 2nd was made of 1.2mm PP sheet and was dumped for being too flimsy. This one`s made of aluminium U channel, hole punched metal strips and plastic. A GM7 baby motor turns the rotating brush through a double set of pulleys, which is made of a pencil with fluffy tape stuff glued to it. On the front is a wire bump sensor with a microswitch on the left. Right side is just hinged. I didn`t bother wiring it up for this test.

P1010290-400.jpg

P1010291-400.jpg

The same fluffy tape is around the edges on the back and sides to keep the greatest amount of airflow coming in through the front. I tried all sorts of stuff around the home for this but nothing worked out until I saw this at the dollar stores. It`s for sealing the edges of indoor sliding doors.

P1010294-400.jpg

The rubbish bottle and fan mounted on the back with tape. I emptied it before the trial run to see how effective the head will be.

P1010292-400.jpg

Here`s an after shot. I had to hold it up to the window so the crap it collected was actually visible through the bottle. Unfortunately there isn`t any video because the test mainly consisted of me pushing him around and turning him away from obstacles.

P1010295-600.jpg

I`ll call the vacuum a success but Ozzy simply isn`t suited to it. It sticks out too far mounted on the front, making turning difficult because it tries to bash everything over. It really needs to be mounted in the center of a circular robot base. Something to do in the future maybe.

?action=view&current=P1010292-400.jpg?action=view&current=P1010292-400.jpg

 

08/19/09

I quick fitted the head shell I made using my vacuum forming box here. I cut holes in the front for a maxbotix sonar and also a 38khz IR receiver to get it to search for beacons.

I guess it turned out ok, I`m really not sure what to think of it. I didn`t put much thought or effort into the clay mould in the first place and it shows. My wife hates it, she thinks it looks like an alien but I think it looks like some guy who shaves his head before realising how bumpy and ugly his own head is. A paint job might spruce it up a little.

P1000909-400.jpg

P1000910-400.jpg

08/12/09

Uploaded the latest main program code.

03/06/09

Some detail shots of the sharp mounts and servo links for the tracking eyes.

P1000794-500.jpg

P1000795-500.jpg

P1000796-500.jpg

26/05/09

I promised the guys I work with I would take it to our next meeting on the 4th of June so I`ve been completely redesigning Ozzys head for more functionality and just better looks overall. I also scrapped the black foam board panels on the side and replaced with aluminium.

It`s not done yet but here`s a little peek at the new head.

 P1000791-500.jpg


 

09/03/05

added source file for the servo driver.

 

09/03/04

Quick update to add a short video showing some really basic wall avoiding. Lots of pauses were added while debugging. Only 1 atmega168 is being used until I figure out some robust code for transfering variables and commands over the I2C connection. 

Watching the video reminds me how fugly the head is D:

If you look closesly you can see Totoro my assistant techy make a cameo!

 

 

 

09/02/09

A bit of an update. My computer is still fucked so I had to give up on sketchup and just build it. 

 

 P1000649-800.jpg

^reflective IR sensor wheel encoder

RPR220  with resistors soldered on and hot glue to hold it solid. When I first tested these things I tried a transistor amplifier Oddbot used in his IR tracker and also without any amp. Using the arduinos 10 bit ADC even without the amp I could reliably detect an object about 40cm away! I did change the resistors for this final design though. At this configuration they should give an almost digital response but I haven`t actually check if the whiteout reflects well...  They are wired as external interrupts and eventually I want to make some kind of PID control.

It will have pretty terrible resolution, about 1 pulse per cm, but thats OK for my purposes.

 

P1000646-800.jpg

^I2C LCD

First attempt at SMD soldering was this max7323 I2C 8 port expander I got as samples. Works great as an LCD controller using only 2 pins on a shared bus. With some research and help from the arduino forums I made a simple to use LCD library.

 

P1000647-800.jpg

^LCD backpack

Directly soldered to the LCD to reduce space. I don`t intend to pull it apart so thats fine. Has a mosfet to control the backlight and a pot for contrast adjustments.

 

P1000650-800.jpg

^LCD and buttons

Mounted the LCD and buttons. I`d love to use those cool chrome dome nut thingies all over the bot but they`re pretty expensive. The buttons have red and green LEDs in them which look awesome at night and will be used to change settings like the time and alarm etc. there are 2 more on the other side.

 

P1000648-800.jpg

^main board

Nearly completed, more headers and wiring needed still, plus I may have to swap out the regulator for a beefier one if I add too many more things.

Going clockwise from top left --- voltage regulator, motor driver, various IO connectors, I2C real time clock and backup battery,  512Kb I2C EEPROM, ISP programming headers, expansion socket, atmega168 sockets, reset button, and finally servo driver.

 

And thats where its at right now. I`m waiting on some ICs and a programming dongle from sparkfun before I can start some proper coding.

todo:

  •  spring and rubber grip around track tensioning nut
  •  track unit side covers
  •  battery brackets
  •  rear cover

 


 

18/12/08

Since first posting this robot I`ve been busy learning sketchup and trying to plan the overall look and position of components. Unfortunately due to an incompatibility between my ram and video card, I can`t use sketchup until the new RAM I ordered arrives. But! Heres what I`ve got up to so far anyway..

 

sketchup.jpg

^design 

The frame is made of 15mmx1mm angle aluminium. It`s strong, light and cheap. I`ve been cutting it with a hand nibbler and using a pin vise to drill holes. Eventually it will be covered with thin foam sheet and have hatches over the front and back for electronics and battery access.

The front holds the main brain board which is 92mmx76mm. The plan was to be able to plug in half size boards on top using 2x5 female headers with extra long pins that stick through the bottom. Because of the height of some components I`m rethinking this design, but I`m still trying for stackable expansion boards.

The 3 servos are for neck and arms. I`m still undecided on the head, neck and arm designs. I`m going to wait until my PC is fully working so I can use sketchup to fill in those details before I start making them.

 

 

P1000299-800.jpg

P1000297-800.jpg

^Tracks

Motors mounted to the aluminium panel with a couple of screws. There is a little bump on the motor so I used 2 washers as spacers. I`ll cut a hole for the bumps so the motors mount flat.

 

 

P1000313-800.jpg

P1000315-800.jpg

 ^frame

Servos and tracks mounted to the frame. Need to stick a support through the middle to stop flexing and cut down the bolts holding the tracks on. 2x6AA battery packs will be mounted here at the back. The servos are GWS S03-2BBMG with almost 9kg/cm of torque at 6v which I picked up fairly cheap. The arm servos are only held on with double sided tape here but the top covering plate with hold them on tight.

 

 

P1000323-800.jpg

^Main board

I`ve given up on the mechanical side of things for now, so on with the brains!

5v 500ma low drop out regulator circuit for logic and sensor voltage. A direct line will be taken from the batteries for motor and servo supply.

On the left are output pins for 8 servos. An attiny2313v will be used as servo driver. Main MCU will be 2 atmega168v with arduino bootloaders. The idea is to have everything communicating over an I2C bus. The plug in boards will all run on I2C as well.

 

 

P1000319-800.jpg

P1000320-800.jpg

^First test of I2C. The RTC at the top being read by the arduino every second and displaying it on a 4 bit LCD. The RTC I got was only $4 but doesnt come with any battery backup. I tried adding a diode and supercap and it works. After 3 days of no power, the capacitor voltage is down from 4.4v to 2v though. The RTC has a minimum time keeping volage of 1.8v so it won`t last much longer. I want the time to last about 3 months at least so I`ll have to add a resistor to limit the current to about 800nA.

 

So that`s where it`s at right now. I`m waiting on some goodies from futurlec still. Their prices are good, but they are sooo slow. The order I put in on the 11/25 got shipped out yesterday :|

 

 


 

Yet another Wall-E type. This is my 2nd robot tentatively dubbed "Ozzy", after my wifes favourite dog in Nintendogs.


Some people may remember me complaining in the forums about a solarbotics shipment disappearing in the post somewhere a few months ago. Well after contacting customer support they were able to resend it free of charge under their insurance, which was awesome because the postage wasn`t insured and I had pretty much written it off. I still get annoyed knowing some dirty bugger is out there with MY original track kit >:|

Now that it`s finally arrived I`ve started work on the wall-E style robot I had in mind a while ago. Since a lot of thinking time has passed since I first ordered the bits, some awesome similar style robots have been posted and inspiration has been had :) particularly the articulate neck on Edward and the modular track units of NewBOT.

 

After trying the same 5mm foam board from my last bot for the track structure and finding it was weak as piss I settled on some 1mm aluminium sheet I had lying around. Here is 1 track unit almost finished. Still need to widen the top hole and mount the motors behind. The top wheel is just a 3rd idler right now.

P1000287-600.jpg

 

Here you can see the simple track tensioner made out of common stuff from the hardware shop. The motor shaft thingy on the right is just a 4mm wiring lug which fit the purpose perfectly. Gives approximatly 20mm travel. I pulled apart every pen in the house looking for springs big enough but sadly they were all too small :(

P1000286-600.jpg

 

Heres my 2nd little innovation I`m quite proud of :D a 4mm bolt as shaft with a 4mm/15mm spacer. The spacer is juuust a little wider than the idler hub so you can tighten everything up as much as you want without putting any friction on the wheel.

P1000289-600.jpg

 

The original plan had been to mount the motor into the space inside the tracks and run a chain or belt to the top wheel. I picked up both the tamiya chain and belt sets for this purpose but after some mucking around I could`t find a good way to fix either a pulley or sprocket to the output shaft of these motors.

I`m busy this week with work but hopefully there will be time for some work on the chassis and head :)

Comment viewing options

Select your preferred way to display the comments and click "Save settings" to activate your changes.
NilsB's picture
I like the tensioners too. Simple and effective.
emuller's picture

Since my question is more relevant here...

Do you still have the vac attachment on your bot? 

I forgot if you mentioned what solution you used to recover better suction - presumably that white blob on the bottle? what IS that thing?

It looks like there's a long tube from the intake to the exhaust - could shortening that improve things?

 

TeleFox's picture
The new vacuum head looks great, love the rotating brush head. It's a shame that it doesn't work so well just strapped onto Ozzy's front =/
fritsl's picture
Nice work!!
Gareth's picture

Thanks for showing the Track tensioners - they look pretty adjustable i must say.

I admire them because "Puff" my robot always had loose tracks and i frowned evertime i looked at him......

Its good to see the intergration of your Vacuum formed custom Head piece.

TotoroYamada's picture
You say you use 1mm thick aluminium, is it rigid enough, or is it because it's angled?  I'm actually trying to figure what thickness i'm gonna use for my next robot, but as it'll be "flat" aluminium, i think i'll use 3mm... hoping it won't be too heavy (i'll try to hollow most of the parts)
ezekiel181's picture

The 1mm is plenty strong because I used all angled parts. Also there are different hardnesses of aluminium. This stuff is pretty rigid but brittle, bending it twice in the same spot will make it snap. I think these angles are made for window frames.

I did use 1.5mm sheet for the track unit sides though, but it was a different hardness to the angle. I found it flexes too much for structural parts but would be fine for covering sides or for really small robots. Also the softer it is the easier to scratch.

CaptainTuna's picture
All those nice metal parts, how did you make them so perfect? I guess they are custom machined right? I wish one day i'll be able to make a chassis like that :O
emuller's picture

Gotta echo CT on this question - I notice it's been a while since it was posted, so I thought I'd pull it up to the front again...!

 

ah.. wait. Probably you're in transit..

 

ezekiel181's picture

Nope, still around. Good to see you are too!

If by machined you mean a hand saw, a file, and a drill bit that I spin with my fingers.. then looots of "machining" :)