Pages: [1] 2   Go Down
Author Topic: Questions about servos  (Read 1043 times)
0 Members and 1 Guest are viewing this topic.
Offline Offline
Newbie
*
Karma: 0
Posts: 31
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Hello everyone:
I'm an Arduino newbie teacher who wants to make a robotic arm project with pupils. In order to accomplish that I need to use some servos, and although I have read a lot of articles and information on the topic I still have some doubts:
- Can I use digital servos with Arduino? I have practised with the examples and I manage to control an analog servo without problems but I know digital servos use a faster pulse signal and I do not know if I can connect them to the board and if I need to change the code.
- Can I use higher voltage servos? In case I need more power for the arm I would need to use servos working at 6 or 7 V, instead of 5. Can I use the ground and 5 V pins from Arduino board and use an external higher voltage pin from a different source?
- I'll use a servo for the grip but I do not know how to handle when the grip grabs objects, i.e., if I close it I'll have to move the servo to the 'closed' position, but if there is an object it will not reach that position and the servo will drive more current from the power line and probably it will suffer higher stress. Am I correct? If it is true, how could I stop the servo when the object is already grabbed?

Thank you in advance for your help.
Rafael
Logged

Miramar Beach, Florida
Offline Offline
Faraday Member
**
Karma: 115
Posts: 5380
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Digital servos should work with an analog driver setup, but not the other way. The digital update time is much faster (up to 400/sec rather than 30/sec), and the analog types will not function at that update speed.

The control input at 5v should function fine on higher voltage servos. Just keep those control and power wires separate!

The "grab" function will be up to you. Pressure sensitive resistors on the "fingers" would be helpful in controlling the pressure applied to the grabbed object. Or you could use a current sensor circuit on the servo power supply to determine power applied to the servo. When the servo stalls, the current will rise pretty fast.
Logged

0
Offline Offline
Tesla Member
***
Karma: 116
Posts: 8942
Arduino rocks
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

-if the digial servo is made for use with standard RC equipment, then the arduino servo library probably can control it. Note hat digial servos ofen require a $$$ programmer to change the rotation limits if they are not what you desire.

- as the arduino board cannot supply the current to operate most servos, you will need to use an external power supply. Usually his can be what ever voltage is recommended for the servo (the servo ground and arduino grounds need to be conneced). Analog servos work much better when supplied ~6v than ~5v.

-There are various gripper force detection setups (force resistors, limit switches, etc.), so you need to study up on what would work for you. Look at the commercial hobby servo arms and the many different servo arm designs on youtube to get some construction ideas.
Logged

Consider the daffodil. And while you're doing that, I'll be over here, looking through your stuff.   smiley-cool

Offline Offline
Newbie
*
Karma: 0
Posts: 31
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Thank you for your help.

From what you say, digital servos are OK for Arduino, but if I use the code in the servo example:
            myservo.write(val); 
is the performance affected for the lower update rate?

Regarding the grip, I have seen many designs in Internet and they use servo for the open/close function. The problem I foresee is the one I explained: when grabbing objects the servo may drain a high intensity. Do you think it would be acceptablefor the system? Because setting up finger detector or similar would be too complex for my pupils.

Regards
Rafael
Logged

0
Offline Offline
Tesla Member
***
Karma: 116
Posts: 8942
Arduino rocks
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Quote
From what you say, digital servos are OK for Arduino, but if I use the code in the servo example: myservo.write(val); is the performance affected for the lower update rate?

The difference in update rates is for the H-bridge internal to the servo, not the servo control updates.

Quote
Regarding the grip, I have seen many designs in Internet and they use servo for the open/close function. The problem I foresee is the one I explained: when grabbing objects the servo may drain a high intensity. Do you think it would be acceptablefor the system? Because setting up finger detector or similar would be too complex for my pupils.

Without the gripper closed detection, the servo may be ok, may overheat, or with the very small servos, the internal gears may strip. Might be a good project for you and the students to research and develop a way to detect when the gripper has closed on an object or a method to limit the stress on the gripper servo.   
Logged

Consider the daffodil. And while you're doing that, I'll be over here, looking through your stuff.   smiley-cool

Miramar Beach, Florida
Offline Offline
Faraday Member
**
Karma: 115
Posts: 5380
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

zoomkat is correct. If you do not limit the power applied to the servo, it will burn up or strip the gears.

