Data sharing using mqtt and zigbee-based dds on resource-constrained contiki-based devices

Yıldırım, Tunahan
This thesis describes the implementation of data sharing among resource-constrained IoT devices using two different middleware: MQTT(Message Queuing Telemetry Transport) and DDS (Data Distribution Services) for Real-Time Systems. In our setting, all IoT devices run under the Contiki operating system. In the configuration for DDS, a pair of Texas Instruments’ MSP430 processor-based ZigBee powered Advanticsys XM1000 device is used to realize data sharing between wireless sensor network devices without a server node. In order to install and run the proposed application, Ubuntu 64-bit operating system is used since it provides all the dependencies for Contiki and wireless sensor nodes. In the DDS middleware, an example interface definition is given in the XML file which contains the temperature, humidity, light values and the data to be shared is determined by the interface definition. For sharing data, DDS components ( DataWriter, DataReader, Publisher, Subscriber, Topics) are used. Two XM1000 wireless sensor nodes are used for sharing sensor data with each other every 10 seconds. These experiments are performed between 2 and more devices using the simulator and in different periods. In the second part of the work, the data structure that contains temperature, humidity and light values is shared via both MQTT and MQTT-SN (MQTT for Sensor Networks) middleware. The configuration of the MQTT middleware application works with the TCP protocol, the following components are used: The Ubuntu-based host computer, the mosquitto (Local MQTT server) application running on the host computer, MSP430 processor-based ZigBee powered wireless sensor node (CM5000 produced by Advanticsys company). In addition, the Python client applications for both publisher and subscriber are run on the host computer. These components above are used for sharing the sensor data structure between wireless sensor nodes which are connected to the host computer. Publisher and subscriber applications share the sensor data structure in every 10 seconds over the mosquitto server and received data is sent to the wireless sensor node by using python subscriber application. The received sensor data structure is sent to wireless sensor node by using the serial interface. In this implementation, ZigBee radio is not used because the ZigBee module could not be activated due to the large memory footprint of the MQTT application. Since the Zigbee module cannot be used in MQTT application, it is not included in the comparison. In order to run and share the data structure that contains temperature, humidity and light values by using the MQTT-SN middleware, RSMB (Really Small Mosquitto Broker) is installed and run on a Linux based host computer. The devices must obtain the IP address from the host computer to communicate with the Mosquitto server running on the host computer. Therefore, the border-router application used to obtain an IP address on the computer is running on wireless sensor node named CM5000 . Another CM5000 wireless sensor node gets the IP address by using border-router application installed CM5000 wireless sensor node and can write sensor data on RSMB by using MQTT-SN middleware installed on the CM5000 wireless sensor node. The sensor data structure is shared in different period of times(5,10,20,30,60 seconds) and 2 and more sensor devices. In addition, sensor data sent from CM5000 wireless sensor node is shared with the RSMB server running on the host computer. The shared sensor data can be viewed on the host computer by using the Mosquitto client which reads data from RSMB. These three configurations are compared in terms of memory usage, power consumption, and bandwidth utilization. With respect to memory usage, DDS middleware software is the least memory consuming software. In addition, the effects of the changes made to fit the image of the operating system on the memory usage are calculated. Similarly, it was seen that the DDS application consumed the least power among all the applications. For MQTT-SN, power consumption could not be calculated, due to power estimation module which could not be activated because of the lack of memory.With the application developed using calculated raw values, the calculation is made for MQTT-SN and the energest module of Contiki is used for power estimation.


Data sharing and access with a corba data distribution service implementation
Dursun, Mustafa; Bilgen, Semih; Department of Electrical and Electronics Engineering (2006)
Data Distribution Service (DDS) specification defines an API for Data-Centric Publish-Subscribe (DCPS) model to achieve efficient data distribution in distributed computing environments. Lack of definition of interoperability architecture in DDS specification obstructs data distribution between different and heterogeneous DDS implementations. In this thesis, DDS is implemented as a CORBA service to achieve interoperability and a QoS policy is proposed for faster data distribution with CORBA features.
DDS based MIL-STD-1553B data bus interface simulation
Deniz, Ertan; Oğuztüzün, Mehmet Halit S.; Durak, Umut; Department of Computer Engineering (2012)
This thesis describes distributed simulation of MIL-STD-1553B Serial Data Bus interface and protocol based on the Data Distribution Service (DDS) middleware standard. The data bus connects avionics system components and transports information among them in an aircraft. It is important for system designers to be able to evaluate and verify their component interfaces at the design phase. The 1553 serial data bus requires specialized hardware and wiring to operate, thus it is expensive and complex to verify co...
Data integration over horizontally partitioned databases in service-oriented data grids
Sunercan, Hatice Kevser Sönmez; Çiçekli, Fehime Nihan; Alpdemir, Mahmut Nedim; Department of Computer Engineering (2010)
Information integration over distributed and heterogeneous resources has been challenging in many terms: coping with various kinds of heterogeneity including data model, platform, access interfaces; coping with various forms of data distribution and maintenance policies, scalability, performance, security and trust, reliability and resilience, legal issues etc. It is obvious that each of these dimensions deserves a separate thread of research efforts. One particular challenge among the ones listed above tha...
Mobility and power aware data interest based data replication for mobile ad hoc networks
Arslan, Seçil; Bozyiğit, Müslim; Department of Computer Engineering (2007)
One of the challenging issues for mobile ad hoc network (MANET) applications is data replication. Unreliable wireless communication, mobility of network participators and limited resource capacities of mobile devices make conventional replication techniques useless for MANETs. Frequent network divisions and unexpected disconnections should be handled. In this thesis work, a novel mobility and power aware, data interest based data replication strategy is presented. Main objective is to improve data accessibi...
Distributed Connectivity Restoration in Underwater Acoustic Sensor Networks via Depth Adjustment
Uzun, Erkay; ŞENEL, FATİH; Akkaya, Kemal; Yazıcı, Adnan (2015-06-12)
In most applications of Underwater Acoustic Sensor Networks, network connectivity is required for data exchange, data aggregation and relaying the data to a surface station. However, such connectivity can be lost due to failure of some sensor nodes which creates disruptions to the network operations. In this paper, we present two algorithms, namely BMR and DURA, which can detect network partitioning due to such node failures and re-establish network connectivity through controlled depth adjustment of nodes ...
Citation Formats
T. Yıldırım, “Data sharing using mqtt and zigbee-based dds on resource-constrained contiki-based devices,” Thesis (M.S.) -- Graduate School of Natural and Applied Sciences. Computer Engineering., Middle East Technical University, 2020.