Notice: This page contains information for the legacy Phidget21 Library. Phidget21 does not support VINT Phidgets, and will not support any new Phidgets. Phidget21 will be maintained until 2020. We recommend that new projects be developed against the Phidget22 Library.
1057 User Guide
|Go to this device's product page|
Checking the Contents
You should have received:
In order to test your new Phidget you will also need:
Connecting the Pieces
Testing Using Windows 2000 / XP / Vista / 7
Make sure you have the current version of the Phidget library installed on your PC. If you don't, follow these steps:
- Go to the Quick Downloads section on the Windows page
- Download and run the Phidget21 Installer (32-bit, or 64-bit, depending on your system)
- You should see the icon on the right hand corner of the Task Bar.
Running Phidgets Sample Program
Double clicking on the icon loads the Phidget Control Panel; we will use this program to ensure that your new Phidget works properly.
The source code for the Encoder-full sample program can be found in the quick downloads section on the C# Language Page. If you'd like to see examples in other languages, you can visit our Languages page.
Updating Device Firmware
If an entry in this list is red, it means the firmware for that device is out of date. Double click on the entry to be given the option of updating the firmware. If you choose not to update the firmware, you can still run the example for that device after refusing.
Double Click on the icon to activate the Phidget Control Panel and make sure that the Phidget High Speed Encoder is properly attached to your PC.
Testing Using Mac OS X
- Go to the Quick Downloads section on the Mac OS X page
- Download and run the Phidget OS X Installer
- Click on System Preferences >> Phidgets (under Other) to activate the Preference Pane
- Make sure that the Phidget High Speed Encoder is properly attached.
- Double Click on Phidget High Speed Encoder in the Phidget Preference Pane to bring up the Encoder-full Sample program. This program will function in a similar way as the Windows version.
For a step-by-step guide on getting Phidgets running on Linux, check the Linux page.
Using Windows Mobile / CE 5.0 / CE 6.0
For a step-by-step guide on getting Phidgets running on Windows CE, check the Windows CE page.
The PhidgetEncoder HighSpeed can be used with a wide assortment of mechanical and optical encoders. The encoder should be of quadrature output type, indicating that there will be two output channels (usually labeled A and B). Specifically, the PhidgetEncoder HighSpeed reads a standard incremental non-differential TTL encoder.
The maximum rate of the 1057 PhidgetEncoder is specified at 500,000 cycles per second. In your application, this number relates directly to the number of revolutions per second you wish to measure, and the number of counts per revolution specified for your encoder. If your encoder's wheel has 1000 counts per revolution, then the limit on measurable revolutions per second is 500, or 30,000rpm (which, for the 1057, corresponds to 2000 position changes in software per second).
Both mechanical and optical encoders are available, with optical encoders prevailing in quality at higher revolution speeds. Review the data sheet for the encoder that your are selecting carefully before purchasing it to ensure it is compatible with the PhidgetEncoder HighSpeed. Almost any incremental quadrature encoder will work but it is important to verify this before connecting it to the Phidget. Absolute encoders will not work with this device. Warning: The PhidgetEncoder HighSpeed incorporates a 1kiloOhm pull-up resistor on each line from the encoder input connector. Some encoders will not be able to sink enough current to reliably signal to the 1057. They may work initially, or not at all.
We have reviewed the following encoders, and found that they can be used with the PhidgetEncoder HighSpeed.
This is not meant to be a comprehensive list but should be used as a comparison with other encoders.
|Manufacturer||Web Page||Part Number|
|Grayhill||www.Grayhill.com||Series 63R, Series 61R Series 63Q TTL Output|
|US Digital (Recommended)||www.USDigital.com||S4, S5, E2, E3, E4, E4P, etc.|
|Avago Technologies (Formerly Agilent)||www.avagotech.com||HEDS 5500|
Each Input uses a 3-pin, 0.100 inch pitch locking connector. The connectors are commonly available - refer to the Table below for manufacturer part numbers.
|Molex||50-57-9405||5 Position Cable Connector|
|Molex||16-02-0102||Wire Crimp Insert for Cable Connector|
|Molex||70543-0004||5 Position Vertical PCB Connector|
|Molex||70553-0004||5 Position Right-Angle PCB Connector (Gold)|
|Molex||70553-0039||5 Position Right-Angle PCB Connector (Tin)|
|Molex||15-91-2055||5 Position Right-Angle PCB Connector - Surface Mount|
Note: Most of the above components can be bought at Digikey.
Connector Pinout Diagram
If you want to know more about encoders, check out the Encoder Primer.
We document API Calls specific to this product in this section. Functions common to all Phidgets and functions not applicable to this device are not covered here. This section is deliberately generic. For calling conventions under a specific language, refer to the associated API manual in the Quick Downloads section for that language. For exact values, refer to the device specifications.
int EncoderCount() [get] : Constant
- Returns the number of encoders supported by this PhidgetEncoder. The 1057 supports one optical encoder.
int Position(int EncoderIndex) [get,set]
- Returns/sets the position of an encoder. This is an absolute position as calcutated since the encoder was plugged in. Dividing position by the number of increments per revolution will give the number of rotations the encoder has travelled.
- Position can be set, typically used when an encoder has reached an identifiable (through external means, such as a limit switch) home position. This call does not send information to the device, as an absolute position is maintained only in the library. After this call, position changes from the encoder will use the new value to calculate absolute position.
OnPositionChange(int EncoderIndex, int Time, int PositionChange) [event]
- An event that is issued whenever a change in encoder position occurs. This event returns the length of time that the change took (in milliseconds), and the amount of change (positive/negative encoder increments).
|Date||Board Revision||Device Version||Comment|
|January 2005||0||300||Product Release|
|April 2007||0||301||Added index channel|
|November 2009||1||302||Increased pull-up resistance from 1kΩ to 2.2kΩ|
|January 2010||2||302||Replaced USB connector with Mini-USB connector, made board slightly smaller.|