Логотип sheen.bot

Идеи и опыт

Что такое MQTT и почему каждому школьному уроку по IoT вдруг понадобился брокер?

9 авг. 2026 г.·Sheen Robotics
Что такое MQTT и почему каждому школьному уроку по IoT вдруг понадобился брокер?

MQTT — это легковесный протокол обмена сообщениями, позволяющий классным микроконтроллерам обмениваться данными без прямых соединений между устройствами. Направляя трафик через центральный брокер, он обходит строгие школьные межсетевые экраны и не даёт устройствам падать под нагрузкой сети.

Если вы недавно заглядывали в учебную программу по кодированию и робототехнике по CAPS или пробовали спроектировать практическую работу по интернету вещей (IoT) для своего класса, вы почти наверняка натыкались на аббревиатуру MQTT и на требование иметь «брокер MQTT». Учителю информатики или загруженному координатору по технологиям это может показаться лишним усложнением. Почему микроконтроллер вроде ESP32 или Raspberry Pi Pico W не может просто отправлять данные датчиков напрямую на ноутбук или телефон ученика по локальной сети Wi-Fi?

Короткий ответ: прямая связь между устройствами хрупка, требовательна к ресурсам и почти полностью несовместима с безопасностью школьной сети. MQTT (Message Queuing Telemetry Transport) решает это, отделяя отправителя данных от получателя и направляя все сообщения через центрального управляющего — брокер. Это отраслевой стандарт промышленного IoT, и он всё чаще необходим для физических вычислений в классе.

Классная доска объявлений: как понять pub/sub

Чтобы понять, почему MQTT работает, представьте класс из 40 учеников. Если бы каждый, кто хочет узнать текущую температуру на улице, должен был подойти к однокласснику у окна и спросить: «Какая температура?», этот сидящий у окна ученик весь урок отвечал бы на однообразные вопросы вместо собственной работы. А если бы ещё десяток учеников захотел узнать, когда следующая перемена, им пришлось бы напрямую отвлекать учителя.

Теперь повесим в коридоре доску объявлений. Сидящий у окна пишет на стикере «Температура: 22°C» и прикалывает его под заголовком «Погода». Учитель прикалывает «Следующая перемена: 10:30» под заголовком «Расписание». Любой, кто хочет узнать температуру или время перемены, просто подходит к доске и читает. Сидящий у окна не знает и не интересуется, кто читает температуру; он просто публикует обновление. Читателям не нужно его беспокоить.

Это и есть модель «публикация/подписка» (pub/sub), которую использует MQTT:

  • Издатель: Микроконтроллер с датчиком (ученик у окна), который отправляет данные брокеру.
  • Подписчик: Дашборд, мобильное приложение или база данных (ученики, читающие доску), которые хотят получать эти данные.
  • Брокер: Центральный сервер (доска объявлений), который принимает сообщения от издателей и направляет их нужным подписчикам.

Техническая суть: топики, сохранённые сообщения и «последняя воля»

MQTT опирается на три ключевых понятия, которые делают обмен эффективным и надёжным даже при плохой беспроводной связи.

1. Топики: Сообщения отправляются не конкретным устройствам, а публикуются в «топики». Топики строятся через косые черты, образуя иерархию вида school/lab1/temp или home/garden/moisture. Устройство может подписаться на строго определённый топик или использовать подстановочные знаки, чтобы слушать сразу несколько. Например, подписка на school/+/temp позволяет одному дашборду показывать показания температуры из всех лабораторий кампуса.

2. Сохранённые сообщения: Обычно, если датчик публикует показание, а в эту самую миллисекунду никто не подписан, сообщение теряется навсегда. Если ученик откроет приложение-дашборд через пять минут, он увидит пустой экран, пока датчик не передаст данные снова. Установив у сообщения флаг «retained», издатель говорит брокеру: «Сохрани это последнее значение. В следующий раз, когда кто-нибудь подпишется на этот топик, отдай ему его сразу же». Это критично для медленно меняющихся данных — влажности почвы или уровня воды в баке.

