Машина c машиной говорит … с помощью библиотеки MQTT
Сегодняшний проект пришел от Паоло Патиерно (Paolo Patierno), помогающего развивать Интернет вещей, мир общающихся машин…
Клиентская библиотека MQTT для межмашинных коммуникаций
M2Mqtt – это MQTT-клиент, доступный на всех платформах .Net (.Net Framework, .Net Compact Framework and .Net Micro Framework), и предназначенный для коммуникаций M2M.
Полную информацию о протоколе MQTT можно найти на официальном сайте https://mqtt.org/.
Транспорт телеметрии MQ ( mqtt . org )
MQTT – это протокол связи «машина-машина» (M2M) Интернета вещей. Он разработан как очень легкий транспорт сообщений типа «опубликовать/подписаться». Протокол полезен для соединений с удаленными местоположениями, где требуется небольшой фрагмент кода или где нормальная сетевая полоса – премия. Например, он используется при общении сенсоров с брокером через спутниковый канал, в случайных коммутируемых соединениях с поставщиками услуг здравоохранения и в широком спектре задач домашней автоматизации и малых устройствах. Также он идеален для мобильных приложений из-за небольшого размера, малого потребления энергии, минимизированных пакетов данных и эффективного распределения информации среди одного или нескольких приемников.
MQTTи . NetMicroFrameworkс платой NetduinoPlus : простая система предупреждения!
С тех пор как я загрузил свой компактный клиент MQTT .Net Framework (Desktop, Compact и Micro) на CodePlex, я никогда не публиковал простого примера, расходуя время для ответов на вопросы.
В этом сообщении мы рассмотрим, как реализовать простую систему предупреждения из двух контроллеров Netduino Plus, подсоединенных к сети. При этом первый контроллер регистрирует движение с помощью датчика PIR (Passive InfraRed – пассивный инфракрасный датчик), а второй получает уведомление о событии (в нашем случае выводит сообщение на консоль Debug). Очевидно, что второй контроллер можно просто заменить на смартфон, через который можно получать уведомления о вторжении в реальном времени.
Что касается брокера, то это просто RSMB (Really Small Message Broker – действительно маленький брокер сообщений) от IBM, который можно использовать бесплатно для некоммерческого применения и скачать отсюда. Его не требуется устанавливать, но в случае Windows есть простой исполняемый файл, который надо запустить, чтобы получить брокер и прослушивание MQTT-порта по умолчанию (1883). В нашем примере, он работает на моем ПК, который выступает, в известной мере, сервером.
В контролере запущено простое приложение, работающее частью детектора:
Класс Pir используется для датчика (см. uPLibrary на CodePlex), генерирующего событие при регистрации движения. С помощью класса MqttClientустанавливается соединениес брокером и публикуется сообщение в теме “alarm” (предупреждение) для отчета о срабатывании датчика.
Следующее приложение получает отчеты:
...
Действуя через MqttClient , оно не делает ничего кроме регистрациитемы «alarm», через которую получает предупреждения посредством сообщения от отправителя через брокера.
По существу, мы разработали простую систему Push-уведомлений, которая несомненно может использоваться через Интернет, возможно, с применением роли Worker Windows Azure в качестве брокера, поскольку не существует брокера, написанного целиком на C#.
Только не создавайте SkyNet, пожалуйста…
Comments
- Anonymous
August 07, 2013
Машинный перевод до добра не доведет. Лучше бы уже в оригинале статью публиковали.