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

Автоматическое регулирование

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

управлять приводом просто.

имеется сигнал от регулятора.

имеется сигнал положения заслонки обратной связи.

сравниваем их и выбираем - открывать или закрывать. тупой компаратор.

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

 

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

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


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

Ну пока ясно. Благодарю вас за помощь. Думаю вопросы еще появятся когда на практике начнем все это делать. В первый раз просто ...

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


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

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

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


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

P.S. Есть четыре пути:

 

1. Прочитать литературу самому, понять смысл и рассчитать контур регулирования.

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

3. Нанять неглупого студента, который прочтет литературу, поймет смысл и рассчитает.

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

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


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

Прочитать литературу самому, понять смысл и рассчитать контур регулирования.

 

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

проб и ошибок.

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


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

Гость LordN
1. Прочитать литературу самому, понять смысл и рассчитать контур регулирования.
прежде чем читать и считать надо хотя бы один раз попытаться сделать и настроить.

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


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

Эххх, давно не брал я в руки шашку.....

 

Несмотря на кужущуюся простоту, при минимальном требовании "плавности регулирования", система у Вас получается довольно сложной для проектирования, т.е. содержит существенную нелинейность в виде двустороннего нестационарного ограничения по управляющему воздействию на объектрегулирования под названием "бак". Если входной поток, заполняющий бак, обозначить как V, а поток откачиваемый насосом обозначить как Kн*u (предполагается, что насос линейно отрабатывает управляющее воздействие u>=0), то скорость изменения уровня в баке будет:

 

dLout/dt = V-Kн*u.

Lout - уровень в баке; Кн - коэффициент пересчета числа от 0 до 32768 в производительность насоса.

 

Двустороннесть ограничения здесь - при u=0 скорость заполнения не может быть больше V, а при u=max скорость слива не может быть быстрее V-Kн*u_max. Нестационарность - в Ваших условиях нет информации о скорости V, поэтому, на этапе проектирования она должна предполагаться неизвестной и нестационарной (как правило - медленно меняющейся). Дополнительная сложность - насос работает только на слив, поэтому нужно специльно отрабатывать знак ошибки:

 

Err = Lset-Lout

Lset - задающее воздейсвтие.

 

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

 

Еще одна сложность - дискретность датчика уровня. Исполнитель у Вас 15-ти разрядный. Датчик уровня, скорее всего будет выдавать значительно грубее. Может так получиться, что система регулирования, в стационарном состоянии, бутет качаться вблизи установившегося значения на +/-1 разряд этого датчика. Такое явление называется "предельный цикл низкого уровня".

 

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

 

при Err > DLout устанавливается u=0

при Err < -DLout устанавливается u=u_max

где u_max - такое значение от 0 до 32768, что Kн*u_max заведомо больше максимально возможной скорости заполнения бака Vmax.

 

 

 

Если выставлено упомянутое требование "плавности регулировки", то Вам необходимо подобрать такое u0, при котором обеспечивается два равенства для текущего значения V0 (V0 неизвестно и медленно меняется):

 

V0-Kн*u0 = 0

Err = 0.

 

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

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

предложил AlterPferd (Вам нужно было более детально раскрутить его на идеи) - замкнуть контур через усилительное звено с коэффициентом передачи -Kп (!!!знак "минус" - для инвертирования сигнала ошибки!!!), а неизвестную скорость заполнения V0 рассматривать как мешающее воздействие. В этом случае управляющее воздействие на насос:

 

u = -Кп*Err = -Кп*(Lset-Lout)

u = 0, если u<0

 

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

 

Err = tau*V0, где tau = 1/(Кп*Кн).

 

Выбором Kп достаточно большим можно свести эту ошибку до приемлемой величины для всех возможных скоростей заполнения бака. Если каким-то образом удалось получить V0, то можно вычесть эту ошибку, сформировав управляющее воздействие по правилу:

 

u = -Кп*Err + V0/Kн

u = 0, если u<0.

 

Специально нормировать здесь ничего не нужно. Но необходимо согласовать размерность задающего воздействия (Lset), показаний датчика уровня (Lout) и диапазон допустимых входных значений исполнительного звена (насоса).

 

 

 

 

Включение интегратора с коэффициентом усиления Ки паралельно усилительному звену (это называется "изодромная коррекция" - рекомендую погуглить) теоретически может свести статическую ошибку от мешающего воздействия V0 до нуля. Управляющее воздействие здесь формируется в виде (!!! знак ошибки инвертирован !!!):

 

