реклама на сайте
подробности

 
 
2 страниц V   1 2 >  
Reply to this topicStart new topic
> Расчет движения шагового двигателя (дискретизация)
Schulz_K
сообщение Apr 27 2011, 15:17
Сообщение #1


Участник
*

Группа: Свой
Сообщений: 63
Регистрация: 25-05-10
Из: Киев
Пользователь №: 57 515



Правильно ли я определяю ускорение при движении шагового двигателя: интервал времени между шагами двигателя 1000us - значит его скорость V=ds/dt = 1/0.001 = 1000 шагов в сек. Скорость меняется на 1us то есть становится 1001us. При этом ускорение составляет a=(V1^2-V0^2)/(2s) в данном примере получим а=-998,5 шагов в сек^2. То же самое что a=(V1-V0)/dt a=(1000-999)/0.001=999 шагов в сек^2.
Вопрос в том - можно ли так интерпретировать дискретное движение шагового двигателя.
А нужно это вот для чего: при дискретности отсчета времени в 1мкс и частоте 10000 шагов в сек ускорение уже будет 990 000 шагов в сек2 при таких высоких ускорениях есть вероятность потери шагов (двигатель будет сбиваться). То есть нужно выбирать меньшее время дискретизации - то есть бОльшую разрядность таймеров и переменных, большую частоту микроконтроллера.

Правильный ли у меня ход расчетов ?
Go to the top of the page
 
+Quote Post
sergeeff
сообщение Apr 27 2011, 16:51
Сообщение #2


Профессионал
*****

Группа: Свой
Сообщений: 1 481
Регистрация: 10-04-05
Пользователь №: 4 007



Коллега!

Шаговый двигатель - железяка. Вы про микросекунды на фоне миллисекунд рассуждаете. Это - ловля блох. Есть хорошая книжка Т.Кенио "Шаговые двигатели и их микропроцесорные системы управления", Москва, Энергоатомиздат, 1987. Внятно и по-русски.
Go to the top of the page
 
+Quote Post
AlexeyW
сообщение Apr 27 2011, 20:19
Сообщение #3


Знающий
****

Группа: Свой
Сообщений: 988
Регистрация: 3-11-10
Пользователь №: 60 636



Вы полагаете, что изменение скорости происходит за один такт.
Насколько я понял работу ШД в данном режиме (заданной скорости), он отрабатывает изменение частоты приходящих импульсов совсем не за один такт. Поэтому и ускорение будет намного меньше.
Пуск шагового двигателя осуществляется из неподвижного положения ротора, которое он занимает при установившихся значениях токов в обмотках, путем скачкообразного увеличения частоты управляющих импульсов от нуля до рабочей. При этом ротор вначале отстает от поля, затем, ускорясь, достигает частоты вращения поля, опережает его и вследствие отрицательного синхронизирующего момента снова замедляет свое движение. Вследствие демпфирования колебания скорости вращения быстро затухают, наступает установившийся режим, тот же переходной процесс и при изменении частоты.

Сообщение отредактировал AlexeyW - Apr 27 2011, 20:20
Go to the top of the page
 
+Quote Post
e-serg
сообщение Apr 28 2011, 00:32
Сообщение #4


Частый гость
**

Группа: Участник
Сообщений: 97
Регистрация: 24-07-08
Из: Иркутск
Пользователь №: 39 180



Цитата(AlexeyW @ Apr 28 2011, 05:19) *
====
путем скачкообразного увеличения частоты управляющих импульсов от нуля до рабочей.
====

не совсем удачная формулировка или бред. в станках шаговый двигатель не в состоянии начать двигать механизм сразу на максимальной скорости.
При таком условии он вообще не стронется с места.
поэтому вводят и разгон и торможение.

Скорость 10тыс для шаговых кажись немного великовата.

Сообщение отредактировал e-serg - Apr 28 2011, 00:38
Go to the top of the page
 
+Quote Post
Schulz_K
сообщение Apr 28 2011, 09:17
Сообщение #5


Участник
*

Группа: Свой
Сообщений: 63
Регистрация: 25-05-10
Из: Киев
Пользователь №: 57 515



Цитата(e-serg @ Apr 28 2011, 03:32) *
не совсем удачная формулировка или бред. в станках шаговый двигатель не в состоянии начать двигать механизм сразу на максимальной скорости.
При таком условии он вообще не стронется с места.
поэтому вводят и разгон и торможение.

