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

Обсуждение статей, технологий домашней автоматизации, программных и аппаратных решений
Alex_Jet
Сообщения: 1251
Зарегистрирован: 12 янв 2014, 18:00
Откуда: Россия, г.Томск

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

Сообщение Alex_Jet » 21 ноя 2017, 21:24

Andrey_B писал(а):Это экспериментальная версия. На странице "Config" добавлена ссылка "Program". Это аналог Events в NetAlarm.
Что такое чек-бокс 'Slave'? В CMD поддерживаются команды х:3, х:4 (хотя какой от них толк...)?
Update 1: CMD вида х:0; x:1; x:2 точно поддерживаются - с последним можно делитель на 2 делать:)
Update 2: сохраняется без перезагрузки контроллера? :o
Update 3: на страничке условий вместо ">" и "<" отображается "="
Update 4: логика работает. Если температура больше уставки, то с командой х:2 порт "мигает" с периодичностью 5 секунд. То есть цикл прохода условий ~1 раз в 5 секунд.
Update 5: если вход = 1, то CMD не отрабатывает! Если вход = 0, то все ОК.
Update 6: если вход > 0, то CMD не отрабатывает! Если вход < 1, то все ОК.
Update 7: на самой страничке Program вместо "->" можно использовать "cmd" - всего на 1 символ больше, ну или "Act" как везде; при сохранении условия на этой страничке добавляется лишний символ ">".
Update 8: может быть вместо логического И использовать проверку предыдущих условий?

Вообще в NetAlarm помню для создания выпадающего списка использовался скрипт на JS. Поскольку в одном пакете не может пролезть больше 1024 бит информации (столько у меня был http-буфер). Если все условия будут заполнены (в том числе CMD с двойными, тройными условиями), то страничка вообще загрузиться? Не проверяли?
Последний раз редактировалось Alex_Jet 22 ноя 2017, 06:09, всего редактировалось 1 раз.

Prokol
Сообщения: 197
Зарегистрирован: 25 янв 2015, 21:43

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

Сообщение Prokol » 22 ноя 2017, 01:14

Andrey_B писал(а): Здесь очень много нюансов. ИК-передатчик/диод, который использовался с Arduino тот же самый, что вы подключали к MegaD?
Нужно подключать ИК-приемник к ПК и смотреть, чем отличаются посылки с пульта, Mega-D, Arduino. Вот так удаленно-умозрительно я ничего посоветовать не могу.
Диод один и тот-же, который приобретен с вашей платой IR.
Вот команда с пульта на ардуину:

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

Received unknown code, saving as raw
pulse 2550
space 950
pulse 350
space 950
pulse 350
space 550
pulse 350
space 550
pulse 1150
space 1450
pulse 350
space 550
pulse 350
space 550
pulse 300
space 550
pulse 350
space 550
pulse 350
space 550
pulse 300
space 550
pulse 350
space 550
pulse 300
space 600
pulse 300
space 550
pulse 300
space 600
pulse 300
space 550
pulse 750
space 600
pulse 300
space 1000
pulse 300
space 600
pulse 300
Вот команда с мегад на ардуину, полученная с помощью Вашего скрипта

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

http://192.168.0.14/sec/?pt=10&ir=3efff&irp0=2750&irp1=850&irp2=534&irp3=471&irp4=3356503&irp5=2

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

Received RC6: 0
Received unknown code, saving as raw
pulse 400
space 600
pulse 350
space 650
pulse 400
space 600
pulse 400
space 600
pulse 400
space 600
pulse 400
Различия огромные.

Erik
Сообщения: 570
Зарегистрирован: 08 ноя 2017, 08:55

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

Сообщение Erik » 22 ноя 2017, 08:24

Andrey_B писал(а):Это экспериментальная версия. На странице "Config" добавлена ссылка "Program". Это аналог Events в NetAlarm.
Прекрасно!!!!!

Еще нужна страничка с "глобальнымии переменными".
Чтобы одни правила могли брать оттуда пороги для проверок, а другие правила их менять (или пользователь непосредственно на www страничке меги).
А в перспективе нужны наборы этих переменных (или профили), с одним "активным" по выбору.

