Помощь - Поиск - Пользователи - Календарь
Полная версия этой страницы: микрошаговый режим шагового двигателя
Форум разработчиков электроники ELECTRONIX.ru > Силовая Электроника - Power Electronics > Электрические машины, Электропривод и Управление
toshas
Добрый день!

стоит следующая задача, сделать поворотный столик с достаточно высокой точностью позиционирования, скорость вращения не так важна, около 360 град / мин подойдет.
во избежании люфта в редукторе, предложено использовать соединение двигателя со столиком напрямую (вес столика <200г).
реально доставаемый шаговый двигатель имеет шаг 1.8 градуса, что, для наших целей, является грубым, хотелось бы увеличить точность раз в 10 в идеале.
насколько я понял применив хитрый способ управления (используя спец. драйвер) можно шаговик заставить шагать в микрошаге. ( http://www.telesys.ru/electronics/projects.php?do=p077 ).
вопрос : микрошаг пригоден для циклического поворота и остановки столика в произвольной детерминированной позиции ? или он только сглаживает вращение ?

спасибо!
Kirill Frolov
Цитата(toshas @ Mar 20 2008, 20:21) *
стоит следующая задача, сделать поворотный столик с достаточно высокой точностью позиционирования, скорость вращения не так важна, около 360 град / мин подойдет.
во избежании люфта в редукторе, предложено использовать соединение двигателя со столиком напрямую (вес столика <200г).
реально доставаемый шаговый двигатель имеет шаг 1.8 градуса, что, для наших целей, является грубым, хотелось бы увеличить точность раз в 10 в идеале.


Дробление шага больше чем на 8 нетривиально. Я не говорю, что это невозможно. Кроме того, вполне вероятно, что о повторяемости, в плане установки на тот же угол, можно и не мечтать. Так что есть повод подумать об обратной связи и действительно мелком (1/256) дроблении шага. Таких готовых драйверов в природе, насколько я знаю, не существует (обычно 1/8, редко 1/16 шага).

Практически 1/16 шага отрабатывается как попало, на микрошагах близких к полному шагу -- не отрабатывается.
DS
Зависит от типа двигателя - если его точность позиционирования существенно меньше величины шага, микрошагом можно увеличить точность. Но для этого надо будет учитывать остаточную намагниченность.
Есть движки с 0.45 град/шаг, которые еще позволяют точно поделить шаг на 8. 400 шагов на оборот (0.9 град) - достаточно распространенные двигатели, проблем с их доставаемостью не должно быть.
Мы выпускаем изделие с 6400 шагами на оборот и точностью примерно 1/3 - 1/4 от этого шага. Но мотор, прямо, скажем, специальный.
andreichk
советую на эту тему пообщаться с астрономами, они как раз телескопы поворачивают с очень высокой точностью
http://www.astronomy.ru/forum/index.php
MaxPIC
Посмотрите микросхемы-драйверы шаговых двигателей от Allegro
http://www.allegromicro.com/en/Products/Ca...s/ICs/motor.asp
Там, кстати, есть и до 1/32 шага. Для Вашей задачи (10 шагов на 1.8 градуса) вполне достаточно.
slog
Шаг можно раздробить хоть на 1000 частей, но это не гарантирует никакой точности. Для обычного шагового двигателя. Дробить больше чем на 1/8 нет смысла. Дальше уже механические и электромагнитные проблемы. При очень мелких микрошагах увеличивается плавность хода, но точности позиционирования все равно не будет.
evgeny_ch
Цитата(toshas @ Mar 20 2008, 21:21) *
Добрый день!

...
во избежании люфта в редукторе, предложено использовать соединение двигателя со столиком напрямую (вес столика <200г).
насколько я понял применив хитрый способ управления (используя спец. драйвер) можно шаговик заставить шагать в микрошаге. ( http://www.telesys.ru/electronics/projects.php?do=p077 ).
спасибо!

Если к вашему столику не будет прикладываться внешнее усилие, то прямое соединение реально.
Цитата
реально доставаемый шаговый двигатель имеет шаг 1.8 градуса, что, для наших целей, является грубым, хотелось бы увеличить точность раз в 10 в идеале.

Реально доставаемый ШД5 имеет 250 шагов на оборот, возможно в полушаговом режиме он вас устроит.
Про коммутацию почитайте
Режимы работы и характеристики шаговых двигателей
Stepper Motor Basics
STEPPING MOTORS
STEP MOTOR BASICS
Цитата
вопрос : микрошаг пригоден для циклического поворота и остановки столика в произвольной детерминированной позиции ? или он только сглаживает вращение ?

При движении в режиме микрошага, ротор двигателя совершает колебательные движения в пределах ±1/4 шага, в статике позиция устанавливается с приемлемой для вашего случая точностью. biggrin.gif
Успехов.
СОЖ
Цитата(toshas @ Mar 20 2008, 21:21) *
вопрос : микрошаг пригоден для циклического поворота и остановки столика в произвольной детерминированной позиции ? или он только сглаживает вращение ?

Если ШД имеет шаг 1.8 градуса то останавливаться от будет всегда с точностью +/- 0,45 градуса
независимо ни от каких ухищрений.

Микрошаг очень полезен в так называемом "сглаживании вращения".
В этом случае в динамике достигается точность, например для того же ШД с шагом 1.8 градуса
лучше чем +/- 0,45 градуса.
evgeny_ch
Цитата(СОЖ @ Mar 21 2008, 11:34) *
Если ШД имеет шаг 1.8 градуса то останавливаться от будет всегда с точностью +/- 0,45 градуса
независимо ни от каких ухищрений.

Микрошаг очень полезен в так называемом "сглаживании вращения".
В этом случае в динамике достигается точность, например для того же ШД с шагом 1.8 градуса
лучше чем +/- 0,45 градуса.

Это так, но все наооборот, болтается в динамике.
toshas
спасибо!, очень помогли .


-------------------------------
to Alexandr, так и сделал.
Alexandr
toshas не надо сваливать все вопросы в одну тему. Лучше создать новую.
EUrry
Приветствую! Я далек от электропривода, но поставили задачу, где необходимо применение шагового двигателя. Изучая данный топик, так и не ответил на 100% на свои вопросы. Допустим, у меня имеется ШД с минимальным шагом 1,8 градуса (200 полных шагов на оборот).
1) Если я правильно понял, то, независимо от деления шага в микрошаговом режиме, двигатель позиционируется с дискретностью в те же 1,8 градуса. Так ли это?
2) Микрошаговый режим ТОЛЬКО сглаживат колебания ротора после остановки?
3) Эти 200 основных положений ротора ФИКСИРОВАНЫ относительно корпуса двигателя? (наверное, определяется расположением полюсов статора)
4) Вопрос, по сути, относится к 1, но с наглядным примером: Возможно ли поверуть ротор на 20 градусов? Или только на кратное число полных шагов (11*1,8=19,8 или 12*1,8=21,6)?
Если можно, то дайте ссылку или выложите компетентную статью или что-то подобное, где можно достоверно найти ответы на поставленные вопросы.
Tanya
Цитата(EUrry @ Aug 13 2008, 18:42) *
Приветствую! Я далек от электропривода, но поставили задачу, где необходимо применение шагового двигателя. Изучая данный топик, так и не ответил на 100% на свои вопросы. Допустим, у меня имеется ШД с минимальным шагом 1,8 градуса (200 полных шагов на оборот).
1) Если я правильно понял, то, независимо от деления шага в микрошаговом режиме, двигатель позиционируется с дискретностью в те же 1,8 градуса. Так ли это?
2) Микрошаговый режим ТОЛЬКО сглаживат колебания ротора после остановки?
3) Эти 200 основных положений ротора ФИКСИРОВАНЫ относительно корпуса двигателя? (наверное, определяется расположением полюсов статора)
4) Вопрос, по сути, относится к 1, но с наглядным примером: Возможно ли поверуть ротор на 20 градусов? Или только на кратное число полных шагов (11*1,8=19,8 или 12*1,8=21,6)?
Если можно, то дайте ссылку или выложите компетентную статью или что-то подобное, где можно достоверно найти ответы на поставленные вопросы.

