- •Структура регулятора скорости бесколлекторного двигателя (esc)
- •Техническая реализация шим сигнал на 6 ключей
- •Напряжение от трех фаз, напряжение средней точки
- •Датчик тока и контроль напряжения питания
- •Сигнал, задающий обороты двигателя.
- •Дополнительные сигналы
- •Модуль силовых ключей
- •Модуль датчиков
- •Питание
- •В завершение
- •Обратная связь (контроль напряжения фаз двигателя)
- •Датчики Холла
- •Измерения аналоговых сигналов
- •Возможности прошивки
- •Работа регулятора Включение
- •Настройка регулятора
- •Назначение настроек:
Обратная связь (контроль напряжения фаз двигателя)
Напряжение фаз двигателя W,V,U через резистивные делители W – (R17,R25), V – (R18, R24), U – (R19, R23) поступают на входа контроллера ADC0(PC0), ADC1(PC1), ADC2(PC2). Эти выводы используются как входы компараторов. (В примере описанном в AVR444.pdf от компании Atmel применяют не компараторы, а измерение напряжения с помощью ADC (АЦП). Я отказался от этого метода, поскольку время преобразования ADC не позволяло управлять скоростными двигателями). Резистивные делители выбираются таким образом, чтобы напряжение, подаваемое на вход микроконтроллера, не превышало допустимое. В данном случае, резисторами 10К и 5К делится на 3. Т.е. При питании двигателя 12В. на микроконтроллер будет подаваться 12В*5К/(10К+5К) = 4В. Опорное напряжение для компаратора (вход AIN1) подается от половинного напряжения питания двигателя через делитель (R5, R6, R7, R8). Обратите внимание, резисторы (R5, R6) по номиналу такие же, как и (R17,R25), (R18, R24),(R19, R23). Далее напряжение уменьшается вдвое делителем R7, R8, после чего поступает на ногу AIN1 внутреннего компаратора микроконтроллера. Переключатель JP1 позволяет переключить опорное напряжение на напряжение “средней точки” формируемое резисторами (R20, R21, R22). Это делалось для экспериментов и себя не оправдало. Если нет в необходимости, JP1, R20, R21, R22 можно исключить из схемы.
Датчики Холла
Поскольку регулятор универсальный, он должен принимать сигналы от датчиков Холла в том случае, если используется двигатель с датчиками. Предполагается, что датчики Холла дискретные, тип SS41. Допускается применение и других типов датчиков с дискретным выходом. Сигналы от трех датчиков поступают через резисторы R11, R12, R13 на переключатели JP4, JP5, JP6. Резисторы R16, R15, R14 выступают в качестве подтягивающих резисторов. C7, С8, С9 – фильтрующие конденсаторы. Переключателями JP4, JP5, JP6 выбирается тип обратной связи с двигателем. Кроме изменения положения переключателей в программных настройках регулятора следует указать соответствующий тип двигателя (Sensorless или Sensored).
Измерения аналоговых сигналов
На вход ADC5(PC5) через делитель R5, R6 подается напряжения питания двигателя. Это напряжение контролируется микроконтроллером.
На вход ADC3(PC3) поступает аналоговый сигнал от датчика тока. Датчик тока ACS756SA. Это датчик тока на основе эффекта Холла. Преимущество этого датчика в том, что он не использует шунт, а значит, имеет внутреннее сопротивление близкое к нулю, поэтому на нем не происходит тепловыделения. Кроме того, выход датчика аналоговый в пределах 5В, поэтому без каких-либо преобразований подается на вход АЦП микроконтроллера, что упрощает схему. Если потребуется датчик с большим диапазоном измерения тока, Вы просто заменяете существующий датчик новым, абсолютно не изменяя схему.
Если Вам хочется использовать шунт с последующей схемой усиления, согласования – пожалуйста.
Задающие сигналы
Сигнал, задающий обороты двигателя, с потенциометра RV1 поступает на вход ADC4(PC4). Обратите внимание на резистор R9 – он шунтирует сигнал в случае обрыва провода к потенциометру.
Кроме того, есть вход RC сигнала, который повсеместно используется в дистанционно управляемых моделях. Выбор управляющего входа и его калибровка выполняется в программных настройках регулятора.
UART интерфейс
Сигналы TX, RX используются для настройки регулятора и выдачи информации о состоянии регулятора – обороты двигателя, ток, напряжение питания и т.п. Для настройки регулятора его можно подключить к USB порту компьютера, используя FT232 переходник. Настройка выполняется через любую программу терминала. Например: Hyperterminal или Putty.
Прочее
Также имеются контакты реверса – вывод микроконтроллера PD3. Если замкнуть эти контакты перед стартом двигателя, двигатель будет вращаться в обратном направлении.
Светодиод, сигнализирующий о состоянии регулятора, подключен к выводу PD4.
Силовая часть
Драйвера ключей использовались IR2101. У этого драйвера одно преимущество – низкая цена. Для слаботочных систем подойдет, для мощных ключей IR2101 будет слабоват. Один драйвер управляет двумя “N” канальными MOSFET транзисторами (верхним и нижним). Нам понадобиться три таких микросхемы.
Ключи нужно выбирать в зависимости от максимального тока и напряжения питания двигателя (выбору ключей и драйверов будет посвящена отдельная статья). На схеме обозначены IR540, в реальности использовались K3069. K3069 рассчитаны на напряжение 60В и ток 75А. Это явный перебор, но мне они достались даром в большом количестве (желаю и Вам такого счастья).
Конденсатор С19 включается параллельно питающей батареи. Чем больше его емкость – тем лучше. Этот конденсатор защищает батарею от бросков тока и ключи от значительной просадки напряжения. При отсутствии этого конденсатора Вам обеспечены как минимум проблемы с ключами. Если подключать батарею сразу к VD – может проскакивать искра. Искрогасящий резистор R32 используется в момент подключения к питающей батарее. Сразу подключаем “–” батареи, затем подаем “+” на контакт Antispark. Ток течет через резистор и плавно заряжает конденсатор С19. Через несколько секунд, подключаем контакт батареи к VD. При питании 12В можно Antispark не делать.
