Перейти к содержанию
    

Быстрый ПИД-регулятор

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

InstaSPIN у TI идет без исходников, поэтому такой опыт мало пользы дает.

Надо самому углубляться в теорию и строить его структуру в Matlab-е.

Иного пути нет.

 

Но ADRC позволяет делать настройку всего одним параметром. Это многократно проще настройки PID

Поделиться сообщением


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

InstaSPIN у TI идет без исходников, поэтому такой опыт мало пользы дает

Ну зачем спорить?Вы думаете, я как дурак воткнул железку, которая нормально не работает и на этом все закончилось?

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

Но ADRC позволяет делать настройку всего одним параметром

Реально? С чего начинается основное содержание статьи, на которую вы ссылаетесь? Там опять куча математики, которую надо реализовывать. И опять начнется: какой шаг дискретизации, какая точность вычисления, как считать переменные состояния, в каком формате, как влияют помехи измерений на устойчивость численных решений этих уравнений в реальном времени. Как эти уравнения вообще получить? Где их взять? Они ведь в статье в форме Коши, т.е. система линейная? А что, если система нелинейная?Представьте - пришла помеха, а вы уравнение в реальном времени решаете и оно с такой помехой решения не имеет? По опыту могу сказать, что заплатки типо "идентифицировать помеху" и проигнорить измерения на 1 итерации не катят...все эти уравнения в реальном времени крайне чувствительны к запаздываниям. Придется или менять форму уравнений, при которых они убьют сами эту помеху в процессе вычисления или хитрый цифровой способ ее убить типо медианного фильтра и его придется делать на нескольких ацп, чтобы не внести запаздывание в измерения. Там такой комплекс проблем будет, что пока вы в них не разберетесь до конца, нормально он работать не будет...ну полтора , два года на исследование всех ньюансов

Как оно себя поведет?Вы даже не представляете сколько туда надо вложить труда, чтобы оно стало реально работать.

Что это за один параметр? Какой его физический смысл? Какая единица измерения? Чем руководствоваться, когда его выбирать? Как-то решал задачку управления постоянником с обратной связью по скорости, но датчика не было. Сделал наблюдатель Калмана - он лучше всего по статьям подходил. При его настройке, я чуть не полысел - там диагональная матрица 5х5 коэффициентов ковариации, которую нужно было подобрать.В течение 3 бессоных дней я все таки это сделал - по договору не более 3 дней на наладку, а дальше - санкции и штрафы. В настроенном виде привод работает даже лучше, чем с датчиком скорости, прецизионно получилось все (потому что с датчиком скорости точность определяется возможностями датчика, а с Калманом проблема точности устраняется подбором коэффициентов ковариации). Ну а потом, ради чистоты эксперимента, убрал о.с. по скорости и ввел о.с. по напряжению. Заработало вообще без настроек, а заказчика более чем устроило - на объекте реально не нужно было точно скорость держать, но он сам этого не знал.И до сих пор так - как суёш "математическое управление" в новый двигатель, так наладки на несколько дней. Как тупое управления - так можно даже не ездить на наладку - оно работает, а подбор коэффициента решается по телефону за 2 минуты

Изменено пользователем somebody111

Поделиться сообщением


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

Ну зачем спорить?Вы думаете, я как дурак воткнул железку, которая нормально не работает и на этом все закончилось?

Судя по всему вы не работали с InstaSPIN.

Либо работали как-то уж очень специфично. :biggrin:

Поскольку большая часть мануала по InstaSPIN посвящена доказательствам огромного превосходства ADRC перед PID-ом.

 

Но ADRC там представлен черным ящиком названным SpinTAC controller. Прочтите там каким параметром он настраивается и все поймете.

 

Поделиться сообщением


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

Мне хватило понимания того, что в заявленном там адаптивном наблюдателе не обеспечивается гиперстабильность и не обеспечивается максимальный момент двигателя и с эттим ничего не сделать - это такой наблюдатель. Это означает, что на 100/100 приводов, которые в год продают, мне придется ездить на 2-3 дня в командировку в лучшем случае.И подчиненных я тоже не смогу послать, потому что они не смогут его настроить. Если вы дрель покупаете, вам понравилось бы, что она не работает, а после звонка вам бы ответили: "Все ок, после завтра к нам приедет наш наладчик и все сделает, а вы сами не сделаете ничего "

Изменено пользователем somebody111

Поделиться сообщением


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

По линии бежит полотно, его надо резать на листы определённой длины. На линии стоит энкодер, которым измеряется скорость линии.

У ножа тоже стоит энкодер, по которому измеряется текущее положение ножа и скорость.

