Products for USB Sensing and Control

Products for USB Sensing and Control

PHIDGETS Inc.

Unit 1 - 6115 4 St SE
Calgary AB  T2H 2H9
Canada
+1 403 282-7335

PhidgetMotorControl 1-Motor

ID: 1065_0

Control one motor as well as an encoder and up to 2 analog and 2 digital sensors. Connects to a USB port.

$80.00

Quantity Available: 512

Qty Price
5 $76.00
10 $72.00
25 $64.00
50 $56.00
100 $52.00
250 $48.00
500 $44.00
1000 $40.00

The 1065 lets you control the direction, velocity and acceleration of one DC Motor. The motor is powered by an external power supply (9 to 28VDC).


Brushed DC Motors are very simple to understand, but very difficult to control precisely. By applying a voltage, or pulsing a voltage rapidly, at the terminals of the motor, current flows through the motor, and it will begin rotating. Depending on the direction of the current, the motor will rotate clockwise or counterclockwise. The 1065 changes the effective voltage by changing the percentage of time the full supply voltage is applied to the motor. By switching the voltage very quickly (a technique called PWM), the controller is made smaller, more efficient, and cheaper.


Rough control of actual motor speed can be achieved automatically in software by using the Back EMF property, or current sensing.


Precise control of DC motors can be achieved by using encoders. You can implement control loops through software by using the data provided by the on-board digital inputs, analog inputs and encoder input. There is an event that triggers every 16 ms that returns the back-EMF value for the attached motor, which can be very useful for PID control. For more information, see the API in the User Guide.


The 1065 also provides over-current, over-voltage, and over-temperature protection to insure that the board and motor is not damaged.


Comes Packaged with

Product Specifications

Controller Properties
API Object Name MotorControl
Motor Type DC Motor
Number of Motor Ports 1
Velocity Resolution 0.39 % Duty Cycle
Acceleration Resolution 24.5 % Duty Cycle/s
Acceleration Min 24.5 % Duty Cycle/s
Acceleration Max 6250 % Duty Cycle/s
Acceleration Time Min 31.3 ms
Acceleration Time Max 8.2 s
Board Properties
Controlled By USB
API Object Name DCMotor
Encoder Interface
Number of Encoder Inputs 1
Count Rate Max 500000 cycles/s
Encoder Interface Resolution x1
Update Rate 125 samples/s
Time Resolution 0.33 ms
Encoder Input Low Voltage Max 800 mV DC
Encoder Input High Voltage Min 2.1 V DC
Encoder Pull-up Resistance 2.4 kΩ
Electrical Properties
Supply Voltage Min 9 V DC
Supply Voltage Max 28 V DC
Continuous Motor Current Max 5 A
Overcurrent Trigger 8 A
Current Consumption Min 20 mA
Current Consumption Max 100 mA
USB Speed Full Speed
Physical Properties
Recommended Wire Size (Power Terminal) 12 - 24 AWG
Operating Temperature Min 0 °C
Operating Temperature Max 70 °C
Voltage Inputs
Number of Voltage Inputs 2
Input Impedance 900 kΩ
5V Reference Error Max 0.5 %
Update Rate 125 samples/s
Digital Inputs
Number of Digital Inputs 2
Pull-up Resistance 15 kΩ
Low Voltage Max (True) 800 mV DC
High Voltage Min (False) 2.1 V DC
Low Voltage Trigger Length Min 4 s
High Voltage Trigger Length Min 16 s
Digital Input Voltage Max ± 15 V DC
Digital Input Update Rate 125 samples/s
Recommended Wire Size 16 - 26 AWG

Software Objects

Channel NameAPIChannel
DC Motor Controller DCMotor 0
Digital Input DigitalInput 0 - 1
Encoder Input Encoder 0
Voltage Input VoltageInput 0 - 1
Supply Voltage Sensor VoltageInput 2
Voltage Ratio Input VoltageRatioInput 0 - 1
DC Motor Current Sensor CurrentInput 0

API


Back Forward
Print this API

Documents

Library & Driver Downloads

