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

 
 
> Расчет движения шагового двигателя (дискретизация)
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
 
Start new topic
Ответов
Schulz_K
сообщение Apr 28 2011, 11:11
Сообщение #2


Участник
*

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



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


Гуру
******

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



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


Участник
*

Группа: Свой
Сообщений: 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
Сообщение #5


Гуру
******

Группа: Свой
Сообщений: 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

Сообщений в этой теме
- Schulz_K   Расчет движения шагового двигателя (дискретизация)   Apr 27 2011, 15:17
- - sergeeff   Коллега! Шаговый двигатель - железяка. Вы про...   Apr 27 2011, 16:51
- - AlexeyW   Вы полагаете, что изменение скорости происходит за...   Apr 27 2011, 20:19
|- - e-serg   Цитата(AlexeyW @ Apr 28 2011, 05:19) ====...   Apr 28 2011, 00:32
|- - Schulz_K   Цитата(e-serg @ Apr 28 2011, 03:32) ...   Apr 28 2011, 09:17
||- - scifi   Цитата(Schulz_K @ Apr 28 2011, 13:17) ......   Apr 28 2011, 10:05
|||- - tyro   Цитата(scifi @ Apr 28 2011, 14:05) Что ес...   Apr 28 2011, 10:13
|||- - Maverick   Цитата(scifi @ Apr 28 2011, 13:05) Вообще...   Mar 31 2013, 21:05
|||- - Tanya   Цитата(Maverick @ Apr 1 2013, 01:05) Инте...   Apr 1 2013, 07:28
|||- - dinam   Отвечу как практик . Работаем почти всегда по тр...   Apr 1 2013, 07:55
|||- - Maverick   Цитата(dinam @ Apr 1 2013, 10:55) Отвечу ...   Apr 1 2013, 09:01
|||- - dinam   Цитата(Maverick @ Apr 1 2013, 16:01) а не...   Apr 1 2013, 09:18
||- - sergeeff   Цитата(Schulz_K @ Apr 28 2011, 12:17) я д...   Apr 28 2011, 10:12
|- - AlexeyW   Цитата(e-serg @ Apr 28 2011, 04:32) ...   Apr 28 2011, 19:00
||- - Maverick   Цитата(Schulz_K @ Apr 28 2011, 17:20) Мо...   Apr 29 2011, 05:49
|- - sergeeff   Цитата(Schulz_K @ Apr 28 2011, 14:11) В р...   Apr 28 2011, 11:54
- - TSerg   Шо-то это мне напомнило: "Чушики, чушики - а ...   Apr 28 2011, 19:21


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

 


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


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