Соединение Yaskawa->Mesa->EMC2 где ПИД ?

Работа с платами MESA, подключение, конфигурация.
SVP
Мастер
Сообщения: 6135
Зарегистрирован: 19 дек 2012, 15:49
Репутация: 884
Откуда: Москва
Контактная информация:

Соединение Yaskawa->Mesa->EMC2 где ПИД ?

Сообщение SVP »

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

Имеется Yaskawa управляемая по скорости.
Mesa 6i25 + 7i77.
EMC2.

Не могу понять идеологически, как всё должно ползать по-нормальному ?

1. Яскавовский контроллер принимает к себе от месы X вольт, и едет, пока имеет эти Х вольт на входе. Это понятно.
2. Наружу яскава дает сигнал от энкодеров - это тоже понятно. Пока забудем о том, как всё надо запитывать, когда подавать SON итп.

3. Меса получает от яскавы значения с энкодеров - это понятно. Но кто его обрабатывает, чтобы осуществить PID-регулирование ?
Если делать это со стороны EMC2, то нафига вообще нужна меса :) ? Только для разгрузки LPT-порта ?
Нельзя ли прямо внутри этой могучей электроники реального времени рассчитать PID и выдать его сразу же наружу без EMC ?

А если я проталкиваю данные от энкодеров в EMC, то получается я опять завишу от того, насколько в реальном времени этот
EMC работает, и от всех потенциальных глюков компа.

Еще раз сформулирую вопрос: где должны обрабатываться данные с энкодеров и генерироваться (с помощью ПИД) величина
управляющего воздействия ? В месе или в EMC ?
nkp
Мастер
Сообщения: 8340
Зарегистрирован: 28 ноя 2011, 00:25
Репутация: 1589
Контактная информация:

Re: Соединение Yaskawa->Mesa->EMC2 где ПИД ?

Сообщение nkp »

SVP писал(а):? Только для разгрузки LPT-порта ?
практически - да...
парпорт не "успевает" считывать энкодер (может только на очень маленьких скоростях, штурвал на 100 тиков например)
это основное предназначение меса...
а далее - формирование +-10V , опторазвязка IO и тд. - можно и без мессы сделать...
пид конечно работает на стороне емс (обратная связь по положению) , в отличие от возможных пи(пид) регуляторов в приводах (ну или сервах - как это все упрощенно
сейчас называют)...
aftaev
Зачётный участник
Зачётный участник
Сообщения: 34042
Зарегистрирован: 04 апр 2010, 19:22
Репутация: 6192
Откуда: Казахстан.
Контактная информация:

Re: Соединение Yaskawa->Mesa->EMC2 где ПИД ?

Сообщение aftaev »

SVP писал(а):Но кто его обрабатывает, чтобы осуществить PID-регулирование ?
ЕМС
SVP писал(а):Если делать это со стороны EMC2, то нафига вообще нужна меса ?
а как ты энкодеры заведешь?
SVP писал(а):Только для разгрузки LPT-порта ?
а ты попробуй через ЛПТ энкодеры протащить :)
SVP писал(а):Нельзя ли прямо внутри этой могучей электроники реального времени рассчитать PID и выдать его сразу же наружу без EMC ?
если прошивку свою напишешь :)
SVP писал(а):Еще раз сформулирую вопрос: где должны обрабатываться данные с энкодеров и генерироваться (с помощью ПИД) величина
управляющего воздействия ? В месе или в EMC ?
Выбора нет, их обрабатывает ЕМС
Дилетанту сложные вещи кажутся очень простыми, и только профессионал понимает насколько сложна самая простая вещь
Кто хочет - ищет возможности, кто не хочет - ищет оправдание.
Найди работу по душе и тебе не придется работать.
SVP
Мастер
Сообщения: 6135
Зарегистрирован: 19 дек 2012, 15:49
Репутация: 884
Откуда: Москва
Контактная информация:

Re: Соединение Yaskawa->Mesa->EMC2 где ПИД ?

Сообщение SVP »

Мда... понятно, итого проталкиваем всё, что можно в EMC и обрабатываем там ?
Как-то печально всё это несколько.

ЗЫ. Прошивку... не, я пока не готов, это уже черезчур. Щаз разобраться бы для начала "в целом".
aftaev
Зачётный участник
Зачётный участник
Сообщения: 34042
Зарегистрирован: 04 апр 2010, 19:22
Репутация: 6192
Откуда: Казахстан.
Контактная информация:

Re: Соединение Yaskawa->Mesa->EMC2 где ПИД ?

Сообщение aftaev »

