Shop OBEX P1 Docs P2 Docs Learn Events
Why won't PULSOUT 5, 750 center my servo? — Parallax Forums

Why won't PULSOUT 5, 750 center my servo?

SN96SN96 Posts: 318
edited 2005-09-13 00:17 in BASIC Stamp
Hello guys,
·
I have the "What's a micro controller" starter kit that came with the Homework board. I was programming the servo and was able to get it to do what ever I want with no problems, however, when I pulse the servo to 750, the servo horn is off to one side from center. If I remove the horn, and try to reposition to point straight up, the spline teeth wont allow it. The servo horn goes on either just to the right or just to the left. I was able to fix this by pulsing out to 710.
·
I also noticed that when pulsed out to 750 and then I gently turn the servo horn by hand to hit the stop in one direction, then all the way to the other stop going the other direction, the difference from center position is off.
·
What I did to fix all this mess it to rotate the servo by hand (gently) to hit the stop, the remove the horn and re-clocked it to 90 Deg. of the stop. I repeated this step over and over until I had equal amount of travel from center position to each stop. I end up with a PULSOUT value not equal to 750 to get center, instead it is more like 700 or 710 (I can't remember the exact number).
·
Is this normal? Are all servos not created equal?

Thanks

Mike

·

Comments

  • steve_bsteve_b Posts: 1,563
    edited 2005-09-12 13:31
    Care to post your code?

    Remember, in a loop you need a pause of 20 in between pulsouts.

    ▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
    ·

    Steve

    "Inside each and every one of us is our one, true authentic swing. Something we was born with. Something that's ours and ours alone. Something that can't be learned... something that's got to be remembered."
  • Jon WilliamsJon Williams Posts: 6,491
    edited 2005-09-12 13:33
    All servos are not created equal. On our continuous rotation servos we have added an adjustment so that you can get the servo to stop precisely at a BS2 PULSOUT value of 750 (1500 us).

    ▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
    Jon Williams
    Applications Engineer, Parallax
  • Chris SavageChris Savage Parallax Engineering Posts: 14,406
    edited 2005-09-12 14:09
    Mike,

    ·· I think that you are thinking the servo horn should be in the center.· But the center point of the servo is independant of the actual position of the servo horn.· You can verify this by removing the servo horn and placing a sticker on the spline/shaft while the servo is being sent it's center PULSOUT value.· Now send commands to move the servo left and right and back to center.· You will see the servo return back to this position.· The actual horn, mounted on the servo could be facing in any direction and the servo could still be in it's center position.· I hope I cleared that up enough to be understandable.· =)


    ▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
    Chris Savage
    Parallax Tech Support
    csavage@parallax.com
  • allanlane5allanlane5 Posts: 3,815
    edited 2005-09-12 15:40
    Correct, not all servo's are equal.

    Inside your servo, there's a variable resistor being rotated by the same gearing that drives the output shaft. It is the resistance of this resistor that allows electronics inside your servo to drive the shaft to a particular position. In your case, that variable resistor seems to be slightly off from exact 'center'.

    And parallax DOES enable their servo's to have their variable resistor's tweaked by a screwdriver to make 750 be an absolute center.

    Note that most servo's are used on model airplanes. Their position is set by a radio-control with a joystick on it. The radio-control also has a 'trim' setting, which allows you to zero the airplane's control surfaces should the servo be a little off.

    Result: you either need to be content with the 710 'center' position, or try another servo, or try to adjust the one you have.
  • SN96SN96 Posts: 318
    edited 2005-09-12 21:18
    Thanks for all the input guys.I just wanted to know If I was doing something wrong. I have been able to get the servo to exact center via code, it just means I will have to use 710 instead of 750. I also am aware the servo horn has nothing to do with the center position since it can be attached in any position. This is why I used the stops as my referance to find center between each stop.

    Everything is A-OK here, I just wanted to make sure I was not missing some tiny detail.

    Thanks again
    Mike
  • Beau SchwabeBeau Schwabe Posts: 6,557
    edited 2005-09-13 00:17
    I think I understand what you are saying...

    I just came across some specs on a servo that has a minimum width of 1000uS and a maximum width of 1900uS,
    however the center was still stated to be at 1500uS. In a situation such as this "TRUE" center may not be at 750uS,
    but at 725uS for the above values (Assuming the Servo has a linear response).

    reference:
    www.robotstore.com/download/395743_HS225bbspec.pdf


    Assume linear operation:
    Center = (Min + Max)/2

    ▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
    Beau Schwabe

    IC Layout Engineer
    Parallax, Inc.
Sign In or Register to comment.