Introduction: Controlling Servos Using the SSC-32 Servo Controller and Arduino Uno
There are two ways through which you can control servos using an SSC-32 servo controller. You can either do it directly from the lynx SSC-32 Terminal or via serial commands sent from an arduino board. Here, we are going to look at how to control servos using an SSC-32 and an arduino board.
Step 1: Connecting SSC-32 to Arduino Uno
In order to control the SSC-32 via arduino, you need to know how to connect the two boards first. In my case i am going to be controlling the SSC-32 via an arduino uno. Therefore, i should connect the transmitting pin (TX) of the arduino uno to the receiving pin (RX) of the SSC-32 and ground (GND) pins of the two boards as show in the diagrams.
In this case, the arduino sends serial commands to the SSC-32 servo controller, which in turn controls the servos. After successfully connecting and the arduino to theSSC-32 and powering the setup you can go ahead and write your code.
Step 2: Coding
A typical line of code for the SSC-32 servo controller would be: #15 P1500 T500
- # represents the pin number on the SSC-32 that the servo is connected to
- P represents the position that the servo motor should rotate to
- T represents the time that the servo should take to rotate to the desired position
Therefore, that line of code tells the servo connected to pin 15 to rotate to position 1500 in 500 milliseconds The commands are sent from the arduino board to the SSC-32 in a serial format.
Here is how you should code on the arduino IDE.
Serial.println(“#15 P1500 T500”);
This line of code sends the text #15 P1500 T500 to the SSC-32 servo controller, which is then decoded and causes the servo in question to move to the desired position. You can check this example code to understand more.
Step 3: Conclusion
For the code to work, you need to set the SSC-32 baud rate to 9600. Moreover, for some servos, the final position can be less than 2500. Therefore, if you notice that your servo motor is twitching every time it reaches its final position, reduce the final position to 2400 or 2300. Meanwhile you can learn more about the SSC-32 servo controller in my other posts.
Participated in the
123D Circuits Contest