1023 User Guide: Difference between revisions

From Phidgets Support
No edit summary
 
(23 intermediate revisions by 3 users not shown)
Line 1: Line 1:
__NOINDEX__
<metadesc>You can read EM4100 series RFID tags at a distance of up to 6cm with the PhidgetRFID board. Connects to your computer via USB.</metadesc>
[[Category:UserGuide]]
[[Category:UserGuide]]
{{UserguideTOC|1023.jpg|1023}}
==Getting Started==
==Getting Started==
{{UGIntro|1023}}
*[{{SERVER}}/products.php?product_id=1023 1023 PhidgetRFID]
*USB cable and computer
*compatible RFID tag


===Checking the Contents===
{{UGbox|
'''You should have received:'''
* A PhidgetRFID
* A USB Cable
|
'''In order to test your new Phidget you will also need:'''
* A compatible RFID tag
||}}


===Connecting the Pieces===
Next, you will need to connect the pieces:
{{UGbox|
[[Image:1023_1_Connecting_The_Hardware.jpg|400px|right|link=]]
Connect the PhidgetRFID board to the computer using the USB  
# Connect the PhidgetRFID board to the computer using a USB cable.
cable.
<br clear="all">
|[[File:1023_1_Connecting_The_Hardware.jpg|400px|link=]]
{{UGIntroDone|1023}}
||}}


===Testing Using Windows 2000 / XP / Vista / 7===
==Using the 1023==
{{UGcontrolpanel|1023}}


{{UGwin}}
{{ugRFID|1023}}


===Running Phidgets Sample Program===
{{ugDigitalOutputOnOffRFID|1023}}


{{UGwin2|'''PhidgetRFID-Full'''}}
{{ugAddressingInformation}}


{{UGbox|
{{ugUsingYourOwnProgram|1023}}
Double Click on the [[File:Ph.jpg|link=]] icon to activate the Phidget Control Panel and make sure that '''Phidget RFID''' is properly attached  to your PC.
|[[File:1023_1_Control_Panel_Screen.jpg|400px|link=]]
|
#Double Click on '''Phidget RFID''' in the Phidget Control Panel to bring up RFID-full and check that the box labelled Attached contains the word True.
# Click on the Antenna Enabled box to enable the antenna.
# Click on the LED Enabled box to turn the LED on or off.
# The Output 0 box controls the +5V digital output and the Output 1 box controls the external LED digital output.
# Bring an RFID tag close to the PhidgetRFID board and check that the identification string is displayed. Make sure that the Antenna is enabled for this step.
# When the Keyboard Output is Enabled, the identification string will also be displayed at the cursor point in an application running in active window on the PC (such as a word document, for example).
|[[File:1023_1_RFID_Screen.jpg|400px|link=]]
}}
 
===Testing Using Mac OS X===
 
{{UGmac|Phidget RFID|RFID-full}}
 
===Using Linux===
 
{{UGlinux}}
 
===Using Windows Mobile / CE 5.0 / CE 6.0===
 
{{UGce}}


==Technical Details==
==Technical Details==
===Controlled Outputs===
===Controlled Outputs===
[[image:Rfid_relay.png|thumb|310px|link=|Make sure to attach a relay across the terminals of the relay if you are using output 0 on the RFID board to drive it.]]
[[image:Rfid_relay.png|thumb|310px|link=|Make sure to attach a diode across the terminals of the relay if you are using output 0 on the RFID board to drive it.]]
The PhidgetRFID has four outputs - two of which are available to the user, and two of which are for internal control of the Phidget board only. Output 0 is a +5V source from the USB bus through a P-Channel MOSFET with less than one ohm impedance. This can be used to switch a TTL or CMOS device, or it can be used to drive a 5VDC relay such as the Aromat JS1-5V. Output 1 is an LED drive output at 5VDC with maximum 15mA of available current (250 ohm CMOS output). Both Output 0 and 1 are available in hardware at the terminal blocks on the PhidgetRFID board.  If Output 0 is used to drive a relay, a fast clamping diode must be placed across the relay drive pins as shown in the diagram on the right. Not doing so can result in permanent damage to the PhidgetRFID board.
The PhidgetRFID has four outputs - two of which are available to the user. Output 0 is a 5VDC source from the USB bus through a P-Channel MOSFET with less than one ohm impedance. This can be used to switch a TTL or CMOS device, or it can be used to drive a 5VDC relay such as the Aromat JS1-5V. Output 1 is an LED drive output at 5VDC with maximum 15mA of available current (250 ohm CMOS output). Both Output 0 and 1 are available in hardware at the terminal blocks on the PhidgetRFID board.  If Output 0 is used to drive a relay, a fast clamping diode must be placed across the relay drive pins as shown in the diagram on the right. Not doing so can result in permanent damage to the PhidgetRFID board.


