Connect with us

Разработка

Smart city: почему умный дом должен быть сmeshным?

Уникальные свойства mesh-сетей обусловили рост популярности данной технологии в области Интернета вещей – ведущего мирового технологического тренда последних лет. Мы решили разобраться в причинах вместе с Павлом Бойко, заместителем директора по направлению системного ПО в «АстроСофт».

AppTractor

Опубликовано

/

     
     

Давай начнем с самого начала. Что из себя представляет эта самая mesh?

Я бы сказал, не просто mesh, а mesh-сеть. Или, как ее еще называют, сеть ячеистой топологии. Говоря простыми словами, это способ построения сети из устройств на основе, как правило, беспроводной связи, например, радиосвязи или Wi-Fi. При этом, обычно отсутствует центральное устройство-координатор — все устройства сети равноценны, могут принимать и передавать информацию, что делает сеть гибкой и динамичной структурой. Можно сказать, что mesh-сеть — обычная сеть, с той лишь разницей, что устройства через себя умеют передавать данные для других устройств. Если одно из устройств выйдет из строя, его функции ретрансляции возьмет на себя кто-то из «соседей». Соответственно, работа всей системы не нарушится – просто перестроятся маршруты передачи данных. Пожалуй, отказоустойчивость – главное преимущество.

Звучит многообещающе, но довольно абстрактно. Можешь пояснить на конкретном примере из своей практики?

Без проблем. Давай рассмотрим наш совместный проект с «Миландром» (АО «ПКК Миландр» – прим.) – систему «умного» учета энергоресурсов в жилом многоквартирном доме.

В каждой квартире установлены специальные счетчики электроэнергии, воды, газа, которые соединяются с датчиками и передают показания потребления на модем, который конструктивно является частью «умного» счетчика. Задача «умника» — передать показания на УСПД — устройство передачи данных, расположенное в подвале. Оно играет роль внутреннего сервера, на который со всего дома стекается информация о потреблении энергоресурсов, чтобы затем передать полученные данные с помощью сотовой связи в соответствующую инстанцию. Например, в случае с показаниями электропотребления — в электросетевую компанию, которая использует полученную информацию для формирования счетов жильцам и актуализации информации об энергопотреблении через такие интерфейсы, как личный кабинет пользователя на сайте электросетевой компании или мобильное приложение.

А где тут mesh?

Не просто mesh, а гетерогенная mesh-сеть! Она объединяет датчики и «умные» счетчики, а если еще точнее, то датчики и модемы «умных» счетчиков.

Технология mesh дает возможность установки датчиков в любой части дома и передачи информации через ближайший к установленному датчику «умный» счетчик. По автоматически выбираемому маршруту передачи показаний на УСПД информация идет по выбранной в данный конкретный момент времени цепочке «умных» счетчиков. Например, счетчик с девятого этажа не может напрямую передать информацию на внутренний сервер в подвале дома, поэтому используется цепочка из «умных» счетчиков, последним элементом передачи которой может быть, например, счетчик с третьего этажа, который уже может связаться с УСПД и передать полученные данные. Если один счетчик по каким-то причинам «не видит» соседа, он сможет передать через другого соседа. Таким образом, не важно, кто с кем соединен и где находится — выше или ниже этажом. Главное, чтобы был «виден» хотя бы один соседний узел, и данные будут переданы.

При выходе какого-то элемента сети из строя вся система продолжает работать. На связи это никак не отражается. Если до этого наш «умный» счетчик с девятого этажа передавал свои показания по цепочке других счетчиков на внутренний сервер в подвале, то вышедший из строя счетчик на 3-м этаже не помешает передаче данных. Будет найден альтернативный маршрут через соседние счетчики. Отсюда высокие показатели отказоустойчивости у mesh-сетей.

