Teaching Application Development for RFID/ZigBee Networks using Open Source Hardware Dalibor Dobrilovic, Zeljko Stojanov, Borislav Odadzic Department of Information Technology University of Novi Sad / Technical Faculty Mihajlo Pupin Zrenjanin, Serbia ddobrilo@tfzr.rs; zeljko.stojanov@tfzr.rs; borislav.odadzic@tfzr.rs
INTRODUCTION There has been significant breakthrough in utilization of concepts such as Wireless Sensor Networks (WSN) and the Internet of Things (IoT) in the last decade. Their popularity and wide expansion impact the need and importance for inclusion of these concepts in university curricula. On the other side, todays Computer Science has variety of sub-profiles or areas. According to ACM [1] in post 1999s era, computing curricula can be classified based on its orientation to: hardware (Electrical Engineering, Computer Engineering), software (Computer Engineering, Computer Science and Software Engineering) and organizational needs (Information Technology and Information Systems).
INTRODUCTION According to the recommendations of the International Telecommunication Union [2,3], the architecture of IoT consists of five layers: sensing layer, access layer, network layer, middleware layer and application layer. Application layer uses the functions of the bottom layers, and builds the practical applications such as smart logistics, intelligent transportation, precision agriculture, disaster monitoring and distance medical care.
MOTIVATION Students of Information Technologies and Software Engineering curricula should focus on application layer without the need of having deeper insight of other layers. In the case of seminar projects, students should be able to easily create, program and configure a networked environment. The students should be focused on development of an application for this environment, e.g. development of the application for monitoring temperature or pollution in the Wireless Sensor Network or an application for tracking human resources with RFID technology.
MOTIVATION In order to build such a flexible platform, the attention should be pointed towards open source hardware movement. This paper presents an approach in creating a platform based on open source hardware with the goal to enable creation of networked environments for teaching development of software applications for WSN and IoT. This modular platform is built to support the development of applications with special interest in wireless communication. The platform is built around Arduino Uno microcontroller board and Seeedstudio Bees Shield [18]. The platform is used in teaching process of application development for RFID/ZigBee networked environment.
OPEN SOURCE-HARDWARE Arduino Project started back in 2005 and over 150,000 boards have been sold worldwide until 2010 [4]. This number is higher because of the number of unofficial clone boards. It also serves as an efficient prototyping platform and for DIY (Do It Yourself) electronics. Arduino is an open source project and anyone is free to make a clone or other variant of the Arduino. The type of Arduino board used in this research is Arduino UNO Rev3. The Arduino Uno is an open-source microcontroller board based on the ATmega328.
OPEN SOURCE-HARDWARE Arduino allows connection of various shields or expansion modules that extend functionality of Arduino. A shield can be connected without soldering, making Arduino highly configurable and flexible platform. Nowadays, there are a lot of modules available on the market compatible with XBee shield with the support for the following technologies: ZigBee, IEEE 802.15.4, Bluetooth, Bluetooth Low Energy, Wi-Fi, RFID, GSM/GPRS, GPS, proprietary protocol modules, etc.
PLATFORM The proposed platform is based on Arduino UNO Rev3. Another important component of this platform is Seeedstudio Bees Shield. For this platform, the Libelium RFID 125 khz module ( Libelium Comunicaciones Distribuidas S.L.) is used as a RFID reader. Communication module is Xbee S2 or variant. No Component Description 1 Arduino UNO Rev3 Microcontroller unit 2 Libelium RFID 125 khz module RFID nodule 3 Digi XBee Series 2 (ZB) Communication module 4 Seeedstudio Bees shield Expansion module 5 ABS enclosure Project enclosure
PLATFORM Seeedstudio Bees shield The XBee module connected to Bees Shield is configured as ZigBee Router. Other XBee Series 2 (ZB) module is configured as ZigBee Coordinator. The XBee Coordinator is connected directly to the PC with XBee USB dongle and it is accessible by any terminal program such as Putty via COM port. RFID read only cards RFID/ZigBee platform ZigBee Coordinator ZigBee RF module with Xbee USB Dongle ZigBee/RFID platform (RFID Reader and ZigBee RF module) Application server (listen COM15)
EXPERIMENT In order to evaluate platform applicability, the experiment is made to test RFID data transfer via ZigBee network with described RFID and XBee Series 2 modules. In order to evaluate platform modularity, the experiment is made with three types of ZigBee communication modules from two different manufactures: Xbee Series 2, Seeedstudio MeshBee and XBee Series 1 (IEEE 802.15.4) module. The modularity testing is important because of the eventual incorporation of other chnologies and other module types in the future, such as (Modbus, CAN bus, RS232, Bluetooth Low Energy, Bluetooth, 6loWPAN, IEEE 802.11, GPRS, GPS, RF proprietary protocols etc.).
EXPERIMENT During the test, network traffic was captured using Texas Instrument CC2531 with USB Dongle and TI SmartRF packet sniffer. Module PAN ID Encryption Channel Frequency Distance XBee S2 1001 No 26 2480 MHz 3m XBee S1 3332 Yes 26 2480 MHz 3m MeshBee 2000 Yes 20 2450 MHz 3m Module RFID Packet length Total packet sent RFID packet sent RFID packet received Success XBee S2 81 kb 734 40 40 100 % XBee S1 72 kb 851 36 36 100 % MeshBee 96kB 653 42 42 100 %
EXPERIMENT Large ZigBee network simulation experiment The details about platform components are presented bellow. Instead of using a RFID module for reading RFID cards, the Arduino was programed to randomly send fake predefined card IDs directly via XBee network No Component Description 1 Arduino UNO Rev3 Microcontroller unit 2 Digi XBee Series 2 (ZB) Communication module 3 TinySine XBee shield v1 XBee module 4 ABS enclosure Project enclosure
EXPERIMENT RFID read only cards ZigBee/RFID simulated plarform #1 2 Simulated RFID data 1 ZigBee/RFID plarform Real RFID data ZigBee Star Network PAN ID 1001 Application server (listen COM15) ZigBee Coordinator 4 3 Simulated RFID data ZigBee/RFID simulated plarform #2
CONCLUSION The contribution of this paper is a novel approach in design and usage of platform based on open source hardware created for teaching purposes and engineering education. The platform is designed to create a realistic environment for studentes to be able to develop WSN and IoT applications. This environment can be used for student seminar works, projects, bachelor and master thesis, research and for implementation in a curricula as well.
Teaching Application Development for RFID/ZigBee Networks using Open Source Hardware Dalibor Dobrilovic, Zeljko Stojanov, Borislav Odadzic Department of Information Technology University of Novi Sad / Technical Faculty Mihajlo Pupin Zrenjanin, Serbia ddobrilo@tfzr.rs; zeljko.stojanov@tfzr.rs; borislav.odadzic@tfzr.rs