Как стать автором
Обновить
17.26

Разработка для интернета вещей *

Учимся разрабатывать для интернета вещей

Сначала показывать
Порог рейтинга
Уровень сложности

Знакомство с Node-RED и потоковое программирование в Yandex IoT Core

Время на прочтение8 мин
Количество просмотров62K


В этой статье я хочу разобрать один из самых популярных опенсорс-инструментов, Node-RED, с точки зрения создания простых прототипов приложений с минимумом программирования. Проверим гипотезу о простоте и удобстве таких средств, а также рассмотрим взаимодействие Node-RED с облачной платформой на примере Yandex.Cloud.

Читать дальше →
Всего голосов 23: ↑21 и ↓2+19
Комментарии10

Вернуть пропавший скутер, или история одного IoT мониторинга

Время на прочтение21 мин
Количество просмотров16K

Год назад мы запустили пилотную версию промо проекта по децентрализованному прокату электроскутеров.


Изначально проект назывался Road-To-Barcelona, позже стал Road-To-Berlin (отсюда встречающиеся на скриншотах R2B), а в итоге и вовсе был назван xRide.


Основная идея проекта была в следующем: вместо того чтобы иметь централизованный сервис проката автомобилей или скутеров (речь пойдет о скутерах aka электро-мотоциклах, а не kickscooter/самокатах) мы хотели сделать платформу для децентрализованной аренды. О сложностях с которыми мы столкнулись уже писали ранее.


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


Пользователь устанавливал iOS или Android приложение на телефон, подходил к понравившемуся ему скутеру, после чего телефон и скутер устанавливали peer-to-peer соединение, происходил обмен ETH и пользователь мог начать поездку включив скутер через телефон. По завершении поездки так же можно было провести оплату поездки за счет Ethereum из кошелька пользователя на телефоне.


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


Так в целом и выглядел наш пилот, запущенный в сентябре прошлого года в двух городах Германии: Бонн и Берлин.



И вот, однажды, в Бонне, ранним утром наша команда поддержки (находящаяся в локации для поддержания скутеров в работоспособном состоянии) была поднята по тревоге: один из скутеров бесследно исчез.


Как его найти и вернуть?


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

Читать дальше →
Всего голосов 30: ↑27 и ↓3+24
Комментарии74

ИК датчик движения на STM32

Время на прочтение18 мин
Количество просмотров16K

Приветствую, в этой статье вы узнаете: как сделать датчик движения с использованием ИК диода и ИК приемника на STM32 с минимальным использованием ядра (т.е. с максимальной загрузкой периферии) на регистрах, используя таймеры.

Прочитать полностью
Всего голосов 23: ↑22 и ↓1+21
Комментарии58

Подключаем новый Xiaomi Gateway 3 к Home Assistant без паяльника и смс

Время на прочтение5 мин
Количество просмотров111K

Новый хаб от Xiaomi с поддержкой технологий Zigbee 3, Bluetooth Mesh, HomeKit и его подключение к достаточно популярной системе умного дома — Home Assistant, интересует?


Читать дальше →
Всего голосов 39: ↑39 и ↓0+39
Комментарии47

Истории

«Умная» детская коляска «Максимка»

Время на прочтение12 мин
Количество просмотров17K
Во время прогулки с ребенком в коляске мозг немного освобождается от ежедневных забот и начинает мыслить творчески. Так, в одной из прогулок, и родилась идея умной детской коляски, которая может предоставить родителям некоторую информацию, в какой-то мере обеспечить безопасность передвижения по улицам, сделать коляску выделяемой из множества других.
Как у меня обычно бывает, когда приходит какая-то идея, то она обдумывается, а потом (Остапа начинает нести) она обрастает дополнительными функциями о которых изначально не задумывался. Эти мысли зажигают страсть творчества и начинается процесс.

image

Итак, все началось с того, что во время прогулки необходимо было видеть текущее время, чтобы знать время прогулки…
Всего голосов 73: ↑72 и ↓1+71
Комментарии64

Как создавался бекенд хакерской игры про уничтожение сервера

Время на прочтение6 мин
Количество просмотров7.7K

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

Всего у бекенда игры было 6 архитектурных единиц, которые мы и разберём в этой статье:

  1. Бекенд игровых сущностей, которые отвечали за игровые механизмы
  2. Шина обмена данных бекенда и площадки на VPS
  3. Транслятор из запросов бекенда (игровых элементов) на ардуино и железо на площадке
  4. Ардуино, которая занималась управлением релешками, получала команды с транслятора и делала фактическую работу
  5. Фактические устройства: вентилятор, гирлянды, торшеры и прочее
  6. Фронтенд — сам сайт Сокола, с которого игроки управляли устройствами

