1012 User Guide: Difference between revisions

From Phidgets Support
No edit summary
 
(25 intermediate revisions by 4 users not shown)
Line 1: Line 1:
__NOINDEX__
<metadesc>The Phidget InterfaceKit 0/16/16 can check the state of switches and push buttons, and/or to switch relays, solenoids, and LEDs.</metadesc>
[[Category:UserGuide]]
[[Category:UserGuide]]
==Getting Started==
==Getting Started==
{{UGIntro|1012}}
*[{{SERVER}}/products.php?product_id=1012 1012 Phidget InterfaceKit]
*USB cable and computer
*something to use with the 1012 (e.g. switches and batteries)


===Checking the Contents===
{{UGbox|
'''You should have received:'''
* A Phidget Interface Kit 0/16/16
* A mini-USB cable
|
'''In order to test your new Phidget you will also need:'''
* A switch, a piece of wire
* An incandescent bulb
||}}


===Connecting the Pieces===
Next, you will need to connect the pieces:
{{UGbox|
[[Image:1012_2_Connecting_The_Hardware.jpg|500px|right|link=]]
# Digital Inputs: Connect the black wire (-) from the battery to the ground terminal (G). Connect the red wire (+) to one of the switch terminals. Connect the other switch terminal to the digital input terminal block number 0 using a piece of wire.
#Digital Inputs: By connecting a power supply and a switch (or the 5V pin of the 1012 and a switch) you can test the digital inputs of the 1012.
# Digital Outputs: Connect one of the bulb wire to the 5V terminal. Connect the other bulb wire to digital output terminal block number 3.
#Open Collector Digital Outputs: Connect a load (like a light bulb or LED) in series with a power supply and connect one end of the series to a digital output and the other to ground, as pictured.
# Connect the board to the PC using the USB cable.
#Connect the Phidget to your computer using the USB cable
|
<br clear="all">
[[File:1012_2_Connecting_The_Hardware.jpg|400px|link=]]
{{UGIntroDone|1012}}
||}}


===Testing Using Windows 2000 / XP / Vista / 7===


{{UGwin}}
==Using the 1012==


===Running Phidgets Sample Program===
{{UGcontrolpanel|1012}}


{{UGwin2|'''InterfaceKit-Full'''}}
{{ugDigitalInputAH|1012}}


{{UGbox|
{{ugDigitalOutput|1012|}} Remember, the 1012 simply acts as a switch to ground.
Double Click on the [[File:Ph.jpg|link=]] icon to activate the Phidget Control Panel and make sure that the Phidget InterfaceKit 0/16/16  is properly attached  to your PC.
|[[File:1012_2_Control_Panel_Screen.jpg|400px|link=]]
|
# Double Click on Phidget InterfaceKit 0/16/16 in the Phidget Control Panel to bring up InterfaceKit-full and check that the box labelled Attached contains the word True.
# To test the digital input, toggle the switch on and off. When on, a tick mark will appear in the Digital In box and the on-board LED will also turn on; the tick mark will disappear when the switch is off and the onboard LED light will go off.
# To test the digital output, put a tick mark in the digital out box and both the on-board LED  and the incandescent bulb will turn on. If you click on the box again the tick mark will go away and both lights will turn off. The bottom row shows the status of the request, while the top row displays the status of the digital output as reported by the device.
|[[File:1012_2_InterfaceKit_Screen.jpg|400px|link=]]
}}


===Testing Using Mac OS X===
{{ugAddressingInformation}}


{{UGmac|Phidget InterfaceKit 0/16/16|InterfaceKit-Full}}
{{ugUsingYourOwnProgram|1012}}


===Using Linux===
==Technical Details==


{{UGlinux}}
===Open Collector Digital Outputs===


===Using Windows Mobile / CE 5.0 / CE 6.0===
For more information on the 1012's digital outputs, see the [[Open Collector Digital Output Guide]].


{{UGce}}
===General===
All of the digital inputs have built-in filtering. This helps to eliminate false triggering from electrical noise. The input is first RC filtered by a 10k/100nF node, which will reject noise of higher frequency than 1kHz. This filter generally eliminates the need to shield the digital input from inductive and capacitive coupling that is likely to occur in the wiring harnesses.


==Technical Details==
===Monitoring a Switch===
 
===Digital Inputs===
 
There is built-in filtering on the digital input, to eliminate false triggering from electrical noise. The digital input is first RC filtered by a 10K/100nF node, which will reject noise of higher frequency than 1Khz. This filter generally eliminates the need to shield the digital input from inductive and capacitive coupling likely to occur in wiring harnesses.
 
