DCC Step Motor Decoder

Аксессуарный декодер для макета железной дороги

Декодер для управления шаговым двигателем

Декодеры

Предназначен для управления одним аксессуаром на основе шагового двигателя в сети DCC, например, приводом стрелки. Декодер подключается к DCC (рельсам) и внешнему питанию 5-12В постоянного тока. Имеет выход для 4-полюсного шагового мотора с напряжением 3.3В и током до 800мА, и выходы-индикаторы положения.

DCC Step Motor Decoder

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

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

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

Настройки декодера
CV Назначение По-умолчанию Диапазон Пояснение
CV1 Адрес декодера 5 1...254  
CV2 Roco адресация 1 0-1 Смещение адреса на 4
СV3 Кол-во шагов 45 1...254 Мотор двигается на х10
CV4 Скорость 30 1...254 Скорость вращения
CV5 Режим инициализации 0 0...3

0 - принудительный перевод "влево"
1 - принудительный перевод "вправо"
2 - опциональный* перевод "влево"
3 - опциональный* перевод "вправо"

CV6 Зарезервировано 0   Для работы со внешним датчиком положения
CV10 Зарезервировано 0   Текущая позиция

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

Декодер может быть возвращен к начальным установкам путем записи CV8 в режиме программирования.

Возможно ручное управление декодером при помощи аппаратной кнопки.

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

Элементная база
Элемент Обозначение Номинал
Arduino Pro-mini ATMega 328 5V 16MHz
Драйвер MX1508 Mini L298N
Стабилизатор AMS1117 3.3V
Оптопара OK1 6N137
Конденсатор C1 10uF 16V
Диод D1 1N4148
Резистор R1 3.3K 1/2W
Резистор R2 10K 1/4W
Резистор R3 10K 1/4W
Резистор R4 1K 1/4W
Резистор R5 1K 1/4W

Двойной декодер

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

DCC Step Motor Decoder Dual

Функционально и технически идентичен предыдущему декодеру, за исключением отсутствия дополнительного разъема. Выходы дополнены разъемами подключения для второго двигателя и индикации его положения. Управление двигателями осуществляется параллельно т.е. работа одного не блокирует работу другого, например, два подключенных привода стрелок могут двигаться одновременно.

Настройки отличаются и дополнены параметрами управления вторым двигателем.

Настройки декодера
CV Назначение По-умолчанию Диапазон Пояснение
CV1 Адрес декодера 5 1...254 Для второго адрес+1
CV2 Roco адресация 1 0-1 Смещение адреса на 4
СV13 Кол-во шагов 45 1...254 Мотор двигается на х10
CV14 Скорость 30 1...254 Скорость вращения
CV15 Режим инициализации 0 0...3 0 - принудительный перевод "влево"
1 - принудительный перевод "вправо"
2 - опциональный перевод "влево"
3 - опциональынй перевод "вправо"
CV16 Зарезервировано 0   Текущая позиция
CV23 Кол-во шагов 2 0 0...254 Для второго мотора (0 - использовать CV13)
CV24 Скорость 2 0 0...254 Для второго мотора (0 - использовать CV14)
CV25

Режим инициализации 2

(для второго мотора)

0 0...3 0 - принудительный перевод "влево"
1 - принудительный перевод "вправо"
2 - опциональный* перевод "влево"
3 - опциональный* перевод "вправо
CV26 Зарезервировано 0   Текущая позиция второго мотора

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

Ручное управление вторым двигателем осуществляется при помощи двойного нажатия кнопки.

Элементная база дополнена следующими позициями

Элементная база
Элемент Обозначение Номинал
Драйвер-2 MX1508 Mini L298N
Резистор R6 1K 1/4W
Резистор R7 1K 1/4W

Двойные декодеры

Шаговый двигатель

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

Шаговый двигатель с редуктором

Декодеры подходят и для других вариантов шаговых двигателей, которые есть в продаже.

КИТ для самостоятельной сборки

Платы декодеров

Данные декодеры вы можете приобрести у меня в виде КИТа для сборки стрелочного привода в масштабе 1:87 (H0) для стрелок производства Peco. В комплекте: печатная плата, набор элементов для сборки декодера, шаговый двигатель с редуктором, шлейф для подключения, разъемы, детали для выбранного варианта привода стрелки. Так же по вашему заказу может быть изготовлен привод стрелки для другого производителя и масштаба. Если заинтересовало - пишите!

Инструкция по сборке декодера

Сначала устанавливаются SMD компоненты: конденсатор C1 и стабилизатор AMS1117.
Затем компоненты в порядке убывания термостойкости: терминалы подключения питания и DCC, пины включения режима программирования J1, и пины подключения моторов и обратной связи, кнопка, резисторы и диод. Потом оптопра OK1.

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

Для монтажа ардуино следует обрезать один ряд пинов из комплекта согласно отверстиям на плате декодера. Вставить пины в плату и расположить на них ардуино:

  • для одинарного декодера так, чтоб кнопка сброса на ардуино была ближе к краю платы декодера, а вывод DTR ардуино ближе к центру платы декодера (см. фото выше);
  • для двойного декодера так, чтоб кнопка сброса на ардуино была ближе к центру платы декодера, а вывод GND ардуино ближе к углу платы декодера (см. фото выше).

Затем припаять ардуино, перевернуть плату декодера придерживая ардуино и припаять пины к плате.