Все прочитали, вроде даже поняли, взяли паяльник - а нифига не получается? Скорее сюда! Поможем. Чем можем...
Сб фев 05, 2022 05:34:33
Здравствуйте! В общем, история длинная, но: собрал схему управления бесколлекторным ЭД, используя STM32F103C8T6 и драйвер L6234D. STM формирует шим по трем фазам, шим идет на входы драйвера (IN1, 2, 3), и на выходе питается двигатель (звезда). Драйвер сделан так, что сигнал '0' открывает нижний ключ, а '1' - верхний. Т.е. если шим с контроллера 50%, ток через фазу отсутствует (а точнее, меняет направление с частотой шим). Идея была в том, чтобы двигатель работал в удерживающем режиме (сопротивлялся внешнему усилию), и это сделать удалось. Однако при попытке покрутить поле статора (изменяя шим по трем фазам), оказалось, что вращение ротора выходит неравномерным! Для вращения используется массив чисел от 1 до 255 (синусоида) на 256 значений, значение 128 соответствует 50% заполнению шим. Числа из массива записываются в регистры CCR1, 2, 3 при вращении ручки энкодера (три числа из массива со смещением треть периода). Экспериментально подмечено, что замедление происходит в тех точках, где любая из трех синусоид (не важно какой фазы) пересекает нулевой уровень (который обеспечивает 50% заполнение шим). Я просто не имею представления, что не так я делаю! Если знаете, подскажите пожалста, я тупо встал!
Содержимое регистра ARR = 255, режим ШИМ - phase correct. Буферизация регистров тоже включена. То ли мотор такой, то ли форма управляющего сигнала неверная, я не знаю..
Сб фев 05, 2022 12:41:42
форма управляющего сигнала неверная
Что осциллограф показывает?
Сб фев 05, 2022 15:24:28
Сейчас не смогу показать, осцил на работе на карантине. Однако при работе в режиме удержания (когда скважность ШИМ не меняется), все выглядело как надо. Например, для ситуации, когда ARR = 100, CCR1 = CCR2 = 70, CCR3 = 10 заполнение ШИМ было соответственно 70%, 70%, 10% (мерил на выходе с STM, он же вход драйвера L6234D).
Чт июл 21, 2022 16:50:48
Тоже увлекся темой драйвера BLDC. Пока сделал пробник на ардуино атмега328, но рабочей частоты явно не хватает. Думаю с stm32 побаловаться. Удалось Вам в этом продвинуться? какие результаты?
Ср авг 10, 2022 11:11:09
Если еще интересно, вот ссылка на форум, где мой вопрос удалось обсудить более подробно:
https://electronix.ru/forum/index.php?a ... 2#comments
Ср авг 10, 2022 14:18:17
всё просто БЛДЦ мотор не предназначен для стояния в произвольном месте - кэфициент F/I практически постоянен на всём протяжении работы фазы, а т.к. положение мотора фиксируется при равновесии сил, то это равновесие, в случае достижения, будет безразличным на довольно большом участке... (т.е. на этом участке мотор не станет сопротивляться внешнему воздействию)
зато БЛДС равномерно крутит при простом "релейном" переключении фаз.
выхода два:
1) организовывать обратную связь (делать сервопривод)
2) менять мотор на шаговик или с синусной характеристикой.
(думаю, там про это и написано...
)