Ключевые слова - google, microstepping.
EUrry
Цитата(Tanya @ Aug 13 2008, 19:36) *
Ключевые слова - google, microstepping.

Это понятно, но у меня нет времени разбираться с этими вопросами, тем более, я специализируюсь в другой области и времени на разборы потребуется значительно больше. У меня сейчас возникли эти конкретные вопросы - от ответа на них зависит принятие решения. А в инете найти объективную точку зрения на какой-либо вопрос практически невозможно - рекламщики всё поганят. Приближение к объективности происходит при перерывании нета в течение 1-2 недель, и то, не на 100%. Поэтому и хотелось бы получить ссылки на компетентные источники, проверенные специалистами в этой области.
Огурцов
Цитата(EUrry @ Aug 13 2008, 14:42) *
Допустим, у меня имеется ШД с минимальным шагом 1,8 градуса (200 полных шагов на оборот).
1) Если я правильно понял, то, независимо от деления шага в микрошаговом режиме, двигатель позиционируется с дискретностью в те же 1,8 градуса.

Позиционирваться он будет в микрошаге, т.е. с большей дискретнстью, но я думаю, что нужно исходить из следующего: точность поворота вала, скажем, +/-5% от (полу)шага. Если использовать микрошаг 1/4, то получится уже +/-10% от микрошага, для 1/8 - +/-20%, для 1/16 - +/-40%. Видимо по той же причине менее 1/16 микрошаг не делают - разборос будет практически на целый микрошаг. Т.о. если требуется точное позиционирование с высоким разрешением, то микрошаг не очень-то и поможет. ТУт, видимо, лучше взять движки с более мелким шагом - есть на 0.9 и даже меньше. В режиме полушага получится очень неплохое разрешение - от 800 шагов на оборот. Иначе - ставить энекодер с произвольным разрешением, хоть 10000 (и, возможно, серводвигатель, а не шаговик).
evgeny_ch
Цитата(EUrry @ Aug 13 2008, 17:42) *
Приветствую!
...
Если можно, то дайте ссылку или выложите компетентную статью или что-то подобное, где можно достоверно найти ответы на поставленные вопросы.

