да тут интересный симбиоз у шаговика достаточно точно выдержаны стандартные шаги 1.8 градуса, калибруют как раз на эти точные шаги а потом используют для точного выставления микрошагов
В самом начале ролика видно (если смотреть в полном экране) с какой скоростью вращается мотор, так же видно лёгкие шаги , мотор крутится синусоидой но датчик AS5045 имеет ограниченное разрешение (0.087 градуса) тоже самое будет с шаговиками, слишком мелкие шаги компенсировать не получится (возможен кратковременный пропуск), кроме того датчик имеет нелинейность, так что лучше постараться использовать шаг мотора в два раза превышающий разрешение энкодера.
как вариант "удешевления" можно попробовать использовать аналоговые датчики холла из двигателей cd-roma, в принципе этот двигатель и есть датчик-резольвер только в нём синусоиды не на 90 градосов смещены а на 120, статор можно выкинуть,
шаговый двигатель ставят не из-за энкодера крутящий/удерживающий момент при низких скоростях или нулевых скоростях. даже запредельные скорости печати в 300-500мм/сек в области электродвигателей считаются низкими. а на экструдере вообще до 100об/мин, это можно назвать нулевой. быстрый старт, остановка, реверсирование надежность, они практически вечные и т.д. и т.п. шаговые двигатели по своим характеристикам подходят лучше других
Не знаю видели или нет, в теме про bldc я давал ссылку на ролик где в cnc станке вместо шаговиков используются bldc моторы с векторым управлением (проект открытый)
шаговый мотор интересен только тем что "за недорого" позволяет организовать достаточно точные перемещения, если соблюдать ряд условий. именно по этому куча роликов где из хлама получается станок для дома.
но когда речь заходит о скорости передвижения, то шаговый мотор добавляет проблем а не решает их.
bldc моторы в отличие от шаговика могут работать в разных режимах, можно реализовать точно такое же управление step+dir но оно будет работать "идеально" как статичном режиме так и при больших ускорениях.
крутящий/удерживающий момент при низких скоростях или нулевых скоростях.
и вот это утверждение не верно, если проводить аналогию то bldc это шаговик с большим шагом (больше угол между статичными залипаниями ротора), но, при работе с шаговиками вы и так используете "хитрые" микросхемы которые реализуют микрошаг, а в этом режиме шаговик уже не отличается от bldc.
Реализация микрошага ничем не отличается от управления bldc, это точно такое же управление синусоидой в двух фазах для плавного перемещения из одного статического положения в другое, при этом 200 или 20 шагов за оборот уже значения не имеет, всё упирается только в то насколько точно микросхема формирует управляющие сигналы а мотор их отрабатывает.
Ну да. Я и говорю. Чтобы не нужен был энкодер - ставим шаговик. А чтобы ловить глюки шаговика - ставим энкодер. Всё логично, чё...
я полностью согласен с вашим мнением, шаговик ставят для "удешевления" станка, а если его характеристик не достаточно то нужно возвращаться к сервомоторам (моторы с обратной связью), и в таком случае мотор DC или BLDC даст больше преимуществ чем шаговик, можно получить бОльшие скорсти и ускорения. Вариант шаговик с энкодером оправдан только в том случае если станок уже есть и хочется повысить качество его работы без серьёзных изменений конструкции.
bldc конечно хорошо и ролик очень впечатляет, но даже если не брать корпус/раму в которую должно это всё устанавливаться (прочность), то всё тупо упирается в цену таких моторов и самого контроллера, судя по схеме (которую я глянул одним глазком) - ОМГ - это далеко не один чип (хоть и дорогой). Т.е. мало того, что много рассыпухи, что сулит и следовательно некую сложность сборки и места занимаемого, но и цену соответствующую... Этот проект больше похож на научное исследованние, где цена и сложность не важна.
Madf ,согласен, для шаговиков уже куча готовых недорогих микросхем-драйверов, аналоги на bldc это пока больше экспериментальные хоббийные решения.
Когда то давно народ для шаговиков тоже делал контроллеры на рассыпухе, так что у bldc всё ещё впереди.
С каждым годом bldc становится всё популярнее, сначала у авиа/автомоделистов как тяговый мотор, под эти задачи появились соответсвующие недорогие моторы, потом появились gimbal решения для них сейчас тоже много недорогих предложений, так что очевидно следующим витком будут хоббийные cnc станки.
В моём решении я использую bldc моторы для gimbal и контроллер (МК + драйверы моторов) для gimbal, только свою прошивку написал которая учитывает обратную связь с энкодера AS5045.
controller StormBGC32 with STM32F405RGT6 with DRV8313 with my custom firmware based on chibios two bldc motors BGM4114-100 (for gimbal) + magnetic encoder AS5045 in Daisy Chain mode through SPI (DMA readings).
Такое решение может подойти и для cnc , в контроллере поддержка 3х осей и есть ещё куча свободных выводов которые можно задействовать для концевиков и прочего.
esisl, редуктор добавит люфт в систему.
Добавлено спустя 3 минуты 32 секунды: Кстати, DRV8313 поддерживает до 60в до 2А, так что как и в решениях с шаговиками большую мощность можно получить за счёт повышения напряжения, есть гимбал моторы рассчитанные на 6S (у меня 4S)
R3 forum87/topic15337.html R2 roboforum.ru/forum102/topic13980.html R4 roboforum.ru/post336339.html#p336339 Делать надо хорошо - плохо получится само!
linvinus писал(а):В моём решении я использую bldc моторы для gimbal и контроллер (МК + драйверы моторов) для gimbal, только свою прошивку написал которая учитывает обратную связь с энкодера AS5045.
А с STM32F103RC срастётся? Просто выходит на 2-3 мотора электроника обойдется под 50-60$...
По умолчанию в StormBGC32 стоял STM32F103 , думаю можно попробовать в него уместиться.
основные затраты: 1) считать по spi 2,3 сенсора это 8 байт, потом распарсить т.к. данные не выровнены по байтам 2) на основе данных положения вычислить какую фазу подавать в моторы, это два синуса + формула перевода из VAlpha Vbetta в iA iB iC 3) на основе данных реального положения и положения "идеального" мотора вычислить как скомпенсировать рассогласование.
F4 выбирал по причине аппаратной поддержки hard float, но честно говоря работало и на softfloat я опцию компилятору не передавал. правда всё равно у F4 частота в два раза выше чем у F1.
Блин, для gimbal уже готовые моторы продаются
пока дорого, отдельно купить датчики и сделать плату намного дешевле
R3 forum87/topic15337.html R2 roboforum.ru/forum102/topic13980.html R4 roboforum.ru/post336339.html#p336339 Делать надо хорошо - плохо получится само!
linvinus писал(а):пока дорого, отдельно купить датчики и сделать плату намного дешевле
3 мотора со статором 4108 и датчиками за 100$ не особо дорого, правда слабовато. Самому делать не сильно дешевле выйдет, но мотор получше можно подобрать.
я купил as5045 5шт за $24, плату собрать не сложно если есть принтер , сверлильный станок и односторонний текстолит. вот тут я описывал конструкцию датчика post335261.html#p335261
если будете подбирать конкретное решение не спешите покупать, давайте лучше в теме про bldc Обсудим ваш выбор, я подскажу свои соображения, кое какой опыт уже есть.
R3 forum87/topic15337.html R2 roboforum.ru/forum102/topic13980.html R4 roboforum.ru/post336339.html#p336339 Делать надо хорошо - плохо получится само!