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

Комментарии 56

А можете поподробнее рассказать про дальность работы датчиков? Интересует как они работают именно в реальном доме, есть ли на пути радиосигнала бетонные стены?
Я полное тестирование проводил.
Те, что без антены работают через одну стену уверенно, через две могут терять сигнал, может потребоваться позиционирование (повертеть модулем для лучшего приема) — зависит от того, что внутри стен и между ними.
Реальная скорость передачи (с моим драйвером) составила где-то 540 КБит при включенном подтверждении доставки. В прямой видимости (относительно прямой, городские условия) дальность уверенная до 50м, выше — надо позиционировать модуль.
Через межэтажное перекрытие может пробить, если повезет, опять-таки, позиционировать требуется точно (то бишь, стоять прямо под ответным модулем).

Тот что с антенной — через тонкие стены пробивает уверенно, не знаю сколько их нужно, чтобы заглушить сигнал, через несущие 2-3 тоже без особых проблем. Скорость такая же. Дальность метров 300 выжимал (городские условия), на 300 уже приходилось серьезно целиться антенной в ответный модуль. До 150 — уверенно ловится. Через два этажа пробивает (перекрытия), на третьем уже долго целиться надо.

P.S. Все тесты проводились с тем приемником, что с антенной! Передатчик, соответственно, менял.
> приходилось серьезно целиться антенной в ответный модуль

Можно подробнее об этом? Чем, куда, и каким образом целились?
У меня сейчас между датчиками не более 10 метров (по прямой). Преграды в виде кирпичных стен, деревянных перекрытий (в различных комбинациях и количествах) и т.п. — все работает. Дальность не проверял (будет потеплее — сделаю пару тестов «с улицы»).
Предельная толщина препятствия, через которую может пройти радиосигнал 2.4 ГГц
Кирпичная стена: 0.78 м
Бетон: 0.09 м

habrahabr.ru/post/164215/
Никто не запрещает сделать на базе этих модулей mesh-сеть (в голове полная картинка еще не сложилась, но пакет, думаю, не сильно изменится — нужно будет еще пару параметров добавить). Нужно будет теорию графов освежить для построения «путей».
SNAP не пробовали?
нет, что это? где почитать? (гугл только про музыку ссылки подкидывает)
SNAP — это универсальная сетевая операционная система для реализации Mesh-сетей, позволяющая абстрагироваться от аппаратных особенностей приемопередатчика. Используя любой или все из доступных на устройстве интерфейсов связи, стек SNAP выполняет пересылку и сетевую маршрутизацию сообщений, превращая данное устройство в полнофункциональный узел интеллектуальной самоорганизующейся и самовосстанавливающиеся Mesh-сети. Для связи с остальными узлами сети при этом может использоваться любой современный проводной или беспроводной интерфейс: IEEE802.15.4, Wi-Fi, TCP/IP, Ethernet, USB, RS232, RS485 и др.

www.synapse-wireless.com/snap
Спс за ссылку. Выгледит очень вкусно.
С протоколами маршрутизации придеться помучаться, или взять уже готовую реализацию — ленивый вариант.

А в общем MESH сети весьма интересны. Я периодически прорабатываю архитектуру войсковой АСУ тактического звена на основе MESH сетей. Очень перспективное направление.
Классно… Задумался о том что-бы реализовать что-то похожее у себя дома.
Еще что-то придумать с размерами сенсорной панели… Или сделать аппаратные кнопки и просто дисплей состояния…
Сделайте аппаратные кнопки по бокам, как в банкоматах — на экране просто значение кнопки в данном режиме…
Ну уж центральный-то модуль с дисплеем чего на меге мучать?)
И рисовать отвратно, и ОС нормальной нет (а значит — сильно урезаны возможности — хотя бы по выводу своего девайса в веб) и дорого, и вайфая нет. Центральный однозначно рекомендую делать на какой-нибудь небольшой плате с линухом на борту.
Этот модуль не претендует на роль «центрального» — это именно «панель управления»: отображаем нужные параметры и можем что-то там включать. И вообще, пока для моей системы само понятие «центрального модуля» — не определено. Все работают индивидуально, но могут управляться.
Панель управления — тем более. Для GUI надо выбирать наиболее удобные инструменты, чтобы потом не проклинать себя и эти АВРки.
Я пока доволен результатом (результат на сегодня — работающая система беспроводных модулей, а не «панель управления»).

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

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

