Перейти к публикации

Управление Движением


Рекомендованные сообщения

1.

Алгоритм известен - энто DDA. на 3х страничках полностью расписан принцип работы. Правда, мат. обоснование не дано (из-за этого вопросы).

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

Сам контроллер ISA и сейчас работает под DOS- программой на прерывания (HMI под виндоус). Процессор все время отдыхает, и на мой взгляд может заняться чем-то полезным - например PID фильтрацией, а то и адаптивным управлением :) правда, покабы PID осилить.

2. ШИМ не трогаем. Одно дела коммутировать - друго приводом руководить. Самый приятный привод с которым я имел дело - цифровой KEB. Так там частота выборки у АЦП - параметр, и предельное значение имеет 1 мс (1кГц).

У PMac , если я не ошибаюсь, 1/T преобразование и синхронизирован с абстактным таймером ... Плюс к этому на выходе PID-а настраивают фильтр, либо снижают частоту сервоцикла - иначе писец, система раскачивается, движки звинять и т.д. Хотя по паспорту для PMAC2 обновление 250 мкс ( 5 мкс ? Дайте ссылку), но многие говорят что это хорошо - но не для отечественной механики.

Может мне описать DDA как я его понимаю? Может это поможет?

Ссылка на сообщение
Поделиться на других сайтах


Попробуйте разобраться с патентом от Хитачи.

<noindex>http://www.freepatentsonline.com/4365309.html</noindex>

Digital differential analyzing processor -думаю ноги растут оттуда.

А может сервопривод с процессором поставить, а? На персоналку ЧПУ повесить?

Ваша плата делает сервоцикл за 1 мс, это без учета хоста. Пока будете прерываться и ждать от него новых параметров (ПИД), привод далеко уедет. Все будет работать медленно и торжественно.

И будет вас колбасить возле траектории, и останавливаться будете с колебаниями.

Вот еще вдогонку

<noindex>http://www.ddj.com/184408377;jsessionid=5O...equestid=104542</noindex>

Ссылка на сообщение
Поделиться на других сайтах

Да, кстати, не понятно, как это Вы хотели одновременно управлять по PID алгоритму с ОС по энкодеру и PI с ОС по тахогенератору, да ещё на разных контроллерах?

Неправильно это кажется.

Такая система будет почти не настраиваемой, типа «пусть будет вам до того всё до фени, что левая рука не будет знать, что делает правая…»

Да и при чём здесь ЦДА? :wallbash:

Одно дела коммутировать - друго приводом руководить.

Дык и я про то же, при чём здесь PID в ЧПУ? :wallbash:

Только не "дела коммутировать", а удерживать скорость или момент, и удерживать позицию (координату).

Мухи отдельно, борщ отдельно...

5 мкс ? Дайте ссылку

Да пожалуйста, не напрягаясь:

<noindex>http://deltatau.ru/products/controller-motion.php</noindex>

"частота опроса по позиции - 6,25 микросекунд по каждой оси"

но у них есть и 5 мкс, но под рукой нет, искать надо.

И будет вас колбасить возле траектории, и останавливаться будете с колебаниями.

Дык и я ему про то же и так и эдак намекаю, - не слышит :sad:

под DOS- программой на прерывания (HMI под виндоус).

Это как? Два писюка, или один?

это хорошо - но не для отечественной механики

Законы физики для всех одинаковы, как бы не пытались доказать обратное любители как "западной", так и "отечественной" техники. И то что русскому здорово, а немцу смерть, это не из этой оперы :smile:
Ссылка на сообщение
Поделиться на других сайтах

1.

Да, кстати, не понятно, как это Вы хотели одновременно управлять по PID алгоритму с ОС по энкодеру и PI с ОС по тахогенератору, да ещё на разных контроллерах?

Неправильно это кажется.

Согласен - PID рекомендуется для управления контуром тока. А для управления контуром скорости достаточно P. При этом важно, чтобы этот контур скорости был с максимально возможной полосой пропускания - уж ШИМ обязателен.