Скорость 10тыс для шаговых кажись немного великовата.


Насчет 10тыс - это я и правда многовато сказал.
А насчет разгона и торможения - это и есть ключевой вопрос: как определить шаг разгона, то есть на какое минимальное значение за один шаг можно менять длительность импульсов шагов.
Вот мой расчет и говорит, что при шаге 1мкс ускорения могут быть соизмеримы по величине с ускорениями при старте с больших частот.
Например шаг 1мкс при периоде 165мкс (частота 6кГц) даст ускорение 221тыс шагов в сек2, а старт при периоде 2000мкс (500Гц) даст ускорение 250тыс шагов в сек2.
То есть если мы с некоторым запасом берем максимальную частоту старта 500 Гц, то при достижении частоты 6 кГц шаг разгона/торможения должен быть теоретически не более 1 мкс, иначе скачки скорости (ускорения) будут недопустимо велики). Где тут теория расходится с практикой ? Кроме того, я думаю, что при скоростях близких к максимальной и допустимые ускорения должны быть меньше, чем при минимальных скоростях т.к. там сильно падает момент двигателя.
Go to the top of the page
 
+Quote Post
scifi
сообщение Apr 28 2011, 10:05
Сообщение #6


Гуру
******

Группа: Свой
Сообщений: 3 020
Регистрация: 7-02-07
Пользователь №: 25 136



Цитата(Schulz_K @ Apr 28 2011, 13:17) *
... шаг разгона/торможения должен быть теоретически не более 1 мкс, иначе скачки скорости (ускорения) будут недопустимо велики).

Что есть "шаг разгона"?

Update:
Вообще не понимаю, в чём проблема? Реализуйте равноускоренный разгон и торможение, как это делают в большинстве случаев (так называемый трапецевидный профиль скорости). Кстати, как-то подсчитывал, что если промежутки времени между последовательными шагами соотносятся как 1/sqrt(2), 1/sqrt(3), 1/sqrt(4), 1/sqrt(5) и т.д., то движение получается равноускоренное.
Go to the top of the page
 
+Quote Post
sergeeff
сообщение Apr 28 2011, 10:12
Сообщение #7


Профессионал
*****

Группа: Свой
Сообщений: 1 481
Регистрация: 10-04-05
Пользователь №: 4 007



Цитата(Schulz_K @ Apr 28 2011, 12:17) *
я думаю, что ...


Как говорил один майор у нас на военной кафедре "Надо не думать, а знать!". Влом книгу, что советовал, почитать?
Вы бы еще в мегагерцовую область частот залезли!
Go to the top of the page
 
+Quote Post
tyro
сообщение Apr 28 2011, 10:13
Сообщение #8


Любитель Кошек
*****

Группа: Свой
Сообщений: 1 593
Регистрация: 8-06-06
Пользователь №: 17 873



Цитата(scifi @ Apr 28 2011, 14:05) *
Что есть "шаг разгона"?

Предполагаю, что это единица дискретизации по времени. Топик стартер запул(ся) в определениях.


--------------------
По современному этикету, в левой руке держат вилку, в правой - мышку.
Go to the top of the page
 
+Quote Post
Schulz_K
сообщение Apr 28 2011, 11:11
Сообщение #9


Участник
*

Группа: Свой
Сообщений: 63
Регистрация: 25-05-10
Из: Киев
Пользователь №: 57 515



В рекомендованной книге, кстати, все примеры расчетов периодов импульсов делаются в миллисекундах с точностью до 3го знака после запятой - то есть с точностью до микросекунд. Вот я и хочу разобраться - откуда взялось такое требование к точности отсчета времени и можно ли его загрубить хотя бы до 1/10 мс, как мне тут советуют.
Go to the top of the page
 
+Quote Post
scifi
сообщение Apr 28 2011, 11:54
Сообщение #10


Гуру
******

Группа: Свой
Сообщений: 3 020
Регистрация: 7-02-07
Пользователь №: 25 136



Разумно предположить, что для избежания пропуска шагов нужно ограничивать ускорение. Если скорость - это v=s/t (шаг/время шага), то для малых изменений скорости ускорение - это a=s*dt/t^3. Таким образом, экспериментально определяем максимально допустимое ускорение для системы (зависит от момента инерции, мощности двигателя и т.д.) и пересчитываем его в максимально допустимую погрешность дискретизации времени при имеющихся скоростях. Вот и всё.
Кстати, обратите внимание, что при использовании драйверов с дробным шагом один реальный шаг двигателя будет соответствовать нескольким импульсам на управляющем входе. Это надо учитывать при расчётах. Очевидно, "микрошаги" допускают бОльшую нерегулярность, чем полные шаги.
Go to the top of the page
 