Всем уже надоевшая, но для начала полезно.
Микроэлектронные проекты. Ридико Леонид Иванович.
Есть ещё хорошая книжка Кенио про ШД, русский перевод изд. Мир.
Видел в сети.
Так или иначе, необходимы первичные знания для правильного формулирования вопросов.
EUrry
Цитата(Огурцов @ Aug 14 2008, 03:18) *
Т.о. если требуется точное позиционирование с высоким разрешением, то микрошаг не очень-то и поможет. ТУт, видимо, лучше взять движки с более мелким шагом - есть на 0.9 и даже меньше. В режиме полушага получится очень неплохое разрешение - от 800 шагов на оборот. Иначе - ставить энекодер с произвольным разрешением, хоть 10000 (и, возможно, серводвигатель, а не шаговик).

Да тут дело то такое (по сути вопрос 4): сейчас есть железка с ШД без микрошагового режима, угол между необходимыми дисретными позициями которого не кратен шагу 1,8 градуса и частенько происходят сбои. Но на валу закреплен диск с прорезями, позиция которых соответствует необходимым положениям ротора ШД. Прорези открывают оптический канал оптопары, с которой поступает сигнал обратной связи. Можно ли в этом случае повернуть ротор ШД на угол не кратный его шагу или сигнал ОС поступит, но ШД всё равно "доделает" шаг до полного? Непонятно почему происходят сбои.
Цитата
Так или иначе, необходимы первичные знания для правильного формулирования вопросов.

Полностью с Вами согласен. Правильно поставленная задача уже есть половина ее решения. Но, к сожалению, время жмет, нужно уже что-то делать, а в "чужой" области можно потеряться и не успеть. sad.gif
Благодарю за ссылки!
Sat360
Неплохая подборка статей на тему ШД: http://stepmotor.ru/articles/

