Прошивка MegaD-2561 (релизы, обсуждения, предложения)

Обсуждение статей, технологий домашней автоматизации, программных и аппаратных решений
Andrey_B
Администратор
Сообщения: 5327
Зарегистрирован: 18 мар 2011, 12:06

Re: Прошивка MegaD-2561 (релизы, обсуждения, предложения)

Сообщение Andrey_B » 21 сен 2017, 16:33

Да, дешевые китайские GSM-модемы класса M590E из категории б/у, которым вдобавок нужно подпаивать конденсаторы, не блещут стабильностью.
Но в любом случае я пока не готов говорить о функциональности работы с GSM-модемом.

Vadim
Сообщения: 122
Зарегистрирован: 04 мар 2017, 17:38

Re: Прошивка MegaD-2561 (релизы, обсуждения, предложения)

Сообщение Vadim » 21 сен 2017, 16:37

Если заговорили про GSM модуль, то добавлю свои 5 копеек.
Неплохо бы было иметь возможность слать СМС по списку абонентов при срабатывании указанных входов.
Полезно при реализации функционала сигнализации, пожарной сигнадизации иметь сигнал о событии (особенно, когда нет нормального интеренета или нет возможности установить сервер). Кому-то может понадобится доп. оповещение для событий СКД (вход, неудачная попытка входа).
Понятно, что все это можно и нужно делать на сервере, но все же.

Andry
Сообщения: 213
Зарегистрирован: 23 мар 2017, 10:41

Re: Прошивка MegaD-2561 (релизы, обсуждения, предложения)

Сообщение Andry » 21 сен 2017, 21:10

Vadim свами солидарен .Автономная робота контролера одна из важнейших его функций а лишний канал связи никогда не был лишним.Да и много частных домов тупо без интернета.Дажепотребности частного дома всегда шире чем квартиры.Открыть закрыть калитку ворота гаража и тд...

Vadim
Сообщения: 122
Зарегистрирован: 04 мар 2017, 17:38

Re: Прошивка MegaD-2561 (релизы, обсуждения, предложения)

Сообщение Vadim » 21 сен 2017, 22:39

Andry,
Добавлю немного пессимистических мыслей на тему.... Все имхо...
Доп.канал это хорошо...
Как раз, если говорим про дом, то там одним контроллером обойтись сложно.
Там легко может быть несколько полных комплектов только для управления светом.
Если добавлять датчики, сигнализацию, скд, полив.... получается внушительный шкаф (который может быть дороже, чем все комплекты MEGAD в нем :-(. Это отдельная тема для печали )
Т.е. там по любому будет установлен свитч. Где свитч, там и роутер может быть. Где роутер, там поддержка GSM модемов по умолчанию (во многих).
С другой стороны, даже если предположить, что можно в контроллер воткнуть GSM модем, то как с ним будут работать другие контроллеры?
Это нужно реализовать полноценный маршрутизатор. Там потянутся вопросы безопасности и появится фаервол и VPN сервер, SSL, если хочется к нему коннектиться по сети (в т.ч даже если реализация нужна только для одного контроллера).
В т.ч. управлять выходами контроллера без соотв. WEB интерфейса\WEB сервера не очень приятно.
Логично говорить об оповещении через SMS, управлении через SMS (с контролем отправителя), либо отправке по сети информации со входов\датчиков на внешний сервер\в облако без возможности принудительного опроса.

Andrey2509
Сообщения: 141
Зарегистрирован: 22 июн 2015, 13:24

Re: Прошивка MegaD-2561 (релизы, обсуждения, предложения)

Сообщение Andrey2509 » 22 сен 2017, 10:11

Зачем SMS? Это же атавизм. Мне уже из транспортных компаний извещения о грузе шлют по viber. И у telegram API есть.

Vadim
Сообщения: 122
Зарегистрирован: 04 мар 2017, 17:38

Re: Прошивка MegaD-2561 (релизы, обсуждения, предложения)

Сообщение Vadim » 22 сен 2017, 11:09

Andrey2509 писал(а):Зачем SMS? Это же атавизм. Мне уже из транспортных компаний извещения о грузе шлют по viber. И у telegram API есть.
Мы говорим о разных условиях и разных задачах.
В текущем разрезе фантазируем о базовом функционале из коробки контроллера, а не о решении в целом.
API под Viber, Telegram и прочее, это уже 100% удел сервера управления, а не контроллера.

В т.ч., да, SMS - атавизм. Но он позволит:
- из коробки иметь возможность удаленно управлять контроллерами без необходимости сервера управления, пользовательских интерфейсов , каналов связи в интернет.
- иметь вполне надежный канал оповещения и, возможно, управления.
Я бы лично для сигнализации не стал полагаться только на подобный канал с дополнительными прослойками (локальная сеть, сервер управления, софт на нем, канал в интернет, сервисы Viber\Telegram, канал в интерент пользователя, его телефон, настройки энергопотребления телефона и взаимодействие телефона с сервисами\модулями связи в бекграунде, клиенты Vider\Telegram на телефоне) для оповещения.
Все эти прослойки требуют грамотной настройки и мониторинга.
Опять же, вот настроили мы для бабушки\дедушки, например, оповещалку для дачи, что зимой встал котел. Есть желание постоянно жить у них, чтоб заново рассказывать, как работает Viber\Telegram, если они им не пользуются постоянно? ;-) А если там нет интернета\стабильного интернета?

Andrey_B
Администратор
Сообщения: 5327
Зарегистрирован: 18 мар 2011, 12:06

Re: Прошивка MegaD-2561 (релизы, обсуждения, предложения)

Сообщение Andrey_B » 22 сен 2017, 12:11

http://ab-log.ru/files/File/megad-2561/ ... a2-hex.zip

- Добавлена поддержка режима IN для расширителя MCP23008
megad-2561-mcp-in.gif
megad-2561-mcp-in.gif (5.76 КБ) 3928 просмотров
В поле INT указываем номер порта, к которому подключена линия INT расширителя. Это может быть ЛЮБОЙ порт.
Указанный порт конфигурируем как IN (режим P).
megad-2561-mcp-in-ext-list.gif
megad-2561-mcp-in-ext-list.gif (4.3 КБ) 3928 просмотров
Далее переходим по ссылке Ext-IO и заходим в настройки расширенного порта
megad-2561-mcp-in-type.gif
megad-2561-mcp-in-type.gif (3.65 КБ) 3928 просмотров
Выбираем тип порта

Теперь при замыкании входа P0 на сервер поступает сообщение вида:

Код: Выделить всё

/script.php?pt=22&ext0=1
При размыкании

Код: Выделить всё

/script.php?pt=22&ext0=0
Поскольку работа с подобными входами строится несколько иначе, чем с родными входами контроллера, то при одновременном замыкании нескольких входов приходит одно сообщение вида

Код: Выделить всё

/script.php?pt=22&ext0=1&ext1=1
Вход контроллера, куда подключен пин прерывания расширителя (INT), должен быть настроен в режим "P". Но на сервер в любом случае будут отправляться сообщения как о замыкании, так и о размыкании входов расширителя.
Причем в единицу времени один порт может замыкаться, другой размыкаться.

Код: Выделить всё

/script.php?pt=22&ext0=1&ext1=0
Вот, почему в запросе меняются не только значения параметров (0, 1), но и их имена (ext0, ext1)
Это, однако, никоим образом не усложняет обработку этих сообщений на сервере.

Примечательно, что все описанное работает и с MCP23017. Но только для половины портов (0-7, INTA)

Andrey_B
Администратор
Сообщения: 5327
Зарегистрирован: 18 мар 2011, 12:06

Re: Прошивка MegaD-2561 (релизы, обсуждения, предложения)

Сообщение Andrey_B » 22 сен 2017, 12:15

Добавлю, что входы на расширителях удобно использовать для подключения различных датчиков, извещателей или даже выключателей света. Но если требуется высокоскоростная работа (в т.ч. режим Raw), на очень очень ответственных задачах, то лучше использовать родные входы контроллера. Они обрабатываются существенно быстрее.

Vadim
Сообщения: 122
Зарегистрирован: 04 мар 2017, 17:38

Re: Прошивка MegaD-2561 (релизы, обсуждения, предложения)

Сообщение Vadim » 22 сен 2017, 12:26

Андрей,
А контроллер без сервера обрабатывает такие расширенные входы (т.е. есть поле action) или это только для обработки сервером?

Andrey_B
Администратор
Сообщения: 5327
Зарегистрирован: 18 мар 2011, 12:06

Re: Прошивка MegaD-2561 (релизы, обсуждения, предложения)

Сообщение Andrey_B » 22 сен 2017, 12:43

Обработка событий от входов расширителя возможна только с помощью сервера.
Неразумно было бы хранить дополнительные настройки портов расширителя в памяти контроллера. Может быть, правильнее было бы разместить в модуле расширителя свою микросхему EEPROM.

Vadim
Сообщения: 122
Зарегистрирован: 04 мар 2017, 17:38

Re: Прошивка MegaD-2561 (релизы, обсуждения, предложения)

Сообщение Vadim » 22 сен 2017, 15:45

Andrey_B писал(а):Обработка событий от входов расширителя возможна только с помощью сервера.
Неразумно было бы хранить дополнительные настройки портов расширителя в памяти контроллера. Может быть, правильнее было бы разместить в модуле расширителя свою микросхему EEPROM.
С точки зрения проблем для пользователей для больших объектов:
- с большим объемом проводки типа звезда для централизованной установки контроллеров (силовой и слаботочки)
- высокой ценой распределительных щитов под автоматику
- сложностью компановки контроллеров в щитке при их текущих размерах.