2.

"частота опроса по позиции - 6,25 микросекунд по каждой оси"

но у них есть и 5 мкс, но под рукой нет, искать надо.

Эти 5мкс и сервоцикл - разные величины. Кстати, о сервоцикле упоминаний нет. У Galil приведено время сервоцикла порядка 40мкс на ось - этого с головой хватает. Ведь даже при контуре тока его полоса пропускания не выше 1кГц.

Ссылка на сообщение
Поделиться на других сайтах

Эти 5мкс и сервоцикл - разные величины.

Армяне утверждают - 5 мкс сервоцикл:

<noindex>http://www.mshak.am/rus/cnc.html</noindex>

При частоте опроса энкодерных входов 40 МГц (только не понятно, скольки каналов одновременно). У них в MSH

контроллер Дельта Тау стоит.

Вообще сервоцикл для цифрового привода это время приёма сигнала ОС, его обработки, вычичлений процессора, задержек на ШИМ модуле. На практике следует учитывать инерцию ключей (усилителей мощности) и динамические характеристики двигателя и механики.

У меня на реальной машине с циклом ЦИФРОВОГО привода 200 мкс, шаг 0,005 уход на 0,07 на круге при скорости 1 м/мин как здрасьте.

Могу шаг до 0,01 загрубить, думаю рассогласование при обработке круга даже при минимальной нагрузке приводов и скорости 1500 мм/мин будет порядка 0,05, а это неприемлемо!

Ссылка на сообщение
Поделиться на других сайтах

Нужно еще учесть погрешность, которую не видит энкодер, чисто механическую.

Нет, у меня эксперимент чистый, проверка оптикой, люфтов нет, резонансов нет, винты и направляющие прецизионные, выставлены по автокаллиматору и оптическим линейкам, так как машина прецизионная, система компенсации механических погрешностей. Проверялись разные значения сервоцикла за счёт разных контроллеров и алгоритмов. Для надёжности проверял на разных машинах, есть разница за счёт кинематики, точности машин и энерции, в том числе планарных транзисторных усилителей мощности, но в общем эффект аналогичный.

Снижаешь скорость, всё нормально, ставишь дохлый контроллер, сразу согласно закона Мэрфи:

Под давлением всё ухудшается

:smile:

P.S. evgeny_ch, что такое СПШ10? На сайте Сервотехники такого зверя не наблюдается.

Ссылка на сообщение
Поделиться на других сайтах

1.

Действительно, PMac можно настроить на 5 мкс, но процессор будет работать только на движение и все время ждать имульса от энкодера - в лучшем случае, а вообще от нефиг делать - звинеть. 1 мкс вполне достаточно для аналогового управления привода - это факт! По умолчанию:

Setting I10 Servo Update Time Parameter

On any Turbo PMAC system, set the I10 servo update time parameter to match the servo frequency

selected. I10 is used by the interpolation algorithms to decide how far to increment position each servo

cycle and it must be set correctly to get trajectories at the proper speed. I10 is scaled such that a value of

223 (8,388,608) matches a servo update type of 1 millisecond (1 kHz servo clock frequency).

The equation for setting I10 as a function of the servo update period is:

ServoUpdateFreq( kHz )

8,388,608

I10 = 8,388,608 * ServoUpdatePeriod( m sec) =

The default value for I10 of 3,713,707 matches the default servo period of 442 μsec, so if you keep this

default period, you will not have to change I10. Refer to the description of I10 in the Software Reference

manual for detailed instructions on the setting of I10. To get a new value of I10 to take effect, issue a

%100 command for each coordinate system used or a SAVE command and reset the Turbo PMAC.

Вообщето Turbo PMac 2 у меня на компе воткнут - хорошая штука, но идеальный вариант для специалиста из страны-потребителя.

Меня же интересует DDA. И вообще я уже почти согласен со всеми - что DDA для потдержания контура положения, а контур по скорости пусть