В частности, исходя из этого - http://stepmotor.ru/articles/stat2.php следует, что теоретически можно выставить любой угол поворота, вне зависимости от реального размера шага, но на практике из-за присутствия трения, в некоторых положениях точность установки не будет гарантироваться.
Tanya
Цитата(EUrry @ Aug 14 2008, 08:14) *
Непонятно почему происходят сбои.

Полностью с Вами согласен. Правильно поставленная задача уже есть половина ее решения. Но, к сожалению, время жмет, нужно уже что-то делать, а в "чужой" области можно потеряться и не успеть. sad.gif

Сбои непонятные, говорите...
Эта, чужая для Вас область, в большей степени относится к механике и электротехнике, чем к электронике. Если Вы в этом не разбираетесь и не хотите разбираться, наймите разбирающегося...
evgeny_ch
Цитата(EUrry @ Aug 14 2008, 07:14) *
Да тут дело то такое (по сути вопрос 4): сейчас есть железка с ШД без микрошагового режима, угол между необходимыми дисретными позициями которого не кратен шагу 1,8 градуса и частенько происходят сбои. Но на валу закреплен диск с прорезями, позиция которых соответствует необходимым положениям ротора ШД. Прорези открывают оптический канал оптопары, с которой поступает сигнал обратной связи. Можно ли в этом случае повернуть ротор ШД на угол не кратный его шагу или сигнал ОС поступит, но ШД всё равно "доделает" шаг до полного? Непонятно почему происходят сбои.

Полностью с Вами согласен. Правильно поставленная задача уже есть половина ее решения. Но, к сожалению, время жмет, нужно уже что-то делать, а в "чужой" области можно потеряться и не успеть. sad.gif
Благодарю за ссылки!

Дискретность энкодера (железки) должна быть кратной количеству шагов (микрошагов) ШД.
Иначе вы не состыкуете простым способом дискреты двигателя и измерительной системы, потребуется пересчет.
Лучше, когда дискретность энкодера выше дискретности привода.
Точность позиционирования и дискретность не одно и тоже. Если хотите позиционироваться точнее, вам потребуется замкнуть ОС по положению. Это уже сложнее, нужна соответствующая железка.
Если нагрузка на двигатель невелика, то отработка микрошага не представляет проблем в случае разомкнутой ОС.
Stepper Motor Microstepping with PIC18C452.
http://ww1.microchip.com/downloads/en/AppNotes/00822a.pdf
EUrry
Цитата(evgeny_ch @ Aug 14 2008, 12:45) *
Дискретность энкодера (железки) должна быть кратной количеству шагов (микрошагов) ШД.
Иначе вы не состыкуете простым способом дискреты двигателя и измерительной системы, потребуется пересчет.
Лучше, когда дискретность энкодера выше дискретности привода.
Точность позиционирования и дискретность не одно и тоже. Если хотите позиционироваться точнее, вам потребуется замкнуть ОС по положению. Это уже сложнее, нужна соответствующая железка.
Если нагрузка на двигатель невелика, то отработка микрошага не представляет проблем в случае разомкнутой ОС.
Stepper Motor Microstepping with PIC18C452.
http://ww1.microchip.com/downloads/en/AppNotes/00822a.pdf

Спасибо! a14.gif Если я правильно понял, то если у меня сейчас нет микрошагового режима и двигатель шагает с шагом 1,8 градуса, то и угол между прорезями в диске для оптопары должн быть кратен 1,8 градуса (если не применять ухищрений).
To Tanya:
У меня вопрос не был сформулирован как: "Я не разбираюсь в этом. Нанимать ли мне кого-то или самому доломать?" На этот вопрос я и сам способен ответить. Вы лучше чем "тыкать", ответили бы на сформулированные вопросы (если, конечно, сами "в теме" smile.gif ). Если бы все сами во всём разбирались, то зачем тогда форум?
Tanya
Цитата(EUrry @ Aug 14 2008, 18:01) *
Спасибо! a14.gif Если я правильно понял, то если у меня сейчас нет микрошагового режима и двигатель шагает с шагом 1,8 градуса, то и угол между прорезями в диске для оптопары должн быть кратен 1,8 градуса (если не применять ухищрений).
To Tanya:
У меня вопрос не был сформулирован как: "Я не разбираюсь в этом. Нанимать ли мне кого-то или самому доломать?" На этот вопрос я и сам способен ответить. Вы лучше чем "тыкать", ответили бы на сформулированные вопросы (если, конечно, сами "в теме" smile.gif ). Если бы все сами во всём разбирались, то зачем тогда форум?

