С развитием промышленности увеличивается количество устройств, которые нужно контролировать и получать от них различные данные. Для решения проблем взаимодействия большого количества устройств и проблем объединения устройств в одну сеть была создана концепция Интернета вещей (англ. Internet of Things, IoT) – это когда устройства объединяются по какому-то признаку в одну сеть, потом уже несколько подобных сетей объединяются в другую большую сеть и так далее.Устройства в таких сетях взаимодействуют друг с другом по средствам различных интерфейсов и протоколов передачи данных. Так как мы говорим о промышленном применении концепции IoT, в которой должны использоваться промышленное оборудование со своими протоколами и аппаратными средствами, то мы переходим к концепции IIoT (Промышленного Интернета вещей).
Протокол MQTT, на текущее время, завоевал свою популярность и стал стандартом де факто в проектах, направленных на создание решений для IoT (Интернета вещей). MQTT или Message Queue Telemetry Transport — упрощённый сетевой протокол, работающий поверх TCP/IP. Используется для обмена сообщениями между устройствами по принципу издатель-подписчик. Первая версия протокола была разработана доктором Энди Станфорд-Кларком (IBM) и Арлен Ниппер (Arcom) в 1999 году и опубликована под роялти-фри лицензией. Спецификация MQTT 3.1.1 была стандартизирована консорциумом OASIS в 2014 году. Это легкий, компактный и открытый протокол обмена данными созданный для передачи данных на удалённых локациях, где требуется небольшой размер кода и есть ограничения по пропускной способности канала. Конечно, Интернет вещей – это определенная абстракция или, правильнее, концепция построения распределенных сетей устройств или машин. Актуальность темы данной курсовой работы заключается в эффективном рещении частных задач взаимодействия машин Machine-to-Machine (M2M), включая и уровень подключения этих систем к Интернет, как для создания промышленных систем автоматики, так, например, и для построения систем «умного дома». Очевидно, что для критически важных систем требуется наличие локального арбитра или брокера и устройств, позволяющих отработать решение ситуации не зависимо от качества Интернет-подключения, а также в случае полного разрыва связи. При этом, в качестве аппаратной платформы для запуска такого брокера MQTT, отлично себя зарекомендовали энергоэффективные, но от этого не менее производительные, микропроцессоры на базе архитектуры ARM. Такая взаимосвязь аппаратной платформы, протоколов обмена сообщениями и их программной реализации стала отправной точкой в стремительном прогрессе развития современных систем автоматизации.
Также существует версия протокола MQTT-SN (MQTT for Sensor Networks), ранее известная как MQTT-S, которая предназначена для встраиваемых беспроводных устройств без поддержки TCP/IP сетей, например, Zigbee.
Таким образом, целью данного курсового проекта является создание и проектирование графического пользовательского интерфейса для обмена текстовыми сообщениями между клиентами сети Ethernet по протоколу MQTT.
Задачей данной курсовой работы является выполнение следующих этапов:
— Создание графического интерфейса для отправки текстовых сообщений;
— Реализация протокола MQTT с использованием ООП.