Графики погодных параметров, приведенные в статье за какой период времени?
Там только часть года видна. Может год убрать правее — важнее время и дата в этом случае.
Графики погодных параметров — за 3 дня. Когда это не картинка (а реальная страница с графиком) — можно навести на график курсор мыши — появится всплывающая подсказка, где для каждой точки графика можно увидеть значение и дату/время.
RaspberryPi к примеру.
Или может софт под андроид написать для управления по сети, или веб-сайт замутить для управления на NAS'е.
Юзать можно как с мобилки, так и небольшой планшет взять и прилепить к стене — модная панелька!
А что с питанием у вас, кстати? Вы там упомянули «время автономной работы» — как организовано питание модулей? И здоровых, и мелких, с датчиками.
Пока у каждого «здорового» модуля стоит блок питания (ужас, однозначно буду с этим что-то делать). С мелкими пока работаю — есть варианты на батарейках. Сейчас готовлю один прототип на солнечных батареях… в процессе пока.
А того что кто нибудь с улицы решит по управлять вашим домом не опасаетесь?
Даже зная формат пакета (а кто сказал, что тут опубликована «боевая» версия пакета?) нужно перебрать массу параметров (частотный канал, pipes), чтобы только начать «слушать».

Потом я не просто так в пакет вставил идентификатор модуля, от которого идет команда. На модулях есть проверка, можно ли от этого «инициатора» исполнять команды.

«Взломать», конечно, можно… но хлопотно это.
Было бы желание взломать…
да это понятно…
Интересно про работу внешних датчиков, а именно как там avr/arduino при минусовой температуре? По даташитам atmega328 и NRF24 до -40, но в реальности все обычно иначе, в тч из-за прочих компонентов.
Ну и с батареями проблема, хотя тут товарищ недавно выкладывал простой вариант с ионистором и солнечной батареей.
У меня на улице стоят только покупные Oregon. Остальные модули пока домашние, так что по этому поводу пока ничего не скажу.
Не понимаю, почему выбор на iboardpro?
Почему не купить ту же малину, ну не намного дороже же!
Можно и cubieboard, но когда будет поставки хз.
Туда уже можно много чего подключить, и обрабатывать там же. Поднять и веб и бд для обработки.

Как я сожалею, что у меня нету времени этим заниматься.
Что было доступно — то и взял. Малинка — да, можно, но пока я еще не готов линукс осваивать.

Дальше будет скорее всего «панель управления» на андроиде… модули-то работают, GSM-шлюз по управлению и мониторингу — есть, LAN по мониторигну — тоже есть, LAN по управлению появится «вот-вот».

А «центральный модуль» в моей системе — пока без надобности (уже писал об этом выше). Возможно, он появится для реализации «сценариев» (но опять же не факт, что это будет что-то «мощное»).
А может взять готвый какойнить планшетек за 50уев из китая, посадить его на внешнее питаниие а на его usb хост управление Вашим зверинцем устройств. Ну и вдорогнку можно тогда будет и по SIP'у управлять, звоня на домашний IVR )
про планшетник за 50уев я уже думал — скорее всего это станет основной версией «панелей» управления (но это когда уже софт будет соответствующий написан). Можно будет повесить по такому в нужных местах дома.

usb host его использовать не вижу смысла… зачем? все ж беспроводное. Планшетник подключится к домашней сети через wifi и будет работать со «зверинцем» через LAN-шлюз.
Ясно.

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

Не подскажате, какие девайсы взять для следующего.

Во глове кухни хочу поставить cubieboard — у него есть I2C и SPI.
Далее я хочу поставить приемник/передатчик на 433 что бы собирать сразу данные температуры, давления, влажность (для начало)
что то типа nRF24L01+ но для 433.

Да, у меня спрашивали.

Ответ тут есть.
Ну гуглить понятно, может быть просто уже есть проверенные и рабочие девайсы.
Поскольку у меня нет того девайса, который вы хотите использовать, то «проверенный вариант» я точно подсказать не смогу. Сорри.
Cubie на Allwinner A10? Туда очень легко впихнуть дебиан и забыть навсегда о проблемах с кросс-компилом и прочих радостях, рекомендую.
Там и так уже стоит давно две системы Gentoo и ubuntu 13.04, вопрос бы не в этом :)
А датчики как разместили вне дома? Вопросы защиты от погодных условий как решили?
Ничего особенного не делал — повесил, где было удобно (в обоих случаях это под большим козырьком крыши) на двух разных сторонах дома. Посмотрел только чтобы прямых солнечных лучей не было и в сильный дождь с ОЧЕНЬ сильным ветром чтобы не заливало.
А есть где-то толковая статья про эти самые беспроводные модули, желательно с примерами? А то не очень ясно как они работают.
Возьмите две ардуины (любые), два таких модуля, загрузите библиотеки, ссылки на которые есть в статье и залейте тестовые примеры из комплекта библиотек — все станет понятно. Если честно, я не знаю, что про них еще можно написать?
Про использование понятно, меня интересует их внутренний протокол. Как я понял, они multimaster, то есть каждый передаёт сразу всем. С коллизиями какая-то борьба аппаратная есть? Какое-то встроенное шифрование есть или надо на уровне пакетов делать?

