Master-Slave Robotic Arm using Potentiometers

Hi there,
I'm very new to Arduino. I recently saw a couple videos that have sparked my interest in using Arduino, these two in particular:

I'm trying to figure out what parts I would need to buy in order to do this. I think I need 6 servos and 6 potentiometers, but further than that, I have no idea what I'm doing. Can somebody lead me in the right direction on what parts I'll need and any other advice concerning this project?

Oh and also, I have a set of vex servos, can I use them with Arduino?

If you only want to make an electronically controlled pantograph, I imagine that you could do that by having a hinged mechanism with a servo at each pivot, and an equivalent one with a potentiometer at each joint. Make each servo track the position of each potentiometer, and that seems to be what you're after.

In its simplest form, given that servos are controlled by a PWM signal, all you need is a PWM generator for each joint that has the pulse width determined by the pot position. That should be easy enough to achieve with an NE555 timer.

If the arm is bigger/heavier then the inertia of the arm itself may become an issue; do avoid destroying your servos you would want to arrange for the arm to be more-or-less neutrally balanced, and have a control algorithm which managed the acceleration/deceleration to keep the loads within the capability of the servo rather than just telling it to snap to a position and hope it won't shred the gears. If you are planning to use that sort of approach, I'd suggest using a PID algorithm and an Arduino would be an ideal platform to run it on.

Okay I'm going to sound kind of dumb here, but what parts exactly should I buy?
I honestly have no idea what I'm doing and I want to learn through this project.

This is the list I currently have:
Arduino Duemilanove
Breadboard Jumper Wire Bundle
Half-Size Breadboard
Male to Female Servo wires (for pots) - x6
Bourns potentiometer rotary, 100KOHM 250mW - x6

In its simplest form, given that servos are controlled by a PWM signal, all you need is a PWM generator for each joint that has the pulse width determined by the pot position. That should be easy enough to achieve with an NE555 timer.

Totally bad answer. Servos use PPM control signals. Use the servo library. The knob example in the IDE servo example list is the place to start. You will need a fairly strong power supply for the servos.

I don’t think you guys understand what I’m asking. I want to know how to build a circuit that will support all this.

EDIT: I see the list on the example now.
I’m going to attempt to build this. I’ll post an update in a week or so after all the parts get here and I’ve tried it.

EDIT: Looking at http://arduino.cc/en/Tutorial/Knob, is it possible to utilize a breadboard and use more than one servo and potentiometer?

below is a basic wiring setup for a servo. Powering a servo from an arduino usually has issues.

zoomkat:
below is a basic wiring setup for a servo. Powering a servo from an arduino usually has issues.

Thank you, but I need to include 6 pots and 6 servos. I don’t know how to do that.

Thank you, but I need to include 6 pots and 6 servos. I don't know how to do that.

You get one pot and one servo working first, then expanding the number should be easier for you. You may want to do a google advanced search this forum (like below) for previous post concerning joysticks (two pots) and servos.

http://www.google.com/search?q=servo+joystick+site%3Ahttp%3A%2F%2Farduino.cc%2Fforum%2Findex.php&hl=en&num=100&lr=&ft=i&cr=&safe=images

zoomkat:
Totally bad answer. Servos use PPM control signals. Use the servo library. The knob example in the IDE servo example list is the place to start. You will need a fairly strong power supply for the servos.

I don’t understand why you say it’s a bad answer.

Standard radio control servos use pulse width modulation (typically at 50Hz last time I looked), with a varying duty cycle that defines the target position for the servo. You don’t need an Arduino to generate that, you just need an oscillator. You don’t see an Arduino inside any radio control handsets, do you?

If you only want each servo to track the position of the corresponding potentiometer, without any other smarts, you can do that quite easily in hardware. I suggest that if you can follow basic electronics well enough to make sense of the NE555 sample circuits and know which end of a soldering iron to hold, doing it in hardware would probably be the quickest, cheapest and most reliable way. In effect, you eliminate the ‘radio’ part of the link and replace each joystick with a separate pot. (Or, if you have a couple of RC systems lying around and want to keep the ‘radio’ part too, just replace the joystick pots with the pots on your pantograph.

If you’re looking for a fun Arduino project there’s absolutely no reason not to use your Arduino to read the pots and generate the PWM signals, and this gives you the opportunity to be smarter about what you tell the servos to do, but it’s by no means necessary to get something working. Servo control projects are very popular with Arduinos and you’d be following a well-trodden path. I’m just saying that if your goal is to solve the problem (rather than do an Arduino project) there are other options.

I’m just saying that if your goal is to solve the problem (rather than do an Arduino project) there are other options.

Well, 1) this an arduino forum for mostly (but not all) arduino projects and questions, hense the “I’m very new to Arduino. I recently saw a couple videos that have sparked my interest in using Arduino, these two in particular:”. 2) Your suggestion of using PWM may have lead to using the arduino analogwrite PWM with a servo, which generally does not successfully control a servo.

PeterH:

zoomkat:
Totally bad answer. Servos use PPM control signals. Use the servo library. The knob example in the IDE servo example list is the place to start. You will need a fairly strong power supply for the servos.

I don't understand why you say it's a bad answer.

Standard radio control servos use pulse width modulation (typically at 50Hz last time I looked), with a varying duty cycle that defines the target position for the servo. You don't need an Arduino to generate that, you just need an oscillator. You don't see an Arduino inside any radio control handsets, do you?

If you only want each servo to track the position of the corresponding potentiometer, without any other smarts, you can do that quite easily in hardware. I suggest that if you can follow basic electronics well enough to make sense of the NE555 sample circuits and know which end of a soldering iron to hold, doing it in hardware would probably be the quickest, cheapest and most reliable way. In effect, you eliminate the 'radio' part of the link and replace each joystick with a separate pot. (Or, if you have a couple of RC systems lying around and want to keep the 'radio' part too, just replace the joystick pots with the pots on your pantograph.

If you're looking for a fun Arduino project there's absolutely no reason not to use your Arduino to read the pots and generate the PWM signals, and this gives you the opportunity to be smarter about what you tell the servos to do, but it's by no means necessary to get something working. Servo control projects are very popular with Arduinos and you'd be following a well-trodden path. I'm just saying that if your goal is to solve the problem (rather than do an Arduino project) there are other options.

Okay, if I go this route, do I NEED a breadboard for every circuit, or can I just solder the wires together without a breadboard?

joewebster:
Okay, if I go this route, do I NEED a breadboard for every circuit, or can I just solder the wires together without a breadboard?

A breadboard is never required. They're a quick and convenient way to hook up a circuit, but soldering the wires together will also work. Worth noting, though: it's a lot easier to pull something off a breadboard if you make a mistake than it is to desolder it. Put it together on the breadboard until you're certain you have the circuit correct, then break out the soldering gun.

It's not necessary to have more than one if you can fit the entire circuit on it.