Умный дом с центральным контроллером от micasaverde и устройствами на ардуино/AVR/NRF24L01+

virgus1970
Offline
Зарегистрирован: 24.11.2014

Алгоритм повторного использования датчиков:

1. Удаляю все сенсоры и узел из Веры

2. Очищаю память Ардуино скетчем "Clearing EEPROM" (на этой странице)

3. Выключаю питание Веры на пару минут и включаю ее заново

4. Подключаю новые датчики на этой же плате

При этом Вера создает новый узел и использует не занятую нумерацию, начиная с "1"

Датчик движения и температуры.

У меня все пока еще на стадии тестирования. Так что все работает только на столе. Питание постоянное, а не от батарей. При размещении стационарно тоже буду использовать постоянное питание, за исключение разве что датчиков дверей и окон (для них есть интересное решение по созданию датчика с очень малым потреблением энергии).
По поводу Вашего решения об объединении датчика движения и реле. Я объединял датчик движения и реле без кнопки.... Там есть нюанс, который можно решить... надо менять базовый код с целью введения проверки на срабатывание датчика движения, иначе он постоянно начинает слать на контроллер свое состояние... не знаю почему. У меня подозрения на функцию "process()", которая используется в скетче релюшек для создания узла передачи. Где-то в более раних сообщениях у меня есть ссылка на соответствующую тему на форуме MySensor. Для себя решил, что буду делать релюшки отдельно от других сенсоров.

Вот мой МегаКод :) 

/*
  Программа считывания значений освещенности на базе делителя напряжения на фоторезисторе
 Делитель подключен к аналоговому входу 0
 Для делителя использован резистор R1 (4,6kOm) в нижней части делителя. Фоторезистор в верхней части делителя. 
 Значение напряжения снимается между ними, подается на вход АО и показывает напряжение на резисторе R1
 Вставлен блок для датчика движения
 */
#include <MySensor.h>
#include <SPI.h>
#include <DallasTemperature.h>
#include <OneWire.h>


#define CHILD_ID_LIGHT 0
unsigned long SLEEP_TIME = 60000; // Sleep time between reads (in milliseconds)
#define DIGITAL_INPUT_SENSOR 3   // The digital input you attached your motion sensor.  (Only 2 and 3 generates interrupt!)
#define INTERRUPT DIGITAL_INPUT_SENSOR-2 // Usually the interrupt = pin -2 (on uno/nano anyway)
#define CHILD_ID_MOTION 1   // Id of the sensor child
#define ONE_WIRE_BUS 4 // Pin where dallase sensor is connected 
#define CHILD_ID_TEMP 3
OneWire oneWire(ONE_WIRE_BUS);
DallasTemperature sensors(&oneWire);
float lastTemperature;
int numSensors=0;
boolean receivedConfig = false;
boolean metric = true; 

int luxMax = 700;  // Максимальное значение уровня напряжения на R1 соответствует максимальной засветке фоторезистора (скорее всего надо ставить 700 для комнаты с солнечным светом)
int luxMin = 100;  // Минимальное значение уровня напряжения на R1 соответствует минимальной засветке фоторезистора
int lux;          // Текущее значение уровня напряжения 
int luxLast = 0; // Последнее значение уровня напряжения
int luxSensPin = 0; // Пин, к которому подключен фоторезистор

MySensor gw;
MyMessage msgLight(CHILD_ID_LIGHT, V_LIGHT_LEVEL); // Initialize LightSensor message
MyMessage msgMotion(CHILD_ID_MOTION, V_TRIPPED); // Initialize motion message
MyMessage msgTemp(CHILD_ID_TEMP,V_TEMP);  // Initialize temperature message

void setup() {                
  sensors.begin();    // Startup OneWire 
  gw.begin();    // Startup and initialize MySensors library. Set callback for incoming messages. 

  // Send the sketch version information to the gateway and Controller
  gw.sendSketchInfo("LightMotionTemp", "1.0");
  pinMode(DIGITAL_INPUT_SENSOR, INPUT);      // sets the motion sensor digital pin as input

  // Register all sensors to gateway (they will be created as child devices)
  gw.present(CHILD_ID_LIGHT, S_LIGHT_LEVEL);
  gw.present(CHILD_ID_MOTION, S_MOTION);
  gw.present(CHILD_ID_TEMP, S_TEMP);

}