Ура! "Верность принципам" поколеблена! :)

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

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

Сообщение Andrey_B » 22 ноя 2017, 11:13

Prokol писал(а):А как это будет для Bosch BME280? Там-же два значения отображаются.
BME280 отдает не два, а три значения: температура, влажность, атмосферное давление.
Выше я написал, что в данный момент поддерживаются IN/OUT/DSen. Речи о I2C-устройствах пока не идет.

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

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

Сообщение Andrey_B » 22 ноя 2017, 12:02

https://ab-log.ru/files/File/megad-2561 ... a8-hex.zip

- Небольшие пока косметические исправления в Program
- Добавлена обработка символа '=' (альтернатива ':') в сценариях
Alex_Jet писал(а):Что такое чек-бокс 'Slave'?
В Events/NetAlarm тоже есть такое поле. Оно определяет - самостоятельное ли это правило или подчиненное. Пока не работает.
Alex_Jet писал(а):Update 1: CMD вида х:0; x:1; x:2 точно поддерживаются - с последним можно делитель на 2 делать:)
Что такое делитель на 2?
Alex_Jet писал(а):Update 2: сохраняется без перезагрузки контроллера? :o
В данном случае нет изменения конфигурации портов. Можно обойтись и без перезагрузки.
Для остального тоже можно было бы обойтись, но так уж сложилось.
Alex_Jet писал(а):Update 4: логика работает. Если температура больше уставки, то с командой х:2 порт "мигает" с периодичностью 5 секунд. То есть цикл прохода условий ~1 раз в 5 секунд.
Нет такого понятия - цикл прохода условий. Условия проверяются только тогда, когда есть изменение состояния портов.
А вот значения с DS18B20 контроллером считываются каждые 5 секунд. В более частом опросе нет необходимости или для этого всегда можно задействовать сервер.
Alex_Jet писал(а):Update 5: если вход = 1, то CMD не отрабатывает! Если вход = 0, то все ОК.
Update 6: если вход > 0, то CMD не отрабатывает! Если вход < 1, то все ОК.
Думаю, причина в том, какой режим работы входа используется. Если "P", то будет реакция только на "1", если "R" - только на "0", если "P&R" на оба состояния.
Также проверьте Act. Теоретически Act и Program могут конфликтовать друг с другом.
Alex_Jet писал(а):Update 8: может быть вместо логического И использовать проверку предыдущих условий?
Не понял. Как тогда задать два разных условия? В принципе в NetAlarm все сделано было грамотно с точки зрения логики.
Alex_Jet писал(а): Вообще в NetAlarm помню для создания выпадающего списка использовался скрипт на JS. Поскольку в одном пакете не может пролезть больше 1024 бит информации (столько у меня был http-буфер). Если все условия будут заполнены (в
том числе CMD с двойными, тройными условиями), то страничка вообще загрузиться? Не проверяли?
Вот поэтому я разделил на две разные страницы вывод информации обо всех условиях и редактирование условия. Мне такое решение понравилось больше, чем использование JS.

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

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

Сообщение Andrey_B » 22 ноя 2017, 12:24

Prokol писал(а):Вот команда с мегад на ардуину, полученная с помощью Вашего скрипта

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

http://192.168.0.14/sec/?pt=10&ir=3efff&irp0=2750&irp1=850&irp2=534&irp3=471&irp4=3356503&irp5=2

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

Received RC6: 0
Received unknown code, saving as raw
pulse 400
space 600
pulse 350
space 650
pulse 400
space 600
pulse 400
space 600
pulse 400
space 600
pulse 400
Различия огромные.
Тогда так.
Я подключил к компьютеру USB ИК-приемник Topseed и использовал программу mode2 из пакета lirc.
Результат выполнения запроса: http://192.168.0.14/sec/?pt=10&ir=3efff ... 503&irp5=2

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

