Consortium
Activities
Projects
Forge
Events
Log-in
Register
Light RP
Space Menu
Consortium
|
Solutions
|
Middleware
|
Forge
|
MyObjectWeb
|
PDF
|
History
|
More Actions
View
Code
|
XML
|
Help
Documentation
|
XWiki Syntax
|
1 Embedded Light RP #toc("" "" "true") 1.1 Introduction This section describes the Embedded light RP developed by the POPS team, Inria-Lille. This software can be easily implemented in mobile terminals such like PDA to interact with RFID Reader devices. The implementation is divided into two subsets : RP API definition and core implementation for CAEN and BRI readers. The targeted RP architecture is the following : * One Reader Device : singleton representing the RFID reader device. * One Source : representing the PDA as a mobile source for reading tags. * One Read Point : representing the unique ANTENNA of each PDA. * One Data Selector : the default one, with EPCID field selection only. * No Tag Selector : The filtering is done by software at upper levels. * No Notification Channel : The inventory is done synchronously with a specified time-out per read cycle. * No triggers : the only Read Trigger is implicitly fired when calling the method Source.rawReadIDs. The implementation is performed as follows (example for BRI, idem. for CAEN): <center> <a href="http://wiki.aspire.ow2.org/xwiki/bin/download/Main.Documentation/LightRP/BRI_implementation.png">{image:BRI_implementation.png|250}</a> </center> 1.1 Users & Developers Guide The executable jar file can be found under the repository ReaderProtocol/dist. All the source can be found under the repository ReaderProtocol/src. Here is an example of Inventory of tags in reader's field: {code:java} // Reader singleton ReaderDevice myReader = ReaderFactory.getReader(ReaderFactory.BRI_READER,"BRIReaderDevice"); // Reader's default source and data selector Source mySource; DataSelector myDataSelector; // Establish Connections ReaderFactory.connectReader(myReader); // Reader's Data Selector : default singleton for selecting IDs // This is is the default data selector that supports at least the tag ID field // get Default Data Selector and update it myDataSelector = myReader.getCurrentDataSelector(); // Reader's source : Singleton mySource = myReader.getCurrentSource(); // Perform 10 read cycles for( int i = 0; i < 10 ; i++) { System.out.println("Read Cycle " + i + " at " + myReader.getTimeTicks() + " ticks"); // Inventory ReadReport myReadReport = mySource.rawReadIDs(myDataSelector); if (myReadReport == null) { System.err.println("Error : mySource.rawReadIDs null report "); } else { // Display read Tags (ids in hexadecimal) String[] tagIds = myReadReport.getTagIds(mySource.getName()); if (tagIds == null) { System.err.println("Error : myReadReport.getTagIds null "); } else if (tagIds.length == 0) { System.out.println("\t NO TAGS"); } else { for(int j = 0 ; j < tagIds.length; j++) System.out.println("\tObserved : 0x" + tagIds[j]); } } } // graceful disconnect : equivalent to ReaderFactory.disconnectReader(myReader); myReader.goodbye(); {code} 1.1 Download You can download the executable jar file from [here>http://forge.ow2.org/project/download.php?group_id=324&file_id=15239]. The source can be found [here>http://websvn.ow2.org/listing.php?repname=aspire&path=/trunk/servers/AspireRfidALE/LightALE/LightRP/]. Please follow the [Users & Developers Guide>http://wiki.aspire.ow2.org/xwiki/bin/view/Main.Documentation/LightRP#HUsers26DevelopersGuide] for your tests. More details about the complete version of Light ALE (with light RP embedded) can be found [here>http://wiki.aspire.ow2.org/xwiki/bin/view/Main.Documentation.Filtering%26Collection/EmbededALE].