void loop() 
{
  // Read digital motion value
  boolean tripped = digitalRead(DIGITAL_INPUT_SENSOR) == HIGH; 
  Serial.println(tripped);
  gw.send(msgMotion.set(tripped?"1":"0"));  // Send tripped value to gw 
  
  // Fetch temperatures from Dallas sensors
  sensors.requestTemperatures(); 
  // Read temperatures and send them to controller. Fetch and round temperature to one decimal
  float temperature = static_cast<float>(static_cast<int>((gw.getConfig().isMetric?sensors.getTempCByIndex(CHILD_ID_TEMP):sensors.getTempFByIndex(CHILD_ID_TEMP)) * 10.)) / 10.;

  // Only send data if temperature has changed and no error
  if (lastTemperature != temperature && temperature != -127.00) {
    Serial.println(temperature);
    // Send in the new temperature
    gw.send(msgTemp.setSensor(CHILD_ID_TEMP).set(temperature,1));
    lastTemperature=temperature;
  }

  lux=analogRead(luxSensPin); // Получение значения напряжения на R1
  Serial.println(lux);
  /*  if (lux < luxMin) {
   lux = luxMin;
   }
   if (lux > luxMax) {
   lux = luxMax;
   }
   */
  if (lux != luxLast) {
    gw.send(msgLight.set(lux));
    luxLast = lux;
  }  


  gw.sleep(INTERRUPT,CHANGE, SLEEP_TIME);   // Sleep until interrupt comes in on motion sensor. Send update every one minute. 
}

У меня значение температуры и освещенности передается либо при срабатывании датчика движения, либо каждую минуту (значение параметра SLEEP_TIME)

Artemiy
Offline
Зарегистрирован: 20.10.2014

То есть получается команда

gw.sleep(INTERRUPT,CHANGE, SLEEP_TIME);

и по таймингу и по прерыванию срабатывает? Что бы из этих двух условий не поступило (наступило)?

Я то раньше думал, что если он в sleep вошел через gw.sleep() то его ничег кроме INTERRUPT не разбудишь.

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

Я слышал еще тактовую частоту проца понижают до 1Mhz как-то. И потребление еще ниже.

virgus1970
Offline
Зарегистрирован: 24.11.2014

Artemiy пишет:

То есть получается команда

gw.sleep(INTERRUPT,CHANGE, SLEEP_TIME);

и по таймингу и по прерыванию срабатывает? Что бы из этих двух условий не поступило (наступило)?

Получается так...

virgus1970
Offline
Зарегистрирован: 24.11.2014

Подцепил к этой же плате датчик DHT11. Снимаю с него показания влажености. Показания температуры с него решил не снимать - слишком уж точность маленькая. DS18B20 в этом плане гораздо лучше.

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

toc
Offline
Зарегистрирован: 09.02.2013

Artemiy пишет:

Я слышал еще тактовую частоту проца понижают до 1Mhz как-то. И потребление еще ниже.


читайте тут http://www.gammon.com.au/power

Artemiy
Offline
Зарегистрирован: 20.10.2014

Спасибо, я пока настолько не углубляюсь. Лучшее - враг хорошего в данном случае.

Вообще в Ардуиностроительстве, я заметил на своем опыте, что если что-то работает, то лучше не трогать. Я вчера решил заменить Ethernet gateway с nano+enc28j60 на uno+w5100. Полдня промучился, пока не понял, что в режиме SOFT_SPI пины другие. Причем, в инструкции по подключению написаны одни пины, а на форуме нашел другую распиновку. И половина датчиков еще отвалилась, и обратно к шлюзу цепляться отказывалась. Получается, шлюз работает через SOFT_SPI, а датчики без. Что это дает - я не пойму. Хек пишет про какой-то глюк, который "может" возникать. Но в чем он выражается - мне непонятно. Весь англоязычный форум перелопатить у меня голова лопнет. Вот кто-нибудь по этой части теорию бы рассказал?.. В чем там засада...

Еще в плане логов - в Вере ничего не видно почему не цепляется датчик. Особенно, если он через адуиновский шлюз подключается. Там если датчик не прописывается - не поймешь из-за чего. У меня датчик в сериал всё выводит. А подцепиться никак не может. Может из-за того, что уже стоял в системе... Но я всё очищал, ребутал, заново скетч заливал - все равно не видит.

