2015-06-04 2 views
0

Я пытаюсь контролировать промышленный серводвигатель переменного тока с помощью моего устройства XE166.сервомотор с кривой движения

Контроллер взаимодействует с сервоконтроллером с помощью управления PULSE и DIRECTION.

Для достижения движения без рывков я пытался создать профиль движения S Curve (время вращения двигателя v/s).

Расчет мгновенной скорости не представляет проблемы, поскольку я знаю расстояние, перемещаемое двигателем за импульс, и длительность импульса.

Мне нужно понять, как прийти к математическому уравнению, которое я мог бы использовать, что скажет мне, какой должна быть длительность n-го импульса, чтобы иметь профиль скорости в виде S-кривой.

Поскольку они должны быть общим требованием в любой области требует управления движением (робототехника, ЧПУ, промышленный) должен быть некоторый стандартный эталонный, чтобы сделать это

+0

возможно добавить тег для языка программирования и API, который вы используете? вы уже пытались найти ответ на этот вопрос и проверить википедию? Похоже, что ответ также должен быть в одной или нескольких статьях. есть ли у вас доступ к университетской сети, где вы можете искать документы (исследовательские публикации)? – hoijui

+0

Сигмовидные уравнения или уравнения логистической кривой выглядят как хорошая отправная точка. – Clifford

+0

Infineon и другие производители таких MCU/драйверов. опубликовал много информации об этом. Некоторые из них включают математику и некоторые даже программные подходы. Вы действительно ищете кого-нибудь? – Olaf

ответ

0

период Шаг разница во времени между двумя положениями на один шаг друг от друга на кривая движения. Если позиция определяется с помощью X (T), то для шага требуется обратная функция T (X), и любой заданный период шага равен P = T (X + 1) - T (X). На микроконтроллере с ограниченной вычислительной мощностью это обычно решается с помощью аппроксимации - для движения ускорения 2-го порядка, Atmel has a fantastic example using a Taylor series approximation for inter-step time (Application note AVR446).

Другое решение, которое работает для кривых более высокого порядка, включает в себя решение корней. Для решения T (x0) U (T) = X (T) - x0 и решаем для U (T) = 0.

Для кривой постоянного ускорения квадратичная формула woks велика (но требует квадратного корня работа - обычно дорогостоящая на микроконтроллерах). Для движений с ограничением движения (минимум полинома 3-й степени) корни можно найти с помощью iterative root solving algorithm.

Смежные вопросы