BasicMicro - Forums

www.basicmicro.com
It is currently Mon May 21, 2012 8:22 pm

All times are UTC - 8 hours [ DST ]




Post new topic Reply to topic  [ 11 posts ] 
Author Message
 Post subject: Position needed to disable a hservo pin?
PostPosted: Sun Sep 12, 2010 7:13 pm 
Offline
Master
User avatar

Joined: Tue Jul 07, 2009 9:06 am
Posts: 120
Location: Wisconsin USA
Like the title ask, the manual said -16000, which didn't work, almost destroyed a servo.

What's the range for a BAPro 28, to disable a servo?
I want to "turn off" the servo.
My servos are a bit goofy, they start to fight back if theres even a tiny bit of force on them, so little force that they wouldn't even move by themselves.

So while my bot is at rest, i want to simply turn off the servos.
I saw a thread about it a while back, but i can no longer find it, and i've been looking for about an hour now.
All the ones i've seen say -16000.

I set the speed to 50, and had my finger on my power switch, just incase since -16000 didn't seem right.
Only thing that saved the servo.

_________________
Image
Basic Micro Blog
Universal Robot Controller


Top
 Profile  
 
 Post subject: Re: Position needed to disable a hservo pin?
PostPosted: Mon Sep 13, 2010 2:05 pm 
Offline
Master

Joined: Tue Nov 21, 2006 9:34 am
Posts: 528
For Bap28 try -24000. For Bap40/Arc32 try -30000

More information up on the Lynxmotion thread: http://www.lynxmotion.net/viewtopic.php ... 4&start=17

Kurt


Top
 Profile  
 
 Post subject: Re: Position needed to disable a hservo pin?
PostPosted: Wed Sep 15, 2010 8:38 am 
Offline
Site Admin
User avatar

Joined: Thu Mar 01, 2001 11:00 am
Posts: 903
Location: Temecula, CA
On 16mhz AtomPros it is -24000. In 20mhz AtomPros(ARC32 and AtomPro40) it is -30000. The -16000 was from an older version of the HSERVO system. -24000 and -30000 equate to a value of 0 in the hservo position buffer. Which allows the interrupt handler to quickly check if the servo should be active or not.

_________________
Tech Support
Basic Micro - Robotic Technology Evolved


Top
 Profile  
 
 Post subject: Re: Position needed to disable a hservo pin?
PostPosted: Wed Sep 15, 2010 8:57 am 
Offline
Master

Joined: Tue Nov 21, 2006 9:34 am
Posts: 528
I forgot to mention in my previous reply that: This only works for Analog servos like hitec HS-645 (and all cheap servos). That is the -24000 on your BAP will stop the pulses from being generated, but digital servos like HS-5645 will continue to hold their positions without the pulses...

Kurt


Top
 Profile  
 
 Post subject: Re: Position needed to disable a hservo pin?
PostPosted: Wed Oct 06, 2010 3:15 am 
Offline
Master
User avatar

Joined: Tue Jul 07, 2009 9:06 am
Posts: 120
Location: Wisconsin USA
Ok well, i'd like to request that 24000 be out of range too.

I finally started working on my code as i had a couple hours of free time, put in 24000, completely forgot about the -

Long story short, got half a dozen stripped gears and a few servos that dislodged themselves from my bot.
Good thing they are cheap servos, but still, now i have to replace like half a dozen servos if i want to switch to a more sensitive project.



On the bright side, the way these servos are designed in a way to keep going even with a couple missing teeth on the gears.
And since i'm using it on a hexapod and not a helicopter or airplane a few broken teeth won't exactly leave it crashing and burning.

_________________
Image
Basic Micro Blog
Universal Robot Controller


Top
 Profile  
 
 Post subject: Re: Position needed to disable a hservo pin?
PostPosted: Wed Oct 06, 2010 8:56 am 
Offline
Site Admin
User avatar

Joined: Thu Mar 01, 2001 11:00 am
Posts: 903
Location: Temecula, CA
The reason -24000(and -30000) are the stop positions is because those values are stored as 0. The range of the servo is stored as a 0 to 48000 or 0 to 60000 word. When you call the hservo command it adjusts the +- value you put in by adding 24000 or 30000. I'll change the hservo command to put any value outside of it's legal range as disabled as well (eg 0 internally). That still means if you put too large a legal value in you can strip your cheap servo gears. Note that on better servos the range is limited and or the servo gears are strong enough not to strip. The only servos I've ever used that could strip themselves were the micro/mini servos. All other servos I've used either couldn't strip their own gears mechanically (not enough torque, strong gears) or they were digital and ignored any out of range signals.

_________________
Tech Support
Basic Micro - Robotic Technology Evolved


Top
 Profile  
 
 Post subject: Re: Position needed to disable a hservo pin?
PostPosted: Thu Oct 07, 2010 1:38 am 
Offline
Master
User avatar

Joined: Tue Jul 07, 2009 9:06 am
Posts: 120
Location: Wisconsin USA
Gotcha.
Ya these servos are 1.5kg/cm, which is pretty good for a 7g servo. It's all i could afford.
They didn't fully strip, it's just a few broken teeth.
If no one objects, could you program 24000/30000 to act the same as their negative counterparts?
IE make 48000 and 60000 revert back to 0.

