I am new to Arduino, and have started a simple project to move a servo motor to a specific angle. I am using an Adruino UNO and a Futaba S3003 servo.I bought on ebay, both powered by the same 6v battery. The servo signal wire is connected to either pin 4 or 6
The command I am using in my sketch is
Servo.write(angle);
where angle is a number , eg Servo,write(180); The problem is the servo will only move to the nearest fixed angle ie 0,45,90,135 or180. I wish to move it a a dfifferent angle eg 170 but it always moves to the nearest fixed one.
Have I bought the wrong hardware to enable me to do this? I have tried with 2 servos, both the same model.
Not a good idea, the Arduino needs 7.2V on the VIN pin OR 5V on the 5V pin. There is no reason a servo would do the action you describe.
Please post :
Your FULL schematic of how everything is connected.
Your CODE you have used to test the servo.
Also, have you got a potentiometer? you can make a servo tester useing one, along with the code provided with the IDE.
I've used quite a few S3003s and none have them have behaved as you described. So I guess it's something that you are doing which you've told us nothing about.
When I think about it I've never seen any hobby servo that only moves in jumps like that. If you have a potentiometer try the Knob example from the IDE. If your servo doesn't move smoothly with the pot then you have bad servos and certainly not real Futaba S3003s.