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

 
 
2 страниц V  < 1 2  
Reply to this topicStart new topic
> Алгоритм линейного ускорения-торможения ШД, Есть элегантное решение?
evgeny_ch
сообщение May 4 2009, 08:23
Сообщение #16


чукчхэшаражогрмонтажник
*****

Группа: Участник
Сообщений: 1 852
Регистрация: 13-07-07
Из: Minsk
Пользователь №: 29 094



Цитата(Methane @ May 4 2009, 11:11) *
Не по скорости а по перемещению. И решается. Если забивать в программу момент который эта нагрузка создает. Но это в теории. А на практике, лучше повесить на двигатель енкодер с дырками, и по этому енкодеру смотреть, шагнул двигатель или еще нет.
Не совсем так или так но не совсем.
В этом случае коммутация ШД осуществляется импульсами энкодера,
т. н. автокоммутация. Позволяет избавиться от резонансов и потери шагов.
Это делается просто на аппаратном уровне, как в контроллерах для BLDC
приводов HDD и пр. крутилок.

Сообщение отредактировал evgeny_ch - May 4 2009, 08:28


--------------------
Quo vadis?
Go to the top of the page
 
+Quote Post
Methane
сообщение May 4 2009, 08:26
Сообщение #17


Гуру
******

Группа: Свой
Сообщений: 3 615
Регистрация: 12-01-09
Из: США, Главное разведовательное управление
Пользователь №: 43 230



Цитата(evgeny_ch @ May 4 2009, 11:23) *
Не совсем так или так но не совсем.
В этом случает коммутация ШД осуществляется импульсами энкодера,
т. н. автокоммутация. Позволяет избавиться от резонансов и потери шагов.

Ну? Нафига в таком случае тот ваш алгоритм?
Go to the top of the page
 
+Quote Post
_Pasha
сообщение May 4 2009, 08:53
Сообщение #18


;
******

Группа: Участник
Сообщений: 5 646
Регистрация: 1-08-07
Пользователь №: 29 509



Я тут подумал: раз у нас все сводится к конечным значениям длительности, попробуйте покопать приближение с помощью цепных дробей. Думаю, за вменяемое кол-во итераций все-же можно избавиться от деления. Наверное, и критерий будет такой, чтобы время не превышало аналогичной операции деления.
Go to the top of the page
 
+Quote Post
Огурцов
сообщение May 4 2009, 09:38
Сообщение #19


Гуру
******

Группа: Участник
Сообщений: 3 928
Регистрация: 28-03-07
Из: РФ
Пользователь №: 26 588



Поставьте датчик ускорения - будет красиво
Go to the top of the page
 
+Quote Post
khach
сообщение May 4 2009, 10:22
Сообщение #20


Гуру
******

Группа: Свой
Сообщений: 3 439
Регистрация: 29-12-04
Пользователь №: 1 741



"Красиво" управлять шаговиком- это только по таблицам. Обычно простой рампы (трапеции) достаточно. Но иногда нужен безударный разгон-торможение (т.е ускорение меняется тоже плавно от нуля к максимуму и наоборот) или учет потерь вращающего момента шаговика на высоких оборотах. Хуже всего, если механическая характеристика подвижной части системы переменная (например с грузом и без груза), а ездить надо с максимальной скоростью. Приходиться заводить несколько таблиц разгон-торможение.
По обратной связи- обычно достаточно диска на валу шаговика с прорезью и контролировать число шагов на оборот. Если их оказалось не 400 ( в полушаге для типовых моторов) то произошла потеря позиции и надо "кричать караул"- звать наладчика для корректировки законов разгона- торможения или смазки механизма. Энкодер бывает нужен только на этапе отладки механики в процессе проектирования привода, но там желателен и тензометрический датчик момента на валу, и датчик линейных ускорений подвижной части привода итд.
Go to the top of the page
 
+Quote Post
Methane
сообщение May 4 2009, 10:41
Сообщение #21


Гуру
******

Группа: Свой
Сообщений: 3 615
Регистрация: 12-01-09
Из: США, Главное разведовательное управление
Пользователь №: 43 230



Цитата(khach @ May 4 2009, 13:22) *
По обратной связи- обычно достаточно диска на валу шаговика с прорезью и контролировать число шагов на оборот. Если их оказалось не 400 ( в полушаге для типовых моторов) то произошла потеря позиции и надо "кричать караул"- звать наладчика для корректировки законов разгона- торможения или смазки механизма.

Зачем? Просто не делать следующий шаг, пока текущий не завершён. Все.
Go to the top of the page
 
+Quote Post
evgeny_ch
сообщение May 4 2009, 10:44
Сообщение #22


чукчхэшаражогрмонтажник
*****

Группа: Участник
Сообщений: 1 852
Регистрация: 13-07-07
Из: Minsk
Пользователь №: 29 094