Где это? Вроде бы, не "тыкаю" никого и никогда...
Вот Вы просите ответить на вопросы... Вам отвечают люди, но Вы не понимаете... Не вникаете (не хотите время тратить). Вот и в этом посте иллюстрация. Отсюда мой совет Вам. Вполне конкретный - потратить время свое или чужое, но не на халяву... а обменять чужое время на Ваши деньги.
Если нельзя советовать, зачем тогда форум?
evgeny_ch
Цитата(EUrry @ Aug 14 2008, 17:01) *
Спасибо! a14.gif Если я правильно понял, то если у меня сейчас нет микрошагового режима и двигатель шагает с шагом 1,8 градуса, то и угол между прорезями в диске для оптопары должн быть кратен 1,8 градуса (если не применять ухищрений).
...

Вообще-то ШД применяют без энкодеров, в подавляющем большинстве случаев.
Точность позиционирования достигается двумя способами - механической редукцией на паре винт-гайка и дроблением шага.
ШД изготавливают с высокой точностью. Если ваша нагрузка позволяет вращать ШД, т. е.
его синхронизирующий момент достаточен, то энкодер вам не понадобится.
Попробуйте сделать расчет потребных усилий исходя из параметров ШД и нагрузки, требуемой скорости и пр. Или доведите до сведения особенности вашего механизма.
celladon
Меня тоже интересует эта тема. Пробовал получить микрошаг 1/256.
Точности не получил. И думаю без обратной связи не получится. Нужен энкодер с точностью большей чем еденичный шаг шагового двигателя. Если кому интересно, что у меня получилось можно посмотреть здесь http://www.imafania.narod.ru/microstep.htm.
celladon
Как вы получаете микрошаг?
Я знаю два способа. Первое это двумя сигналами ШИМ.Грубо говоря меняя напрящения на обмотках. Второе по току в обмотках на токоизмерительных резисторах используя компораторы, АЦП... Вообщем контролируя ток в обмотках. Второй вариант я думаю предпочтительный. Может есть другие варианты?
Skywolf
Цитата(celladon @ Sep 30 2008, 11:19) *
Как вы получаете микрошаг?
Я знаю два способа. Первое это двумя сигналами ШИМ.Грубо говоря меняя напрящения на обмотках. Второе по току в обмотках на токоизмерительных резисторах используя компораторы, АЦП... Вообщем контролируя ток в обмотках. Второй вариант я думаю предпочтительный. Может есть другие варианты?



Дык ШИМ и меняет ток!!! А токоизмерительные резисторы и компараторы, цап это всего навсего схема измерения, или вы просто в словах запутались? ток можно менять регулируя напряжение линейно биполярным транзистором в линейном режиме, но КПД lol.gif кстати при ШИМе напряжение измерять среднеквадратичное то тоже самое и будет...




В прикреплённом файле мои достижения, это 10 микрошаг, можно и больше управление FPGA CycloneII, датчик тока АЦП. Все в одном разгон торможение работа с энкодарами.
Огурцов
Цитата(Skywolf @ Oct 1 2008, 06:44) *
Дык ШИМ и меняет ток!!!

ШИМ меняет Ширину Импульсов. Хотя я тоже не понял, что хотел сказать celladon.
evgeny_ch
Можно без ШИМ, усилитель класса В (ОС по току), с неколькими уровнями двухполярного питания.
Для точных приводов это предпочтительнее. КПД примерно 70% для двигателя 3А.
Нет проблем с ЭМС.
celladon
Цитата(Skywolf @ Oct 1 2008, 10:44) *
Дык ШИМ и меняет ток!!! А токоизмерительные резисторы и компараторы, цап это всего навсего схема измерения, или вы просто в словах запутались? ток можно менять регулируя напряжение линейно биполярным транзистором в линейном режиме, но КПД lol.gif кстати при ШИМе напряжение измерять среднеквадратичное то тоже самое и будет...
В прикреплённом файле мои достижения, это 10 микрошаг, можно и больше управление FPGA CycloneII, датчик тока АЦП. Все в одном разгон торможение работа с энкодарами.

