Wiren Board 5: Гибкость И Модульность

Всем привет! Недавно мы писали об этом ( один раз , И два ) что они выпустили новую версию контроллера для автоматизации — Wiren Board 5. Сегодня мы подробно поговорим о, пожалуй, самом главном в контроллере — его модулях расширения.



Wiren Board 5: гибкость и модульность

Зачем это нужно? Первой нашей идеей было сделать достаточно универсальный контроллер для домашней и коммерческой автоматизации - с разными проводными и беспроводными интерфейсами, RS-485, входами для подключения кнопок, реле и т.д. Преимуществом такого подхода является очень высокое соотношение функциональность/цена: за небольшие деньги пользователь получает кучу интерфейсов.

Опыт работы с первыми версиями контроллеров показал, что обычно используется лишь несколько интерфейсов.

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

Если подключены кнопки, счетчики и датчики с выходами «сухой контакт», то соответствующих входов нужно много, а их недостаточно и т.д. Часто клиенты просят очень специфические функции.

Конечно, можно «перекроить» контроллер для реализации нужного функционала, но запуск новой аппаратной ревизии, даже с небольшими изменениями, — это большое дело и занимает 2-3 месяца:

  • Четырехслойная плата означает длительные сроки производства как прототипов, так и серий.

  • Платы такой сложности плохо паяются вручную — серию надо отправлять на автоматическую установку, а не на ручную установку.

  • Каждая новая версия платы требует нового оборудования и программного обеспечения для тестирования.

Из-за этого мне бы очень хотелось иметь такой контроллер:
  • Базовый контроллер с базовыми функциями и множеством возможностей для расширения.

  • Ряд простых плат расширения, «без мозгов», с удобным подключением.

Эта схема имеет следующие преимущества:
  • К контроллеру легко добавить определенные функции.

    Платы расширения могут быть легко изготовлены для заказчика.

    Они двухслойные, просты в конструкции и удобны для ручной пайки.

  • Новые доработки (исправление ошибок, улучшение конструкции) контроллера и плат расширения производятся отдельно.

    Разработка и запуск ускоряются.

В результате долгих размышлений родилась модульная конструкция WB5. Первый тип модулей представляет собой микросборки, припаянные к плате контроллера.

  • GSM (при установке на автоматическую линию на часть контроллеров модуль не устанавливаем).

    Это неудобно, но другого пути они не придумали.

  • Wi-Fi и радио 433 МГц.

    Маленькие платки паяются на собственных мощностях перед сборкой партии для заказчика.

Расскажем подробнее о других видах.

Мезонинные модули

Wiren Board 5: гибкость и модульность

Данные модули устанавливаются на втором этаже внутри корпуса на DIN-рейку:

  • Батарейный модуль.

    Нам пришлось немало повозиться с его разработкой.

    Там все сложно, но не интересно.

  • Второй Ethernet (скоро)
  • Дисплей (планируется)
Модули расширения.

Это небольшие платочки, которые размещаются в контроллере вертикально.

Контроллер Wiren Board 5 имеет для них два слота, по три клеммных колодки на каждый слот. Гребни несут питание, интерфейсы UART, SPI, I2C и GPIO. При сборке платы прижимаются к верхней части корпуса, чтобы они не могли выпасть из-за вибрации.



Wiren Board 5: гибкость и модульность



Wiren Board 5: гибкость и модульность



Wiren Board 5: гибкость и модульность

Уже разработаны: -РС-232. -МОЖЕТ (изолированный) -RS-485 (изолированный) -ADC - (скоро) входы напряжения, входы 0–20 мА, датчики PT100 и PT1000 -DAC - выходы 0-10В -3 входа с сухими контактами -GPS/ГЛОНАСС -Дополнительный 1-проводной -карта microSD -Реле SPDT 6А В принципе они просты, о схемотехнике рассказывать особо нечего, так что идем дальше.

Модули ввода-вывода.

Но стоит рассказать об этом типе подробнее.

Часто возникают задачи, когда требуется большое количество каналов ввода-вывода — подключение счетчиков импульсов, управляющих контакторов и т. д. В этом случае подключаем внешние, боковые модули, подключаемые к контроллеру последовательно, до 8 штук.

Модуль ввода-вывода требует дополнительных GPIO. Проще всего это сделать с помощью так называемых расширителей GPIO через I2C. Мы используем расширители MCP23008 и MCP23016. У них три адресных контакта, поэтому на шине можно подключить до 8 устройств.