Точка реза ножа определена, алгоритм повторяется после каждого реза с этой точки.

Алгоритм работы контроллера, в состав которого входит ПИД-регулятор, показан на рисунке.

Работа ножей состоит из четырёх этапов:

торможение, пауза, разгон, коррекции средней скорости.

На этапе коррекции должен работать ПИД-регулятор...

Очередной раз убеждаюсь, что правильная постановка задачи - 90% ее решения.

 

Сначала разбираемся с циклограммой работы вращающегося ножа:

1) Исходное состояние (пауза): неподвижный нож находится в верхнем положении. Оно точно определено и контролируется по энкодеру привода ножа.

2) Включение привода, разгон до некоторой скорости, движение с постоянной скоростью до момента резки, который, также, точно определяется по энкодеру привода ножа.

3) Отрезание полотна на заданной (постоянной) скорости ножа.

4) Плавное торможение и перевод системы в исходное состояние.

 

В этой системе входным параметром будет задаваемая скорость ножа в момент резки.

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

Выходным параметом данной системы (черного ящика) для нас будет время от момента подачи питания на привод в исходном состоянии, до момента, когда нож достигнет линии резки. Это время обозначим как "время срабатывания привода" Tp.

 

Теперь разбираемся с полотном. Надо полагать, привод полотна имеет какую-то стабилизацию по скорости, поэтому, используя энкодер привода полотна, мы можем заблаговременно рассчитать, когда предполагаемая (желаемая) линия отреза точно подойдет к неподвижному ножу. Расчет этого времени можно начинать, когда останется несколько секунд (несколько метров) до резки. Когда это время станет равным Tp - включаем привод ножа. Через время Tp намеченная линия резки и вращающийся нож встретятся в нужном месте.

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

 

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

 

Теперь практический совет для ТС:

Исследуйте (измерьте) стабильность (повторяемость) "времени срабатывания привода" Tp вашего устройства в реальных условиях, при задании различных рабочих скоростей ножа. Далее, посчитайте, достаточно ли ее будет для достижения необходимой точности резки полотна (по описанному выше алгоритму работы). Если достаточно, то никакой дополнительный регулятор Вам не нужен. Если нет, то можно попробовать настроить штатный регулятор привода ножа. Или, наоборот, отключить его. Иногда, плохо настроенный регулятор только портит все дело. Если результат все же будет неудовлетворительный, то лишь тогда будете думать как заменить PID-регулятор двигателя привода, или как-то пристроить внешний. А для начала - нужно знать реальное положение вещей.

 

 

Поделиться сообщением


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

Теперь практический совет для ТС:

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

У TC нет углового датчика на ноже, как он исследует?

Да и наблюдаемую осцилляцию скорости он изобразил на рисунке. Значит частотник не справляется со стабилизацией.

 

А "Самое главное в этой задаче - обеспечить стабильность времени срабатывания привода" можно добиться только уменьшением осцилляций скорости.

Так что самое главное - скорость.

Поделиться сообщением


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

У TC нет углового датчика на ноже, как он исследует?

Есть энкодер на валу двигателя. Пусть по нему ориентируется.

Или ставит доп. энкодер непосредственно на барабан ножа.

Иначе задача не имеет решения.

 

Да и наблюдаемую осцилляцию скорости он изобразил на рисунке. Значит частотник не справляется со стабилизацией.

Поэтому, одно из решений - настроить штатный регулятор привода. Либо отключить его совсем...

 

А "Самое главное в этой задаче - обеспечить стабильность времени срабатывания привода" можно добиться только уменьшением осцилляций скорости.

Так что самое главное - скорость.

Нет. Самое главное - стабильность "времени срабатывания".

Стабилизация скорости - лишь одно из условий. Второе условие - стабилизация времени разгона от нуля до заданной скорости.

 

 

Поделиться сообщением


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

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

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

Так что, ПИ-регулятор, а не ПИД, скорее всего.

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

Входным заданием является напряжение. Оно линейно связано со скоростью : 1В - 20 м/мин.

Там настраиваемый ПИД.

Коэффициенты пока строгать боюсь, т.к. станок работает и ковыряться особо не дают.

Но, конечно, отключить ПИД и убрать сигнал тахогенератора - это логично и это я буду делать, если не разберусь со следующим:

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

Сейчас стоит контроллер и он режет как надо. Как в этом случае работают оба регулятора? Это для меня загадка.

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