Давайте пройдёмся по каждой из них.
Читать дальше →
Всего голосов 39: ↑38 и ↓1+37
Комментарии11

Вы просили подсказку? Мы ее вам дадим

Время на прочтение1 мин
Количество просмотров17K
UPD ЛАЗЕР ВЗЛОМАН!

Гиря, летящая в аквариум на сервер, его уничтожение, короткое замыкание и пожар через полтора часа, отсчет пошел. Enjoy the show!



Присоединиться к зрителям можно в дискорде.

Вы далеко зашли и отгадали почти все загадки, но остановились на самом простом и одновременно самом сложном.
Всего голосов 54: ↑46 и ↓8+38
Комментарии27

Мониторинг производственного оборудования: как с этим дела в России

Время на прочтение9 мин
Количество просмотров9.8K
image

Привет, Хабр! Наша команда занимается мониторингом станков и разных установок по всей стране. По сути, мы обеспечиваем возможность производителю не гонять лишний раз инженера, когда «ой, оно всё сломалось», а на деле надо нажать одну кнопку. Или когда сломалось не на оборудовании, а рядом.

Базовая проблема следующая. Вот вы производите установку для крекинга нефти, либо станок для машиностроения, либо какое-то другое устройство для завода. Как правило, продажа сама по себе крайне редко возможна: обычно это контракт на поставку и обслуживание. То есть вы гарантируете, что железяка будет работать лет 10 без перебоев, а за перебои отвечаете либо финансово, либо обеспечиваете жёсткие SLA, либо что-то подобное.

По факту это означает, что вам нужно регулярно отправлять инженера на объект. Как показывает наша практика, от 30 до 80 % выездов — лишние. Первый случай — можно было бы разобраться, что случилось, удалённо. Либо попросить оператора нажать пару кнопок — и всё заработает. Второй случай — «серые» схемы. Это когда инженер выезжает, ставит в регламент замену или сложные работы, а сам делит компенсацию пополам с кем-то с завода. Или просто наслаждается отдыхом с любовницей (реальный случай) и поэтому любит выезжать почаще. Завод не против.

Установка мониторинга требует модификации железа устройством передачи данных, самой передачи, какого-то озера данных для их накопления, разбора протоколов и среды обработки с возможностью всё посмотреть и сопоставить. Ну и с этим всем есть нюансы.
Читать дальше →
Всего голосов 28: ↑28 и ↓0+28
Комментарии29

Azure RTOS. Часть 1: обзор и запуск (STM32 + CubeIDE + HAL)

Время на прочтение19 мин
Количество просмотров25K

На недавно прошедшем Microsoft Build 2020 многократно упоминалась Azure RTOS как специализированная ОС жесткого реального времени для микроконтроллеров.


В данном материале мы последовательно разберемся в том, что это за операционная система, какое место она занимает в продукции Microsoft для встраиваемых систем, а также установим планировщик ОС на один из микроконтроллеров STM32.

Читать дальше →
Всего голосов 17: ↑17 и ↓0+17
Комментарии52

Простой UDP hole punching на примере IPIP-туннеля

Время на прочтение4 мин
Количество просмотров9.6K
Доброе время суток!

В этой статье хочу рассказать как я реализовал (еще один) скрипт на Bash для соединения двух компьютеров, находящимися за NAT, с использованием технологии UDP hole punching на примере ОС Ubuntu/Debian.
Читать дальше →
Всего голосов 12: ↑12 и ↓0+12
Комментарии11

Собираем недорогой 9.7" E-Ink дисплей для отображения чего угодно

Время на прочтение2 мин
Количество просмотров71K
Всем привет. Давно хотел собрать большой E-Ink дисплей, который можно поставить на стол и отображать на нем полезную информацию (погоду, календарь и т.д.) В этой статье расскажу, как можно собрать такое устройство на базе ESP32 и дисплея от Kindle DX значительно дешевле, чем Waveshare.


Читать дальше →
Всего голосов 135: ↑132 и ↓3+129
Комментарии202

MQTTv5.0: Обзор новых функций. Часть 1

Время на прочтение8 мин
Количество просмотров12K
Привет всем любителям IoT и железок!