pulse 2850
space 850
pulse 450
space 14600
pulse 600
space 14550
pulse 550
space 450
pulse 600
space 400
pulse 550
space 450
pulse 600
space 450
pulse 600
space 400
pulse 600
space 14500
pulse 550
space 450
pulse 600
space 400
pulse 600
space 450
pulse 600
space 400
pulse 600
space 400
pulse 600
space 450
pulse 550
space 450
pulse 550
space 450
pulse 600
space 450
pulse 550
space 450
pulse 600
space 400
pulse 600
space 450
pulse 600
space 5150
pulse 2900
space 800
pulse 600
space 14500
pulse 550
space 14550
pulse 600
space 400
pulse 600
space 450
pulse 550
space 450
pulse 500
space 500
pulse 600
space 450
pulse 550
space 14550
pulse 550
space 450
pulse 600
space 400
pulse 600
space 400
pulse 600
space 450
pulse 600
space 400
pulse 600
space 450
pulse 500
space 500
pulse 550
space 450
pulse 550
space 450
pulse 600
space 450
pulse 500
space 500
pulse 600
space 450
pulse 550
space 16777215
Разница с Arduino огромная. К тому, что считал заводской считыватель, доверия больше.
Я по-прежнему не понимаю, зачем в запросе присутствует irp5. И с какой целью в запросе представлено значение irp4=3356503
Повторю, вот здесь есть описание параметров для ИК-передатчика.
irp4 - длительность паузы для 0
Она не может составлять "3356503".

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

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

Сообщение Andrey_B » 22 ноя 2017, 12:32

Erik писал(а): Прекрасно!!!!!
Еще нужна страничка с "глобальнымии переменными".
Чтобы одни правила могли брать оттуда пороги для проверок, а другие правила их менять (или пользователь непосредственно на www страничке меги).
А в перспективе нужны наборы этих переменных (или профили), с одним "активным" по выбору.
Ура! "Верность принципам" поколеблена! :)
Мне все это напоминает "Международный шахматный турнир", "автостраду Москва - Васюки", "аэропорт Большие Васиюки с регулярными рейсами в Рио-де-Жанейро", а также "Первый шахматный турнир между командами
Васюков и Большой Медведицы", который "закончится убедительной победой васюкинцев. Ура, товарищи!"
Не то, чтобы я против турнира, нет. Я ведь только за...

Erik
Сообщения: 570
Зарегистрирован: 08 ноя 2017, 08:55

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

Сообщение Erik » 22 ноя 2017, 13:04

Andrey_B писал(а):
Erik писал(а): Прекрасно!!!!!
Еще нужна страничка с "глобальнымии переменными".
Чтобы одни правила могли брать оттуда пороги для проверок, а другие правила их менять (или пользователь непосредственно на www страничке меги).
А в перспективе нужны наборы этих переменных (или профили), с одним "активным" по выбору.
Ура! "Верность принципам" поколеблена! :)
Мне все это напоминает "Международный шахматный турнир", "автостраду Москва - Васюки", "аэропорт Большие Васиюки с регулярными рейсами в Рио-де-Жанейро", а также "Первый шахматный турнир между командами
Васюков и Большой Медведицы", который "закончится убедительной победой васюкинцев. Ура, товарищи!"
Не то, чтобы я против турнира, нет. Я ведь только за...
Ну, пару страниц назад вы писали о невозможности оторвать скрипт от входа.
А теперь вот сделали.
Если вам это напоминает бесславный турнир им. великого комбинатора - поделитесь чем? Соберете членские взносы, и свалите за речку?

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

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

Сообщение Alex_Jet » 22 ноя 2017, 13:16