Вчера даже появилась мысль уйти от контроллера Vera, собрать MQTT-шлюз, поднять на дебиане openHub какой-нибудь или еще что-нибудь линуксовое. Никто в этом направлении не двигался, может объедимим усилия в отдельной ветке?

Artemiy
Offline
Зарегистрирован: 20.10.2014

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

ИК передатчик для кондиционера

Особо выдумывать ничего не стал. Взял пример с форума Mysensors, прописал свои коды. В качестве передатчика взял готовый ИК ресивер с обвязкой. Использовал всеми нелюбимую библиотеку "IRLib.h" :)

#include <MySensor.h>
#include <SPI.h>
#include <IRLib.h>

int RECV_PIN =  8;
#define CHILD1  3

MySensor gw;
MyMessage switchMsg(CHILD1, V_VAR1);

// IR LED must be connexted to Arduino PWM pin 3
IRsend irsend;                    
#define switchOnIRcode  0x12481110  // Elecrolux On  IR code
#define switchOffIRcode 0x12484810  // Elecrolux Off IR code

void setup()  
{  
  gw.begin(incomingMessage);

  // Send the sketch version information to the gateway and Controller
  gw.sendSketchInfo("IR Switch", "1.0");

  // Register a sensors to gw. Use binary light for test purposes.
  gw.present(CHILD1, S_LIGHT);
  
  // Sync switch state to gateway state upon reset / power-up
  gw.request(CHILD1, V_LIGHT);
}

void loop() 
{
  gw.process();
}

void incomingMessage(const MyMessage &message) {
  
  // We only expect one type of message from controller. But we better check anyway.
  if (message.type==V_LIGHT) {
     int incomingRelayStatus = message.getInt();
     
     // Emit the IR ON/OFF code
     irsend.send(NEC, (incomingRelayStatus == 1 ? switchOnIRcode : switchOffIRcode), 32);
     
     // Sync gateway of the light switch state
     gw.send(switchMsg.set(incomingRelayStatus));
  }
}

Оригинал проекта: http://forum.mysensors.org/topic/993/ir-switch-for-luminara-candle-automation-repost-with-video-photos-and-final-sketch

Фото моей шайтан-коробки: https://dl.dropboxusercontent.com/u/52880771/ir_kond.jpg

virgus1970
Offline
Зарегистрирован: 24.11.2014

Я следующий проект буду на PRi собирать. Но скорее всего параллельно. Не хочу бросать Vera. У этого контроллера логика сильная, да и плагинов полно. 

Тоже заметил, что иногда на работающих платах возникают глюки, которые сами же и исчезают потом (или после перезагрузки).

А до этого плата цеплялась? Я лично любую плату подключая  хоть в первый раз, хоть повторно, сначала проверяю на работоспособность модуля NRF и только потом пытаюсь подключить к Вере. Много моих провалов с подключением были связаны с тем, что модуль не работает. 

Artemiy
Offline
Зарегистрирован: 20.10.2014

Вы про RPi говорите? А чем там лучше? Та же ардуина, только мощнее. Если только с видео у неё попроще. Больше плюсов особых не вижу.

NRF модуль работает. Видно как он в сериал ок пишет. Думаю, тут Вера его запомнила и больше не добавляет. Сказывается еще UI7, её какая-то недопиленность, такое ощущение, что работаем на версии бета.

virgus1970
Offline
Зарегистрирован: 24.11.2014

Artemiy пишет:

Вы про RPi говорите? А чем там лучше? 

Да я имел в виду Raspberry. С телефона ошибся буквами. Я думаю использовать ее как контроллер. Он дешевый, маленький и поддерживает датчики MySensors. Больше других плюсов не нашел пока :) Vera очень уж дорогая по нынешним временам. А мне надо "размножать" систему. Хотя может быть найду другую техническую платформу помощнее для установки какого-нибудь OpenSource... того же MajorDom например... Или закажу RPi 2... Она вроде помощнее должна быть...

Artemiy пишет:

Сказывается еще UI7, её какая-то недопиленность, такое ощущение, что работаем на версии бета.

Аааа... Так у Вас UI7? Ну тут наверное могут быть нюансы... Я-то на UI5 все делаю... 

Кстати... Предлагаю также делиться работающими схемами автоматизации (что делает, как реализовано). А также просто идеями что и как можно автоматизировать.

Например, я хочу в корридоре сделать такую схему (пока не знаю как это в Вере настроить):