привод разруливает, но мозайка еще не сложилась в картину ... не все допонял по причине тупости :)

2.

>> Да, кстати, не понятно, как это Вы хотели одновременно управлять по PID алгоритму с ОС по энкодеру и PI с ОС по тахогенератору, да ещё на разных контроллерах?

PI c OC по тахо я несобирался делать. Тахо и двигатель образуют свой контур ... Точно нет I, так как удержания позиции не происходит.

3.

>> И будет вас колбасить возле траектории, и останавливаться будете с колебаниями.

Дык и я ему про то же и так и эдак намекаю, - не слышит

Так колбасит любой контроллер - вопрос насколько?

4.

>>под DOS- программой на прерывания (HMI под виндоус).

Это как? Два писюка, или один?

Два писюка. Один на DOS-е , на другом WinXP. Один умный и шустрый, друго красивый. Все хорошо - но хочу динамику :).

5.

>> Законы физики для всех одинаковы, как бы не пытались доказать обратное любители как "западной", так и "отечественной" техники. И то что русскому здорово, а немцу смерть, это не из этой оперы

Хренушки. Система такая: привозится станок на модернизацию, линейки ставить никто не будет - а поставят угловой преобразователь на винт и при этом (по принципу чем больше-тем лучше) с избыточным разрешением. При сдачи, станок демострирует крутейшее позиционирование, но вот беда ... через месяц, у счастливого обладателя крутого станка появляется люфт, но он об этом не знает ... он с похмелья мучается от душераздирающего звона. Ну нет смысла выпендриваться, когда другие элементы мех. системы не на высоте.

6.

>> У меня на реальной машине с циклом ЦИФРОВОГО привода 200 мкс, шаг 0,005 уход на 0,07 на круге при скорости 1 м/мин как здрасьте.

А у меня на метре фреза отжиается на 0.1 ! А тут фанеру фигурно разал на 7 метрах, так фреза чуть-ли не на 1 мм отжималась.

Я тут еще пытаюся для себя определить необходимую точность слежения контура. Никто не встречал лит-ру по этому вопросу?

7.

Вот схема у меня была. Може кто подскажет, куда D-составляющую вкорячить для более быстрого выхода на скорость:

Привод на ось: Аналоговый привод + постоянник с тахо. Тахо идет на привод, образуя скоростной контур.

Контроллер имеет анал.выход и энкодерный вход.

Контроллер каждую 1 мсек ждет у меня задание на след. серво-такт (в это время обрабатывается предыдущее задание). Задание задается в дискретах перещения. Пусть я например, заслал 100 дскр, тогда в течение 1 мс в ошибку будет равномерно заслано 100 импульсов, т.е. через каждые 10 мкс. Прямо-пропорционально ошибке формируется анал и идет на привод. Каждый импульс энкодера декрементирует ошибку, тобишь уменьшает.

В контроллер, я естественно отправляю результат интерполяции (РИ)со всевозможными законами разгона/торможения. Т.е. задание гладкое.

Теперь я:

1. Хочу компенсировать ошибку положения: т.е. к РИ добавляю Pi * (Заданая Позиция - Актуальтня). Вроде бы интегральная появилась.

2. Еслибы у меня был бы не DDA , то для D-компенсации , я бы вычитал из PИ актуальную скорость * Pd, но в моем случае это глупо

Ссылка на сообщение
Поделиться на других сайтах

Художнику: Ну нету у Delta Tau сервоцикла 5 мкс - ниже от них же самих.

What servo frequencies can PMAC support?

PMAC CPUs can simultaneously close the servo loop on multiple axes down to 55us. The default setting is 440us. All PMACs can accept encoder feedback up to 20MHz.

Особенности перевода?

Ссылка на сообщение
Поделиться на других сайтах

evgeny_ch, что такое СПШ10?

Хотел поместить в файлообменник, не влезло - 2М.

