Wooden Bob

UPDATE 29-SEP 2014

I'm well into programming the robot and enjoying the excitement of getting to grips with the almost finished robot.

I thought I'd post an update showing pics of how the robot bolts together...

Here's the chassis with the four walking servos in place.  Each pair of servos shares a four pin plug.  Hot glue provides the insulation and some stress relief to the wires.

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Heres the power pack. The 4.4g servos in the missile racks need 5v to pull the release pins nicely so I got this AdaFruit PowerBoost 500 charging circuit to go with my LiPo cell.  The power and battery voltage low wires are presented as a 3 pin socket.  The USB charging socket is accessible at the front and the switch is tucked round the back.  

 

 

 

 

 

 

 

 

 

 

 

 

 

The underneath of the main board.  The 3 pin plug that goes to the power pack can be seen with the 5 pin in circuit programming plug behid it. In between the two plugs is the two row header socket that the servo plugs go in to.

 

 

 

 

 

 

 

 

 

 

 

 

 

The main board tightened down with four plastic hex spacers.  The placement of the battery and charging socket can be seen. 

The mess of hot glue and wires around the HC-SR04 is wher I have cut into the sensor cans with a dremel and inserted Red/Green LEDs into each eye.  The idea being to get the eyes lit up with reflections of the shiny bits.  A delicate operation but it works and the sensor tested fine on the breadboard afterwards.

 

 

 

 

 

 

 

 

 

 

 

 

 

The PIC 18F2620 is a bit buried here.  Its running at 25Mhz and with 64K of program memory I'm hoping to have a lot of fun developing some cool moves for him.  The header socket which connects to the top deck can be seen in the foreground.

 

 

 

 

 

 

 

 

 

 

 

 

 

Top deck screwed on and the eyes lit up green.  In the background you can see the socket for the OLED screen and the hot glued backs of the the two push button that make up a go-pro style interface for Bob.  I spent a while getting the LEDs lined up and the pic doesn't do it justice, in real life Bob doesn't look like he has a lazy eye.

 

 

 

 

 

 

 

 

 

 

 

 

The inside of the shell and underneath the missile racks.  It's just a push fit on the chassis.

 

 

 

 

 

 

 

 

 

 

 

 

Peek a boo!

 

 

 

 

 

 

 

 

 

 

 

 

The back of Bob showing the OLED screen and two button interface.  The missile rack servos plug into pins on the main board back here. Poking out of his butt is the five pin programming interface, when the coding is done I can tape the pins and the plug will stow inside out of the way.

 

 

 

 

 

 

 

 

 

 

 

 

 

 

I think Bob looks great with eyes that are flush to the face, but that's just me.  Watch out! Red eyes is a sign thayt Bob is in attack mode and is about to launch missiles!

 

 

 

 

 

 

 

 

 

 

 

 

 

Almost build complete, some tidying up to do a nice colour scheme and an IR sensor to detect targets...  Thanks for reading.

 

An update with a video to follow in a week or two...

 

 

UPDATE 14-SEP 2014

My first video!  I'll try and find a link so I can put the LMR logo on it, I did have a quick look but couldn't find something I could download.  I'll have more time to look for next time - if anyone can help with a link it'd be appreciated.  The music in the video is from a Japanese robot show from the 70s that I liked. 

I've used an Arduino to trigger the pods for the video and it fires them off in full automatic mode as long as I hold the button down.  The finished robot will be able to shoot single shots.

Making the rubber band gun made me think about making my Bob shoot a salvo of rubber bands.  I had two old 4.4g servos from lightweight model aircraft and figured they could be made to actuate a simple sliding pins rubber band launcher.  The bands are 'loom bands' I guess all countries have these, they've been a craze in the UK this summer.  Small ruber bands you can loop together to make bracelets and models.

With Bob now being armed, the red paint had to go.  Also I noticed I hadn't got as good a finish on the balsa as I was expecting, so here Bob is in a grey primer, I'll rub him down and get a smoother finish.  I think the final scheme and style will be of the SD type Japanese mecha.

