Pro-Servo setup and calibration


This example will show you how to trim the Pro-user adjustable 360 degree servo to your controller.

Items you will need for this project



Arduino

Pro 360 degree Servo

Jump Wire Kit


Prerequisits


This example assumes you are familiar with the Arduino IDE, connection and uploading. If not we suggest you visist www.arduino.cc and read their getting started and learning guides.

Overview & Descripton


The pro-360 servo differs from regular 360 servos in the fact that they can be adjusted or trimmed to a specific center value. All controllers can output a certain center value and these do differ. So to eliminate creep and lock the servos's center this can be set on the servo.

For example.
Using an Arduino, we want to always use the value of 90 to have the servo centered. With a 360 degree servo the center is the full stop mode. To do this we simply write a value of 90 to the servo from the Arduino. The servo is trimmed so that when it receives a value of 90 it stops. Regular servos have their centers set and non adjustable. The value of true center may differ from servo to servo, so we must get this calibration value from the servo and use it to center it. This is explained in the Regular servo calibration section.

The circuit


White wires are shown in grey for clarity.


Make up this circuit on your breadboard. The wire colours are just for clarity on the diagram and do not relate to the jump wire kit colours, however the wires on the servos are true. The circuit connects the Arduino to the servos.

Pay attention to the polarity, and the servo connections. Double check all your connections are correct before connecting power. Short circuits and reverse polarity can damage the Arduino, sensors and servos.

Setup code


(Arduino only) Enter this code to send the value 90 to the servo. We can then adjust the hardware on the servo to use this value as dead center (dead stop). This value is set on the servo for use in future projects.

// BotBuilder 360 Servo setup. #include <Servo.h> // Include the servo library, so we can cuntrol servos easily. Servo servo; // Create a servo object called "servo". void setup() { servo.attach(10); // Attach the servo object to pin 10. } void loop() { servo.write(90); // Send the value 90 to the servo and loop over and over. }

Testing


Plug in the Arduino via USB (if your Arduino has a power souce jumper, set it to USB). The servo will start to spin (unless it is already configured to have 90 as the dead center).

Adjusting


Using a small screwdriver with a flat head. follow the following procedure:

  • Remove any attachments and screws from the servos control fitting.
  • Insert a small flat bladed screwdriver into the hole in the control fitting.
  • Slowly and carefully rotate the screwdriver one way making small adjustments.
  • The servo will slow down depending on which way you are rotating the screwdriver.
  • Make fine adjustments untill the servo stops.
  • Ensure the servo is completely stopeed, it will be totally silent.
  • You can now re-assemble the servo attachments.




Project video


This video shows how the servo is trimmed, then it runs through the demo code on this page.