Датчики умеют передавать показания на модем «умного» счетчика только с использованием радиосигнала по беспроводной сети, чтобы не опоясывать квартиру проводами. Модем же имеет сразу два канала связи, по которым может передавать информацию на УСПД: RF-канал (радиоканал) и PLC-канал (электрическая сеть). Отсюда «гетерогенная» сеть. Можно использовать сразу оба канала или поочередно, чтобы передавать данные или транслировать показания «умных» счетчиков-соседей. Там, где плохо работает радио-канал, используют электричество, там где нет электричества – радио.

В основном, используется радио-канал — информация по нему передается гораздо быстрее и «по воздуху» — никакие провода не нужны. Связь через электропровода отличает очень низкая скорость, поскольку уходит время на качественное распознавание действительно полезной информации – в нашем случае данных показаний счетчиков. Это необходимо, чтобы зря не забивать и без того небыстрый канал неприоритетной информацией типа служебных сообщений устройств (фиксируемая информация о маршруте передаваемой информации, запрос на регистрацию в сети и т.п.).

Зачем же тогда вообще «умным» счетчикам, или модемам в их составе, опция передачи данных по электросети? Особенно, учитывая необходимость в таком случае соединять их между собой проводами?

Механизм передачи данных по электрической сети очень нужен на случай помех. Например, кто-то из жильцов подключит новый Wi-Fi-роутер, который создаст помехи в эфире, так что информация не будет проходить. Или на каком-то участке мы можем столкнуться с физическим препятствием, которое будет глушить радиосигнал – например, очень толстой железобетонной стеной. Запасной же электросетевой канал медленно, но верно передаст данные.

Благодаря большому числу возможных сочетаний маршрутов, наша гетерогенная mesh-сеть умеет «обходить» физические или искусственные «препятствия» в радиоэфире и электросети.

С преимуществами разобрались, но должны же быть и какие-то проблемные места у этой технологии?

Скорее ограничения. Организация сети ячеистой топологии сопряжена с некоторыми алгоритмическими вопросами, не имеющими на данный момент однозначного и универсального математического решения. Наш коллега Алексей Спирков,  руководитель отдела наукоемких технологий «АстроСофт», подробно останавливается на них в своей статье. В дополнение к сказанному им, замечу, что, основываясь на распространенных подходах решения данных задач, мы предлагаем собственные варианты их решения, которые хорошо зарекомендовали себя на практике.

А можешь привести хотя бы один, самый интересный пример в формате «проблема-решение» прямо сейчас?

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

Это очень похоже на Skype-конференцию. Предыдущий спикер замолчал. Следующий немного подождал, убедился, что тот закончил, начал говорить. Иногда, конечно, случается, что участники начинают говорить одновременно или перебивают друг друга, но большую часть времени общение проходит нормально.

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

То, что ты описываешь, представляет собой ни что иное, как математический алгоритм. Каким образом удалось вживить алгоритмы в рассматриваемую систему «умного» учета?

Набор подобных алгоритмов образует специальный модуль нашей операционной системы МАКС. МАКС внутри «умного» счетчика как раз и решает, среди прочего, вопросы маршрутизации и управления сетью.

Попробую подступиться с еще одной проблемой. Система «умного» учета — это одно из детищ Интернета вещей. Одним из сдерживающих факторов для его активного использования в повседневной жизни является требование энергоэффективности. Как в вашей системе решен этот вопрос?

Совершенно верно. Устройства Интернета вещей должны иметь низкое энергопотребление для нормальной, продолжительной работы. Датчики в нашей системе отвечают озвученному тобой требованию энергоэффективности. Модель используемого датчика достаточно маломощная, внутри стоят две обычные пальчиковые батарейки. Когда к нему приходит запрос, он просыпается, устанавливает связь с модемом и передает необходимые данные. А затем снова переходит в режим сна и находится в этом режиме практически постоянно. Поэтому ему не нужен постоянный источник питания – достаточно этих двух батареек. Их хватает примерно на три года.

