
afcorson

The dreaded jumping servo problem has arisen again - just today. All servos in the robot are HDD. The servo on port D0 now jumps after connecting, to about 35 degrees instead of 90 degrees. If I move the servo manually when turned off, the centre position is still 90 degrees, so the sprocket has not shifted. My INIT script has not changed. That servo is set to 90 degrees. Has anyone had this problem before? I am thinking I might have to replace the servo and see what happens. My previous problems with jumping servos were because I had a HD servo. But not this time.
You can reach EZ-Robot, who makes the servos in question at www.ez-robot.com and they'll be able to answer more questions for ya.
it looks when you connect to your ARC a second later . its rather violent .
Synthiam does not have the resources to support third party products. Contact the manufacturer please.
can i ask for rethinking this?
the HDD servo dont move when ad power to it.
they do move a little when connect to ARC .
they move violent when added servospeed in a script .
Setting servo speed and positions are kind of hard to wrap your head around. How and when you specify the ServoSpeed changes depending if you've already used the ServoSpeed command yet. I've had trouble remembering how to do it at times. According to the servo script help in ARC:
The servo speed is a number between 0 (fastest) and 10 (slowest)
*Note: To initialize the ServoSpeed() at first use, set a Servo() position before using the ServoSpeed() command. If there is no previous position (such as during power-on), the software assumes the position is 0 and will cause issues with your robot.
*Note: Once the ServoSpeed() has been initialized the first time, specify the ServoSpeed() before specifying the Servo() position.
Example: ServoSpeed(D14, 25)
EDIT: This is an entirely different issue to what the OP is having. However it may be helpful for some: This method has helped me in the past with a servo "jumping" or "jerking" a little when power is applied. To stop this effect I used a relay to apply power to a critically placed servo after I've initialize it for the first time in the above way in my INT script. This stopped that jerking effect for me.
No relay or anything can ever stop a servo from moving into a position if you ask it to. The point to asking a servo to move is to have it move. If you don’t want the servo to move, don’t ask it to move.
You see, a servo only knows where it is when it’s in a position. When you power on the robot, the servos don’t know a position. They only sit and wait to be told what to do. So when you instruct the servo to move into a position, it does so.
read how a servo works from Synthiam support section here: https://synthiam.com/Support/Advanced-Fundamentals/servo-motor
thank you .
dave thank you