The simplest pressure limit I have used is a contact switch with a spring. Adjust the spring size to apply the correct pressure to the gripped object when the contact switch is closed as the spring is compressed.
Logged

Offline Offline
Newbie
*
Karma: 0
Posts: 31
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Ok for the digital servo. I'm also a R/C hobbyist and some helis use a digital servo for the tail control, attached to a gyro, which has a switch to select either analog or digital servo, and if you select it the wrong one you could damage the servo or the gyro. And I thought it was the same for this situation.
Again with the grip, I understand that I should do something to prevent the servo damage. Do you know of any shield that I could use to power the servo and at the same time control the intensity that it drains so when it is too high I could stop it?

Thank you
Rafael
Logged

Global Moderator
UK
Offline Offline
Brattain Member
*****
Karma: 239
Posts: 24371
I don't think you connected the grounds, Dave.
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

@SurferTim:  where do those 400 Hz and 30Hz figures come from?
The PPM rate into the servo is 50Hz, whether analogue or digital.
Logged

"Pete, it's a fool looks for logic in the chambers of the human heart." Ulysses Everett McGill.
Do not send technical questions via personal messaging - they will be ignored.

Miramar Beach, Florida
Offline Offline
Faraday Member
**
Karma: 115
Posts: 5380
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

@AWOL: Datasheets. I use 30 updates/sec whether analog or digital. I have always found the the limiting factor is the number of servos. It takes at least 2ms to update each servo. Roughly 1000us min, 1500us median, 2000us max. The difference is the time required between updates. Digital servos seem to be able to take updates quicker. I have not tested that.
Logged

0
Offline Offline
Tesla Member
***
Karma: 116
Posts: 8942
Arduino rocks
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

@SurferTim:  where do those 400 Hz and 30Hz figures come from?
The PPM rate into the servo is 50Hz, whether analogue or digital.

The difference appears to be the PWM internal to the servo that is driving the internal H-bridge and is independent of the PPM control signal. It is said that the higher PWM controlling the H-bridges in the digital servos helps them hold position better (but could just be speculation).
Logged

Consider the daffodil. And while you're doing that, I'll be over here, looking through your stuff.   smiley-cool

Global Moderator
UK
Offline Offline
Brattain Member
*****
Karma: 239
Posts: 24371
I don't think you connected the grounds, Dave.
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

@SurferTim.
Links to data sheets showing 30Hz updates, please.
It's been 50Hz for at least the 30 or so years I've been using what used to be called digi-prop R/C systems.
Logged

"Pete, it's a fool looks for logic in the chambers of the human heart." Ulysses Everett McGill.
Do not send technical questions via personal messaging - they will be ignored.

Miramar Beach, Florida
Offline Offline
Faraday Member
**
Karma: 115
Posts: 5380
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

@SurferTim.
Links to data sheets showing 30Hz updates, please.
It's been 50Hz for at least the 30 or so years I've been using what used to be called digi-prop R/C systems.
You can use what you use. I will use what I use. smiley

Like I said, I know 30 updates/sec works. I know that some digital systems will not use analog servos.

I have nothing left to add.
Logged

Global Moderator
UK
Offline Offline
Brattain Member
*****
Karma: 239
Posts: 24371
I don't think you connected the grounds, Dave.
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

30 Hz is fine, if you're comfortable with reduced torque.
Logged

"Pete, it's a fool looks for logic in the chambers of the human heart." Ulysses Everett McGill.
Do not send technical questions via personal messaging - they will be ignored.

Miramar Beach, Florida
Offline Offline
Faraday Member
**
Karma: 115
Posts: 5380
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

I lied! I have one more thing to say: Quick to criticize, slow to help.
Logged

Global Moderator
UK
Offline Offline
Brattain Member
*****
Karma: 239
Posts: 24371
I don't think you connected the grounds, Dave.
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Criticise?
No, I only corrected, to stem the spread of disinformation.
That's helpful, in my book.

Quote
I lied!
About the datasheets?
« Last Edit: December 26, 2011, 04:59:59 pm by AWOL » Logged

"Pete, it's a fool looks for logic in the chambers of the human heart." Ulysses Everett McGill.
Do not send technical questions via personal messaging - they will be ignored.

Pages: [1] 2   Go Up
Jump to: