Желание собрать радиоуправление у меня созрело достаточно давно. Но дальше поиска схем, с последующим пониманием, что прошивку автор не даст, дело не продвинулось. В итоге, затея была похоронена в стадии развития. Но недавно мне на глаза попались модули, именуемые NRF24L01+ (стоит 0.6$ на Ali), и уже позабытое желание собрать радиоуправление загорелось с новой силой.
В конечном счете, была разработана схема радиоуправления, а так же несколько сопутствующих устройств. Об одном из них и пойдет речь в данной статье. К слову, в следующих статьях будет описано само радиоуправление, а так же зарядное устройство для li-ion аккумуляторов.
Регулятор оборотов двигателя — это название слышал любой моделист, а в особенности те, кто собирал авиа- и судомодели. Это устройство незаменимо, потому что оно обеспечивает плавное управление скорость двигателя.
Существует множество вариантов исполнения таких регуляторов: на микроконтроллерах, на жесткой логике и даже на дискретных компонентах. После просмотра уже готовых схем, я понял что придется делать что-то свое — на логике собирать не хотелось, на дискретных компонентах выходило уж очень громоздко. Найденные схемы на микроконтроллерах были в общем-то неплохими, да вот лишь вариант собирать то, принцип действия чего я не смогу объяснить, меня не привлекал (а прошивку авторы выкладывать не спешили).
После всего этого и была разработана и собрана схема.
Итак, краткие характеристики (при номиналах деталей, указанных на схеме):
- Диапазон питающих напряжений: 7 … 35В
- Максимальный ток: 3А
- Длительность управляющего импульса: 1 … 2мс
- Рекомендованный период импульсов: 20мс
Силовая часть представляет собой Н-мост с дополнительными маломощными управляющими транзисторами. Управление оборотами двигателя производится ШИМ сигналом, генерируемым МК. Скважность ШИМ зависит от длительности импульса, поступающего на вход устройства.
Обработку сигналов и управление транзисторами в этой схеме выполняет микроконтроллер ATtiny2313. Этот выбор ничем не обусловлен, кроме того, что он у меня валялся под рукой на момент проектировки устройства. Изначально, в схеме планировалось использование полевых транзисторов, но позже я от них отказался в пользу более доступных советских биполярников (которых практически у каждого целый ящик). Конечно, это наложило свой отпечаток на параметры: максимальный ток значительно снизился, как и цена девайса.
Как уже упоминалось, напряжение питания устройства может варьироваться от 6 до 30 вольт. Это обусловлено границами напряжения, которое может выдержать интегральный стабилизатор LM7805, а так же двигатель (на него подается напряжение, отличное от питающего примерно на 1 вольт).
Максимальный ток зависит от применяемых транзисторов. В моем варианте — это КТ816/817, максимальный ток коллектора которых равен трем амперам.
В качестве маломощных управляющих транзисторов использованы распространенные КТ315.
Для более точного измерения длительности управляющего (серво) импульса был применен кварцевый резонатор на частоту 8МГц.
Диоды D1 — D4 желательно монтировать. Будет работать и без них, но вопрос в том, как долго.
Печатная плата устройства выполнена на одностороннем фольгированном материале (стеклотекстолит, гетинакс). Дорожки выделенные красным — перемычки с лицевой стороны. В моем варианте транзисторы монтируются вне платы на радиаторе.
Печатная плата устройства (синие проводники — обратная сторона):
Принцип работы
При получении импульса, запускается 16 битный таймер, который останавливается по спаду импульса. Таймер настроен таким образом, что каждый его такт — это 1мкс, что позволяет упростить вычисления. После определения длительности импульса происходит сравнение с заданной величиной. Результат записывается в регистр OCR1A/B в зависимости от положения джампера и длительности импульса.
Исходный код приведен ниже. Так же его можно взять в приложении к статье.
В наладке устройство не нуждается, и должно работать сразу после правильной сборки и прошивки микроконтроллера. С последним будьте осторожны — не отключите ненароком бит RSTDISBL. Это может стоить вам нового микроконтроллера (если у вас конечно нет параллельного программатора).
Транзисторы КТ315 можно заменить любыми маломощными кремниевыми транзисторами структуры n-p-n. КТ816/817 — аналогичными по параметрам (или более мощными). К примеру, КТ818/819 и т.д. Резисторы можно заменить на аналогичные по мощности с допуском 20-30% от номинального сопротивления. Линейный стабилизатор LM7805 можно заменить на отечественный аналог КРЕН5А, а так же применить импульсный стабилизатор, но придется переработать печатную плату.
Фото , а так же видео работы устройства можно увидеть ниже.
Извиняюсь за не очень презентабельный вид платы — изначально это был тестовый вариант «на первое время». Но потому что устройство с первого раза заработало потому что от него требовалось, то «временный вариант» перерос в постоянный.
Список радиоэлементовОбозначение
Тип
Номинал
Количество
ПримечаниеМагазинМой блокнот
U2
МК AVR 8-битATtiny2313A1
DIP-20U3
Линейный регуляторL7805AB1
TO-220Q1, Q2
Биполярный транзисторКТ816Б2
Индекс любойQ3, Q4
Биполярный транзисторКТ817Б2
Индекс любойQ5-Q8
Биполярный транзисторКТ315Б4
Индекс любойD1-D4
Выпрямительный диод1N41484
ОпциональноC1, C2
Конденсатор33 пф2
0805C3, C4
Конденсатор100 нф2
0805C5
Конденсатор470 мкФ1
35ВR5
Резистор10 кОм1
0805R6-R8
Резистор1 кОм3
0805R11
Резистор100 Ом1
0805JP1
ПереключательДжампер1
2-х контактныйX1
Кварцевый резонатор8МГц1
НизкопрофильныйJ8
Разъемы3-х контактный1
PLS-40J9
Разъемы2-х контактный1
PLS-40J13
Разъемы4-х контактный1
PLS-40Добавить все
Скачать список элементов (PDF)
Прикрепленные файлы:
- MotorRegTiny2313.zip (102 Кб)