Let's Make Robots!

6DOF robot arm controlled by speech recognition or EMG

Listen to spoken commands or EMG and move accordingly

Construction of the arm

The arm is made from 2mm ABS sheet. This material is very easy to cut with a carpet knife, can be very well glued with superglue and be easily bent by warming it up with a hot air gun, so you can make your own brackets, etc.

As the Tower Pro SG90 is a little bit weak to act as a joint to the gripper I increased the locating surface to stabilize the servo horn:

 

Gripper design:

 

Forearm: 


Parts assembled: 


Complete upper part assambled:  


Turn table using casters for furniture as support : 


Robot arm mounted on the base. The base is made from a piece of floor panel and then "coated" with 1mm ABS sheet. Floor panels are heavy, easy to cut and do not deform:

 

Power supply

Power supply design for the arm. The LM138 will need a heatsink. It is important to use 6V for the servos to squeeze out the biggest torque. At some movements the current consumption can easily exceed 3A, so it is not recommanded to use batteries.

Power supply, built on a perfboard:

Servo movements

Servos moving pretty fast (too fast) for a robot arm, which leads to big forces on some joints and parts, especially if the arm is fully extended. It seems to be a good approach to slow down the servo movements. Here is a simple code example how to do that:

servo 1,150
let w1=150
servopos 1,150
pause 100
main:
for b0=1 to 50
let w1=w1+1
servopos 1,w1
pause 10
next b0
for b0=1 to 100
let w1=w1-1
servopos 1,w1
pause 10
next b0
for b0=1 to 50
let w1=w1+1
servopos 1,w1
pause 10
next b0
goto main


Electromyography

For first electromyography experiments I will use this circuit:

The schematic diagram of the electromyographic (EMG) amplifier is borrowed from this site.

The electrodes are made from 0.5 RMB coins, using common sticking plaster to attach them on my biceps and elbow:

 

Joystick control

Two joysticks from an old, damaged RC RX added to control the robot arm manually (see first video). I am planning to store different trained movements in an eeprom.

Comment viewing options

Select your preferred way to display the comments and click "Save settings" to activate your changes.

Thanks

where did u get thos wheels to support the base.

Hi Jaryd,

That are simple casters for furniture, bougth in local B&Q store.

Beautiful work.

Things that are great:

  • Homemade caster lazy-susan bearing for the base --No servo-only support here
  • Perfectly clean and sanded edge work
  • Perfect counter-sinks on all the screw heads --Almost like you went so far as to set a depth on a drill press
  • Screw/nut support for main rotate servo --Allows for height adjustment to maintain contact of disk to wheels
  • Chamfered corners
  • Use of washers --Stonger, cleaner and just looks better
  • "Captured" screw for pivot point on opposite side of servo horn. --This one is great
  • Nice clean cut-outs for the servos on the main arm

Yup boys, this is the way you build an arm.

 

How big was the abs sheet you used ? I mean the dimensions of it.

Hi flokos,

One sheet has 240 x 240mm, 2mm thickness.

How many sheets did you use?

4 sheets in total, because sometimes you need to make double layer or tripel layer to make it more stable.

You might consider Sphinx

I have it working with MyRobotLab - just a suggestion

Sorry GroG if I'm posting this here, but I didn't know how to contact you otherwise. I succeeded at uploading an image for my avatar. As to the notifications, I had my autosubscribe box unchecked, so I naturally didn't get any notifications. It's checked now though. When I tried to reply to you on myrobotlab.org, I got a DNS error; server could not be found. I tried 3 times and I got the same error each time. Internet was working as well as it could, so I don't think my Internet connection was the problem. I'll send you feedback concerning the notifications as soon as someone replies to any of my posts. And is there any other way you would like to be contacted (i.e. email), as I'm not always able to do so at myrobotlab.org?

Thanks