В этой статье я расскажу про, пожалуй, самый популярный протокол передачи данных, используемый в сфере Интернета вещей, — MQTT. А если конкретнее, то про MQTT Version 5.0 (версия, опубликованная 7 марта 2019 года). А если еще конкретнее, — про приятные нововведения версии 5.0 по сравнению с версией 3.1.1.

Кстати, а почему v5.0? Куда делась версия v4.0?

Коренная причина лежит в заголовке пакета CONNECT. Версия протокола или, если быть более точным, уровень версии протокола устанавливается в байте 7.



Читать дальше →
Всего голосов 26: ↑26 и ↓0+26
Комментарии4

Что находится между идеей и кодом? Обзор 14 диаграмм UML

Время на прочтение8 мин
Количество просмотров167K


Аве Кодер!

Тебе пришла крутая идея продукта, но ты не хочешь увязнуть в коде и потерять целостную картинку из-за мелких деталей? Ты вот-вот присядешь за то, что крякнул корпоративный сервер и тебе нужно набить что-то крутое и айтишное?

Этот цикл статей будет посвящен полезному, но порой ускользающему от молодой поросли знанию — диаграммам UML. И начну я его с обзора существующих диаграмм, поговорим немного об истории и зачем диаграмм должно быть так много.
Всего голосов 12: ↑12 и ↓0+12
Комментарии18

Ближайшие события

Управление Яндекс.Станцией и другими колонками с Алисой из Home Assistant

Время на прочтение4 мин
Количество просмотров112K

Мы привыкли называть умными устройства, которыми можем управлять, не вставая с дивана. Включить лампочку, вентилятор, кофеварку или стиральную машину.


Колонки с Яндекс Алисой хоть и называются умными, но вы не можете изменить громкость не находясь рядом с колонкой (орать через всю комнату не считается). Вы не можете перемотать песню из мобильного приложения Яндекса. Или остановить сказку, запущенную на колонке в детской, из своей кровати в спальне.


В январе 2020 кто-то обнаружил, что Яндекс.Станция поддерживает некий локальный протокол. На GitHub начали появляться проекты по управлению Яндекс.Станцией. Мне хватило пару часов, чтоб разобраться и выпустить первую версию компонента для Home Assistant. Это достаточно популярная система домашней автоматизации, написанная на языке Python.


На сегодняшний день компонент поддерживает управление всеми колонками с Яндекс Алисой и при желании может выглядеть так:


Читать дальше →
Всего голосов 24: ↑23 и ↓1+22
Комментарии42

Опыт построения умного дома на Raspberry Pi и открытой платформе OpenHAB. Часть 1

Время на прочтение6 мин
Количество просмотров35K

Два года назад у нас появился загородный дом. Только сейчас, во время пандемии, мы поняли, что это была инвестиция, а не трата бабла повышение уровня жизни. Изначально планировали жить на два дома — квартира в городе и дом за городом. Поэтому появилось желание автоматизировать его по максимуму. Ну, как минимум, чтобы зимой можно было прогреть дом перед приездом.


Эта статья не является полной инструкцией что и как делать, а больше сборником куда копать и что почитать или посмотреть, чтобы сделать самому.


Тем не менее вы найдете для себя много полезной информации и ссылок, а главное при минимальных навыках поиска информации в интернете вы сможете сами найти все необходимые пошаговые инструкции. В наш век DIY (Do It Yourself, самоделки), вы все можете получить в виде 5-20 минутных делай-как-я видео инструкций. Нынче никто уже не пишет по-старинке.

Всего голосов 13: ↑12 и ↓1+11
Комментарии83

Как дочка Роснано, продавшая с Ростехом тысячи камер в школы, делает «российские» камеры c дырявой китайской прошивкой

Время на прочтение4 мин
Количество просмотров119K
Всем привет!

Я занимаюсь разработкой прошивок камер видеонаблюдения для b2b и b2c сервисов, а также участвующих в проектах видеонаблюдения федерального масштаба.

О том, как мы начинали, я писал в статье.

С тех пор многое изменилось — мы стали поддерживать еще больше чипсетов, например, таких как mstar и fullhan, познакомились и подружились с большим количеством как иностранных, так и отечественных производителей IP камер.

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


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

Об одних таких ребятах я сегодня и расскажу. Если честно, я не сторонник публичной порки нерадивых «импортозаместителей» — обычно принимаю решение, что отношения с такими компаниями нам не интересны, и на этом с ними расстаемся.

Но, однако, сегодня, читая новости в фейсбуке и попивая утренний кофе — чуть не разлил его, прочитав новость о том, что дочка Роснано, компания ЭЛВИС-НеоТек, совместно с Ростехом поставит десятки тысяч камер в школы.

