ШИМ контроллер с интерфейсом RS485
#1
    Модуль ШИМ может использоваться для управления потребителями, питающимися от низкого напряжения и потребляющими значительный ток, например двигателями постоянного тока или источниками света. Он позволяет не только включать, но и регулировать мощность (яркость) и получать эффект затемнения / осветления / плавного пуска. Им можно управлять с помощью компьютера, оснащенного любой микроконтроллерной системой, например Raspberry или Arduino с преобразователем UART / RS485.

Принципиальная схема модуля ШИМ представлена на рисунке. За управление отвечает микроконтроллер Attiny24, стабилизированное напряжение обеспечивает 78M05, связь с шиной RS485 осуществляется через MAX485.

Исполнительные элементы представляют собой два транзистора MOSFET-N. Нагрузочная способность зависит от типа используемых транзисторов. В схеме модели используется IRL3803 с максимальным напряжением 30 В и очень большим током стока, но без дополнительного радиатора он не должен превышать 5 А.

Можно использовать транзисторы другого типа и получать другие параметры, но они должны быть транзисторами, "совместимыми на логическом уровне". На рисунке показан способ подключения нагрузки к модулю ШИМ. Следует помнить, что индуктивные нагрузки, например двигатели или реле, требуют диода (1N4007) для защиты от перенапряжения.

Управление модулем осуществляется по шине RS485 с помощью простых команд. Управляющая команда должна начинаться со строки «P x x», где «xx» - это адрес модуля в диапазоне 00 ... 99. В случае цифрового управления остальная часть команды должна принимать один из трех вариантов:
  • "= 1 <CR>" - включает выход,
  • "= 0 <CR>" - выключает выход,
  • "=? <CR>" - возвращает ответ системы, содержащий текущее состояние выхода.

Однако в случае управления ШИМ команда должна иметь вид "= vvv, ddd <CR>", где: "vvv" - значение коэффициента заполнения формы сигнала ШИМ в диапазоне 0 ... 255, " ddd "- коэффициент задержки, с которым это будет достигнуто, ранее указанное значение заполнения. Возможный диапазон 0 ... 255.

Запрос о состоянии выхода возвращает ответ в виде P xx = vvv <CR>, где «xx» - это адрес модуля, а «vvv» - текущее значение коэффициента ШИМ. Когда вывод управляется цифровым способом, значение будет 000 или 255. Во всех случаях в командах нет пробелов, а <CR> - это символ конца строки - значение ASCII, равное 0x0D.

Схема требует первоначальной настройки - понадобится терминал с интерфейсом RS485, например конвертер AVTMOD14, подключенный к ПК, и программа Bray Terminal +. Установка перемычки в положение 1 запускает автоматическую отправку состояния выхода.

Эта функция может быть активирована только на одном модуле на всей шине и только в том случае, если нет ведущего. Примерно каждые 4 секунды он отправляет на шину команду со статусом выхода. Это может быть полезно для идентификации модулей, поскольку команда содержит адрес модуля.

Установка перемычки в положение 2 и последующее включение питания модуля восстановит адрес по умолчанию со значением «00». Установка перемычки в положение 3 и включение питания модуля приводит к переходу в режим смены адреса.

Модуль отправляет значение текущего адреса, а затем ожидает ввода нового значения. После подтверждения клавишей Enter новое значение будет сохранено, и схема будет готова к работе. Следует помнить, что второй выход модуля автоматически увеличивает адрес на единицу, поэтому модулям следует назначать адреса, увеличенные на 2.

Файлы вложений Эскизы