I have ordered a 600mAh LiPo that will fit between the hip servos and I am sure I can get all of my electronics to fit..

One thing I have tried is to glue 'non slip mat' to his feet, this is a textured rubber roll you can get in the cheap shops in the UK.  I'll do a picture some other time when I know it does or doesn't work.  At the moment I'll say that it looks like this matting on the feet will improve things, but then I'm a noob and its a great big learning curve for me.

 

 

 

 

 

 

 

 

 

 

 

 

I have not done anything with the mouth of Bob yet.  I am sure I can get Bob to shoot when there is something at a set range of the ping range finder, I even think I can get Bob to pivot slightly to aim a missile at a target directly in front of Bob.  (Originally the missile pods were going to be set toed in to converge at a set range, but it looked odd).  I wondered if the mouth could be some kind of IR sensor and I would create lightweight knockdown targets that are illuminated with IR.  Very ambitious for me, but it's something to 'shoot for'. So for now I haven't made a mouth feature. 

Software wise, I have an interrupt driven scheme that allows the servos to move slowly and smoothly.  TMR0 is set to trigger 3 times 3ms apart and then a fourth time 11ms later.  In total this is 20ms and each servo gets a pulse every 20ms.  When the TMR0 fires the code calculates the required pulse for the current servo and loads up the TMR3 registers with the required values to generate the pulse.  I didn't quite get the Ping sensor working in the 8ms gap the servo control scheme leaves but I did experiments before that lead me to  think that 8ms is pleanty.  Bob isn't a stabilised gun platform and he won't be firing on the move, so the two servos in the rocket pods will be triggered when he's stopped and I'll pause the TMR0 to make life easy for myself.  

With the OLED screen and a two button GoPro like interface to add to the back, it will be cramped, but with patience I am sure it'll fit... I think... 

UPDATE 07-SEP-2014

The feet, legs and base are complete and have been sprayed a shiny red.  My first oversight has reared its head, the Li-Po cell I have bought is 65mm long, which won't fit nicely into a Bob head.  My decision for now is to just build a platform with legs and get on with the programming of the servos.  I would have got a lot further today, but one of my sons wanted to build a step up action 3 shot rubber band gun.  Sorry to post a non-robot pic, but I'd like to set a standard of posting a pic with every update and I didn't take any pics of the Bob parts (that pic to follow in the week).

3 shot step up action rubber band gun

 

 

 

 

 

 

 

 

 

 

 

 

 

Hello, my first post and first attempt at a robot. I visited the Manchester (UK) Mini Maker Faire recently and saw some biped robots and I decided that I just had to have a go myself!

I've made radio controlled cars boats and planes all my life, in the last few years I've been interested in microcontrollers and my day job is as a software developer. Making a robot seems to be a challenge that brings together a few interests and I expect to have a lot of fun.

For my first biped robot I'm being cautious with how adventurous I'm going, I've choosen to make a Bob. Apart from the fact I think it's aesthetically nice, this suits me because its a biped that uses 4 servos and not having access to a 3D printer it's quite a simple thing to create using my normal modelling skills.

My first goal was to be sure I could get the microcontroller side of things together and working before I started building the robot itself.  One of the challenges of Bob for a noob seems to be the smallish volume available to stash all of the stuff in neatly.

So the first thing was choosing the brain power, a few years ago I looked around at different options and settled on the Pic microcontrollers.  There is such a wide range to choose from and you can always start with a bare chip and work from that.  I completed a packaged assembler programming course but once I got an understanding of Pics I choose the MikroC compiler which in tandem with their programmer does the job very conveniently for me.

I have limited space indoors for doing my electronics and playing around with the coding so I've taken some time to make a stand for my MikroProg programmer and made a few boards that have these incircuit programmer headers and a socket for a bench power supply. Sprayed up in the bright red of MikroElektronika it doesn't look a complete eyesore to my wife.ICSP Header for MikroProg

 

 

 

 

  

 

 

 

 

 

 

 

