programming fundamentals of rfid with special · pdf fileprogramming fundamentals of rfid...
TRANSCRIPT
Programming Fundamentals of RFID with Special Applications in Urban Tree
Management
Stephen WingardM.Sc. Candidate
Forest Information Technology
Vermessung & Geoinformatik GmbH
TRIGIS Vermessung & Geoinformatik
Founded
1990
Employees
ca. 120
Headquarters
Heidelbergstraße 7
07554Korbußen/Gera
TRIGIS - ServicesGeoinformatics
Creation of GIS, Digital City Maps, Network Information Systems (electric, gas, water, etc.)
SurveyingAsset documentation, Building and Street Construction, Planning Surveys
PhotogrammetryAcquisition and Analysis of Aerial Photography, Ortho-photos, Satellite Photography
ConsultingProject Conception, Process and Procedural Consulting, Education
Software DevelopmentInterfaces, IT-Integration, Application Development, Databases
Radio Frequency IDentification
Data
Contactless Interface RFID-TransponderRFID-Reader
„Auto-ID“ Technology
Controversy
Data Privacy & Security„Secret“ SurveillanceViruses & Worms
One should differentiate between real threats and paranoia!
Project Objective and Goals
ObjectiveDevelopment of fundamental programming procedures for an RFID device for the purpose of expediting future application development
Project Goals
Describe and demonstrate functions of the T4CE dynamic link library (dll)Develop practical mobile RFID software example (e.g. in Forestry)Create PDA-PC InterfaceCreate interface with GeoMedia geodatabase
Materials & Methods
Programming LanguageVisual Basic .NET .NET Framework 1.1.NET Compact Framework
Programming EnvironmentMicrosoft Visual Studio Enterprise Edition
Materials & Methods
T4CE dll programming interface (C++)OpenNetCF.org Desktop CommunicationDLLIntergraph GeoMedia (GIS)
RECON Industrial PDAWindows CE.NET OS
Compact Flash II RFID reader (13,56 MHz)Misc. Industrially coated RFID tags
T4CE DLL
First HurdlesImporting C++ library into .NET
Normally: Import DLLnameNon-.Net (for each function)
Solution: Class „RFID“ containing all functions and properties
Declare Function T4SelectTag Lib "t4ce.dll" Alias "T4SelectTag" (ByRef TagType As Byte, ByRef SerialNumber As Byte) As Integer
RFID Functions
25 Functions5 Initialization/Deinitialization5 Tag selection2 Read/Write2 Tag Options2 Reader Configuration2 Version Info1 Reader status6 Low level digital IO
Not all functions needed for
basic operation!
Reading/Writing Data
R/W operations occur in blocks1 block = 4 bytesUp to 4 blocks (16 bytes) may be read/written at once
To change 1 byte of information, entire block must be re-writtenMemory mapping very important!
Similar data stored together
Example: Memory MapBlock Byte Description
0 0 Day
1 Month
2 Year
3 Year
1 0 Hour
1 Minute
2 Second
3 Empty
2 0 Height
1 DBH
2 Age
3 Stem
3 0 Tree species
1 Tree species
2 Tree species
3 Crown
Read/Write Benchmark
0
2
4
6
8
10
12
14
1 4 8 16 32 64 128 256
Total Blocks
Tim
e (s
) Read 4Write 4Read 1Write 1
XML Format<Grünflächen_Laubbäume>
<LBAUM>
<RFID>00F090F4</RFID><ID>506</ID><Anlage_Name>Nibelungenring 30-42</Anlage_Name><Straße>Nibelungenring</Straße><Hausnummer>30-42</Hausnummer><Baumart>Spitzahorn</Baumart><Kronendurchmesser>6</Kronendurchmesser><Kronendurchmesser_max>7.5</Kronendurchmesser_max>
</LBAUM>
</Grünflächen_Laubbäume>