Int(i) = Int(i-1) - Err

u(i) = -Кп*Err(i) + Ки*Int(i)

u = 0, если u<0.

 

Однако, наличие ограничения на управляющее воздействие вида u = 0, если u>0 тянет за собой явление, которое в англицкой литературе называется wind-up (не знаю как по русски, но рекомендую погуглить). Это явление удлинняет переходный процесс за счет появления затухающих колебаний вокруг установившегося значения (этих колебаний не будет, если снять ограничение). Борются с wind-up по разному. Простейший способ - отключение входа интегратора (т.е. принудительная подача на него нулевого значения) в момент выполнения

условия u<0, т.е.:

 

Int1 = Int(i-1) - Err

u(i) = -Кп*Err(i) + Ки*Int1

если u(i)<0 то u = 0, Int(i) = Int(i-1).

 

Коэфициенты Ки и Кп лучше выбирать так, чтобы корни s = 0.5*(-Кп +/- sqrt(Кп^2-4*Ки)) характеристического уравнения были отрицательными и действительными - это обеспечит систмеме устойчивость и малую колебательность (колебания, вызванные совместным действием ограничения u = 0, если u<0 - это отдельная песня для нелинейных систем авторегулирования :)). Специально нормировать здесь тоже не нужно.

 

 

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

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


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

Прочитать литературу самому, понять смысл и рассчитать контур регулирования.

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

проб и ошибок.

 

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

 

Из книг, которые недавно издавались в бумажном виде на русском языке - есть например "Проектирование систем управления, Г.К. Гудвин и др., Москва, БИНОМ Лаборатория знаний, 2004". Правда встречаются ошибки в формулах, очевидно, внесенные при переводе, ошибки легко обнаруживаются и устраняются при внимательном чтении. Это базовый курс для студентов, а не специальная литература, но его должно быть достаточно для решения подобный задач. Есть более простые и классические курсы.

 

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

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


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

я б посоветовал почитать дедушку Боба

 

http://www.elecdesign.com/Articles/Print.cfm?ArticleID=4915

 

желательно все 6 статей.

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


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

Эххх, давно не брал я в руки шашку.....

 

...

 

 

Вы решили поиздеваться над бедным человеком?

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

 

я б посоветовал почитать дедушку Боба

 

http://www.elecdesign.com/Articles/Print.cfm?ArticleID=4915

 

желательно все 6 статей.

 

Хм... Нечеткая логика без предварительного понимания возможностей линейных регуляторов - это странно. С другой стороны - а вдруг?

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


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

Вы решили поиздеваться над бедным человеком?

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

 

Начнем с того, что задача уже давно изменилась

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

 

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

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

 

Мне кажется, Вы слишком переусложняете

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

 

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

Вот и я о том же. То, что я написал выше - позволяет начать строить устойчивый регулятор, который обеспечит "какую-то" работоспособность замкнутого контура. А вот чтобы этот контур работал "как надо" - тут придется выгребать и нелинейность исполнителя, и его запаздывания (а это неслабый удап по устойчивости всей системы) и т.д. по списку. Датчик уровня (точнее его разрядность) тут тоже будет одним из критических звеньев. Это я не могу забыть пятиметровую алюминиевую трубку, через каждые 10 см на которой была накручена катушка из МГТФ. А на трубку надевался кольцевой поплавок с кольцевым магнитом...

 

я б посоветовал почитать дедушку Боба

 

http://www.elecdesign.com/Articles/Print.cfm?ArticleID=4915

 

желательно все 6 статей.

 

Хм... Нечеткая логика без предварительного понимания возможностей линейных регуляторов - это странно. С другой стороны - а вдруг?

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

 

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

 

Две недели назад видел в арбат-книге последнее издание Бесекерского "Теория систем автоматического управления". Это классический учебник по ТАУ старой советской школы. Переводные буржуйские авторы, а это как правило Ph.D из провининциальный американских университетов (по крайней мере то, что я видет из печатных книг в московских магазинах) - тихо курят в сторонке.

 

Бесекерского можно заказать в Озоне.

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


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

я б посоветовал почитать дедушку Боба

 

http://www.elecdesign.com/Articles/Print.cfm?ArticleID=4915

 

желательно все 6 статей.

 

Хм... Нечеткая логика без предварительного понимания возможностей линейных регуляторов - это странно. С другой стороны - а вдруг?

 

 