Какая необходима точность поддержания скорости, раз вы захотели ПИ, а не П?Вы должны понимать, что если вас просят сделать ПИ, то нужна точность поддержания скорости и какая глубина регулирования, иначе надо делать П. А вот этот вопрос самый вкусный - заказчик обычно говорит "максимально точно", при этом в редукторах там люфты, в которые влезают пол кулака...

Не знаю, но требуемая точность реза - 1 мм. И он сейчас достигается на установленном оборудовании.

Все, что нужно вам сделать:

1. Определиться, что является входом ящика и его пределы. Скажем, +5В - это 1000 об/мин, -5В - это -1000 об/мин

+1В - + 20 м/мин. Предел 80 м/мин.

2. Определиться, что в главном контуре черного ящика - это регулятор напряжения, регулятор скорости или регулятор тока. Если регулятор напряжения или скорости - их надо отключить (оборвать о.с., превратить регулятор в П с коэффициентом передачи 1). Если там только регулятор тока, то вы должны из вне построить регулятор скорости (П,ПИ, ПИД) и предусмотреть, что их придется подбирать - во всем мире это называется наладкой. У вашего регулятора будет задание скорости. Перед задание скорости поставьте задатчик интенсивности, хотя бы 0.1 сек, чтобы не убить редуктор ударами за месяц. Кстати, о какой мощности идет речь?

Какой именно регулятор- я не понимаю, как это определить.

Регулятор в приводе, сигналом ОС является сигнал с тахогенератора нужен для поддержания скорости.

Задатчик интенсивности - это частота регулировки или что-то другое? Сейчас я ограничиваюсь 100 Гц, но параметр я могу менять из интерфейса ПО, которое написал для отладки.

Мощность двигателя - 22 кВт.

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

Если это промышленный электропривод с заданием по току, то простой интегратор с насыщением, если это промышленный электропривод с заданием по скорости - апериодическое звено. Любой двигатель в первом приближении - апериодическое звено, любая система управления двигателем в 1 приближении - тоже апериодическое звено. Других вариантов не бывает - если колебательное, то он начнет механику убивать, если консервативное, то он неуправляемый. Если его все таки сделали нелинейным, то массово его никто покупать не будет - вы купите электропривод, в котором 1235 настроек для регуляторов и для этого надо сначало докторскую защитить? К нашему большому несчастью в теории управления за 50 лет так и не придумали общих методов проектирования нелинейных систем с обратной связью

Привод: DC integrator 590+. Даташит весит > 10 МБ, не могу прикрепить здесь.

 

 

... У ТСа задача - сделать, а не доказывать оптимальность управления вертелкой. Я вообще не понимаю, зачем ПИД для этой задачи. П-регулятора здесь достаточно

Обязательно попробую, спасибо.

Поделиться сообщением


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

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

Так что, ПИ-регулятор, а не ПИД, скорее всего.

Так не надо делать Д зависимым от ошибки. Гораздо надежнее и лучше сделать ее от слегка зафильтрованного (зависит от датчика. Отдельный фильтр.) сигнала с датчика.

Поделиться сообщением


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

Очередной раз убеждаюсь, что правильная постановка задачи - 90% ее решения.

 

Сначала разбираемся с циклограммой работы вращающегося ножа:

1) Исходное состояние (пауза): неподвижный нож находится в верхнем положении. Оно точно определено и контролируется по энкодеру привода ножа.

2) Включение привода, разгон до некоторой скорости, движение с постоянной скоростью до момента резки, который, также, точно определяется по энкодеру привода ножа.

3) Отрезание полотна на заданной (постоянной) скорости ножа.

4) Плавное торможение и перевод системы в исходное состояние.

Да, только начало циклограммы - это точка реза, с которой начинается новый оборот. Но это не принципиально.

Выходным параметом данной системы (черного ящика) для нас будет время от момента подачи питания на привод в исходном состоянии, до момента, когда нож достигнет линии резки. Это время обозначим как "время срабатывания привода" Tp.

Не совсем понятно, о каком времени Tр Вы говорите.

Чтобы отрезать нужный размер, я должен выдержать требуемую среднюю скорость ножа на обороте.

Она, в свою очередь, зависит от длины полотна и его средней скорости: Tср = Lп/Vпср.

Средняя скорость на обороте немного плавает.

Я с достаточным темпом пересчитываю Тср и всегда знаю какую среднюю скорость ножа мне надо обеспечить.

Теперь разбираемся с полотном.

... точно подойдет к неподвижному ножу. Расчет этого времени можно начинать, когда останется несколько секунд (несколько метров) до резки. Когда это время станет равным Tp - включаем привод ножа. Через время Tp намеченная линия резки и вращающийся нож встретятся в нужном месте.

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