Это комбинированный привод, скоро собираются продавать, тестируют.

Могу заслать на mail.

Ссылка на сообщение
Поделиться на других сайтах

Ну нету у Delta Tau сервоцикла 5 мкс - ниже от них же самих.

Я не тэстировал, не утверждаю, ссылки привёл, Англотекст не понял, "55us" может быть это 55 U$ ? :smile:

Thunder:

1 мкс вполне достаточно для аналогового управления привода - это факт!

Да пожалуй одной микросекунды хватило бы :g:

А лично мне 200 мкс на цифровом приводе не хватает, уже писал, см. выше.

DDA для потдержания контура положения

Да не для поддержания, ё маё, а для расчёта формирования сигнала, неважно, частотный он или аналоговый.

Тахо и двигатель образуют свой контур ... Точно нет I, так как удержания позиции не происходит.

Ну у вас же привод болгарский, посмотрите в описании, как он работаёт, ясень пень, он скорость либо момент может стабилизировать. Не координату же :doh:

Допустим, едем по диагонали, по двум осям, с результирующей скоростью подачи F. При этом ЧПУ формирует импульсы на выход, согласно ЦДА пропорционально на обе координаты, скорости следования импульсов по каждой оси равны корень из двух *F.

Если вход привода аналоговый, ЧПУ выдаёт сигнал через ЦАП.

Далее, уже привод имеет внутри петлю по току, прямопропорциональный датчик скорости (тахогенератор), или синус-косинусный сигнал (вращающийся трансформатор) или ещё какую-нибудь хрень, не заморачиваясь, и применительно к вашему случаю, это тахометр.

Задача привода - кровь из носу, но держать скорость, а куда ехать, и когда тормозить-разгоняться, не его собачье дело, это дело ЧПУ, и только ЧПУ, одна голова хорошо, а две уже не красиво :dry:

В случае с диагональю, ЧПУ выдаёт на привода два сигнала равные по напряжению. И у некоторых могут возникнуть вредные иллюзии, что ЧПУ нечего делать.

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

Вот тут то опять включается в работу ЧПУ, причём желательно не через 1 млс, и не тогда, когда надо тормозить, потому как приехали до конца линии, а тогда, когда появилось рассогласование хотя бы в один импульс датчика ОС по положению.

Так что ничего Вы со своего дохлого контроллера не выжмете, тупиковый он и закрытый.

Пытаетесь под ДОСом решать его задачи, понятное дело, 640 баксов выкинули, теперь практически это фуфло железное используете как счётчик рассогласования.

Дешевле стоит счётчик :rolleyes: Да и ЦАП у него меееедленный, и разрядиков не фонтан, так что переплатили вы, переплатили...

Не знаю, какая система команд у ентой железки тайваньской, но можно сделать всё красивее, и ещё циклы проца сэкономить, а они ох как в реалтайм управлении нужны...

Идея то правильная - ЧПУ под реал-тайм (РТОС), ввод-вывод, критические процессы на отдельном контроллере, интерфейс - под глючной и глюкавой Виндой, с развесистыми сетями, привод - отдельный девайс.

Приводу-приводово, ЧПУ - чпушево. :smile:

Только если уж берёте моушн контроллер, берите нормальную вещь, а не ботву всякую.

Ссылка на сообщение
Поделиться на других сайтах

1.

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

Только с направляющими согласен - остальное для многотонных столов и порталов как комар насрал.

А в целом я согласен - хотя ... попробую на нейросеть засадить - пусть она попробует связи подобрать.

А вообще мысль пришла: может пару стендов с разными контроллерами к инету подключить ... прорекламировать этот проект и пусть студенты да аспиранты и все кому интересно свои решения предлагают? В конце-концев не все-же аппартно решать, и для софта в оптимизации движения место должно быть.

А по поводу дерьма ... это я дома эксперементирую и то, потому что платы халявные. Вообще мы применяем либо готовые ЧПУ, либо дорогие контроллеры DeltaTau, Siemens, Nationl Instruments и т.д.

