A Modular Integrated RFID System for Inventory Control Applications

Recent advances in single-board computer technology have allowed for lightweight, power-efficient devices, such as the Raspberry Pi, to take the place of desktop PCs in certain applications. This has the potential to disrupt the way many current systems are structured, particularly for inventory management and control applications. In this paper, we explore the design and topology of a modular Radio frequency identification (RFID) system for inventory management comprised of self-contained, autonomous scanning, and stationary control PCs in a handheld/portable configuration. While similar solutions for such a system may exist on the commercial market, this proposed development provides a template for an open source flexible, low-cost solution that can be easily expanded to meet the needs of businesses with large and small inventories.


Introduction
In recent years, advancements in the capabilities and manufacturing techniques of Radio frequency identification (RFID) tags have contributed to their growing presence in inventory management systems [1][2][3][4][5].Their small size, controllable read range, and ability to respond with signals after receiving power from an RFID reader make the technology ideal for cataloging and tracking an inventory with minimal overhead required for sustained operation.Currently, several companies offer turnkey inventory management solutions with varying degrees of customizability, but none offer a completely modular, open source system with the full capability of an integrated computer [6][7][8][9][10][11][12].This paper presents an RFID tag reader system, designed to provide a highly customizable inventory control solution, by combining modular hardware and modifiable open-source software at a reasonable cost.The system described implements a flexible and easily upgradeable design that allows for two modes of operation: as a portable unit containing both the RFID and computer hardware and user interface, or for remote scanning from a desktop computer with the RFID hardware mounted on an autonomous robotic platform.This paper will focus on the former mode of operation while the latter mode of operation is easily adaptable.The development of such a system, coupled with RFID tags that are capable of sustained operation in harsh environments [1], can be easily adapted for a wide variety of applications, including industrial production or manufacturing, mining operations, and military asset management.