1. Включение освещения при открывании входной двери и отправка фото с IP-Cam на почту.

2. Выключение освещения при отсутствии сигнала с датчка движения более установленного времени.

3. Включение и выключение ночного совещения при сигнале с датчика движения и недостаточной освещенности.

Для этого я готовлю комплекс из двух (или трех пока еще не решил) плат Ардуино с датчиками движения, освещенности, исполнительными механизмами для управления двумя нагрузками (220В - основное освещение и 12В - ночная подстветка) и IP-Cam. Есть желание использовать диммируемые светодиодные лампы на 220В для и того и другого. Уже купил их, но пока не разобрался как правильно создать схему диммирования нагрузки на 220В для Ардуино. Изучаю Интернет....

virgus1970
Offline
Зарегистрирован: 24.11.2014

Не смог запустить пример с диммированием светодиодов. Включается/выключается нормально. Но как только изменяешь диммированием "+/-", то начинается какая-то ерунда... Со шлюза на плату идут постоянные сообщения. Выглядит вот так:

И это не прекращается до тех пор пока в строке не появится "st=fail". Как правило это происходит при срабатывании датчика движения от другой платы.
Кто-нибудь запустил этот пример у себя?

vampircik
Offline
Зарегистрирован: 22.05.2015

axill с вами как можно связатся?

axill
Offline
Зарегистрирован: 05.09.2011

vampircik пишет:

axill с вами как можно связатся?

я больше появляюсь на форуме mysensors и easyelectronics

кстати распродана первая партия специальной ардуины для мусенсорс. Очень удачная платка получилась у ребят. Компактная, универсальная. Дороже конечно обычных ардуин, но это связано со стартапом, на малых объемах нет хороших скидок в производстве http://imall.iteadstudio.com/mysensors-micro.html

virgus1970
Offline
Зарегистрирован: 24.11.2014

To axill

