Перейти до публікації
Пошук в
  • Додатково...
Шукати результати, які містять...
Шукати результати в...

Модуль управления освещением и не только (48I 24V + 40 реле + 2хModbus + мелочи)

Автоматчик

Рекомендовані повідомлення

Построил дом и как всегда, сапожник без сапог. Проводку под "умный" дом кинул на 90% (кое-что естественно забыл), а о "мозгах" не побеспокоился. А заселяться надо. Поэтому собрал на скорую руку на основе того что было под рукой - Modicon Micro (48 входов + 36 релейных выхода). Только для освещения и части вентиляции. Хватило в обрез. Прошло два года, на работе затишье появилось, в стройке напряг закончился, стал думать чем заняться в рабочее время свободное от работы :D

За время проживания система добавлялась, появилась панель управления (Овен СП307), радиодатчики температуры (самопал), подключилось управление отоплением и некоторые мелочи. Micro давно себя исчерпал по выходам, да и входов почти не осталось. Плюс скорость Modbus у него до 19200, при управлении светом с панели задержки заметны. А еще хочется прицепить хозблок к системе (освещение, вентиляция, ТТ котел), полив в планах и по мелочи, но много... В общем если расширять систему за счет удаленных модулей, то время обмена станет совсем неприличным. Да и PLC резервного нет и скорее всего не будет. Хотя конечно программировать по сравнению с микроконтроллером - одно удовольствие, да и отлаживать тоже.

Поэтому решил пилить свое - и полезно, и интересно. Тем более опыт есть, правда давно не практиковался, лет пять. Но глаза боятся - руки делают.

  • Лайк 2
Посилання на коментар
Поділитися на інших сайтах

Давненько у меня лежало несколько корпусов CP-22-83. Для такой поделки очень интересные да и симпатичные. Но не сказать что дешевые.

cp-22-83.jpg.617fb90fc7a67f9726868c05226568ab.jpg

От корпуса и начал отталкиваться. Сначала думал сделать пять блоков (1 этаж, 2 этаж, хозблок, разное и резерв. 24 входа + 20 выходов) Несколько вариантов компоновки перебрал, в итоге остановился на варианте, что блоков будет три - в доме и хозблоке, ну и резервный. Но уже не на моноплате, а с двумя платами, чтобы больше поместилось входов и выходов. Ставить монструозную Атмегу не стал, а скомпенсировал недостаток количества ног сдвиговыми регистрами. Да и разъем между платами тогда маленький, а корпус не резиновый! И с индикацией нашел понравившееся решение (подсмотрел в промышленном PLC).

Сейчас проект на стадии проверки печатной платы. Потому как динозавр я еще тот. На продвинутые САПРы не перешел в свое время, а теперь лень. Я еще на 580-х делал и 1816, разводя печатки на диаграммной бумаге (там шаг клеточки 2,5 мм был). Поэтому "малюю" схемы в sPlan, а печатки в Sprint-Layout. Печатка заказная, поэтому семь раз проверь, один раз закажи)))

  • Лайк 1
Посилання на коментар
Поділитися на інших сайтах

Что в модуле:

- 48 входов 24VDC с триггерами Шмитта и оптронами;

- 40 реле RM40 (8 реле переключающих изолированных друг от друга и 32 NO собранные в группы по 4 шт. с общим COM);

- 2 изолированных RS-485 (всегда использую протокол MODBUS RTU);

- часы реального времени с батарейкой. Их поставил не только ради времени, но и для энергонезависимого ОЗУ;

- развел одну ИМС I2C FRAM/FLASH (шоб було :D )

- индикация входов и выходов + 4 RGB светодиода (думаю будет питание/режим + два RS-485 + резерв)

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

Камень - Atmega xx4PA в корпусе TQFP44 есть от ATmega164PA до ATmega1284PA, сколько памяти понадобится - такой и поставлю.

Посилання на коментар
Поділитися на інших сайтах

Вот печатки:

1611319491_1.thumb.jpg.b0298aaf1d74444849e6f4cd1b2e5938.jpg

2143215125_1-2.thumb.jpg.3bf26d5da171ed6bb219463ded10e534.jpg