RFID System Components
An RFID reader consists of four core components: antenna, RFID interrogator, processor, and user interface.The antenna and interrogator work in conjunction to gather and decode the tag information, which is then passed to the processor.The processor must be capable of retrieving information associated with the tag from a database and displaying it on the interface.To enhance the adaptability of the overall system, the core components are split into two groups capable of independent operation: the antenna and interrogator are grouped together, as are the processor and interface.A diagram demonstrating this relationship is shown in Figure 1.
Electronics 2017, 6, 9 2 of 9 information associated with the tag from a database and displaying it on the interface.To enhance the adaptability of the overall system, the core components are split into two groups capable of independent operation: the antenna and interrogator are grouped together, as are the processor and interface.A diagram demonstrating this relationship is shown in Figure 1.The scope of this development project encompassed the design and configuration of several pieces of hardware: an initial reader prototype, a handheld base station and reader, and a desktop client.The initial reader prototype is built to gain familiarity with the capabilities of RFID interrogator hardware and to learn the requirements for software integration.The handheld base station and reader unit utilized a more powerful interrogator and expanded the functionality to allow for portable operation with a touch interface.The desktop client software is developed for the handheld base station to expand and demonstrate the flexible networking capabilities of the system.
The initial prototype is constructed using a ThingMagic M6e Development Kit (atlasRFIDstore, Birmingham, AL, USA) as an interrogator, and a Windows 8.1 PC with a mouse and keyboard as the processor and interface.The communication between the interrogator and processor is achieved through a direct USB connection.A picture of the interrogator and antenna can be seen in Figure 2. The desktop client software is designed to retrieve current tag reads from the database server and is utilizing a standard desktop operating system.The used PC had Windows 8.1 installed and the software is written using Java which is compatible with recent releases of Windows, Macintosh, and Linux.An Alien 915 MHz right-hand circular polarized antenna is used in this prototype version.The ThingMagic interrogator and Alien antenna are capable of reading Gen2 RFID tags in the regulated frequency band, 902-928 MHz.The antenna can be easily swapped for a more specialized and potentially smaller and directive/focused antenna to target the needs of specific applications.
For the handheld base station and reader, a ThingMagic Mercury M6e xPRESS Sensor Hub is used as the interrogator.This unit has identical features to the development kit used for the initial desktop prototype, with the advantage of having an embedded operating system that allows for greater customization of operating parameters and the ability to communicate through a WiFi hardware module.The WiFi capability is central to the modular aspect of the design, as a layer of abstraction can effectively be created between the antenna/interrogator and the processor/interface components.Thus, tag information packets broadcast over WiFi by the xPRESS Sensor Hub can be received by a database server and retrieved by either a remote PC or a portable processor with The scope of this development project encompassed the design and configuration of several pieces of hardware: an initial reader prototype, a handheld base station and reader, and a desktop client.The initial reader prototype is built to gain familiarity with the capabilities of RFID interrogator hardware and to learn the requirements for software integration.The handheld base station and reader unit utilized a more powerful interrogator and expanded the functionality to allow for portable operation with a touch interface.The desktop client software is developed for the handheld base station to expand and demonstrate the flexible networking capabilities of the system.
The initial prototype is constructed using a ThingMagic M6e Development Kit (atlasRFIDstore, Birmingham, AL, USA) as an interrogator, and a Windows 8.1 PC with a mouse and keyboard as the processor and interface.The communication between the interrogator and processor is achieved through a direct USB connection.A picture of the interrogator and antenna can be seen in Figure 2.
Electronics 2017, 6, 9 2 of 9 information associated with the tag from a database and displaying it on the interface.To enhance the adaptability of the overall system, the core components are split into two groups capable of independent operation: the antenna and interrogator are grouped together, as are the processor and interface.A diagram demonstrating this relationship is shown in Figure 1.The scope of this development project encompassed the design and configuration of several pieces of hardware: an initial reader prototype, a handheld base station and reader, and a desktop client.The initial reader prototype is built to gain familiarity with the capabilities of RFID interrogator hardware and to learn the requirements for software integration.The handheld base station and reader unit utilized a more powerful interrogator and expanded the functionality to allow for portable operation with a touch interface.The desktop client software is developed for the handheld base station to expand and demonstrate the flexible networking capabilities of the system.
The initial prototype is constructed using a ThingMagic M6e Development Kit (atlasRFIDstore, Birmingham, AL, USA) as an interrogator, and a Windows 8.1 PC with a mouse and keyboard as the processor and interface.The communication between the interrogator and processor is achieved through a direct USB connection.A picture of the interrogator and antenna can be seen in Figure 2. The desktop client software is designed to retrieve current tag reads from the database server and is utilizing a standard desktop operating system.The used PC had Windows 8.1 installed and the software is written using Java which is compatible with recent releases of Windows, Macintosh, and Linux.An Alien 915 MHz right-hand circular polarized antenna is used in this prototype version.The ThingMagic interrogator and Alien antenna are capable of reading Gen2 RFID tags in the regulated frequency band, 902-928 MHz.The antenna can be easily swapped for a more specialized and potentially smaller and directive/focused antenna to target the needs of specific applications.
For the handheld base station and reader, a ThingMagic Mercury M6e xPRESS Sensor Hub is used as the interrogator.This unit has identical features to the development kit used for the initial desktop prototype, with the advantage of having an embedded operating system that allows for greater customization of operating parameters and the ability to communicate through a WiFi hardware module.The WiFi capability is central to the modular aspect of the design, as a layer of abstraction can effectively be created between the antenna/interrogator and the processor/interface components.Thus, tag information packets broadcast over WiFi by the xPRESS Sensor Hub can be received by a database server and retrieved by either a remote PC or a portable processor with The desktop client software is designed to retrieve current tag reads from the database server and is utilizing a standard desktop operating system.The used PC had Windows 8.1 installed and the software is written using Java which is compatible with recent releases of Windows, Macintosh, and Linux.An Alien 915 MHz right-hand circular polarized antenna is used in this prototype version.The ThingMagic interrogator and Alien antenna are capable of reading Gen2 RFID tags in the regulated frequency band, 902-928 MHz.The antenna can be easily swapped for a more specialized and potentially smaller and directive/focused antenna to target the needs of specific applications.
For the handheld base station and reader, a ThingMagic Mercury M6e xPRESS Sensor Hub is used as the interrogator.This unit has identical features to the development kit used for the initial desktop prototype, with the advantage of having an embedded operating system that allows for greater customization of operating parameters and the ability to communicate through a WiFi hardware module.The WiFi capability is central to the modular aspect of the design, as a layer of abstraction can effectively be created between the antenna/interrogator and the processor/interface components.Thus, tag information packets broadcast over WiFi by the xPRESS Sensor Hub can be received by Electronics 2017, 6, 9 3 of 8 a database server and retrieved by either a remote PC or a portable processor with integrated user interface.For the final portable hardware prototype, the processor and interface are comprised of a Raspberry Pi 3, a 7" Pi Touch Display, and a Bluetooth keyboard.This prototype is powered by a 7.4 V LiPO battery along with two precision DC-DC UBEC regulators to supply the 5 V required by the Raspberry Pi, touch display, and Thing Magic xPRESS Sensor Hub.The UBEC regulators are chosen due to their low cost, regulation precision over a wide range of input voltages, and high current sourcing capabilities.A power distribution diagram for the portable modular unit is shown in Figure 3.
Electronics 2017, 6, 9 3 of 9 integrated user interface.For the final portable hardware prototype, the processor and interface are comprised of a Raspberry Pi 3, a 7″ Pi Touch Display, and a Bluetooth keyboard.This prototype is powered by a 7.4 V LiPO battery along with two precision DC-DC UBEC regulators to supply the 5 V required by the Raspberry Pi, touch display, and Thing Magic xPRESS Sensor Hub.The UBEC regulators are chosen due to their low cost, regulation precision over a wide range of input voltages, and high current sourcing capabilities.A power distribution diagram for the portable modular unit is shown in Figure 3.