Жаль, что Вы не поддерживаете эту тему :(

Насчет платы… Как заказывали, получали? Если пересылка, то сколько вышла итоговая стоимость?

shagrat2
Offline
Зарегистрирован: 11.08.2015

Не сочтите за рекламу. Тоже занимаюсь разработкой плат для mysensor 

http://majordomo.smartliving.ru/forum/viewtopic.php?f=15&t=2219

Очень интересно мнение пользователей данного форума

Artemiy
Offline
Зарегистрирован: 20.10.2014

Мой рукожопный шлюз: 

aov
Offline
Зарегистрирован: 24.02.2012

 Добрый день Уважаемые,

Расскажите пожалуйста чайнику

А... будеть ли работать комплект Arduino UNO + Ethernet Shield2 на чипе W5500. Пока без радиоканала.

Контроллер VeraEdge (ui7) 

Микропрограмма в ардуине должна будет рулить "полуумным окном" под контролем сцены в Вере.

Задачи:

-Автополив по расписанию, с контролем влажности почвы.

-Автожалюзи с несколькими промежуточными положениями ламелей с контролем освещенности, тепмпературы, положения солнца и времени суток;

-Автоподсветка цветам, вкючаемая после ухода солнца за горизонт на 2 градуса, и с контролем времени.

-

 

Artemiy
Offline
Зарегистрирован: 20.10.2014

Народ, подскажите. Решил реле включения вытяжки сделать. Снимаю с 220V через БП на 9 вольт вот таким. С него регулятором понижаю на 5В. и питаю ардуино, NRF модуль через 5-вольтовый переходник и реле.

Ардуно Pro mini. 5В подключил к VCC. При включении реле из контроллера, реле щелкает и заводится только с третьего раза. То есть лопасти вентилятора на мгновение начинают крутиться, потом останавливаются, потом снова. И так раза три. После чего все заводится и крутится нормально. Но старт какой-то ненормальный. Я грешу на питание. Я с AMS1117 развел на все компоненты 5В и GND. Может идет просадка какая поначалу? Что можно сделать в данном случае? Скетч стандартный. В loop только gw.process(); Радиомодуль всегда стартуе нормально. По логам все ок. А как только посылаешь команду на включение - тут и начинается чехарда.

Заранее спасибо.

axill
Offline
Зарегистрирован: 05.09.2011

Радиомодулю нужно 3.3в

а так чтобы что то советовать схема нужна. Со слов лично я ничего не понял

Artemiy
Offline
Зарегистрирован: 20.10.2014

Радиомодуль подключен нормально, команды уходят, приходят. Он через переходник вот такой вот.

При подключении на макетке через USB - все нормально работает. На рабочем варианте подаю напряжение - начинает щелкать реле. Так конечно не опишу на словах. Попробую видео заснять и вечером отправить.

По питанию идет изначально 220V -> БП 220V AC - 9V DC -> AMS1117 на 5v -> Arduino Pro Mini через VCC. И параллельно раздаю эти же 5В на реле и радиомодуль (радиомодуль через переходник). В такой связке начинает туда-сюда щелкать.

В описании к БП написано, что на выходе 500мА MAX. У AMS1117 на выходе 800мА (тоже по характеристикам). 

axill
Offline
Зарегистрирован: 05.09.2011

Щелкать может или от просадки напряжения (если бп не тянет) или от перезапуска ардуины из за помехи от реле

попробуйте gnd ардуины и gnd релейного модуля соединить с платой ams117 отдельными проводами и соедините их только на самой плате модуля ams117

Не можете схему, хотя бы фото того что и как соеденено

Artemiy
Offline
Зарегистрирован: 20.10.2014

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

Плиз...

axill
Offline
Зарегистрирован: 05.09.2011

что за AC-DC? я сейчас подобный тестирую с ним есть проблеммы

Artemiy
Offline
Зарегистрирован: 20.10.2014

Куплен в чипстере. Нонэйм. http://chipster.ru/catalog/arduino-and-modules/supply-modules/4017.html

А какой хороший посоветуете?

alexey_and
Offline
Зарегистрирован: 03.03.2013

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

можно попробовать сделать модуль реле самостоятельно из проверенных компонентов

axill
Offline
Зарегистрирован: 05.09.2011

Artemiy пишет:

Куплен в чипстере. Нонэйм. http://chipster.ru/catalog/arduino-and-modules/supply-modules/4017.html

А какой хороший посоветуете?

попробуйте с любым другим источником питания от 9 до 12 вольт

если проблемма пропадет, то подскажу как вылечить бп

Artemiy
Offline
Зарегистрирован: 20.10.2014

axill:

Да, работаетс другим БП. Взял на 6 вольт 700мА, подключил через ams117 - все корректно пашет, ничего не щелкает.

Как теперь вылечить бп?

axill
Offline
Зарегистрирован: 05.09.2011

Нужен конденсатор на 400-600 вольт и емкость 2-10нф

его нужно воткнуть между выходом бп gnd и одним из входящих сетевых проводов

Artemiy
Offline
Зарегистрирован: 20.10.2014

А кто-нибудь mqtt шлюз использовал от MySensors?

Меня интересует как заинклудить датчик к mqtt шлюзу и как к нему потом обращаться? Читал про все эти подписки, пробовал подключаться через mosquitto - подключается и пингует его. А данных с датчика температуры нет. Как его во-первых прописать в шлюз? И как потом получить от него данные через mosquitto_sub?

Шлюз на enc28j. Дебаг отключен.

denispa
Offline
Зарегистрирован: 14.07.2016

Отличная Вещь!

Для тех кто новичок, прочитал всю ветку и все еще в танке, прочтите: https://www.mysensors.org/about/ 

Мануал для начинающих, google переводчик сносно переводит. 

bachark
Offline
Зарегистрирован: 18.08.2014

здравствуйте можно узнать поповоду подобной схемы сколько всетаки будет стоить ... сам еще схем не проектировал ... поэтому мне проще купить будет подобную

этоя по поводу вот этого сообщения http://arduino.ru/forum/proekty/umnyi-dom-s-tsentralnym-kontrollerom-ot-...

Ra3eR
Offline
Зарегистрирован: 01.08.2016

Всем привет! Подскажите пожалуйста, есть необходимость в 3 устройствах:

1) Датчик огня\дыма\качества воздуха

2) Универсальный пульт дистанционного управления: ик, 315мгц, 433мгц.

3) Управление моторами\приводами\сервоприводами...

Возможно ли это все замутить на ардуино и подключить к вере плюс(в наличии), первый пункт хоть и интересен, но не столько горит(каламбур)) сколько 2 других) На z-wave есть в принципе условно-готовые устройства, но цена на них безбожна) Мне приводов управляемых приводов нужно минимум штук 15 для сантехнического узла, еще столько же для системы вентиляции, для управления заслонками. 

Может кому-то что-то встречалось из перечисленного на основе компонентов из темы?

