You are on page 1of 25

4/15/2017 Arduino Modifying a Robot Arm Lucky Larry

Lucky Larry

Programming tutorials Projects Travel

Arduino Modifying a Robot Arm About This Site

January 24, 2010 Search


By larry Type your query, hit enter
Arduino Projects,
Electronic Projects,
Robot Projects
Arduino Control a DC
motor Edge Robotic
Arm Kit H-Bridge
Hacking L293D
Modifying motors
Projects Robot Arm
SN754410 Tutorial
68 Comments

Essentially another tutorial involving controlling


DC motors. In this post Im going to first alter a
robotarmI had built previously from a beginners
kit so that it can be controlled from Arduino. Then
Im going to write a series of posts on different ways
FittingNewRear to control the robot arm using Processing and
DiscBrakefor
TriumphTiger other things. You should be able to use all of what I
write for work with other toys and motors.

To start with have a look at the robot arm, its an


EdgeRoboticArmKit:

http://luckylarry.co.uk/arduino-projects/arduino-modifying-a-robot-arm/ 1/25
4/15/2017 Arduino Modifying a Robot Arm Lucky Larry

The kit is a basic construction one and costs about


30 which you can find in most gadget shops and
web stores. You assemble a gear box for each motor/
joint in the arm, doesnt take long to build (about an
hour) and is controlled by a set of switches on a
control box. The only thing to note here is were
dealing with motors, not servos or stepper motors
just bog standard DC motors. This means calculating
positions isnt going to be straightforward later on.
The kit has 5 motors and 4 D series batteries to
power them and can lift about 100 grammes.

So this version has a controller attached that lets you


move each motor by pressing a switch, the electrics
are pretty basic and dont allow much control or
further input. I have seen other versions that allow
you to plug it in to a computer via USB but you
pretty much have the same controls.

In order for us to build our own controls/ interfaces


and software we need to modify the arm to allow us
to interface our microcontroller in this case an
Arduino board. The best way I think do this, since
we want to control a motor going backwards and
forward, is to use Hbridge chips the L293Dand
http://luckylarry.co.uk/arduino-projects/arduino-modifying-a-robot-arm/ 2/25
4/15/2017 Arduino Modifying a Robot Arm Lucky Larry

SN754410 and wire each motor into a chip and


then alter the power circuit to run these chips.
Arduino can then digitally control the H-bridge chip
to turn the motor on/off and change its direction.

You can see some other work Ive done with motor
DC motor control and Ill be covering the same info
throughout these posts.

Arduino Robot Arm Parts

3 H-bridge chips I heavily recommend using the


sn754410 chip but you can probably get away with
the L293 series. Each chip can control 2 motors 5
motors = 3 chips.
Arduino Deumilanova w/ ATMEGA328
Breadboard/ Prototyping board
Jumper/ Connector wires
Wire cutters/ strippers

Hacking the Robot Arm

I hope youre not too precious about wanting to use


the control unit again, thats the first thing to go! I
did look at working with this but it doesnt give the
level of control that I want. Also Ill be cutting and
stripping the wires and removing the control circuit
from the arm. The only permanent damage is done
to the wires basically cutting the plugs off of the
wires, so you could always get new plugs if you
wanted to revert it, although once Ive shown you
what can be done I dont think youll mind.

Step 1
First we need to create our breadboard layout so we
can plug in all the wires, were going to be using alot
of pins on the Arduino, in fact I think I use pretty
much all of them. You could reduce this using shift
registers but for now its not an issue, although
please follow the wiring diagrams as this layout gives
the least hassle. Some pins e.g. digital pin 13 will
make the motors move when the board is powering
up so we want to avoid this.
http://luckylarry.co.uk/arduino-projects/arduino-modifying-a-robot-arm/ 3/25
4/15/2017 Arduino Modifying a Robot Arm Lucky Larry

First of all we need to put our H-Bridge chips on the


breadboard. Make sure to put them in the center like
illustrated. This means the 2 sides of the chip are
isolated it will not work otherwise!

Next using the above image and the following wiring


diagram for the chip connect the ground and power
for each chip leaving space for the motors and
Arduino pins. Note that the red wires are connecting
the rails together so the power will flow around the
whole board! These chips will be using the battery
power that runs the motors in the arm the power
will be plugged into the board, the Arduino pins are
there to switch the chips on/ off etc Ive also got a
table of outputs Ive done for each pin on the H-
Bridge chip, its the same for either the L293 series
or SN754410, pinconfiguration diagram below.
The numbers 1-16 also correspond to the numbers
on the images of the circuit.