Software Design
The developed software for the RFID reader hardware, including the user interface, is designed to perform several duties.Primarily, it is built to allow the user to access data associated with any RFID tags that had been recently scanned by the hardware.To accomplish this, it is determined that it must also be able to communicate using established networking protocols and access an existing database.The user interface is developed first during the initial prototyping stage, and expanded to include the full networking capabilities during the construction of the handheld base station and reader unit.
The developed software is written in Java due to its wide adoption as the language of choice for enterprise-quality software.As seen in Figure 4, the user interface is structured around a main window where all tags within the reading range are displayed.Each visible tag can be double-clicked on to retrieve its information from the linked database, including the RFID tag number, the name of the associated item, a description of the item, and a picture of the item.A full-sized picture of the item can also be accessed from this user screen.All values except the RFID tag number can be modified from this screen.The information stored in the development database is primarily for demonstration purposes, and the developed modular RFID system is capable of enhancing/extending the type and amount of data to be stored in the database based on the application type.

Software Design
The developed software for the RFID reader hardware, including the user interface, is designed to perform several duties.Primarily, it is built to allow the user to access data associated with any RFID tags that had been recently scanned by the hardware.To accomplish this, it is determined that it must also be able to communicate using established networking protocols and access an existing database.The user interface is developed first during the initial prototyping stage, and expanded to include the full networking capabilities during the construction of the handheld base station and reader unit.
The developed software is written in Java due to its wide adoption as the language of choice for enterprise-quality software.As seen in Figure 4, the user interface is structured around a main window where all tags within the reading range are displayed.Each visible tag can be double-clicked on to retrieve its information from the linked database, including the RFID tag number, the name of the associated item, a description of the item, and a picture of the item.A full-sized picture of the item can also be accessed from this user screen.All values except the RFID tag number can be modified from this screen.The information stored in the development database is primarily for demonstration purposes, and the developed modular RFID system is capable of enhancing/extending the type and amount of data to be stored in the database based on the application type.
The software module topology is designed around the networking capabilities of the xPRESS Sensor Hub.Testing determined that the UDP connection worked reliably to transfer tag read information between the Sensor Hub and a remote client.However, since a single server, multiple client relationship is usually desired in many applications, an HTTP server is constructed to keep and serve an up-to-date record of the most recent read data received through the UDP connection.This relationship is portrayed in Figure 5.In addition to the raw tag data, the HTTP server accesses the full database and returns all available information pertaining to the tag reads when queried, including the raw tag number, the name of the item associated with the tag, and a short description.Since it is only possible to send a single object as a response to an HTTP 'get' request, all text information is packaged together and sent to a client on receipt of a query, and the client can then request pictures for each entry from the server with additional queries.To save on data transfer, the client software is configured to only request pictures that do not already exist locally in the handheld unit self-storage media.The software module topology is designed around the networking capabilities of the xPRESS Sensor Hub.Testing determined that the UDP connection worked reliably to transfer tag read information between the Sensor Hub and a remote client.However, since a single server, multiple client relationship is usually desired in many applications, an HTTP server is constructed to keep and serve an up-to-date record of the most recent read data received through the UDP connection.This relationship is portrayed in Figure 5.In addition to the raw tag data, the HTTP server accesses the full database and returns all available information pertaining to the tag reads when queried, including the raw tag number, the name of the item associated with the tag, and a short description.Since it is only possible to send a single object as a response to an HTTP 'get' request, all text information is packaged together and sent to a client on receipt of a query, and the client can then request pictures for each entry from the server with additional queries.To save on data transfer, the client software is configured to only request pictures that do not already exist locally in the handheld unit self-storage media.