Прямо все продумано — не придерёшься!

Еще бы, такая критичная система для целого дома.

Тогда давай я задам последний, но важный вопрос. Можно сказать, что mesh-сеть — это универсальное решение для многоквартирного «умного» дома?

Безусловно! В данном случае мы имеем дело с кучей маленьких датчиков, которые должны передать информацию через большое расстояние, к примеру с двенадцатого этажа на первый. В одиночку не справиться. Какой-то элемент цепочки может выйти из строя. Или на каком-то участке возникнут помехи. На этот случай необходимо иметь возможность передачи данных обходными маршрутами. И электросеть, и радиосвязь чреваты помехами – наша гетерогенная mesh-сеть берет лучшее от обеих по ситуации. Высокая отказоустойчивость делают ее не просто универсальным, а оптимальным решением для «умных» домов, в частности систем «умного» учета.

Остается только согласиться. Спасибо большое за такие иллюстративные примеры и четкие объяснения. Успехов!

Спасибо!

 

Комментарии
Если вы нашли опечатку - выделите ее и нажмите Ctrl + Enter! Для связи с нами вы можете использовать info@apptractor.ru.
Advertisement
Click to comment

You must be logged in to post a comment Login

Leave a Reply

Новости

Интересные материалы: 12.11

Начинаем неделю с микроинтеракций, ловушек тестирования и всех вещей, разрушающих продуктивность разработчика.

AppTractor

Опубликовано

/

Автор:

Весь день мы собираем лучшие материалы о разработке и маркетинге технологий, стартапов, мобильных приложений и игр для iOS и Android из самых разных источников:

Комментарии
Продолжить чтение

Новости

Digest MBLTdev: Новости для iOS разработчиков №194

В течение недели топовые iOS-разработчики Руслан Гуменный, Саша Черный, Сергей Бендак, Вадим Дробинин, Юрий Петухов и директор по продукту VK Иван Козлов собирают для вас интересные и полезные ссылки на статьи, необходимые для прочтения каждому начинающему и опытному разработчику. В каждом выпуске – новости, коды, инструменты, дизайн и прочее.

e-Legion

Опубликовано

/

Автор:

iPad рвёт Macbook в тестах на производительность, а Mac Mini с аналогичным хрустом рвёт Mac Pro. Что-то нереальное. Шутка, не иначе. Ан-нет, не шутка.

Линейку Apple лихорадит. Она утратила ясность и прогнозируемость. В инструкции к iPhone упомянут невыпущенный AirPower, в инструкции к Mac Mini невыпущенный монитор Apple. Хаос. Тьма.

По этой бурлящей реке безумия на плотах из палок плывут разработчики. Вглядываются в даль. Перешептываются о новой версии Swift, о безбажном Xcode, о стандартизации работы с UI… Они еще не знают, что жизнь и есть плот, что с реки можно сойти на берег, но доплыть до её конца нельзя.

App Store Connect API

2018 год мысленно уже был на пенсии, у него с этим все чётко, а Apple-таки обременила его событием: добавила официальный API для работы с App Store Connect. Зайдите в свой аккаунт, далее в Users and Access. Рядом со вкладкой People появился раздел Keys. В нем кнопка Request Access. Если вы не видите раздела Keys, значит, прав не хватает. Зовите Team Agent.

DEVELOPER.APPLE.COM

AloeStackView

Airbnb снова жгут. В этот раз показали библиотеку для верстки вертикальных список. Меньше 500 строк, без внешних зависимостей. Одно только оформление проекта на GitHub чего стоит.

GITHUB.COM

The power of key paths in Swift

Обзор того, как в Swift работают KeyPath и бонусом несколько полезных примеров, которые могут быть полезны почти в каждом проекте.

WWW.SWIFTBYSUNDELL.COM

Avoiding race conditions in Swift

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

WWW.SWIFTBYSUNDELL.COM

Custom filters with Core Image Kernel Language

