Grasshopper

algorithmic modeling for Rhino

How to control the speed of the servo motor using firefly and arduino?

so I have 2 servo motors, Motor 1:  want it to rotate with a SPEED controlled by a remapped value, then I want to tell the motor to keep rotating for time interval "A" then STOP.

then once MOTOR 1 stops, MOTOR 2 should start and also rotate with a SPEED controlled by a remapped value collected from a sound capture, also I want it to rotate for a time interval "B" then stop.

I want the 2 motors to interchange working.

This is what I have come up with so far. I want the remapped values to control the speed pf rotation of the motor no its angle of rotation!

Views: 1556

Attachments:

Replies to This Discussion

Are you using a standard servo?  Unfortunately, you can't control the speed of a servo... only the angle.  The servo has an internal circuit which uses feedback to determine whether or not it's at the correct position.  If it's not, then it will automatically try to get to that position.  If it overshoots, then it comes back until it reaches the right point.  It uses feedback to achieve this.  So, unless you're using continuous rotation servos, then what you're after is impossible.

In fact, what you're describing seems a lot more like a stepper motor rather than a servo.  Have you looked into this?

Hi!

Of course there is a way. I had the same problem but with the firefly counter component its quite easy. As a servo motor can only jump from one position to another you have to give it some posotions between two values.


In this example the servo moved from 100 to 10. The timer (20ms) controls how fast your servo will go and additionally you could change the stepsize of the counter to adjust the speed (because sometimes my computer is to slow to keep the 20ms ...) but this will make the movement less smooth.

Julian

RSS

About

Translate

Search

Videos

  • Add Videos
  • View All

© 2024   Created by Scott Davidson.   Powered by

Badges  |  Report an Issue  |  Terms of Service