В первую очередь расширитель портов видится, как бонус, для возможности децентрализации точек коммутации датчиков и кнопок (уменьшение проводки и размеров электрощитов\ящиков), уменьшения количества контроллеров (меньше рисков сбоев системы из-за проблем в сети, мы реже вынуждены ползоваться Net Actions).
При этом важно не терять возможности работы системы без сервера (в первую очередь для кнопок).
Идеально будет, если этот расширитель портов будет иметь компакные размеры для возможности установки в подразетники\небольшие распределительные коробки без использования промежуточных электрощитов\ящиков.

Опять же, если мы говорим о маленькой системе, то расширители и не особо нужны.
Если говорим о большой системе, с множеством расширителей, то тогда логично, на мой взгляд, хранить конфигурацию централизовано и поближе к контролеру (единая точка конфигурации, отсутствие потенциальных проблем с линией до удаленного места хранения конфигурации, не усложнение расширителя и взаимодействия с ним).
Может проще сделать доп модуль для контроллера с доп. EEPROM или вообще с SD картой, повесить его на служебный порт контроллера и уже забыть про ограничения по памяти? (Если мы можем это сделать на расширителе, почему нельзя сделать один отдельный модуль для контроллера?) Будет место и для расширенных конфигураций и для логов и прочих фантазий.

Естественно, с точки зрения схемотехники и цены производства - тут Вам должно быть виднее ;-).

Andrey_B
Администратор
Сообщения: 5327
Зарегистрирован: 18 мар 2011, 12:06

Re: Прошивка MegaD-2561 (релизы, обсуждения, предложения)

Сообщение Andrey_B » 22 сен 2017, 18:24

Vadim писал(а):Может проще сделать доп модуль для контроллера с доп. EEPROM или вообще с SD картой, повесить его на служебный порт контроллера и уже забыть про ограничения по памяти? (Если мы можем это сделать на расширителе, почему нельзя сделать один отдельный модуль для контроллера?) Будет место и для расширенных конфигураций и для логов и прочих фантазий.
Внешний EEPROM навесить, конечно, можно, но это не слишком изящное решение. Достаточно отключить этот крохотный элемент от контроллера, случайно или специально, и вся красивая автоматика, хранящая свои настройки в этом кусочке кремния, превратится в бесполезную груду железа, меди и пластика.
Внедрение внешнего EEPROM непосредственно в модуль контроллера означает потерю обратной совместимости, что крайне нежелательно.
Кроме того, для ключевых функций контроллера, внешний EEPROM, особенно в версии, работающей по шине I2C, слишком медленный.
В то же время я не вижу никаких проблем, а только одни преимущества, если модули с расширителем будут включать в себя собственный EEPROM, висящий на той же шине. Удобно, безопасно, надежно и главное логично.
Логи плохо дружат с SD-картами, а тем более с EEPROM'ом.

Bonefolder
Сообщения: 617
Зарегистрирован: 30 мар 2017, 11:15
Откуда: г.Севастополь

Re: Прошивка MegaD-2561 (релизы, обсуждения, предложения)

Сообщение Bonefolder » 22 сен 2017, 20:31

Andrey_B писал(а):Обработка событий от входов расширителя возможна только с помощью сервера.
Неразумно было бы хранить дополнительные настройки портов расширителя в памяти контроллера. Может быть, правильнее было бы разместить в модуле расширителя свою микросхему EEPROM.
Можно подумать над этим решением. Тем более, что место в модуле есть.
Но как мне видится, это было бы логичне сделать в модуле 8I8O. Нечто подобное Net Action
Лишь бы это не привело к путанице обработки процессов. В стиле, часть на меге, часть на сервере... и ещё и непосредственно на модуле.
P.S. Если я правильно понял, то обработка первых 8 портов идёт на Порту IntA. И сервер шлёт запрос на порт (в вашем случае) 22, а не 31? Остальные 8 портов, в последствии будут повешены на IntВ?

Andrey_B
Администратор
Сообщения: 5327
Зарегистрирован: 18 мар 2011, 12:06

Re: Прошивка MegaD-2561 (релизы, обсуждения, предложения)

Сообщение Andrey_B » 23 сен 2017, 09:32