Цитата(Methane @ May 4 2009, 11:26) *
Ну? Нафига в таком случае тот ваш алгоритм?
Тот алгоритм это какой? biggrin.gif
Я вроде и не предлагал алгоритмов.
Что касаемо ускорения, то его нужно рассматривать
применительно к механизму, но это не алгорим, аксиома называется.
Ненагруженный ШД (т. е. соотношение момента к инерции нагрузки)
может стартовать с максимальным ускорением, нагруженный с меньшим.
Что касается автонастройки, то без ОС это невозможно.


--------------------
Quo vadis?
Go to the top of the page
 
+Quote Post
khach
сообщение May 4 2009, 11:56
Сообщение #23


Гуру
******

Группа: Свой
Сообщений: 3 439
Регистрация: 29-12-04
Пользователь №: 1 741



Цитата(Methane @ May 4 2009, 12:41) *
Зачем? Просто не делать следующий шаг, пока текущий не завершён. Все.

Непонял. Мы же плавно разгоняемя до какой- то неведомой скорости, которая определяется трением в механизме, моментом инерции движущихся частей, уменьшением момента двигателя при росте частоты "шагания" и еще кучей параметров. Можно конечно все это моделировать, но обычно я пишу для готового механизма простенькую отладочную программку которя, безопасно двигая механизм, постепенно повышает скорость движения. И по датчику на валу отслеживает, при какой скорости начнем терять шаги. Получаю максимальную скорость механизма для данного движка и параметров его питания. Даю 25% запас по частоте и записываю это в еепром контроллера.
А безударный разгон бывает часто нужен в измерительной технике. При плавном измерении ускорения кривая изменения скорости имеет S-образный вид.
Go to the top of the page
 
+Quote Post
dpss
сообщение May 5 2009, 15:51
Сообщение #24


Знающий
****

Группа: Свой
Сообщений: 540
Регистрация: 19-04-08
Из: Москва
Пользователь №: 36 913



Цитата(khach @ May 4 2009, 15:56) *
При плавном измерении ускорения кривая изменения скорости имеет S-образный вид.

При S образном разгоне-торможении в сравнении с трапецией при одинаковой максимальной скорости и времени движения придется двигаться с большим ускорением , что не всегда позволяет привод или механическая нагрузка.
Go to the top of the page
 
+Quote Post
_Pasha
сообщение May 5 2009, 17:13
Сообщение #25


;
******

Группа: Участник
Сообщений: 5 646
Регистрация: 1-08-07
Пользователь №: 29 509



Цитата(dpss @ May 5 2009, 18:51) *
При S образном разгоне-торможении в сравнении с трапецией при одинаковой максимальной скорости и времени движения придется двигаться с большим ускорением

Форму S образного разгона тоже можно разной придумать. Достаточно прикинуть сопряжение прямой и кусков параболы с ограничением на максимальное значение ускорения   производной
Go to the top of the page
 
+Quote Post
Skywolf
сообщение May 7 2009, 07:01
Сообщение #26


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

Группа: Свой
Сообщений: 171
Регистрация: 2-06-05
Из: Город дождей и белых ночей.....
Пользователь №: 5 683



а самый младший Cyclone II это 5 тыс. который что ли?. я на 8 тыс.(ep2c8t144) кручу 4 ШД ,делитель общий , 16 разряда . ШД работает в 10-микрошаговом режиме (1.8 градуса механических) итого 2000 шагов на оборот и максимальная скорость 65`536 (2^16) итого ~32 об./сек. , а больше и смысла нет, т.к. подовляющее большинство ШД быстрее крутится не способно. место осталось но мала, но там еще много доп. функций было.

Так что мне кажется что вы просто с разрядностью делителя промахнулись.


П.С. Имел опыт сделать тоже самое на таблице. брал MAX II (у него есть флеш пользователя) и в его флешку таблицу заливал. И на адрес скорость подавал а данные на счетчик отправлял. Но фигня получилась, не рекомендую. флеша мало, разрядность максимум 9 бит ...


просто картинка красивая, правда тут разгона/торможения не видно

осциллограма
Go to the top of the page
 
+Quote Post
dinam
сообщение May 8 2009, 06:55
Сообщение #27


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

Группа: Свой
Сообщений: 1 415
Регистрация: 10-06-05
Из: Наукоград Кольцово(Новосибирск)
Пользователь №: 5 898



Да это на 4600 LEs. По поводу разрядности делителя. До того как задумался об линейности было сделано так. Скорость 23 разряда. Разгон/торможение 16 разрядов. Время пусть будет 16 разрядов. Если сделать разрядность скорости 18 и немножко другие величины подсократить, то по прикидкам в мегавизарде: 18/48 - 2445 LEs. Вроде должно влезть в Cyclone II если сделать общий делитель. Но пока не проверял, т.к. параллельно занимаюсь и другими делами. У меня как я писал 3200 импульсов на оборот. И максимальная скорость чуть более 50 об/сек. Но и это не предел, т.к. ШД пробовал крутить от 30В, а предполагается от 48В.
Go to the top of the page
 
+Quote Post

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

 


RSS Текстовая версия Сейчас: 4th July 2025 - 11:08
Рейтинг@Mail.ru


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