I have to connect a continous RC servo to Arduino, but I am facing some issues. With standard servos, ie 0 ±90 deg., the specifications are very informative: you get the center pulse width, the pulse width to go all the way in both directions, and the speed in sec. to get to 60 deg. Thats fine.
But with continuous servos, you barely get the pulse witdth to stop the motor (susally 1.5 ms). Looks like they don't specify the maximum speed nor any pulse width to speed data :-/. Am I looking for something that does not exist, or I am unlucky ?
I would lile to be able to set the speed of the motor, but for that purpose I need some specs :o. Or maybe the speed is kind of steady. Any way, this should be specified, I think, but may be wrong.
The best you can hope for is to experiment with pulses a little longer or shorter than the null position length, roughly in the range of 70 to 100 degrees, but it isn't really what an ex-servo is very good at
I don't undertand well your answer, you talk about degrees, but continuous servos "don't undertand" degrees. Maybe I should add I am talking about real continuous servos, not "standard" servos modified to run continuously. Standard servos are made to maintin their position, and continuous servos are made to maintin their speed.
maximum speed nor any pulse width to speed data . Am I looking for something that does not exist, or I am unlucky ?
It's nothing to do with luck. With a servo modified for continuous rotation you probably should use the writeMicroseconds() command. Every model servo will have different maximum speeds and range of microseconds commands it can handle. You will have to experiment to find the exact stop timing, usually around 1500 +/- microseconds, and the maximum forward and reverse speed microsecond values.
Once you know the three critical microsecond values for max forward speed, max reverse speed, and stop you might then want to use the map function to allow you to use say, -100, 0, +100 values, to control the speed and direction of your specific servo inside your program.
maybe you posted before I added a clarification: I will use a servo made to run continuously, not a modified standard servo. I expect then , maybe I should not, some kind of technical information. For the intended purpose, I would need to know the pulse width to speed facor, and if made to run at a specific speed only, what is the specific speed.
I will use a servo made to run continuously, not a modified standard servo. I expect then , maybe I should not, some kind of technical information. For the intended purpose, I would need to know the pulse width to speed facor, and if made to run at a specific speed only, what is the specific speed.
Short of a datasheet for your specific servo, I think my first post applies, you will have to experiment to find the speed values. The fact that you can purchase a servo modified for continuous rotation Vs modifying a standard servo does not change the requirements to know the exact microsecond PPM pulse width values your servo will require. My mapping suggestion would allow you to represent speed and direction as a percentage value (-100% to +100%). Again every model servo will have it's own maximum speed capability depending on gearing ratio, motor speed, external torque value applied to the servo, exact servo voltage being applied, etc.
Those little plastic hobby servos tend to be used for casual things...
Hum, this is what I was fearing. To your knowledge, are there any "industrial" servos in the same package ? I know some of them are made of metal. For my purpose, a standard servo motor won't fit. The load is small, and I need the unit to be operated from batteries. These servos are right for this. But going to a continuous servo, I will probably need some feedback to bring the load a specific distance with a very small tolerance. Or I may use a standard servo to "pulse" some mechanical device.
true, mapping is something interesting. That would let me calibrate each unit, so I could get same results out of differents parts with varying specs even with the same part number.
With the motor I have experimented with, the relation from pulse width to speed does not seem to be linear, and for the same difference in pulse width from the no speed pulse width, I don't seem to get the same speed in both directions. Then it would be better to run only at full speed in both directions.
the purpose is to move up or down a tool on a machine, with a precision of about .001 inch. I have found a linear actuator, but not precise enough. What we think of is using a servo coupled to some mechanism (needs to be designed) to move the tool.
for sure a lead-screw or a rack-and-pinion is needed in the mechanism to get a linear motion. Now for the motor, I was told that the stepping motor would not have enough torque, this is why we are looking at sevo motors. The fact is that the load by itself is not high, but the opposed force could be high. Going servo motor, I think of using a standard servo to pulse the mechanism up or down, each pusle getting a known displacement. The speed of the motor is not a real issue then.
The experiments will answer questions that remains.