Andrey_B писал(а):В Events/NetAlarm тоже есть такое поле. Оно определяет - самостоятельное ли это правило или подчиненное. Пока не работает.
В NetAlarm такого поля нет. Там есть только чек-бокс "Enable/Disable".
Andrey_B писал(а):Что такое делитель на 2?
Это понятие из электронной логики. Делитель на 2/4/8/16. Например, на вход приходит 8 импульсов, на выходе имеем 4.
Andrey_B писал(а):В данном случае нет изменения конфигурации портов. Можно обойтись и без перезагрузки.
Для остального тоже можно было бы обойтись, но так уж сложилось.
Вот я поэтому поводу до сих пор неудомевал... если мы не меняем значения DDRx и PORTx (про сетевые настройки молчу), то нафига делать перезагрузку? Ну раз так сложилось, то будем с этим жить.
Andrey_B писал(а):Нет такого понятия - цикл прохода условий. Условия проверяются только тогда, когда есть изменение состояния портов.
А вот значения с DS18B20 контроллером считываются каждые 5 секунд. В более частом опросе нет необходимости или для этого всегда можно задействовать сервер.
Буду знать.
Andrey_B писал(а):Думаю, причина в том, какой режим работы входа используется. Если "P", то будет реакция только на "1", если "R" - только на "0", если "P&R" на оба состояния.
Также проверьте Act. Теоретически Act и Program могут конфликтовать друг с другом.
Оба "тестовых" входа были в режиме C (click mode). На одном act - 22:2|g1:2, на другом - 23:2|g2:2. По конфликту - посмотрю как появится время, но в Program CMD прописывал 23:2, 24:2
Andrey_B писал(а):Не понял. Как тогда задать два разных условия? В принципе в NetAlarm все сделано было грамотно с точки зрения логики.
Не понимаю в чем проблема. Там логика была отличная! Bремя проверки условия (Delay time) в той логике обязательно нужно. Посмотрите пример #3 из него все понятно - http://www.avislab.com/blog/enc28j60/
Andrey_B писал(а):Вот поэтому я разделил на две разные страницы вывод информации обо всех условиях и редактирование условия. Мне такое решение понравилось больше, чем использование JS.
Отличное решение! Главное чтобы при настройке всех 10-ти условий страничка влезла в один пакет. Сейчас у меня страничка с 4-мя заполненными условиями имеет размер 611 байт.

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

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

Сообщение Andrey_B » 22 ноя 2017, 17:17

Prokol писал(а):
Andrey_B писал(а):
Prokol писал(а): Неплохо добавить 11 порт. А как восстанавливать настройки таймера без перезагрузки?
Имелось ввиду, что это надо сделать в коде прошивки.
Хорошо бы, а то сейчас только один модуль MegaD-14-IN. Да и как-то неверно, если один IR все три порта использует, точнее сказать два остальных перестают работать.
https://ab-log.ru/files/File/megad-2561 ... a9-hex.zip

Добавлено восстановление настроек таймера после передачи ИК-команд.
Если лента у вас висит на этом же таймере, то в момент отправки ИК-команд лента моргнет. И с этим ничего не сделать. Это аппаратные особенности чипа.
Если у вас один MegaD-14-IN, то можно подключить ИК-передатчик на порт второго 34-пинового разъема (XP2) напрямую. Для его работы MegaD-14-IN не нужен.

Prokol
Сообщения: 197
Зарегистрирован: 25 янв 2015, 21:43

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

Сообщение Prokol » 22 ноя 2017, 17:33

Andrey_B писал(а): https://ab-log.ru/files/File/megad-2561 ... a9-hex.zip

Добавлено восстановление настроек таймера после передачи ИК-команд.
Если лента у вас висит на этом же таймере, то в момент отправки ИК-команд лента моргнет. И с этим ничего не сделать. Это аппаратные особенности чипа.
Если у вас один MegaD-14-IN, то можно подключить ИК-передатчик на порт второго 34-пинового разъема (XP2) напрямую. Для его работы MegaD-14-IN не нужен.
Спасибо.
А на 11 порт можно еще добавить IR?

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

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

Сообщение Andrey_B » 22 ноя 2017, 17:33

