PDA

View Full Version : [Project] HUMANOID 600mm (Yet to be named)



kiwibrisa
08-10-2010, 10:34 PM
I thought it was about time to start a projects post on the humanoid I am working on. This is my Masters project I have been working on for the last 6 months. I have help from a mate who is doing it for his final year Honours project.

I have been lurking round this site for months. Have posted a few things and you guys have been really helpful but im getting to the really tricky stuff now so I am going to be posting a lot more.

Progress to date:

Mechanical: The whole robot has been designed and the lower body have been constructed. The upper body is not really a priority at the moment until I need to start using arms to balance.

95% of the aluminum has been cncd, every joint has roller bearings, the legs are carbon fibre tubing and the whole thing weighs 2100grams.

Electronics: Servos are wck1111 modules with full metal gears with a max tested torque of 14.5kg/cm on 14ish volts.
An X3 usDigital inclinometer will be used in the pelvis
A CH6dm AHRS will be used in the center of the body
Controller RB110
Bioloids FSR Pressure sensors for the feet.

Programming: We can control the servos in hi precision mode with an 8051micro. Can send any angle torque etc.
Can read angles in hex from X3 but not AHRS. Can read from the AHRS but havnt yet worked out how to pick out the angle we want.
Cant read anything from the pressure sensors yet. Working on a circuit to split the single Data line into a Tx Rx then can start playing with that.

Have just started playing with the RB110. Have windows lite installed which runs mint. Having some troubles installing ubuntu 9.04 though.

Thinking of possibly using Microsoft Robotics Developer but am unsure if it would be suitable. I cant find basic tutorials and the ones I can find don’t seem to do anything.
Basically want a simple C C++ C# program that reads particular com ports (maybe a gyro on com1) then sends out to another com port (maybe servo on com2). I assume MRDS can do this easily enough?

Heres a few pictures (bit large).

http://img.photobucket.com/albums/v246/agusta/DSCF1178.jpg
Testing servos

http://img.photobucket.com/albums/v246/agusta/DSCF1302.jpg
Billets before CNCing. 2 knees 2.

http://img.photobucket.com/albums/v246/agusta/DSCF1308.jpg
4th axis on the CNC

http://img.photobucket.com/albums/v246/agusta/DSCF1309.jpg
Ankle

http://img.photobucket.com/albums/v246/agusta/DSCN1102_Large.jpg
All CNC parts

http://img.photobucket.com/albums/v246/agusta/P1100637.jpg
http://img.photobucket.com/albums/v246/agusta/P1100656.jpg
Foot & Toe

http://img.photobucket.com/albums/v246/agusta/P1100669.jpg
http://img.photobucket.com/albums/v246/agusta/P1100668.jpg

http://img.photobucket.com/albums/v246/agusta/P1100671.jpg

Full Leg

http://img.photobucket.com/albums/v246/agusta/P1100642.jpg
http://img.photobucket.com/albums/v246/agusta/P1100641.jpg
http://img.photobucket.com/albums/v246/agusta/P1100640.jpg
Pelvis @ Hips

http://img.photobucket.com/albums/v246/agusta/P1100636.jpg
http://img.photobucket.com/albums/v246/agusta/P1100638.jpg
Full lower body

DresnerRobotics
08-10-2010, 11:05 PM
That is absolutely gorgeous machining work! I really hope those wcK's work out for ya!

billyzelsnack
08-10-2010, 11:43 PM
Just WOW.

jes1510
08-11-2010, 12:50 PM
That's gorgeous! For the serial port stuff look into python and Pyserial. If all you want to do is pipe data between ports then it would be pretty trivial with Pyserial.

gdubb2
08-11-2010, 01:08 PM
Beautiful work, I look forward to more updates.

This will no doubt be one of the best looking robots in captivity.

Good Job
Gary

Psykoman
08-11-2010, 01:13 PM
Absolutely insane. Great job. Really like to see it walking.

kiwibrisa
08-12-2010, 01:24 AM
Cheers for all the good comments. Much appreciated.
First question: Can the roboard be used as a simple micro controller? For example if I want to bring a pin high to turn something on, what program/environment/drivers would I do that with. With a micro I can talk and listen to ports/pins sweet as but the roboard is a bit different since its computer based. The reason I am asking this is because we need to switch on and off a 74hc126chip to split the single data pin of a FSR board (bioloid) into a normal Tx Rx.

Thanks Jes1510 iv been having bit of a read of Pyserial. Do you have experience with it?

Psykoman
08-12-2010, 04:49 AM
You can't use the roboard as a simple microcontroller because you need an operating system, but it is very easy to access the gpio you only have to write a 1 or a 0 into a register (i think it will be under /dev/...). You can also use a ftdi chip to communicate with the bioloid bus and don't have to worry about the pin for the 74hc126 chip because the ftdi has a pin which do it automatically and will be connected to usb.

JonHylands
08-12-2010, 08:44 AM
Cheers for all the good comments. Much appreciated.
First question: Can the roboard be used as a simple micro controller? For example if I want to bring a pin high to turn something on, what program/environment/drivers would I do that with. With a micro I can talk and listen to ports/pins sweet as but the roboard is a bit different since its computer based. The reason I am asking this is because we need to switch on and off a 74hc126chip to split the single data pin of a FSR board (bioloid) into a normal Tx Rx.

I would just replicate the chip parts on on USB bus board - the FT232, a tristate buffer, and an inverter. They are all small, surface mount parts. With that, you just treat the bus like a normal (virtual) serial port - works fine in both Windows and Linux.

- Jon

jes1510
08-12-2010, 11:18 AM
yeah, I've written a ton of stuff that uses Python and Pyserial. To read serial port 1 and send it out Serial port 2 the code would look something like this (untested pseudo-code):



import Serial
ser1 = serial.Serial('/dev/ttyS0', 9600, timeout=1)
ser2 = serial.Serial('/dev/ttyS1', 9600, timeout=1)
line1 = ser.readline()
returnedData = doStuffWithData(line1) # I assume you want to process the data then send it out Serial 2
ser2.write(returnedData)
ser1.close()
ser2.close()

Adam
08-12-2010, 09:32 PM
Holy crap. I remember seeing the drawings. I sincerely hope you can make it walk even half as good as it looks.

Obscene
08-23-2010, 06:02 PM
Holy carbon fiber legs batman. That's beautiful.

Zenta
08-25-2010, 05:48 AM
Very impressive and professional work on the mechanics. I love how you solved the hip rotation (yaw) part. I guess you've all the kinematics (math) solved too since you've laid so much work and effort into the mechanics.

Looking forward to see it move!

kiwibrisa
08-25-2010, 09:45 PM
Does any one know much about Microsoft Robotics Studio?
Or can point me in the right direction for good tutorials example etc.
Im moving servos but I cant figure out how to do simple things like arrays (shifting replacing parts of an array etc)


Still working on that bit Zenta! I know youre an expert though so you may be able to give us a few tips in the near future? :)

DresnerRobotics
08-26-2010, 12:27 AM
Here's all you need to know about Microsoft Robotics Studio: Stay far away.

kanda
08-26-2010, 05:41 AM
lol tyberius, you bright my day, i'm still laughing :-)