Даже опытные инженеры часто имеют не совсем верное представление о шаговых электродвигателях и способах управления ими. В данной статье мы разберем лишь несколько основных заблуждений что, надеюсь, поможет и новичкам и бывалым инженерам при выборе драйверов управления. Было бы хорошо разобрать все особенности, но тогда эта статья превратилась бы в книгу.
В этой статье речь пойдет о биполярных шаговых электродвигателях, поскольку они являются наиболее популярными в использовании на сегодняшний день. Униполярные шаговые электродвигатели все еще используются в некоторых устройствах, однако их популярность с каждым годом снижается. Это снижение обуславливается преобладанием относительно недорогих драйверов для биполярных двигателей. Учитывая снижение стоимости управления, почему бы не использовать биполярные шаговые электродвигатели? В конце концов у них есть еще один плюс – больший крутящий момент.
Многие инженеры ошибочно полагают, что если шаговый электродвигатель имеет небольшой размер, значит, его температура тоже должна быть небольшой. Этот миф легко развеять, взяв документацию на электрическую машину, пирометр, и произвести замер. То, что при касании может показаться «очень горячим», на самом деле не будет даже подходить к максимально допустимой температуре машины. Шаговые электродвигатели обычно имеют повышенную температуру, это связано с внутренними процессами в самой машине. Даже когда они не вращаются они также подвержены потерям. Тем не менее, если вы сомневаетесь – перестрахуйтесь и проверьте температуру. Естественно, если температура превысит предельно допустимую, указанную в паспорте, это может привести к необратимым последствиям (выход из строя или значительное сокращение срока службы).
В случаях, когда есть необходимость снизить потребление электроэнергии в режиме простоя, можно использовать специальные драйверы, в которые данная функция включена. Однако это повлияет не только на значение тока в обмотках, но и на удерживающий момент, что в определенных механизмах тоже важно.
Микрошаги это не магия. Существуют специальные драйверы для микрошагового управления. Это позволяет увеличить точность позиционирования, однако достигается за счет значительного крутящего момента. Кроме того, наличие драйвера, обеспечивающего шаг 1/32, не значит, что ваш электродвигатель сможет это реализовать. После определенного порога (1/10 и иногда 1/16) требуются высококачественные драйверы и двигатели. Даже если ваш шаговый электродвигатель и драйвер смогут реализовать микрошаг в 1/32, возможно ли это интегрировать в общую систему управления?
Рассмотрим следующий пример. Линейное перемещение с 10 шагами на дюйм ходового винта напрямую соединенного с типичным шаговым двигателем, имеющим 200 шагов на оборот. Каждый полный шаг электрической машины будет переведен в 0,0005 дюйма линейного движения. Казалось бы, что, якобы, та же система микрошагов 1/32 сможет уменьшить линейный шаг до 0,000015. Но в реальности реализации данной системы практически не возможна, так как упругость и силы трения не позволят преобразовать настолько миниатюрные шаги к линейному движению.
Микрошаговый режим реально полезен при проверке системы с шаговой электрической машиной на резонанс. Это дает определенные возможности для избегания резонанса. Как известно, любая механическая система имеет резонансную частоту. Для шаговых электродвигателей достижение этой частоты, как правило, происходит на определенной скорости, после чего двигатель начнет сильно шуметь. Эти шумы могут привести к «пропусканию шагов», что чревато серьезными последствиями для определенных систем. В некоторых случаях это может привести к слишком большим вибрациям. В случаях с режущими машинами, такими как токарные станки, этот звук можно спутать с рабочим звуком обработки поверхности заготовки. Микрошаговый режим уменьшает расстояние пройденное валом между шагами (на появление шумов тратится меньше энергии).
Наверное, одним из самых запутанных моментов является несоответствие напряжения на обмотке, указанного в паспорте машины, и реального напряжения источника питания, используемого для питания электрической машины. Если в техпаспорте указывается напряжение обмотки равное 3,4 В, то как получается, что электродвигатель подключается к источнику 48 В постоянного тока? Или иногда и к 80 В.
Номинальное напряжение не настолько критично, обратите внимание на ток.
Такое подключение стало возможным благодаря тому, что большинство современных драйверов имеют встроенное ШИМ управление выходным напряжением. Драйверы контролируют ток обмотки. Когда ток доходит до максимального значения (определяется максимальным током электрической машины), драйвер отключает питание, или снижает значение тока. При этом превышать максимальное напряжение драйвера нельзя.
Рассмотрим небольшой пример на основе шагового электродвигателя с номинальными данными: Uн = 12 В, Iн = 0,33 А, активное сопротивление обмотки R = 32,6 Ом, реактивное сопротивление обмотки L = 48 мГн.
12 В – это не максимально допустимое напряжение. Это напряжение нормальной работы, при котором в обмотке будет протекать ток равный 0,33 А.
Если вы управляете электрической машиной с помощью очень простого или Н-мостового драйвера, то вам необходимо ограничивать напряжение 12 В для предотвращения превышения номинального тока.
В случае использования драйвера с прерывателем (chopper drive), превышение номинального напряжения не является проблемой. Чем выше будет напряжение – тем быстрее машина достигнет магнитного насыщения. Приведенная ниже формула это иллюстрирует:
Приведенная формула вычисляет ток обмотки электродвигателя за определенный промежуток времени.
Ток, через катушку индуктивности 50 мГн, в течении 1 мс увеличивается пропорционально напряжению.
Если двигатель «перешагнет» прежде, чем сможет достаточно насытиться для развития необходимого момента, он начнет «терять» шаги. Если вы обнаружите, что такое происходит с вашей машиной на большом ходу – рассмотрите вариант повышения напряжения питания.
Доброго вам времени суток, уважаемые гики и сочувствующие!
В этой публикации я хочу поделиться своим опытом управления. Точнее – управления шагами. А уж если быть совсем точным, речь пойдёт об управлении замечательным устройством – шаговым электродвигателем. Что же такое этот самый шаговый электродвигатель? В принципе, в плане функциональности этот мотор можно представить как обычный электромотор, каждый оборот вала которого разбит на множество одинаковых, точно фиксированных шагов. Перемещением на определённое количество шагов мы можем позиционировать вал шагового мотора с высокой точностью и хорошей повторяемостью. Каждый шаг можно разбить на множество ступенек (так называемый микростеппинг), что увеличивает плавность хода мотора, способствует подавлению резонансов, а также увеличивает угловое разрешение. Различия между полношаговым режимом (слева), 1/2 микростеппингом (в центре) и 1/16 микростеппингом (справа) видны невооружённым глазом: К сожалению, все вышеупомянутые преимущества достигаются ценой значительной сложности системы управления шаговым мотором (для простоты будем называть эту систему драйвером). Теперь рассмотрим схему работы типичного шагового мотора: Из этой картинки видно, что шаговый мотор в электрическом плане представляет собой два или более электромагнита, которые необходимо переключать в определённой последовательности для приведения ротора в движение. Лирическое отступление: На настоящий момент существуют два основных типа шаговых моторов: униполярный и биполярный. Поскольку униполярные моторы имеют меньший крутящий момент и худшие скоростные характеристики, в данной публикации они рассматриваться не будут. Итак, вернёмся к управлению биполярным мотором. Как это ни парадоксально звучит, но зачастую проще обсуждать общие принципы на конкретных примерах. В качестве примера мы возьмём шаговый мотор ST4118L1804-A производителя Nanotec. Почему именно этот мотор и производитель? Причина проста: по основным характеристикам это типичный представитель моторов типоразмера NEMA 17, широко применяющихся в радиолюбительской практике, и имеет к тому же довольно подробную техдокументацию (которая начисто отсутствует у китайских noname-моторов).
Основные характеристики данного мотора: Рабочее напряжение 3,15 В Рабочий ток 1,8 А Активное сопротивление обмотки 1,75 Ом Индуктивность обмотки 3,3 мГн Момент удержания 0,5 Нм Угловой размер шага 1,8° (200 шагов на один оборот ротора)
В данном случае самое главное — это правильная интерпретация данных. Применив закон Ома, выясняем, что производитель указал рабочий ток и напряжение для постоянного тока, протекающего через обмотки двигателя, без учёта индуктивности. Проверка: I = U/R, или 1,8 А = 3,15 В/1,75 Ом. Всё сходится. Какой же будет мощность рассеяния при питании обмоток постоянным током? Всё просто: P=I x U, или 1,8 А х 3,15 В = 5,67 Вт. В полушаговом режиме возможна ситуация, когда ток течёт через обе обмотки мотора, соответственно рассеиваемую мощность нужно удвоить: 5,67 Вт х 2 = 11,34 Вт. Это достаточно много, и может привести к перегреву мотора. Эта же величина является минимальной мощностью блока питания для этого мотора. Обыкновенный 3D принтер имеет пять подобных моторов, соответственно для питания драйверов необходим источник питания с минимальной мощностью 11,34 Вт х 5 = 56,7 Вт. К этой цифре необходимо добавить электрическую мощность, превращённую мотором в кинетическую или потенциальную энергию при работе принтера. Точный расчёт этой мощности — дело достаточно сложное, на практике проще всего добавить 75% к рассчитанной тепловой мощности и на том завершить расчёты. Почему именно 75%? Дело в том, что обычный шаговый мотор способен совершить полезную работу на величину примерно 2/3 от максимальной тепловой мощности. В данном случае для создания какого-либо узла или устройства сначала подбирается подходящий мотор (например, по крутящему моменту), а после этого рассчитывается мощность блока питания. Итоговая мощность блока питания для пяти шаговых моторов: 56,7 Вт х 1,75 = 99,225 Вт. Конечно, на практике ни в одном любительском устройстве не используются моторы под максимальной нагрузкой, и реальная мощность потребления будет, скорее всего, намного ниже расчётной. Я же, как человек ленивый и скаредный, крайне не люблю делать одно и то же два раза, поэтому беру блок питания всегда с некоторым запасом (то есть, согласно вышеприведённым расчётам). Теперь пришла пора приступить к определению минимально необходимого напряжения блока питания. К сожалению, этому параметру уделяется незаслуженно маленькое внимание в тематических публикациях. Почему этот параметр так важен? Дело в том, что при вращении ротора шагового мотора через катушки течёт переменный ток, ограниченный не только активным, но также и индуктивным сопротивлением обмоток. Рассмотрим предоставленный производителем график зависимости крутящего момента нашего мотора от частоты вращения: На графике присутствуют две линии, показывающие зависимость крутящего момента от частоты вращения для напряжения питания 24 В (красная линия) и 48 В (зелёная линия). Нетрудно заметить, что спад крутящего момента начинается примерно с 300 об/мин для 24 В и примерно с 600-700 об/мин для напряжения 48 В. При этом необходимо упомянуть, что производитель использует недоступные любителям дорогостоящие промышленные драйверы. Почему же так важно напряжение питания драйвера, если оно даже в случае питания от 12 В заведомо выше паспортной величины напряжения питания шагового мотора (3,15 В)? Дело в том, что шаговый мотор управляется током, а не напряжением, и именно источниками тока являются все современные драйверы. В идеальном случае драйвер обеспечивает заданный ток в обмотках двигателя вне зависимости от частоты вращения ротора, нагрузки, изменения температуры и других параметров. Это организовано за счёт работы ШИМ-регулятора, управляемого зачастую довольно сложными алгоритмами. Из технической документации нашего мотора видно, что для полного оборота ротору необходимо совершить 200 шагов, при 300 об/мин это составит 60 000 шагов в минуту, или 1000 шагов в секунду. Это, проще говоря, соответствует переменному току частотой 1 кГц. На этой частоте индуктивное сопротивление обмотки составит (R(L)=2π×F×L): 2π х 1 кГц х 3,3 мГн = 20,73 Ом. Какое же напряжение необходимо для обеспеченияя тока в 1,8 А при этом сопротивлении? Закон Ома не дремлет (U=IR): 1,8 А х 20,73 Ом = 37,31 В. Неудивительно, что выше частоты вращения 300 об/мин наблюдается спад крутящего момента: драйверу банально не хватает напряжения питания. Почему же при таком вопиющем недостатке питания (37 — 24 =13 В) спад не наступает при более низкой частоте вращения? Дело в том, что в современных драйверах используется мостовая схема выходных каскадов, что позволяет «удваивать» напряжение, прикладываемое к обмоткам мотора. То есть, теоретически драйвер способен приложить «виртуальные» 48 В к обмоткам при напряжении питания 24 В, что создаёт теоретический запас по напряжению 48 — 37 = 11 В. На практике же этот запас будет нивелирован потерями в драйвере, сопутствующих цепях и активным сопротивлением обмоток мотора (активное сопротивление обмоток присутствует постоянно, и даже несколько возрастает при нагреве мотора). При увеличении частоты вращения ротора свыше 300 об/мин пропорционально растёт частота импульсов и, соответственно, увеличивается индуктивное сопротивление обмотки. При питании от 24 В драйверу перестаёт хватать напряжения питания для поддержания тока в обмотках, и крутящий момент неуклонно снижается. То же самое происходит при питании драйвера от 48 В, но уже гораздо значительно позже, при частоте вращения 600-700 об/мин. Итак, с мощностью и величиной напряжения блока питания всё ясно, теперь необходимо переходить к практической реализации универсального драйвера, способного как к филигранной работе при помощи крохотных NEMA 11, так и к сотрясению основ мира в паре с могучими NEMA 23. Какими же основными качествами должен иметь драйвер моей мечты?
1. Высокое напряжение питания. Поскольку в техдокументации к моторам крайне редко указано максимальное напряжение питания, лучше будет ограничиться напряжением 48 В. 2. Важнейший параметр: высокий выходной ток. NEMA 23 имеют рабочие токи вплоть до 3,5 А, драйвер должен обеспечивать этот ток с запасом 30%. Путём нехитрых расчётов получаем максимальный рабочий ток около 4,5 А. 3. Простая и оперативная подстройка силы выходного тока. 4. Наличие микростеппинга, как минимум 1/8 шага 5. Наличие защиты от КЗ, перегрева, и т.д. 6. Небольшой размер, возможность крепления произвольного радиатора. 7. Исполнeние в виде интегральной схемы. XXI век на дворе! 8. Простая схема включения с минимальным количеством дискретных компонентов. 9. Низкая цена.
После множества бессонных ночей пятиминутного копания в Google выяснилось, что единственной доступной микросхемой драйвера с подходящими параметрами является TB6600HG. Покупка готового китайского драйвера на eBay показала, что не всё ладно в датском королевстве, далеко не всё. В частности, китайский драйвер отказался напрямую работать с выходами Arduino Due, и «завёлся» только через буферный преобразователь уровней. При работе с трёхамперной нагрузкой драйвер грелся и терял шаги десятками. Вскрытие пациента показало, что в нём не только была установлена микросхема предыдущего поколения (TB6560), а даже и термопаста не смогла найти себе места в списке компонентов. К тому же размерами и весом китайский драйвер наводил меня на мысли о моей молодости… о прошлом веке, если быть совсем точным. Ну нафиг, сказал во мне интеллигент в третьем поколении, мы сделаем свой драйвер, с преферансом и поэтессами. Если бы разработчики KiCAD видели, как я обращаюсь с их детищем, я разорился бы на одних только адвокатах: С целью минимизации размеров была спроектирована четырёхслойная печатная плата. Этот факт, к сожалению, исключает её изготовление в домашних условиях. Посему на берлинской фирме LeitOn были заказаны 36 таких плат, каждая из которых обошлась в итоге около пяти евро. Часть этих плат были впоследствии выкуплены у меня собратьями по увлечению, и в итоге изготовление плат вышло не слишком накладным предприятием. Микросхемы TBB6600HG были заказаны на Aliexpress по 4 евро за штуку, остальные компоненты были заказаны на eBay, в пересчёте на один драйвер цена дискретных компонентов составила 2 евро. В качестве радиаторов были взяты пятисантиметровые отрезки П-образного алюминиевого профиля, пластиковые каркасы были отпечатаны на 3D принтере. Итого цена одного драйвера составила около 12 евро. Это справедливая цена за драйвер со следующими характеристиками:
Напряжение питания от 8 до 42 Вольт Максимальный долговременный рабочий ток 4,5 Ампер, устанавливается потенциометром Микростеппинг вплоть до 1/16 шага Защита: КЗ, перегрев, низкое напряжение питания Компактные размеры и низкий вес Работа с уровнями входных сигналов от 3,3 до 5,5 вольт Простая установка микростеппинга с помошью микропереключателей — к чёрту перемычки!
Готовые печатные платы: Собранные и недособранные драйверы. Видео работы драйвера в моём старом 3D принтере. Здесь трёхамперный NEMA 17 бодро гоняет подогреваемую рабочую площадку принтера размером 45 х 25 см через шестнадцатимиллиметровый шпиндель длиной 60 см: Финальное фото: самодельные драйвера на своём рабочем месте в моём новом 3D принтере. Публикуется под лицензией WTFPL
Ну, и традиционное: Have fun!
habr.com
30.09.2016 Сайт https://anteh.ru
Рассматривается пластиковый 3D FDM дельта принтер. Шаговый двигатель экструдера JK42HS40-1204D, согласно документации индуктивность = 4.5mH. X Y Z двигатели осей JK42HS60-1704A, это 2х фазный гибридный шаговый двигатель, согласно документации индуктивность = 6.2mH. Проверена индуктивность обмоток RLC метром, последовательная схема измерения, частота 1kHz:JK42HS60-1704A:X: Ls=6.283mH, Q=6.0; Ls=6.316mH, Q=6.0Y: Ls=6.318mH, Q=6.13; Ls=6.229mH, Q=6.0Z: Ls=6.413mH, Q=6.0; Ls=6.43mH, Q=6.14JK42HS40-1204D:E: Ls=4.1mH, Q=5.45; Ls=4.1mH, Q=5.21Индуктивность немного меняется при повороте вала двигателя и точность где-то в десятых долях. Измерения совпали с документацией.Лучше работают двигатели с меньшей индуктивностью, малая индуктивность требует меньшего напряжения питания. Максимальное напряжение питания двигателя вычисляется по эмперической формуле
, где L - индуктивность обмоток двигателя в миллигенри. Рекомендуется, чтобы максимально допустимое напряжение питания драйвера было примерно равно Umax, или чуть больше. Если условие не выполняется, то больших скоростей вращения не получить.UmaxXYZ=32*sqrt(6)=78VUmaxE=32*sqrt(4.1)=64VИнтересно получается. Сейчас напряжение питания шаговых двигателей +12VDC. Диазапазон питающих напряжений двигателя должен быть в диапазоне от 4 до 25 значений напряжения питания двигателя. Чтобы увеличить скорость печати, предотвратить пропуски на высоких скоростях печати, положительно повлиять на шум и резонансные явления, снизить тепловыделение(палец обжигать не будет) и ток драйверов, нужно поднять напряжение питания драйверов, хотя бы до безопасных +24VDC.
Есть осадок от непонимания причин чередования 80 и 70 микрон при движении по вертикали, через pronterface на минимальном шаге. Т.е. вертикальное движение осуществляется при чередовании указания положения по вертикали 70 и 80 мкм. Шаговые двигатели, на слух, отрабатывают следующие значения по высоте:G1Z10.1G1Z10.18G1Z10.25g1z10.30g1z10.38g1z10.45g1z10.53g1z10.60g1z10.68g1z10.75Подобное поведение было проверено и подтверждено с помощью микрометра.Диаметр штока на XYZ осях 12мм с 20ю зубьями. 80 шагов на миллиметр хода каретки. Минимальный шаг по оси: 1/80=0.0125мм. В пропуске шагов на высокой скорости, резонансных явлениях и чередовании шага по высоте 70/80 микрон, пока обвиняется недостаточное напряжение питания шаговых двигателей. Напряжение поднято до +18В. DRV8825 поддерживает от +8.2 до +45VDC(что оказалось неправдой), ток 1.5A без обдува и 2.2A с дополнительным обдувом. Не будет переделки RAMPS 1.4 под повышенное напряжение, будет перенесён контакт питания +12V платы DRV8825 с нижней на верхнюю сторону и туда заведено +18V, также добавляем к каждому драйверу электролит 100u 50V или большей ёмкости:
Первоначально подавалось +32V, использовался линейный нестабилизированный источник +18VDC подключённый последовательно к +12VDC, трансформатор ТН55, 2 вторичные 6.3V 7A соединены последовательно, мост из шоттки + 2 банки по 10000u 50V.Перестали работать DRV8825 драйвера, в шахматном порядке сопротивление цифровых ног упало со 100k до где-то 300, где-то 10 ом, подгорели. На одном из драйверов пропал Vref, другой вроде работал, но дробление у него поменялось, как выяснилось в результате подгоревших ног задающих дробление. Чип керамика на платах DRV8825 не пострадала. Возможно, заявленные +45В напряжения питания DRV8825 неправда, от 32В всё померло. Но возможно сам был виноват, потому что в ручную двигал каретки осей и шаговый двигатель, работающий в реэиме генератора мощности мог повредить драйвера. Но правда 1 каретку не трогал, а повреждёнными оказались все драйвера.Те же самые доработки были сделаны с тремя A4988 и на VMOT заведено напряжение +18VDC c линейного стабилизатора. Дробление то же 1/16.
Выставлен на всякий ток драйверов в 1A, 0.8Vref. И приятные результаты, на слух стало тише.Субъективно, по показаниям микрометра увеличилась точность, драйвера стали греться существенно меньше, теперь на максимальной скорости печати на радиаторах A4988 можно спокойно держать палец сколь угодно долго, при питании от +12VDC палец обжигало. И что более важное исчезли пропуски, при тех же исходных, при 12V питания XYZ шаговых двигателей и токе драйвера 1.5A пропуски наблюдались в районе 650%(35мм/c=100%) 230мм/сек. Сейчас, при напряжении питания +18VDC(линейный блок питания под нагрузкой) и токе драйверов 1А, на скорости 900% 315мм/сек пропуски не наблюдались. На чередование шага по высоте 70/80 микрон повышение напряжения питания субъективно повлияло, микрометр, в среднем, стал показывать 75 микрон т.е. немного увеличилась точность. В этой статье разрешение по вертикали каждой из осей подправлено на 50микрон. Преимущества использования +24VDC вместо +12VDC для питания шаговых двигателей существенны. Разумеется речь о бюджетных open source домашних принтерах. По "взрослому", как уже обсуждалось напряжение питания шаговых двигателей можно подбирать в зависимости от индуктивности обмотки и для используемых осевых шаговых двигателей может составлять чуть более +78VDC. Нужны соответствующие драйвера STEP DIR с питанием от линейного трансформаторного блока питания 80VDC, стабилизация не нужна, достаточно электролитов, в общей сумме на 30000 -50000мкФ.Конечно +18 не +24, но результат весьма положительный. Сейчас заказан тор и пару банок для линейного +24VDC источника питания драйверов шагового двигателя. Здесь "Питание драйверов A4988 3D принтера от линейного трансформаторного блока питания напряжением 27VDC" продолжение статьи.В проекте попробовать запитать двигатели 80VDC с использованием соответствующих драйеров, возможно с "прибамбасами". Цель получить качественную печать на скорости 100-120мм/сек используя AtMega2560 + marlin прошивку.
Несколько полезныхфактов о шаговом двигателе:
Момент вращения ротора шагового двигателя максимален на малых оборотах. Шаговые двигатели можно назвать вечными. Температура корпуса шагового двигателя в 90градусов считается нормой. Его можно использовать как датчик угла поворота. Как генератор мощности он будет работать эффективней коллектооных двигателей.
anteh.ru
Рисунок 1 - Принцип работы шагового двигателя и ограничение тока в обмотке
Чем больше активное сопротивление обмоток шагового двигателя тем меньше будет ток протекающий через обмотку во время когда ротор неподвижен но при этом, отчасти из за ЭДС (самоиндукции обмоток и наводимой магнитным полем вращающегося ротора)(т.к. приходится увеличивать число витков) которые препятствуют прохождению тока, максимальная скорость вращения ротора будет тем меньше чем больше это активное сопротивление.Если драйвер подходит для данного двигателя по току то проблему перегрева драйвера можно решить изменив способ управления шаговым двигателем, например можно подавать на обмотки импульсы напряжения определённой длительности такой чтобы ротор успевал повернуться на нужный угол но не более, далее если необходимо чтобы в момент когда ротор не вращается он удерживался магнитным полем в таком положении то можно подавать на обмотку импульсы напряжения со скважностью достаточной для удержания и такой чтобы перегрев не был слишком большим. При использовании современных способов управления шаговым двигателем (например Arduino) этого можно добиться экспериментально или же можно попытаться рассчитать длительности импульсов. КАРТА БЛОГА (содержание)
electe.blogspot.com