692814270_2.thumb.jpg.eafc1cae8081520f8cf963077a574cdd.jpg

34193581_2-2.thumb.jpg.2387259646852ab2b2694311bf7c1147.jpg

+ две кнопки, один ползунковый переключатель и 10 джамперов.

Индикация входов/выходов на основе трех VAX7219-KIT.

MAX7219-KIT-1.thumb.jpg.7004acd866992473f301b1e53143b81b.jpg

Посилання на коментар
Поділитися на інших сайтах

Как у меня реализовано управление освещением.

В доме все выключатели импульсные, шнейдеровская серия Уника. На выключатели идет 24VDC от отдельного БП (он же питает панель СП307 + модуль приемника радиодатчиков + клапан отопления на второй этаж) и оттуда на входа PLC Modicon Micro. Светильники сидят на реле PLC.

В освещении задействовано 38 входов и 28 выходов. В каждом помещении есть один светильник запитанный от бесперебойника. Если пропадает основное питание и в помещении включена какая-то группа, то включается "аварийный" светильник. На том же UPS с внешней АКБ и "синусоидой" на выходе, сидит PLC, газовый котел, насос теплого пола и в перспективе твердотопливный котел.

На выключателях обрабатывается два вида нажатия - короткое и длинное.

Короткое - более 50 мс. Включается/выключается соответствующая группа света.

Длинное - более 250 мс. Если горела хоть одна группа в помещении, то выключаются все, если нет, то наоборот, все включаются.

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

Возле кровати в спальне один из выключателей при длинном нажатии так же выключит весь свет на 1 этаже и улице (это чтобы жена вниз не спускалась, если я заснул на 1-м этаже, а свет не выключил :D ).

Выключатели вентиляции при кратком нажатии включат соответствующий вентилятор на 5 минут, а при длинном на 20 минут.

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

  • Лайк 1
Посилання на коментар
Поділитися на інших сайтах

Как у меня реализовано управление освещением.

В доме все выключатели импульсные, шнейдеровская серия Уника. На выключатели идет 24VDC от отдельного БП (он же питает панель СП307 + модуль приемника радиодатчиков + клапан отопления на второй этаж) и оттуда на входа PLC Modicon Micro. Светильники сидят на реле PLC.

В освещении задействовано 38 входов и 28 выходов. В каждом помещении есть один светильник запитанный от бесперебойника. Если пропадает основное питание и в помещении включена какая-то группа, то включается "аварийный" светильник. На том же UPS с внешней АКБ и "синусоидой" на выходе, сидит PLC, газовый котел, насос теплого пола и в перспективе твердотопливный котел.

На выключателях обрабатывается два вида нажатия - короткое и длинное.

Короткое - более 50 мс. Включается/выключается соответствующая группа света.

Длинное - более 250 мс. Если горела хоть одна группа в помещении, то выключаются все, если нет, то наоборот, все включаются.

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

Возле кровати в спальне один из выключателей при длинном нажатии так же выключит весь свет на 1 этаже и улице (это чтобы жена вниз не спускалась, если я заснул на 1-м этаже, а свет не выключил :D ).

Выключатели вентиляции при кратком нажатии включат соответствующий вентилятор на 5 минут, а при длинном на 20 минут.

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

 

Каждое короткое нажатие на выключатель (без фиксации), может увеличивать длительность работы на какое-то дискретное время (например 15 мин). Длинное (например 2+ секунды) может отключать.

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

Посилання на коментар
Поділитися на інших сайтах

toksoft, увеличивать время работы чего? Вентиляции? Тут датчики влажности нужны (со временем добавлю), а не усложнение алгоритма. Домочадцы у меня не программисты, зачем их загружать? За два года удобные и понятные для моей семьи алгоритмы найдены. И к ним привыкли. Я просто поделился с теми, кому это может быть интересно. Тому же InSAn может быть интересен способ короткое/длинное нажатие для его модуля.

P.S. Фиксации у моих выключателей и нет, импульсные. Нажатие дольше 250 мс считается длинным не зависимо от времени нажатия, сразу как время превысит порог. Кстати пороги могут различаться если использовать выключатели другого производителя. У себя я подбирал экспериментально, они у меня довольно жесткие и с большим ходом клавиши.

  • Лайк 1
