Интернет вещей
Что такое интернет вещей?
Интернет вещей (ИВ) — загадочный термин, который окружен ореолом высокотехнологичной загадочности, почти как нанотехнологии. В этой статье мы постараемся разобраться для чего вещам интернет, какие вещи уже сейчас умеют пользоваться интернетом, и самое главное — с чего начать изучение этой технологии, чтобы вновь создаваемые устройства могли выходить в сеть.
Начнём мы с обычного интернета, который теперь правильнее бы называть «интернетом людей».
Интернет людей
Интернет — слово, которое знает почти каждый человек на земле. Мы говорим, что в интернете можно найти какую-то полезную информацию, сделать какое-то важное дело, научиться чему-то, развлечься. В общем, интернет — это такой параллельный мир, в котором мы частенько бываем и берём из него что-то полезное (или вредное).
Но что такое интернет? Если переводить дословно с английского internet — это «межсеть» или «сеть сетей». В общем-то, этот дословный перевод со сто процентной точностью передаёт суть интернета с технической точки зрения, но не с точки зрения его современной сути.
Зачем люди сделали интернет?
Толчком к созданию интернета во второй половине прошлого века послужила необходимость быстрого обмена цифровыми данными, которые в огромных количествах стали производиться компьютерами. В рамках большой компании или университета эту задачу быстро решили с помощью создания локальных сетей. Люди смогли легко обмениваться важными документами, результатами вычислений и прочими цифровыми данными между компьютерами и серверами у себя на работе.
Естественным образом возник вопрос: а почему бы не связать локальные сети университетов между собой? Ну логично же. Можно будет обмениваться данными не только между факультетами и лабораториями, но и между отдельными университетами! Такой эксперимент провели в рамках проекта ARPANET. Надо сказать, что интернет послужил для науки мощным стимулятором развития, естественно, что именно учёные его и создали.
Подсказка
Кстати, корень слова «inter» означает связь между чем-то. Например: intercontinental — межконтинентальный (ракета), interstellar — межзвездный (крейсер), intergalactic — межгалактический, а ещё интернациональный.
Вслед за научным сообществом, интернет оценили коммерческие компании, особенно те, офисы которых были распределены по территории США и даже по всему миру. Потом на очереди оказались и простые люди, которые тоже смогли получить доступ к стремительно растущим богатствам интернета.
Получается, локальные сети организаций по всему миру, связанные вместе — это и есть интернет. Но это всего лишь техническое определение интернета, а что всё таки даёт нам доступ во всемирную сеть?
Что есть в интернете?
Современный интернет можно изобразить в виде аморфного облака, в котором раскиданы различные агрегаторы полезных ресурсов и обслуживающая их инфраструктура. Всех этих «обитателей» интернета можно назвать словом «сервисы». То есть они обслуживают нас — людей.
Что это за сервисы? Да всё, к чему мы привыкли: социальные сети, сайты, агрегаторы медиа, мессенджеры, банковские и прочие онлайн-сервисы, онлайн-игры и многое другое. Всё это где-то в интернете и мы даже не задумываемся где, в каких физических сетях, в каких странах.
Люди могут подключаться к этому облаку через свои устройства чтобы поработать с какими-то конкретными сервисами. Для этого можно использовать персональный компьютер, смартфон, телевизор, или даже наручные часы.
Интернет вещей
Итак, мы — люди создали интернет и активно его используем в своих целях. Удовлетворяя свои социальные потребности и выполняя с помощью интернета работу. Мы — инициаторы каждого сеанса выхода в интернет. Именно человек жмет иконку браузера в своём телефоне и потом ищет там что-то ему необходимое. Человек пишет сообщения в мессенжерах и выкладывает в интернет видеролики.
А теперь представим, что окружающие нас электронные устройства тоже стали полноправными пользователями интернета. Что им нужно от интернета, и что они будут там делать?
Формально, вещи не имеют воли и сами не могут осознанно пользоваться всемирной сетью. Однако, они могут быть инициаторами сеанса связи для получения какой-либо полезной информации, или для отправки данных на хранение, наконец для обмена данными с другими устройствами. Когда гаджет сам выходит в интернет — можно говорить о появлении интернета вещей.
Примечание
После появления в интернете новых «неживых» пользователей, стали появляться и новые сервисы, а также стремительно расти в объёме некоторые из прежних. А ещё, все эти миллиарды устройств создают колоссальную нагрузку на инфраструктуру интернета. По данным компании Cisco, уже в 2008-2009 годах количество устройств подключенных к сети интернет превысило количество людей на земле!
Взять, к примеру, хранилище данных: сырых или обработанных. Во-первых, эти данные нужно где-то хранить, хотя бы на время обработки. А ведь данные могут идти непрерывным потоком, от миллиардов устройств. Потребуются огромные системы хранения. Во-вторых, для обработки данных нужны будут вычислительные мощности, невиданных ранее масштабов.
Или спустимся ближе к человеку, в его жилище. Современный город насыщен источниками WiFi (и не только), которые взаимодействуют друг с другом, порождая негативные эффекты. И чем больше плотность пользователей беспроводной связи, тем стремительней падает скорость обмена информацией. А что если в одной квартире будет сотня устройств, которым нужен WiFi? Далеко не каждый роутер справится с такой нагрузкой.
Но инженеры решают эти задачи. Разрабатывается новая аппаратура связи и новые протоколы обмена. Всем понятно, что без новых идей, интернет вещей не сможет развиваться.
Вещи, которым нужен интернет
Индустрия 4.0
Мы живем в момент формирования в мире нового технологического уклада, который ещё называют Индустрия 4.0. Это ёмкое понятие, которое включает в себя сразу группу направлений развития науки и техники:
большие данные;
виртуальная и дополненная реальность;
3D-печать;
блокчейн;
печатная электроника;
и, конечно, интернет вещей!
Умная фабрика
Одним из главных концептов, которые ознаменуют собой эпоху Индустрии 4.0 является умная фабрика. Чтобы это понять, посмотрим внимательно на классическую фабрику или завод.
Современный завод — это отлаженный механизм, который заточен на выпуск ограниченной номенклатуры товаров, с заданными характеристиками и качеством. Такой подход позволяет сделать производство эффективным, в отличие от примитивных ремесленных способов.
Отметим, что самым технологичным является конвейерное производство. Это когда на заводе имеется непрерывная производственная линия, на вход которой загружаются исходные материалы и компоненты, а на выходе получается готовый продукт. Такие линии хорошо поддаются автоматизации и роботизации. Можно взглянуть на любое современное производство автомобилей.
А что с умной фабрикой? На этой, пока гипотетической, фабрике динамический конвейер не делает серию одинаковых вещей, напротив, каждое выпущенное изделие может быть уникальным. Другими словами, массовая промышленность приобретает черты массовой индивидуализации!
Над созданием такого конвейера работают разные промышленные компании, например, немецкая Festo. Как он может быть устроен и причем тут интернет вещей? На этот счет есть несколько соображений.
Во-первых, динамический конвейер — нелинейный, он, скорее, похож на улицы города или на современный роботизированный склад. То есть объект, который на него попадает, может перемещаться между остановками как ему вздумается.
Во-вторых, на вход этого конвейера поступают детали, которые имеют способность общаться с оборудованием, например, с помощью RFID технологии. Деталь чётко знает весь свой жизненный путь, чем она хочет стать или в составе чего продолжить своё существование. Каждый робот или станок также подключен к сети и может общаться с деталями на конвейере, с другим оборудованием или даже использовать сервисы интернета (например, облачные вычисления). Робот общается с товарищами, оперативно реагируя на возникающие проблемы и изменения в техническом задании — прямо как человек.
Таким образом, детали передвигаясь от остановки к остановке, общаясь с окружающим миром, проживают свой производственный цикл, формируя непрерывный поток уникальных изделий.
Умный дом
Домашнюю автоматику часто называют умным домом, хотя в действительности, ума у такого дома меньше, чем у муравья. Ум — это, помимо всего прочего, способность решать возникающие проблемы импровизируя. А если контроллер «умного дома» работает по строго заданной программе — это обычная автоматика.
Будущее умного дома — это сбор данных о жителях и подстраивание под их ритм, а также связь с внешними сервисами для решения бытовых задач. И здесь опять не обойтись без связи между всеми устройствами и выходом в интернет.
На сегодняшний день существует огромное количество разнообразных устройств домашней автоматики, которые умеют пользоваться интернетом:
умные розетки и выключатели;
датчики света, движения, климата, протечек;
охранные камеры и датчики;
умные бытовые приборы: холодильник, стиральная машина, духовка;
роботы-пылесос;
управляемые шторы и жалюзи.
Здоровье
Уже реальность — носимые устройства, которые ведут мониторинг здоровья человека и отправляют данные через интернет в больницу. Пока эти технологии используют выборочно: для диагностики и наблюдения за пожилыми людьми или людьми с высоким риском возникновения экстренных состояний.
Но есть устройство, которое носит огромное количество здоровых людей — это фитнес-браслет. Этот браслет собирает данные о человеке в течение дня и отправляет их на специальный сервис в интернете, который может сделать какие-никакие умозаключения о правильности образа жизни хозяина браслета.
Ведутся разработки кардиостимуляторов и инсулиновых помп с возможностью подключения к интернету. А следующий шаг — импланты улучшающие когнитивные функции человека, черпающие данные из интернета.
Транспорт
Сбор данных о транспорте в городе помогает более эффективно организовать управление движением. Если каждый городской автомобиль будет сообщать о своем местоположении, то городские пробки станут пережитком прошлого.
Машины с автопилотом уже реальность. Сейчас они используют геоинформационные сервисы, находящиеся в интернете. Те же беспилотные автомобили могут запрашивать в сети обновление маршрутов с учетом текущей обстановки.
Более того, современный автомобиль наполнен различными приборами, которые непосредственно не связаны с процессом вождения: системы слежения за усталостью водителя, датчики алкоголя, охранные системы. Эти приборы, так или иначе, тоже могут пользоваться интернетом.
Сельское хозяйство
Автоматизированные теплицы стали обыденным делом. Создание какой-нибудь «умной» теплицы — один из любимых школьных проектов. Оно и понятно. Польза от теплицы очевидна — это же пища, и поэтому результат автоматизации вполне ощутим. Только вот чтобы теплица смогла по праву носить титул «умная», ей придётся использовать в своей работе интеллектуальные системы.
Интернет вещей применяется в сельском хозяйстве для разных аспектов. Например, для сбора данных без участия человека. Компактные и энергоэффективные датчики могут следить за состоянием даже отдельных овощей на ферме: фиксировать изменение цвета плода, его размер. Собираются данные о почве и климате на разных участках теплицы или целого поля.
Другое направление — сельскохозяйственные дроны. Связь между группой таких роботов помогает им координировать выполнение задач на поле: точечный полив, контроль влажности, поиск вредителей и сорняков, применение химикатов и удобрений.
Носимые IOT устройства помогают фермеру следить за местоположением животных на пастбище, а также фиксировать изменения в состоянии, которые могут указывать на болезнь животного.
Технологии
Попробуем разобраться со стеком технологий, необходимых для создания ИВ-устройств в идеологии интернета вещей.
Электроника
Во-первых, ИВ-устройство должно иметь канал связи с интернетом. При этом связь может быть организована разными способами:
работа в беспроводной сети WiFi (включая MESH) или в проводной сети Ethernet; устройства должны иметь соответствующие аппаратные модули, а также достаточную вычислительную мощность чтобы работать с протоколом TCP/IP;
обмен данными с удалённым сервером через модуль сотовой связи, например, GPRS;
работа в составе сети Zigbee; в этом случае данные сначала передаются до Zigbee маршрутизатора, а затем, после предварительной обработки, далее в интернет;
работа в сети LoRaWAN.
В зависимости от поставленной задачи выбирается подходящая система связи и создаётся образ будущего устройства.
Например, Ethernet и WiFI часто реализованы в популярных микрокомпьютерах: Raspberry Pi, Orange Pi, Rock Pi и т.п. С помощью дополнительных модулей к ним подключить и прочие системы связи: GPRS, LoRa, Zigbee, и т.д.
Однако, для решения задач, где необходима низкая стоимость устройства и/или низкое его энергопотребление, микрокомпьютеры не подходят. В этих ситуациях на помощь приходят микроконтроллеры, дополненные нужными модулями связи. Существуют готовые SoC (система на кристалле) устройства, специально разработанные для мира ИВ, например, семейство модулей ESP от Espressif.
Программное обеспечение
Программа ИВ-устройства должна уметь работать с выбранной системой связи, обеспечивать сбор данных, их предварительную обработку и хранение.
Рабочий цикл типичного ИВ-устройства организован так, что большую часть своего времени система находится в режиме низкого энергопотребления — сна. Лишь иногда, по таймеру или по внешнему прерыванию, система пробуждается, собирает данные, обрабатывает их и производит обмен с сервером или с другими устройствами.
Протокол передачи данных
Для обмена данными с сетью, ИВ-устройство может использовать стандартные сетевые протоколы, например, TCP/IP или UDP. Специально для интернета вещей были разработаны протоколы более высокого уровня, такие как MQTT или CoAP.
Протокол MQTT имеет шинную организацию. При такой организации одни устройства становятся «издателями» — они отправляют какие-то данные в шину. Другие становятся «подписчиками» — они принимают из шины именно те данные, на которые подписались.
Рассмотрим работу MQTT на примере. Пусть в некотором здании размещены ИВ-устройства с датчиками углекислого газа. Которое каждые 10 минут они отправляют данные на сервер. После получения данных с датчика, ИВ-устройство формирует сообщение для шины MQTT, в котором содержатся сами данные, а также так называемая тема сообщения. Тема — это идентификатор, по которому подписчики будут искать эти сообщения в шине. Затем сообщение отправляется на сервер по WiFi.
С другой стороны, сервер, при помощи специальной программы — брокера MQTT, получает MQTT сообщения с наших ИВ-устройств и размещает их в шине.
Наконец, сервер умного дома получает все сообщения с требуемой темой и на основе их анализа принимает решения, например: открыть окна и проверить некоторые помещения в здании.
Визуализация и автоматизация
Для того, чтобы человек смог настраивать взаимодействие между ИВ-устройствами и формировать схемы автоматизации существуют специальные приложения, например, Node-RED.
Node-RED может извлекать нужные сообщения из шины MQTT, анализировать их и формировать новые MQTT сообщения для управления исполнительными ИВ-устройствами. Причём Node-RED может работать не только с MQTT, но и, например, со стандартным сетевым протоколом HTTP, что позволяет организовать взаимодействие с API сервисами.
Рекомендации
Таким образом, для создания своего ИВ-устройства с полным циклом функционирования можем сформировать такую структуру:
Здесь Д1..Д3 — те самые ИВ-устройства с датчиком CO2 из примера выше. И1 — исполнительное устройство.
Датчик может быть устроен так: в основе модуль ESP (например, ESP32-C6), к нему по шине I2C подключен датчик CO2. Питание осуществляется от аккумулятора или от литиевой батарейки.
Исполнительное устройство основано на том же ESP с подключенным к нему драйвером мотора. Драйвер управляет линейным актуатором для открывания окна. Питание системы осуществляется от сети, через блок питания.
Сервером с Node-RED и Mosquitto может служить даже самый простой микрокомпьютер, например, Raspberry Pi Zero.