Difference between revisions of "1010 User Guide"

From Phidgets Support
Jump to: navigation, search
(Product History)
Line 1: Line 1:
 
[[Category:UserGuide]]
 
[[Category:UserGuide]]
{{UserguideTOC|1010.jpg|1010}}
+
__NOTOC__
==Getting Started==
+
[[Image:1010_0_Connecting_the_Hardware.jpg|300px|right|link=]]
 +
===Required Hardware===
  
In order to use the 1010, you must be comfortable with designing your own circuit.  You will need to understand the “signals” coming from and going to the 1010.
+
* A 1010 Phidget InterfaceKit
 +
* A breadboard or prototyping board and wires
 +
* Sensors, LEDs, and switches to test the InterfaceKit
 +
* A USB Cable
 +
* A computer
  
If you are not familiar with Phidgets, we recommend purchasing a [[1018 User Guide|1018]] to familiarize yourself with Phidget concepts before attempting to design the 1010 into your system.
+
===Connecting the Pieces===
  
Here is an example of a small board we have built for internal testing purposes. We have some LEDs, 2 relays, a power jack, and a couple of connectors.
+
# Plug the 1010 InterfaceKit into the prototyping board.
 +
# Use solid-core hook-up wire to connect the appropriate pins to your sensors, LEDs, and switches. See the pinout diagram in the [[#Technical_Details|technical section.]]
 +
# Connect the 1010 InterfaceKit to the computer using a USB cable.
  
[[File:1010_0_Connecting_The_Hardware.jpg|300px|link=]]
+
<br clear="all">
  
The schematic for this board is available here:
+
==Testing Using Windows==
  