Стабильностью скорости полотна я не управляю никак, но, в принципе, могу замерить период, с которым скорость плывёт и использовать его как прогноз на обороте ножа.

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

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

Но я-то как раз думал, что эти все погрешности и должен скомпенсировать регулятор. Всё равно, мне кажется, я с точностью в 1мм реза не рассчитаю.

Теперь практический совет для ТС:

Исследуйте (измерьте) стабильность (повторяемость) "времени срабатывания привода" Tp вашего устройства в реальных условиях, при задании различных рабочих скоростей ножа. Далее, посчитайте, достаточно ли ее будет для достижения необходимой точности резки полотна (по описанному выше алгоритму работы). Если достаточно, то никакой дополнительный регулятор Вам не нужен. Если нет, то можно попробовать настроить штатный регулятор привода ножа. Или, наоборот, отключить его. Иногда, плохо настроенный регулятор только портит все дело. Если результат все же будет неудовлетворительный, то лишь тогда будете думать как заменить PID-регулятор двигателя привода, или как-то пристроить внешний. А для начала - нужно знать реальное положение вещей.

Опять-таки, про Тр я не понял, поясните, пожалуйста, что это за время?

 

Так не надо делать Д зависимым от ошибки. Гораздо надежнее и лучше сделать ее от слегка зафильтрованного (зависит от датчика. Отдельный фильтр.) сигнала с датчика.

От какого датчика?

 

Разве Д-компонента регулятора - это не Kd*[e(n)-e(n-1)],

где e(n-1) - ошибка регулировки в предыдущий отсчёт?

Поделиться сообщением


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

Опять-таки, про Тр я не понял, поясните, пожалуйста, что это за время?

Вы определитесь, наконец, с моделью вашего процесса.

Я Вам предложил рабочую модель, и подробно ее описал. Если что-то непонятно - перечитайте внимательно, все определения там есть.

Если Вы какую-то свою модель продвигаете, тогда непонятны ваши вопросы - типа, "а что мне делать дальше?".

Изменено пользователем @Ark

Поделиться сообщением


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

Вы определитесь, наконец, с моделью вашего процесса.

Я Вам предложил рабочую модель, и подробно ее описал. Если что-то непонятно - перечитайте внимательно, все определения там есть.

Если Вы какую-то свою модель подвигаете, тогда непонятны ваши вопросы - типа, "а что мне делать дальше?".

 

Эта модель уже реализована, только начальное состояние - это не пауза, на линия реза.

Тут всё понятно.

 

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

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

И я не могу обеспечить это время с точностью, с которой рез будет с точностью 1 мм.

 

Да, я рассчитываю и время паузы и, вычисляя требуемое время оборота ножа, знаю Тр, но с момента, когда я начал движение с паузы, это время изменится.

 

Следовательно, это время не выходной параметр, если говорить строго.

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

 

Как предположили выше, возможно, мне достаточно и П-регулятора.

При условии, что осцилляции не выйдут за точнотсь в 1мм.

Это я проверю.

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

либо П, либо ПИ.

 

Я знаю, что сейчас стоит контроллер с ПИ-регулятором и стоит привод, в котором тоже есть регулятор, как он настроен П/ПИ/ПИД я пока не проверил.

Но они вместе как-то работают и режут с точностью 1 мм.

Поделиться сообщением


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

Эта модель уже реализована, только начальное состояние - это не пауза, на линия реза.

Тут всё понятно.

Ничего Вам не понятно. Нет у Вас пока рабочей модели. А в голове у Вас - муть и бардак. Извините за резкость.

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

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

И я не могу обеспечить это время с точностью, с которой рез будет с точностью 1 мм.

Неправильно поняли. Это время от скорости линии полотна вообще никак не зависит. Это чисто параметр привода ножа.

И регулятора этого привода. Если не можете обеспечить стабильность этого параметра - можете дальше не решать эту задачу...

Да, я рассчитываю и время паузы и, вычисляя требуемое время оборота ножа, знаю Тр, но с момента, когда я начал движение с паузы, это время изменится.

Следовательно, это время не выходной параметр, если говорить строго.

Не надо рассчитывать время паузы! Вам нужно рассчитывать момент времени, когда включить привод ножа из состояния "пауза".

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

Непонятно, потому что у Вас нет адекватной рабочей модели процесса в Вашей голове!

Пока она не появится - все бесполезно...

 

Поделиться сообщением


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

Ничего Вам не понятно. Нет у Вас пока рабочей модели. А в голове у Вас - муть и бардак. Извините за резкость.