Адреса распределяются так — 000 100 010 001 — последовательно в модулях.

Адреса на модулях ввода инвертируются и они получают адреса 111 011 101 110. Это позволяет подключить до 8 штук (4+4) и в дальнейшем автоматически определять их тип – вход или выход.

Wiren Board 5: гибкость и модульность

Слева направо модули: ТТЛ-входы/выходы, «сухие контакты», «Выключатель верхнего уровня», «Входы 220В», релейный блок.

Подробнее о каждом:

Релейный блок.

8 реле на 10А при 230В, с контактной искрозащитой на варисторах.

Для снижения потребления и нагрева после включения реле можно уменьшить ток на катушке управления в 2 раза.

Самый простой способ — использовать схему, как на рисунке 1 — Включить реле с двумя транзисторами, один с резистором.

Подаем сигнал - оба транзистора открываются - течет номинальный ток, через время R1C1 транзистор Q1 закрывается - ток течет через R2. Уменьшив ток в 2 раза, мы уменьшим потребление в 2 раза.



Wiren Board 5: гибкость и модульность

Более разумный способ управления реле — использовать ШИМ.

Тогда, уменьшив ток в 2 раза, мы уменьшим потребление в 4 раза.

Хорошо иметь микроконтроллер: у него много шим-каналов, и управлять им можно напрямую с помощью транзистора.

Но что делать, если ШИМ нет? Нам нужно это сделать.

Возьмем 555-й таймер, а точнее его реинкарнацию MIC1557, и позволим ему сгенерировать для нас ШИМ с коэффициентом заполнения 50%.

Собираем логический элемент «ИЛИ» с помощью диодов.

Итак, при включении любого из реле таймер отключается и на реле подается полное напряжение 5В.



Wiren Board 5: гибкость и модульность



Модуль «Входы 220В»

Модуль определения наличия напряжения в сети.

8 каналов.

Самое простое решение для контроля 220 В – оптопара с резистором.

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

А так как входов 8, то на плате будет очень жарко.

Существуют разные способы снижения температуры.

Например, можно использовать оптопару с транзисторным выходом Дарлингтона (большой CTR), а вместо резистора использовать конденсатор.

Конденсатор мы не ставили, а применили следующий прием: если посмотреть на характеристику «CTR от входного тока» оптопар, то можно увидеть, что кривая имеет пик при токе 1-2 мА.

Таким образом, если подать ток короткими импульсами по 1 мА, можно добиться высокого CTR при низком среднем входном токе.

Динистор и конденсатор формируют для нас эти импульсы.



Wiren Board 5: гибкость и модульность



Wiren Board 5: гибкость и модульность

Пояснения к схеме: R4-R6 заряжают С2, при достижении ~35В срабатывает динистор, а R3 устанавливает ток 1-2 мА через оптопару.

D1 защищает оптопару от переполюсовки.

R1 C1 усредняет импульсы.

Модуль сухих контактов Для подключения кнопок, счетчиков импульсов и т.п.

Вход срабатывает при замыкании на землю.

Имеется групповая гальваническая развязка.

Защита от подачи напряжения до 30 В.

ТТЛ-модуль ввода/вывода Это GPIO с защитой от перенапряжения на полипредохранителе и защитным диодом.

Уровни - 5В ТТЛ.

Модуль «Выключатель стороны высокого напряжения» Предназначен для управления низковольтной нагрузкой (на выход выдается напряжение 12-45В, ток до 0,5А).

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

БТС4880Р .

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

P.S. Наша компания расширяется, и мы ищем в команду еще одного системного программиста для Linux — для разработки программного обеспечения для наших устройств.

Задачи интересные, условия гибкие, код пишем прямо на github .

Подробности в Описание работы .

Теги: #Компьютерное железо #Сделай сам или Сделай сам #Интернет вещей #Умный дом #автоматизация #электроника #проводная плата #умный дом

Вместе с данным постом часто просматривают:

Автор Статьи


Зарегистрирован: 2019-12-10 15:07:06
Баллов опыта: 0
Всего постов на сайте: 0
Всего комментарий на сайте: 0
Dima Manisha

Dima Manisha

Эксперт Wmlog. Профессиональный веб-мастер, SEO-специалист, дизайнер, маркетолог и интернет-предприниматель.