Code Samples

APILanguageOS
DCMotor C Multiple Download
DCMotor C# Windows Download
DCMotor Java Multiple Download
DCMotor Java Android Download
DCMotor JavaScript Any Download
DCMotor Objective-C macOS Download
DCMotor Python Multiple Download
DCMotor Visual Basic .NET Windows Download
DigitalInput C Multiple Download
DigitalInput C# Windows Download
DigitalInput Java Multiple Download
DigitalInput Java Android Download
DigitalInput JavaScript Any Download
DigitalInput Objective-C macOS Download
DigitalInput Python Multiple Download
DigitalInput Visual Basic .NET Windows Download
Encoder C Multiple Download
Encoder C# Windows Download
Encoder Java Multiple Download
Encoder Java Android Download
Encoder JavaScript Any Download
Encoder Objective-C macOS Download
Encoder Python Multiple Download
Encoder Visual Basic .NET Windows Download
VoltageInput C Multiple Download
VoltageInput C# Windows Download
VoltageInput Java Multiple Download
VoltageInput Java Android Download
VoltageInput JavaScript Any Download
VoltageInput Objective-C macOS Download
VoltageInput Python Multiple Download
VoltageInput Visual Basic .NET Windows Download
VoltageRatioInput C Multiple Download
VoltageRatioInput C# Windows Download
VoltageRatioInput Java Multiple Download
VoltageRatioInput Java Android Download
VoltageRatioInput JavaScript Any Download
VoltageRatioInput Objective-C macOS Download
VoltageRatioInput Python Multiple Download
VoltageRatioInput Visual Basic .NET Windows Download
CurrentInput C Multiple Download
CurrentInput C# Windows Download
CurrentInput Java Multiple Download
CurrentInput Java Android Download
CurrentInput JavaScript Any Download
CurrentInput Objective-C macOS Download
CurrentInput Python Multiple Download
CurrentInput Visual Basic .NET Windows Download

Projects

Product History

Date Board Revision Device Version Comment
June 20110100Product Release
June 20110101getLabelString fixed for labels longer than 7 characters

Getting Started

Welcome to the 1065 user guide! In order to get started, make sure you have the following hardware on hand:


Next, you will need to connect the pieces:

1065 0 Connecting The Hardware.jpg
  1. Connect the positive wire (usually red) of the motor to the "+" terminal on the side of the Phidget opposite the USB port. Connect the negative wire (usually black) to the "-" terminal next to the red wire.
  2. Connect your device to your computer using the USB cable.
  3. Plug the DC power supply into the barrel jack, or if it doesn't have a jack, connect the loose leads to the "+" and "G" terminals between the barrel jack and USB port.
  4. Ensure that the DC power supply is plugged in.


Now that you have everything together, let's start using the 1065!

Using the 1065

Phidget Control Panel

In order to demonstrate the functionality of the 1065, 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 1065.

First Look

After plugging the 1065 into your computer and opening the Phidget Control Panel, you will see something like this:

1065 Panel.jpg


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.

DC Motor

Double-click on the DC Motor object, labelled DC Motor Controller, in order to run the example:

1065 DCMotor Example.jpg


General information about the selected object will be displayed at the top of the window. You can also experiment with the following functionality:

  • Toggle the BackEMF Sensing checkbox to enable/disable back-EMF sensing on the 1065.
  • Drag the Target Velocity slider from -1 (full reverse) to 1 (full forward) to make the motor move.
  • Manipulate the Acceleration slider to increase/decrease the amount of time it takes the DC Motor to reach a target velocity.


Encoder

Double-click on the Encoder object, labelled Encoder Input, in order to run the example:

1065 Encoder Example.jpg


General information about the selected object will be displayed at the top of the window. You can also experiment with the following functionality:

  • Position Change: the number of ticks (or quadrature cycles) that have occurred since the last change event.
  • Time Change: the amount of time in milliseconds that has elapsed since the last change event.
  • Position: the total position in ticks relative to where the encoder was when the window was opened.
  • Index Position: the position where the index channel was last encountered. Some encoders do not support index, check your encoder's datasheet for more information.
  • Velocity: the average velocity in rotations per second. A CPR must be specified to enable this functionality.
  • Specify a counts per revolution (CPR) value to enable velocity calculation.

