How do you turn a modded servo to turn 360?

Hi Am having great difficulty trying to turn a modded servo to turn 360, I've moddified the servo as such according to this link. http://feh.osu.edu/Design-Project/References/servo.html so now my servo can turn 360 with my hand. But how do you write the code that will allow you to do that?

Thanks Chris

If you followed the instruction that says

take some sort of cutting device (like some small diagonal cutters, for example) and clip the circuit board in half.

you lobotomized your servo. Now you have a gearmotor, not a servo. Drive it like any other motor.

There is no Arduino code I am aware of that will cut the circuit board out of a servo for you, but I suspect that isn’t really what you meant to ask. :slight_smile:

-j

There are two ways to modify a servo for continuous rotation. In the more complicated method, you remove the mechanic stop and “force” the position feedback mechanism, but leave the rest of the electronics intact. The electronics include a motor-driver, so with this method you send the motor a normal servo signal to control it - positions to the right of “center” turn the motor to the right, and positions to the left of center turn it to the left.

In the simpler modification, you remove the mechanical stop and ALL the electronics. This leaves you a gear motor in a nice case, and you need an external motor driver circuit to control it. The link you posted describes this second form of modification.

The first form is described here http://www.instructables.com/id/modify-the-hitec-hs-325-servo-for-continuous-rotat/ and http://www.instructables.com/id/Modify_a_Futaba_S3001_servo_for_continuous_rotatio/

Could you give me some code examples please?
So far the simplest code to turn a servo is:

// Sweep
// by BARRAGAN <http://barraganstudio.com> 

#include <Servo.h> 
 
Servo myservo;  // create servo object to control a servo 
                // a maximum of eight servo objects can be created 
 
int pos = 0;    // variable to store the servo position 
 
void setup() 
{ 
  myservo.attach(9);  // attaches the servo on pin 9 to the servo object 
} 
 
 
void loop() 
{ 
  myservo.write(0);
  delay(2000);
  myservo.write(180);
  delay(2000);

  myservo.write(200); //But This won't work cause technically its impossible to turn a servo over 180, so this line does not get done
  delay(2000);
}

So what code allows me to fully turn it 360?
The links you gave me provides no code at all!

So what code allows me to fully turn it 360?
The links you gave me provides no code at all!

You fail to understand what you were told. If you modify the servo per your original instructions it ceases to be a servo and software servo library commands can no longer be used to command the servo to move. You end up with a simple 5vdc motor that has to be controlled via a motor driver and possibly using PWM outputs, and that method has no feedback from the motor to know what position it is at, at any moment in time.

I think what you are asking for is a servo that can be commanded to move anywhere between 0 degrees and 360 degrees and then stop? This isn't possible by modifying typical R/C hobby type servos. Is that correct? Because 360 degree travel and continous travel are two different modes and we would need to understand what you are looking for.

Lefty

Hi Lefty,

do you know of any products that would allow 360 travel ? (a servo that can bet set from 0-360 instead of 0-180).

I think (some) model yacht winches (may) have this capability.

do you know of any products that would allow 360 travel ?

A stepper motor, but it isn't a servo ;) Much more expensive and involved.....

Cheers for the replies, ill do a little research on those topics.