The PhidgetStepper Unipolar allows you to control the position, velocity, and acceleration of up to 4 unipolar stepper motors. The 1062 can be used in applications that require precise positioning and continuous rotation, at low cost.
Note: Because most unipolar motors are resistive limitied, the 1062 does not support current control. If your motor requires current control, have a look at the 1067 - PhidgetStepper Bipolar HC.
|Make sure the power supply is unplugged before attaching or removing wires from the terminal blocks. Failure to do so could cause permanent damage to the PhidgetStepper board.|
|API Object Name||Stepper|
|Motor Type||Unipolar Stepper|
|Number of Motor Ports||4|
|Motor Position Resolution||1⁄2 Step (40-Bit Signed)|
|Position Max||± 5.49756E+11 ½ steps|
|Stepper Velocity Resolution||0.75 ½ steps/sec|
|Stepper Velocity Max||383.3 ½ steps/sec|
|Stepper Acceleration Resolution||140.6 ½ steps/sec²|
|Stepper Acceleration Min||140.6 ½ steps/sec²|
|Stepper Acceleration Max||8895.4 ½ steps/sec²|
|API Object Name||Stepper|
|Available Current per Coil Max||1 A|
|Supply Voltage Min||5 V DC|
|Supply Voltage Max||12 V DC|
|Current Consumption Min||23 mA|
|Current Consumption Max||100 mA|
|USB Speed||Full Speed|
|Power Jack Hole Diameter||5.5 mm|
|Power Jack Pin Diameter||2.1 mm|
|Power Jack Polarity||Center Positive|
|Recommended Wire Size (Motor Terminal)||16 - 26 AWG|
|Recommended Wire Size (Power Terminal)||12 - 24 AWG|
|Operating Temperature Min||0 °C|
|Operating Temperature Max||70 °C|
|Unipolar Stepper Controller||Stepper||0 - 3|
|Stepper||Visual Basic .NET||Windows||Download|
|Date||Board Revision||Device Version||Comment|
|April 2008||0||101||Product Release|
|May 2011||0||102||getLabelString fixed for lables > 7 characters|
|September 2011||1||102||Replace USB Connector with Mini-USB connector.|
Welcome to the 1062 user guide! In order to get started, make sure you have the following hardware on hand:
Next, you will need to connect the pieces:
Now that you have everything together, let's start using the 1062!
In order to demonstrate the functionality of the 1062, 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. If you would like to follow along, first 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 1062.
After plugging the 1062 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:
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 Stepper object, labelled Unipolar Stepper 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:
Unipolar Stepper motors are available in 5, 6 or 8 wire configurations.
In a 5 wire motor, the center taps of the coils are connected together. This scheme prevents this motor from being controlled as a bipolar motor.
To use a 5 wire motor as a unipolar, the center tap wire is connected to the power supply.
Determining how to connect a 5 wire stepper to a Unipolar Stepper Controller, like the 1062 can be done by following this procedure.
Start by measuring the resistance between all the wires. Below is a sample table of resistance data, in ohms. This table contains example values, your readings may be different but should still produce a similar pattern.
Looking at the table, you should notice a pattern; the red wire has the same resistance to the other four wires. This tells us that red is our + (center tap) wire, and should be wired to the power supply connection. On the 1062 PhidgetStepper, the power supply connection is labelled as (+). There are two power supply connections available on the 1062 for each motor - either can be used. Disconnect the power from the board and connect the center tap wire to the (+) connection.
Pick one of the remaining four wires and wire it to the A terminal, and connect the other wire for that coil to the B terminal. Connect the remaining wires to C and D. The motor should work regardless of which wire is connected to C and which is in D, but one of these combinations will result in a clockwise rotation for increasing position and counter-clockwise rotation for decreasing position, and the other will produce the opposite rotation.
The process is similar to a 5 wire motor. On a 6 – wire motor, there will be two + wires, one for each coil, which are the center taps for each coil. You will need to isolate which are the center tap wires and the corresponding wires for their coil.
These center taps must be wired together to the power supply.
Let’s assume our six wire stepper motor wires are colored as follows: red, green, black, white, brown, and yellow.
Looking at our table, we can see our pattern. The white wire has the same resistance to the purple and yellow wires. The red wire has the same resistance to the blue and green wires. White, purple, and yellow bring out one coil, and red, blue, and green are the other coil. The red and white wires are the center of their coils.
Disconnect the power from the board and connect the red and white wires to the (+) terminal block connections on the PhidgetStepper. Pick one of the remaining four wires and wire it to the A terminal, and connect the other wire for that coil to the B terminal. Connect the remaining wires to C and D. The motor should work regardless of which wire is connected to C and which is in D, but one of these combinations will result in a clockwise rotation for increasing position and counter-clockwise rotation for decreasing position, and the other will produce the opposite rotation.
8 Wire Motors are very difficult to wire up if you do not have a schematic showing how the wires are connected to the internal coils. Only follow these instructions if you are really desperate. In an 8 wire motor, the coils are split, and to operate it as a unipolar, we have to reconnect the coils to reduce it to a 6 wire unipolar.
Assume our eight wire stepper motor wires are colored as follows: Orange, blue, red, green, brown, yellow, white and purple. In an 8-wire stepper motor, these wires would be part of 4 coils, 2 wires per coil. We need to determine the cable pairings.
We measure the resistance between each wire and are presented with the following values in ohms (these are simply example values):
This table tells us which wires are parts of a coil. From the table we can tell that orange/blue, green/red, brown/yellow, and white/purple are the coils.
Of each pair, one of the wires will be assigned to A, B, C, or D, and the other wire will be connected to another pair. The number of combinations to be tried to see if they produce rotation is large, but can be reduced to a maximum of 96 possibilities by following these steps:
There are a total of 96 wiring combinations, of which there are 2 valid combinations where one will cause a clockwise motor rotation and the other will cause a counter-clockwise rotation.
In order to properly determine the proper wiring for your motor we suggest consulting any manuals or data sheets that are associated with your particular motor.
Stepper motors precision are limited by the manufacturing process used to build them. Errors in the rotor and coils will cause some degree of inaccuracy. In our experience, inexpensive stepper motors will often have positioning errors approaching a half-step.
Since stepper motors do not have the inherent ability to sense their actual shaft position, they are considered open loop systems. This means that the value contained in the current position property is merely a count of the number of steps that have occurred towards the target value; it can not be relied upon as a measure of the actual shaft angle, as the motor can occasionally understep or overstep due to forces such as inertia.
For many applications, it is acceptable for the motor to miss a few steps. In applications where positional accuracy is vital, there are several ways of overcoming this drawback. The simplest is to allow the motor load to depress a limit switch located at a known position. This can be used to fire an event in software to recalibrate the shaft position values. A more elegant solution might involve the mounting of an optical encoder on the shaft and the development of a control system.
The 1062 PhidgetStepper Unipolar controls stepper motors in half-step increments. A Position increment of one corresponds to one half-step. A stepper motor with 15 degree step increments will rotate in 7.5 degree steps. The 1062 accomplishes this by alternating the number of powered coils between one and two, always at least one coil powered. In this way, the rotor is positioned at both full steps and half steps. The table below describes the order in which coils are powered to achieve this.
|Step Number||Coil A||Coil B||Coil C||Coil D||Shaft Angle|
After step number 8 in the table, the order the coils are powered in simply repeats from the beginning. As the motor approaches the requested position, it is decelerated according to the value of the acceleration property. When the desired position has been reached, the 1062 stops the motor and holds it at that position.
Many applications call for several steppers motors operating in unison - for example, operating a CNC table, or a robot arm. Highly precise synchronization of steppers using the PhidgetStepper is not possible, as the sequencing will be affected by the real-time performance of your operating system. Each stepper 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.
When looking for a motor that will be compatible with the 1062, check the motor's data sheet and make sure it meets the following specifications.
For more information about stepper motors and how they work, check the Stepper Motor and Controller Primer.
We do not carry enclosures for the 1064_1, because motor controllers are prone to overheating when kept in enclosed spaces for extended periods of time with no airflow.
This Phidget can control up to four unipolar stepper motors. If you want to use bipolar stepper motors instead, have a look at our other stepper controllers.
|Product||Motor Properties||Electrical Properties|
|Image||Part Number||Price||Motor Type||Step Angle||Rated Torque||Maximum Speed at Rated Voltage||Rated Voltage|
|3314_0||$6.50||Unipolar Stepper||7 1⁄2°||710 g·cm||240 RPM||12 V DC|
|3315_0||$5.00||Unipolar Stepper||7 1⁄2°||50 g·cm||240 RPM||12 V DC|
|3316_0||$5.50||Unipolar Stepper||18°||30 g·cm||575 RPM||12 V DC|
This Phidget requires a power supply between 5 and 12V DC. We recommend that you use a 12V 2A DC power supply for best results. Select the power supply from the list below that matches your region's wall socket type.
|Product||Electrical Properties||Physical Properties|
|Image||Part Number||Price||Power Supply Voltage Min||Power Supply Voltage Max||Power Supply Current||Wall Plug Style|
|3022_0||$10.00||11.4 V DC||12.6 V DC||2 A||Australian|
|3023_1||$10.00||11.4 V DC||12.6 V DC||2 A||European|
|3024_1||$10.00||11.4 V DC||12.6 V DC||2 A||North American|
|3025_0||$10.00||11.4 V DC||12.6 V DC||2 A||British|
|3080_0||$25.00||11.4 V DC||12.6 V DC||5 A||Australian|
|3081_0||$25.00||11.4 V DC||12.6 V DC||5 A||European|
|3082_0||$25.00||11.4 V DC||12.6 V DC||5 A||North American|
|3083_0||$25.00||11.4 V DC||12.6 V DC||5 A||British|
|3084_0||$6.75||11.4 V DC||12.6 V DC||500 mA||European|
|3085_0||$6.75||11.4 V DC||12.6 V DC||500 mA||North American|
|3086_0||$10.00||22.8 V DC||25.2 V DC||1 A||North American|
Use a USB cable to connect this Phidget to your computer. We have a number of different lengths available, although the maximum length of a USB cable is 5 meters due to limitations in the timing protocol. For longer distances, we recommend that you use a Single Board Computer to control the Phidget remotely.