я советовал не название почитать а СТАТЬИ ! Тоесть содержание.

Там именно про ПИД регулирование речь идет.

 

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

 

И всеже лучше прочитать о чем речь и потом говорить!

 

Ведь в этих статьях и говорится о сомнении в фази и о

простоте решения конкретных задач "нормальным" ПИД.

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

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


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

Мне кажется, Вы слишком переусложняете

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

Если произвольный уровень - то возможно. В любом случае, вряд-ли удастся нормально работать в районе уровня в несколько миллиметров. Что человеку нужно - точно неизвестно. Думаю, нужно либо поддерживать фиксированный уровень, либо работать в некотором диапазоне вблизи середины заполнения бака. Я совершенно не настаиваю, что фиксированная сливная труба может решить все возможные варианты задачи - я её написал как пример ТРИВИАЛЬНОГО решения НЕКОТОРЫХ вариантов задачи :) Фиксированная сливная труба - это ведь тоже такой автоматический регулятор.

 

Две недели назад видел в арбат-книге последнее издание Бесекерского "Теория систем автоматического управления". Это классический учебник по ТАУ старой советской школы. Переводные буржуйские авторы, а это как правило Ph.D из провининциальный американских университетов (по крайней мере то, что я видет из печатных книг в московских магазинах) - тихо курят в сторонке.

 

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

 

 

Int(i) = Int(i-1) - Err

u(i) = -Кп*Err(i) + Ки*Int(i)

u = 0, если u<0.

 

И, кстати, Вы не забыли, что сама характеристика бака обладает полюсом в нуле - в приближении независимости выходного потока от уровня в баке :glare:? Я не хочу сказать, что регулятор с интегрирующим звеном здесь совершенно неприменим - но обязательно вылезут побочные эффекты, вроде неустранимого перерегулирования. Это может оказаться и не совсем допустимым - если рассматривать общую постановку задачи. Или схема возбудится - особенно учитывая характеристику управления выпускного клапана. Чем хороша фиксированная сливная труба: она не содержит интегрирующего звена и у нее минимальные задержки реакции. В результате крайне редко можно наблюдать её возбуждение :biggrin:

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


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

Некоторые советские учебники грешат тем, что начинают с критерия Ляпунова :) и потом сводят к частным случаям.

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

 

На эту классику обращу внимание специально, спасибо. С советскими учебниками одно плохо: они писались еще до массового распространения цифрового управления

Сразу видно человека, изучавшего ТАУ самостоятельно,а не в рамках инстутутских учебных планов :).

Вы удивитесь, но массовое распространение цифровых систем управления началось в конце шеститедсятых. А в середине 70-х они уже никого не удивляли. Ессно, применялись эти системы там, где допускалось размещение цифровых регуляторов, собранных на дискретной логике. В упомянутой мною книге есть обзор основ построения дисретно-временных, импульсных, цифровых регуляторов, и регуляторов, содержащих в своем составе ЦВМ. Щас у меня под рукой распечатка скана книги "Цифровые автоматические системы" того же автора, изданной в 1976-м году. На работе видел толстенный переводной фолиант "Теория цифровых систем автоматического управления", изданный в 1969-м году (значит в штатах эта книга появилась на пару лет раньше). Советская цензура тогда очень хорошо сыграла - переводились только очень хорошие научно-технические книги во всех областях знаний. Сейчас переводятся и издаются интеллектуальные помои. Матлаб здесь - это просто удобный современный инструмент для проектирования систем. К методам цифрового упрваления он отношения не имеет.

 

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

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

 

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

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

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


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

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

Седня времени нет, завтро переварю то что вы понаписали, и буду спрашивать.

 

Исполнитель у Вас 15-ти разрядный. Датчик уровня, скорее всего будет выдавать значительно грубее.

Датчиком выдается сигнал 4-20 мА на контроллер, внутри контроллера это значение преобразуется также в 15 битовое целое.

 

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

Это 2 разные задачи

 

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

 

Нужно поддерживать и устанавливать такой уровень, какой задаст оператор. А также компенсировать возмущающее воздействие - не регулируемый поток жидкости.

 

На одном заводе знакомые, вообще не понимая что такое ПИД регулирование, подбирают 3 коэффициента методом тыка и ниче работает вроде всё и никто не жалуется. (Они просто работают на заводе, автоматизировали другие люди)

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

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


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

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

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

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

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

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

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

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

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

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