3. Последняя воля и завещание (LWT): Микроконтроллеры в южноафриканских классах постоянно сталкиваются с внезапными обрывами связи из-за веерных отключений, севших батарей или учеников, случайно выдернувших кабель питания. При первом подключении к брокеру устройство регистрирует сообщение «последней воли» (например, топик: status/sensor1, сообщение: offline). Если устройство внезапно теряет питание, не отправив корректный сигнал отключения, брокер обнаруживает разрыв соединения и автоматически публикует это сообщение от имени устройства, сообщая остальной системе, что оборудование не в сети.

Три вещи, которые ломаются в школьной сети

Хотя MQTT устойчив, его внедрение в образовательной среде требует считаться с реальностью школьной ИТ-инфраструктуры. Три типичных сценария отказа регулярно срывают уроки:

Типичные сбои школьной сети

Особенность сетиЗачем она нужнаКак она ломает урок по IoT
Защита WPA2-EnterpriseЗащищает школьные сети, требуя индивидуальных логинов и паролей учеников.Обычные микроконтроллеры (например, простые чипы ESP8266) не могут без ухищрений договориться о протоколах Enterprise-безопасности, из-за чего не подключаются к Wi-Fi.
Изоляция клиентов точки доступа (AP Isolation)Не даёт ученикам взламывать чужие ноутбуки или лезть в них по локальному Wi-Fi.Блокирует локальный трафик между устройствами. Если вы поднимете брокер MQTT на Raspberry Pi в классе, устройствам учеников в той же сети Wi-Fi доступ к нему будет закрыт.
Смена динамических IP (DHCP)Переиспользует IP-адреса, чтобы у школьного роутера они не закончились.Если вы всё же поднимете локальный брокер на ноутбуке, его IP-адрес будет регулярно меняться. Любой код микроконтроллера с жёстко прописанным IP-адресом на следующий день не подключится.

Чтобы обойти эти локальные сетевые препятствия, педагогам обычно приходится выбирать между борьбой с ИТ-отделом за особые настройки роутера и направлением трафика через внешний облачный брокер, доступный по стандартным веб-портам. Учителям, которым нужно готовое решение для класса, полностью снимающее эту головную боль с локальной сетью, платформа Sheen IoT предоставляет преднастроенную облачную среду MQTT, спроектированную специально под ограничения школьных межсетевых экранов.

Перенося нагрузку по обмену сообщениями с микроконтроллеров на выделенный брокер, MQTT добивается того, что даже если код ученика неоптимален или школьный Wi-Fi проседает, IoT-устройства класса могут общаться надёжно и безопасно.

#iot#mqtt#кодирование и робототехника#техника в классе#сети

Больше в категории «Идеи и опыт»

Почему вода в нашей школьной гидропонике позеленела от водорослей?
Идеи и опыт· 30 авг. 2026 г.

Почему вода в нашей школьной гидропонике позеленела от водорослей?

Вспышки водорослей случаются, когда свет попадает в богатую питательными веществами воду. Разбираем, почему подводят белый ПВХ и полупрозрачные ёмкости, и как справиться со вспышкой без токсичной химии.

Читать далее →
Почему добавление второго датчика подвешивает ваш micro:bit или Arduino
Идеи и опыт· 29 авг. 2026 г.

Почему добавление второго датчика подвешивает ваш micro:bit или Arduino

Когда лишний датчик останавливает весь проект на micro:bit или Arduino, виновата почти наверняка блокировка шины I2C: совпадение адресов, проблемы с подтягивающими резисторами или конфликт напряжений.

Читать далее →
Почему дешёвые датчики влажности почвы корродируют и что школам стоит использовать вместо них
Идеи и опыт· 28 авг. 2026 г.

Почему дешёвые датчики влажности почвы корродируют и что школам стоит использовать вместо них

Дешёвые резистивные почвенные датчики быстро корродируют, потому что постоянный ток превращает открытую медь в жертвенный анод. Разбираем, как электролиз их разрушает, как эту проблему решают ёмкостные датчики и как собрать надёжный ученический монитор для сада.

Читать далее →