Была мысль сделать из дерьма конфекту - теперь совневаюсь.

Ссылка на сообщение
Поделиться на других сайтах

В конце-концев не все-же аппартно решать, и для софта в оптимизации движения место должно быть.

Ну дык, в цифровом приводе вообще почти всё софт решает, аппаратно проц - камень да камень, теоретически на любом городить можно, лишь бы частоты хватало, хотя лучше конечно использовать специальный, с организацией структуры под задачу. Например, под приводные приложения Техас Инструментс хорошие чипы выпускает.

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

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

Да и ЧПУшки как начнёшь тестить, то то не сё, то это не устраивает, то дорого не реально, а то просто интерфейс кривой да непродуманный.

Кстати у Модмашсофт есть очень приятная опция в ЧПУ для регулировки приводов - круглограмма называется.

Но всё равно, даже идеально всё настроив, на одних приводах с ОС по скорости далеко не уедете, не то что комар, температурный дрейф так поднасрёт, запаритесь подчищать. :smile:

Ссылка на сообщение
Поделиться на других сайтах

Кстати, ЧПУ Дельта Тау - ЧПУ и привод два в одном

Тау киты вроде в системник все суют, прямо оттуда ШИМ на силу гонят. Плохо, когда из системника большой пук проводов валит на железо.

Мне больше нарвится распределенная конфигурация с линками по оптике.

Ссылка на сообщение
Поделиться на других сайтах

Тау киты вроде в системник все суют, прямо оттуда ШИМ на силу гонят.

Поэтому такое исполнение их контроллеров ничем другим, кроме своих же силовых модулей, управлять не может! И наоборот тоже! Но есть и общепринятые варианты с аналоговым выходом +/-10В.

конфигурация с линками по оптике

Тут тоже каждый делает свой протокол - -приходится брать весь комплект "усилитель+двигатель".

Ссылка на сообщение
Поделиться на других сайтах

Поэтому такое исполнение их контроллеров ничем другим, кроме своих же силовых модулей, управлять не может!

Ну почему же, любым усилителем мощности (грубо говоря ключами, хоть тиристорными, хоть транзисторными) с ШИМ входом управлять могут.

Не вижу проблем. Тем более, если готовые модули усилителей предлагаются, вообще хорошо - хошь покупай, хош свои используй.

Тут тоже каждый делает свой протокол - -приходится брать весь комплект "усилитель+двигатель".

Есть стандартные протоколы, например SERCOS. Тоже проблем особых нет, тенденция производителей навязать свой комплектный привод есть конечно, но это не страшно :smile:

Плохо, когда из системника большой пук проводов валит на железо.

Это точно.

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

Ссылка на сообщение
Поделиться на других сайтах

Не вижу проблем. Тем более, если готовые модули усилителей предлагаются

Там, кроме ключей, нужно организовать обратную связь по току - самому этим заниматься не стоит! Это очень специальное исполнение

Ссылка на сообщение
Поделиться на других сайтах

нужно организовать обратную связь по току - самому этим заниматься не стоит! Это очень специальное исполнение

Тады ой...
Ссылка на сообщение
Поделиться на других сайтах

Присоединяйтесь к обсуждению

Вы можете опубликовать сообщение сейчас, а зарегистрироваться позже. Если у вас есть аккаунт, войдите в него для написания от своего имени.
Примечание: вашему сообщению потребуется утверждение модератора, прежде чем оно станет доступным.

Гость
Ответить в тему...

×   Вставлено в виде отформатированного текста.   Вставить в виде обычного текста

  Разрешено не более 75 эмодзи.

×   Ваша ссылка была автоматически встроена.   Отобразить как ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставить изображения напрямую. Загрузите или вставьте изображения по ссылке.

  • Сейчас на странице   0 пользователей

    Нет пользователей, просматривающих эту страницу.




×
×
  • Создать...