Data sharing using MQTT and zigbee-based dds on resource-constrained contiki-based devices
Kaynak kisitlari bulunan contiki tabanli cihazlarda MQTT ve zigbee tabanli DDS kullanarak veri paylaşimi
- Tez No: 618205
- Danışmanlar: PROF. DR. MEHMET HALİT SEYFULLAH OĞUZTÜZÜN
- Tez Türü: Yüksek Lisans
- Konular: Bilgisayar Mühendisliği Bilimleri-Bilgisayar ve Kontrol, Computer Engineering and Computer Science and Control
- Anahtar Kelimeler: Belirtilmemiş.
- Yıl: 2020
- Dil: İngilizce
- Üniversite: Orta Doğu Teknik Üniversitesi
- Enstitü: Fen Bilimleri Enstitüsü
- Ana Bilim Dalı: Bilgisayar Mühendisliği Ana Bilim Dalı
- Bilim Dalı: Belirtilmemiş.
- Sayfa Sayısı: 131
Özet
Bu tez, iki farklı katman yazılımı kullanan kaynak kısıtlı IoT aygıtları arasında veri paylaşımının uygulanmasını açıklamaktadır: Gerçek Zamanlı Sistemler için MQTT (Message Queuing Telemetry Transport) ve DDS (Veri Dağıtım Hizmetleri). Konfigürasyonumuzda, tüm IoT cihazları Contiki işletim sistemi altında çalışmaktadır. DDS yapılandırmasında, bir sunucu düğümü olmadan kablosuz sensör ağ aygıtları arasında veri paylaşımını gerçekleştirmek için bir çift Texas Instruments'ın MSP430 işlemci tabanlı ZigBee destekli Advanticsys XM1000 cihazı kullanılmıştır. Uygulamanın kurulumu ve çalıştırılması için, Contiki ve kablosuz sensör düğümleri için tüm bağımlılıkları sağladığı için Ubuntu 64-bit işletim sistemi kullanılır. DDS arakatman yazılımında, sıcaklık, nem, ışık değerleri içeren XML dosyasında örnek bir arayüz tanımı verilmiştir ve paylaşılacak veriler bu arayüz tanımı tarafından belirlenir. Veri paylaşımı için, DDS bileşenleri (DataWriter, DataReader, Publisher, Subscriber, Topic) kullanılır. İki XM1000 kablosuz sensör düğümü, sensör verilerini her 10 saniyede bir birbirleriyle paylaşmak için kullanılır. Bu testler, simülatör kullanarak 2 ve daha fazla cihaz arasında ve farklı periyotlarda gerçekleştirilir. Çalışmanın ikinci bölümünde sıcaklık, nem ve ışık değerleri içeren veri yapısı hem MQTT hem de MQTT-SN (Sensör Ağları için MQTT) ara katman yazılımı ile paylaşılıyor. MQTT ara yazılımı uygulamasının yapılandırması TCP protokolüyle çalışır ve aşağıdaki bileşenler kullanılır: Ubuntu tabanlı ana bilgisayar, ana bilgisayarda çalışan mosquitto (Yerel MQTT sunucusu) uygulaması, MSP430 işlemci tabanlı ZigBee destekli kablosuz sensör düğümü (MSP430 işlemci tabanlı) Advanticsys firması tarafından üretilen CM5000). Ayrıca, hem yayıncı hem de dinleyici için Python istemci uygulamaları ana bilgisayarda çalıştırılır. Yukarıdaki bu bileşenler, sensör veri yapısını ana bilgisayara bağlı olan kablosuz sensör düğümleri arasında paylaşmak için kullanılır. Yayıncı ve abone uygulamaları, sensör veri yapısını mosquitto sunucusu üzerinden her 10 saniyede bir paylaşır ve alınan veriler python abone uygulaması kullanılarak kablosuz sensör düğümüne gönderilir. Alınan sensör veri yapısı da seri arayüz kullanılarak kablosuz sensör düğümüne gönderilir. Bu uygulamada, ZigBee modülü, MQTT uygulamasının yüksek bellek ihtiyacınedeniyle ZigBee modülü etkinleştirilemediğinden kullanılamaz.MQTT uygulamasında Zigbee modulü kullanılamadığından dolayı karşılaştırılmaya dahil edilmemiştir. MQTT-SN ara katman yazılımını kullanarak sıcaklık, nem ve ışık değerleri içeren veri yapısını çalıştırmak ve paylaşmak için RSMB (Really Small Mosquitto Broker) Linux tabanlı bir ana bilgisayara kurulup çalıştırılır. Cihazlar, ana bilgisayarda çalışan Mosquitto sunucusuyla iletişim kurmak için ana bilgisayardan IP adresini almalıdır. Bu nedenle, bilgisayarda IP adresi almak için kullanılan yönlendirici uygulaması CM5000 adlı kablosuz algılayıcı düğümde çalıştırılır. Başka bir CM5000 kablosuz sensör düğümü, CM5000 kablosuz sensör düğümünü yükleyen yönlendirici uygulamasını kullanarak IP adresini alır ve CM5000 kablosuz sensör düğümüne yüklenen MQTT-SN ara yazılımı kullanarak RSMB üzerindeki sensör verilerini yazabilir. Sensör veri yapısı farkı sürelerde 2 veya daha fazla sensör düğümü arasında paylaşılır. Ayrıca, CM5000 kablosuz sensör düğümünden gönderilen sensör verileri, ana bilgisayarda çalışan RSMB sunucusuyla paylaşılır. Paylaşılan sensör verileri, ana bilgisayarda RSMB'den veri okuyan Mosquitto istemcisi kullanılarak görüntülenebilir. Bu üç yapılandırma hafıza kullanımı, güç tüketimi ve bant genişliği kullanımı açısından karşılaştırılmıştır. Bellek kullanımıyla ilgili olarak, DDS arakatman yazılımı en az bellek tüketen yazılımdır. Ek olarak, işletim sisteminin görüntüsünün cihazlar üzerine yüklebilmesi için yapılan değişikliklerin bellek kullanımı üzerindeki etkileri hesaplanmaktadır. Benzer şekilde, DDS uygulamasının tüm uygulamalar arasında en az gücü tükettiği görülmüştür. MQTT-SN için bellek yetersizliği nedeniyle etkinleştirilemeyen güç tahmin modülü nedeniyle güç tüketimi hesaplanamaz. Bu nedenle bu modül tarafından hesaplanan ham değerler kullanılarak geliştirilen uygulama ile MQTT-SN için de hesaplamalar yapılır. Contikinin“Energest modülü”güç tüketimi tahmini için kullanılır.
Özet (Çeviri)
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.
Benzer Tezler
- Akıllı ev cihazlarının haberleşmesinde hafif sıklet şifreleme algoritmalarının performans analizi
In communication of smart home devices performance analysis of lightweight encryption algorithms
ÖMER YEL
Yüksek Lisans
Türkçe
2024
Bilgisayar Mühendisliği Bilimleri-Bilgisayar ve KontrolSakarya ÜniversitesiBilgisayar Mühendisliği Ana Bilim Dalı
DR. ÖĞR. ÜYESİ HÜSEYİN ESKİ
- MQTT protokolü ile çalışan nesnelerin interneti cihazların fabrika üretim hatlarına entegrasyonu
Integration of iot devices with MQTT protocol to factory production lines
ULAŞ UZUNKAYA
Yüksek Lisans
Türkçe
2021
Elektrik ve Elektronik Mühendisliğiİstanbul Aydın ÜniversitesiElektrik ve Elektronik Mühendisliği Ana Bilim Dalı
DR. ÖĞR. ÜYESİ NECİP GÖKHAN KASAPOĞLU
- Otel işletmelerinin sosyal medya kullanma nedenleri: İstanbul'daki beş yıldızlı otellerde bir araştırma
Reasons of using social media in hotel enterprises: A study at five-star hotels in Istanbul
MUSTAFA BAŞ
Yüksek Lisans
Türkçe
2015
TurizmDüzce ÜniversitesiTurizm İşletmeciliği ve Otelcilik Ana Bilim Dalı
YRD. DOÇ. DR. ARİF GÜNGÖR
- Web tabanlı anket sistemi ile elde edilen verilerin veri madenciliği yöntemi ile analizi
Data analysis of a web-based survey using data mining methods
ZEYNEP ELABİAD
Yüksek Lisans
Türkçe
2013
Bilgisayar Mühendisliği Bilimleri-Bilgisayar ve Kontrolİstanbul Aydın ÜniversitesiBilgisayar Mühendisliği Ana Bilim Dalı
YRD. DOÇ. DR. METİN ZONTUL
- Kaotik haritalar ve steganografi yöntemleri kullanılarak önem derecesi yüksek verilerin görüntü içerisine gizlenmesi
Hiding data of high importance into the image using chaotic maps and steganography methods
SEVGÜL TOKATLIOĞLU
Yüksek Lisans
Türkçe
2024
Bilgisayar Mühendisliği Bilimleri-Bilgisayar ve KontrolMaltepe ÜniversitesiBilgisayar Mühendisliği Ana Bilim Dalı
DR. ERDAL GÜVENOĞLU