П.с. Еще 4) Хочу добавить "мозгов" непосредственно устройствам\приборам, а не разеткам. Простейшее видется в инсталяции внутренностей от розетной вставки z-wave в линию питания прибора\устройства или радио-реле(315мгц\433мгц), но честно говоря не хочется использовать реле, а коммутировать нагрузку с помощью транзисторов, далее нужна обратная связь... Видется 2 варианта, замер мощности или датчик света, логика работы следующая, вера отправила команду включения на плиту(условно, можно любое другое устройство), далее делаем замер мощности, если она возросла, то значит прибор включился(в целом так умеют (мерить потребление) розетные вставки(некоторые) z-wave), индикатор в интерфейсе загорелся зеленым, если выключили (нагрузка упала, устройство перешло в спящий режим) загорается красным. Так мы будем знать 100% включилось устройство или нет, если нет, то повторная команда на включение, ожидание секунд 5-10, если потребление за это время не изменилось, то снова отправка на включение.. Второй вариант основан на датчике света и светодиоде, цепляем ардуинку к устройству, на аналоговый вход вешаем фоторезистор, на управляемое устройство светодиод, направляем им друг в друга, логика работы\включения следующая, через веру отправляем команду на включение, снимаем показания сопротивления с фоторезистора перед включением и после, если они изменились, значит устройство включилось, если нет, то ждем секунд 5 и отправляем по новой, и так раз 5, при условии что если показания не изменились. Можно еще на датчике звука сделать, при условии, что будем управлять реле, датчик звука будет фиксировать щелчки реле, но мне этот вариант не нравится, поэтому и не хочу его рассматривать. Что скажете, можете помочь с реализацией? Может встречались темы с чем-то подобным?

Korenets
Offline
Зарегистрирован: 14.12.2016

Здравствуйте. Подскажите пожалуйста начинающему. Хочу собрать данные с датчиков Arduino и передать на контроллер умного дома Vera edge. Сайт mysensors в принципе все описывает, но с помощью радиопередатчика. В Vera я уже настроил плагин и подконектился к Arduino через ithernet shild w5100. Но теперь не могу понять как написать скетч, чтобы информация с датчиков шла в Vera ,ез радиомодуля, все по проводам. Заранее спасибо

Artemiy
Offline
Зарегистрирован: 20.10.2014

Вы хотите всё на одной ардуине сделать? И шлюз и датчики?

Korenets
Offline
Зарегистрирован: 14.12.2016

Хотелось бы ). Чтобы информация с pin передовалась через w5100 на Vera edge. Хотел пока ремонта нет, без radio все сделать, на проводах. Главное чтобы вера увидела сенсоры. Потом на Homekit через raspberry pi3 переведу. У меня UNO R3 и iithernet shild w5100. Vera увидела Arduino у меня, пишит Connected to: 172.16.2.55:5003. Но не пойму как написать скетч для температурного датчика Dallas, чтобы плагин Mysensors Vera увидел без NF24

Artemiy
Offline
Зарегистрирован: 20.10.2014

Если хотите на проводах, то организуйте все на rs485.

А то, что вы делаете - это некий изврат. И к MySensors имеет очень посредственное отношение. 

Korenets
Offline
Зарегистрирован: 14.12.2016

Почему изврат? Зачем в каждой комнате городить Arduino с сенсорами и реле, еще и с радио? Еще и не понятно где их прятать если потолок натяжной (в случае поломки не поменяешь). Если можно сделать весь дом на 2х Arduino Mega в роли ethernet_gateway расположенных в одном серверном шкафу в центре квартиры в гардеробной. В котором на дин рейке будут solid relay и преобразователи на 5V. И расходятся провода в комнаты на все датчики и освешение. Длина провода 7-12 меторов. Я собрал тестовый проект на столе, вера все увидела, работает нормально. 

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

Если мои размышления не правильны по поводу проводного решения прошу поправить! Заранее спасибо!

Artemiy
Offline
Зарегистрирован: 20.10.2014

В таком случае причем здесь MySensors? Там как раз принцип в передаче данных. Каждый датчик - это ардуина + беспроводной модуль + сам датчик. Шлюз - ардуина и беспроводной модуль. Вся конструкция скетча и все классы написаны под такую схему работы: https://www.mysensors.org/uploads/57bd7e180b692ab55e15504f/image/network.png

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