Каталог :: Программирование и комп-ры

: Применение метода частотных диаграмм в исследовании устойчивости систем с логическими алгоритмами управления

       Московский Государственный Технический Университет им. Н.Э. Баумана       
                Курсовая работа по курсу “Нелинейные САУ”                
                                    на                                    
                                  тему:                                  
     Применение метода частотных круговых диаграмм к исследованию устойчивости
                систем с логическими алгоритмами управления.                
                        Выполнил: ст-т гр. АК4-81                         
     Смык В.Л.
     Руководитель: профессор
     Хабаров В.С.
                              Реутов 1997 г.                              
     Применение метода частотных круговых диаграмм к исследованию устойчивости
                систем с логическими алгоритмами управления.                
На ранней стадии развития теории автоматического регулирования требование
устойчивости работы системы было первым и обычно единственным и содержание
большинства теоретических исследований сводилось к иследованию устойчивости.
“Термин “устойчивость” настолько выразителен, что он сам за себя говорит”,-
отмечают в начале изложения теории устойчивости Ж. Ла Салль и С. Лефшец [1].
Это вполне справедливо, но, несмотря на это, неточности и нелогичности можно
встретить как раз не в математических, а в смысловых понятиях и терминах.
     Устойчивостью любого явления в обиходе называю его способность достаточно
длительно и с достаточной точностью сохронять те формы своего существования,
при утрате которых явление перестает быть самим сабой. Однако не только в
обиходе, но и в научной терминалогии устойчивым называют не явление, а систему,
в корой оно наблюдается, хотя это не оправдывает логически. Устойчивы ли
физические тела - шар или куб? Такой вопрос будет иметь смысл, если речь идет о
материале, из которого они сделаны. (Металлический шар
устойчив, шар из дыма нет.) Теорию управления интересует, однако, не эта
прочнасная устойчивость. Подразумевается, что система управления как
инженерная конструкция заведома устойчива, и в теории изучается устойчивость
не самой системы, а ее состояний и функционирования. В одной и той же системе
одни состояния или движения могут быть устойчивыми, а другие не устойчивыми.
Более того, одно и то же жвижение может быть устойчивым относительно одной
переменной и неустойцивым относительно другой - это отмечал еще А.М. Ляпунов
[2]. Вращение ротора турбины устойчиво по отношению к угловой скорости и
неустойчиво относительно угла поворота вала. Движение ракеты устойчиво
относительно траектории и неустойчиво по отношению к неподвижной системе
координат. Поэтому нужно оговаривать, устойчивость какого состояния или
движения в системе и относительно каких переменных изучается. Так же есть
много методов для оценки самой устойчивости. Мы рассмотрим как можно оценить
устойчивость системы с логическим алгоритмом управления методом круговых
диаграмм.
Рассмотрим теоретическую часть и посмотрим что из себя представляет круговой
критерий. Пусть дана система
.
     x=Ax+bx,   s=c’x,             (1)
где x и s - в общем случае векторы (и, следовательно, b и с - прямоугольные
матрицы), а матрица А не имеет собственных значений на линейной оси.
Предположим , что для некоторого m, 
£ m £
система (1), дополненая соотношением x=-ms, асимптотически усойчива.
Для абсолютной экпоненциальной устойчивости системы (1) в классе М(
) нелинейностей x=j(s,t), удовлетворяющих условию
     £ j(s,t)/s £                    (2)
достаточно, чтобы при всех w, -¥<w<+¥, выполнялось соотношение
     Re{[1+w)][1+W(jw)]}>0.      (3)
Круговой критерий вытекает из квадратичного критерия для формы F(x,s)=(
s-x)(x-s).
Действительно, как было показано выше, форма F(jw,x) имеет вид
F(jw,x)=-Re{[1+W(jw)][1+W(jw)]}|x|
Из этой формулы после сокращения на |x| следует (3).
В (3) ¹-¥ ,  
¹+¥. Случай, когда либо  
=-¥, либо  
=+¥ рассматривается аналогично.
Круговой критерий представляет собой распространение линейных частотных
критериев устойчивости Найквиста, Михайлова и других на линейные системы с
одним линейным или нелинейным, стационарным или нестационарным блоком. Он
получается из (3), если вместо передаточной матрицы использовать частотную
характеристику линейной части W(jw).
Обозначая комплексную переменную W(jw)=z, рассмотрим систему с одной
нелинейностью, удовлетворяющей одному из следующих условий:
     Re[(1+z)(1+z)]£0, если  ¹-¥ ,  ¹+¥.    (4)
     Re[(1+z)z]£0, если  ¹-¥ ,  ¹+¥.          (5)
     Re[z(1+z)]£0, если  ¹-¥ ,  ¹+¥.          (6)