http://luckylarry.co.uk/arduino-projects/arduino-modifying-a-robot-arm/ 4/25
4/15/2017 Arduino Modifying a Robot Arm Lucky Larry

H-Bridge Pin Conguration

1 to pin on Arduino board


2 to pin on Arduino board
3 to motor1 (either + or -) it wont matter as its
DC
4 to the gnd (-) rail on the breadboard
5 to the gnd (-) rail on the breadboard
6 to motor1
7 to pin Arduino
8 to power (+) rail.
9 to pin Arduino
10 to pin Arduino
11 to motor2
12 to GND (-) rail
13 to GND (-) rail
14 to motor2
15 to pin Arduino
16 to power (+) rail.

So you should have 3 chips on the board and be


ready to add the motors and connections to Arduino.

Step 2
Now the circuit layout is complete we can start
stripping down the arm. First remove the control
http://luckylarry.co.uk/arduino-projects/arduino-modifying-a-robot-arm/ 5/25
4/15/2017 Arduino Modifying a Robot Arm Lucky Larry

unit and unscrew the panel above the battery pack


this should have all the motors plugged in to it.
Were going to systematically disconnect each motor
plug, remove the plug, strip the wires a little bit and
wire it on to the breadboard. When stripping the
wires, remember to twist the exposed wires to
prevent them becoming stranded or solder pins to
the wires.

Heres the first motor in on the first chip:

Its important to remember which motor youre


plugging in to which chip but its not too much of an
issue as with the software well be writing later on we
can work around this with our code, just so long as
each motor is wired into a chip as above. Below is a
list of my Arduino pins used.

Shoulder motor
chip 1, pin 1 to Arduino pin 14 (Analog pin o)
chip 1, pin 2 to Arduino pin 15 (Analog pin 1)
chip 1, pin 7 to Arduino pin 16 (Analog pin 2)
Base motor
chip 1, pin 9 to Arduino pin 2
chip 1, pin 10 to Arduino pin 3
chip 1, pin 15 to Arduino pin 4
Elbow motor
chip 2, pin 1 to Arduino pin 8
chip 2, pin 2 to Arduino pin 9
chip 2, pin 7 to Arduino pin 10
Wrist motor
chip 2, pin 9 to Arduino pin 5
chip 2, pin 10 to Arduino pin 6
http://luckylarry.co.uk/arduino-projects/arduino-modifying-a-robot-arm/ 6/25
4/15/2017 Arduino Modifying a Robot Arm Lucky Larry

chip 2, pin 15 to Arduino pin 7


Hand motor
chip 3, pin 9 to Arduino pin 11
chip 3, pin 10 to Arduino pin 17 (Analog pin 3)
chip 4, pin 15 to Arduino pin 18 (Analog pin 4)

Youll notice that rather than refer to the motors as


M1, M2, M3 as the kit does, Im calling them
something more meaningful as I think it makes
them easier to identify you should be able to figure
out which motor is which from my description I
would hope!

Second motor in:

You can see the battery power has been added. If you
have any problems you can always connect one
motor at a time and use a quick sketch to test the
circuit is working and below is some simple codeto

http://luckylarry.co.uk/arduino-projects/arduino-modifying-a-robot-arm/ 7/25
4/15/2017 Arduino Modifying a Robot Arm Lucky Larry

help you do that. For later tutorials this isnt going to


change much.