Alex_Jet писал(а):
Andrey_B писал(а):В Events/NetAlarm тоже есть такое поле. Оно определяет - самостоятельное ли это правило или подчиненное. Пока не работает.
В NetAlarm такого поля нет. Там есть только чек-бокс "Enable/Disable".
Это ровно тоже самое.
Цитата "оттуда": "Если Вы хотите, чтобы условие проверялось, установите это поле. Если условие используется как подчиненное в цепочке логического “И”, и Вам не нужно чтобы эту условие работало как самостоятельное, не устанавливайте это поле."
Иными словами, если поле установлено, то условие является самостоятельным, если не установлено - подчиненным.
Alex_Jet писал(а):
Andrey_B писал(а):Что такое делитель на 2?
Это понятие из электронной логики. Делитель на 2/4/8/16. Например, на вход приходит 8 импульсов, на выходе имеем 4.
Все равно не понял.
Alex_Jet писал(а):
Andrey_B писал(а):В данном случае нет изменения конфигурации портов. Можно обойтись и без перезагрузки.
Для остального тоже можно было бы обойтись, но так уж сложилось.
Вот я поэтому поводу до сих пор неудомевал... если мы не меняем значения DDRx и PORTx (про сетевые настройки молчу), то нафига делать перезагрузку? Ну раз так сложилось, то будем с этим жить.
Если мы меняем настройки порта, то перезагрузка тоже в общем-то не нужна. Но традиция...
Перезагрузка точно нужна при смене IP-адреса. Особенность формирования MAC-адреса.
Alex_Jet писал(а):
Andrey_B писал(а):Не понял. Как тогда задать два разных условия? В принципе в NetAlarm все сделано было грамотно с точки зрения логики.
Не понимаю в чем проблема. Там логика была отличная! Bремя проверки условия (Delay time) в той логике обязательно нужно. Посмотрите пример #3 из него все понятно - http://www.avislab.com/blog/enc28j60/
Обратите внимание на флажки Enable/Disable. Это именно то, про что я говорил.
Без них никак не отличить самостоятельное правило от подчиненного. И дело не в порядке следования записей. Записи могли располагаться вообще хаотично.
"Delay time" и в их логике поле не обязательное, но с ним возможностей чуток больше.
Alex_Jet писал(а):Главное чтобы при настройке всех 10-ти условий страничка влезла в один пакет. Сейчас у меня страничка с 4-мя заполненными условиями имеет размер 611 байт.
Возможно и не влезет. Надо будет что-нибудь придумать.

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

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

Сообщение Andrey_B » 22 ноя 2017, 18:16

Alex_Jet писал(а):
Andrey_B писал(а):Думаю, причина в том, какой режим работы входа используется. Если "P", то будет реакция только на "1", если "R" - только на "0", если "P&R" на оба состояния.
Также проверьте Act. Теоретически Act и Program могут конфликтовать друг с другом.
Оба "тестовых" входа были в режиме C (click mode).
С "Click mode" в этом смысле проблема. Дело в том, что событие в этом режиме формируется не в момент нажатия кнопки. Существует пауза, необходимая для фиксации "двойного нажатия". То есть на момент, когда генерируется событие вроде бы на нажатие, кнопка физически не является нажатой. Вот, почему срабатывает только на "0". Это вообще особенный режим. Ну, можно прописать правило на "0". С точки зрения решения задачи, какая казалось бы разница...

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

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

Сообщение Alex_Jet » 23 ноя 2017, 06:34

Andrey_B писал(а):
Alex_Jet писал(а):
Andrey_B писал(а):Думаю, причина в том, какой режим работы входа используется. Если "P", то будет реакция только на "1", если "R" - только на "0", если "P&R" на оба состояния.
Также проверьте Act. Теоретически Act и Program могут конфликтовать друг с другом.
Оба "тестовых" входа были в режиме C (click mode).
С "Click mode" в этом смысле проблема. Дело в том, что событие в этом режиме формируется не в момент нажатия кнопки. Существует пауза, необходимая для фиксации "двойного нажатия". То есть на момент, когда генерируется событие вроде бы на нажатие, кнопка физически не является нажатой. Вот, почему срабатывает только на "0". Это вообще особенный режим. Ну, можно прописать правило на "0". С точки зрения решения задачи, какая казалось бы разница...
Появится время, посмотрю как работает в режимах P/R/P&R. Последнюю прошивку еще не устанавливал.

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

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

Сообщение Alex_Jet » 24 ноя 2017, 13:04

Andrey_B писал(а):Это экспериментальная версия. На странице "Config" добавлена ссылка "Program". Это аналог Events в NetAlarm.
Я тут что подумал - при наличии функционала "Program" возможно даже управлять трехходовыми клапанами только средствами MegaD!:
-если температура после клапана <уставки, то 0=1;p5;0=0
-если температура после клапана >уставки, то 1=1;p5;1=0
А порты в режиме SW link. Интересно - как это будет работать? Интересной особенностью было бы еще задание уставки с гистерезисом методом get.