====Monitoring a Switch====
[[File:1012_2_Digital_Inputs_2.jpg|thumb|250px|link=|A simplified schematic of a digital input on the [http://www.phidgets.com/products.php?product_id=1012 1012 - Phidget InterfaceKit 0/16/16].<br>[[Media:1012_2_Digital_Inputs_2.jpg|Full-Sized Image]]]]
[[File:1012_2_Digital_Inputs_2.jpg|thumb|250px|link=|A simplified schematic of a digital input on the [http://www.phidgets.com/products.php?product_id=1012 1012 - Phidget InterfaceKit 0/16/16].<br>[[Media:1012_2_Digital_Inputs_2.jpg|Full-Sized Image]]]]


To test your digital input, wire it up to a switch as shown in the diagram. The power supply '''VS1''' needs to be within 4-30V DC in order to guarantee a response from the digital input when the switch is closed.  
To test your digital input, wire it up to a switch as shown in the diagram. The power supply ''VS1'' needs to be within 4.2-30V DC in order to guarantee a response from the digital input when the switch is closed.  


<br clear=all>
<br clear=all>


====Monitoring the Position of a Relay====
===Monitoring the Position of a Relay===
[[File:1012_2_Digital_Inputs_3.jpg|thumb|250px|link=|Monitoring the position of a double-pole relay.<br>[[Media:1012_2_Digital_Inputs_3.jpg|Full-Sized Image]]]]
[[File:1012_2_Digital_Inputs_3.jpg|thumb|250px|link=|Monitoring the position of a double-pole relay.<br>[[Media:1012_2_Digital_Inputs_3.jpg|Full-Sized Image]]]]


Line 73: Line 54:
<br clear=all>
<br clear=all>


====Functional Block Diagram====
[[File:1012_2_Digital_Inputs_1.jpg|thumb|250px|link=|description<br>[[Media:1012_2_Digital_Inputs_1.jpg|Full-Sized Image]]]]
Unlike typical Phidgets [[Digital Input Primer|Digital Inputs]], these are capable of receiving up to 30VDC. These inputs are '''active high''': A voltage of 4VDC to 30VDC will be read as True or logical 1; below 1VDC will be read as a False or logical 0. The input is high impedance, which means current flowing into the Phidget device will be limited. Ground terminals are provided in multiple locations along the input terminal strip; it is recommended that the ground terminal located nearest the input terminal be used.
<br clear=all>
===Open Collector Digital Outputs===
For more information, check the [[Open Collector Digital Output Primer]].
==API==
{{UGapih}}
===Functions===
{{UGapi|int InputCount() [get] : Constant <nowiki>=</nowiki> 16
|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> 16
|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.
}}
===Events===
{{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.
}}


==Product History==
{{UGnext|}}
{{UGhist}}
{{UGrow|January 2003|0|600|Product Release}}
{{UGrow|January 2004|0|601|Added State Echoing}}
{{UGrow|September 2008|1|601|Added Digital Input Filtering}}
{{UGrow|September 2010|2|605|Smaller Terminal blocks, Mini-USB connector, red Digital Outputs and green Digital Inputs LEDs, added two +5V terminal blocks}}

Latest revision as of 19:38, 1 June 2023


Getting Started

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


Next, you will need to connect the pieces:

1012 2 Connecting The Hardware.jpg
  1. Digital Inputs: By connecting a power supply and a switch (or the 5V pin of the 1012 and a switch) you can test the digital inputs of the 1012.
  2. Open Collector Digital Outputs: Connect a load (like a light bulb or LED) in series with a power supply and connect one end of the series to a digital output and the other to ground, as pictured.
  3. Connect the Phidget to your computer using the USB cable


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


Using the 1012

Phidget Control Panel

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

First Look

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

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

Digital Input

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

1012 DigitalInputAL 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-high device, therefore, it will be true when connected to a high input and false when connected to ground.


Digital Output

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

1012 DigitalOutput 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 state of the digital output by pressing the button. Remember, the 1012 simply acts as a switch to ground.

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.

The locate Phidget button is found in the device information box

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.

All the information you need to address your Phidget

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 Code Samples.

Select your programming language of choice from the drop-down list to get an example for your device. You can use the options provided to further customize the example to best suit your needs.

Code Sample Choose Language.png


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.

Technical Details

Open Collector Digital Outputs

For more information on the 1012's digital outputs, see the Open Collector Digital Output Guide.

General

All of the digital inputs have built-in filtering. This helps to eliminate false triggering from electrical noise. The input is first RC filtered by a 10k/100nF node, which will reject noise of higher frequency than 1kHz. This filter generally eliminates the need to shield the digital input from inductive and capacitive coupling that is likely to occur in the wiring harnesses.

Monitoring a Switch

A simplified schematic of a digital input on the 1012 - Phidget InterfaceKit 0/16/16.
Full-Sized Image

To test your digital input, wire it up to a switch as shown in the diagram. The power supply VS1 needs to be within 4.2-30V DC in order to guarantee a response from the digital input when the switch is closed.


Monitoring the Position of a Relay

Monitoring the position of a double-pole relay.
Full-Sized Image

If you have a double-pole relay (that is, a relay that is designed to close two switches at once with the same control input), you can switch a load with one pole, and monitor the state of the relay with the other pole. This can come in handy as a safety feature- if the relay were to fail, your software would normally not have any way of knowing.



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.