or even a whole new command.
hservostop [p1,p2,p3] etc

It's more of a safety concern, and the hservostop would be easy for anyone to learn or remember.
My problem was, i remembered the number was 24000, just not that it was -24000.

As a safety precaution, or a simplified command, it could save a few more servos in the long run. I doubt i'm the first to make this mistake, and i doubt i'll be the last. But if a simple command can be added, users could encounter a bit less physical damage to their bots.

_________________
Image
Basic Micro Blog
Universal Robot Controller


Top
 Profile  
 
 Post subject: Re: Position needed to disable a hservo pin?
PostPosted: Thu Oct 07, 2010 1:43 am 
Offline
Master

Joined: Sun Aug 17, 2008 5:26 pm
Posts: 798
Location: CA bay Area
What kind of gear design allows you to lose or strip teeth but still work satisfactorily? Is there a name for this feature?

_________________
kenjj
http://blog.basicmicro.com/
http://kjennejohn.wordpress.com/


Top
 Profile  
 
 Post subject: Re: Position needed to disable a hservo pin?
PostPosted: Thu Oct 07, 2010 9:03 am 
Offline
Site Admin
User avatar

Joined: Thu Mar 01, 2001 11:00 am
Posts: 903
Location: Temecula, CA
The micro/mini servos are pretty horrible about being able to strip themselves. Because of the limited room plastic gear micro/mini servos just don't have enough strength to stop it from happening(I've got a coupld that I did the same thing too a long time ago). The metal gear micro/mini servos don't strip from what I hear(I think Jim told me).

I plan on making 24000/30000 as well as all values above that and -24000/-30000 and all values below that disable the servo.

_________________
Tech Support
Basic Micro - Robotic Technology Evolved


Top
 Profile  
 
 Post subject: Re: Position needed to disable a hservo pin?
PostPosted: Thu Oct 07, 2010 10:11 am 
Offline
Master

Joined: Tue Nov 21, 2006 9:34 am
Posts: 528
Acidtech wrote:
I plan on making 24000/30000 as well as all values above that and -24000/-30000 and all values below that disable the servo.


Sounds good. Of course if you end up sending a -24000 instead of -30000 on an Arc32 machine and generate maybe a 300ms pulse may also strip the gears. The problem is I would not disallow this because maybe that is what the user wanted... (Not the striped gears but maybe some servos or other devices may have special meanings for out of range signals. Like with Hitec HMI based servos (HSR...), a pulse of 50ms does something special: This is the start of the protocol where the HSR servo can tell the controller where it is...

Kurt


Top
 Profile  
 
 Post subject: Re: Position needed to disable a hservo pin?
PostPosted: Thu Oct 07, 2010 12:42 pm 
Offline
Master
User avatar

Joined: Tue Jul 07, 2009 9:06 am
Posts: 120
Location: Wisconsin USA
kenjj wrote:
What kind of gear design allows you to lose or strip teeth but still work satisfactorily? Is there a name for this feature?


Oh i didn't say i was satisfied with how they still work.
The last gear that connects to the servo horn, is a partial gear. Instead of having a small plastic piece on the gear to block the other gear- the main gear has a gap in the back, in which a small plastic tab inside the plastic case is.
I'm not sure i can explain it, and i definitely cant photograph it.

What'll happen is it'll break usually 1 or 2 teeth on the middle gears, the motor will continue to turn and pass that tooth. So as long as the main servo-horn gear gets to the right position, all is well.

Just now theres an annoying click everytime it passes a broken tooth. Remember, until it reaches the desired position, that motor will keep turning.

These are the servos i'm using.
http://www.hobbypartz.com/60p-dy-1002.html
Two 7g servos for $3.40, That's as cheap as they come. Their gears are weak. this is due to the limited space.
you can protect these by limiting the speed, if the servos move slowly and then try to move past their limit, they will simply stall, but if you don't limit their speed the acceleration and torque will just strip a tooth or 2.

These are the servos i want.
http://www.hobbypartz.com/servo-mg90.html
I have 1 on my rovers robotic arm, and i love it, It's small, and it's strong, and it has metal gears.

This one here is a good alternative
http://www.hobbypartz.com/servo-mg90s.html
The MG90 has ball bearings, the MG90s has sleeve bearings.

If anyone wants to donate servos, feel free to pm me. Even if they are broken, fried, i don't care, i'll salvage them, That's what i do, salvage stuff.

Eventually when i get enough money i'll buy 20 of these:
http://www.hobbypartz.com/servo-mg946r.html
or
http://www.hobbypartz.com/servo-mg996r.html


KurtEck
Couldn't the user just use pulseout then? If you need specific pulses for special servos, using the pulseout command, i would assume, would be the better choice. You wouldn't need to do any math to figure out the hservo value.

_________________
Image
Basic Micro Blog
Universal Robot Controller


Top
 Profile  
 
Display posts from previous:  Sort by  
Post new topic Reply to topic  [ 11 posts ] 

All times are UTC - 8 hours [ DST ]


Who is online

Users browsing this forum: No registered users and 1 guest


You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot post attachments in this forum

Jump to:  
cron
Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group

phpBB SEO