есть платы которые ПИД обрабатывают сами типо KFLOP но это либо под Мач либо под собственную прогу KFLOP. На ней же можно cделать closed loop
Дилетанту сложные вещи кажутся очень простыми, и только профессионал понимает насколько сложна самая простая вещь
Кто хочет - ищет возможности, кто не хочет - ищет оправдание.
Найди работу по душе и тебе не придется работать.
Аватара пользователя
Nick
Мастер
Сообщения: 22776
Зарегистрирован: 23 ноя 2009, 16:45
Репутация: 1735
Заслуга: Developer
Откуда: Gatchina, Saint-Petersburg distr., Russia
Контактная информация:

Re: Соединение Yaskawa->Mesa->EMC2 где ПИД ?

Сообщение Nick »

SVP писал(а):А если я проталкиваю данные от энкодеров в EMC, то получается я опять завишу от того, насколько в реальном времени этот
EMC работает, и от всех потенциальных глюков компа.
PID работает в servo-thread - т.е. около 1кГц. На этой частоте компьютеры работают гораздо стабильнее.
Когда загружаешь latency test там показывается два параметра base-thread jitter и servo-thread jitter, это фактически разброс по выполнению real-time.
Вообще, realtime - это по определению не мгновенная работа, а гарантированное выполнение в заданных временных рамках. Правильное проведение latency-test дает понятие о тех ограничениях, которые будут получены на данном компьютере для потоков realtime.
Но 100% гарантии нет, что не скакнет напряжение в сети или какой-нибудь электромагнитный импульс не вышибет что-то важное в компе.

Как-то уж больно коряво и пафосно я все это написал :freak:

На практике компа с запасом хватает для работы с месой на хорошем уровне (если не брать в рассчет какие-нибудь уникальные случаи, с каким-нибудь хитрым железом).

Бывали случаи, когда комп вис, (точнее не ком, а gui) с ним было ничего не сделать кроме жесткого ребута, а EMC работал дальше по программе как ни в чем не бывало.
Аватара пользователя
Nick
Мастер
Сообщения: 22776
Зарегистрирован: 23 ноя 2009, 16:45
Репутация: 1735
Заслуга: Developer
Откуда: Gatchina, Saint-Petersburg distr., Russia
Контактная информация:

Re: Соединение Yaskawa->Mesa->EMC2 где ПИД ?

Сообщение Nick »

SVP писал(а):Как-то печально всё это несколько.
А чем печально? Не хватает скорости, или что-то глючит?
aftaev писал(а):есть платы которые ПИД обрабатывают сами типо KFLOP но это либо под Мач либо под собственную прогу KFLOP. На ней же можно cделать closed loop
А он точно на плате ПИД обрабатывает, а не на компе, где-нибудь в драйверах или в своем ПО?
Хотя, в принципе этот ПИД вроде как не шибко сложный.

Хотя с другой стороны, задание он все равно постоянно получает с компа, поэтому какая разница где пид?

Если ПИД на компе, то задание на серву меняется раз в servo-thread.
Если ПИД снаружи, то все равно задание драйверу меняется раз в servo-thread, т.к. на PID задание меняется не чаще. Будет небольшой плюс по регулированию сервы внутри серво периода, но не факт, что это как-то ощутимо скажется на системе в целом.
nkp
Мастер
Сообщения: 8340
Зарегистрирован: 28 ноя 2011, 00:25
Репутация: 1589
Контактная информация:

Re: Соединение Yaskawa->Mesa->EMC2 где ПИД ?

Сообщение nkp »

Nick писал(а):Хотя с другой стороны, задание он все равно постоянно получает с компа, поэтому какая разница где пид?
я тоже так думаю - что никакой разницы нет...
разве что при такой уж необходимости сделать очень "быстрый" пид-регулятор - то его можно сделать "железным" (как в пи-регуляторе скорости приводов например)
SVP
Мастер
Сообщения: 6135
Зарегистрирован: 19 дек 2012, 15:49
Репутация: 884
Откуда: Москва
Контактная информация:

Re: Соединение Yaskawa->Mesa->EMC2 где ПИД ?

Сообщение SVP »

Nick писал(а):
SVP писал(а):Как-то печально всё это несколько.
А чем печально? Не хватает скорости, или что-то глючит?
Я просто люблю когда мухи к мухам, котлеты к котлетам :).
Т.е. если уж какая-то плата принимает значения с энкодеров и выдает управляющий сигнал, то если это возможно
пусть делает это не транзитом, как "продвинутая опторазвязка", а "сама". Вверх можно при желании "подать"
для последующей гибкости, но лучше-бы "обработать и забыть" по месту.