ШИМ ток не меняет, а меняет напряжение (хотя это тоже условно).
При одном значении ШИМ но разной скорости вращенияя, ток будет разным. Чем больше скорость, тем меньше ток. Это при ШИМ без обратной связи по току.
evgeny_ch
Цитата(celladon @ Oct 1 2008, 10:39) *
ШИМ ток не меняет, а меняет напряжение (хотя это тоже условно).
При одном значении ШИМ но разной скорости вращенияя, ток будет разным. Чем больше скорость, тем меньше ток. Это при ШИМ без обратной связи по току.

Надо как-то запомнить.
EUrry
Цитата(celladon @ Oct 1 2008, 11:39) *
ШИМ ток не меняет, а меняет напряжение

Это как? 07.gif Меняется ширина импульса при ПОСТОЯННОЙ амплитуде напряжения!!! А уж чем длительность импульса больше, тем больше нарастает ток за это время.
celladon
Цитата(EUrry @ Oct 1 2008, 11:57) *
Это как? 07.gif Меняется ширина импульса при ПОСТОЯННОЙ амплитуде напряжения!!! А уж чем длительность импульса больше, тем больше нарастает ток за это время.

Это за один ипульс ШИМа. А за следующий импульс ток вырастит еще. И т.д. А если расматривать импульс шага двигателя. Сколько в него вложится импульсов шима. А как при зменении частоты вращения двигателя меняется число импульсов ШИМа за один шаг?
Skywolf
О что началось... число импульсов не меняется, меняется соотношение(скважность) времени положительного напряжения к отрицательному (мостовая схема) на обмотке ШД и сответствено меняется ток, несущая ШИМа большн частоты вращения ШД
Denis K
Цитата(toshas @ Mar 20 2008, 21:21) *
стоит следующая задача, сделать поворотный столик с достаточно высокой точностью позиционирования, скорость вращения не так важна, около 360 град / мин подойдет.
во избежании люфта в редукторе, предложено использовать соединение двигателя со столиком напрямую (вес столика <200г).
реально доставаемый шаговый двигатель имеет шаг 1.8 градуса, что, для наших целей, является грубым, хотелось бы увеличить точность раз в 10 в идеале.
насколько я понял применив хитрый способ управления (используя спец. драйвер) можно шаговик заставить шагать в микрошаге. ( http://www.telesys.ru/electronics/projects.php?do=p077 ).
вопрос : микрошаг пригоден для циклического поворота и остановки столика в произвольной детерминированной позиции ? или он только сглаживает вращение ?


В Вашем случае, если возможны механические доработки в устройстве, использовать ШД с шагом 0.9 град с редуктором на ремне. Шкив на ось столика, шкив на вал ШД, ремень натягиваете дополнительным валиков (вообщем стандартное решение). Люфта не будет, и даже при делении шага на 4 и передачи 1:2 получите 0.1125 град (что вроде вас устраивает - 0.18 град).
TSerg
Цитата(Denis K @ Oct 22 2008, 11:38) *
В Вашем случае, если возможны механические доработки в устройстве, использовать ШД с шагом 0.9 град с редуктором на ремне. Шкив на ось столика, шкив на вал ШД, ремень натягиваете дополнительным валиков (вообщем стандартное решение). Люфта не будет, и даже при делении шага на 4 и передачи 1:2 получите 0.1125 град (что вроде вас устраивает - 0.18 град).


При одном условии - ремень зубчатый, иначе со временем позиция уплывет.
Либо пройстейшую зубчатую передачу с антилюфтином smile.gif
Для просмотра полной версии этой страницы, пожалуйста, пройдите по ссылке.
Invision Power Board © 2001-2025 Invision Power Services, Inc.