Final Product
Versions of the handheld station and reader are constructed to prove the viability of an adaptable and modular RFID reader and communications platform.The UDP-HTTP server is housed on the same handheld station Raspberry Pi as the mobile client software, for the sake of hardware convenience.The systemic modularity allows for this server to be housed on the same hardware as an instance of the client software or it can be located on a detached PC on the same network acting as a dedicated server.
A physical enclosure of the developed unit, shown in Figure 6, is drafted using AutoDesk Fusion360, with a focus on ease of assembly, portability, and ergonomics.An 1/8″ acrylic sheet is

Final Product
Versions of the handheld station and reader are constructed to prove the viability of an adaptable and modular RFID reader and communications platform.The UDP-HTTP server is housed on the same handheld station Raspberry Pi as the mobile client software, for the sake of hardware convenience.
The systemic modularity allows for this server to be housed on the same hardware as an instance of the client software or it can be located on a detached PC on the same network acting as a dedicated server.
A physical enclosure of the developed unit, shown in Figure 6, is drafted using AutoDesk Fusion360, with a focus on ease of assembly, portability, and ergonomics.An 1/8" acrylic sheet is procured and laser cut according to the drafted design.The pieces are then assembled and the hardware is mounted internally.The completed enclosure, with mounted hardware and wiring can be seen in Figures 7 and 8. system modules.

Final Product
Versions of the handheld station and reader are constructed to prove the viability of an adaptable and modular RFID reader and communications platform.The UDP-HTTP server is housed on the same handheld station Raspberry Pi as the mobile client software, for the sake of hardware convenience.The systemic modularity allows for this server to be housed on the same hardware as an instance of the client software or it can be located on a detached PC on the same network acting as a dedicated server.
A physical enclosure of the developed unit, shown in Figure 6, is drafted using AutoDesk Fusion360, with a focus on ease of assembly, portability, and ergonomics.An 1/8″ acrylic sheet is procured and laser cut according to the drafted design.The pieces are then assembled and the hardware is mounted internally.The completed enclosure, with mounted hardware and wiring can be seen in Figures 7 and 8.The cost of the developed modular prototype unit is $1,310 United States Dollars (USD), of which $1,061 USD is spent procuring the ThingMagic xPRESS Sensor Hub and the antenna.Labor and software development cost are not included.The cost of a handheld unit (without the interrogator/antenna) is approximately $235 USD.The client software can be loaded onto a desktop PC for no financial expenditure, assuming that the PC is in good operational order and able to associate with a wireless network.A full bill of materials can be seen in Table 1.The cost of the developed modular prototype unit is $1,310 United States Dollars (USD), of which $1,061 USD is spent procuring the ThingMagic xPRESS Sensor Hub and the antenna.Labor and software development cost are not included.The cost of a handheld unit (without the interrogator/antenna) is approximately $235 USD.The client software can be loaded onto a desktop PC for no financial expenditure, assuming that the PC is in good operational order and able to associate with a wireless network.A full bill of materials can be seen in Table 1.The cost of the developed modular prototype unit is $1,310 United States Dollars (USD), of which $1061 USD is spent procuring the ThingMagic xPRESS Sensor Hub and the antenna.Labor and software development cost are not included.The cost of a handheld unit (without the interrogator/antenna) is approximately $235 USD.The client software can be loaded onto a desktop PC for no financial expenditure, assuming that the PC is in good operational order and able to associate with a wireless network.A full bill of materials can be seen in Table 1.

Typical Operation Procedure
The developed prototype unit operates by plugging in the battery to the power harness, which contains the UBEC regulators.The two regulators will, in turn, provide power to the xPRESS Sensor Hub and to the Pi and touch display.Once the Pi has booted up, several scripts will need to be run: one to initialize the UDP connection, one to initialize the HTTP server, and one to start the client software that serves as a user interface.The Sensor Hub can then be started by pressing the onboard 'Power' button, followed by the 'User' button to actually begin the tag reading operation.When moving towards production, the operation of the xPRESS Sensor Hub can be modified in the developed code to start reading as soon as power is applied, but this behavior is not desirable for the prototype stage for debugging purposes.At this point, the UDP connection should be active, assuming that both the xPRESS Sensor Hub and Raspberry Pi are associated with the same WiFi network.Any tag reads that are transmitted through UDP are used to update the record of recent reads that is available for request from the HTTP server.The client interface queries the HTTP server, and will display all information contained in the database pertaining to the recent reads.As mentioned previously, the client software can be running on any Java-capable machine on the same WiFi network as the other elements of the prototype.