Но нет худа без добра. Я рассчитывал, что придется 1000 раз перепрошивать месу параметрами для подбора ПИДа к примеру,
а в текущей схеме она похоже вообще plug & pray, и ничего с ней делать не надо, всё в текстовых конфигах.
aftaev
Зачётный участник
Зачётный участник
Сообщения: 34042
Зарегистрирован: 04 апр 2010, 19:22
Репутация: 6192
Откуда: Казахстан.
Контактная информация:

Re: Соединение Yaskawa->Mesa->EMC2 где ПИД ?

Сообщение aftaev »

Nick писал(а):А он точно на плате ПИД обрабатывает, а не на компе, где-нибудь в драйверах или в своем ПО?
Мач не умеет с обраткой работать, а КФЛОП работает и в нем в настройках задаются параметры ПИД. Мач скидывает задание как бы в буфер КФЛОП его обрабатывает.
Nick писал(а):Хотя с другой стороны, задание он все равно постоянно получает с компа, поэтому какая разница где пид?
У Кфлопа + Мач нажал паузу или стоп станок еще малость проезжает. В "задании" нету ПИДа
Дилетанту сложные вещи кажутся очень простыми, и только профессионал понимает насколько сложна самая простая вещь
Кто хочет - ищет возможности, кто не хочет - ищет оправдание.
Найди работу по душе и тебе не придется работать.
Аватара пользователя
Serg
Мастер
Сообщения: 21923
Зарегистрирован: 17 апр 2012, 14:58
Репутация: 5182
Заслуга: c781c134843e0c1a3de9
Настоящее имя: Сергей
Откуда: Москва
Контактная информация:

Re: Соединение Yaskawa->Mesa->EMC2 где ПИД ?

Сообщение Serg »

Nick писал(а):А он точно на плате ПИД обрабатывает, а не на компе, где-нибудь в драйверах или в своем ПО?
Просто у КФЛОП в своём МК выполняет те-же функции, что и linuxcnc на компе.
Я не Христос, рыбу не раздаю, но могу научить, как сделать удочку...
Аватара пользователя
michael-yurov
Почётный участник
Почётный участник
Сообщения: 11639
Зарегистрирован: 26 июл 2012, 00:10
Репутация: 4644
Настоящее имя: Михаил Львович
Откуда: Новоуральск
Контактная информация:

Re: Соединение Yaskawa->Mesa->EMC2 где ПИД ?

Сообщение michael-yurov »

У килофлопа частота обхода сервоптли 11 кГц для каждого канала.
Задание предается не квантованными отрезками по времени, как у LinuxCNC или Mach3 а линейными участками траектории. Т.е. если нужно проехать 50 мм по прямой, то по USB будет передана одна команда.
В принципе - килофлоп может работать и автономно (это я к вопросу о расположении ПИД), но траекторию придется писать на языке Си :hehehe:

Собственно автор рекламирует то, что производительность килофлопа 1,2 GFLOPS (1,2 миллиарда операций с 64 битными числами с плавающей точкой в секунду), что нужно для быстрого расчета ПИД.
Аватара пользователя
Nick
Мастер
Сообщения: 22776
Зарегистрирован: 23 ноя 2009, 16:45
Репутация: 1735
Заслуга: Developer
Откуда: Gatchina, Saint-Petersburg distr., Russia
Контактная информация:

Re: Соединение Yaskawa->Mesa->EMC2 где ПИД ?

Сообщение Nick »

Пид это же вроде простой сумматор, там вроде надо 5-10 простых операций и все...
А вот траектории считать - это да, там и корни и прочая неприятная лабудень....
Аватара пользователя
Сергей Саныч
Мастер
Сообщения: 9116
Зарегистрирован: 30 май 2012, 14:20
Репутация: 2858
Откуда: Тюмень
Контактная информация:

Re: Соединение Yaskawa->Mesa->EMC2 где ПИД ?

Сообщение Сергей Саныч »

Nick писал(а):Пид это же вроде простой сумматор
А умножать, делить, дифференцировать и интегрировать кто будет :)
Понятно, что в конце концов всё сводится к элементарным операциям, только их довольно много получается.
Последний раз редактировалось Сергей Саныч 27 авг 2013, 09:41, всего редактировалось 1 раз.
Чудес не бывает. Бывают фокусы.
Аватара пользователя
Nick
Мастер
Сообщения: 22776
Зарегистрирован: 23 ноя 2009, 16:45
Репутация: 1735
Заслуга: Developer
Откуда: Gatchina, Saint-Petersburg distr., Russia
Контактная информация:

Re: Соединение Yaskawa->Mesa->EMC2 где ПИД ?

Сообщение Nick »