Bonefolder писал(а):Но как мне видится, это было бы логичне сделать в модуле 8I8O. Нечто подобное Net Action
А мне кажется логичным использовать расширители главным образом для выходов. Вот, где их использование действительно оправдано и вполне удобно.
Использовать расширители для входов я бы стал только в каких-то исключительных случаях и для подключения чего-то такого вроде охранных датчиков. На выключатели я бы себе их ставить, наверное, не стал.
Bonefolder писал(а):P.S. Если я правильно понял, то обработка первых 8 портов идёт на Порту IntA. И сервер шлёт запрос на порт (в вашем случае) 22, а не 31? Остальные 8 портов, в последствии будут повешены на IntВ?
На сервер передается информация, где значение параметра "pt" соответствует порту, к которому подключена линия INT. И это логично, так как к порту INT не имеет смысла подключать разные устройства. А вот на одной шине I2C может теоретически висеть несколько устройств с разными адресами.

Vadim
Сообщения: 122
Зарегистрирован: 04 мар 2017, 17:38

Re: Прошивка MegaD-2561 (релизы, обсуждения, предложения)

Сообщение Vadim » 23 сен 2017, 10:02

Andrey_B писал(а):На выключатели я бы себе их ставить, наверное, не стал.
А что смущает?
Вон, KNX шина работает на 9600 бит/с, и никто там не жалуется ;-)

Bonefolder
Сообщения: 617
Зарегистрирован: 30 мар 2017, 11:15
Откуда: г.Севастополь

Re: Прошивка MegaD-2561 (релизы, обсуждения, предложения)

Сообщение Bonefolder » 23 сен 2017, 11:31

Andrey_B писал(а):
Bonefolder писал(а):для подключения чего-то такого вроде охранных датчиков. На выключатели я бы себе их ставить, наверное, не стал.
На выключатели и я бы не стал)) Просто, когда подсчитал герконы на окнах . У меня получилось и не 2, и не полтора количество входов/выходов Меги на 1 этаж. Что-то около 45 штук. Ставить вторую Мегу совсем иррационально(( Если бы оставалось небольшое количество «лишних» портов, то поставил бы вторую Мегу на этаж (Но этот вопрос ещё открыт. Хотелки растут с каждым днём) Тянуть провода на первый этаж - тоже не есть гуд. Так и родилась идея использовать расширитель, к которому будут подключены почти все герконы и датчики движения на каждом из этажей. Выходит, при задействованных 4 портах Меги, получаем 16 портов. Чистый профит 12 штук. А так же, возможность подключения питания 12V для датчиков движения, чтобы не тянуть провода по всему щитку, от DC distribushen board.
Модуль на 16 выходов в проекте. Но честно говоря, я пока не придумал куда использовать такое количество дополнительных «сухих» выходов(
P.S. Про порт подключения понятно, спасибо. Спросил для прояснения картины. Другим, вероятно, тоже поможет и избавит от вопросов в будущем.

Andrey_B
Администратор
Сообщения: 5327
Зарегистрирован: 18 мар 2011, 12:06

Re: Прошивка MegaD-2561 (релизы, обсуждения, предложения)

Сообщение Andrey_B » 23 сен 2017, 13:09

Для герконов на окнах, пожалуй, самое то. И, кстати, задействовать можно не 4 порта, а 3. Есть большой соблазн подключить INTA и INTB к одному порту. В силу особенностей работы с расширителем не вижу большой необходимости раздельной работы с двумя прерываниями. А освободившийся порт микроконтроллера может пригодится для более полезных вещей.

Vadim
Сообщения: 122
Зарегистрирован: 04 мар 2017, 17:38

Re: Прошивка MegaD-2561 (релизы, обсуждения, предложения)

Сообщение Vadim » 23 сен 2017, 13:37

Андрей,
Такое заведется? (mcp23008\mcp23017)
Не реклама. Уж больно функции расширителей пощупать хочется (без серьезного "паяльника").

Расширители:
https://store.ncd.io/product/mcp23008-8 ... ni-module/
https://store.ncd.io/product/mcp23017-1 ... interface/
https://store.ncd.io/product/mcp23008-m ... interface/

Релейные блоки:
https://store.ncd.io/product/8-channel- ... interface/
https://store.ncd.io/product/16-channel ... interface/

Может тоже стоит смотреть в сторону шинной архитектуры для расширителей?

Andry
Сообщения: 213
Зарегистрирован: 23 мар 2017, 10:41

Re: Прошивка MegaD-2561 (релизы, обсуждения, предложения)

Сообщение Andry » 23 сен 2017, 15:08

У многогих скуд и централях сигнализацый используют расширители по RS485 интерфейсу.Да интерфейс старый но лупит дальность до 1км ,вроде по памяти да и стабильность и защищённость очень классная.

Andrey_B
Администратор
Сообщения: 5327
Зарегистрирован: 18 мар 2011, 12:06

Re: Прошивка MegaD-2561 (релизы, обсуждения, предложения)

Сообщение Andrey_B » 23 сен 2017, 15:49

Vadim, в теории должна завестись любая железка на микросхемах MCP23008/MCP23017.

Ответить