Current Input

Double-click on the Current Input object , labelled DC Motor Current Sensor, in order to run the example:

1065 CurrentInput Example.jpg


General information about the selected object will be displayed at the top of the window. You can also experiment with the following functionality:

  • Modify the change trigger and/or data interval value by dragging the sliders. For more information on these settings, see the data interval/change trigger page.

Digital Input

Double-click on a Digital Input object in order to run the example:

1065 DigitalInput Example.jpg


General information about the selected object will be displayed at the top of the window. You can also experiment with the following functionality:

  • This is an active-low device, therefore, it will be true when connected to ground, and false when connected to a high voltage.

Voltage Input (Supply Voltage)

Double-click on the Voltage Input object, lablled Supply Voltage Sensor, in order to run the example:

1065 VoltageInputSupply Example.jpg


General information about the selected object will be displayed at the top of the window. You can also experiment with the following functionality:

  • Modify the change trigger and/or data interval value by dragging the sliders. For more information on these settings, see the data interval/change trigger page.

Voltage Input

Double-click on a Voltage Input object in order to run the example:

1065 VoltageInputSensor Example.jpg


General information about the selected object will be displayed at the top of the window. You can also experiment with the following functionality:

  • Modify the change trigger and/or data interval value by dragging the sliders. For more information on these settings, see the data interval/change trigger page.
  • If you have an analog sensor connected that you bought from us, you can select it from the Sensor Type drop-down menu. The example will then convert the voltage into a more meaningful value based on your sensor, with units included, and display it beside the Sensor Value label. Converting voltage to a Sensor Value is not specific to this example, it is handled by the Phidget libraries, with functions you have access to when you begin developing!


Voltage Ratio Input

Double-click on a Voltage Ratio Input object in order to run the example:

1065 VoltageRatioSensor Example.jpg


General information about the selected object will be displayed at the top of the window. You can also experiment with the following functionality:

  • The voltage ratio is reported in Volts per Volt. For example, if the Phidget is providing 5V and the sensor is sending back 2.5V, the ratio will be 0.5V/V.
  • Modify the change trigger and/or data interval value by dragging the sliders. For more information on these settings, see the data interval/change trigger page.
  • If you have an analog sensor connected that you bought from us, you can select it from the Sensor Type drop-down menu. The example will then convert the voltage into a more meaningful value based on your sensor, with units included, and display it beside the Sensor Value label. Converting voltage to a Sensor Value is not specific to this example, it is handled by the Phidget libraries, with functions you have access to when you begin developing!



Technical Details

Connections

The ports and terminal blocks on this board are labelled on the underside to save space:

1065 0 Under.jpg

Further Reading

For more information on the analog inputs on the 1065, check the Analog Input Primer.

For more information about encoders, check the Encoder Primer.

For more information about DC motors and how to control them, check the DC Motor and Controller Primer.

What to do Next

  • Software Overview - Find your preferred programming language here to learn how to write your own code with Phidgets!
  • General Phidget Programming - Read this general guide to the various aspects of programming with Phidgets. Learn how to log data into a spreadsheet, use Phidgets over the network, and much more.
  • Phidget22 API - The API is a universal library of all functions and definitions for programming with Phidgets. Just select your language and device and it'll give you a complete list of all properties, methods, events, and enumerations that are at your disposal.

Enclosure

We do not carry enclosures for the 1065, because motor controllers are prone to overheating when kept in enclosed spaces for extended periods of time with no airflow.

DC Motors

We offer a wide variety of DC motors that can be used with this Phidget. Motors with higher gearbox ratios will have higher torque at the cost of lower speed. If you want a motor that has an encoder attached to it, skip ahead to the next table.