Посилання на коментар
Поділитися на інших сайтах

toksoft, увеличивать время работы чего? Вентиляции? Тут датчики влажности нужны (со временем добавлю), а не усложнение алгоритма. Домочадцы у меня не программисты, зачем их загружать? За два года удобные и понятные для моей семьи алгоритмы найдены. И к ним привыкли. Я просто поделился с теми, кому это может быть интересно. Тому же InSAn может быть интересен способ короткое/длинное нажатие для его модуля.

P.S. Фиксации у моих выключателей и нет, импульсные. Нажатие дольше 250 мс считается длинным не зависимо от времени нажатия, сразу как время превысит порог. Кстати пороги могут различаться если использовать выключатели другого производителя. У себя я подбирал экспериментально, они у меня довольно жесткие и с большим ходом клавиши.

 

Есть определенные устоявшиеся стандарты:

 

attachment.php?attachmentid=638714&stc=1&d=1541663857

 

www.elkoep.com/media/files/download/item/files-12/l4_sec_elektronicka_rele_view_version_en.pdf

 

Зачем изобретать велосипед ?

В качестве стартового концепта, который нужно изрядно доработать - самое оно.

Untitled.jpg.a206f24c201849bf04042f15dad0fc03.jpg

Посилання на коментар
Поділитися на інших сайтах

За 5 лет экспериментов над своими домашними, было обнаружено и доказано что логика, которую реализовали Elko и, частично Schneider (у них есть свои фичи), "интуитивно понятна" и запоминается даже пожилыми людьми.

У многих в домах стоят "обычные" выключатели, иногда с фиксацией, иногда нет. Вот под оные и нужно подстраиваться. Ситуаций, в которых кто-либо еще на этапе строительства протянул кучу проводов к каждому из выключателей или розеток, можно перечислить на пальцах.

У большинства выключателей, dejitter 50 - 80ms. +/-. Проверено экспериментально. 250ms (короткое нажатие) это такой себе "компромис", требующий все-таки понимания (и запоминания) что и как. 1+s - разумный минимум.

Все включения/выключения (в т.ч. вентиляции), должны происходить:

 

 

1. Инициатива человека (Выключатель, интерфейс системы, мобильный или еще что-либо - например Alexa)

2. Заданная для данного конкретного момента времени программа

 

 

Нужно достаточно точно прописать все сценарии, т.е. например программа включила вентиляцию на одном из этажей, а человек решил "ну его нафиг". Что должно произойти ? Оставляем выключенной, т.е. прерываем программу навсегда ? До следующего eventа ?

  • Лайк 1
Посилання на коментар
Поділитися на інших сайтах

toksoft, спасибо за комментарии! Возможно Вы и правы. Но менять уже ничего не буду, по нескольким причинам:

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

2. я как раз тот самый "пересчитанный на пальцах" ))) который на этапе строительства протянул кабеля и провода везде где вспомнил. Индивидуальные кабеля, которые сходятся в один шкаф. От каждого выключателя, каждой розетки и каждой группы светильников. Поэтому мне и блочность как у InSAn не нужна.

3. алгоритмы отлажены, обмен с панелью и удаленными модулями тоже, теперь можно просто перенести это с Structured Text (EN 61131) на язык Атмеги и добавить то, что не мог сделать на PLC.

4. ГЛАВНАЯ причина - домашние привыкли жмакать на пимпочки как оно есть :D И у гостей не возникает трудностей с простыми действиями, типа включить и выключить свет.

P.S. Платы уже изготовлены трудолюбивыми китайцами и отправлены. Заказывал на JLCPCB. 27,05$ с доставкой за пять комплектов плат.

Змінено користувачем Автоматчик
Посилання на коментар
Поділитися на інших сайтах

Да и разъем между платами тогда маленький
Будет фото? :)

 

с индикацией нашел понравившееся решение (подсмотрел в промышленном PLC).
Подробнее, плз...

 

 

PS: Подписался :beer:

Посилання на коментар
Поділитися на інших сайтах

Будет фото?