А просветите, пожалуйста, почему в локальном/удаленном термостате (только при выборе режима <>) не сделать поля Act и ElseAct. То есть если температура превышает уставку, то выполняем Act, если меньше уставки, то выполняем ElseAct?

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

Андрей, а модули 15IN и 14/15OUT-S не ожидаются??? Еще кстати, кто-то говорил про "MegaD-все в одном флаконе" - есть какое-нибудь развитие по этому поводу?
Еще момент - к одной MegaD-2561 получится подключить 7 шт. DS18B20 и 3 шт. OLED, чтобы на них выводились показания от датчиков температуры?

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

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

Сообщение Andrey_B » 24 ноя 2017, 19:33

Alex_Jet писал(а):Я тут что подумал - при наличии функционала "Program" возможно даже управлять трехходовыми клапанами только средствами MegaD!:
-если температура после клапана <уставки, то 0=1;p5;0=0
-если температура после клапана >уставки, то 1=1;p5;1=0
А порты в режиме SW link. Интересно - как это будет работать?
Не будет работать. И даже не потому, что в Program пока не поддерживаются паузы.
Предположим температура после клапана _стала_ меньше уставки, контроллер покрутил клапан, но температура не выросла или выросла недостаточно. Надо бы его еще покрутить, и еще, но кто это будет делать?
Этак можно прийти к тому, что нужны циклы и еще встроенный питон...
Alex_Jet писал(а):Интересной особенностью было бы еще задание уставки с гистерезисом методом get.
Нужно всеми силами стараться отказаться от сервера, чтобы потом менять гистерезис GET-запросом?
Если уж есть нечто, что рулит устройством через GET-запросы, так ему и флаг в руки.
Alex_Jet писал(а): А просветите, пожалуйста, почему в локальном/удаленном термостате (только при выборе режима <>) не сделать поля Act и ElseAct. То есть если температура превышает уставку, то выполняем Act, если меньше уставки, то выполняем ElseAct?
Каждый Act занимает в EEPROM 23 байта (и некоторым мало). 23 * 38 = 874 байта. Второй Act займет столько же. А ведь EEPROM - это не Москва.
И мы тут умолчим, что в случае, если все поля усердно заполнены, то даже с одним Act размер страницы едва влезает в TCP-пакет.
Alex_Jet писал(а): Все же система отопления в частном доме - самая наиглавнейшая система особенно в сибирских условиях, поэтому ее надо делать с максимальной надежность - (преимущественно управление сервером, но в случае возможных проблем с ним - более менее нормальная логика работы без него). Как и дублирование котлов.
В космической отрасли все делается очень надежно и сильно дублировано, а ракеты все равно изредка падают в "грунт".
С другой стороны дом никогда не остывает мгновенно. Потребуется день-два или даже больше, чтобы даже в сибирских условиях в случае аварии или сбоя софта дом остыл до критической температуры в 0 градусов.
Трехходовые, насосы, котел - все это останется в том положении, в котором было на момент сбоя сервера. Максимум, что будет - это чуть теплее или чуть прохладнее в доме в зависимости от внешних условий.
Alex_Jet писал(а):Андрей, а модули 15IN и 14/15OUT-S не ожидаются??? Еще кстати, кто-то говорил про "MegaD-все в одном флаконе" - есть какое-нибудь развитие по этому поводу?
По поводу 15-IN. Нет места для еще одного джампера и еще одного клеммника. Кроме того, 14 светодиодов на лицевой панели в два ряда как-то ложатся лучше, чем 15.
Можно убрать клемму с питанием (+12В, 3,3В), но по-моему она ценнее, чем еще один порт.
14/15-S пока не ожидается, но он возможен. Хотя пользователям больше нравятся релейные модули ввиду их большей универсальности, возможности коммутации больших токов и условной толерантности к сверхтокам и КЗ.
Моноблок делает d.v.ermakov. Работа у него идет. То есть, развитие есть. Может быть, со временем я сделаю свою версию (пока разработка не начиналась), а может, буду предлагать его вариант.
Alex_Jet писал(а):Еще момент - к одной MegaD-2561 получится подключить 7 шт. DS18B20 и 3 шт. OLED, чтобы на них выводились показания от датчиков температуры?
Смотря что вы имеете ввиду.
Если подключаться непосредственно к "гребенкам" с внешней подтяжкой, то легко.
Если ограничиваться только XT2 и при условии, что сервер не будет задействован для вывода данных на OLED-дисплеи, то нельзя.

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

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