Product Motor Properties Physical Properties Gearbox Specifications
Image Part Number Price Maximum Speed at Rated Voltage Rated Torque Shaft Diameter Weight Gear Ratio Gearbox Type
3254_0 $10.00 230 RPM 200 g·cm 6 mm 128 g 10 : 1 Spur
3255_0 $10.00 127 RPM 310 g·cm 6 mm 133 g 18 : 1 Spur
3256_0 $11.00 46 RPM 820 g·cm 6 mm 137 g 50 : 1 Spur
3257_0 $11.00 23 RPM 1.6 kg·cm 6 mm 136 g 100 : 1 Spur
3260_0 $15.00 73 RPM 6.1 kg·cm 6 mm 284 g 50 : 1 Spur
3261_0 $18.00 1080 RPM 240 g·cm 6 mm 144 g 3 1217 : 1 Planetary
3262_0 $18.00 285 RPM 900 g·cm 6 mm 170 g 13 212289 : 1 Planetary
3263_1 $20.50 78 RPM 3.1 kg·cm 6 mm 193 g 50 801895 : 1 Planetary
3264_1 $20.50 28 RPM 8.5 kg·cm 6 mm 192 g 139 1841221 : 1 Planetary
3265_0 $38.00 670 RPM 540 g·cm 8 mm 416 g 3 1217 : 1 Planetary
3266_0 $42.00 175 RPM 1.9 kg·cm 8 mm 464 g 13 212289 : 1 Planetary
3266_1 $42.00 175 RPM 1.9 kg·cm 8 mm 464 g 13 212289 : 1 Planetary
3267_0 $43.00 49 RPM 6.6 kg·cm 8 mm 526 g 50 801895 : 1 Planetary
3267_1 $43.00 49 RPM 6.6 kg·cm 8 mm 526 g 50 801895 : 1 Planetary
3268_1 $43.00 18 RPM 17.3 kg·cm 8 mm 526 g 139 1841221 : 1 Planetary
3269_2 $69.00 588 RPM 5.1 kg·cm 12 mm 1.3 kg 4 14 : 1 Planetary
3270_1 $66.00 192 RPM 14.3 kg·cm 12 mm 1.5 kg 12 2425 : 1 Planetary
3271_1 $66.00 139 RPM 20.4 kg·cm 12 mm 1.5 kg 18 116 : 1 Planetary
3272_1 $72.00 53 RPM 51 kg·cm 12 mm 1.7 kg 46 82125 : 1 Planetary
3273_1 $72.00 33 RPM 82.6 kg·cm 12 mm 1.7 kg 76 4964 : 1 Planetary
3274_1 $76.00 15 RPM 173 kg·cm 12 mm 2 kg 167 601625 : 1 Planetary

DC Motors with Encoders

These DC motors all have encoders attached to the rear shaft, allowing for closed-loop position control of your motor. These encoders will connect to the encoder input on the 1065 via the cable included with each motor.

Product Motor Properties Physical Properties Gearbox Specifications
Image Part Number Price Maximum Speed at Rated Voltage Rated Torque Shaft Diameter Weight Gear Ratio Gearbox Type
3254E_0 $40.00 230 RPM 200 g·cm 6 mm 131 g 10 : 1 Spur
3255E_0 $40.00 127 RPM 310 g·cm 6 mm 136 g 18 : 1 Spur
3256E_0 $41.00 46 RPM 820 g·cm 6 mm 140 g 50 : 1 Spur
3261E_0 $48.00 1080 RPM 240 g·cm 6 mm 147 g 3 1217 : 1 Planetary
3262E_0 $48.00 285 RPM 900 g·cm 6 mm 174 g 13 212289 : 1 Planetary
3263E_1 $50.50 78 RPM 3.1 kg·cm 6 mm 193 g 50 801895 : 1 Planetary
3264E_1 $50.50 28 RPM 8.5 kg·cm 6 mm 195 g 139 1841221 : 1 Planetary
3265E_0 $68.00 670 RPM 540 g·cm 8 mm 419 g 3 1217 : 1 Planetary
3266E_0 $72.00 175 RPM 1.9 kg·cm 8 mm 467 g 13 212289 : 1 Planetary
3267E_0 $73.00 49 RPM 6.6 kg·cm 8 mm 529 g 50 801895 : 1 Planetary

