Feedback 360 High speed Continuous servo Motor + Raspberry Pi 3 B+

Hello all. I am new to using this servo. I want to understand somethings:

Firstly, could someone explain what the yellow female connector is for? This motor has the standard three wires(red, black and white). I don't know if the stand alone yellow wire is absolutely necessary for my project.

That being said, How would i make my motor rotate 30 degrees using it with the Raspberry Pi 3 B+ in python? I wrote a piece a code to make it rotate but i need it to rotate once. It should not continuously keep rotating. Any help would gladly be appreciated. Thanks

Comments

  • Hello !

    I think you mean this product: Parallax Feedback 360° High Speed Servo

    That has a yellow wire, which is feedback giving the current position of the motor. Saves having an external encoder, which would typically be used to enable better positional accuracy.

    If you check the "Documents and Downloads" tab at the product page, you'll find full details about how it works:
    https://www.parallax.com/product/900-00360#downloads

    In your code, you could take the input signal from that yellow wire, and use that to stop the servo when 30 degrees has been turned. You'll need to do a little experimenting, but the document link above will help you, and the same link has some C sample code too.



  • ercoerco Posts: 19,426
    Welcome landorp. I'm certain you'll want to start with a regular servo, not a feedback 360 servo. That way you don't need to deal with the mysterious wonders of that yellow feedback wire and the servo will simply go to (and stop at) the position commanded by a series of pulses. Plenty of info out there on Google about controlling standard servos. RasPi is amazing, but if you're just starting out, your needs may be better served by a Parallax Stamp or Prop chip, and their award-winning, world-class educational and support material. That's why we're all here!
    "When you make a thing, a thing that is new, it is so complicated making it that it is bound to be ugly. But those that make it after you, they don’t have to worry about making it. And they can make it pretty, and so everybody can like it when others make it after you."

    - Pablo Picasso
  • Standard Servo (#900-00005): Pulse width controls position
    Continuous Rotation Servo (#900-00008): Pulse width controls velocity
    Feedback Servo (#900-00360): Pulse width controls velocity, yellow feedback indicates position
    Re-inventing the wheel is not a waste of time if, when you are done, you understand why it is round.
  • VonSzarvas wrote: »
    Hello !

    I think you mean this product: Parallax Feedback 360° High Speed Servo

    That has a yellow wire, which is feedback giving the current position of the motor. Saves having an external encoder, which would typically be used to enable better positional accuracy.

    If you check the "Documents and Downloads" tab at the product page, you'll find full details about how it works:
    https://www.parallax.com/product/900-00360#downloads

    In your code, you could take the input signal from that yellow wire, and use that to stop the servo when 30 degrees has been turned. You'll need to do a little experimenting, but the document link above will help you, and the same link has some C sample code too.



    ok so i think doing it in python is a bit more complex. I have tried pwm and it seems to work. Suing the time.sleep function seems to control how long the servo should move. Thus, i have thought of trying to figure out the minimum sleep time for the servo not to move and also the max time it takes to move 360 degrees. Find the range of time and multiply it by 0.30 to get 30 degrees? but there would be no point in finding the duty cycle which is (thigh / tcycle )*100. When should i use the angular position equation to control the servo motor was well. these are the looming questions.
Sign In or Register to comment.