![]() ![]() ![]() ![]() ![]() |
||||||||
![]() |
||||||||
|
Radio frequency identification (RFID) is a technology used to identify objects. It’s non-contact, it doesn’t require any audio/visual signals or special alignment and the ID tag that goes on the object is small and inexpensive. You’ve almost certainly been exposed to RFID before as it’s commonly used on clothing, CDs and library books to prevent unauthorised removal. How does it work? Depends on the type of system! We use passive tags, and in the words of Wikipedia: “Passive RFID tags have no internal power supply. The minute electrical current induced in the antenna by the incoming radio frequency signal provides just enough power for the CMOS integrated circuit (IC) in the tag to power up and transmit a response.” Click here for more information about the technology.
Our system is designed to memorise the ID numbers of all the clues that the users scan in, and then transmit it to the exhibit control system in a way that’s easy to interpret. Bringing an RFID tag with about 40mm of the RFID reader module will make it read the tag and output the ID number in ‘weigand’ format. A microcontroller memorises this ID number as well as running all the switches, symbols and lighting on the device. The microcontroller then sends the ID numbers as ASCII text over an RS232 link - a format that computers find it easier to understand beacuse they think they’re connected to a keyboard! The computer reads this text and saves it to a file and from there it is very easy to “play the you saved the world sequence if you’ve found clues A, C and D” for example.
This standard gives up to 16,711,425 unique IDs. We don’t need this many and that number is awkward to handle, so what we do is read them all then discard all but the last 8 bits – you’ll see why this works well when we describe the code. The following excerpt from the user-manual for out particular scanner describes the actual data itself: The wiegand output port is a two wire serial interface where logic 0 data bits are transmitted on the “Data 0” wire and logic 1 data bits are transmitted on the “Data 1” wire. The following diagram gives an example of a wiegand transmission using factory default settings.
When
no data is being transmitted the outputs are high (5V). Data bits are
represented by low-going pulses, with an interval of time between each
pulse. In the factory default configuration, the pulse width is 40us and
the spacing between pulses is 2ms. Pulse width is configurable in 4us
intervals with values ranging between 4us and 1.02ms. Pulse spacing is
configurable in 25us intervals with values ranging between 25us and 6.375ms.
The module we chose was HIDCorp’s OEM150. HIDCorp because COO Steve Wagner generously agreed to support the 2.744 class with free RFID tags/modules/technical support; the OEM150 because it offered the combination of physical size, range and functionality. (The device needs just power and ground for it to read tags and output their IDs) The important details are listed below: *Size: 83x38x10mm *Range: 40mm *Current requirements: 52/80mA average/peak *Voltage
requirements: 5-16V DC *Regulatory approval: Technically this is required *Start-up
time: 3 seconds *Delay between
scans: 1-2 seconds Some more
detail on how the tags work:
|
||||||||