Извиняю, поскольку Вы, видимо, хотите мне помочь.

Неправильно поняли. Это время от скорости линии полотна вообще никак не зависит. Это чисто параметр привода ножа.

И регулятора этого привода. Если не можете обеспечить стабильность этого параметра - можете дальше не решать эту задачу...

Вы сами писали:

Выходным параметом данной системы (черного ящика) для нас будет время от момента подачи питания на привод в исходном состоянии, до момента, когда нож достигнет линии резки. Это время обозначим как "время срабатывания привода" Tp.

И моя трактовка:

"Тр - это время от начала движения ножа из точки паузы к линии реза" не говорит ничего о скорости линии. Только не "к линии реза", а "до момента реза" я имел ввиду.

И, я повторюсь, это время на практике не будет совпадать с тем временем, которое Вы хотите задавать. Дельту этого времени и нужно скомпенсировать регулятором.

Не надо рассчитывать время паузы! Вам нужно рассчитывать момент времени, когда включить привод ножа из состояния "пауза".

Это время связано с временем простоя(паузы)!

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

Время старта обозначим как Tстарта_разгона, тогда:

Tстарта_разгона = Tторможения + Тпаузы, где

Tторможения - время интервала торможения со скорости, на которой был проделан предыдущий рез,

Тпаузы - время паузы. Это время тоже рассчитывается, но формулу не привожу, большая да и незачем.

Непонятно, потому что у Вас нет адекватной рабочей модели процесса в Вашей голове!

Пока она не появится - все бесполезно...

Модель неадекватна в среднем на 5 мм погрешности, при том, что требуемая длина реза от 0,5м до 2500м.

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

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

Чтобы это успеть скомпенсировать, я разгоняю нож до скорости, которую выбрал как скорость реза и далее перевожу нож в режим регулировки.

Регулировка - это достижение требуемой средней скорости ножа на обороте.

 

Буду пробовать:

1. П-регулятор, добиваясь осцилляции в пределах 1мм.

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

 

На всякий случай прикрепил фото со статистикой ошибок реза.

post-32913-1491727585_thumb.jpg

Поделиться сообщением


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

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

Отойдите от этой модели. Начните строить заново. Видимо, нужно объяснять, не только как сделать, но и почему так надо делать.

И почему не надо как Вы предлагаете. Попробую еще раз.

 

И моя трактовка:

"Тр - это время от начала движения ножа из точки паузы к линии реза" не говорит ничего о скорости линии. Только не "к линии реза", а "до момента реза" я имел ввиду.

И, я повторюсь, это время на практике не будет совпадать с тем временем, которое Вы хотите задавать. Дельту этого времени и нужно скомпенсировать регулятором.

Трактовка Tp правильная. Неправильно то, что Вы собираетесь его "задавать". Не надо этого делать. Нужно измерить фактическое значение, непосредственно, в процессе очередного цикла резки, и запомнить его для использования на следующем цикле. И так делать постоянно. От регулятора привода требуется только обеспечить стабильность значения этого времени, а не "компенсацию" или "подгонку" и к какому-либо эначению. Этим задача резко упрощается. От регулятора теперь требуется стабилизация скорости и стабилизация процесса разгона. Это уже конкретные требования и конкретные задачи, которые можно (и нужно) решить. А параметр Tp - какой получится по факту, тот и будете использовать.

Это время связано с временем простоя(паузы)!

Чем короче у меня требуемый рез, тем меньше времени мне надо постоять на паузе.

Теоретически - все правильно. А практически - Вы не сможете заранее вычислить эту паузу с нужной точностью. Поскольку нет уверенности, что привод ленты поддерживает стабильную скорость с необходимой точностью. Вы вычислили паузу, а лента чуть притормозила или пошла быстрее - это для Вас непредсказуемо. Вы этим процессом не управляете. Поэтому - не нужно вычислять паузу заранее. От очередного реза отсчитываете нужное расстояние по энкодеру полотна. Когда останется небольшое расстояние - начинаете рассчитывать оставшееся время, используя текущую скорость полотна, а не среднюю. Предполагая, что она не изменится сильно за столь короткий промежуток времени. Этим Вы минимизируете ошибку, и может тогда достигните нужной точности.

Далее чтобы "свести" процесс движения ножа и ленты - нужно ориентироваться по времени. По другому не получится...

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

Вы пока этот режим отложите. Решите хотя бы задачу с паузой.

 

Поделиться сообщением


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

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

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

Гость
Ответить в этой теме...

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

  Разрешено использовать не более 75 эмодзи.

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

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

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

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