[http://www.phidgets.com/wiki/images/4/46/1010_EUE_P1_0.pdf]
+
{{UGcontrolpanel|1010}}
 +
 
 +
{{ugVoltageInputSensor}}
 +
 
 +
{{ugVoltageRatioSensor}}
 +
 
 +
{{ugDigitalInputAL}}
 +
 
 +
{{ugDigitalOutput}}
 +
 
 +
{{UGotheros}}
  
 
==Technical Details==
 
==Technical Details==
Line 33: Line 50:
 
For dimensions, please refer to the Mechanical Drawing on the Product Page.
 
For dimensions, please refer to the Mechanical Drawing on the Product Page.
  
==API==
+
{{UGnext|}}
{{UGapih}}
+
 
+
===Functions===
+
{{UGapi|int InputCount() [get] : Constant <nowiki>=</nowiki> 8
+
|Returns the number of digital inputs supported by this PhidgetInterfaceKit.
+
}}
+
 
+
{{UGapi|bool InputState(int InputIndex) [get]
+
|Returns the state of a particular digital input.  Digital inputs read True where they are activated and false when they are in their default state.
+
}}
+
 
+
{{UGapi|int OutputCount() [get] : Constant <nowiki>=</nowiki> 8
+
|Returns the number of digital outputs supported by this PhidgetInterfaceKit.
+
}}
+
 
+
{{UGapi|bool OutputState (int OutputIndex) [get,set]
+
|Sets/returns the state of a digital output. Setting this to true will activate the output, False is the default state. Reading the OutputState immediately after setting it will not return the value set - it will return the last state reported by the Phidget.
+
}}
+
 
+
{{UGapi|int SensorCount() [get] : Constant <nowiki>=</nowiki> 8
+
|Returns the number of sensors (Analog Inputs) supported by this PhidgetInterfaceKit.  Note that there is no way of determining is a sensor is attached, and what sensor is attached.
+
}}
+
 
+
{{UGapi|int SensorValue(int SensorIndex) [get]
+
|Returns the sensed value of a particular Analog Input.  SensorValue varies between 0-1000, corresponding to the 0-5V input range of the Analog Input. If you are using an Analog Sensor from Phidgets Inc., it’s manual will specify the formula used to convert SensorValue into the measured property.
+
}}
+
 
+
{{UGapi|int SensorRawValue (int SensorIndex) [get]
+
|Returns the full resolution of the Analog Input.  This is a more accurate version of SensorValue.  The valid range is 0-4095. Note however that the analog outputs on the Interface Kit 8/8/8 are only 10-bit values and this value represents an oversampling to 12-bit.
+
}}
+
 
+
{{UGapi|double SensorChangeTrigger (int SensorIndex) [get,set]
+
|Returns the change trigger for an analog input. This is the amount that an inputs must change between successive SensorChangeEvents. This is based on the 0-1000 range provided by getSensorValue. This value is by default set to 10 for most Interface Kits with analog inputs. SensorChangeTrigger is sometimes referred to as sensitivity.
+
}}
+
 
+
{{UGapi|int DataRate (int SensorIndex) [get,set]
+
|Gets/sets the data rate for an analog input. This is corresponds to the fastest rate at which SensorChange events will be fired. The data rate is superseded by SensorChangeTrigger, which can be set to 0 if a constant data rate is required. Data Rate is in milliseconds and corresponds to the amount of time between events. Data Rate is bounded by DataRateMax and DataRateMin. The analog inputs cannot all be set to the fastest data rate at the same time - if this is attempted, an exception will be thrown when the data bandwidth has been exceeded. For data rates less then the maximum, data is still sampled at the maximum speed, and averaged between events for the user. Supported data rates are: 1, 2, 4, 8, and every multiple of 8 until DataRateMin. Setting an unsupported data rate (ie. 3, 9, 17) will result in a thrown exception. Note that data rate is limited to 16ms when opening over the Phidget Webservice.
+
}}
+
 
+
{{UGapi|int DataRateMax (int SensorIndex) [get]
+
|The maximum data rate that can be set for an analog input, in milliseconds.
+
}}
+
 
+
{{UGapi|int DataRateMin (int SensorIndex) [get]
+
|The minimum data rate that can be set for an analog input, in milliseconds. This is usually 1000.
+
}}
+
 
+
{{UGapi|bool Ratiometric() [get,set]
+
|Sets/returns the state of Ratiometric. Ratiometric <nowiki>=</nowiki> true configures the Analog Inputs to measure with respect to VCC (nominal 5V). Ratiometric <nowiki>=</nowiki> false configures the Analog Inputs to measure with respect to an internal precision 5V reference. Ratiometric is not updated from the Phidget.  It is recommended to explicitly set Ratiometric when the Interfacekit is opened. After changing the ratiometric state, wait until the ratiometric property matches what was set before reading analog data.
+
}}
+
===Events===
+
{{UGapi| | }}
+
 
+
{{UGapi|OnInputChange(int InputIndex, bool State) [event]
+
|An event that is issued when the state of a digital input changes.
+
}}
+
 
+
{{UGapi|OnOutputChange(int OutputIndex, bool State),  [event]
+
|An event that is issued when the state of a digital output changes.
+
}}
+
 
+
{{UGapi|OnSensorChange(int SensorIndex, int SensorValue),  [event]
+
|An event that is issued when the returned value from a sensor (Analog Input) varies by more than the SensorChangeTrigger property.
+
}}
+
  
 
==Product History==
 
==Product History==

Revision as of 20:54, 26 August 2016

Required Hardware

  • A 1010 Phidget InterfaceKit
  • A breadboard or prototyping board and wires
  • Sensors, LEDs, and switches to test the InterfaceKit
  • A USB Cable
  • A computer

Connecting the Pieces

  1. Plug the 1010 InterfaceKit into the prototyping board.
  2. Use solid-core hook-up wire to connect the appropriate pins to your sensors, LEDs, and switches. See the pinout diagram in the technical section.
  3. Connect the 1010 InterfaceKit to the computer using a USB cable.


Testing Using Windows

Phidget Control Panel

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

Windows

To open the Phidget Control Panel on Windows, find the Ph.jpg icon in the taskbar. If it is not there, open up the start menu and search for Phidget Control Panel

Windows PhidgetTaskbar.PNG

macOS

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 Ph.jpg 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 1010.

First Look

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

1010 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.

Voltage Input

Double-click on a Voltage Input object in order to run the example: [[Image:{{{1}}}_VoltageInputSensor_Example.jpg|center|link=]]


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!


For more information about Voltage Inputs, check out the Voltage Input Primer.

Voltage Ratio Input

Double-click on a Voltage Ratio Input object in order to run the example: [[Image:{{{1}}}_VoltageRatioSensor_Example.jpg|link=|center]]


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!


For more information about Voltage Ratio Inputs, check out the Voltage Ratio Input Primer.

Template:UgDigitalInputAL

Digital Output

Double-click on a Digital Output object {{{2}}} in order to run the example: [[Image:{{{1}}}_DigitalOutput_Example.jpg|center|link=]]


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 state of the digital output by pressing the button.

Testing Using Mac OS X

  1. Go to the Quick Downloads section on the Mac OS X page.
  2. Download and run the Phidget OS X Installer
  3. Click on System Preferences >> Phidgets (under Other) to activate the Preference Pane
  4. Make sure your device is properly attached
  5. Double click on your device's objects in the listing to open them. The Preference Pane and examples will function very similarly to the ones described above in the Windows section.

Testing Using Linux

For a general step-by-step guide on getting Phidgets running on Linux, see the Linux page.

Using a Remote OS

We recommend testing your Phidget on a desktop OS before moving on to remote OS. Once you've tested your Phidget, you can go to the PhidgetSBC, or iOS pages to learn how to proceed.

Technical Details

1010 0 PinOut.jpg

5V is the USB Power Supply - made available to your application if it requires a small amount of current (<400mA). All 5V pins are connected together internally.

GND is the USB Ground - all ground pins are connected together internally.

D+ and D- are the differential USB data lines.

IN0 - IN7 are digital inputs. For more information, see the Digital Input Primer.

OUT0 - OUT7 are digital outputs. For more information, see the Digital Output Primer.

AIN0 - AIN7 are analog inputs. For more information, see the Analog Input Primer.

For dimensions, please refer to the Mechanical Drawing on the Product Page.

What to do Next

  • Programming Languages - Find your preferred programming language here and learn how to write your own code with Phidgets!
  • Phidget Programming Basics - Once you have set up Phidgets to work with your programming environment, we recommend you read our page on to learn the fundamentals of programming with Phidgets.


Product History

Template:UGhist Template:UGrow Template:UGrow