Модуль управления светом на 7 - каналов (МУС-7) для умного дома

Хочу вам представить первый модуль, который буду встраивать в умный дом, точнее мне нужно будет три таких. Данный контроллер имеет семь входов и выходов, каждый выход может управлять нагрузкой 12 в до 500 мА. Управление осуществляется выключателями подключенными ко входам и компьютером по RS-485. Впереди конечно еще модули другого назначения, а пока поговорим об этом.

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

Подобных проектов полно но все они сделаны на основе готовой платы Adrduino и подключенным к ним периферийным устройствам. И все это с проводами монтажной площадкой и прочей мелочью  запихнуто в какой-нибудь контейнер для еды. Поэтому многие злобные людишки кричать на форумах,  что ардуино - только для мигания светодиодами и на серьезные вещи не рассчитан . Попробуем данным проектом развенчать эти стереотипы и показать что не только светодиодами но и 220В-ми лампочками :)).

 

Модуль построен на микроконтроллере atmega328pu, его простейшей обвязки, представляющих из себя два конденсатора и кварца, на входах подтягивающие резисторы на 10кОм , на выходах оптопары PC817, резисторы на 1кОм и микросхема ULN2003(Которая представляет из себя сборку на сем каналов в каждом из которых по два транзистора и защитный диод от обратных токов, возбуждаемых индуктивностью катушек реле).  Для подключения к центральному серверу  используется микросхема MAX485, позволяющая осуществлять связь по двум проводам на расстоянии до 1200 метров по RS485. Корпус приобретен на "ЧИП и ДИП".

 

 

 

Плата изготовлена методом ЛУТ.

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

На фото ниже тестовый стенд с внешними силовыми реле, питание обмоток 12 в постоянного тока, коммутируемое напряжение 250 в  до 10 А.

Этикетка по которой можно понять принцип расключения.

  • «+12В-» - питание модуля от 6 до 18 вольт постоянного тока.
  • «P1»  - «P7» - Клейма подключение реле минусовой контакта обмотки реле (контакт рвется на микросхеме ULN2003), а второй контакт подключается к «+» контактов «+12В- РЕЛЕ».
  • «+12В- РЕЛЕ» - данные клейма предназначены для подключения управляющего питания реле  от 5 до 40 вольт в зависимости от типа реле, если вы будете запитывать   реле и модуль от одного БП, то необходимо просто прокинуть проводник между «+» - ми питания модуля и реле.
  • «+5В» - выход пять вольт  подключается к одному из контактов выключателя, а второй контакт к «S1» - «S7».
  • «+5В-» - выход  5В для питания дополнительной перефирии.
  • RS485 – разъемы подключения двухпроводной линии связи, между модулями и ПК.
  • Светодиоды «1» - «7» индикация включения канала.
  • Светодиод «Д» - индикация обмена данными по линии связи RS485.
  • Светодиод «П» - индикация наличия питания модуля.

Небольшое видео с демонстрацией работы, так сказать на стенде.

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

Для управления модулем с ПК применяется команда в шестнадцатиричном формате, которые можно передать из программы Qt_comport -

00 7f 10 00 00 00 02 00 01 00 01 00 93 

где «00» – означает начало команды,   второй  символ адрес модуля от «01» до «127», которому предназначена команда, третий символ команда:

  •     0x03 (03) - чтение значени из регистров хранения
  •     0x10 (16) - запись значения в регистр хранения
  •     0x48 (72) - смена адресса устройства

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

Категории

Теги

Последние записи

Статистика

Яндекс.Метрика
© 2014 - 2018 OKbit.ru - умный дом. Все права защищены.