Elektrotehniški vestnik 80(4): 153-158, 2013 Original Scientific Paper Impact of the routing techniques on the wireless sensor networks performance Asmir Gogic1 't, Amar Mahmutbegovic1, Aljo Mujcic1, Matej Zajc2, Ismail Hakki ((avdar3, and Nermin Suljanovic1 1 Faculty of Electrical Engineering, University of Tuzla, Franjevacka 2, 75000 Tuzla, Bosnia and Herzegovina 2Digital Signal, Image and Video Processing Laboratory, Faculty of Electrical Engineering, University of Ljubljana, Trzaska 25, 1000 Ljubljana, Slovenia 3Department of Electronics, Karadeniz Technical University Trabzon, Tiirkiye J( E-mail: asmir.gogic@untz.ba Abstract. The paper analyzes the performance of the wireless sensor network (WSN) from the standpoint of routing algorithm related tos battery-discharge process. Using an experimental WSN implemented with Arduino Uno and XBee modules, measurements are made, of the packet delay and battery-discharge rate. Measurement results are compared with the simulation results obtained in the OMNeT++ simulation environment. The paper provides a short overview of difficulties and challenges commonly encountered in WSN design. The measurement results show that Arduino in its native form is not suitable for the WSN processing unit because its high current value during the sleep mode. Keywords: Wireless sensor network, routing algorithms, medium access control, battery-consumption estimation Vpliv izbire tehnik usmerjanja na karakteristike brezžičnih senzorskih omreZij Članek obravnava analizo brezžičnega senzorskega omrežja s stališča izbranih usmerjevalnih algoritmov v povezavi s hkratnim spremljanjem procesa praznjenja baterije senzorskega vozlišča. Z uporabo eksperimentalnega brezzičnega senzorskega omrezja, implementi-ranega z Arduino Uno in XBee modulov, so bile opravljene meritve zakasnitev in procesa praznjenja baterije. Rezultati meritev so primerjani z rezultati simulacij v okolju OMNeT++. (Članek poda tudi pregled izzivov pri načrtovanju brezzičnih senzorskih omrezij. Na podlagi rezultatov simulačij in opravljenih meritev ugotavljamo, da testna arhitektura ni najprimernejša za tovrstno im-plementačijo zaradi visoke porabe energije v stanju mirovanja. 1 Introduction Ubiquity of the wireless sensor networks (WSN) čan be explained with the broad spečtrum of its innumerable ap-pličations [1]. The fundamental limitations of the wireless medium define the quality of the servičes provided within the wireless network. Constant flučtuations of the noise level in the wireless medium, selečtive fading, multi-path signal propagation and intensive attenuation reduče the čommuničation range of the wireless nodes Received 18 September 2013 Accepted 6 November 2013 [2]. As a consequence, some of the nodes in the wireless network will not be able to directly communicate with the base node (network coordinator). In order to ensure communications between each node and the network coordinator, the nodes with the repeater functionality are employed. The selection process of the optimal path toward the destination node is defined by the routing algorithm [2]. Unlike is the case with the traditional wireless networks, the limited lifetime of the power source in a wireless sensor node introduces additional challenges in the WSN design [3]. Furthermore, the functionality of the medium access and the routing algorithms are directly affected by the battery lifetime. In this paper we analyze performance of WSN based on the ZigBee modules, and present the impact of the routing algorithms and the battery-discharge process on the WSN performance. Simulation of a test WSN is performed in the MiXiM extension [4] of the OMNeT++ simulation framework [5]. 2 The challenges of the WSN design Generally, the sensor nodes in the WSN network monitor one or a few parameters of some physical phenomenon [6]. On the other hand, the WSN nodes operate with a common goal which is packet transmission toward the destination node. In most cases, the nodes are installed in harsh environments with no accessibility and possibility for maintenance. Oppositely to the traditional wireless network, the role of the node in WSN changes in accordance with medium state and activity of the neighboring nodes [2]. Some of the major challenges commonly met in the WSN design are: energy efficiency, node deployment, scalability, coverage and quality of service (QoS) [2]. Since the WSN node operates with a limited amount of energy stored within the battery, the medium access and routing protocols must be energy-efficient. Power consumption is significantly reduced by the employing the sleep mode in the medium access mechanism [2]. During the sleep mode, all the modules in the WSN node are disconnected. Generally, the WSN topology may take the form of a tree, star or mesh [6]. The most common shape of the WSN topology is the mesh. In the geographical sense, the nodes in the WSN mesh network are randomly deployed, thus further limiting the number of directly reachable nodes. As a result of the network topology, WSN often encounters the problem of hidden and exposed nodes [7]. These problems can be avoided by using prioritized medium access mechanisms. The routing and medium access algorithms most often do not scale with the network size [6]. In the large-scale networks, the sleep mode is employed to ensure the data propagation and reduction of network congestion [2]. The size of the geographical area monitored by the WSN node is directly defined by the type of the employed sensors and their level of susceptibility. In most cases, energy conservation is essential. However, in some of the WSN applications, data collection from the nodes must be performed in a predefined time frame [2]. The consequence of the QoS requirements in the WSN applications is that any delay in the procedure of the data collection directly violates the data validity. Interoperability of different devices within WSN is achieved by adhering to standards regulating wireless communications. Nowadays, the IEEE 802.15.4 standard is the most commonly used standard to implementation WSN and PAN (Personal Area Network) networks [8]. The IEEE 802.15.4 standard foresees the data rates of the wireless communications up to 250 kbps over short and long distances using direct communication links or by employing intermediate nodes. The transmitter power of the IEEE 802.15.4 based device is limited and can be in the range from a few mW to a few hundreds of mW. 3 MAC routing algorithms Nowadays, there is a wide range of the MAC routing protocols available for WSN as one routing protocol can not meet the requirements of all the WSN applications. Generally, the MAC routing protocols can be classified with regard to the network structure, route establishment process or protocol operation [2]. Each MAC WSN routing protocol is based on some modified form of flooding or convergecasting routing approach [9], [10]. The flooding approach is the fundamental strategy for information propagation towards the destination node. During the flooding process, each node in WSN only broadcasts the messages which are seen for the first time. The main advantage of the flooding approach is simplicity [9]. Furthermore, if there is a path between the source and destination node, the packet will be delivered. On the other hand, flooding generates a huge amount of traffic in the network. A flooding-based algorithm has to cope with additional issues such as implosion, overlap and resource blindness [11]. A special case of flooding is a gossiping routing algorithm in which data broadcast is performed with probability p [2]. The criterion to determinate the probability for broadcast p is based on the number of the neighboring nodes. A higher number of the neighboring nodes leads to a lower probability for data rebroadcast. This type of routing may induce a high packet delay compared to the packet flooding algorithm. On the other hand, the number of flooded packets is much lower. The flooding and gossiping routing algorithm represents two boundary cases regarding the targeted QoS parameters. In convergecast based routing algorithms, the data is collected at particular nodes and aggregated toward the network coordinator node. When the source node has to send the data, it broadcasts the packet to its neighboring nodes. The nodes which have received the data, initiate the converge transmission toward the network coordinator. Another concept for the packet relay is network coding which provides an additional increase in the network multicast capacity [12]. However, application studies of the network coding in WSN show that it is not an efficient concept as previously thought [13]. On the other hand, implementation of the network coding convergecast based network is limited and hard. The ZigBee based transceivers, such as XBee, use a mesh routing approach based on the Ad-hoc On-demand Distance Vector (AODV) routing algorithm [14]. Each node stores the routing information for the next hop with respect to the destination nodes. Route discovery is initiated each time when the next hop toward the destination node is unknown. Path discovery is achieved by using the broadcast messages and the path cost metric. The main disadvantage of the ZigBee (XBee) routing algorithm is in its storing limited number of routing entries. As a consequence in WSN with a large number of nodes there will always be the nodes for which the routing data can not be stored and the route discovery will be initiated frequently. Each WSN routing mechanism is based on the algorithm which employs some sort of metric [2]. The metric represents some physical parameter which can be measured within WSN. The most common metrics used in the WSN routing algorithms are: number of hops toward the destination node, energy efficiency and network segmentation time [15]. 4 OMNeT++ MiXiM framework OMNeT++ (Objective Module Network Test-bed++) is an open source, general purpose discrete simulation environment [5]. The main application area of the OM-NeT++ are modeling and simulation of the telecommunication systems. Simulation scenarios are described with connections and interactions of different modules using the scrip files written in the NED (Network Description) language. Functionalities of modules are implemented in the C++ language using the hierarchical structure. Applications of the OMNeT++ are broadened with its extension frameworks, such as MiXiM, developed to simulate of mobile and fixed wireless networks [4]. The channel model within MiXiM takes into account the path loss effect, fast and slow fading, shadowing and antenna gain [4]. The propagation effects of the radio signal are modeled by varying the instantaneous value of the signal to noise ratio [4]. The path loss model utilized in the MiXiM is given with the simple equation [16] ( ^ Prx = da (1) where Prx and Ptx are the power at the receiver and transmitter node, d is the distance between the transmitting and receiving WSN node, a is the power gradient and A is the wavelength. The model for the battery-discharge is based on a simple algorithm which includes the duration and the current drain during a set number of the WSN node activities such as: sleep, transmitting, receiving, switching and decoding [4]. After each activity the battery capacity is reduced by the amount of the energy consumed during activity. The employed model within the MiXiM does not take into account the self discharge mechanism of the battery. 5 Simulation setup Simulations of the battery-discharge process and the three routing algorithms flooding (F), gossiping (G), convergecast (C) are performed using the OMNeT++ simulation environment. The experimental WSN used in our simulations is depicted in Fig. 1. The experimental WSN shown in Fig. 1 is implemented with the Arduino Uno R3 [17] and XBee modules [14]. In order to estimate the battery level, an additional circuit is designed (Fig. 2) as an Arduino shield (Fig. 3). The idea behind the proposed circuit for the battery level estimation (Fig. 2) is based on the charge/discharge process of the capacitor. Before measuring the battery level is performed, the capacitor C is fully discharged using the Arduino digital pin (DO) and a transistor T (Fig. 2). Afterwards, MCU (ATMega328) on the Arduino board and the XBee module are put to sleep for 256 ms while the capacitor is being charged by resistor R1. The value of the resistor R1 is selected so that the voltage at the end of the charing process never exceeds the MCU power supply voltage of 5 V. In our case the maximum value at which capacitor C can be charged is 3.78 V. After capacitor C have been charged for 256 ms, the capacitor voltage is measured by using an analog to digital converter within MCU (AO pin in Fig. 2). 0m -\----------+ 0m 4m 8m 12m 16m 20m Figure 1. Topology of the test WSN Kl Module | MCU ATMega328 AI Circuit for the battery level estimation R3(20kfi) -A/W- • R1(1kfi) DO "W\r- R2(1kfi) C(470/âF) Arduino programming circuits (ATMega16u) Figure 2. Circuit for the battery level estimation The relative battery level (BL) is calculated using the following equation a ■ U, BL(%) UD ■ 100 (2) 8m where a is the scaling constant (in our case set to 2.38), UADC is the measured voltage on the capacitor after the time interval of 256 ms and UD,, is the nominal BMax battery voltage (in our case 9 V). for operation in WSN due to the rapid battery-discharge rate. The next question to be answered is to what extent does the total number of the nodes in WSN increase the battery consumption of individual nodes (Fig. 5). Figure 3. WSN node with a circuit for the battery level estimation as an Arduino shield Each WSN node is also equipped with the digital temperature sensor DS18S20. The battery level and temperature data from each node are repeatedly sent to the network coordinator (node R0 in Fig. 1) at four second intervals. In the WSN simulations within OMNeT++ we used a model of the CC2420 chip [18] for the XBee transceiver. The WSN node parameters are presented in Table 1. The major drawback of the Arduino Uno R3 based WSN node is the high current value of 10 mA during the sleep mode (Table 1). This high current value during sleep mode is the result of the voltage regulator and additional MCU (ATMega16u) used for programming the main MCU (ATMega328). 6 Simulation results Our simulations and measurements enable us to investigate the impact of the MAC protocols on the discharge rate of the battery. The relative battery level for the R3 and R4 nodes (Fig. 1) is presented in Fig. 4. The results obtained within the OMNeT++ simulation slightly differ from those collected in the XBee based experimental WSN. This difference is the result of using an approximated model for the battery-discharge process. The OMNeT++ battery-discharge model does not take into account the self discharge and regeneration effects. However, because of the high current value of the WSN node in the sleep mode, the rapid discharge of the battery exceeds the impact of the self discharge and regeneration mechanism. After the WSN node has been operating for some three hours the battery is depleted to a stage where the transceiver can not function safely. As such, the Arduino Uno R3 board in its native form is not suitable Parameter name Value Carrier frequency 2400 MHz Modulation technique MSK Transmitter maximum data rate 250 kbps Transmitter maximum power 1 dBm Transmitter selected power -10 dBm Receiver sensitivity -92 dBm Background noise -100 dBm Path power gradient a 2 Battery voltage 9V Battery capacity 300 mAh Current drawn during initialization 50.0 mA Current drawn in Tx mode 50.0 mA Current drawn in Rx mode 45.0 mA Current drawn in transition mode 38.0 mA Current drawn in sleep mode 20 pA MCU sleep current at 16 MHz 2 ^A MCU busy current at 16 MHz 9 mA Total WSN node sleep current 10 mA Total WSN node busy current 92 mA Time from sleep to Rx mode 1.792 ms Time from sleep to Tx mode 1.792 ms Time from Rx to Tx mode 192 ^s Time from Tx to Rx mode 192 ^s Time from Rx to sleep mode 0s Time from Tx to sleep mode 0s Packet size 74 B Table 1. WSN node parameters [14], [17], [18] 100 90 80 70 0 0.5 1 1.5 2 2.5 3 Time (h) Figure 4. Relative battery level for the R3 and R4 WSN nodes As seen from the simulation results (Fig. 5) as the total number of nodes in WSN increases, the battery-discharge rate tends to be more progressive. This is due to the fact that more nodes contend for the medium which increases probability of packet collision and consequently leads to more packet retransmissions. In our experiment, the WSN data collection from each node is performed every four seconds. The data collection rate is application specific and can be in the range from few seconds to a few hours or even days which can extend the battery life time. This effect can not be observed in the Arduino Uno R3 based WSN due to the high current value during the sleep mode. 100 95 90 85 80 0 0.5 1 2 2.5 3 R1 R2 R3 R4 R5 R6 R7 R8 Node name Figure 6. Average packet delay for Xbee-based WSN The WSN nodes with the highest delays are R6 and R7 which are two hops away from the network coordinator as well as R5 node which is three hops away from it. The average delay of the WSN nodes in the first hop is 15 ms while the remaining nodes have 7 ms increase of delay per hop (Fig. 6). This increase of per hop delay for the nodes closer to the network coordinator is due to the traffic which altogether goes through them. On the other hand, the WSN simulation results in OMNeT++ for the delay in the case of the (F), (B) and (C) routing algorithms are presented in Fig. 7, Fig. 8 and Fig. 9, respectively. The (F) algorithm outperforms the (G) and (C) algorithm in terms of delay since it propagates data in the shortest possible time (Fig. 7). The main drawback of this algorithm is unnecessary generation of a large number of packets. The highest delay in the OMNeT++ simulation is recorded for the (C) algorithm (Fig. 9 since all the traffic must be aggregated before being transmitted. For the XBee-based WSN the probability of the packet error was measured (Fig. 10). 30 20 10 0 1.5 Time (h) Figure 5. Relative battery level as a function of the total number In the second part of our simulations we analyze WSN with regard to routing mechanism. The performance of the ZigBee routing algorithm implemented within the XBee module is compared with the performance of the three routing techniques: convergecast (C), flooding (F) and probabilistic broadcast (B). The average delay (two-way delay) recorded within the Xbee-based WSN network is in the range from 15 ms to 30 ms (Fig. 6). 30 20 10 0 R1 R2 R3 R4 R5 R6 R7 R8 Node name Figure 7. Average packet delay using the (F) algorithm 40 30 20 10 0 if R1 R2 R3 R4 R5 R6 R7 R8 Node name Figure 8. Average packet delay using the (B) algorithm 40 30 20 10 0 R1 R2 R3 R4 R5 R6 R7 R8 Node name Figure 9. Average packet delay using the (C) algorithm 1e-3 5e-4 01-^-^-^-^-^-^-^- R1 R2 R3 R4 R5 R6 R7 R8 Node name Figure 10. Packet error probability 30000 packets were transmitted to calculate the packet error probability. The results show that probability of the error of the network coordinator is high because of frequent collisions resulting from the heavy traffic. On the other hand, the packet error probability of the nodes distant from the network coordinator is also high because of the multihop nature. 7 Conslusion In this paper we analyze performance of the wireless sensor network with the regard to the routing and battery-discharge process. Measurements of the delay, packet error probability and battery status are made with an experimental WSN made with the Arduino Uno R3 and XBee modules. To analyze battery discharge process, we developed simple circuit as an Arduino shield, enabling us to assess the relative battery level. Our simulation results show that the Arduino-based WSN node in its native form can not be used within WSN, since the current of the Arduino module during the sleep mode exceeds 10 mA. In order to use Arduino Uno as a effective WSN node, the the board itself should be modified. Performance of the XBee routing algorithm is compared with the flooding, gossiping and convergcast algorithms in the OMNeT++ simulation framework. The routing algorithm is compared with regard to the average packet delay. The measurements and simulation results show that the XBee routing algorithm provides a relatively low delay unlike is the case with the convergecast and gossiping techniques. The average delay for the flooding technique is the lowest since the data are propagated in the shortest possible time. On the other hand, the main drawback is unnecessary generation of a large number of packets. 8 Acknowledgement This study is part of the "Norbotech project", supported by the Norwegian Ministry of Foreign Affairs Programme in Higher Education, Research and Development (HERD) in the Western Balkans 2010 - 2014 within the field of ICT. References [1] I. Akyildiz, W. Su, Y. Sankarasubramaniam, and E. Cayirci, "Wireless sensor networks: A survey," Computer Networks, vol. 38, no. 4, pp. 393-422, Mar. 2002. [2] J. N. Al-Karaki and A. E. Kamal, "Routing techniques in wireless sensor networks: A survey," IEEE Wireless Commun. Mag., vol. 11, no. 6, pp. 6-28, Dec. 2004. [3] C. Park and K. Lahiri, "Battery discharge characteristics of wireless sensor nodes: An experimental analysis," in Proc. of the SECON Conference, Sep. 2005, pp. 430-440. [4] K. Wessel and M. S. et. al., "Mixim the physical layer an architecture overview," in Proc. of the International Workshop on OMNeT++, Rome, Italy, Mar. 2009, pp. 1-8. [5] A. Varga, "The OMNeT++ discrete event simulation system," in Proc. of the ESM 2001, Jun. 2001, pp. 319-324. [6] J. Chen, S. Li, and Y. Sun, "Novel deployment schemes for mobile sensor networks," Sensors, vol. 7, no. 11, pp. 2907-2919, Nov. 2007. [7] A. Bachir, D. Barthel, M. Heusse, and A. Duda, "Hidden nodes avoidance in wireless sensor networks," in Proc. of the International Conference on Wireless Networks, Communications and Mobile Computing, Jun. 2005, pp. 612-617. [8] J. A. Gutierrez, M. Naeve, E. Callaway, M. Bourgeois, V. Mitter, and B. Heile, "IEEE 802.15.4: A developing standard for low-power low-cost wireless personal area networks," IEEE Network, vol. 15, no. 5, pp. 12-19, Sep. 2001. [9] G. Lu, B. Krishnamachari, and C. S. Raghavendra, "An adaptive energy-efficient and low-latency MAC for data gathering in wireless sensor networks," in Proc. International Parallel and Distributed Processing Symposium, Santa Fe, New Mexico, USA, Apr. 2004, pp. 224-231. [10] V. Annamalai, S. K. S. Gupta, and L. Schwiebert, "On tree-based convergecasting in wireless sensor networks," in Proc. of the WCNC, Mar. 2003, pp. 1942-1947. [11] K. J. Heinzelman, W. and H. Balakrishnan, "Adaptive protocols for information dissemination in wireless sensor networks," in Proc. of the Conference on Mobile Computing and Networking. [12] R. Ahlswede, N. Cai, S. Li, and R. Yeung, "Network information flow," IEEE Trans. Inf. Theory, vol. 46, no. 4, pp. 1204-1216, Jul. 2000. [13] T. Voigt, U. Roedig, O. Landsiedel, K. Samarasinghe, and M. B. S. Prasad, "On the applicability of network coding in wireless sensor networks," ACM SIGBED Review, vol. 9, no. 3, pp. 46-48, Jul. 2012. [14] "XBeeTM/XBee-PROTM: Product Manual v1.xAx - 802.15.4 Protocol," OEM RF Modules by MaxStream, Tech. Rep. [15] D. Waltenegus and C. Poellabauer, Fundamentals of Wireless Sensor Networks: Theory & practice. Southern Gate, Chich-ester, UK: John Wiley & Sons Ltd., 2010. [16] J. K. Cavers, Mobile Channel Characteristics. Kluwer Academic, 2000. [17] "Arduino Uno R3 Manual," Tech. Rep. [Online]. Available: http://arduino.cc/en/Main/ArduinoBoardUno [18] "CC2420: 2.4 GHz RF Transceiver," Texas Instruments, Tech. Rep. Asmir Gogic is a Senior Teaching Assistant at the University of Tuzla, Bosnia and Herzegovina. His research interests are medium access and routing algorithms, microcontroller-based systems, modeling and simulation of communication networks, channels and protocols. Amar Mahmutbegovic graduated in 2013 from the Faculty of Electrical Engineering, University of Tuzla, department of Communications. His research interests include wireless sensor mesh networks, microcontroller-based systems and embedded systems. Aljo Mujcic is an Associate Professor at the University of Tuzla, Bosnia and Herzegovina. His research interests are in the areas of power-line communications, optical communications, information theory and coding techniques. Matej Zajc is an Associate Professor at the Faculty of Electrical Engineering, University of Ljubljana. He is active in the domain of digital communication systems and digital signal processing. Ismail Hakki Cavdar is a Full Professor at the Karadeniz Technical University (KTU), Trabzon, Turkey. His research interests are in communications systems, powerline communications, smart grids, and power electronics. Nermin Suljanovic is an Associate Professor at the University of Tuzla, Bosnia and Herzegovina. His research interest is in the digital communications, communication channel modeling and computer networks.