Being able to step through code at run time is excellent but often I've found having some way of writing out state is very useful.  I will happily give one pin to have a led blink to show me the main loop is running and for my breadboarding projects there has always been an LCD.  

 

 

 

 

 

 

 

 

 

 

 

 

With the 4bit LCD interface I loose 6 pins to the LCD which has always been fine and over a few years I've collected a few 2 and 4 line LCDs that work with the mikroC libraries very easily.  I wanted some kind of display on my Bob and realised that a chunky big LCD wouldn't fit.  Also I will be using a smaller 28pin chip for Bob and something that uses less pins would be better.

I saw these little OLED screens on ebay costing around £3 with I2C interfaces and bought one not expecting too much.  Actually I've been very impressed with it (and ordered a few more).  Even with my progressing years the screen is very easy to read and programming it not too difficult.  This is the two colour yellow/blue one, I've left some junk from the demo code for it across the top to illustrate the colours.  My little Bob graphic will have bars to his right indicating the range to an obstacle.  In my mind he'll have two walking speeds and some kind of row of icons in the yellow bit to give an outward clue as to what he's thinking.  Ample room at the bottom for debug messages and info about the servos. 

 

 

 

 

 

 

 

 

 

 

 

 

I made a quick application to create the data for any graphics I want to display on the screen.  Because of the size of it and the fact it will be on the side of a hopefully moving biped I'll sidestep the issue of fonts this time round and just use icons and bars for everything I need to output.

 

 

 

 

 

 

 

 

 

 

 

A quick overview of the code. I've got most of it working on an 18F4520 but it'll run on a 28pin 18F2620 in the robot:

Timer0 - provides a 20ms interrupt that tells Timer1 to start.  Timer1 will control the 4 servo pulsewidths. Timer3 times the Ping sensor echo pin and I am using an on change interrupt from the echo ping to start and stop the timer.

The Ping is working great, I used the information and some of the code from here. The code there does not reset the Timer registers after using the them to calculate the distance and I found needed to add that code to get it all working for me.

I've only got code in for two servos, it took me a long time to understand controlling servos using intterupts rather than delays.  All my own code I didn't immediately find a library that I liked.  I do have to credit this series of articles though as they have helped me a lot.

The next step is to build Bob, I'll build mine from balsa wood.  I got the stl files and converted them for use in Sketchup for where I could tape measure the parts to get dimensions.  If you got this far, thanks for reading.

 

 


This is a companion discussion topic for the original entry at https://community.robotshop.com/robots/show/wooden-bob

Nice write up

I enjoyed reading about your project and I can’t wait to see how it works out. I too found the Pololu articles on servo control very insightful and useful.

Thanks guys, I am hoping

Thanks guys, I am hoping that using an 18F Pic chip with the two levels of interrupts and 4 timers it’ll help me with the servo control.  Doing a Bob has a feel of safeness about it, but where I am putting all of my ambitions is in coding a servo control that is smooth and with varying velocities. Being able to control the servo speeds easily is the personal challenge here - should be tough enough for me to keep me quiet for a while…

 

Looking at that gun, I can’t

Looking at that gun, I can’t wait to see how nicely Bob will come out!

Phheww

Been lurking and here and thinking of making a robot for a while, it’s only when you stop looking and start doing that you realise what a massively talented group is gathered here.  Have to say this is taking me to my limits and beyond, that’s why I am having so much fun - just like everyone else I guess.

Thanks for the welcome and encouragement!

 

Rubber band launchers!

Rubber band launchers! That’s an amazing idea! I thought about using something like this launcher http://www.aliexpress.com/item/Walkera-Part-V959-19-Missile-Bullet-Launcher-for-RC-Helicopter-Quadcopter-UFO/2009207746.html or a BB gun, like the Mech Warfare guys do, but it never occured to me that such a simple solution may work!

Also, bonus points for the music in the video. It’s perfectly synchronized! I laughed so hard!

I didn’t originally think the pin in a tube would work…