Создаем собственный фильтр с помощью Core Image Kernel Language. Пошаговое руководство для тех, кто хочет познакомиться с этой технологией поближе.

WWW.BIGNERDRANCH.COM

Static and Dynamic Libraries and Frameworks in iOS

Просто и понятно о разнице между статическими и динамическими библиотеками и о преимуществах каждой из них.

WWW.VADIMBULAVIN.COM

Supporting New iPad Pro Models

Какие изменения для разработчиков принес релиз новых iPad? Новые разрешения, соотношения сторон и обработчики для действий пользователя с ручкой. Подробнее в статье.

USEYOURLOAF.COM

16 ноября CocoaHeads в Санкт-Петербурге

Встреча пройдёт в офисе Яндекса. Регистрация через приложение или онлайн. В программе 3 доклада и викторина. Такими темпами в чате CocoaHeads Russia народ начнёт жаловаться «а когда же в Москве, а когда же в Москве?».

EVENTS.YANDEX.RU

Language Server Protocol

В октябре Apple анонсировали поддержку LSP для Swift и Clang/LLVM. Если до этого не сталкивались с аббревиатурой LSP в контексте языков программирования, то статья поможет разобраться в том что это и для чего нужно, так же в ней есть некоторые мысли о том, какие перспективы открывает поддержка LSP.

NSHIPSTER.COM

Sherlock

Хочешь поменять констрейнты прямо в симуляторе, м? Sherlock может. Конфигурировать не надо. Бета бесплатная.

SHERLOCK.INSPIREDCODE.IO

Thoughts on iOS Architecture

Автор акцентирует внимание на том, как можно интерпретировать MVC-паттерн при разработке приложений и как вписать использование других UI-паттернов в эту архитектуру.

DMTOPOLOG.COM

Предыдущие выпуски Digest MBLTDEV и подписка доступны на официальном сайте. Всё бесплатно и никакого спама, честно!

Комментарии
Продолжить чтение

Разработка

Интересные материалы для разработчика мобильных приложений #234 (5-11 ноября)

В нашей новой подборке новости с Android Dev Summit, Continuous integration в Яндексе, тотальная интеграция в Google и интересное руководство по жизненному циклу пользователей. Заходите!

AppTractor

Опубликовано

/

Автор:

Гнущиеся смартфоны и другая информация с Android Dev Summit

Сейчас Google проводит Android Dev Summit, и уже состоялся открывающий кейноут. В основном рассказанное там предназначается Android-разработчикам, но есть и новость, способная заинтересовать более широкие массы: «сгибающиеся смартфоны». Внимательно посмотрев онлайн-трансляцию, мы написали и о поддержке таких устройств, и о другой информации из кейноута.

Руководство по разработке Web-приложений на React Native

Вы проснулись. Сияет солнце, щебечут птички. В мире никто ни с кем не воюет, никто не голодает, а один и тот же код можно использовать и в веб-проектах, и в нативных приложениях. Как бы было хорошо! К сожалению, на горизонте можно разглядеть лишь универсальный код, но путь к нему, даже сегодня, всё ещё полон неожиданностей.

 iOS

 Android

 Разработка

 Аналитика, маркетинг и монетизация

 AI, Устройства, IoT

 Вакансии

Комментарии
Продолжить чтение

Новости

Интересные материалы: 08.11

У нас снова конец мобильных приложений, первое приложение на React Native и бот для общения с рекрутерами.

AppTractor

Опубликовано

/

Автор:

Весь день мы собираем лучшие материалы о разработке и маркетинге технологий, стартапов, мобильных приложений и игр для iOS и Android из самых разных источников:

Комментарии
Продолжить чтение

Реклама

Наша рассылка

Нажимая на кнопку "Подписаться" вы даете согласие на обработку персональных данных.

Вакансии

Популярное

X
X

Спасибо!

Теперь редакторы в курсе.