{| style="border:1px solid darkgray;" cellpadding="7px;"
{|class = "wikitable"
|+'''1023 Outputs'''
| align="center" style="background:#f0f0f0;"|'''Output'''
|-style="background: #d1d1d1" align=center
| align="center" style="background:#f0f0f0;"|'''Function '''
!Output || Function || Connection
| align="center" style="background:#f0f0f0;"|'''Connection'''
|-
|-
|style="background: #f0f0f0" align=center| 3019_0
|align=center| 0
|style="background: #f0f0f0" align=center| Molex 50-57-940
|align=center| +5VDC Source
|style="background: #f0f0f0" align=center| 50
|align=center| Terminal Block
|-
|-
 
|align=center| 1
|style="background: #f0f0f0" align=center| 0
|align=center| External LED Drive
|style="background: #f0f0f0" align=center| +5VDC Source
|align=center| Terminal Block
|style="background: #f0f0f0" align=center| Terminal Block
|-
|-
|style="background: #f0f0f0" align=center| 1
|align=center| LED
|style="background: #f0f0f0" align=center| External LED Drive
|align=center| Internal LED Drive
|style="background: #f0f0f0" align=center| Terminal Block
|align=center| Internal Only
|-
|-
|style="background: #f0f0f0" align=center| LED
|align=center| RF Enable
|style="background: #f0f0f0" align=center| Internal LED Drive
|align=center| RF Antenna Enable
|style="background: #f0f0f0" align=center| Internal Only
|align=center| Internal Only  
|-
|style="background: #f0f0f0" align=center| RF Enable
|style="background: #f0f0f0" align=center| RF Antenna Enable
|style="background: #f0f0f0" align=center| Internal Only  
|}
|}


Line 89: Line 56:


===Interfering Signals===
===Interfering Signals===
If you are using multiple RFID readers, placing them too close together will cause interference when reading tags. You can work around this problem by rapidly "polling" each 1023 by turning the antenna on, checking for tags, and then turning it off in sequence. Of course, this will lengthen the amount of time it takes for your system to read a tag, since you may have to wait for the nearest reader to become active.


If you are using multiple RFID readers, placing them too close together will cause interference when reading tags. You could work around this problem by rapidly "polling" each 1023 by turning the antenna on, checking for tags, and then turning it off in sequence. Of course, this will lengthen the amount of time it takes for your system to read a tag, since you may have to wait for the nearest reader to become active.
===Object Speed===
When trying to read tags, you should allow the tag to remain within detection range for at least 50ms. Tags moving through the detection area faster than this may not register.


===Further Reading===
===Further Reading===
For more information on RFID readers and tags, visit the [[RFID Guide]].


For more information on RFID readers and tags, visit the [[RFID Primer]].
{{UGnext|}}
 
==API==
{{UGapih}}
 
===Functions===
 
{{UGapi|int OutputCount () [get] : Constant
|Returns the number of digital outputs available on this PhidgetRFID.  These are the outputs provided by the terminal block.
}}
 
{{UGapi|bool OutputState (int OutputIndex) [get,set]
|Sets/Returns the state of an output. True indicates activated, False deactivated.  False is the default state.
}}
 
{{UGapi|bool AntennaOn() [get,set]
|Sets/Returns the state of the antenna. True turns the antenna on, False turns it off. The antenna if by default turned off, and needs to be explicitely activated before tags can be read.
}}
 
{{UGapi|bool LEDOn() [get,set]
|Sets/Returns the state of the onboard LED. True turns the LED on, False turns it off. The LED is by default turned off.
}}
 