I didn’t originally think the pin in a tube would work and thought for a long while how to get a more proven trigger in a small space that a 4.5g servo could handle.  In the end I accused myself of over thinking and just tried it.  With some tweaking it works well.  I’d even say that the 4.5g servo could handle 5 pins loaded up with bands and a rectangular launcher would look nicer I think.  The loom bands help having a weak pull, but from table height the land on the floor 5m away, so good enough.

Oh, the gatling gun thing is crying to go on a robot… my old favourite biped is this one… http://davidbuckley.net/DB/Thor/ThorLog.htm saw it at Manchester Maker Faire and a key inspiration to build a biped (starting with a proven 4 servo design).  My new favourite robot would be that Thor robot with two of those gatling guns and an ED-209 voice synthesiser on it… 

nice work.

Nice work.  Love the craftmanship, and fitting rubber bands on a Bob.  Way cool.

Thor

Thor reminds me the jungle walkers from star wars, and maybe it’s even cooler because it’s actually cut with laser! To make servo firing rubber bands it’s better to use a trigger mechanism and a servo pulling the trigger. A paper balls minigun it’s easier to make, or can fire just laser pointers!

Thor is very cool in person,

Thor is very cool in person, he has really nice motion capabilities.  Once I have broken my 4 servo cherry I might trade up to that.

I’d have loved to get a decent mech that fits inside those pods with a servo and doesn’t burden Bob with too much weight, I looked at the cleverest of the Japanese rubber band guns and didn’t see anything.  The step up mech is small enough but the servo has to pull directly against the band. As for a paper balls gun, in such a small space?  The BB guns the rc battleships that actually sink each other would be great for a balsa robot but I couldn’t see how to get anything like that into a Bob.  Still learning the possibilities. 

 

**Have you seen the miniature actuators **

that they use on indoor flight aircraft? Basically a coil of magnet wire, an “axel” that runs from side to side to allow an “arm” containing a pair of magets to swivel a bit depending on voltage(?) through the wire. These actuators are maybe the size of an eraser from a pencil and don’t weigh much more.

Target Aquired!

|x

I loved the video!!

And the robot :smiley:

I like the direction of the

I like the direction of the thinkiing, if it goes up in a plane its a great chance it’ll fit the bill to do this job.  The 4.4g missile rack servos came from an indoor plane so I’ve seen what the really lightweight guys use.  My take on coil actuators is they dont have much power and stall quite very easily, so the problem would then be the trigger, I’d need to make something really really trick.  

The other actuator method that has come to me now you mention coils is muscle wire…  I reckon I could get muscle wire to work and I am now kicking myself I didn’t think of it on my own.  I already have some I bought on a whim for a project that never happened.  If the gun design means it only needs to pull once and then resets by hand, you could build some very very small and slick weaponry with muscle wire. 

Hmmmm muscle wire micro robot… has it ever been done?

Nice video? I thought we

Nice video! I thought we will see that little guy walking but you only show us the rocket launcher and there are no details about it’s inner parts. LOL, that’s a cool looking robot and I also like the idea with that 4-pin servo connector. It’s very handy when it comes to take it apart.

 

Good call on the muscle wire.

I would be curious how good it can pull. As I recall different diameters have different tension capabilities and also different throws. More pull means less throw, if memory serves.

I have seen a picture of a memory wire robot. It was a hexapod, but, the brain and power were not on the body as I recall.

Now that you mention memory wire, it reminded me that there is the work being done with fishing line embedded with very thin wire. It’s not lightening fast, but, I don’t thing memory wire is either.

I just did a bit of

I just did a bit of searching around and there are a few great videos of muscle wire, including teeny tiny robots, the ones I saw were power and brains off the robot too.  Interesting… so many things too little time…

Oh I need more time for the

Oh I need more time for the walking video, but it will come.  

My first effort at programming a robot to walk, I won’t be rushed… I am enjoying it too much!

Haha, take your time but

Haha, take your time but don’t forget it :slight_smile: Glad to know that you enjoy it.