Под катом — детали того, как мы их тестили.
Читать дальше →
Всего голосов 328: ↑327 и ↓1+326
Комментарии407

Полный цикл создания устройства и работа с фабриками в Китае

Время на прочтение11 мин
Количество просмотров20K
Меня зовут Андрей Холодный. Весь мой опыт связан с телекомом: я работал практически во всех крупных провайдерах связи и даже руководил своим стартапом. На моих проектах регулярно возникали задачи разработки и выбора поставщиков роутеров и ТВ-приставок. С конца 2018 года я применяю этот опыт в Яндексе: руковожу командой, которая координирует разработку и производство устройств с Алисой.



Под катом — конспект моего недавнего доклада. В нем два больших блока: про этапы разработки устройства и про общение с фабриками в Китае. Надеюсь, конспект будет полезен тем, кто начинает думать о производстве собственных устройств.
Читать дальше →
Всего голосов 48: ↑45 и ↓3+42
Комментарии17

Когда написать свою IoT-платформу выгоднее, чем покупать готовую

Время на прочтение5 мин
Количество просмотров7.7K
Привет!

В конце апреля я рассказал вам про наши датчики и упомянул специальную IoT-платформу, на которой они работают. Пришло время рассказать об этом подробнее.

Платформа нужна для того, чтобы обеспечить управление устройствами IoT-сети всех уровней и съем данных с датчиков, хранение этой информации и её дальнейшую обработку. Да, на рынке сейчас достаточно подобных платформ, но они не готовы решать задачу «из коробки». Это или какие-то отдельные куски бэкенда, которые полезные и нам бы пригодились в работе, или такие же полезные куски фронтенда, но такого, чтобы все сразу и прямо из коробки — нету. Даже самая близкая к нашим потребностям платформа требовала довольно серьезного допиливания и найма в штат новых разработчиков исключительно под эти задачи.



Мы сели, посчитали total cost of ownership и другие плюсы и минусы использования ведущих платных платформ, сравнили это с возможностью пойти и написать свою платформу. И получилось, что сделать свою для нас — примерно в два раза дешевле, при этом платформа будет полностью соответствовать стеку технологий, принятых в SIBUR Digital.
Читать дальше →
Всего голосов 14: ↑14 и ↓0+14
Комментарии23

IoT в моей жизни. Как создать умный офис, а также отслеживать рост картофеля у себя в квартире благодаря IoT

Время на прочтение9 мин
Количество просмотров5.1K
Приветствую вас, Хабровчане!

В 2020-м году все мы знаем что такое Интернет Вещей и для чего он нужен. Но как много из нас знакомы с облачными платформами, которые представляют один из наиболее значимых пластов в IoT? Давайте разбираться.

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

В платформе, которую я обычно использую для своих задач, уже реализовано взаимодействие с устройствами, работающими по таким протоколам как MQTT, Wialon Combine, Wialon IPS, Galileosky, Modbus и некоторым другим.

Помимо использования представленных протоколов, для устройств, которые не имеют выхода в Интернет, есть возможность написания программных агентов – некоторых посредников между оборудованием и платформой, которые устанавливаются на другом устройстве (например, Raspberry Pi) и соединяются с этим оборудованием.

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

  1. сконфигурировать модель с желаемыми параметрами и командами;
  2. создать объект с уникальным идентификатором в платформе;
  3. сконфигурировать устройство для подключения к платформе.

Разберем несколько кейсов и посмотрим, как же всё это подключается.
Читать дальше →
Всего голосов 13: ↑13 и ↓0+13
Комментарии9

Хождение по граблям в чистом поле или как собрать MAC-адреса близлежащих Wi-Fi-устройств

Время на прочтение11 мин
Количество просмотров29K
Все свои публичные выступления (благо, их не так много) я начинаю с явного или неявного упоминания тезиса “Наша индустрия — сложная, проблемы могут вскрыться на любом, даже самом очевидном шаге, а оптимистично предполагать, что все будет просто и легко — наивно”. Как ни странно, эта простая мысль, полученная многолетним набиванием шишек, порой является откровением и для более опытных специалистов, хотя, казалось бы, весь оголтелый задор и вера в непогрешимость собственных идей и практик должна была выветриться уже давно. Расскажу байку на этот счет, пример простого, с первого взгляда, проекта.


Читать дальше →
Всего голосов 32: ↑30 и ↓2+28
Комментарии44