Скорость двигателя постоянного тока в зависимости от рабочего цикла ШИМ

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

Я разработал схему для управления небольшим двигателем постоянного тока, как показано ниже. Каналы P в H-мосте либо полностью включены, либо полностью выключены, в зависимости от того, в каком направлении вращается двигатель, и на соответствующий канал N подаются управляющие сигналы ШИМ. Частота ШИМ составляет 20 кГц, напряжение постоянного тока составляет 7 В, T1 и T2 подключены к клеммам двигателя постоянного тока, а используемые резисторы затвора имеют сопротивление 10 Ом.

Насколько я понимаю, скорость двигателя постоянного тока должна быть пропорциональна приложенному напряжению привода. Итак, если VDC фиксировано, ИМХО, скорость двигателя должна быть пропорциональна рабочему циклу ШИМ, потому что напряжение привода двигателя равно VDC * PWM_dutycycle.

введите описание изображения здесь

Однако это было далеко не так. Ниже приведена кривая зависимости скорости от рабочего цикла, которую я записал ( изображение обновлено ).

введите описание изображения здесь

Однако, когда я зафиксировал рабочий цикл ШИМ, но изменил значение VDC, скорость двигателя стала пропорциональной VDC * PWM_dutycycle.

Кто-нибудь, пожалуйста, сообщите, почему VDC * PWM_dutycycle может по-разному влиять на скорость двигателя при изменении VDC по сравнению с изменением рабочего цикла PWM?

[ обновление ]

Я забыл упомянуть, что вал двигателя был соединен с коробкой передач, передаточное число которой равно 290, а скорость, показанная на приведенном выше графике, является скоростью двигателя, а не выходной скоростью коробки передач.

Я начал задаваться вопросом, была ли эта проблема скорости и рабочего цикла вызвана трением коробки передач, которое действовало как нагрузка двигателя.

Скажем, Vcc=5В и DT=0,6. При увеличении напряжения на 1 В при фиксированном DT вы получаете разницу в 0,6 В на выходе. С другой стороны, если вы увеличите DT на 10 процентов при фиксированном напряжении, вы получите увеличение выходного сигнала на 0,5 В. Таким образом, в любом случае средняя мощность, подаваемая на двигатель, увеличится, но в разной степени.
Я понимаю вашу точку зрения, но если вы посмотрите на диаграмму, рабочий цикл 20% и рабочий цикл 40% привели только к увеличению скорости на 30%. Для 7 В постоянного тока 20% нагрузка означает 1,4 В, 40% 2,8 В, не следует ли также удвоить скорость?
Насколько я понимаю, а также тот факт, что у реальных двигателей есть сопротивление и куча других вещей, не всегда верно, что скорость двигателя линейно изменяется в зависимости от подаваемого напряжения. В какой-то момент он может немного начать демонстрировать нелинейное поведение.
Какой двигатель вы тестировали (марка/модель, характеристики)? На каких оборотах работал мотор на 7В директ? Как вы определили коэффициент ШИМ и как вам удалось получить более 500 об / мин с 0% ШИМ ? Какая схема управляет нижними затворами на полевых транзисторах? Вы изучили форму сигнала привода?
Привет, Брюс, мне жаль, что я сделал ошибку в единице измерения по оси Y, и я обновил изображение в посте. Коэффициент ШИМ контролируется микроконтроллером, и мы проверили его с помощью осциллографа. Первая тестовая точка может ввести в заблуждение, но она была протестирована при рабочем цикле 1%. P-каналы управлялись другим транзистором, а N-каналы управлялись непосредственно выходами PWM микроконтроллера. Я наблюдал сигналы затвора и напряжения на клеммах двигателя и думаю, что полевые МОП-транзисторы работают правильно. Что касается спецификации двигателя, то, к сожалению, у меня ее нет.

Ответы (1)

Сюжет, которым вы поделились, кажется очень похожим на показанный здесь с использованием свободного хода диода . Поскольку вы используете H-мост с активным свободным ходом, я предполагаю, что это может быть связано с задержками падения и распространения на полевых МОП-транзисторах; во время переходов у вас будет период, когда работает только диод. Попробуйте добавить мертвое время к вашей генерации ШИМ, вы можете использовать TIMx_BDTR в этом отношении.

Из 1 также кажется, что более низкие токи затвора имеют тенденцию добавлять нелинейность, поэтому может помочь замена резисторов затвора на более низкие.

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

Кроме того, график, которым вы делитесь, также очень похож на кривую ток-крутящий момент электродвигателя. Если у двигателя есть нагрузка (что-то управляющее им), скорость вращения будет напрямую зависеть от крутящего момента. Если это так, кривая в RPM x PWM - это просто нелинейность двигателя. Вы можете просто решить проблему, сопоставив эти точки с вашим программным обеспечением и интерполируя для желаемого RPM. Лучшим решением было бы управление с обратной связью, когда выходной сигнал энкодера подается на ваше программное обеспечение и используется ПИД-регулятор для управления скоростью.