+Quote Post
sergeeff
сообщение Apr 28 2011, 11:54
Сообщение #11


Профессионал
*****

Группа: Свой
Сообщений: 1 481
Регистрация: 10-04-05
Пользователь №: 4 007



Цитата(Schulz_K @ Apr 28 2011, 14:11) *
В рекомендованной книге, кстати, все примеры расчетов периодов импульсов делаются в миллисекундах с точностью до 3го знака после запятой - то есть с точностью до микросекунд. Вот я и хочу разобраться - откуда взялось такое требование к точности отсчета времени и можно ли его загрубить хотя бы до 1/10 мс, как мне тут советуют.


С точностью до 1 мс - за глаза. Вы когда начнете реально моторчик включать/выключать и разгонять/тормозить, столкнетесь с массой других проблемок, типа резонансных частот, когда он начнет визжать как поросенок.
Go to the top of the page
 
+Quote Post
Schulz_K
сообщение Apr 28 2011, 14:20
Сообщение #12


Участник
*

Группа: Свой
Сообщений: 63
Регистрация: 25-05-10
Из: Киев
Пользователь №: 57 515



Цитата(scifi @ Apr 28 2011, 14:54) *
Если скорость - это v=s/t (шаг/время шага), то для малых изменений скорости ускорение - это a=s*dt/t^3.


Если можно, поподробнее, пожалуйста про эту формулу. Тут t и dt это что ?

Цитата(scifi @ Apr 28 2011, 14:54) *
Таким образом, экспериментально определяем максимально допустимое ускорение для системы (зависит от момента инерции, мощности двигателя и т.д.) и пересчитываем его в максимально допустимую погрешность дискретизации времени при имеющихся скоростях. Вот и всё.


Вот именно так я и делаю. За основу беру ускорение, которое возникает при начале движения т.е. экспериментально нахожу скорость с которой можно без проблем стартовать и вычисляю ускорение. На высоких скоростях эксперимент проведу позже.

Что касается резонансных частот - так системы с ШД, но без разгона-торможения у меня работают уже несколько лет и никаких проблем с резонансами не было. Правда, там частоты не более 1 кГц. Резонансные частоты можно легко вырезать, если система допускает скачки скорости.
Go to the top of the page
 
+Quote Post
scifi
сообщение Apr 28 2011, 14:27
Сообщение #13


Гуру
******

Группа: Свой
Сообщений: 3 020
Регистрация: 7-02-07
Пользователь №: 25 136



Цитата(Schulz_K @ Apr 28 2011, 18:20) *
Если можно, поподробнее, пожалуйста про эту формулу. Тут t и dt это что ?

t - это время шага (период), dt - изменение времени шага между двумя последовательными шагами, a - возникающее от этого изменения ускорение.
Go to the top of the page
 
+Quote Post
AlexeyW
сообщение Apr 28 2011, 19:00
Сообщение #14


Знающий
****

Группа: Свой
Сообщений: 988
Регистрация: 3-11-10
Пользователь №: 60 636



Цитата(e-serg @ Apr 28 2011, 04:32) *
не совсем удачная формулировка или бред. в станках шаговый двигатель не в состоянии начать двигать механизм сразу на максимальной скорости.

не очень внимательно, там и говорилось о разгоне, а "сразу" - про тактовые импульсы.
Go to the top of the page
 
+Quote Post
Guest_TSerg_*
сообщение Apr 28 2011, 19:21
Сообщение #15





Guests






Шо-то это мне напомнило: "Чушики, чушики - а вот так, фонит" (С) Стругацкие

P.S.
Моделирование переходных процессов ( электрических и электромеханических ) в ШД - давно решенная задача.
"Стоит начать с основ и все сбудется" © Газпром
Go to the top of the page
 
+Quote Post

2 страниц V   1 2 >
Reply to this topicStart new topic
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 


RSS Текстовая версия Сейчас: 20th June 2025 - 20:27
Рейтинг@Mail.ru


Страница сгенерированна за 0.01489 секунд с 7
ELECTRONIX ©2004-2016