|
Магазин Arduino | WIKI | Регистрация | Справка | Пользователи | Календарь | Поиск | Сообщения за день | Все разделы прочитаны |
|
Опции темы | Поиск в этой теме | Опции просмотра |
22.08.2016, 14:00 | #21 | ||
Senior Member
Регистрация: 02.04.2012
Адрес: Питер
Сообщений: 1,125
Вес репутации: 1311 |
Re: Сделали систему "Умный дом" нужно ваше мнение.
Цитата:
Как у Вас реализована обработка ошибок: 1. Потеря связи между клиентом и сервером. 2. Потеря связи между сервером и контроллером. 3. Отвалился датчик от контроллера. 4. Повис сервер. ... Цитата:
__________________
istarik.ru |
||
23.08.2016, 14:53 | #22 |
Junior Member
Регистрация: 18.08.2016
Адрес: Тюмень
Сообщений: 15
Вес репутации: 0 |
Re: Сделали систему "Умный дом" нужно ваше мнение.
1. Это не ошибка, клиент пытается переподключиться, при успешном реконнекте получает все актуальные данные.
2. В соответствующих полях датчиков и исполнительных устройств появляются ошибки, их количество, время и т.д. Возникают события реакцию на которые можно настроить в системе как обычный сценарий. Контроллер при неудачной отправке событий на сервер может выполнить сценарий сетевой с другим контроллером в обход сервера и/или выполнить сценарий внутри себя(эти сценарии естественно примитивные включить выключить переключить какие-то порты) 3. Смотря какой датчик, например если это дс18х20 то мы об этом узнаем и что-то можем сделать. Если это к примеру аналоговый датчик протечки то для определения обрыва нужно ставить сопротивление между плюсом и входом датчика у аналогового блока, тогда мы при обрыве получим определенный сигнал и сможем его обработать на сервере. 4. Ну тут хз, смотря о чем речь. Железный сервер? Тогда можно настроить критические сценарии на контроллере т.е. если сервер не ответил то после секундного ожидания свет всеравно включится по сценарию в контроллере и т.д. Тут нужно все продумывать. Если про программный сервер то таких случаев пока не было(ну т.е. на первых этапах бывало пару раз) Тут я стараюсь писать безопасный код с полным логированием всех нештатных ситуаций, логи пишутся в базу а если она недоступна или если сервак запущен из консоли то вывод идет еще и в консоль для удобной отладки. Да, связь по хттп. Ну т.е. еслии серверу нужно включить свет то он отправляет запрос к контроллеру по типу http://192.168.88.102/?cf=cmd&pt=5&pn=7 и контроллер включает 7 пин на 5 порту. Соответственно если сработал вход на контроллере или был опрошен датчик то контроллер отправляет запрос серверу в котором указывает кто он и что сработало. В контроллере стоит сетевой стек enc28j60. |
23.08.2016, 22:38 | #23 |
Senior Member
Регистрация: 02.04.2012
Адрес: Питер
Сообщений: 1,125
Вес репутации: 1311 |
Re: Сделали систему "Умный дом" нужно ваше мнение.
Спасибо.
То есть схема такая? А как реализовали обратную связь? Например я нажал кнопку (в веб-интерфейсе) "включить свет", что происходит, сигнал уходит на сервер и...?
__________________
istarik.ru |
26.08.2016, 12:38 | #24 |
Junior Member
Регистрация: 18.08.2016
Адрес: Тюмень
Сообщений: 15
Вес репутации: 0 |
Re: Сделали систему "Умный дом" нужно ваше мнение.
Да, схема такая, плюс к ардуине цепляются исполнительные модули.
Пользователь жмет кнопку в интерфейсе, команда уходит на сервер по вебсокету, сервер обрабатывает и решает что делать. Если пришла команда включить свет то сервак посылает команду на включение реле для контроллера все это записывает в базу и рассылает всем подключенным пользователям. Если команда не прошла то пишет ошибки и всех оповещает. Т.е. у нас нет никаких аджаксов и задержек. Как только один пользователь подвинул ползунок например цвета ргб ленты, все остальные клиенты об этом сразу узнают и если у них открыт этот же виджет управления лентой то ползунох синхронно ползет. Я особо не смотрел мажордомо, но мне кажется там такого нет, поправьте если не так. |
26.08.2016, 16:18 | #25 | ||
Senior Member
Регистрация: 02.04.2012
Адрес: Питер
Сообщений: 1,125
Вес репутации: 1311 |
Re: Сделали систему "Умный дом" нужно ваше мнение.
Цитата:
... Сокеты вёщь шикарная, но к сожалению есть достаточно много людей у которых установлены старые браузеры. Я столкнулся с этими проблемами года два наза, может сейчас уже такого нет. ... Цитата:
__________________
istarik.ru Последний раз редактировалось stD; 26.08.2016 в 20:38. |
||
29.08.2016, 12:47 | #26 | |
Junior Member
Регистрация: 18.08.2016
Адрес: Тюмень
Сообщений: 15
Вес репутации: 0 |
Re: Сделали систему "Умный дом" нужно ваше мнение.
Цитата:
Сокеты работают во всех нормальных браузерах, даже в ие вроде появились. В общем на десктопе есть из чего выбрать а на андроиде и айосе точно есть. |
|
29.08.2016, 22:14 | #27 | |
Senior Member
Регистрация: 02.04.2012
Адрес: Питер
Сообщений: 1,125
Вес репутации: 1311 |
Re: Сделали систему "Умный дом" нужно ваше мнение.
Вот здесь Вы пишите:
Цитата:
1. Пользователь жмет кнопку в интерфейсе. 2. Команда уходит на сервер по вебсокету, сервер обрабатывает и решает что делать. 3. Если пришла команда включить свет, то сервак посылает контроллеру команду на включение реле. 4. Записывает (команду) в базу и рассылает статус всем подключенным пользователям. Так происходит?
__________________
istarik.ru |
|
09.09.2016, 08:16 | #28 |
Junior Member
Регистрация: 18.08.2016
Адрес: Тюмень
Сообщений: 15
Вес репутации: 0 |
Re: Сделали систему "Умный дом" нужно ваше мнение.
Да,все правильно
|
09.09.2016, 10:40 | #29 |
Administrator
Регистрация: 12.04.2010
Адрес: Москва
Сообщений: 9,618
Вес репутации: 9823 |
Re: Сделали систему "Умный дом" нужно ваше мнение.
А если нажать физическую кнопку включения освещения, то как Ваш сервер определит что освещение включено?
|
09.09.2016, 13:05 | #30 | ||
Senior Member
Регистрация: 02.04.2012
Адрес: Питер
Сообщений: 1,125
Вес репутации: 1311 |
Re: Сделали систему "Умный дом" нужно ваше мнение.
Цитата:
Цитата:
Я правильно понял?
__________________
istarik.ru |
||
Здесь присутствуют: 1 (пользователей: 0 , гостей: 1) | |
Опции темы | Поиск в этой теме |
Опции просмотра | |
|
|