{{UGapi|string LastTag () [get]
|Returns the last tag read. This method will only return a valid tag after a tag has been seen. This method can be used even after a tag has been removed from range of the reader.
}}
 
{{UGapi|bool TagStatus() [get]
|Returns the state of whether or not a tag is being read by the reader. True indicates that a tag is on (or near) the reader.
}}
 
===Events===
{{UGapi|OnOutputChange(int OutputIndex, bool State) [event]
|An event issued when an output has changed.
}}
 
{{UGapi|OnTag(string) [event]
|An event issued when a new tag is seen by the reader. The event is only fired one time for a new tag, so the tag has to be removed and then replaced before another OnTag event will fire.
'''Note:''' it is very important not to block in this event, or you will receive extra attach / detach events.
}}
 
{{UGapi|OnTagLost(string) [event]
|An event issued when a tag is removed from the reader.
}}
 
==Product History==
{{UGhist}}
{{UGrow|June 2002    |0|100|Product Release}}
{{UGrow|April 2004  |0|200|Onboard LED, 2 Digital Outputs added.  Ability to enable/disable Antenna added. }}
{{UGrow|January 2005 |0|201|RF Circuitry upgraded to improve reliability}}
{{UGrow|January 2006 |0|202|Onboard microprocessor upgraded to Flash version.}}
{{UGrow|June 2006    |0|204|Low Voltage Reset set at 4.7 Volts}}
{{UGrow|April 2007  |0|205|Protocol parsing bug fixed which garbled top 3 bits of RFID Tag.  }}
{{UGrow|July 2007    |1|206|Unused internal I/O pulled high out of an abundance of caution, bus current characterized.  Terminal block moved to edge of PCB, center of antenna routed out, digital output transients on startup eliminated.}}

Latest revision as of 18:22, 1 June 2023


Getting Started

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


Next, you will need to connect the pieces:

1023 1 Connecting The Hardware.jpg
  1. Connect the PhidgetRFID board to the computer using a USB cable.


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

Using the 1023

Phidget Control Panel

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

First Look

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

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

RFID

Double-click on the RFID object labelled RFID Reader in order to run the example:

RFID 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:

  • Bring a compatible tag close to the 1023 and the tag's string and protocol will be displayed.
  • Toggle power to the antenna using the checkbox labelled Antenna Enabled. Toggling antenna power decreases power consumption, however, the 1023 will no longer be able to read tags.
  • Enabling the Keyboard Output Enabled checkbox will cause your computer to write a string of text whenever a tag is discovered. Park your cursor in an empty text file and try it out!


Digital Output

Double-click on one of the Digital Output objects available in order to run the example. They are labelled Digital Output, LED Driver, and Onboard LED.

1023DigitalOutput OnOff 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.


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

Controlled Outputs

Make sure to attach a diode across the terminals of the relay if you are using output 0 on the RFID board to drive it.

The PhidgetRFID has four outputs - two of which are available to the user. Output 0 is a 5VDC source from the USB bus through a P-Channel MOSFET with less than one ohm impedance. This can be used to switch a TTL or CMOS device, or it can be used to drive a 5VDC relay such as the Aromat JS1-5V. Output 1 is an LED drive output at 5VDC with maximum 15mA of available current (250 ohm CMOS output). Both Output 0 and 1 are available in hardware at the terminal blocks on the PhidgetRFID board. If Output 0 is used to drive a relay, a fast clamping diode must be placed across the relay drive pins as shown in the diagram on the right. Not doing so can result in permanent damage to the PhidgetRFID board.

Output Function Connection
0 +5VDC Source Terminal Block
1 External LED Drive Terminal Block
LED Internal LED Drive Internal Only
RF Enable RF Antenna Enable Internal Only


Interfering Signals

If you are using multiple RFID readers, placing them too close together will cause interference when reading tags. You can work around this problem by rapidly "polling" each 1023 by turning the antenna on, checking for tags, and then turning it off in sequence. Of course, this will lengthen the amount of time it takes for your system to read a tag, since you may have to wait for the nearest reader to become active.

Object Speed

When trying to read tags, you should allow the tag to remain within detection range for at least 50ms. Tags moving through the detection area faster than this may not register.

Further Reading

For more information on RFID readers and tags, visit the RFID Guide.

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.