Perfect for robotics projects, this impressive Servo Phidget can control up to 16 RC servo motors independently from a single port on your VINT hub (See the Connection & Compatibility tab for a list of hubs). It is powered externally by a 8-30V supply, providing a total of up to 20A of regulated power to its servos. You can control the regulator and choose a global voltage of 5.0V, 6.0V, or 7.4V. A servo will have more torque when running at a higher voltage, but will have a shorter overall lifespan. Check your servo's data sheet and balance the voltage for your specific application.
User-friendly and Highly Compatible
You can control the position, velocity and acceleration of each servo motor with non-blocking methods in our API. You can also set the minimum and maximum pulse width for each servo, and the actual position they correspond to. This allows you to use a wide variety of servos, not just the ones sold here at Phidgets.
Safety and Reliability
This Phidget comes with a number of safety features built-in. The power terminal has polarity protection, so you won't fry your board or your servos if you connect the power supply backwards. The voltage regulator that converts the 8-30V to the user specified voltage will automatically limit the current to a safe level, and a fuse protects the device from power surges. The VINT port is electrically isolated from the rest of the board, making it simple to build a reliable, high-current system.
|Number of Motor Ports||16|
|Pulse Width Min||63 ns|
|Pulse Width Max||4 ms|
|Pulse Width Resolution||63 ns|
|Pulse Code Period||20 ms|
|Supply Voltage Min||8 V DC|
|Supply Voltage Max||30 V DC|
|Output Motor Voltage||5 V DC|
|Continuous Motor Current Max||(Total) 20 A|
|Selectable Output Voltage Levels||5.0, 6.0, 7.4 VDC|
|Current Consumption Max||20 A|
|Current Consumption Min||10 mA|
|Output Impedance (Motor)||100 Ω|
|Recommended Wire Size||12 - 24 AWG|
|Operating Temperature Min||-40 °C|
|Operating Temperature Max||85 °C|
Welcome to the RCC1000 user guide! In order to get started, make sure you have the following hardware on hand:
Next, you will need to connect the pieces:
- Connect the RCC1000 to the VINT Hub using the Phidget cable.
- Connect the VINT Hub to your computer with a USB cable.
- Connect one or more servo motors to the RCC1000.
- Connect the power supply to the green power terminals on the RCC1000.
Now that you have everything together, let's start using the RCC1000!
Using the RCC1000
Phidget Control Panel
In order to demonstrate the functionality of the RCC1000, the Phidget Control Panel running on a Windows machine will be used.
The Phidget Control Panel is available for use on both macOS and Windows machines.
To open the Phidget Control Panel on Windows, find the icon in the taskbar. If it is not there, open up the start menu and search for Phidget Control Panel
To open the Phidget Control Panel on macOS, open Finder and navigate to the Phidget Control Panel in the Applications list. Double click on the icon to bring up the Phidget Control Panel.
For more information, take a look at the getting started guide for your operating system:
Linux users can follow the getting started with Linux guide and continue reading here for more information about the RCC1000.
After plugging the RCC1000 into your computer and opening the Phidget Control Panel, you will see something like this:
The Phidget Control Panel will list all connected Phidgets and associated objects, as well as the following information:
- Serial number: allows you to differentiate between similar Phidgets.
- Channel: allows you to differentiate between similar objects on a Phidget.
- Version number: corresponds to the firmware version your Phidget is running. If your Phidget is listed in red, your firmware is out of date. Update the firmware by double-clicking the entry.
The Phidget Control Panel can also be used to test your device. Double-clicking on an object will open an example.
Double-click on the RCServo object, labelled RC Servo Motor Controller, in order to run the example:
General information about the selected object will be displayed at the top of the window. You can also experiment with the following functionality:
- Motor calibration options are provided. You can change the minimum and maximum pulse widths for your RC servo motor in the appropriate boxes. You can also change which position these pulse widths map to.
- The SpeedRampingState checkbox lets the RCC1000 know whether or not to take the Acceleration and Velocity values into account when moving the RC servo motor.
- Use the Position slider to change the target position and move the RC servo motor.
Finding The Addressing Information
Before you can access the device in your own code, and from our examples, you'll need to take note of the addressing parameters for your Phidget. These will indicate how the Phidget is physically connected to your application. For simplicity, these parameters can be found by clicking the button at the top of the Control Panel example for that Phidget.
In the Addressing Information window, the section above the line displays information you will need to connect to your Phidget from any application. In particular, note the Channel Class field as this will be the API you will need to use with your Phidget, and the type of example you should use to get started with it. The section below the line provides information about the network the Phidget is connected on if it is attached remotely. Keep track of these parameters moving forward, as you will need them once you start running our examples or your own code.
Using Your Own Program
You are now ready to start writing your own code for the device. The best way to do that is to start from our examples:
This Phidget is compatible with the RCServo Examples.
Once you have your example, you will need to follow the instructions on the page for your programming language to get it running. To find these instructions, select your programming language from the Programming Languages page.
Selecting Min and Max Pulse Width
The easiest way to determine the range of pulse widths to use is to check your servo's datasheet or specification table and use the numbers provided. If you do not have the numbers, you can determine them by following this process:
- Set the minimum to 1000us and the maximum to 1001us. This will probably be a safe midpoint to start from.
- Reduce the minimum to 900us and hit apply. Enable the servo and test moving the position to either extreme.
- Continue to reduce the minimum and test the range. If at any point the servo vibrates or makes a buzzing noise, it means it's stalled out and you've gone past its minimum. Continue increasing the minimum until there is no buzzing or vibration when holding the minimum position.
- Repeat this process for the maximum pulse width, increasing it until the motor stalls out and then decreasing until it doesn't.
This process is important because selecting a minimum or maximum pulse width that results in the motor stalling could have an impact on the motor's lifespan if it spends a lot of time holding position at those locations.
If you have a continuous rotation servo, you don't have to worry about it stalling so you can just increase the maximum and decrease the minimum until you reach the servo's maximum speed.
Synchronization of Multiple Servo Motors
Many applications call for several servo motors operating in unison - for example, operating a CNC table, or a robot arm. Highly precise synchronization of servos using the RCC1000 is not possible, as the sequencing will be affected by the real-time performance of your operating system. Each servo is controlled as a independent unit, so there is no way of arranging for a particular action to happen to all motors at the same time. Typical jitter can be 10-30mS.
For more information on servo motors and controllers, check the Servo Motor and Controller Primer.
RCC1000_0 - 16x RC Servo Phidget
- Brand: Phidgets
- Product Code: ES002348
- Availability: In Stock