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

Обсуждение статей, технологий домашней автоматизации, программных и аппаратных решений
OlegJktu84
Сообщения: 651
Зарегистрирован: 16 фев 2016, 19:52

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

Сообщение OlegJktu84 » 18 дек 2016, 22:14

Если бы мой бюджет был безразмерен я бы брал TEM (словения) у них есть рамки для 7 кнопок. Учитываю 2х позиционные кнопки получается 14 действий. Мультитач с сервером делать будем? ;)
Но я согласен - может я плохо думаю о родных. Пока моя фантазия крутиться вокруг идеи одно кнопка =одно действие. Альтернатива для света: одиночное нажатие включить/выключит зону, двойное - включить все зоны, держать долго - выключить все. Так и родные смогут больше и гости не совсем потеряются.
Может эту логику и удаться запихнуть, если добавлять функционал в прошивку. Но сколько на МегаД не громозди - сервер все равно не получиться, хотя часам я рад.

foolhome
Сообщения: 164
Зарегистрирован: 18 окт 2014, 21:39
Откуда: Minsk

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

Сообщение foolhome » 21 дек 2016, 22:02

Андрей, проверял работу гистерезиса на макете в режиме входа ADC, он работает когда установлен режим порога "<>" и команды для выхода к примеру 7:3 или 7:4 соответственно, все прекрасно отрабатывается, в режимах ">" или "<" на команды 3 и 4 для выхода не реагируют ни как, получается что режимы ">" и "<" в общем - то и не нужны вообще, это лично мое мнение, может ошибочное, но мне что то не приходит в голову ситуация где понадобится такой алгоритм, так что для экономии памяти их можно, если что и выкинуть

foolhome
Сообщения: 164
Зарегистрирован: 18 окт 2014, 21:39
Откуда: Minsk

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

Сообщение foolhome » 22 дек 2016, 00:28

Андрей, еще одна хотелка появилась, возможно ли добавить к сценариям функцию для управления шаговыми двигателями в формате STEP\DIR, это формат управления для контроллеров шаговых двигателей, STEP - количество шагов, DIR - направление вращения. С DIR проблем нет - указал одному выходному порту 0 или 1 и готово, а вот с STEPом не получается, хотелось бы видеть команду типа такой: 7:S500 и на 7 порту выходит 500 импульсов. Получаем следующий алгоритм (значения приведены образно):
Паралелим входные порты в режиме ADC
один в режиме термостата "<>" порог 500 гистерезис 200 - выход 13:3 (это будет DIR)
второй порог 500 - выход 12:S50
третий порог 600- выход 12:S50
четвертый порог 700- выход 12:S50
в итоге шаговик будет повернут на 150 шагов, по достижении значения 700, 13 выход переключит направление вращения и шаговик будет вращаться в обратную сторону.
это приведен пример управления воздушной заслонкой котла в зависимости от температуры.

kod.begemot
Сообщения: 400
Зарегистрирован: 21 сен 2013, 00:38

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

Сообщение kod.begemot » 22 дек 2016, 09:20

Очень уж специфично... Думаю что работа с шаговиком не помешает, но только как команда с сервера - сколько импульсов, и с какой скоростью. Ибо бомбардировать Мегу сотнями команд для каждого движения - не логично.
Даже направление лучше не отдельно/в команде шагов, а просто переключать соответствующий выход стандартной командой.
Возможно, что то подобное не помешает и для серв (вроде "установить 150 градусов").
Но, чую, не та ветка... Минимум 2561...

foolhome
Сообщения: 164
Зарегистрирован: 18 окт 2014, 21:39
Откуда: Minsk

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

Сообщение foolhome » 22 дек 2016, 11:30

Ни каких команд с сервера!!! банальная команда Sххх для поля ACTION, где ххх количество импульсов на выходе порта, от скорости импульсов по STEP-у зависит скорость вращения шаговика, но мы же не станок CNC строим, где скорость важна, в бытовом применении это в основном система вентиляции, где-то на шаровый кран прицепить, штору скрутить, скорость здесь не очень важна, что-то среднее подобрать.

kod.begemot
Сообщения: 400
Зарегистрирован: 21 сен 2013, 00:38

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

Сообщение kod.begemot » 22 дек 2016, 11:33

Ну тогда уж и Action, и команда с сервера... Только не в этой Меге, ИМХО.

foolhome
Сообщения: 164
Зарегистрирован: 18 окт 2014, 21:39
Откуда: Minsk

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

Сообщение foolhome » 22 дек 2016, 14:38

Слово за Андреем, ему видней, сколько бит можно потратить на реализацию алгоритма и переменных

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

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

Сообщение Andrey_B » 22 дек 2016, 21:54