Пусть С() - облость
комплексной плоскости z, определяемая этими условиями. Граница В(
) области определяемая уравнениями получаемыми из (4)-(6) заменой знаков
неравенств равенствами. Для (4) получаем окружность, проходящую через точки -1/
, -1/ с
центром на оси абсцисс, причем область С будет внутренностью этой
окружности, если 
>0, т.е. если нелинейные характеристики лежат в 1 и 3 квадрантах, и ее
внешностью, если сектор (
) захватывает два смежных квадранта. Если одна из границ сектора совпадает с
осью абсцисс, т.е. если 
=0 или =0 ,
то область С будет полуплоскостью, а ее граница - вертикальной прямой,
проходящей соответственно через -1/ 
или -1/. На
рисунке 1 показаны границы в плоскости z для различного расположения секторов (
) в плоскости s, x. Там же изображены кривые W(jw), w>0 для неособого случая,
расположенные так, что возможна абсолютная устойчивость. Однако только
приемлимого расположения хаоактеристик W(jw) еще недостаточно для суждения об
абсолютной устойчивости : кроме этого, нужно еще потребовать, чтобы линейная
замкнутоя система была асимптотически устойчивой.
Круговой критерий обеспечивает также абсолютную устойчивость для системы с
любым блоком, вход s и выход x которого удовлетворяют для всех t неравенству
(s-x)(x-s)³0                            (7)
     
Рисунок 1, а.
Рассмотрим систему, приведенную на рис. 2.
                А          Х    Y    У  (P)         Z
                   (-)
G(p)      g
     
Рисунок 2. Здесь W(p) - оператор линейной части системы, которая может иметь в общем случае следущий вид:
W(p)=; (8) W(p)=; Алгоритм регулятора имеет вид: y=Yx, при gx>0 Y= (9) - при gx<0, g=( В форме уравнений Коши рассматриваемая система имеет вид: =, =-, (10) k при g>0 где = - k при g<0, g=c+; =. Соответствие записей системы на рис. 2 достигается, когда при W(p)= в уравнениях (10) имеем: (11) а при W(p)= имеем: (12) Причем для обоих случаев (11) и (12) имеет место соотношение (13) В соответствии с изложенным одинаково справедливо рассматривать в виде структурной схемы на рис. 2 с известным линейными операторами - и G(p) или в виде формы Коши (10). Дополнительно отметим, что структурная интерпритация рассматриваемой системы на рис. 2 имеет еще одну структурную схему описания, приведенную на рис. 3. |x|=c l g y z (-) x G(p) W(p)
Рисунок 3. Это означает, что аналитической записи (10) соответствуют два структурных представления исследуемой СПС, причем второе позволяет рассматривать систему (10) как релейную систему с изменяемым ограничение, когда |x| - var. Далее перейдем к анализу нашего метода. Согласно частотной теоремы (10), для абсолютной устойчивости системы на рис. 3 лостаточно, чтобы при всех w, изменяющихся от - ¥ до + ¥, выполнялось соотношение: Re{[1+w)][1+W(jw)]}>0, а гадограф mW(jw)+1 при соответствовал критерию Найквиста. Для исследуемой системы условие (3) удобнее записать в виде (4) и (5). На рис. 4 приведенны возможные нелинейные характеристики из класса М( ) и годографы W(jw), расположенные таким образом, что согласно (4) и (5) возможна абсолютная устойчивость. y ^
y=g ()
|x| y=g (при =0) > 0 “а” “б”