Вот это замечатально, спасибо!
а почему бы не взять в качестве сервера готовую систему, типа LinuxMCE, а свой код добавить плагинами в нее? тогда решится много вопросов по интеграции новых устройств
Прекрасная статья, большое спасибо! Я как раз давно думаю над тем, что бы «опутать» дом проводной сетью датчиков и «исполнителей» таким образом, что бы система по возможности была бы модульной, а отдельные датчики и «исполнители» по возможности мало зависели друг от друга.
Имхо, это самый правильный вариант — пусть работают сами по себе и при необходимости — коммуницируют. Но если вдруг с коммуникациями что-то не так — все равно продолжали работать.
Очень интересно читать на Хабре про «умный дом», но, к сожалению, мне в основном попадаются статьи, описывающие опыт создания с нуля, в то время как хотелось получить обзоры и по готовым решениям, их практическому применению, особенностям и подводным камням, аналогично обзорам новых гаджетов
Купите готовое решение, внедрите и расскажите — мне тоже интересно.
Но цены на покупные решения, как бы помягче выразиться, «кусаются».
Постараюсь обязательно. Пока заинтересовал такой вариант habrahabr.ru/post/160493/ Но хочется узнать и про аналоги.
Я с модулями nRF24L01+ тоже поработал немного на STM32 и Arduino. Помог мне в этом аппноут nAN24-12:
www.nordicsemi.com/eng/nordic/download_resource/10640/11/94955352

Его я, с разрешения Nordiс Semiconductor, серьёзно перепилил, избавив от мусора и упростив портирование. Результат можно взять у меня на гуглодиске:
nrf24l01p.zip: goo.gl/IPZPM

Для портирования нужно написать всего две функции (их прототипы есть в nrf24l01p.h) — дрыганье линией SS и полнодуплексный I/O по SPI:

void nrf24l01p_spi_ss(nrf24l01p_spi_ss_level_t level);
uint8_t nrf24l01p_spi_rw(uint8_t value);

Библиотека чисто сишная (C99), проверял на STM32VLDiscovery (STM32F100RBT6), STM32F4Discovery (STM32F407VGT6) и Arduino (ATmega168 и ATmega328). Все функции, структуры и т.д. подробно документированы авторами оригинального аппноута.

// Тестовый код

Arduino:
nrf_rx.zip: goo.gl/Lsxzp
nrf_tx.zip: goo.gl/P4shM

STM32:
stm32f4d_nrf_tx.zip: goo.gl/si8Rv
stm32vld_nrf_rx.zip: goo.gl/ScgF8
stm32vld_nrf_tx.zip: goo.gl/dmLle

// IMHO

Всю прелесть работы с nRF24L01+ я ощутил в полной мере, только когда пришлось разрабатывать сеть беспроводных датчиков на CC430 (MSP430 + радио CC1101, Texas Instruments). Если провести параллели с дистрибутивами Linux, то nRF'ки — это Ubuntu, а CC430 — Arch. У каждого радиочипа свои преимущества, но с nRF работать не в пример легче.
Тоже делаю систему на этих радио модулях и столкнулся со странностью — два простых модуля (с антенной на плате) работают лучше (если тестировать на пробитие стен) чем один с внешней антенной + один «простой». Два с внешними антеннами работаю отлично. Не могу понять в чем проблема, по теории так быть не должно, но на практике это так.
Подумываю по похожему сценарию, но пока немного хочется отойти от беспроводных блоков — ведь приходится организовывать блок питания на каждой точке :(

Сейчас проще кинуть 4-жильный телефонный провод, и по нему уже общаться и питаться. Конечно, при смене обстановки, лапша по 10 метров уходит в негодность, но всё же это проще.

Например загородный дом. У меня одна точка бесперебойного питания вместе с основными мозгами. Далее лапша уходит на датчики. На одну линию можно вешать, например, несколько температурных 1-wire, или объемников (однозонные получаются).
Я после долгих раздумий решил сделать тоже провода. В планах шина rs485/modbus, питание 12/24. раскидывать витуху по квартире придется в любом случае.
Зарегистрируйтесь на Хабре, чтобы оставить комментарий

Публикации

Истории