Почему двигатель постоянного тока не двигается при низких значениях OCR

Я впервые использую двигатель постоянного тока 6 В и установил таймер на atmega328p для создания ШИМ-сигнала, который затем поступает на H-мост (L293D). Мой вопрос заключается в том, почему, например, при использовании 8-битного таймера с предделителем 256, если я устанавливаю OCR ниже 80, двигатель не может начать движение, но если я использую источник питания, напрямую подключенный к двигателю, он работает отлично на любое напряжение?

Другими словами: (80/256)*100% = рабочий цикл 31% ---> 6 В * 31% = 1,86 В

Когда я использую источник питания с 1,86 В до 0 В, двигатель движется.

По какой причине это происходит и как я могу заставить двигатель двигаться с меньшей скоростью, если я не могу использовать низкие значения? Я пытаюсь сделать ПИД-управление для управления положением двигателя, я еще не начал программировать ПИД-регулятор, но я уверен, что ему понадобится небольшой ШИМ-сигнал.

Двигатель имеет редуктор с передаточным числом 10:1.

Спецификация двигателя: Micro DC-Motor Modellspezifikationen

Какой мотор и какая частота ШИМ?
Это происходит с каждой частотой ШИМ, но значение OCR меняется. Я тестировал с 8-битным таймером и 16-битным таймером в режиме Fast PWM и с правильной фазой PWM и со всеми прескалерами. На данный момент я использую 16-битный таймер в режиме фазовой коррекции без предварительного делителя, что означает, что частота ШИМ составляет 122 Гц. Спецификация двигателя: ecksteinimg.de/Datasheet/MO01069/Datenblatt.pdf
Ваша частота ШИМ слишком низкая. Она должна быть не менее 3 кГц. Более высокая частота ШИМ делает ток двигателя более плавным и уменьшает емкость, необходимую для подавления пульсаций источника питания. При достаточно высокой частоте должна быть небольшая разница между ШИМ и постоянным током (принимая во внимание, что L293D падает ~ 2,6 В при 600 мА, поэтому источник питания 6 В подает на двигатель только 3 ~ 4 В).
Почему 3кГц? Проблема в том, что увеличение частоты также увеличивает минимальное значение OCR. При частоте 3 кГц двигатель движется только в том случае, если OCR находится в диапазоне 190-255 (8-битный таймер).
3 кГц - это оценка, основанная на ожидаемой индуктивности вашего двигателя. Какое напряжение двигателя (измеренное мультиметром) вы получаете, когда OCR составляет 190? 255? Какова тактовая частота вашего процессора и как вы получили ШИМ 3 кГц?

Ответы (1)

Хотя это может показаться нелогичным, эффективная работа щеточного двигателя постоянного тока при низком коэффициенте ШИМ требует, чтобы двигатель переключался между подключением к источнику питания и замыканием накоротко (не разомкнутой цепью). Необходимо будет использовать драйвер H-моста, который может быстро переключаться, с достаточным «мертвым» временем, чтобы предотвратить случайное короткое замыкание самого источника питания.

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

Если вместо того, чтобы разомкнуть цепь двигателя, сделать его коротким замыканием во время выключенной части каждой волны, то в течение первой 1/4 первого цикла ток двигателя будет увеличиваться, как указано выше, но в течение оставшейся части каждого цикла он будет уменьшаться очень медленно (скорость, с которой ток будет уменьшаться, зависит от напряжения на индуктивности двигателя, и оно будет очень низким). Затем в течение первой 1/4 второго цикла ток будет увеличиваться еще немного, а затем лишь немного падать в течение следующих 3/4 цикла и т. д. Как только двигатель начнет двигаться, генерируемая противо-ЭДС увеличит скорость, с которой ток падает во время цикла «выключено» [в этом сценарии энергия будет передаваться от индуктивности к механической нагрузке]. Если механическая нагрузка минимальна,

Обратите внимание, что при использовании этого метода важно, чтобы скорость ШИМ была достаточно высокой, чтобы ток не успевал обнулиться в течение каждого цикла. Если ток достигает нуля, а двигатель вращается, индуктор будет получать энергию вращения и использовать ее для создания крутящего момента в направлении, противоположном вращению. Если двигатель тратит половину своего времени на создание прямого крутящего момента и половину на создание обратного крутящего момента, большая часть энергии, направленной на него, будет преобразована в тепло.

Спасибо за ответ, но как я могу использовать эту технику? Есть ли какая-нибудь схема H-моста, такая как L293D, которая делает это?
@M_Luis: Большинство H-мостов, которые я видел, имеют конфигурацию входных контактов, которая закорачивает двигатель, а также оставляет его разомкнутым. Используйте ШИМ для переключения между состояниями возбуждения и короткого замыкания, а не между состояниями возбуждения и размыкания.
Мне трудно его найти, можете ли вы назвать тот, у которого есть, или подскажите, как его найти в даташите? Можно ли это сделать с помощью обратных диодов?
@M_Luis: держите линию включения, связанную с обеими сторонами двигателя, на высоком уровне, держите один из входов высоким или низким, а другой — ШИМ.
я не думаю, что это работает
@M_Luis: Глядя на лист данных для L293D, я ожидаю, что использование ШИМ, как описано, будет работать хорошо, но использование ШИМ на контакте включения будет работать плохо. Я не пробовал работать с реальной деталью, поэтому могут быть другие факторы.