foolhome, любые более-менее значительные изменения могут быть только в MegaD-2561.
Что касается ваших предложений - нужно подумать. Довольно специфическая задача, которая в том объеме, в котором она вами описана, требуется далеко не всем.
Скорее мне ближе точка зрения kod.begemot: "как команда с сервера - сколько импульсов, и с какой скоростью".

foolhome
Сообщения: 164
Зарегистрирован: 18 окт 2014, 21:39
Откуда: Minsk

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

Сообщение foolhome » 23 дек 2016, 01:26

Андрей Вашей программе (контроллеру) чуть - чуть не хватает самостоятельности (без сервера), иногда нет возможности, а у некоторх и знаний для поднятия сервера и написания скриптов и это останавливает использования вашего изделия. Вот даже на моем примере необходима система контроля за камином с водяной рубашкой, я знаю что 328-я спокойно с этим справится, ей ставятся задачи:
1. Контроль и управление шибером(дымовая заслонка) откр/закр отдельный сервопривод
2. Управление насосом циркуляции
3. Управление клапаном подмеса холодного теплоносителя для предотвращения закипания
4. Контроль уровня в расширительном баке и его наполнение
5. управление воздушной заслонкой (поддувалом)
И это все может делать одна 328-я !!! и зачем здесь сервер, да со временем все кусочки объединятся в единое целое и то, в данной ситуации я серверу это не доверю, максимум что ему будет доверено, это посмотреть как там дела и мне рассказать :)