Comparison to Existing Solutions
A limited list of interfacing devices (smartphone, personal digital assistant (PDA), etc.) is available for commercially available products [7,9] similar to this developed RFID modular system.Other products offer an Application program interface (API) allowing for interface customization, but only on platforms capable of limited computing, such as Windows Mobile and Android [6,7].There is also a reader designed around an open source API for non-proprietary software development, but the hardware is not configurable [10].Several very low-cost Android-based models also exist, but have unmodifiable, proprietary software, based on versions of Android up to four years old [11,12].The developed RFID modular system, as described here, overcomes all the above limitations by being modular and open source.Thus, allowing the user to update/change the hardware and also modify the associated developed software based on the application needs.

Applications and Future Work
The flexibility of this system makes it ideal for customized application in a wide variety of industries.Depending on the types of tags and antennas used, a high-precision, close-range system could be developed for monitoring a dense inventory as may exist in a medical research facility, a library, a paper manufacturing facility, or a beverage manufacturing facility [13][14][15].A far-field system, using far filed focused antenna, could also be assembled for a less dense application such as a mining operation, warehouse, shipping facility, or retail store.Furthermore, combination systems involving both long-and short-range focused antennas could easily be implemented by adding additional xPRESS Sensor Hubs to the system, which could be useful for applications in military or manufacturing, where more complex RFID monitoring behavior might be required.For systems requiring a smaller hardware footprint, miniature antennas [16] or antennas capable of operating in both near-and far-fields [17] could be utilized.RFID tags with integrated sensors could also be used for wireless manufacturing process control or monitoring of civil infrastructure [18,19].
When determining the necessary elements to be utilized in constructing an appropriate RFID system for any application, it is important to consider the environmental factors involved.The necessary steps to understand how RFID performance is affected by environmental hazards, and what hardware choices can be made to mitigate the negative effects, can be determined with analysis methods similar to those documented in existing literature [20].By completing this analysis, the modular system can be adapted to perform in a satisfactory manner in nearly any environment.
In the future, there are several main features that will need to be implemented in order to transform this developed portable RFID system unit from a proof-of-concept prototype to a production-ready turnkey RFID monitoring system.A formalized database system will need to be implemented to securely store information associated with the tags present in the tag pool.At present, the server loads all tag information from a JavaScript Object Notation (JSON)-encoded text file at runtime, but this will require advanced software development to scale efficiently for systems with hundreds or thousands of associated tags.Utilities for modifying the database may also need to be developed to improve long-term maintainability.The interface for the client software is currently optimized for use on a small touchscreen, thus work could be done to dynamically resize the interface elements based on the available screen resolution.Rather than further developing Java-based client software, a web-based client could also be developed.This would be a significant improvement, as the status of the reader could be checked from any web-enabled system, including computers, smartphones, and tablets.The additional development could mesh seamlessly with the existing framework, as an HTTP server already exists to serve data, thus it would be a relatively trivial task for a web developer to design a user interface for displaying the tag reads in a web browser.

Figure 1 .
Figure 1.Core components of an RFID reader.

Figure 1 .
Figure 1.Core components of an RFID reader.

Figure 1 .
Figure 1.Core components of an RFID reader.

Figure 3 .
Figure 3. Power distribution diagram for the handheld unit.

Figure 3 .
Figure 3. Power distribution diagram for the handheld unit.

Electronics 2017, 6 , 9 4 of 9 Figure 4 .
Figure 4. Examples of windows in the software interface.The windows visible from back to front are: the main tag read window for all tags, the detailed view of all database information pertaining to a single tag, and the full-sized picture associated with the tag.

Figure 4 .of 9 Figure 5 .
Figure 4. Examples of windows in the software interface.The windows visible from back to front are: the main tag read window for all tags, the detailed view of all database information pertaining to a single tag, and the full-sized picture associated with the tag.Electronics 2017, 6, 9 5 of 9

Figure 5 .
Figure 5. High-level system topology showing network communication protocols used between system modules.

Figure 6 .
Figure 6.Autodesk Fusion 360 rendering of the handheld unit enclosure.Figure 6. Autodesk Fusion 360 rendering of the handheld unit enclosure.

Figure 8 .
Figure 8. Rear view of the handheld unit with the access flap open, showing necessary wiring for power distribution.

Figure 7 . 9 Figure 7 .
Figure 7. Front view of the completed handheld unit prototype.

Figure 8 .
Figure 8. Rear view of the handheld unit with the access flap open, showing necessary wiring for power distribution.

Figure 8 .
Figure 8. Rear view of the handheld unit with the access flap open, showing necessary wiring for power distribution.

Table 1 .
Inclusive bill of materials for all materials used to construct the prototype unit.

Table 1 .
Inclusive bill of materials for all materials used to construct the prototype unit.

Table 1 .
Inclusive bill of materials for all materials used to construct the prototype unit.