“в” “г” Рисунок 4. В рассматриваемом случае (10) при W(p)=, когда W(p)= W(p)G(p), G(p)=p+1, годограф W(jw) системы на рис. 5. j W(jw) w=¥
> < = w=0 Рисунок 5. В случае (10) справедливы графические формы на рис. 4 в,г, т.е. исследуемая система абсолютно устойчива в смысле кругового критерия (3) или (5) при > (14) Интересно заметить, что достаточные условия абсолютной устойчивости по Ляпунову а > 0 , y(t) > 0 и a > c для рассматриваемого случая совпадают с достаточными условиями абсолютной устойчивости, полученными для кругового критерия (14), если выполняется требование y(t) > 0 (15) поскольку, согласно (11) и (13) a=a=. Докажем это, используя условия существования скользящего режима -k£y(t)=ck т.е. подставим сюда вместо коэфициентов а,с, и k их выражения через , , , тогда получим -£y(t)= £ (16) Согласно рис. 5 и условия (16) получаем: 1) при = , y(t)=0 2) при > , y(t)>0 3) при < , y(t)<0, что и требовалось доказать. Теперь рассмотрим нашу систему с логическим алгоритмом управления, ее логическая схема приведена на рис. 6. |x|=c l g s z (-) x G(p) (p)
Рисунок 6. В данном случае считаем что: - варьируемая величина, =0.5, =0.1 (анализ поведения системы при изменении данного параметра исследуется в работе ст-та Новикова, мы берем оптимальное значение), =0.1,1 (коэффициент обратной связи), =10,100. Рассмотрим теперь саму функцию: W(p)=G(p)W(p), где G(p) - функция корректора, W(p)= (p)W(p), где (p)=, а W(p) в свою очередь будет: W(p)=, где , соответственно вся функция имеет вид: W(p)=; Теперь заменяем p на jw и имеем вид: ; Для построения гадогрофа выведем формулы для P(w), jQ(w) которые имеют вид: P(w)= ; jQ( ; Графики можно посмотреть в приложении N 2. Учитывая , что добротность x должна быть ³ 0.5¸0.7 мы можем определить добротность нашей системы, она примерно равна 0.5. Отсюдо видно, что из-за увеличения и , x уменьшается, можно сделать вывод, что колебательность звена увеличиться. Это можно наблюдать на графиках 1.13 - 1.16 в приложении N 2. Но это не подходит по требованию нашей задачи. Так как > , то можно сделать вывод, что коректор будет влиять только на высоких частотах, а на низких будет преобладать , что можно наблюдать на графиках 1.1 - 1.4. На графиках 1.5 - 1.8 можно наблюдать минемальные значения , это значит что, при этих значениях будет максимальные значения полки нечувствительности релейного элемента. Минемальные значения полки нечуствительности можно наблюдать на графиках 1.9 - 1.12, особенно при минемальном значении . Приложение N 1. Программа для построения годографов на языке программирования СИ ++. #include <graphics.h> #include <iostream.h> #include <conio.h> #include <dos.h> #include <stdlib.h> #include <stdio.h> #include <math.h> #include <string.h> void Godograf(float Tpr, float Ko, float Kos, int Color, int Xc, int Yc, int x, int y, int z, int err); void Osi(int Xc, int Yc, int kol); int xmax, ymax; float Kos[]={0.1,1.0}, Ko[] ={10.0,100.0}, Tpr[]={0.01,0.09,0.2,0.5}; void main(void) { float P_w, Q_w, w; int driver, mode, err; driver = DETECT; initgraph(&driver,&mode,""); err = graphresult(); if (err!=grOk) {cout<<"\n\t"<<grapherrormsg(err); getch();} else { xmax = getmaxx(); ymax = getmaxy(); int Xc=(int)(xmax/2), Yc=(int)(ymax/2); for(int i=0;i<=1;i++) for(int j=0;j<=1;j++) for(int k=0;k<=3;k++){ cleardevice(); setviewport(0,0,xmax,ymax,0); Osi((int)(xmax/2),(int)(ymax/2),i+j+k); Godograf(Tpr[k],Ko[j],Kos[i],15,(int)(xmax/2),(int)(ymax/2),k,j,i,1); setcolor(7); setlinestyle(1,0,1); rectangle(Xc-18,Yc-15,Xc+18,Yc+15); setlinestyle(0,0,1); rectangle(10,Yc+5,250,Yc+205); setcolor(15); setviewport(10,(int)(ymax/2)+5,250,(int)(ymax/2)+205,1); setfillstyle(1,0); floodfill(5,5,7); line(10,100,230,100); line(125,10,125,190); Godograf(Tpr[k],Ko[j],Kos[i],15,125,100,k,j,i,0);}; closegraph(); } } void Godograf(float Tpr, float Ko, float Kos, int Color, int Xc, int Yc, int x, int y, int z, int err) { float P_w1=0.0, Q_w1=0.0, P_w, Q_w, To=0.5, Tg=0.1, P_w_min=0.0; for(float w=0;w<=100;w=w+0.05){ if(((Kos*Ko-(To+Tpr)*w*w)*(Kos*Ko-(To+Tpr)*w*w)+ (w+Tpr*Kos*Ko*w-To*Tpr*w*w*w)*(w+Tpr*Kos*Ko*w-To*Tpr*w*w*w))!=0){ P_w = (Ko*w*Tg*(w+Tpr*Kos*Ko*w-To*Tpr*w*w*w)+ (Kos*Ko*Ko-(To+Tpr)*Ko*w*w))/ ((Kos*Ko-(To+Tpr)*w*w)*(Kos*Ko-(To+Tpr)*w*w)+ (w+Tpr*Kos*Ko*w-To*Tpr*w*w*w)*(w+Tpr*Kos*Ko*w-To*Tpr*w*w*w)); Q_w = (Tg*(Kos*Ko*Ko*w-(To+Tpr)*Ko*w*w)- Ko*(w+Tpr*Kos*Ko*Ko*w-Ko*To*Tpr*w*w*w))/ ((Kos*Ko-(To+Tpr)*w*w)*(Kos*Ko-(To+Tpr)*w*w)+ (w+Tpr*Kos*Ko*w-To*Tpr*w*w*w)*(w+Tpr*Kos*Ko*w-To*Tpr*w*w*w)); if (abs(P_w)>abs(P_w1)) P_w1=P_w; if (abs(Q_w)>abs(Q_w1)) Q_w1=Q_w; if (P_w<P_w_min) P_w_min = P_w; if (P_w1==0) P_w1=P_w1+0.01; if (Q_w1==0) Q_w1=Q_w1+0.01; }; }; float KmasX =(float)(xmax-Xc-100)/P_w1, KmasY =(float)(ymax-Yc-100)/Q_w1; if (KmasX<0) KmasX=-KmasX; if (KmasY<0) KmasY=-KmasY; if (KmasX>=220) KmasX=150; if (KmasY>=140) KmasY=100; if (err==0) {KmasX=KmasX*4; KmasY=KmasY*4;}; w = 0; if(((Kos*Ko-(To+Tpr)*w*w)*(Kos*Ko-(To+Tpr)*w*w)+ (w+Tpr*Kos*Ko*w-To*Tpr*w*w*w)*(w+Tpr*Kos*Ko*w-To*Tpr*w*w*w))!=0){ P_w = KmasX*(Ko*w*Tg*(w+Tpr*Kos*Ko*w-To*Tpr*w*w*w)+ (Kos*Ko*Ko-(To+Tpr)*Ko*w*w))/ ((Kos*Ko-(To+Tpr)*w*w)*(Kos*Ko-(To+Tpr)*w*w)+ (w+Tpr*Kos*Ko*w-To*Tpr*w*w*w)*(w+Tpr*Kos*Ko*w-To*Tpr*w*w*w)); Q_w = KmasY*(Tg*(Kos*Ko*Ko*w-(To+Tpr)*Ko*w*w)- Ko*(w+Tpr*Kos*Ko*Ko*w-Ko*To*Tpr*w*w*w))/ ((Kos*Ko-(To+Tpr)*w*w)*(Kos*Ko-(To+Tpr)*w*w)+ (w+Tpr*Kos*Ko*w-To*Tpr*w*w*w)*(w+Tpr*Kos*Ko*w-To*Tpr*w*w*w)); moveto(Xc+P_w,Yc-Q_w); }; setcolor(Color); setcolor(9); line(Xc+P_w_min*KmasX,10,Xc+P_w_min*KmasX,ymax-10); gotoxy(2,5); printf("K2="); printf("%f",(-1/P_w_min)); setcolor(15); for(w=0;w<=700;w=w+0.05){ if(((Kos*Ko-(To+Tpr)*w*w)*(Kos*Ko-(To+Tpr)*w*w)+ (w+Tpr*Kos*Ko*w-To*Tpr*w*w*w)*(w+Tpr*Kos*Ko*w-To*Tpr*w*w*w))!=0){ P_w = KmasX*(Ko*w*Tg*(w+Tpr*Kos*Ko*w-To*Tpr*w*w*w)+ (Kos*Ko*Ko-(To+Tpr)*Ko*w*w))/ ((Kos*Ko-(To+Tpr)*w*w)*(Kos*Ko-(To+Tpr)*w*w)+ (w+Tpr*Kos*Ko*w-To*Tpr*w*w*w)*(w+Tpr*Kos*Ko*w-To*Tpr*w*w*w)); Q_w = KmasY*(Tg*(Kos*Ko*Ko*w-(To+Tpr)*Ko*w*w)- Ko*(w+Tpr*Kos*Ko*Ko*w-Ko*To*Tpr*w*w*w))/ ((Kos*Ko-(To+Tpr)*w*w)*(Kos*Ko-(To+Tpr)*w*w)+ (w+Tpr*Kos*Ko*w-To*Tpr*w*w*w)*(w+Tpr*Kos*Ko*w-To*Tpr*w*w*w)); lineto(Xc+P_w,Yc-Q_w); }; }; setcolor(13); circle(Xc-KmasX,Yc,2); circle(Xc-KmasX,Yc,1); putpixel(Xc-KmasX,Yc,13); outtextxy(Xc-KmasX-7,Yc-12,"-1"); setcolor(15); if (err==1){ if (x==0) outtextxy(10,10,"Tpr = 0.01"); if (x==1) outtextxy(10,10,"Tpr = 0.09"); if (x==2) outtextxy(10,10,"Tpr = 0.2"); if (x==3) outtextxy(10,10,"Tpr = 0.5"); if (y==0) outtextxy(10,30,"Ko = 10"); if (y==1) outtextxy(10,30,"Ko = 100"); if (z==0) outtextxy(10,50,"Koc = 0.1"); if (z==1) outtextxy(10,50,"Koc = 1.0");} else { char ch=' '; while(ch!=27&&ch!=13) if (kbhit()!=0) ch=getch();}; }; void Osi(int Xc, int Yc, int kol) { setcolor(15); rectangle(0,0,xmax,ymax); line(Xc,10,Xc,ymax-10); line(10,Yc,xmax-10,Yc); line((int)(xmax/2)-3,15,(int)(xmax/2),10); line((int)(xmax/2),10,(int)(xmax/2)+3,15); line(xmax-15,(int)(ymax/2)-3,xmax-10,(int)(ymax/2)); line(xmax-15,(int)(ymax/2)+3,xmax-10,(int)(ymax/2)); settextstyle(2,0,5); outtextxy((int)(xmax/2)+7,10,"jQ(w)"); outtextxy(xmax-35,(int)(ymax/2)+7,"P(w)"); settextstyle(2,0,4); outtextxy((int)(xmax/2)-8,(int)(ymax/2)+1,"0"); settextstyle(0,0,0); if (kol==5) outtextxy(5,ymax-15,"'Esc' - exit"); else outtextxy(5,ymax-15,"'Enter' - next "); setcolor(15); }; Приложение N 2. Рисунок N 1.1 Рисунок N 1.2 Рисунок 1.3 Рисунок 1.4 Рисунок 1.5 Рисунок 1.6 Рисунок 1.7 Рисунок 1.8 Рисунок 1.9 Рисунок 1.10 Рисунок 1.11 Рисунок 1.12 Рисунок 1.13 Рисунок 1.14 Вставка 1.15 Рисунок 1.16 Литература: 1. Емильянов С.В., Системы автоматического управления с переменной структурой. - М.: Наука, 1967. 2. Воронов А.А.,Устойчивость управляемость наблюдаемость, Москва “Наука”, 1979. 3. Хабаров В.С. Сранительная оценка методов исследования абсолютной устойчивости СПС: Научн.-исслед. работа. 4. Хабаров В.С. Нелинейные САУ: Курс лекций/ Записал В.Л.Смык,-1997. Список постраничных ссылок: 1. Ла Салль Ж., Лефшец С. Исследование устойчивости прямым методом Ляпунова.-М.: Мир, 1964.-168 с. 2. Ляпунов А.М. Общая задача об устойчивости движения. - Собр. соч.- М.: Изд-во АН СССР, 1956, т. 2, с. 7-271.