Формат Step/Dir это формат по умолчанию в промышленности под него делается огромное количество драйверов для шаговых двигателей которые поддерживают и микрошаги и удержание.
https://ru.aliexpress.com/af/step%252Bm ... eedQuery=n
и места в программе много это не должно занять, значение количества шагов хранится в поле Act можно написать хоть 50 000, хоть 100 000 шагов (к сведению, стандартный шаговик это 200 шагов на оборот, более точные 400, все остальные типа принтерных - не помню, не буду врать
выкроить одно место в каком то регистре для хранения переменной, куда подгрузится это значение и начнет выполняться, а так же обнуление этой переменной для аварийной остановки по команде S c значением ноль
Скорость, ну пусть будет изменяемой 0 - 255 (временной интервал подберем если будет интересно), на весь контроллер и устанавливается в основных настройках.

Alex_Jet
Сообщения: 1251
Зарегистрирован: 12 янв 2014, 18:00
Откуда: Россия, г.Томск

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

Сообщение Alex_Jet » 23 дек 2016, 19:11

Андрей! Не могли бы Вы на странички http://www.ab-log.ru/smart-house/ethern ... 8-firmware и http://www.ab-log.ru/smart-house/ethern ... 1-firmware выкладывать соответствующие скрипты megad-cfg последних версий? Не могу, не перекопав последние страницы темы, найти скрипт для MegaD-328 последней версии.

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

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

Сообщение Andrey_B » 23 дек 2016, 21:11

foolhome, в данный момент я использую у себя несколько 3-х ходовых приводов ESBE ARA600 с 3-х точечным регулированием. Вот уже 8 лет они регулируют систему отопления в моем доме. Формат Step/Dir мне не требовался. Система прекрасно управляется и без этого.
Можете ли вы привести примеры конкретных устройств (модели), которые работают по этому принципу? Почему по-вашему нужно использовать именно эти модели, а не какие-то другие? Может ли кто-нибудь из участников форума также подтвердить острую необходимость в реализации этого механизма? И для каких именно целей?
Конкретно по заслонкам/шиберам. Почему это должен быть именно Step/Dir, а не 3-х точечное регулирования или 0-10В?
Кроме того, как я уже многократно говорил, любые изменения возможны только в рамках MegaD-2561. Изменения функциональности MegaD-328 возможны только за счет удаления каких-то текущих возможностей. А это целесообразно только в случае крайней необходимости. Поэтому обсуждение новых возможностей имеет смысл вести в разрезе нового контроллера.
"328-я" может делать многое. По отдельности. Но не все сразу.

foolhome
Сообщения: 164
Зарегистрирован: 18 окт 2014, 21:39
Откуда: Minsk

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

Сообщение foolhome » 24 дек 2016, 01:54

Можете ли вы привести примеры конкретных устройств (модели), которые работают по этому принципу?
Нет, готовое изделие мне в руки не попадалось, приведенный Вами сервопривод для трех ходового клапана не в каждой деревне найдешь, а если кто то и готов его достать, то цена на него будет как пролет чугунного моста.
Конкретно по заслонкам/шиберам. Почему это должен быть именно Step/Dir, а не 3-х точечное регулирования или 0-10В?
Вы позиционируете себя как конечного пользователя готовой продукции, но на Ваш сайт попадает много самодельщиков, которые знают основы механики или электроники, а эти основы ни кто не отменял. Эти основы работают везде, у Вас в автомобиле, в приведенном Вами сервоприводе, в домашнем принтере и в зависимости от ситуации применяется решение, если надо просто открыть/закрыть обычно применяют простой двигатель ограничивая действия концевыми выключателями, а если надо промежуточные положения, да еще и несколько, то задача немного усложняется, много разных вариантов ее решения, но на сегодняшний день, шаговый двигатель это оптимальное решение без обратной связи. Чтоб не нагружать основной процессор для управления шаговыми придуманы специальные драйвера я приводил ссылку ранее, по сути дела за работой шаговика следит свой микропроцессор я не буду описывать подробности если кому интересно легко могут найти все нюансы на любом форуме по CNC, а общение между процессором или компьютером и драйвером происходит в формате Step/Dir и это простой формат придуманный до нас. Лично мое мнение если бы Ваше устройство поддерживало этот формат, то это был бы только плюс, а то больно смотреть как люди используют модельные сервоприводы в своих системах вентиляции.
И для каких именно целей?
Я уже писал ранее, но могу повторить, система вентиляции, шторы - жалюзи, твердотопливные котлы без надува для управления воздушной заслонкой, да даже тот же привод трехходового на отоплении, механику самодельщики сами доделают и тому подобное.
Изменения функциональности MegaD-328 возможны только за счет удаления каких-то текущих возможностей. А это целесообразно только в случае крайней необходимости
есть не актуальный на сегодняшний момент ИК, мир не стоит на месте Broadlink за 15USD заменит все пульты.
Поэтому обсуждение новых возможностей имеет смысл вести в разрезе нового контроллера.
Предлагаю этот вопрос оставить здесь, если народу это нужно, Вы уже сами примите решение на какой платформе это реализовать, спасибо что обратили внимание на мое предложение, если мой случай управления шаговым двигателем единичный, то не стоит заморачиваться, я как нибудь выкручусь, отчет будет в отдельной ветке.

alexsis_76

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

Сообщение alexsis_76 » 24 дек 2016, 02:37

извините что не в тему,Вам foolhome с вашими запросами нужно посмотреть в сторону скриптовых языков.

Maxmen
Сообщения: 73
Зарегистрирован: 05 янв 2017, 01:00

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

Сообщение Maxmen » 10 янв 2017, 17:40

MegaD-2561 Поддерживает этот функционал? На какой пин подключать светодиод?

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

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

Сообщение Andrey_B » 10 янв 2017, 17:43

Maxmen, порт P12 (XP1/17, B6)
Но стоит предупредить, что эта функциональность мало кем тестировалась.

Maxmen
Сообщения: 73
Зарегистрирован: 05 янв 2017, 01:00

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

Сообщение Maxmen » 11 янв 2017, 17:03

Андрей, спасибо.
Странно что это так мало востребовано. Реально просто убойная фича. Считал код с пульта и просто забил его в запрос- идея супер!

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

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

Сообщение Andrey_B » 11 янв 2017, 17:19

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

empenoso
Сообщения: 1039
Зарегистрирован: 11 ноя 2015, 08:03
Откуда: Пермь

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

Сообщение empenoso » 23 янв 2017, 20:29

Подскажите пожалуйста - можно ли в устройство встроить механизм самодиагностики - как будто само себя пингует и если нет ответа, то перезагружается, а то что-то снова зависла через два месяца работы: viewtopic.php?f=1&t=1208&start=260#p26203
Andrey_B писал(а):empenoso, "зависание" устройства не является нормальной ситуацией и такого происходить не должно ни при каких обстоятельствах.
А потому любые костыли нецелесообразны.

Конкретно по вашей ситуации. Если предположить, что отсутствуют очевидные причины (плохое питание, проблема контактов и т.д.), то либо случается какой-то аппаратный сбой и тогда вопрос решится простой заменой контроллера, либо ваша конфигурация уникальна и имеют место какие-то редкие и особенные обстоятельства. В этом случае интересно узнать - зависает ли это сетевая часть или сам микроконтроллер. Это можно сделать очень просто. Необходимо сконфигурировать любой порт как стандартный вход (контроллер при этом должен быть настроен на работу с сервером). И в тот момент, когда контроллер не отвечает по сети, необходимо несколько раз замкнуть вход. Если светодиод Act в момент замыкания будет неярко и кратковременно вспыхивать, это означает, что контроллер на самом деле не завис, а проблема где-то в сетевой части.

Да, по любым сервисным вопросам вы можете обратиться ко мне напрямую.

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

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

Сообщение Andrey_B » 23 янв 2017, 21:31

empenoso, вероятно в вашем случае имеет место какое-то редкое обстоятельство, связанное с конфигурацией, местом, временем и фазами луны.
Плохо, что проблема проявляется очень редко. Тем не менее, пришлите мне по электронной почте вашу конфигурацию (например, сгенерированную с помощью megad-cfg). Я попробую запустить ее на "стенде".
Также сообщите как часто, как и какие порты вы опрашиваете. Хотя бы грубо на словах. Не лишним было бы получить дамп сетевого обмена с устройством, но не уверен, что в вашем случае это возможно сделать.
Мне очень интересно понять, что происходит в вашем случае. Конечно, в отсутствии каких-либо зацепок существует пока только один путь поиска причины. По очереди отключать те или иные порты/функции и наблюдать. Но проявление проблемы раз в несколько месяцев крайне усложнит поиск. В своем доме я использую много устройств разных версий, которые используют почти все функции, заложенные в прошивке. Но ни разу не сталкивался с зависанием. Аптайм год и более. Это вовсе не означает, что проблемы не существует. Но если она существует и не является внешней (скачки напряжения, космическое излучение, полтергейст) необходимо ее как-то локализовать. Я со своей стороны готов приложить все усилия.
watchdog как "решение" - конечно, это возможно. Это не поможет найти причину, если она есть, но вылечит симптомы.
Сделаю для вас такую версию и свяжусь с вами по этому поводу.

empenoso
Сообщения: 1039
Зарегистрирован: 11 ноя 2015, 08:03
Откуда: Пермь

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

Сообщение empenoso » 24 янв 2017, 07:21

Andrey_B писал(а):empenoso, вероятно в вашем случае имеет место какое-то редкое обстоятельство, связанное с конфигурацией, местом, временем и фазами луны.
Плохо, что проблема проявляется очень редко. Тем не менее, пришлите мне по электронной почте вашу конфигурацию (например, сгенерированную с помощью megad-cfg). Я попробую запустить ее на "стенде".
Также сообщите как часто, как и какие порты вы опрашиваете. Хотя бы грубо на словах. Не лишним было бы получить дамп сетевого обмена с устройством, но не уверен, что в вашем случае это возможно сделать.
Мне очень интересно понять, что происходит в вашем случае. Конечно, в отсутствии каких-либо зацепок существует пока только один путь поиска причины. По очереди отключать те или иные порты/функции и наблюдать. Но проявление проблемы раз в несколько месяцев крайне усложнит поиск. В своем доме я использую много устройств разных версий, которые используют почти все функции, заложенные в прошивке. Но ни разу не сталкивался с зависанием. Аптайм год и более. Это вовсе не означает, что проблемы не существует. Но если она существует и не является внешней (скачки напряжения, космическое излучение, полтергейст) необходимо ее как-то локализовать. Я со своей стороны готов приложить все усилия.
watchdog как "решение" - конечно, это возможно. Это не поможет найти причину, если она есть, но вылечит симптомы.
Сделаю для вас такую версию и свяжусь с вами по этому поводу.
Спасибо что не оставляете один на один с проблемой (проблема только в том что нет физического доступа к оборудованию, так бы это и не было проблемой). Вот все что подключено к меге:
Изображение
Опрос задействованных портов с опенхаб не чаще 1 раза в минуту.

Конфигурация:

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

cf=1&eip=192.168.88.72&pwd=sec&gw=255.255.255.255&sip=192.168.88.70:8989&sct=openHAB
cf=2&mdid=
pn=0&pty=255
pn=1&pty=255
pn=2&misc=0.00&hst=0.00&ecmd=&eth=&naf=&pty=3&m=0&d=3
pn=3&misc=&hst=0&ecmd=&eth=&naf=&pty=2&m=0
pn=4&misc=&hst=0&ecmd=&eth=&naf=&pty=2&m=0
pn=5&misc=0.00&hst=0.00&ecmd=&eth=&naf=&pty=3&m=0&d=3
pn=6&ecmd=&eth=&naf=&misc=&d=&pty=0&m=0
pn=7&misc=0.00&hst=0.00&ecmd=&eth=&naf=&pty=3&m=0&d=3
pn=8&misc=0.00&hst=0.00&ecmd=&eth=&naf=&pty=3&m=0&d=3
pn=9&ecmd=&eth=&naf=&misc=&d=&pty=0&m=1
pn=10&ecmd=&eth=&naf=&misc=&d=&pty=0&m=1
pn=11&ecmd=&eth=&naf=&misc=&d=&pty=0&m=1
pn=12&pty=1&d=0&m=0
pn=13&misc=0.00&hst=0.00&ecmd=&eth=&naf=&pty=3&m=0&d=3
pn=14&misc=&hst=0&ecmd=&eth=&naf=&m=0
pn=15&misc=&hst=0&ecmd=&eth=&naf=&m=0 
P.S. watchdog с возможностью перезагрузки по задаваемому расписанию или по обращению по определенной ссылке (предупредительно раз в несколько дней), чтобы обращаться по ней извне - было бы отлично. Ну или при появлении проблемы с сетевой доступностью - это было бы вообще шикарно.

Ответить