Будет конечно, пока что с месяц ждать пока платы придут (условно-бесплатная доставка), даже детали еще не заказывал.

Разъем между платами типа NX1250-06SMS.

Подробнее, плз...

Вот фото:

183886087_viberimage.jpg.4e2b56ae82176d25aa4c4e6d8a4de11e.jpg 1050496829_viberimage2.thumb.jpg.674b472f4652d4c01b4d344ad47f08ec.jpg

Вид сбоку в телефоне не нашел(((

Смысл такой - стоят светодиодные сборки 4х10, похожие на те что в моем сообщении 4. А к ним приклеена маска. А сверху, с зазором, затемненный пластик. Такое видел у Шнайдера и у некоторых других производителей PLC.

У себя ставлю 3 KIT-набора с матрицами 8х8, буду индицировать состояние входов и выходов. К сожалению, и у нас, и в Китае, предлагают наборы только красного цвета. А брать россыпью, ради зеленого цвета индикации, получается в разы дороже (((

  • Лайк 1
Посилання на коментар
Поділитися на інших сайтах

  • 4 місяці потому...

Дошли руки освежить тему :-)

Зимой спаял один экземпляр, написал на ассемблере микро ОС :D с которой теперь общаюсь на уровне макросов, так намного легче алгоритмы реализовывать.

ОС обрабатывает входы (короткое нажатие, длинное нажатие, мгновенное состояние), выводит на реле и индикацию, работает с DS18B20 (4 канала), часами реального времени (чтение, уставки, коррекция), два канала RS-485 (Modbus RTU master/slave).

Макросы оперируют не с конкретными регистрами и байтами ОЗУ, а с предопределенными переменными (массивы входов/выходов, область слов пользователя (16 битные), область битов пользователя, системные слова и биты. Ну и т.д...

Написал и отладил алгоритм тот что сейчас есть в домашнем PLC, потмо дописал часть будущих расширений (электроотопление и подогрев воды). Твердотопливный котел буду дописывать позже ,когда обвяжу ТТ. Так же дописал и отладил SCADA :D для панели управления (у меня стоит Овен СП-307).

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

20190412_131817.thumb.jpg.19202146129d5ac556e2ef86bab194f0.jpg 20190412_131929.thumb.jpg.751a3415b3dc11a962213f67bf5d5945.jpg

20190412_132014.thumb.jpg.31306d349ca794f575c7fcd5a3c24887.jpg 20190412_132050.thumb.jpg.b7b989c21ca648557b5686266d83b176.jpg

20190412_132143.thumb.jpg.d740c0d5f216f8b14f7747aef5184e3a.jpg 20190412_132358.thumb.jpg.3f9c563900dcddaa7dd325e70ae7f0b5.jpg

20190412_132409.thumb.jpg.6bc46cfab382a5dafb31f7460a4604ba.jpg 20190412_132427.thumb.jpg.881618fbba979d6feb424414b4c688fc.jpg

20190412_132539.thumb.jpg.086650e625fd6221396df4542c9dfd78.jpg 20190412_132653.thumb.jpg.fd16918b13f9d4812ec8ce8d95daaddb.jpg

  • Лайк 4
Посилання на коментар
Поділитися на інших сайтах

Кстати, о разъеме между платами (InSAn ранее уточнял). NX1250-06SMS не пошел, слишком маленький шаг, намаялся опрессовывать провода, они постоянно отрывались... Плюнул, купил 10 метров провода ПВ-4 0,12 мм (толще не влезет в платы) и соединю платы напрямую. В общем с разъемом не додумал, а больший разъем не помещался на плате.

Ну и паять замаялся, какое-то затмение было, площадки развел маленькие, например оптроны пришлось паять со сдвигом, потому что ножки закрывали всю площадку. А так ничего, удивился даже что всего три ошибки на такие платищи - резистор подтяжки завтыкал, одна дорожка лишняя и одной не туда. Все же тому кто разводит в нормальном САПР намного легче, соответствие схеме гарантированно.

Главную ошибку забыл. 1 ряд реле (контакты 1СО) развел нормально, а остальные 4 ряда (контакты 1NO) в процессе многократных перекомпоновок умудрился зазеркалить. В итоге одна ножка на 1,5 мм не попадает в отверстие. И не просверлить другие. Пришлось эту ножку у каждого реле подгибать и припаивать к ней одножильный провод. всего 32 реле на плате. ОЧЕНЬ хлопотно. Была даже мысль плюнуть и перезаказать плату для реле. Но решил что пока время есть, буду страдать, а то пока платы придут, опять времени не будет.

 

Добавлено через 17 минут

Индикацией на VAX7219-KIT очень доволен. С учетом количества светодиодов очень дешево, ножек МК не занимает (SPI общий для ввода, вывода и индикации) и очень компактно.

На матрицу ложится маска напечатанная на обычной бумаге на новом картридже лазерника (см. фото выше) - отличный светофильтр, никаких левых засветок. А сверху оргстекло затонированное обычной автотонировкой. Еще напечатаю на пленку на лазернике рамку, чтобы не было видно "родные" отверстия в корпусе и неровные края окошек. Пленка будет под оргстеклом, а тонировка сверху.

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

  • Лайк 2
Посилання на коментар
Поділитися на інших сайтах

  • 9 місяців потому...

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

Первый блок несколько месяцев работает в ШУ хозблока, управляет отоплением от теплового аккумулятора (нагрев ТЕНами, насосы, обмен с модулем измерения параметров электросети и многоканальным модулем измерения температур). Выглядит вот так:

1.thumb.jpg.d8db99bd2d4ef8069a464868fffa5811.jpg2.thumb.jpg.0d3902921d418c3efcc37bf16c26d3e4.jpg3.thumb.jpg.59bdd978158ebba879f1a0d4063331e1.jpg4.thumb.jpg.7048c74efe824162f47eebd885712369.jpg

Сразу была проблема с помехоустойчивостью (рядом три пускателя включения ТЭНов), но вопрос решился коррекцией фьюзов микроконтроллера и благополучно забыт.

Сейчас собираю стенд для отладки ПО, летом буду делать апгрейд домашней системы.

Состоять будет из:

в ДОМЕ

- модуль управления (свет, отопление, вентиляция)

- два приемо-передатчика для работы с радиотермодатчиками

- модуль аналоговых входов

- панель Овен СП-307

- датчики (температура, контроль утечки воды, давление в СО и горсети воды, влажность и т.д.)

в ХОЗБЛОКЕ

- модуль управления (отопление, вентиляция, тепловой аккумулятор, твердотопливный котел)

- многоканальный модуль температур

- модулем измерения параметров электросети

- панель Овен СП-307

- датчики (температура, контроль утечки воды, влажность и т.д.)

Посилання на коментар
Поділитися на інших сайтах

Попутно начинаю думать об WEB-сервере для всего этого, чтобы можно было с компа или телефона менять уставки, вкл/выкл и т.п.

На распутье. Не хочется учить новый язык, у меня их в голове и так слишком много... Думается о реализации на ПК mini itx (он у меня есть) с программой WEB-сервера написанной на Delphi. Кто что думает?

Посилання на коментар
Поділитися на інших сайтах

Попутно начинаю думать об WEB-сервере для всего этого, чтобы можно было с компа или телефона менять уставки, вкл/выкл и т.п.

На распутье. Не хочется учить новый язык, у меня их в голове и так слишком много... Думается о реализации на ПК mini itx (он у меня есть) с программой WEB-сервера написанной на Delphi. Кто что думает?

 

 

Вроде бы с этими задачами справляются разные малины

 

 

Можно про фьюзы поподробнее, от атмела отказался, но интересно

Посилання на коментар
Поділитися на інших сайтах

Можно про фьюзы поподробнее, от атмела отказался, но интересно

1650402173_.jpg.d9a83d0730bbdc7d748c5120832d3f6e.jpg

Посилання на коментар
Поділитися на інших сайтах

Створіть акаунт або увійдіть у нього для коментування

Ви маєте бути користувачем, щоб залишити коментар

Створити акаунт

Зареєструйтеся для отримання акаунта. Це просто!

Зареєструвати акаунт

Увійти

Вже зареєстровані? Увійдіть тут.

Увійти зараз
×
×
  • Створити...