[ad#Google Ad in content]

int baseMotorEnablePin = 2;
int baseMotorPin1 = 3;
int baseMotorPin2 = 4;
int shoulderMotorEnablePin = 14;
int shoulderMotorPin1 = 15;
int shoulderMotorPin2 = 16;
int elbowMotorEnablePin = 8;
int elbowMotorPin1 = 9;
int elbowMotorPin2 = 10;
int wristMotorEnablePin = 5;
int wristMotorPin1 = 6;
int wristMotorPin2 = 7;
int handMotorEnablePin = 11
int handMotorPin1 = 17;
int handMotorPin2 = 18;

void setup() {
// set the motor pins as
outputs:
// set all chips to enabled
state
pinMode(baseMotorPin1, OUTPUT);
pinMode(baseMotorPin2, OUTPUT);
pinMode(baseMotorEnablePin,
OUTPUT);
digitalWrite(baseMotorEnablePin,
HIGH);
pinMode(shoulderMotorPin1,
OUTPUT);
pinMode(shoulderMotorPin2,
OUTPUT);
pinMode(shoulderMotorEnablePin,
OUTPUT);

http://luckylarry.co.uk/arduino-projects/arduino-modifying-a-robot-arm/ 8/25
4/15/2017 Arduino Modifying a Robot Arm Lucky Larry

digitalWrite(shoulderMotorEnablePi
n, HIGH);
pinMode(elbowMotorPin1, OUTPUT);
pinMode(elbowMotorPin2, OUTPUT);
pinMode(elbowMotorEnablePin,
OUTPUT);

digitalWrite(elbowMotorEnablePin,
HIGH);
pinMode(wristMotorPin1, OUTPUT);
pinMode(wristMotorPin2, OUTPUT);
pinMode(wristMotorEnablePin,
OUTPUT);

digitalWrite(wristMotorEnablePin,
HIGH);

void loop() {
/*
// SET either one to HIGH to
turn the motor on.
// e.g.
digitalWrite(baseMotorPin1,
LOW);
digitalWrite(baseMotorPin2,
HIGH);
*/
digitalWrite(baseMotorPin1,
LOW);
digitalWrite(baseMotorPin2,
LOW);
/*
// more motors here added.

digitalWrite(shoulderMotorPin1,
LOW);

digitalWrite(shoulderMotorPin2,
http://luckylarry.co.uk/arduino-projects/arduino-modifying-a-robot-arm/ 9/25
4/15/2017 Arduino Modifying a Robot Arm Lucky Larry

LOW);
digitalWrite(elbowMotorPin1,
LOW);
digitalWrite(elbowMotorPin2,
LOW);
digitalWrite(wristMotorPin1,
LOW);
digitalWrite(wristMotorPin2,
LOW);
*/

[ad#Google Ad in content]
Step 3
So now you should have all the motors wired to
chips on the breadboard, now we just add the power
to the board and were done this is the power from
the robot arm batteries, it can connect on either side
of the breadboard as long as its connected to the
power rails. Also remember to connect a wire from
the GND rail on the breadboard to a GND pin on
Arduino there must be a common ground
connection between Arduino and the H-bridge chips
for this to work. Lastly Find a way to secure the
Arduino and breadboard to the arm to minimise the
risk of wires disconnecting, I just used some blu-tak
(modelling clay etc..).

And heres the final thing:

http://luckylarry.co.uk/arduino-projects/arduino-modifying-a-robot-arm/ 10/25
4/15/2017 Arduino Modifying a Robot Arm Lucky Larry

If you want to avoid the breadboard and make a


more permanent circuit you should be able ot follow
this, just make sure that the pins on each side of the
H-Bridge are completely isolated from each other.

Onwards
So thats it, the arm is ready to go you can add your
own switches and inputs to control this but were
going to have some fun writing software to control
this arm in the next part to move each motor AND
after that were going to be looking at using Inverse
Kinematics and trigonometry to do some cool
controlling of all the motors of the arm and to maybe
start program tasks.

Oh, Inverse Kinematics basically means we can


program the arm to go after a target moving all the
motors in combination to do this trust me it is very
cool!

Arduino Controlling the Robot Arm with


Processing: Using Processing and my laptop to
control the arm

68 Comments
March 19, 2010

http://luckylarry.co.uk/arduino-projects/arduino-modifying-a-robot-arm/ 11/25
4/15/2017 Arduino Modifying a Robot Arm Lucky Larry
6:39 AM wow. i didnt know you can control DC motors like that!?
By calfred thanks for posting this. very valuable. its so accurate , more accurate
than servos.

Reply

March 19, 2010 It can be pretty accurate and you can use the h-bridge chips
10:32 AM with PWM to create speed control. But you can only measure
By larry the motors rotation using a rotary encoder otherwise you cant
accurately read the motor position its a problem Im facing
with the arm currently as I have no real way to measure
movement of the motor whereas with servos this is built in so
they tend to be more accurate for robotics.

Reply

April 01, 2010 Right, just adding a quick note on here.


5:16 PM
Ive found that to encode the motors is a pain to get
By larry
anything meaningful and repeatable results, so Im going
to build a servo rig see if I can do it in a very cheap
way

Reply

March 26, 2012 Hi Larry. my name is Edgar i have a project of moving 6


9:33 PM motors with Arduino, but i am not a person who has
By Edgar extensive knowledge in electrical parts.

i am following your instructions of the Arduino


Modifying a Robot Arm article. So at thic moment i am
buying the parts to create the motor controller. With the
H-Bridge chips. but i have a question: in the picture of the
Protoboard over the GND and PWR lines, it appear a
component like a resistor, red color resistor, what exactly
is this Component?. i really appreciate your help Larry

Edgar Acosta

Reply

April 13, 2010 Nice work


3:04 PM We could use simple pontentiometers connected to each joint for
By I8mAll feedback. To that end I am considering dismantling cheap servos for
pots and control elecs. The nice bit about that is interfacing becomes
a doddle.
If I can just get the time

Reply

April 13, 2010 Cheers, youre at exactly the same stage as me I was looking to
5:23 PM use the wheel encoders from a mouse, just have to alter the case
By larry to connect them to the motors.

http://luckylarry.co.uk/arduino-projects/arduino-modifying-a-robot-arm/ 12/25
4/15/2017 Arduino Modifying a Robot Arm Lucky Larry

Although Im going to build my own brackets and use servos to


control it. Much easier I think but I will post up how to make
the brackets, probably a bit more expensive (not sure yet)

Reply

July 14, 2010 Hi,


11:25 AM
I was wondering if youve been able to hack that robotic arm such
By Erle Mantos
that it wont use 4 D batteries but use an external DC adapter
instead.

If you have, would you mind emailing me how? my email is


emantos@gmail.com.

Thanks.

Reply

July 28, 2010 Hi Larry thanks for this great tutorial! My son and I are working on
1:03 AM it now (we are trying to add a robotic arm to his Spykee robot) but
By Alan have a small problem we have 6V going into the chip but only 3V
coming out so the motors are struggling. I tried taking the 5V logic
voltage from the Arduino board instead of the motor power and this
took the motor output up to 3.5V but we seem to be getting a big loss
of voltage somewhere that I cant understand. Any suggestions?
Cheers,
Alan

Reply

July 29, 2010 Which chip are you using? Generally I use a separate power
9:07 AM supply to drive the motors, all chips etc.. are powered off
By larry another supply e.g. the 5v arduino.

Anyway let me know which chip youve got running the motors.

Reply

July 29, 2010 Why the chips cannot control 4 motors? They have 4 input and
9:50 AM outputs no?
By sierra maybe it is a stupid question, sorry

Reply

July 29, 2010 Hi Sierra,


4:18 PM
The 4 inputs and outputs are actually 2 inputs and 2 outputs as
By larry
the chip controls the flow of electricity to the DC motor and
essentially the input is just a switch to the motor on or off

http://luckylarry.co.uk/arduino-projects/arduino-modifying-a-robot-arm/ 13/25
4/15/2017 Arduino Modifying a Robot Arm Lucky Larry

(which is another switch). You could add more motors to each


output to control multiple motors but that depends on the
current and voltage of the motors. Alternatively you can link
multiple chips together.

Reply

July 29, 2010 Hi Larry its the SN754410 the one you suggested. Ive got the
11:24 AM motors being powered off one battery and all the other inputs come
By Alan from the Arduino. Ive moved up to using a 9V battery and it passes
through about 4.7V which is OK as it gives nice gentle movements of
the arm. We eventually will be trying to get it to operate remotely
from a laptop (as Spykee does) so we hope to control the arm while
watching through the web cam. Just wondering if it is normal for
that voltage drop to occur? Cheers. Alan

Reply

July 29, 2010 OK think Ive sorted it out, but not quite sure what was going on. I
1:02 PM found Id actually been getting weird low output voltages right back
By Alan from the Arduino pins, and it seemed to be caused by something
wrong in the program (which Id modified a bit). When I removed
this section
-
if (incomingByte == O) {
digitalWrite(baseMotorPin1, LOW);
digitalWrite(baseMotorPin2, LOW);
digitalWrite(shoulderMotorPin1, LOW);
digitalWrite(shoulderMotorPin2, LOW);
digitalWrite(elbowMotorPin1, LOW);
digitalWrite(elbowMotorPin2, LOW);
digitalWrite(wristMotorPin1, LOW);
digitalWrite(wristMotorPin2, LOW);
digitalWrite(handMotorPin1, LOW);
digitalWrite(handMotorPin2, LOW);
}
-
the Arduino output voltages were suddenly fine. I changed to using
a switch case statement rather than all the if ones and it was all
good, and the outputs from the chip were much stronger. I dont
understand it but at least its working now. Cheers, Alan.

Reply

July 29, 2010 I was going to suggest the draw of the motors to see if they were
5:02 PM draining to much at stall.
By larry
Very odd you had issues with the code as mine worked with 6v
from the robot arm. Ill keep an eye out for this, could be
inefficient coding.

http://luckylarry.co.uk/arduino-projects/arduino-modifying-a-robot-arm/ 14/25
4/15/2017 Arduino Modifying a Robot Arm Lucky Larry

However, when I built a small robot I found I had to push about


9V through the chips to make up for voltage dip when the
motors hit their stall current.

Could be that your robot arm has slightly different motors in it


perhaps.

Reply

July 29, 2010 Hi Larry its not your programming on that first line I quoted I
9:48 PM was using a zero, not an O. That probably confused things
By Alan somewhat! With the switch case statement I used the default clause
to turn off all motors (meaning I can hit any other key), so thats why
it worked again. Thanks for your help anyway, and thanks again for a
great tutorial. It really got us going with this project.
Cheers, Alan

Reply

July 29, 2010 Doh! glad its not the code.


11:44 PM
Reply
By larry

August 30, 2010 Hi Alan,


11:14 PM
Ive just order one of these arms and intend modding it to my
By CdRsKuLL
Spykeemods.co.uk spykee. Wouldnt mind some input from you fella. Get it touch
with me Will get some software coded up.

Steve

Reply

August 02, 2010 Thanks larry!


4:08 PM I`ve another question If I connect the Input pins with the PWM
By sierra Arduino pins I could control the speed?

Reply

August 02, 2010 absolutely! You can use PWM via Arduino as a speed controller.
5:17 PM Although You may want to use PWM on the motors power
By larry supply rather than the H-bridge power supply.

Reply

August 31, 2010 Larry I was wondering if you could just wire up the enable
1:32 PM pin to v+ on the chip ? Im assuming once enabled its just
By CdRsKuLL a case of setting the input pins to either LOW or HIGH
Spykeemods.co.uk dependant on which way you want the motor to go ? If you
set them both to LOW does the motor stop ?

http://luckylarry.co.uk/arduino-projects/arduino-modifying-a-robot-arm/ 15/25
4/15/2017 Arduino Modifying a Robot Arm Lucky Larry

thanks for the write up, Im just trying to save on outputs


and wires

cheers

Steve

Reply

September 16, 2010 i am extending you project by adding wiimote to control the robot
5:44 AM and also server and client software to control the robot from any
By amit where in the world.i am going to make it an opensource project.if you
have time you can join me in this project i am already done with the
wiimote controle and right now working on the server and client.will
be back with the updates.

Reply

September 16, 2010 oh regarding inverse kinematics that you were talking above i did a
6:09 AM project for my robotic course which i have open sourced .it is robot
By amit simulator with forward kinematics .here is the link for the project
http://sourceforge.net/projects/fanucrobotlrmat/files/. we can
modify it and use it for inverse kinematic calculations.here is the
video of the simulation
http://www.youtube.com/watch?v=b_nJ7FBHsAc&feature=related
and the video of the real robot
http://www.youtube.com/watch?
v=qe0A2p9RvWY&feature=watch_response

Reply

October 16, 2010 Hey, Lary


5:44 AM
Thanks for uploading your work to help others like myself but i need
By donovan
your help with this.
Ive recently got one the arm and I ve been trying to wire it as
instruted, but im having a difficulty. Please explain where the pins
on, lets say chip 1, should be connected on the arduino. The image
seems to be suggesting one thing and the chip outline another.

Appreciate your response

Reply

October 17, 2010 hiya,


8:12 PM
theres a short description I wrote that says which pin of the chip
By larry
I wire to each Arduino pin:

Shoulder motor
chip 1, pin 1 to Arduino pin 14 (Analog pin o)
http://luckylarry.co.uk/arduino-projects/arduino-modifying-a-robot-arm/ 16/25
4/15/2017 Arduino Modifying a Robot Arm Lucky Larry

chip 1, pin 2 to Arduino pin 15 (Analog pin 1)


chip 1, pin 7 to Arduino pin 16 (Analog pin 2)
Base motor
chip 1, pin 9 to Arduino pin 2
chip 1, pin 10 to Arduino pin 3
chip 1, pin 15 to Arduino pin 4
Elbow motor
chip 2, pin 1 to Arduino pin 8
chip 2, pin 2 to Arduino pin 9
chip 2, pin 7 to Arduino pin 10
Wrist motor
chip 2, pin 9 to Arduino pin 5
chip 2, pin 10 to Arduino pin 6
chip 2, pin 15 to Arduino pin 7
Hand motor
chip 3, pin 9 to Arduino pin 11
chip 3, pin 10 to Arduino pin 17 (Analog pin 3)
chip 3, pin 15 to Arduino pin 18 (Analog pin 4)

The diagram of this chip is really there just to explain what each
pin does on these chips.

Let me know if you get stuck

Reply

October 18, 2010 Hey Larry,


10:33 PM
Its Donovan here again. Im stuck. I followed the wiring instrctions
By donovan
but still not getting anywhere.
Let me explain, my knowledge of programming is not very strong
just learning the thing, so i was trying to do this in stages as i was in
your posts.

I wrote the code under the caption The Arduino Sketch uploaded
that but nothing happened. Do i have write all the codes in one
window to have the arm operated from a loptop?

appreciate your reply.

Reply

October 19, 2010 Hey Donovan,


9:41 AM
So you have the Arduino sketch just copy and paste that into
By larry
your Arduino program and upload that program to your board
let me know if there are errors here.

Now you need to leave the arduino board connected and close
the Arduino software and start up the Processing software (get
it from processing.org) and copy and paste that sketch in there
and run that it will then allow you to control the arm using
that simple program by sending/receiving data over the USB
port.

http://luckylarry.co.uk/arduino-projects/arduino-modifying-a-robot-arm/ 17/25
4/15/2017 Arduino Modifying a Robot Arm Lucky Larry

Im a novice at electronics, so I understand when people are just


getting used to programming

Reply

October 19, 2010 [] luckylarry.co.uk/arduino-projects/arduino-modifying-a-robot-


6:24 AM arm/ []
By Spykehand Simply
Reply
Computing

October 19, 2010 Hi Larry just wanted to thank you again for the great tutorial. It
9:02 AM really inspired us and gave us the confidence to tackle this project. If
By Alan you want to see what we came up with Ive just written a blog entry
here:
http://simplycomputing.com.au/archives/37

Reply

October 19, 2010 That Spykee Robot is awesome, well done its impressive
9:37 AM
Reply
By larry

October 26, 2010 Hey Larry,


4:29 AM
Thanks for the info but Ill like you to know that the project is now
By donovan
working fine, at least the Processing sketch worked for me so far. It
took me a while to figure out what i was donig wrong but i think im
getting it now. Really great work you have done with project. Ill be
trying out your suggestion to get the ardunio sketck working too.

Your work has open up my understanding much more in using


Processing, thanks man!

One other thing, would it be ok with you if i borrow a part your code
for a project Im doing? Ill be sure to give you the credit. Im sure my
other friends would be interested in this.

Reply

January 08, 2011 Hey sorry, in the delay in getting back to you by all means
11:48 AM take the code and do what you want with it, love to see what
By larry youve done with it

Reply

December 20, 2010 Hello larry,


6:04 PM

http://luckylarry.co.uk/arduino-projects/arduino-modifying-a-robot-arm/ 18/25
4/15/2017 Arduino Modifying a Robot Arm Lucky Larry
By TheDeadLives I was wondered if i could do that, but transforming the robot arm to
be wireless, using
Arduino Xbee Shield c/Xbee, in order to make the robot wirelessly
connect to the pc, so we could be on one side of the world and the
arm in the other, and control it, from internet (network). Could it be
possible?? And could u do that??

Grateful

Reply

January 08, 2011 Yep, absolutely I dont have an Xbee so cant test btu as long
12:04 PM as the signal gets to the Arduino to then control the motors itll
By larry work fine.

Reply

January 14, 2011 If anyone is interested, i managed to modify the four main motors in
6:06 AM my robotic arm, (which is the same as Larrys) and fitted some
By John Lannigan slotted optos inside, with a bit of care (a hell of a lot actually) I
drilled 6 holes in the brown cog that is directly driven from the
motor. Rough calculations show that the feedback is approximately
1000 pulses for a 180 degree travel. Looking on the scope, i get a nice
square wave out from each motor.

Ive removed the battery clips and cut away some of the plastic that
seperated the two rows of batteries, ready for a home made shield, to
take the Arduino, H Bridges, voltage regulators etc.

For the gripper, ive fitted a current sensing module, that feeds back
the grip pressure to the Arduino, I can preset the amount of grip the
jaws can give, with a similar sensor in the elbow, I would think i
could weigh things..(?)

Its early days yet, as im still playing with the hardware.

Reply

January 14, 2011 The closest I got was attaching rotary encoders to the cogs do
11:06 AM you have any pictures of your modifications? As I think thatd
By larry help a few of us out to see what you did

Reply

January 14, 2011 Yes i have Larry, whats the best way of getting them to you?
4:54 PM
John
By John Lannigan

Reply

http://luckylarry.co.uk/arduino-projects/arduino-modifying-a-robot-arm/ 19/25
4/15/2017 Arduino Modifying a Robot Arm Lucky Larry
January 15, 2011 Hi,
12:03 PM
Ive done an instructable on how to mount the slotted optos inside
By John Lannigan the motor gearbox assembly, i hope you find this useful in modding
your own.

John

http://www.instructables.com/id/Modifications-to-Robot-Arm-for-
Opto-Coupler-Feedba/

Reply

January 16, 2011 thats brilliant!


10:40 AM
Reply
By larry

January 21, 2011 Has anyone ever managed to add a 6th motor for a wrist to this robot
7:25 AM arm, to allow the jaws to rotate?
By John Lannigan
Any ideas of comments would be very welcome, as im tempted to
have a go!

John

Reply

January 21, 2011 Not that I know of cant be too hard to do though, I guess you
10:36 AM just need to cut the forearm part in half and do some clever join
By larry

Reply

January 23, 2011 Stay Tuned Larry, ive removed the jaw section, made a simple gear
12:05 PM box which fits onto the gear box before the jaws, using quite a lot of
By John Lannigan the original parts, some modified, some made, hopefully it should all
work?

John

Reply

February 25, 2011 hi johnjust wondering how can i make a import processing.
8:56 PM serial.*;im having a problem about that issue..could you help
By OZeP_99 me out or give some ideas on how to make itthank you so
much

Reply

February 14, 2011


11:35 PM
http://luckylarry.co.uk/arduino-projects/arduino-modifying-a-robot-arm/ 20/25
4/15/2017 Arduino Modifying a Robot Arm Lucky Larry
By OZeP_99 hi mr larry..im having a problem about this>import
processing.serial.*;dont know why it doesnt work on my
duemilanovedo you have any links to show me how it is done
having problem generating the interfacehoping for your reply
thanks

Reply

March 17, 2011 Hi Larry,


9:00 PM
Can u send me the wiring diagram pls??
By Teodoro

Grateful

Reply

March 29, 2011 Hi Larry


9:12 PM
Im working on a degree project and I have exactly the same robot.
By Namgad
As far as I know, there are 10 external wires ( outside the main robot
unit) for (+ ) V , 2 for each one of five motors. Im trying to
separate motors enable wires.The circuit inside the robot has 3 wires
(red,black,red) on the left side connected by black socket , 2 wires (
black,red) on the right side of the board connected to white socket
and the USB socket. Which one of these are the enabling wires that
would be used to activate the 5 motors ?

Any help would be appreciated

Reply

April 08, 2011 Ah this is interesting when the motors are connected to the
12:30 PM switching circuit it seems to have a common ground between
By larry them on the PCB. Best bet would be to cut the plug off and send
power down each pair of wires until you get a motor to run or
see if you can find information on the colour code, though I bet
its not standard.

Reply

March 29, 2011 good plan:


10:00 PM I have the whole scheme set up like this around, but do not know
By Vanea Pequeno how to be fair
food or whatever is the voltage that I use.

Reply

April 02, 2011 Do you say that the robotic arm has control switches for making
12:45 AM the motors move?
http://luckylarry.co.uk/arduino-projects/arduino-modifying-a-robot-arm/ 21/25
4/15/2017 Arduino Modifying a Robot Arm Lucky Larry
By ivhan if thats true why didnt you just replace the signal sended by the
switches for some transistors, optocoplers, maybe relays(not usefull
if working with PWM), it seems more accurate and you dont need to
use the H bridge that in case of a medium or intermediate power
requirement are expensive. Despite that, your idea seems pretty cool
because you are controlling directly the motors and qhat you were
needing was an acceptable mecanism. (Y)

Reply

April 08, 2011 Its reeally done with the parts I had (and understand). the
12:20 PM control switches were all PCB based so it was easier just to build
By larry my own so I could do that I also thought PWM would have
been accurate with the motors, but turns out not so!

Reply

April 30, 2011 Im interested in building such a robot arm, but Im totally new when
11:02 PM its come to this field (The only skill I have is coding). So, I have a
By Dat question, for connecting jumpers to chips, do I have to know
soldering?

Reply

May 01, 2011 Never mind, figured it with Google


7:38 PM
Reply
By Dat

July 26, 2011 thx Larry you are the best^^ my robo mod
4:53 PM http://www.youtube.com/watch?v=AdYiPQ80Pvc
By mitchman
Reply

August 02, 2011 http://www.youtube.com/watch?v=jUC28lnVTq8 new video^^ hey


12:01 AM lucklarry can i public your code or my mod version on
By mitchman http://www.instructables.com ? you forgot the LED^^ btw thx and
gg

Reply

September 03, 2011 Nice little tutorial thanks! Im a developer, but not really dabbled in
10:57 PM electronics much its fun making stuff move
By Alex Key
http://www.youtube.com/watch?v=57ehTylkzO0

Reply

http://luckylarry.co.uk/arduino-projects/arduino-modifying-a-robot-arm/ 22/25
4/15/2017 Arduino Modifying a Robot Arm Lucky Larry
September 10, 2011 cool nice hack http://www.youtube.com/watch?v=jUC28lnVTq8
11:21 PM
Reply
By mitchman

September 26, 2011 Would I be able to use the Arduino UNO instead of the Arduino
8:49 AM Deumilanova w/ ATMEGA328? I am trying to hack this arm as well
By Nidal for a studio project.

Reply

January 08, 2012 Did you find out if this can be done with the UNO? Im trying it
6:29 AM with an UNO and not getting any response. Could be that Im
By dudleyjohn just a noob at this and made a dumb mistake. Id like to know if
its possible, though, so I dont keep going down a blind alley.

Reply

January 15, 2012 Well, they have the same 328p processor and pinouts, so
2:27 PM they should both work the same, right?
By dudleyjohn
Reply

January 22, 2012 Its working om the UNO! Cool!


4:32 AM
Reply
By dudleyjohn

September 27, 2011 [] figured someone else must have done this, so I googled it, and
7:30 PM indeed,this guy did something similar. Cool. Nice to have someone
By RobotRanch Mad figure out the details. And I can learn while []
Chomp
Reply

February 22, 2012 hello!! Im happy i found your site.. i am planning to make this
8:58 AM one..where do i can buy this robot kit?
By BOLOGTOY
Reply

March 23, 2012 Really interested blog. I would like to know if the Arduino
4:26 AM Deumilanova w/ ATMEGA328 can be used to control a MA2000
By mario robotic arm? Also could you provide a schematic diagram for the
circuit within the blog? Thanks in advance.

Reply

March 26, 2012


http://luckylarry.co.uk/arduino-projects/arduino-modifying-a-robot-arm/ 23/25
4/15/2017 Arduino Modifying a Robot Arm Lucky Larry
9:37 PM Hi Larry. my name is Edgar Acosta, i have a project of moving 6
By Edgar Acosta motors with Arduino Uno.

I am following your project but i have a question, in the protoboard


who will manage the motors, in your picture in the GND and PWR
lines appears a component that seems a Resistor, am i right, i really
appreciate if you can specify this component, i dont know what it is?

Thank you

Reply

April 29, 2012 Edgar, its not any sort of component, its just a short jumper
3:19 AM wire with a bit of red insulation
By Andrew Scheller
Reply

May 30, 2012 Wouldnt be easy just to change the DC motors to servo motors? Can
4:39 PM this be done?
By Felipe
Reply

August 27, 2012 Im interested in this also and from what I can see it look likes
9:36 AM they can be driven directly from the Arduino board without
By Dean needing an additional driver shield board.

Reply

August 16, 2012 i want to know of the robot arm kan lift 250 gr, because i like to use it
6:06 AM for winding my watches, 5 0r 6 each time, one by one,
By hans Thanks
Hans

Reply

August 26, 2012 Hi Larry


11:10 AM
I wanted to use a DC power supply to run my arm so I tried
By Dean
connecting a 6V 300ma DC adapter to the battery terminals and it
worked ok when 1 motor was moving but when 2 or more motors
were in use they slowed down to a crawl. I assumed this was because
there wasnt enough current so had a 5v 1amp adapter and tried that.
It worked for a few seconds then some smoke came out of the circuit
board I should point out that Im not much good at electronics!
Now only 2 of the motors work the 3 that dont are connected to chip
which I assume Ive fried.

My question is have you managed to run the motors from a DC


supply?

http://luckylarry.co.uk/arduino-projects/arduino-modifying-a-robot-arm/ 24/25
4/15/2017 Arduino Modifying a Robot Arm Lucky Larry

This link is for a guy who has added small trim pots to the arms to
measure their position creating a closed feedback loop. He uses the
Arduino Uno and a motor shield and its a project was going to try.
http://www.instructables.com/id/Intro-and-what-youll-need/

I wrote some code to simulate keypresses to automate the arm and a


trick I used to stop the arm travelling after the key is releases is apply
reverse power to the motor for a split second to stop it continuing to
move.

Reply

Join the Discussion

Name (required) Your Comment

Email (required)

Website

You may use these HTML tags and attributes: <a href=""
title=""> <abbr title=""> <acronym title=""> <b>
<blockquote cite=""> <cite> <code> <del
datetime=""> <em> <i> <q cite=""> <s> <strike>
<strong>

Post Comment

Arduino Projects Electronic Projects

Programming tutorials Robot Projects

Other Projects Travel

http://luckylarry.co.uk/arduino-projects/arduino-modifying-a-robot-arm/ 25/25

You might also like