DC Linear Actuators

Linear actuators are simply DC motors that are hooked up to a linear screw which causes the shaft to move laterally instead of rotating. Unlike a rotary DC motor, linear actuators have a minimum and maximum position at which the shaft cannot contract or extend any further. On its own, the motor would not be smart enough to stop before attempting to push beyond these limits, possibly damaging the motor. That's why each linear actuator also has a built-in feedback potentiometer so you can monitor the position of the shaft and prevent the actuator from stalling out at its limits. The potentiometer can be read by the analog input on the 1065.

Product Motor Properties Electrical Properties Physical Properties
Image Part Number Price Stroke Length Maximum Speed Peak Power Point Peak Efficiency Point Gear Ratio Rated Voltage Weight
3545_0 $100.00 150 mm 24 mm/s 350 N 24 V DC 995 g
3546_0 $100.00 150 mm 10 mm/s 750 N 24 V DC 1 kg
3547_0 $100.00 300 mm 24 mm/s 350 N 24 V DC 1.2 kg
3548_0 $100.00 300 mm 10 mm/s 750 N 24 V DC 1.2 kg
3570_0 $80.00 50 mm 32 mm/s (@ 16 mm/s) 50 N (@ 24 mm/s) 24 N 35:1 12 V DC 56 g
3571_0 $80.00 100 mm 32 mm/s (@ 16 mm/s) 50 N (@ 24 mm/s) 24 N 35:1 12 V DC 74 g
3572_0 $80.00 140 mm 32 mm/s (@ 16 mm/s) 50 N (@ 24 mm/s) 24 N 35:1 12 V DC 84 g
3573_0 $80.00 50 mm 20 mm/s (@ 10 mm/s) 75 N (@ 15 mm/s) 38 N 63:1 12 V DC 56 g
3574_0 $80.00 100 mm 20 mm/s (@ 10 mm/s) 75 N (@ 15 mm/s) 38 N 63:1 12 V DC 74 g
3575_0 $80.00 140 mm 20 mm/s (@ 10 mm/s) 75 N (@ 15 mm/s) 38 N 63:1 12 V DC 84 g
3576_0 $80.00 50 mm 8 mm/s (@ 4 mm/s) 175 N (@ 7 mm/s) 75 N 150:1 12 V DC 56 g
3577_0 $80.00 100 mm 8 mm/s (@ 4 mm/s) 175 N (@ 7 mm/s) 75 N 150:1 12 V DC 74 g
3578_0 $80.00 140 mm 8 mm/s (@ 4 mm/s) 175 N (@ 7 mm/s) 75 N 150:1 12 V DC 84 g

Power Supplies

This Phidget requires a power supply between 9 and 28V DC. We recommend that you use a 12V DC power supply for smaller motors and a 24V supply for larger motors. Check your motor's specifications if you're not sure. For best performance, you should get a 5 amp supply. 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

USB Cables

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.

Product Physical Properties
Image Part Number Price Connector A Connector B Cable Length
3017_1 $3.00 USB Type A USB Mini-B 280 mm
3018_0 $5.00 USB Type A USB Mini-B 1.8 m
3020_0 $12.00 USB Type A USB Mini-B 4.5 m
3036_0 $3.50 USB Type A USB Mini-B 600 mm
3037_0 $4.00 USB Type A USB Mini-B 1.2 m

Have a look at our DC motor controllers:

Product Controller Properties Electrical Properties Board Properties
Image Part Number Price Number of Motor Ports Velocity Resolution Acceleration Resolution Continuous Motor Current Max Controlled By
1064_1 $120.00 2 0.79 % Duty Cycle 1.9 % Duty Cycle/s (per motor) 14 A USB
1065_0 $80.00 1 0.39 % Duty Cycle 24.5 % Duty Cycle/s 5 A USB
DCC1000_0 $75.00 1 0.001 % Duty Cycle 1 % Duty Cycle/s 25 A VINT