Так дифференциируется все численно - т.е. dx/dt, и интеграл считается через сумму.
Никто не говорил, что делить не надо будет, хотя, можно и без деления обойтись и вообще сделать все в целых числах.
aftaev
Зачётный участник
Зачётный участник
Сообщения: 34042
Зарегистрирован: 04 апр 2010, 19:22
Репутация: 6192
Откуда: Казахстан.
Контактная информация:

Re: Соединение Yaskawa->Mesa->EMC2 где ПИД ?

Сообщение aftaev »

Nick писал(а):А вот траектории считать - это да, там и корни и прочая неприятная лабудень....
видать потому в Кфлопе DSP проц :)
Дилетанту сложные вещи кажутся очень простыми, и только профессионал понимает насколько сложна самая простая вещь
Кто хочет - ищет возможности, кто не хочет - ищет оправдание.
Найди работу по душе и тебе не придется работать.
Аватара пользователя
Serg
Мастер
Сообщения: 21923
Зарегистрирован: 17 апр 2012, 14:58
Репутация: 5182
Заслуга: c781c134843e0c1a3de9
Настоящее имя: Сергей
Откуда: Москва
Контактная информация:

Re: Соединение Yaskawa->Mesa->EMC2 где ПИД ?

Сообщение Serg »

DSP корни считает не лучше обычного процессора, он несколько в другом силён. Вот как раз PID он чуть лучше обсчитывает и сигналы умеет хорошо генерить.
Я не Христос, рыбу не раздаю, но могу научить, как сделать удочку...
SVP
Мастер
Сообщения: 6135
Зарегистрирован: 19 дек 2012, 15:49
Репутация: 884
Откуда: Москва
Контактная информация:

Re: Соединение Yaskawa->Mesa->EMC2 где ПИД ?

Сообщение SVP »

Поскольку теперь по ПИД ищется исключительно эта тема, продолжу сюда.
Сходу не нашел, как настраивать.
Для теста попробовал настроить при неподключенном к станку движке.
Наблюдаю странное поведение.

При увеличении значения P f-error пропорционально УБЫВАЕТ. Я ожидал, что будет обратная картина,
либо вообще ничего меняться не будет. При некотором значении серва входит в резонанс.
При этом выглядит всё где-то так (без резонанса, если назад вернуться слегка)
График для движения по прямой в одном направлении.
Screenshot-1.png (4224 просмотра) <a class='original' href='./download/file.php?id=18187&mode=view' target=_blank>Загрузить оригинал (372.29 КБ)</a>
Поведение признаться мне немного непонятно.
Откуда такой ровный трапецивидный вид ?
Почему такая зубчатость сверху ?
Я ожидал от ошибки большей плавности, которую можно было бы ИД-компенсировать.
Куда копать ?

Пики где-то 0.02. Хочется как-то меньше.
Каковы для MAX_ACCELERATION адекватные значения ? Вроде бы зависит прямо.

Это я что, наблюдаю инерцию самого двигателя ?
Но тогда почему она при езде по прямой вылезает, а не только на старте ?
nkp
Мастер
Сообщения: 8340
Зарегистрирован: 28 ноя 2011, 00:25
Репутация: 1589
Контактная информация:

Re: Соединение Yaskawa->Mesa->EMC2 где ПИД ?

Сообщение nkp »

SVP писал(а):Наблюдаю странное поведение.
отнюдь
SVP писал(а):При увеличении значения P f-error пропорционально УБЫВАЕТ. Я ожидал, что будет обратная картина,
могло бы быть и наоборот - нет зависимости жесткой...
SVP писал(а):Откуда такой ровный трапецивидный вид ?
ну это же очевидно - рост ошибки на разгонах и торможениях
SVP писал(а):Почему такая зубчатость сверху ?
можно описать "почему" - но скажу лучше - можно попытаться ее сгладить...
SVP писал(а):Куда копать ?
копать в одну сторону - подбирать коэфициенты для уменьшения ошибки до требуемой
(кстати - на станке все-все придется настраивать заново)))
сейчас ошибка 0.015?
Аватара пользователя
Nick
Мастер
Сообщения: 22776
Зарегистрирован: 23 ноя 2009, 16:45
Репутация: 1735
Заслуга: Developer
Откуда: Gatchina, Saint-Petersburg distr., Russia
Контактная информация:

Re: Соединение Yaskawa->Mesa->EMC2 где ПИД ?

Сообщение Nick »

Так и должно быть, Ferror будет убывать по мере увеличения P, потом система начнет входить в колебания.

Кстати, какая это ось? Или серва пока просто лежит на столе?

Кстати. Какая амплитуда колебаний, случаем не +-1-2 тика энкодера?

Вот тут есть примеры различных ситуаций с картинками:
http://wiki.linuxcnc.org/cgi-bin/wiki.p ... Amplifiers
Ответить

Вернуться в «MESA»