Сообщение Alex_Jet » 24 ноя 2017, 20:57

Спасибо за ответы. Со всем согласен. Вы умеете отрезвлять:)
Я имею ввиду, что если например SDA OLED будет на 32,33,34, SCL - общий для всех 35. На XP1,XP2 блоки 14in, к ним произвольно подключены 7 шт. DS18B20, в настройках DISP указаны 32,33,34 порты. Будет температура с 7-ми датчиков отображаться на 3-х дисплеях (3 на одном, 2 на втором и 2 на третьем)? 2 дисплея подключал выводил на дисплеи 6 значений, а 3 дисплея не пробовал...

Erik
Сообщения: 570
Зарегистрирован: 08 ноя 2017, 08:55

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

Сообщение Erik » 24 ноя 2017, 23:10

Andrey_B писал(а):
Не будет работать. И даже не потому, что в Program пока не поддерживаются паузы.
Предположим температура после клапана _стала_ меньше уставки, контроллер покрутил клапан, но температура не выросла или выросла недостаточно. Надо бы его еще покрутить, и еще, но кто это будет делать?
Этак можно прийти к тому, что нужны циклы и еще встроенный питон...
Оно же раз в 5 сек срабатывает.
Alex_Jet писал(а):Update 4: логика работает. Если температура больше уставки, то с командой х:2 порт "мигает" с периодичностью 5 секунд. То есть цикл прохода условий ~1 раз в 5 секунд.
5 сек это хороший промежуток. Если термодатчик недалеко от трехходового крана, и в системе есть байпас, то регулировка работать будет.
Подстройка размером шага сервопривода

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

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

Сообщение Andrey_B » 25 ноя 2017, 09:54

Alex_Jet писал(а):если например SDA OLED будет на 32,33,34, SCL - общий для всех 35. На XP1,XP2 блоки 14in, к ним произвольно подключены 7 шт. DS18B20, в настройках DISP указаны 32,33,34 порты. Будет температура с 7-ми датчиков отображаться на 3-х дисплеях (3 на одном, 2 на втором и 2 на третьем)? 2 дисплея подключал выводил на дисплеи 6 значений, а 3 дисплея не пробовал...
Если вопрос касается того, будут ли в принципе работать 3 дисплея, то да, будут работать. Контроллер должен работать с любым количеством дисплеев, а дисплеи могут подключаться к любым портам.
В этом и заключается основная идея проекта: любой порт может выполнять любую функцию при условии, что подключен правильный исполнительный модуль и/или конечное устройство.

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

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

Сообщение Andrey_B » 25 ноя 2017, 10:19

Erik писал(а):
Andrey_B писал(а):Не будет работать. И даже не потому, что в Program пока не поддерживаются паузы.
Оно же раз в 5 сек срабатывает.
Да, согласен. Упустил, что в текущей экспериментальной реализации логика работы с температурными датчиками не такая, как в режиме "термостата".
Изначально я планировал, что она будет такая же, как там, но вот теперь в этом уже не уверен.
Но паузы все равно в Program в данный момент не поддерживаются.
И периодичность 5 секунд по-моему слишком мало для управления 3-х ходовым. У меня скрипт на сервере крутит 3-х ходовые с периодичностью в 5 минут.
Кроме того, в связи с довольно резкими колебаниями теплоносителя в системе отопления, значения гистерезиса моего котла штатные +6/-2 градуса, я оцениваю не моментальное значение температуры, а усредненное за 5 минут. Иначе контроллер/сервер без конца бы крутил кран туда-сюда без реальной на то необходимости.

Ответить