Добрый день, друзья.
Как обычно, я в поиске решений, и если нахожу решение, охотно делюсь далее в ветке.
Так вот, есть необходимость, пока без технологических объектов написать функцию движения устройства, позиционирующемуся по энкодеру. Нужно плавно его разогнать до определенной скорости и перед достижением целевой координаты начать торможение скоростью.
Имеем расстояние от актуальной позиции до целевой точки, это разность между значениями энкодера
#sX:= DINT_TO_INT(ABS("Data".ActualPosition.X - #TargetCell.X)); // Получить расстояние от Текущей позиции до Целевой ячейки
Далее я в таком виде задаю изменение скорости
IF (#sX < 1000) AND (#sX > 500)
THEN
"Data".GetSpeedCrane.SpeedNowX := 1500; // Телеграмма со значением скорости
END_IF;
IF (#sX < 500 AND #sX > 350)
THEN
"Data".GetSpeedCrane.SpeedNowX := 1000; // Телеграмма со значением скорости
END_IF;
IF ( #sX < 100)
THEN
"Data".GetSpeedCrane.SpeedNowX := 100; // Телеграмма со значением скорости
END_IF;
Хочется эти переключения скорости сделать более плавными. В начале разгон, потом крейсерская скорость, далее снижение скорости.
Заранее благодарю за объяснение или решение.
- Обязательно представиться на русском языке кириллицей (заполнить поле "Имя").
- Фиктивные имена мы не приветствуем. Ивановых и Пупкиных здесь уже достаточно.
- Не надо писать свой вопрос в первую попавшуюся тему - всегда лучше создать новую тему.
- За поиск, предложение и обсуждение пиратского ПО и средств взлома - бан без предупреждения. Непонятно? - Читать здесь.
- Рекламу и частные объявления "куплю/продам/есть халтура" мы не размещаем ни на каких условиях.
- Перед тем как что-то написать - читать здесь, а затем здесь и здесь.
- Не надо писать в ЛС администраторам свои технические вопросы. Администраторы форума отлично знают как работает форум, а не все-все контроллеры, о которых тут пишут.
Формула сверхудобной скорости
Модератор: Глоб.модераторы
-
- освоился
- Сообщения: 248
- Зарегистрирован: 31 янв 2017, 08:44
- Имя: Маркушин Андрей Геннадьевич
- Страна: Россия
- город/регион: Нижегородская обл., Выкса
- Благодарил (а): 19 раз
- Поблагодарили: 64 раза
Формула сверхудобной скорости
Если привод перемещения этого "технологического объекта" поддерживает регулировку скорости, то пусть он сам и обеспечивает плавность изменения скоростных режимов.
-
- не первый раз у нас
- Сообщения: 372
- Зарегистрирован: 12 дек 2018, 14:47
- Имя: Влад
- Благодарил (а): 1 раз
- Поблагодарили: 50 раз
Формула сверхудобной скорости
Можно поставить инвертор, плавный разгон за счет самого инвертора а вот торможение по энкодеру через аналоговый выход контроллера на вход инвертора. Программный блок лучше использовать изменение скорости в зависимости от расстояния. Тогда получится плавно. А если фиксированные частоты то можно и без энкодера.
-
- почётный участник форума
- Сообщения: 5790
- Зарегистрирован: 07 окт 2011, 09:12
- Имя: Гаско Вячеслав Эриевич
- Страна: Россия
- город/регион: Рязань
- Благодарил (а): 673 раза
- Поблагодарили: 841 раз
Формула сверхудобной скорости
Учёные мужи от физики толкуют нам, что скорость является производной по времени от положения, а ускорение - второй производной.
А яйцеголовые математики утверждают, что единственная функция, любая производная которой линейно зависит от самой функции это экспонента.
Исходя из этого, если вы не желаете, или не можете позиционироваться по ПИД-закону, можно сделать скорость линейно-зависимой от рассогласования. Надо только ускорение ограничить. Экспонента, она и в Африке - экспонента...
А яйцеголовые математики утверждают, что единственная функция, любая производная которой линейно зависит от самой функции это экспонента.
Исходя из этого, если вы не желаете, или не можете позиционироваться по ПИД-закону, можно сделать скорость линейно-зависимой от рассогласования. Надо только ускорение ограничить. Экспонента, она и в Африке - экспонента...
Последний раз редактировалось Ryzhij 20 окт 2021, 19:35, всего редактировалось 1 раз.
---------------------------------------------------
«У человека в душе дыра размером с Бога, и каждый заполняет её как может.» (Жан-Поль Сартр)
"Ту пустоту, которая остаётся в душе, когда в ней нет Бога, и весь мир не может заполнить." (святитель Николай Сербский)
«У человека в душе дыра размером с Бога, и каждый заполняет её как может.» (Жан-Поль Сартр)
"Ту пустоту, которая остаётся в душе, когда в ней нет Бога, и весь мир не может заполнить." (святитель Николай Сербский)
-
- эксперт
- Сообщения: 2471
- Зарегистрирован: 20 дек 2018, 04:45
- Имя: Сергей
- Страна: РБ/РФ
- город/регион: РФ Сергиев Посад
- Благодарил (а): 2121 раз
- Поблагодарили: 208 раз
Формула сверхудобной скорости
На ЧПУ станках сами привода "загоняются" параметрами "на шаг до самогенерации". Плавность осуществляется системой позиционирования. Она интерфейс с оператором обеспечивает.
ЗЫ. Это как с усилителем аудио. Он должен точно отработать входной сигнал.
Отправлено спустя 3 минуты 34 секунды:
Вы какой системой управления пользуетесь?
Проверьте, возможно у нее есть пакет вроде "Motion".
В трансформаторной будке живет трансформаторная собака (с) Прозрачный гонщик.
-
- здесь недавно
- Сообщения: 9
- Зарегистрирован: 09 сен 2021, 11:13
- Имя: Алексей
- Страна: Россия
- город/регион: Псков
- Поблагодарили: 1 раз
Формула сверхудобной скорости
Tia Portal 16keysansa писал(а): ↑20 окт 2021, 21:53На ЧПУ станках сами привода "загоняются" параметрами "на шаг до самогенерации". Плавность осуществляется системой позиционирования. Она интерфейс с оператором обеспечивает.
ЗЫ. Это как с усилителем аудио. Он должен точно отработать входной сигнал.
Отправлено спустя 3 минуты 34 секунды:Вы какой системой управления пользуетесь?
Проверьте, возможно у нее есть пакет вроде "Motion".
-
- эксперт
- Сообщения: 2471
- Зарегистрирован: 20 дек 2018, 04:45
- Имя: Сергей
- Страна: РБ/РФ
- город/регион: РФ Сергиев Посад
- Благодарил (а): 2121 раз
- Поблагодарили: 208 раз
Формула сверхудобной скорости
В трансформаторной будке живет трансформаторная собака (с) Прозрачный гонщик.