Cum funcționează un regulator de temperatură PID? AVR221: Controler PID discret

Algoritm simplu pentru controler PID discret

Sprijinit de toate microcontrolerele AVR

Funcția PID utilizează 534 de octeți de memorie flash și 877 de cicluri de procesor (IAR - optimizare de dimensiuni reduse)

1. Introducere

Acest manual descrie o implementare simplă a unui controler discret proporțional-integral-derivat (PID).

Când lucrați cu aplicații în care semnalul de ieșire al sistemului trebuie să se schimbe în conformitate cu valoarea de referință, este necesar un algoritm de control. Exemple de astfel de aplicații sunt o unitate de control al motorului, o unitate de control pentru temperatură, presiune, debit de fluid, turație, forță sau alte variabile. Controlerul PID poate fi utilizat pentru a controla orice variabilă măsurată.


Multe soluții sunt folosite în domeniul controlului de mult timp, dar controlerele PID pot deveni „standardul industriei” datorită simplității și bunelor performanțe.

Pentru obtinerea Informații suplimentare pentru controlerele PID și aplicațiile acestora, cititorul ar trebui să se refere la alte surse, cum ar fi Controloarele PID de K. J. Astrom & T. Hagglund (1995)

Figura 1-1. Răspunsuri tipice ale unui controler PID la o schimbare de treaptă a semnalului de referință

2. Controler PID

Figura 2-1 prezintă o diagramă a unui sistem cu un controler PID. Controlerul PID compară valoarea de proces măsurată Y cu o valoare de referință dată Y0. Diferența, sau eroarea, E, este apoi procesată pentru a calcula un nou proces de intrare, U. Acest nou proces de intrare va încerca să aducă valoarea procesului măsurat mai aproape de valoarea specificată.

O alternativă la un sistem de control în buclă închisă este un sistem de control în buclă deschisă. O buclă de control deschisă (fără feedback) nu este satisfăcătoare în multe cazuri, iar aplicarea ei este adesea imposibilă din cauza proprietăților sistemului.

Figura 2-1. Sistem de control PID în buclă închisă


Spre deosebire de algoritmii simpli de control, un controler PID este capabil să controleze un proces pe baza istoricului său și a ratei de schimbare. Acest lucru oferă o metodă de control mai precisă și mai stabilă.

Ideea principală este că controlerul primește informații despre starea sistemului folosind un senzor. Apoi scade valoarea măsurată din valoarea de referință pentru a calcula eroarea. Eroarea va fi tratată în trei moduri: gestionați timpul prezent prin termenul proporțional, reveniți la trecut folosind termenul integral și anticipați viitorul folosind termenul diferențial.

Figura 2-2 prezintă schema de circuit a unui controler PID, unde Tp, Ti și Td sunt constantele de timp proporționale, integrale și, respectiv, derivate.

Figura 2-2. Diagrama controlerului PID


2.1 Proporțional

Termenul proporțional (P) dă un semnal de control proporțional cu eroarea calculată. Utilizarea unui singur control proporțional dă întotdeauna o eroare staționară, cu excepția cazului în care semnalul de control este zero și valoarea procesului de sistem este egală cu valoarea necesară. Pe fig. 2-3, o eroare staționară în valoarea procesului de sistem apare după o modificare a semnalului de referință (ref). Utilizarea unui termen P prea mare va da un sistem instabil.

Figura 2-3. Răspunsul controlerului P la o schimbare de treaptă a semnalului de referință


2.2 Termen integral

Componenta integrală (I) reprezintă erorile anterioare. Însumarea erorii va continua până când valoarea procesului de sistem devine egală cu valoarea dorită. De obicei, componenta integrală este utilizată împreună cu componenta proporțională, în așa-numitele controlere PI. Utilizarea numai a componentei integrale dă un răspuns lent și adesea un sistem oscilant. Figura 2-4 arată răspunsul în trepte al controlerelor I și PI. După cum puteți vedea, răspunsul controlerului PI nu are nicio eroare staționară, iar răspunsul controlerului I este foarte lent.

Figura 2-4. Răspunsul controlerului I- și PI la o schimbare de treaptă a valorii controlate


2.3 Termen derivat

Termenul diferenţial (D) este rata de modificare a erorii. Adăugarea acestei componente îmbunătățește răspunsul sistemului la o schimbare bruscă a stării sale. Termenul diferențial D este folosit de obicei cu algoritmii P sau PI, cum ar fi controlerele PD sau PID. O componentă diferențială mare D dă de obicei un sistem instabil. Figura 2-5 arată răspunsurile controlerului D și PD. Răspunsul controlerului PD oferă o creștere mai rapidă a valorii procesului decât controlerul P. Rețineți că termenul diferențial D se comportă în esență ca un filtru trece-înalt pentru semnalul de eroare și, astfel, face sistemul instabil și mai susceptibil la zgomot.

Figura 2-5. Răspunsul controlerului D și PD la o schimbare de treaptă a semnalului de referință


Controlerul PID oferă cea mai bună performanță deoarece folosește toate componentele împreună. Figura 2-6 compară regulatoarele P, PI și PID. PI îmbunătățește P prin eliminarea erorii staționare, iar PID îmbunătățește PI cu un răspuns mai rapid.

Figura 2-6. Răspunsul controlerului P-, PI- și PID la o schimbare de treaptă a semnalului de referință


2.4. Setări

Cea mai bună modalitate de a găsi parametrii necesari ai algoritmului PID este utilizarea unui model matematic al sistemului. Cu toate acestea, adesea nu există o descriere matematică detaliată a sistemului, iar setările parametrilor controlerului PID pot fi făcute doar experimental. Găsirea parametrilor pentru un controler PID poate fi o sarcină descurajantă. Aici mare importanță au date despre proprietăţile sistemului şi diverse conditii munca ei. Unele procese nu ar trebui să permită variabilei de proces să depășească de la valoarea de referință. Alte procese ar trebui să reducă la minimum consumul de energie. De asemenea, cea mai importantă cerință este stabilitatea. Procesul nu ar trebui să fluctueze în nicio circumstanță. În plus, stabilizarea trebuie să aibă loc într-un anumit timp.

Există câteva metode pentru reglarea controlerului PID. Alegerea metodei va depinde în mare măsură de dacă procesul poate fi offline pentru reglare sau nu. Metoda Ziegler-Nichols este o metodă de reglare non-offline bine-cunoscută. Primul pas în această metodă este să setați câștigurile I și D la zero, crescând câștigul P la o oscilație constantă și stabilă (cât mai aproape posibil). Apoi se înregistrează câștigul critic Kc și perioada de oscilație Pc și se corectează valorile P, I și D folosind Tabelul 2-1.

Tabelul 2-1. Calculul parametrilor după metoda Ziegler-Nichols


O reglare suplimentară a parametrilor este adesea necesară pentru a optimiza performanța unui controler PID. Cititorul ar trebui să rețină că există sisteme în care un controler PID nu va funcționa. Acestea pot fi sisteme neliniare, dar, în general, apar adesea probleme cu controlul PID atunci când sistemele sunt instabile și efectul semnalului de intrare depinde de starea sistemului.

2.5. Controler PID discret

Controlerul PID discret va citi eroarea, va calcula și va scoate semnalul de control pentru timpul de eșantionare T. Timpul de eșantionare trebuie să fie mai mic decât cea mai mică constantă de timp din sistem.

2.5.1. Descrierea algoritmului

Spre deosebire de algoritmii simpli de control, controlerul PID este capabil să manipuleze semnalul de control pe baza istoricului și ratei de modificare a semnalului măsurat. Acest lucru oferă o metodă de control mai precisă și mai stabilă.

Figura 2-2 arată proiectarea circuitului controlerului PID, unde Tp, Ti și Td sunt constantele de timp proporționale, integrale și, respectiv, derivate.

Funcția de transfer a sistemului prezentată în Figura 2-2 este:

Aproximăm componentele integrale și diferențiale pentru a obține o formă discretă

Pentru a evita ca această modificare a valorii de referință a procesului să facă orice modificare rapidă nedorită a intrării de control, controlerul se îmbunătățește pe baza termenului derivat numai asupra valorilor procesului:


3. Implementarea unui controler PID în C

La acest document este atașată o aplicație C funcțională. O descriere completă a codului sursă și informații despre compilare pot fi găsite în fișierul „readme.html”.

Figura 3-1. Diagrama de flux a aplicației demo


Figura 3-1 prezintă o diagramă simplificată a aplicației demo.

Controlerul PID folosește o structură pentru a-și stoca starea și parametrii. Această structură este inițializată de funcția principală și doar un pointer către aceasta este transmis funcțiilor Init_PID() și PID().

Funcția PID() trebuie apelată pentru fiecare interval de timp T, acesta este setat de un temporizator care setează indicatorul PID_timer când timpul de eșantionare a trecut. Când indicatorul PID_timer este setat, programul principal citește valoarea de referință a procesului și valoarea sistemului de proces, apelează funcția PID() și trimite rezultatul la intrarea de control.

Pentru a crește acuratețea, p_factor, i_factor și d_factor sunt mărite de 128 de ori. Rezultatul algoritmului PID este mai târziu redus prin împărțirea la 128. Valoarea 128 este folosită pentru a oferi o optimizare a compilației.

În plus, influența Ifactor și Dfactor va depinde de timpul T.

3.1. Închidere integrală

Când procesul de intrare, U, atinge o valoare suficient de mare, acesta devine mărginit. Fie prin intervalul numeric intern al controlerului PID, fie prin domeniul de ieșire al controlerului, fie suprimat în amplificatoare. Acest lucru se va întâmpla dacă există o diferență suficient de mare între valoarea măsurată și valoarea de referință, de obicei deoarece procesul are mai multe perturbări decât este capabil să suporte sistemul.

Dacă controlerul folosește un termen integral, această situație poate fi problematică. Într-o astfel de situație, termenul integral se va aduna în mod constant, dar în absența unor încălcări mari, controlerul PID va începe să compenseze procesul până când suma integrală revine la normal.

Această problemă poate fi rezolvată în mai multe moduri. În acest exemplu, suma integrală maximă este limitată și nu poate fi mai mare de MAX_I_TERM. Marimea corecta MAX_I_TERM va depinde de sistem.

4. Dezvoltare ulterioară

Controlerul PID prezentat aici este un exemplu simplificat. Controlerul ar trebui să funcționeze bine, dar unele aplicații pot necesita ca controlerul să fie și mai fiabil. Poate fi necesar să se adauge o corecție de saturație în termenul integral, pe baza termenului proporțional numai pe valoarea procesului.

În calculul Ifactor și Dfactor, timpul de eșantionare T este parte a ecuației. Dacă timpul de eșantionare T utilizat este mult mai mic sau mai mare de 1 secundă, precizia Ifactor sau Dfactor va fi insuficientă. Este posibil să se rescrie PID-ul și algoritmul de scalare, astfel încât precizia termenilor integrali și diferențiali să fie păstrată.

5. Literatură de referință

K. J. Astrom & T. Hagglund, 1995: Controlere PID: Teorie, proiectare și reglare.
Societatea Internațională de Măsurare și Con.

6. Dosare

AVR221.rar

Tradus de Kirill Vladimirov la cerere

Cursul 30Implementarea controlerului PID și filtrare digitală în controlere

Controlerele cu microprocesor fac posibilă implementarea atât a controlerelor discrete, cât și analogice, precum și a controlerelor neliniare și cu auto-ajustare. Principala problemă a controlului digital este găsirea structurii adecvate a controlerului și a parametrilor acestuia. Implementarea software a algoritmilor de control pentru acești parametri este de obicei o sarcină relativ simplă.

Fiecare regulator trebuie să includă și mijloace de protecție care să prevină desfășurarea periculoasă a procesului sub acțiunea regulatorului în situații de urgență.

Multe TP-uri sunt caracterizate de mai mulți parametri de intrare și de ieșire. Adesea conexiunile interne și interacțiunea semnalelor respective nu sunt critice și procesul poate fi controlat cu un set de controlere simple, fiecare buclă fiind utilizată în sistemele de control digital direct.

Regulatoarele liniare cu o singură intrare/ieșire pot fi reprezentate într-o formă generalizată

Unde u este ieșirea controlerului (variabila de control), u Cu este valoarea setată și la– semnal de ieşire de proces (variabilă controlată). Parametru P reprezintă ordinul regulatorului.

Un regulator PID obișnuit poate fi considerat ca un caz special al unui controler discret generalizat cu P= 2.

Luați în considerare un regulator format din două părți: o buclă de feedback (feedback) G Facebook (s) care se ocupă de eroare E , și buclă de feedforward G FF (s), care controlează modificările în acțiunea de setare și adaugă un termen de corecție la semnalul de control, astfel încât sistemul să răspundă mai rapid la modificările în setare. Pentru acest controler, acțiunea de control U (s ) este suma a două semnale

Această expresie poate fi rescrisă ca

Unde U F 1 (s) este un semnal preventiv bazat pe valoarea de referință (acțiune de setare), a U F 2 (s) este un semnal de feedback.


Fig.30.1.Un controler care conține o buclă de control anticipat bazată pe o valoare de referință (punct de referință) și o buclă de feedback bazată pe ieșirea procesului A

Controlerul are două semnale de intrare U c (s) și Y(s) și, prin urmare, poate fi descris prin două funcții de transfer G F 1 (s) și G R (s).


Deoarece controlerul cu PF (30.3) are din cauza G F 1 (s) coeficienți mai reglabili decât un regulator convențional, atunci sistemul de control închis are caracteristici mai bune.

Poziția polilor sistemului de feedback poate fi schimbată cu ajutorul regulatorului G R (s), și controlerul feedforward G F 1 (s) adaugă noi zerouri în sistem. Prin urmare, sistemul de control poate răspunde rapid la modificările semnalului sarcinii dacă G F 1 (s) este ales corect.


Fig.30.2. Structura unui regulator liniar cu control anticipat și feedback

Datorită utilizării unui astfel de controler, este posibil să se creeze sisteme de control (servo) de înaltă precizie prin acționări electrice, roboți sau mașini-unelte. Pentru ei, este important ca răspunsul la rezultatul procesului să fie rapid și precis pentru orice modificare a referinței.

Dacă numărătorul și numitorul PF G R (s), și G F 1 (s) în (23.3) să fie exprimată prin polinoame în s , atunci descrierea controlerului după transformări poate fi reprezentată în forma următoare

G



de

r i ,s i ,t i parametrii polinoamelor PF, s operator Laplace.

Controlerul corespunzător ecuației (30.4) poate fi reprezentat ca un controler generalizat (generalcontroller)

PF-ul procesului poate fi exprimat ca


Fig.30.3. Structura unui controler liniar cu control feedforward și feedback sub forma unui PF

În cazul în care un R(s),S(s) și T(s) au un ordin suficient de mare, adică un număr suficient de „butoane de reglare”, PF-ul unui sistem închis poate fi variat într-o gamă largă. Ordinul regulatorului P trebuie să fie același cu procesul inițial. Da, culegerea R(s) și S(s), se poate schimba în mod arbitrar numitorul PF al unui sistem închis. Teoretic, aceasta înseamnă că polii unui sistem închis pot fi mutați în orice loc din planul complex. (În practică, amplitudinea și viteza maximă de schimbare a semnalului de control limitează libertatea de mișcare a polilor.)

Ca urmare, un sistem instabil având un stâlp cu o parte reală pozitivă poate fi stabilizat cu ajutorul SU.

30.1. Implementarea controlerului PID

În primul rând, ar trebui dezvoltat un model de controler discret și determinată o rată de eșantionare adecvată. Amplitudinea valorii de ieșire a regulatorului trebuie să fie între valorile minime și maxime admise. Adesea este necesar să se limiteze nu numai semnalul de ieșire, ci și rata de schimbare datorită capacităților fizice ale MI-urilor și să se prevină uzura excesivă a acestora.

Modificarea setărilor parametrilor și trecerea de la funcționarea automată la cea manuală sau alte modificări ale condițiilor de funcționare nu trebuie să conducă la perturbări în procesul controlat.

Regulatoarele pot fi create în tehnologie analogică bazată pe amplificatoare operaționale sau ca dispozitive digitale bazate pe microprocesoare. Cu toate acestea, au aproape același aspect - o carcasă mică și robustă care permite instalarea într-un mediu industrial.

În timp ce tehnologia digitală are multe avantaje, abordarea analogică stă la baza soluțiilor digitale. Avantajele controlerelor digitale includ posibilitatea de a le conecta între ele folosind canale de comunicare, ceea ce permite schimbul de date și controlul de la distanță. Suntem interesați de programe pentru un controler PID digital

Model de controler PID discret . Este necesar pentru implementarea software-ului controlerului analogic. Dacă controlerul este proiectat pe baza unei descrieri analogice și apoi se construiește modelul său discret, la intervale de eșantionare suficient de mici, derivatele de timp sunt înlocuite cu diferențe finite, iar integrarea este înlocuită cu sumare. Eroarea de ieșire a procesului este calculată pentru fiecare probă

e(k)=u c (k) y(k) .

În acest caz, intervalul de eșantionare t s este considerat constant și orice modificări ale semnalului care ar fi putut apărea în timpul intervalului de eșantionare nu sunt luate în considerare.

Există două tipuri de algoritm de control PID - pozițional și incremental

Algoritmul controlerului PID pozițional. În algoritmul pozițional ( poziţie formă) semnalul de ieșire este valoarea absolută a variabilei de control IM. Controlerul PID discret are forma

u(k)=u 0 +u P (k)+u eu (k)+u D (k).

În acest caz, intervalul de eșantionare ts este considerat constant și orice modificări ale semnalului care ar putea apărea în timpul intervalului de eșantionare nu sunt luate în considerare.

Chiar și cu o eroare de control zero, semnalul de ieșire este diferit de zero și este determinat de offset u 0 .

Partea proporțională a controlorului are forma

u P (k)= K e(k).

Partea integrală este aproximată prin diferențe finite

u eu (k) = u eu (k 1) + K (t s / T i) ∙ e(k)= u eu (k 1) + K A e(k).

Valoarea celui de-al doilea termen la mic t s si mare T i poate deveni foarte mic, așa că trebuie să asigurați precizia necesară a reprezentării mașinii sale.

Partea diferențială a controlerului PID este aproximată prin diferența înapoi

u D (k) =b u D (k 1)K (T d / t s) ∙ (1b)∙ [y(k)y(k 1)],


Valoare T d / N = T f este normalizat N ori) constanta de timp a filtrului în aproximarea componentei diferenţiale a legii de control printr-o legătură aperiodică de ordinul întâi. Număr N luate în intervalul de la 5 la 10. Valoarea b este în intervalul de la 0 la 1.

algoritm de creștere. Acesta calculează doar modificarea semnalului său de ieșire. Algoritm de creștere ( incrementale formă) Controlerul PID este convenabil de utilizat dacă IM este un fel de integrator, cum ar fi un motor pas cu pas. Un alt exemplu de astfel de MI este o supapă a cărei deschidere și închidere este controlată prin impulsuri și care își menține poziția în absența semnalelor de intrare.

În algoritmul de creștere, doar modificări ale semnalului de ieșire de control din momentul de timp ( k 1) pana in momentul de fata k. Algoritmul controlerului este scris ca

Δ u eu (k) = u (k)u (k 1) =Δ u P (k) + Δ u eu (k) + Δ u D (k).

Partea proporțională a algoritmului de creștere este calculată din ecuație

Δ u P (k) = u P (k)u P (k 1) =K [e(k)e(k 1)] = K Δ e(k).

Parte integrală - din ecuație

Δ u eu (k) = u eu (k)u eu (k 1) =K A e(k).

Partea diferențială este din ecuație

Δ u D (k) =b Δ u D (k 1)K (T d / t s)∙(1b)∙ y(k)Δ y(k 1),

Δ y(k) =y(k)y(k 1).

Algoritmul este foarte simplu. Pentru aplicarea sa, de regulă, sunt suficiente operațiuni cu virgulă flotantă de precizie obișnuită. Nu are probleme din cauza saturației. Când treceți de la modul manual la un regulator automat care calculează incremente, nu necesită alocarea unei valori inițiale semnalului de control ( u 0 în algoritmul pozițional).

IM poate fi adus în poziția dorită în timpul pornirii atât cu control manual, cât și automat. Un mic dezavantaj al algoritmului de creștere este necesitatea de a lua în considerare componenta integrală.

Valoarea de referință este redusă atât în ​​partea proporțională, cât și în partea diferențială începând de la a doua probă după ce a fost schimbată. Prin urmare, dacă se folosește un controler bazat pe un algoritm incremental fără o componentă integrală, procesul controlat se poate îndepărta de valoarea de referință.

Determinarea ratei de eșantionare în SN . Este mai mult o artă decât o știință. O rată de eșantionare prea mică reduce eficiența controlului, în special capacitatea sistemului de control de a compensa perturbațiile. Dar dacă intervalul de eșantionare depășește timpul de răspuns al procesului, perturbarea poate afecta procesul și poate dispărea înainte ca controlerul să ia măsuri corective. Prin urmare, atunci când se determină rata de eșantionare, este important să se țină cont atât de dinamica procesului, cât și de caracteristicile perturbației.

Pe de altă parte, o rată de eșantionare prea mare duce la o încărcare crescută a computerului și la uzura IM.

Astfel, determinarea frecvenței de eșantionare este un compromis între cerințele dinamicii procesului și performanțele disponibile ale calculatoarelor și mecanismelor tehnologice. Controlerele digitale standard care operează cu un număr mic de bucle de control (8 până la 16) utilizează o rată de eșantionare fixă ​​de ordinul fracțiilor de secundă.

Raportul semnal-zgomot afectează și rata de eșantionare. La valori scăzute ale acestui raport, adică la zgomot ridicat, o rată mare de eșantionare ar trebui evitată, deoarece abaterile semnalului de măsurare sunt mai probabil asociate cu zgomotul de înaltă frecvență și nu cu schimbări reale în procesul fizic.

Se consideră că o rată de eșantionare adecvată este legată de lățimea de bandă sau timpul de stabilire a sistemului de control în buclă închisă. Regulile generale recomandă ca rata de eșantionare să fie de 6-10 ori mai mare decât lățimea de bandă sau ca timpul de stabilire să fie de cel puțin cinci intervale de eșantionare.

În cazul în care este acceptabilă un decalaj suplimentar de fază de 5-15°, următoarea regulă este valabilă

t s · ω Cu = 0,15 – 0,5 ,

unde ω Cu – lățimea de bandă a sistemului (la nivel de 3 dB), t s – perioada de cuantificare sau intervalul de eșantionare. (Această abordare este utilizată în multe controlere PID digitale industriale cu o singură buclă și cu mai multe bucle.)

Limitarea semnalului de control . Există două premise pentru limitarea semnalului de control:

1) amplitudinea semnalului de ieșire nu poate depăși intervalul DAC-ului la ieșirea computerului;

2) raza de operare a IM este întotdeauna limitată. Supapa nu se deschide mai mult de 100%; motorul nu poate fi alimentat cu curent și tensiune nelimitate.

Prin urmare, algoritmul de control trebuie să includă o funcție care limitează semnalul de ieșire. În unele cazuri, trebuie definită o bandă moartă sau o bandă moartă.

Dacă se utilizează un controler cu un algoritm incremental, atunci modificările semnalului de control pot fi atât de mici încât MI să nu le poată procesa. Dacă semnalul de control este suficient pentru a afecta MI, este indicat să se evite operațiunile mici, dar frecvente, care pot accelera uzura acestuia.

O soluție simplă este să însumăm mici modificări ale variabilei de control și să emiti un semnal de control MI numai după ce a fost depășită o anumită valoare de prag. Introducerea unei zone moarte are sens numai dacă depășește rezoluția DAC-ului la ieșirea computerului

Prevenirea saturației integrale. Închiderea integrală are loc atunci când un controler PI sau PID trebuie să compenseze o eroare care se află în afara intervalului variabilei controlate pentru o perioadă lungă de timp. Deoarece ieșirea regulatorului este limitată, eroarea este dificil de anulat.

Dacă eroarea de control rămâne semnă pentru o perioadă lungă de timp, valoarea componentei integrale a controlerului PID devine foarte mare. Acest lucru se întâmplă dacă semnalul de control este limitat atât de mult încât ieșirea calculată a regulatorului diferă de ieșirea reală a MI.

Deoarece partea integrală devine zero doar la ceva timp după ce valoarea erorii și-a schimbat semnul, saturația integrală poate duce la depășiri mari. Saturația integrală este rezultatul neliniarităților din sistem asociate cu tăierea semnalului de control de ieșire și nu poate fi observată niciodată într-un sistem liniar.

Influența părții integrale poate fi limitată de integrarea condiționată. Atâta timp cât eroarea este suficient de mare, partea sa integrală nu este necesară pentru a forma semnalul de control, dar partea proporțională este suficientă pentru control.

Partea integrală utilizată pentru eliminarea erorilor staționare este necesară numai în cazurile în care eroarea este relativ mică. La integrarea condiționată, această componentă este luată în considerare în semnalul final numai dacă eroarea nu depășește o anumită valoare de prag. Pentru erori mari, controlerul PI funcționează ca un controler P. Alegerea unei valori de prag pentru activarea termenului integral nu este o sarcină ușoară. În controlerele analogice, integrarea condiționată se realizează folosind o diodă Zener (limitator), care este conectată în paralel cu un condensator în circuitul de feedback al amplificatorului operațional din blocul de integrare al controlerului. O astfel de schemă limitează contribuția semnalului integrat.

În controlerele digitale PID, saturația integrală este mai ușor de evitat. Partea integrală este ajustată la fiecare interval de eșantionare, astfel încât ieșirea controlerului să nu depășească o anumită limită.

Semnalul de control este mai întâi calculat folosind un algoritm de controler PI și apoi verificat pentru a vedea dacă depășește limitele setate:

u = u min , dacă u d < u min ;

u = u d , dacă u min u d < u max ;

u = u max , dacă u d u max ;

După limitarea semnalului de ieșire, partea integrală a regulatorului este resetată. Mai jos este un exemplu de program pentru un controler PI cu protecție la saturație.

Atâta timp cât semnalul de control rămâne în limitele stabilite, ultima afirmație din textul programului nu afectează partea integrală a controlerului.

(*inițializare*) c1:=K*taus/Ti;

(*regulator*)

Ipart:= Ipart + c1*e;

ud:=K*e+Ipart; (*calcul semnalului de control*)

dacă (ud

altfel dacă (ud< umax) then u:= ud

Ipart:=u-K*e; (* corecție parte integrală „anti-saturare” *)

O ilustrare a problemei saturației integrale pentru o unitate de poziționare cu un controler PI este mai departe în fig. 30.4.

Comutare lină a modurilor de operare. Când treceți de la modul manual la modul automat, ieșirea controlerului poate sări chiar dacă eroarea de control este zero. Motivul este că termenul integral din algoritmul controlerului nu este întotdeauna egal cu zero. Controlerul este un sistem dinamic, iar partea integrală este unul dintre elementele stării interne, care trebuie cunoscut la schimbarea modului de control.

Saltul în valoarea de ieșire a controlerului poate fi împiedicat, iar schimbarea modului în acest caz se numește tranziție fără denivelări (transfer fără denivelări).

Sunt posibile două situaţii: a) trecerea de la modul manual la modul automat sau invers; b) modificarea parametrilor controlerului.

O tranziție lină în cazul a) pentru un controler analogic se realizează prin aducerea manuală a procesului într-o stare în care valoarea de ieșire măsurată este egală cu valoarea de referință.

Procesul este menținut în această stare atâta timp cât ieșirea controlerului este zero. În acest caz, partea integrală este, de asemenea, zero și, deoarece eroarea este zero, se realizează o tranziție lină. Această procedură este valabilă și pentru controlerele digitale.

O altă metodă este să aduceți încet valoarea de referință la valoarea finală necesară.

Mai întâi, valoarea de referință este setată egală cu măsurarea curentă și apoi ajustată treptat manual la valoarea dorită.

Dacă această procedură este efectuată suficient de lent, partea integrală a semnalului controlerului rămâne atât de mică încât este asigurată o tranziție lină. Dezavantajul acestei metode este că necesită un timp destul de lung, care depinde de natura procesului.

Limitarea vitezei de modificare a semnalului de control . În multe sisteme de control, este necesar să se limiteze atât amplitudinea, cât și viteza de modificare a semnalului de control. Pentru aceasta se folosesc circuite speciale de protectie, conectate dupa canal pentru introducerea manuala a valorii de referinta. u c (t) și transmiterea semnalului filtrat către controler u L (t), așa cum se arată în fig. 30.5.

Ca urmare, procesul „vede” acest semnal de control în loc de cel introdus manual. Această metodă este de obicei utilizată în reglarea acționărilor electrice. Limitarea ratei de schimbare a semnalului poate fi realizată cu o buclă de feedback simplă.

Semnal de control manual u c (t), acționând ca referință, este comparat cu un semnal de control valid u L (t). În primul rând, diferența lor este limitată de limite ueminși uemOh.

Valoarea rezultată este apoi integrată, integrala fiind aproximată printr-o sumă finită.

Algoritmul pentru limitarea ratei de schimbare este următorul:

dacă (ue< uemin) then uelim:= uemin (*функция ограничения*) else if (ue < uemax) then uelim:= ue

else uelim:= uemax;

uL = uL_old + taus*uelim;

Caracteristicile de calcul ale algoritmului controlerului PID. Implementarea digitală a controlerului PID, datorită naturii secvențiale a calculelor, duce la întârzieri care nu se regăsesc în tehnologia analogică. În plus, unele limitări (protecția la saturație și algoritmii de tranziție soft) necesită ca ieșirea regulatorului și preluarea MI să apară în același timp. Prin urmare, întârzierile de calcul trebuie reduse la minimum. Pentru a face acest lucru, unele elemente ale regulatorului digital sunt calculate înainte de timpul de eșantionare.

Pentru un regulator cu protecție la saturație, partea integrală poate fi calculată în avans folosind diferențele directe

u eu (k + 1) =u eu (k)+c unu · e (k) + c 2 · [u (k) – u d (k) ] ,

Unde u – valoare limitată u d ;

T t este un coeficient numit constanta de timp de urmărire.

Partea diferenţială arată ca

c 3 = (1 b) · K· T d /t s ;

X (k- 1) = b· u D (k- 1)+c 3 · y (k- 1).

variabil X poate fi actualizat imediat după momentul respectiv k

X (k) = b· X(k- 1)+c 3 (1 b) · y (k).

În acest fel, u D (k + 1) poate fi calculat din (24.2) de îndată ce rezultatul măsurării este obținut y(k + 1).

Optimizarea calculelor este necesară, deoarece regulatorul digital trebuie uneori să efectueze câteva mii de operații de control pe secundă. În aceste condiții, este important ca unii coeficienți să fie disponibili imediat, în loc să fie recalculați de fiecare dată. În plus, autoritățile de reglementare industriale nu au cele mai rapide procesoare ( i 386, 486). Prin urmare, ordinea și tipul calculelor afectează foarte mult viteza operațiunilor de control.

Algoritmul PID . Un exemplu de program de control PID în Pascal. Calculul coeficienților c 1 ,c 2 și c 3 trebuie făcută numai dacă sunt modificați parametrii controlerului K, T i , T dși T f. Algoritmul controlerului este executat la momentul fiecărei probe. Programul are protecție împotriva saturației componentei integrale.

(*Precalcul coeficienților*)

c1:=K*taus / Ti; (* Ecuația 23.7 *)

с2:= taus / Tt; (* Ecuația 24.1 *)

beta:=Td / (Td+taus*N); (* Ecuația 24.1 *)

c3:= K*Td*(l-beta) / taus; (* Ecuația 24.2 *)

c4:= c3*(1 - beta); (* constantă locală*)

(* Algoritm de control *)

uc:=ADinput(ch1); (* intrare valoare de referință, intrare analogică *)

y:= AD_input(ch2); (* intrare de măsurare, intrare analogică *)

e:= uc-y; (* calculul erorii de control *)

ppart:= K*e; (*parte proporțională*)

dpart:= x - (c3*y); (* piesa diferentiala, *)

ud:=uO+ppart+ipart+dpart; (* ieșire regulator înainte de tăiere*)if(ud

Trimiteți-vă munca bună în baza de cunoștințe este simplu. Utilizați formularul de mai jos

Studenții, studenții absolvenți, tinerii oameni de știință care folosesc baza de cunoștințe în studiile și munca lor vă vor fi foarte recunoscători.

Găzduit la http://www.allbest.ru

Ministerul Educației și Științei al Federației Ruse

Instituția de învățământ bugetară de stat federală

studii profesionale superioare

„UNIVERSITATEA DE STAT KUBAN”

(FGBOU VPO "KubGU")

LUCRARE DE CALIFICARE FINALA DE BACALAUREAT

Dezvoltarea si proiectarea regulatoarelor PID

Lucrarea a fost realizată de Roman Valerievich Presnyakov

consilier științific

dr. Fiz.-Matematică. stiinte, profesore

E.N. Tumaev

Controlor

cand. Fiz.-Matematică. Științe, profesor asociat A. A. Martynov

Krasnodar 2015

Lucrare de calificare finală 83 pagini, 29 imagini, 42 surse.

CONTROL PID, SISTEME INCORPATE, MICROCONTROLLERE, MODULE SOFTWARE, MSP430, INTERRUPT

Obiectul de studiu al lucrării de calificare finală este studiul principiilor generale de construire a controlerelor tehnologice proporțional-integral-diferențial și proiectarea unui algoritm pentru controlere de temperatură bazate pe microcontrolere ieftine MSP430 (Texas Instruments). Lucrarea oferă o privire de ansamblu asupra mijloacelor microcontrolerelor moderne și a principiilor de funcționare a acestora.

Se efectuează analiza problemelor de implementare hardware și software a controlerelor tehnologice cu microprocesor. Sunt oferite recomandări pentru proiectarea instrumentelor de măsurare și control bazate pe microprocesoare și crearea de software pentru sisteme încorporate. Este propusă o variantă de implementare a algoritmului controlerului PID. O caracteristică distinctivă este utilizarea algoritmilor care exclud utilizarea numerelor în virgulă mobilă.

Denumiri și abrevieri

Introducere

2. Funcții de sensibilitate. Ecuația Pid digitală

2.2 Forma discretă a controlerului. Ecuația PID digitală

3. Calitatea reglementării

3.1 Slăbirea influenței perturbațiilor externe. Criterii de calitate

4. Setarea parametrilor controlerului. principii de baza

4.1 Selectarea parametrilor controlerului. Setări manuale și automate

5. Programarea sistemelor încorporate

5.1 Principii generale pentru dezvoltarea sistemelor embedded

5.2 Etapele creării software-ului pentru sisteme embedded

5.3 Ierarhia codului executabil în sistemele încorporate

6. Algoritmul software-ului creat

6.1 Descrierea algoritmului de funcționare al regulatorului de temperatură PID bazat pe microcontrolerul MSP430F149

Concluzie

Lista surselor utilizate

Denumiri și abrevieri

microcontroler regulator de temperatura

microcontroler

Algoritmul PID

Algoritm proporțional-integral-diferențial

strat de abstractizare hardware (strat de abstractizare hardware)

Mediu de dezvoltare integrat (mediu de dezvoltare integrat)

modularea lățimii impulsului

controler logic programabil

control de supraveghere și achiziție de date (control de supraveghere și achiziție de date)

interfață periferică serială (interfață periferică serială)

interfata de programare a aplicatiei (interfata de programare a aplicatiei)

loc de muncă automatizat

software

INTRODUCERE

Controlul proceselor tehnologice cu ajutorul controlerelor care funcționează conform legii proporțional-integral-diferențial (controlere PID) permite menținerea valorii tehnologice cerute cu o precizie suficient de mare și imunitate la zgomot acceptabilă la influențele externe perturbatoare. Controlerele PID moderne sunt implementate atât ca modul software al unui sistem SCADA executat la o stație de lucru automatizată (AWS) sau un controler logic programabil (PLC), cât și ca controlere de proces separate situate pe dulapuri de control locale și centrale. Ca elemente de bază ale procesării și controlului informațiilor, se folosesc adesea microprocesoare cu funcționalitate limitată, ceea ce ridică problema lipsei resurselor hardware și a creșterii costului sistemului.

Scopul acestei lucrări este de a revizui principiile construirii regulatoarelor proporțional-integral-derivate și de a dezvolta, pe baza revizuirii, principiile pentru crearea unui regulator PID de temperatură.

La crearea unui controler PID de temperatură, s-a folosit un regulator tehnologic de contor cu microprocesor programabil F0303.2 bazat pe microcontrolerul MSP430F149, programatorul MSP-FET430UIF, comparatorul de tensiune P3003 cu un interval de ieșire de la 10 nV la 11.111110 V și o clasă de precizie 5000. . Programul de microcontroler a fost creat în mediul de dezvoltare integrat IAR Embedded Workbench pentru MSP430 6. Documentația tehnică a fost obținută de pe site-ul producătorului de microcontroler.

Pentru implementarea completă a controlului PID într-un dispozitiv cu microprocesor, este necesar să se implementeze următoarele subsisteme:

Subsistemul de măsurare

Subsistemul de procesare a algoritmului PID

Subsistem de management al interfeței utilizator

Subsistemul de ieșire cu impact de reglementare

1. Principii de creare a controlerelor PID

1.1 Probleme generale de implementare a regulatoarelor PID

Pentru implementarea practică este necesar să se țină cont de caracteristicile generate de condițiile reale de aplicare și implementare tehnică. Aceste caracteristici includ:

Gamă dinamică finită de modificări ale variabilelor fizice din sistem (de exemplu putere limitată a încălzitorului, capacitate limitată a supapei);

Nu este întotdeauna posibilă schimbarea semnului acțiunii de control (de exemplu, adesea nu există frigider în sistemul de menținere a temperaturii, motorul poate să nu aibă o cursă inversă, nu toate aeronavele au un sistem de tracțiune negativă);

Precizie limitată de măsurare, care necesită măsuri speciale pentru a efectua operația de diferențiere cu o eroare acceptabilă;

Prezența neliniarităților tipice în aproape toate sistemele: saturație (limitarea intervalului dinamic al modificărilor variabilelor), limitarea ratei de mișcare, histerezis și backlash;

Dispersia tehnologică și variațiile aleatorii ale parametrilor controlerului și obiectului;

Implementarea discretă a controlerului;

Nevoia de comutare lină (fără șocuri) a modurilor de control;

1.2 Ansamblu derivat PID

Problema diferențierii numerice este destul de veche și comună atât la controlerele digitale, cât și la cele analogice. Esența sa constă în faptul că derivata este de obicei calculată ca diferență între două variabile de mărime apropiată, astfel încât eroarea relativă a derivatei se dovedește întotdeauna a fi mai mare decât eroarea relativă a reprezentării numerice a variabilei diferențiabile.

În special, dacă intrarea diferențiatorului primește un semnal sinusoidal A * sin (sht), atunci la ieșire obținem A * w * cos (sht), adică cu creșterea frecvenței w, amplitudinea semnalului la puterea diferențiatorului crește. Cu alte cuvinte, diferențiatorul amplifică interferența de înaltă frecvență, exploziile scurte și zgomotul.

Dacă interferența amplificată de diferențiator se află în afara intervalului de frecvență de funcționare a controlerului PID, atunci acestea pot fi atenuate folosind un filtru trece-înalt. Implementarea structurală a unui diferențiator cu filtru este prezentată în Figura 1. Aici

adică, funcția de transfer a diferențiatorului rezultat D(s) poate fi reprezentată ca produsul dintre funcția de transfer a unui diferențiator ideal și funcția de transfer a unui filtru de ordinul întâi:

unde coeficientul N stabilește frecvența de tăiere a filtrului și este de obicei ales egal cu 2...20;

T/N -- constanta de timp a filtrului;

s este frecvența complexă.

O mai mare atenuare a zgomotului de înaltă frecvență poate fi obținută cu un filtru separat care este conectat în serie cu controlerul PID. De obicei, se folosește un filtru de ordinul doi cu funcție de transfer

Constanta de timp a filtrului este aleasă egală cu TF = Ti/N, unde N = 2…20, Ti este constanta de integrare a regulatorului PID. Este recomandabil să nu alegeți frecvența de tăiere a filtrului sub frecvența 1/Ti, deoarece acest lucru complică calcularea parametrilor controlerului și a marjei de stabilitate.

Figura 1 - Implementarea structurala a termenului diferential al regulatorului PID

Pe lângă zgomotul de diferențiere, performanța controlerului PID este afectată de zgomotul de măsurare. Prin bucla de feedback, aceste zgomote intră în intrarea sistemului și apoi apar ca dispersie a variabilei de control u. Zgomotul de înaltă frecvență este dăunător deoarece provoacă uzura accelerată a fitingurilor de conducte și a motoarelor electrice.

Deoarece obiectul de control este de obicei un filtru trece-jos, zgomotul de măsurare se deplasează rar prin bucla de control către ieșirea sistemului. Cu toate acestea, ele măresc eroarea de măsurare y(t) și reduc precizia de reglare.

În controlerele PID, zgomot cu un spectru în regiunea de joasă frecvență, cauzat de influențe externe asupra obiectului de control și zgomot de înaltă frecvență asociat cu interferențe electromagnetice, zgomot pe magistralele de alimentare și de masă, cu eșantionarea semnalului măsurat și se disting alte motive. Zgomotul de joasă frecvență este modelat ca o perturbare externă d(s), zgomotul de înaltă frecvență este modelat ca zgomot de măsurare n(s).

1.3 Nodul integral al regulatorului PID. saturație integrală

În funcționare în regim constant și cu mici perturbații, majoritatea sistemelor cu controlere PID sunt liniare. Cu toate acestea, procesul de intrare în regim necesită aproape întotdeauna luarea în considerare a neliniarității de tip „limitare”. Această neliniaritate se datorează limitărilor naturale ale puterii, vitezei, rpm, unghiului de rotație, ariei secțiunii transversale a supapei, intervalului dinamic etc. Bucla de control într-un sistem care este în saturație (când variabila a atins limita) se dovedește a fi deschisă, deoarece atunci când variabila de la intrarea legăturii cu limită se modifică, variabila de ieșire rămâne neschimbată.

Cea mai tipică manifestare a modului de limitare este așa-numita „saturație integrală”, care apare atunci când sistemul ajunge în modul în controlere cu o constantă de integrare diferită de zero Ti? 0. Saturația integrală duce la o întârziere a procesului tranzitoriu (Figurile 2 și 3). Un efect similar apare datorită limitării termenului proporțional și integral al controlerului PID (Figurile 4 și 5). Cu toate acestea, saturația integrală este adesea înțeleasă ca un set de efecte asociate cu o neliniaritate de tip „limitare”.

T1= 0,1 s; T2 = 0,05 s; L = 0,02 s; K = 2; Ti = 0,06 s; Td = 0

Figura 2 - Răspunsul variabilei de ieșire y(t) la saltul în acțiunea de intrare r(t) pentru controlerul PI cu condiția limitării puterii la intrarea obiectului u(t) și fără limitare (a doua obiect de comandă)

T1 = 0,1 s; T2 = 0,05 s; L = 0,02 s; K = 2; Ti = 0,06 s; Td = 0

Figura 3 - Semnal la intrarea obiectului u(t) cu și fără limitare de putere (obiect de ordinul doi)

K = 10; Ti = 0,014 s; Td = 0,3 s; T1 = 0,1 s; T2 = 0,05 s; L = 0,02 s

Figura 4 - Răspunsul variabilei de ieșire y(t) la saltul în acțiunea de intrare r(t) pentru regulatorul PID în condiția limitării puterii la intrarea obiectului u(t) și fără limitare (a doua obiect de comandă)

T1 = 0,1 s; T2 = 0,05 s; L = 0,02 s; K = 10; Ti = 0,014 s; Td = 0,3 s

Figura 5 - Semnalul la intrarea obiectului u(t) în bucla cu controlerul PID în condiția de limitare a puterii și fără (obiect de ordinul doi)

și de ordinul doi

unde Kp este coeficientul de transfer în regim staționar;

T, T1, T2 - constante de timp;

L - întârziere de transport.

Esența problemei saturației integrale este că, dacă semnalul de la intrarea obiectului de control u(t) a intrat în zona de saturație (limitare), iar semnalul de nepotrivire r(t) - y(t) nu este egal cu zero, integratorul continuă să se integreze, adică semnalul crește la ieșire, dar acest semnal nu participă la procesul de reglare și nu afectează obiectul datorită efectului de saturație. Sistemul de control în acest caz devine echivalent cu un sistem deschis, al cărui semnal de intrare este egal cu nivelul de saturație al semnalului de control u(t).

Pentru sistemele termice, limita inferioară este, de obicei, puterea de încălzire zero, în timp ce controlerul PID necesită o „putere de încălzire negativă” care să fie aplicată obiectului, adică răcirea obiectului. Efectul saturației integrale este cunoscut de mult timp. În regulatoarele analogice, eliminarea sa a fost destul de dificilă, deoarece în ele problema nu a putut fi rezolvată algoritmic, ci a fost rezolvată doar prin hardware.

Odată cu apariția microprocesoarelor, problema poate fi rezolvată mult mai eficient. Metodele de eliminare a saturației integrale fac de obicei obiectul unor invenții, aparțin secretului comercial al companiilor producătoare și sunt protejate de brevete.

Limitarea vitezei de rotire a acțiunii de intrare. Deoarece valoarea maximă a acțiunii de intrare asupra obiectului de control u(t) scade cu o scădere a diferenței r(t) - y(t), pentru a elimina efectul de limitare, puteți reduce pur și simplu rata de mișcare a semnalului punctului de referință r(t), de exemplu, folosind un filtru. Dezavantajul acestei metode este scăderea vitezei sistemului, precum și incapacitatea de a elimina saturația integrală cauzată de perturbații externe, și nu de semnalul punctului de referință.

Când acțiunea de control asupra obiectului ajunge la saturație, feedback-ul se întrerupe și componenta integrală continuă să crească, chiar dacă ar fi trebuit să scadă în absența saturației. Prin urmare, una dintre metodele de eliminare a saturației integrale este aceea că controlerul monitorizează amploarea acțiunii de control asupra obiectului și, de îndată ce ajunge la saturație, controlerul introduce o interdicție software de integrare pentru componenta integrală.

Compensarea saturației cu feedback suplimentar. Efectul saturației integrale poate fi slăbit prin monitorizarea stării actuatorului care intră în saturație și compensarea semnalului aplicat la intrarea integratorului. Structura unui sistem cu un astfel de compensator este prezentată în Figura 6.

Figura 6 - Compensarea efectului de saturație integrală cu ajutorul feedback-ului suplimentar pentru transmiterea semnalului de eroare es către intrarea integratorului

Principiul funcționării sale este următorul. Sistemul generează un semnal de nepotrivire între intrarea și ieșirea actuatorului es = u - v. Semnalul de la ieșirea actuatorului este fie măsurat, fie calculat folosind un model matematic (Figura 6). Dacă es = 0, acest lucru este echivalent cu nici un compensator și obținem un regulator PID normal. Dacă dispozitiv executiv saturate, apoi v > u și es< 0. При этом сигнал на входе интегратора уменьшается на величину ошибки es, что приводит к замедлению роста сигнала на выходе интегратора, уменьшению сигнала рассогласования и величины выброса на переходной характеристике системы (рисунки 7 и 8). Постоянная времени Ts определяет степень компенсации сигнала рассогласования.

Figura 7 - Răspunsul sistemului la un singur salt r(t) pentru diferite valori ale constantei de timp Ts

K = 7; Ti = 0,01 s; Td = 0,1 s, T1 = 0,1 s; T2 = 0,05 s; L = 0,01 s

Figura 8 - Răspunsul sistemului la semnalul de eroare es (obiect de ordinul doi, parametri controler:

La unele controlere, intrarea u a dispozitivului de comparație es este evidențiată ca o intrare separată - „intrarea de urmărire”, care este convenabilă la construirea sistemelor de control complexe și la conectarea în cascadă a mai multor controlere.

Integrare condiționată. Această metodă este o generalizare a interzicerii algoritmice a integrării. După declanșarea interdicției, componenta integrală rămâne constantă, la același nivel pe care îl avea la momentul apariției interdicției de integrare. Generalizarea este că interzicerea integrării apare nu numai când se ajunge la saturație, ci și în anumite alte condiții.

O astfel de condiție poate fi, de exemplu, realizarea de către semnalul de eroare e sau variabila de ieșire y a unei anumite valori specificate. La oprirea procesului de integrare, este necesar să se monitorizeze starea integratorului în momentul opririi acestuia. Dacă acumulează o eroare și gradul de saturație crește, atunci integrarea este dezactivată. Dacă, în momentul opririi, gradul de saturație scade, atunci integratorul este lăsat pornit.

Figura 9 prezintă un exemplu de proces tranzitoriu într-un sistem cu integratorul oprit atunci când valoarea de ieșire y(t) atinge o valoare dată (y = 0, y = 0,2, y = 0,8).

Figura 9 - Răspunsul la un singur salt r(t) al unui sistem cu saturație a actuatorului la diferite niveluri de oprire a integratorului y

Integrator constrâns. Într-o variantă a implementării controlerului PI folosind un integrator în bucla de feedback a fost prezentată. Dacă acest circuit este completat cu un limitator (Figura 10), atunci semnalul u la ieșire nu va depăși niciodată limitele stabilite de pragurile limitatorului, ceea ce reduce depășirea răspunsului tranzitoriu al sistemului (Figura 12). Figura 11 prezintă o modificare a unui astfel de limitator.

Modelul efectului de tăiere poate fi îmbunătățit dacă, după depășirea nivelului la care are loc tăierea, semnalul la ieșirea modelului este redus (Figura 13). Acest lucru accelerează recuperarea sistemului din modul de saturație.

Figura 10 - Modificarea integratorului cu limitator (în paralel)

Figura 11 - Modificarea integratorului cu limitator (în serie)

Figura 12 - Răspunsul la un singur salt r(t) al unui sistem care conține

integrator cu constrângere superioară Uup

Figura 13 - Funcția de transfer îmbunătățită a modelului cu efect de tăiere

1.4 Marja de stabilitate a sistemului. criteriul Nyquist

Posibilitatea pierderii stabilității este principalul dezavantaj al sistemelor de feedback. Prin urmare, asigurarea marjei de stabilitate necesară este cel mai important pas în dezvoltarea și reglarea controlerului PID.

Stabilitatea unui sistem cu un controler PID este capacitatea sistemului de a reveni la urmărirea punctului de referință după încetarea influențelor externe. În contextul acestei definiții, influențele externe înseamnă nu numai perturbații externe care acționează asupra obiectului, ci și orice perturbații care acționează asupra oricărei părți a sistemului închis, inclusiv zgomotul de măsurare, instabilitatea punctului de referință temporal, zgomotul de eșantionare și cuantificare, zgomotul și eroarea de calcul. Toate aceste perturbații provoacă abateri ale sistemului de la poziția de echilibru. În cazul în care un

după încetarea influenței lor, sistemul revine la poziția de echilibru, apoi este considerat stabil. Atunci când se analizează stabilitatea regulatoarelor PID, de obicei se limitează la studierea răspunsului sistemului la o modificare treptată a punctului de referință r(t), a zgomotului de măsurare n(t) și a perturbațiilor externe d(t). Pierderea stabilității se manifestă ca o creștere nelimitată a variabilei controlate a obiectului sau ca oscilația acestuia cu creșterea amplitudinii.

În condiții de producție, încercările de a atinge empiric stabilitatea unui sistem cu controler PID, fără identificarea acestuia, nu duc întotdeauna la succes (în primul rând, acest lucru se aplică sistemelor cu un obiect de ordin înalt sau obiecte greu de identificat , precum și sisteme cu o întârziere mare de transport) . Se pare că stabilitatea este o proprietate mistică care nu poate fi întotdeauna controlată. Cu toate acestea, dacă procesul este identificat suficient de precis, atunci misticismul dispare și analiza stabilității se reduce la analiza unei ecuații diferențiale care descrie o buclă închisă cu feedback. De interes practic este analiza marjei de stabilitate, adică determinarea valorilor numerice ale criteriilor care vă permit să indicați cât de departe este sistemul de starea de instabilitate.

Cele mai complete informații despre marja de stabilitate a sistemului pot fi obținute prin rezolvarea unei ecuații diferențiale care descrie un sistem închis sub perturbații externe. Cu toate acestea, acest proces necesită prea mult timp, prin urmare, pentru sistemele liniare, sunt utilizate metode simplificate pentru a estima marja de stabilitate fără a rezolva ecuații. Vom lua în considerare două metode de estimare: folosind hodograful răspunsului de frecvență complex în buclă deschisă (criteriul Nyquist) și folosind răspunsul în frecvență logaritmică și răspunsul de fază (graficele Bode).

Un sistem stabil poate deveni instabil cu mici modificări ale parametrilor săi, de exemplu, datorită dispersiei lor tehnologice. Prin urmare, în continuare vom analiza funcția de sensibilitate a unui sistem cu controler PID, ceea ce ne permite să identificăm condițiile în care sistemul devine grosier (insensibil la modificările parametrilor săi). Un sistem care menține o anumită marjă de stabilitate pe întreaga gamă de modificări ale parametrilor datorită variației tehnologice a acestora, îmbătrânirii, condițiilor de funcționare, pe întreaga gamă de modificări ale parametrilor de sarcină, precum și pe întreaga gamă de perturbații care acționează asupra sistemului în mod real. condiții de funcționare, se numește robust. Uneori, robustețea și grosolănia sunt folosite ca concepte echivalente.

criteriul Nyquist. Luați în considerare un sistem format dintr-un controler R și un obiect de control P (Figura 14), care se obține prin eliminarea circuitului de semnal al punctului de referință dintr-un sistem clasic cu un regulator PID. Vom presupune că feedback-ul este deschis, iar pentru a-l închide, este suficient să conectați punctele x și y. Să presupunem acum că intrarea x primește un semnal

Apoi, după ce a trecut prin controler și obiectul de control, acest semnal va apărea la ieșirea y cu o amplitudine și o fază modificate sub forma:

y(t) = ? |G(jw0)|sin(w0t + ?), (4)

unde G(jsh) = R(jsh)P(jsh) este răspunsul în frecvență complex (CFC) al sistemului, ? = arg(G(jш0)) - argument CCH, |G(jш0)| - Modul CFC la frecventa w0. Astfel, la trecerea prin regulator și obiect, amplitudinea semnalului se va schimba proporțional cu modulul, iar faza - cu valoarea argumentului CFC.

Figura 14 - Structura unui sistem de control în buclă deschisă cu un controler PID pentru analiza stabilității

Dacă acum închidem punctele x și y, atunci semnalul va circula într-o buclă închisă, iar condiția y(t) = x(t) va fi îndeplinită. Dacă, în plus, |G(jш0)| ? 1 si? \u003d 180 °, adică după trecerea prin buclă, semnalul intră în intrarea controlerului în aceeași fază ca în ciclul anterior, apoi după fiecare trecere prin buclă, amplitudinea semnalului sinusoidal va crește până când ajunge la limita intervalului de liniaritate a sistemului, după care forma oscilației devine diferită de cea sinusoidală. În acest caz, metoda liniarizării armonice poate fi utilizată pentru a analiza stabilitatea, când se consideră doar prima armonică a semnalului distorsionat. În starea staționară, după ce amplitudinea oscilației este limitată, datorită egalității y(t) = x(t), se va îndeplini următoarea condiție:

|G(jw0)|=1, adică G(jw0)= - 1 (5)

Rezolvând ecuația G(jw0) = -1, puteți găsi frecvența oscilațiilor w0 într-un sistem închis.

Răspunsul complex în frecvență G(jш) este reprezentat grafic sub forma unui hodograf (diagrama Nyquist) - un grafic în coordonatele Re și Im (Figura 15). Săgeata de pe linia odografului indică direcția de mișcare a „creionului” cu o frecvență crescândă. Punctul G(jw0) = -1, care corespunde condiției de existență a oscilațiilor neamortizate în sistem, pe acest grafic are coordonatele Re = -1 și Im = 0. Prin urmare, criteriul de stabilitate Nyquist se formulează după cum urmează : un circuit care este stabil în starea deschisă va rămâne stabil și după închiderea lui, dacă CFC-ul său în starea deschisă nu acoperă punctul cu coordonatele [-1, j0]. Mai strict, atunci când se deplasează de-a lungul traiectoriei hodografului în direcția creșterii frecvenței, punctul [-1, j0] trebuie să rămână în stânga, astfel încât bucla închisă să fie stabilă.

K=6; T1 = T2 = 0,1 s; L = 0,01 s

Figura 15 - Trei hodografe ale CFC ale unui sistem deschis G(jw) pentru un obiect de ordinul doi

Figura 16 prezintă răspunsurile unui sistem închis cu trei hodografe diferite (Figura 15) la un singur pas de referință. În toate cele trei cazuri, sistemul este stabil, dar rata de amortizare a oscilațiilor și forma tranziției

procesul lor este diferit. Este clar intuitiv că un sistem cu parametrii Ti = 0,01 s, Td = 0,1 s este cel mai aproape de a intra într-o stare de oscilații neamortizate cu o mică modificare a parametrilor săi. De aceea

la proiectarea unui controler PID, este important să se asigure nu atât stabilitatea cât rezerva acestuia, care este necesară pentru funcționarea normală a sistemului în condiții reale.

Marja de stabilitate este estimată ca gradul de îndepărtare a CFC față de punctul critic [-1, j0]. Dacă |G(jш0)|< 1, то можно найти, во сколько раз осталось увеличить передаточную функцию, чтобы результирующее усиление вывело систему в колебательный режим: gm|G(jщ0)| = 1, откуда

Marja de câștig gm este valoarea cu care funcția de transfer a unui sistem în buclă deschisă G(jsh180) trebuie înmulțită astfel încât modulul său la o frecvență de defazare de 180 ° (sh180) să devină egal cu 1. Dacă la o frecvență de w180 câștigul în buclă deschisă este G(jsh180) = -1/gm (Fig. 15), atunci un câștig suplimentar de gm va aduce sistemul la punctul [-1, j0], deoarece (-1/gm) gm = -1. Conceptul de marjă de fază este introdus în mod similar: aceasta este valoarea minimă m cu care este necesară creșterea defazajului într-un sistem deschis arg(G(jw)) astfel încât defazarea totală să ajungă la 180°, adică

Semnul „+” înainte de arg(G(jш1)) este deoarece arg(G(jш1))< 0. Для оценки запаса устойчивости используют также минимальное расстояние sm от кривой годографа до точки [-1, j0] (рисунок 15).

În practică, valorile gm = 2...5,m = 30...60°, sm = 0,5...0,8 sunt considerate acceptabile Pentru graficul din figura 15, aceste criterii au următoarele valori:

Gm1 = 12,1; m1 = 15°; sm1 = 0,303 (pentru cazul Ti = 0,01 s,

Gm2 = 11,8; m2 = 47,6°; sm2 = 0,663 (pentru cazul Ti = 0,05 s,

Gm3 = 1,5; m3 = 35,2°; sm3 = 0,251 (pentru cazul Ti = 0,05 s,

Dacă curba hodografă intersectează axa reală în mai multe puncte, atunci pentru a evalua marja de stabilitate, luați-o pe cea care este cel mai aproape de punctul [-1, j0]. Cu un hodograf mai complex, poate fi utilizată o estimare a marjei de stabilitate ca marjă de întârziere. Marja de întârziere este întârzierea minimă adăugată buclei pentru a o face instabilă. Cel mai adesea, acest criteriu este utilizat pentru a evalua marja de stabilitate a sistemelor cu predictorul Smith.

Criteriul de stabilitate a frecvenței Pentru o reprezentare grafică a funcției de transfer a unui sistem deschis și o evaluare a marjei de stabilitate, se pot utiliza răspunsul în frecvență logaritmic și răspunsul de fază (Figura 17). Pentru a evalua marja de fază, în primul rând, folosind răspunsul în frecvență, se găsește frecvența u1 (frecvența de tăiere sau frecvența de amplificare unitară), la care G(ju1) = 1, apoi se găsește marja de fază corespunzătoare din PFC. Pentru a estima marja de câștig, mai întâi, folosind PFC, găsiți frecvența w180, la care schimbarea de fază este de 180 °, apoi găsiți marja de câștig din răspunsul în frecvență. Figura 17 prezintă exemple de construcții grafice pentru estimarea câștigului și a marjei de fază pentru sistem, ale căror hodografii sunt prezentate în Figura 15.

Dacă marja de fază în buclă deschisă este 0° sau marja de câștig este 1, sistemul va fi instabil după ce bucla de feedback este închisă.

Figura 16 - Răspunsul tranzitoriu al unui sistem închis, care

are hodografe prezentate în Figura 15

2. Funcții de sensibilitate. ecuația controlerului PID digital

2.1 Funcții de sensibilitate. robusteţe. Comutare fără șocuri a modurilor de control

Funcția de transfer a unui obiect real P(e) se poate modifica în timpul funcționării cu valoarea DP(e), de exemplu, din cauza modificărilor sarcinii pe arborele motorului, a numărului de ouă din incubator, a nivelului sau compoziției lichidul din autoclavă, din cauza îmbătrânirii și uzurii materialului, apariției jocului, modificărilor de lubrifiere etc. Un sistem de control automat proiectat corespunzător ar trebui să-și mențină indicatorii de calitate nu numai în condiții ideale, ci și în prezența factorilor nocivi enumerați. Pentru a evalua influența unei modificări relative a funcției de transfer a obiectului DP / P asupra funcției de transfer a sistemului închis Gcl

y(s) = r(s), Gcl(s) = (8)

găsiți diferența dGcl:

Împărțind ambele părți ale acestei egalități cu Gcl și înlocuind Gcl = PR/(1+PR) în partea dreaptă, obținem:

Figura 17 - Evaluarea câștigului și a marjei de fază pentru un sistem cu un hodograf prezentat în Figura 15

Din (10) este vizibilă semnificația coeficientului S - caracterizează gradul de influență a modificării relative a funcției de transfer a obiectului asupra modificării relative a funcției de transfer a buclei închise, adică S este coeficientul de sensibilitate a buclei închise la variaţia funcţiei de transfer a obiectului. Deoarece coeficientul S \u003d S (jsh) este dependent de frecvență, se numește funcție de sensibilitate.

După cum urmează din (10),

Să introducem notația:

Valoarea T se numește funcție de sensibilitate complementară (suplimentară), deoarece S + T = 1. Funcția de sensibilitate vă permite să evaluați modificarea proprietăților sistemului după ce feedback-ul este închis. Deoarece funcția de transfer a unui sistem deschis este egală cu G = PR, iar a unui sistem închis Gcl = PR/(1+PR), atunci raportul lor este Gcl/G = S. În mod similar, pentru un sistem deschis, funcția de transfer de la intrarea perturbațiilor d la ieșirea unui sistem închis este (vezi ) P(s)/(1 + P(s)R(s)), iar bucla deschisă este P(s), deci raportul lor este de asemenea S. Pentru funcția de transfer de la intrarea n de zgomot de măsurare la ieșirea sistemului, se poate obține același raport S.

Astfel, cunoscând forma funcției S(jw) (de exemplu, Figura 18), putem spune cum se va modifica suprimarea influențelor externe asupra sistemului pentru diferite frecvențe după ce bucla de feedback este închisă. Evident, zgomotele situate în intervalul de frecvență în care |S(jш)| > 1, după închidere feedback-ul va crește, iar zgomotul cu frecvențe la care |S(jш)|< 1, после замыкания обратной связи будут ослаблены.

Cel mai rău caz (cea mai mare amplificare a influențelor externe) va fi observat la frecvența maximă Ms a modulului funcției de sensibilitate (Figura 18):

Maximul funcției de sensibilitate poate fi legat de marja de stabilitate sm (Figura 15). Pentru aceasta, acordăm atenție faptului că |1 + G(jш)| reprezintă distanța de la punctul [-1, j0] la punctul curent de pe hodograful funcției G(jш). Prin urmare, distanța minimă de la punctul [-1, j0] la

funcția G(jш) este egală cu:

Comparând (13) și (14), putem concluziona că sm = 1/Ms. Dacă modulul G(jsh) scade odată cu creșterea frecvenței, atunci, după cum se poate observa din Figura 15, (1-sm) ? 1/gm. Înlocuind aici raportul sm = 1/Ms, obținem o estimare a marjei de câștig exprimată în termeni de maxim al funcției de sensibilitate:

În mod similar, dar cu ipoteze mai grosiere, putem scrie estimarea marjei de fază în termeni de maximul funcției de sensibilitate:

De exemplu, pentru Ms = 2 obținem gm ? 2 si? 29°.

Figura 18 - Funcții de sensibilitate pentru sistemul cu hodografe prezentate în Figura 13

Robustitatea este capacitatea unui sistem de a menține o anumită marjă de stabilitate cu variații ale parametrilor săi cauzate de o modificare a sarcinii (de exemplu, când se modifică sarcina cuptorului, constantele de timp ale acestuia), răspândirea tehnologică a parametrilor și îmbătrânirea acestora, influențe externe. , erori de calcul și eroare de model obiect. Folosind conceptul de sensibilitate, putem spune că robustețea este o sensibilitate scăzută a marjei de stabilitate la variațiile parametrilor unui obiect.

Dacă parametrii obiectului se modifică în limite mici, atunci când este posibil să se folosească înlocuirea diferenţialului cu un increment finit, efectul modificărilor parametrilor obiectului asupra funcţiei de transfer a sistemului închis poate fi estimat folosind funcția de sensibilitate (10). În special, se poate concluziona că la acele frecvențe în care modulul funcției de sensibilitate este mic, efectul modificărilor parametrilor obiectului asupra funcției de transfer a unui sistem închis și, în consecință, asupra marjei de stabilitate va fi mic.

Pentru a evalua impactul modificărilor mari ale parametrilor obiectului, reprezentăm funcția de transfer a obiectului sub forma a doi termeni:

P = P0 + DP, (17)

unde P0 este funcția de transfer calculată, DP este abaterea de la P0, care trebuie să fie o funcție de transfer stabilă. Apoi, câștigul buclei unui sistem deschis poate fi reprezentat ca G = RP0 + RDP = G0 + RDP. Deoarece distanța de la punctul [-1, j0] la punctul curent A de pe hodograful sistemului neperturbat (pentru care DP = 0) este egală cu |1 + G0| (Figura 19), condiția de stabilitate pentru un sistem cu deviația câștigului buclei RDP poate fi reprezentată ca:

|RDP|< |1+G0|,

unde T este o funcție suplimentară de sensibilitate (12). În cele din urmă, putem scrie raportul:

care trebuie îndeplinită pentru ca sistemul să rămână stabil atunci când parametrii procesului se modifică cu valoarea DP(jsh).

Reducerea zerourilor și a polilor. Deoarece funcția de transfer în buclă deschisă G = RP este produsul a două funcții de transfer, care în caz general au atât un numărător, cât și un numitor, atunci este posibil să anulați polii care se află în semiplanul drept sau sunt aproape de acesta. Întrucât în ​​condiții reale, când există o răspândire a parametrilor, o astfel de reducere este efectuată incorect, poate apărea o situație când o analiză teoretică duce la concluzia că sistemul este stabil, deși, de fapt, cu o mică abatere a parametrilor procesului. din valorile calculate devine instabil.

Prin urmare, de fiecare dată când polii sunt redusi, este necesar să se verifice stabilitatea sistemului cu o împrăștiere reală a parametrilor obiectului.

Figura 19 - Explicația derivării raportului (18)

Al doilea efect al scurtării polilor este apariția unei diferențe semnificative între timpul de stabilire a procesului tranzitoriu într-un sistem închis sub influența unui semnal de referință și perturbațiile externe. Prin urmare, este necesar să se verifice răspunsul controlerului sintetizat sub influența nu numai a semnalului de referință, ci și a perturbațiilor externe.

Comutare fără șocuri a modurilor de control. În controlerele PID, pot exista moduri în care parametrii acestora se modifică brusc. De exemplu, atunci când este necesară modificarea constantei de integrare într-un sistem care rulează sau când, după controlul manual al sistemului, este necesară trecerea în modul automat. În cazurile descrise, pot apărea depășiri nedorite ale variabilei controlate dacă nu sunt luate măsuri speciale. Prin urmare, apare problema comutării lină („fără șocuri”) a modurilor de funcționare sau a parametrilor controlerului. Principala metodă de rezolvare a problemei este construirea unei astfel de structuri de controler, atunci când modificarea parametrilor este efectuată înainte de etapa de integrare. De exemplu, cu un parametru în schimbare Ti = Ti (t), termenul integral poate fi scris în două forme:

I(t) = sau I(t) = .

În primul caz, când Ti (t) se schimbă brusc, termenul integral se va schimba brusc, în al doilea caz, se va schimba fără probleme, deoarece Ti (t) se află sub semnul integral, a cărui valoare nu se poate schimba brusc.

O metodă similară este implementată în forma incrementală a controlerului PID (vezi secțiunea „Forma incrementală a controlerului PID digital”) și în forma serială a controlerului PID, unde integrarea se realizează în etapa finală a calculului de control.

2.2 Controler discret sub formă de ecuație a controlerului PID digital

Variabilele continue sunt convenabile de utilizat pentru analiza și sinteza controlerelor PID. Pentru implementarea tehnică, este necesară trecerea la o formă discretă de ecuații, deoarece baza tuturor controlerelor este un microcontroler, controler sau computer care funcționează cu variabile obținute din semnale analogice după cuantificarea timpului și eșantionarea nivelului acestora.

Datorită timpului finit pentru calcularea acțiunii de control în microcontroler și întârzierii în conversia analog-digitală între momentul în care semnalul analogic ajunge la intrarea controlerului și apariția acțiunii de control la ieșirea acestuia, o întârziere nedorită. apare, ceea ce mărește întârzierea generală în bucla de control și reduce marja de stabilitate.

Principalul efect care apare în timpul eșantionării și care este adesea „redescoperit” este apariția unor frecvențe alias în spectrul semnalului cuantificat în cazul în care frecvența de cuantizare nu este suficient de mare.

Un efect similar apare atunci când filmați o roată de mașină care se învârte. Frecvența semnalului alias este egală cu diferența dintre frecvența de interferență și frecvența de cuantizare.În acest caz, semnalul de interferență de înaltă frecvență este deplasat în regiunea de frecvență joasă, unde este suprapus semnalului util și creează mari probleme, deoarece este imposibil să îl filtrați în această etapă.

Pentru a elimina efectul de alias, este necesar să instalați un filtru analogic înainte de intrarea convertorului analog-digital, care ar atenua zgomotul cu cel puțin un ordin de mărime la o frecvență egală cu jumătate din frecvența de cuantizare. De obicei, se folosește un filtru Butterworth de ordinul doi sau mai mare. A doua soluție a problemei este creșterea frecvenței de cuantizare astfel încât să fie de cel puțin 2 ori (conform teoremei Kotelnikov) mai mare decât frecvența maximă a spectrului de interferență. Acest lucru permite aplicarea unui filtru digital trece-jos după cuantizare. Cu o astfel de rată de eșantionare, semnalul digital primit este complet echivalent cu cel analog în ceea ce privește cantitatea de informații, iar toate proprietățile controlerului analogic pot fi extinse la cel digital.

Tranziția la ecuații cu diferențe finite. Trecerea la variabile discrete în ecuațiile controlerului analogic se realizează prin înlocuirea derivatelor și integralelor cu omologii lor discreti. Dacă ecuația este scrisă sub formă de operator, atunci se face mai întâi o tranziție din zona imaginii în zona originală. În acest caz, operatorul de diferențiere este înlocuit cu o derivată, operatorul de integrare este înlocuit cu o integrală.

Există multe modalități de aproximare a derivatelor și integralelor de către omologii lor discreti, care sunt subliniate în cursurile despre metode numerice pentru rezolvarea ecuațiilor diferențiale. În controlerele PID, cele mai comune sunt cele mai simple tipuri de aproximare a derivatei printr-o diferență finită și a integralei printr-o sumă finită. Luați în considerare termenul integral al controlerului PID:

Diferențiând ambele părți în funcție de timp, obținem

Înlocuind diferențele din această expresie cu diferențe finite (diferențe din stânga), obținem

unde indicele i înseamnă că valoarea dată a fost luată la momentul ti (rețineți că aici și dedesubt indicele i din Ti denotă nu numărul pasului de timp, ci coeficient integral controler PID). Din ultima expresie obținem:

Astfel, următoarea valoare a integralei poate fi calculată cunoscând cea anterioară și valoarea erorii la momentul anterior. Cu toate acestea, o astfel de formulă tinde să acumuleze o eroare de calcul în timp dacă raportul Dt/Ti nu este suficient de mic. O altă formulă de integrare este mai stabilă - cu diferențe corecte, atunci când valoarea erorii este luată în același timp cu integrala calculată:

Luați în considerare termenul diferențial al unui controler PID cu un filtru:

Trecând în această formulă de la imagini la originale, obținem:

Înlocuind diferențele cu incremente finite, obținem ecuația diferenței:

Rețineți că pentru convergența procesului iterativ (21) este necesar ca

Când Dt > Td/N, procesul iterativ (21) devine oscilator, ceea ce este inacceptabil pentru controlerul PID. Ecuația diferențelor obținute folosind diferențele corecte are cele mai bune caracteristici:

Aici, condiția de convergență este îndeplinită pentru toate Dt și nu au loc oscilații pentru nicio valoare a parametrilor. În plus, ultima formulă vă permite să „dezactivați” componenta diferențială din controlerul PID prin setarea Td = 0, ceea ce nu se poate face în expresia (21), deoarece împărțirea la zero are loc în acest caz. Puteți folosi formule și mai precise de diferențiere și integrare numerică, cunoscute din cursul metodelor numerice de rezolvare a ecuațiilor. Valoarea ciclului de cuantizare Dt este aleasă cât mai mică posibil, aceasta îmbunătățește calitatea reglării. Pentru a asigura o bună calitate a reglarii, aceasta nu trebuie să fie mai mare de 1/15...1/6 din timpul stabilirii răspunsului tranzitoriu al obiectului la nivelul de 0,95 sau 1/4...1/6 din valoarea întârzierii de transport. Cu toate acestea, cu o creștere a frecvenței de cuantizare de mai mult de 2 ori în comparație cu frecvența superioară a spectrului de semnale perturbatoare (conform teoremei Kotelnikov), nu există nicio îmbunătățire suplimentară a calității reglementării.

Dacă nu există un filtru anti-alias la intrarea regulatorului, atunci frecvența de cuantificare este aleasă de 2 ori mai mare decât frecvența de tăiere superioară a spectrului de zgomot pentru a utiliza filtrarea digitală. De asemenea, trebuie luat în considerare faptul că dispozitivul executiv trebuie să aibă timp să se antreneze în timpul Dt.

Dacă controlerul este utilizat nu numai pentru reglare, ci și pentru semnalizarea alarmei, atunci ciclul de cuantizare nu poate fi mai mic decât întârzierea permisă pentru funcționarea semnalului de alarmă.

Cu un ciclu de cuantificare mic, eroarea în calcularea derivatei crește. Pentru a o reduce, puteți utiliza netezirea datelor primite pe mai multe puncte colectate înainte de etapa de diferențiere.

Ecuația controlerului PID digital. Pe baza celor de mai sus, ecuația controlerului PID discret poate fi scrisă astfel:

unde i este numărul pasului de timp.

Pentru a porni algoritmul, alegem de obicei uD0 = 0, I0 = 0, e0 = 0, dar pot fi și altele condiții inițiale, în funcție de semnificația unei probleme specifice de control.

Rețineți că algoritmul obținut prin simpla înlocuire a operatorilor de diferențiere și integrare în ecuația clasică a controlerului PID

diferențele finale și sumele finale

are stabilitate slabă și precizie scăzută, așa cum sa arătat mai devreme. Cu toate acestea, pe măsură ce frecvența de eșantionare crește, diferența dintre cei doi algoritmi de mai sus este ștearsă.

Forma incrementală a unui controler PID digital. Destul de des, mai ales în rețelele neuronale și controlerele fuzzy, ecuația controlerului PID este utilizată sub forma unei dependențe a incrementului variabilei de control de eroarea de control și derivatele acesteia (fără un termen integral).Această reprezentare este convenabilă atunci când un dispozitivul extern joacă rolul unui integrator, de exemplu, un motor convențional sau pas cu pas. Unghiul de rotație al axei sale este proporțional cu valoarea semnalului de control și cu timpul. În controlerele fuzzy, atunci când formulează reguli fuzzy, un expert poate formula dependența variabilei de control față de valoarea derivată, dar nu poate formula dependența de valoarea integrală, deoarece integrala „amintește” întregul istoric al modificării erorii, care o persoană nu-și poate aminti.

Forma incrementală a controlerului PID se obține prin ecuația de diferențiere (25):

Pentru a obține o eroare de control zero, trebuie instalat un integrator la ieșirea controlerului incremental (Figura 20):

Figura 20 - Forma incrementală a controlerului PID

Trecând expresiile obținute la diferențe finite, obținem forma discretă a controlerului PID incremental:

unde Dui+1 = ui+1 - ui;

Dei = ei - ei-1.

O ecuație de diferență mai stabilă și mai precisă poate fi obținută prin înlocuirea expresiilor pentru ui+1 și ui din (24) în formula Dui+1 = ui+1 - ui.

Forma incrementală a controlerului este convenabilă pentru utilizare în microcontrolere, deoarece în ea cea mai mare parte a calculelor sunt efectuate în trepte, care pot fi reprezentate printr-un cuvânt cu un număr mic de cifre binare. Pentru a obține valoarea variabilei de control, puteți efectua însumarea cumulativă în etapa finală a calculelor: ui+1 = ui + Dui+1.

Înainte de a calcula parametrii controlerului, este necesar să se formuleze obiectivul și criteriile pentru calitatea reglementării, precum și restricții privind amploarea și rata de schimbare a variabilelor din sistem. În mod tradițional, principalii indicatori de calitate sunt formulați pe baza cerințelor privind forma răspunsului unui sistem închis la o schimbare de treaptă a punctului de referință. Cu toate acestea, acest criteriu este foarte limitat. În special, nu spune nimic despre cantitatea de atenuare a zgomotului de măsurare sau influența perturbațiilor externe; poate oferi o idee eronată despre robustețea sistemului.

Prin urmare, pentru a descrie sau a testa pe deplin un sistem cu un controler PID, sunt necesari o serie de indicatori de calitate suplimentari, care vor fi discutați mai târziu.

În cazul general, alegerea indicatorilor de calitate nu poate fi complet formalizată și trebuie efectuată în funcție de sensul problemei care se rezolvă.

3. Calitatea reglementării

3.1 Criterii de performanţă Atenuarea influenţei perturbaţiilor externe

Alegerea criteriului de calitate a controlului depinde de scopul pentru care este utilizat regulatorul. Scopul ar putea fi:

Menținerea unei valori constante a unui parametru (de exemplu, temperatura);

Urmărirea punctului de referință sau control software;

Controlul amortizorului într-un rezervor de lichid etc.

Pentru o anumită sarcină, cel mai important factor poate fi:

Forma de răspuns la perturbații externe (timp de stabilizare, depășire, timp de răspuns etc.);

Forma răspunsului la zgomotul de măsurare;

Forma de răspuns la semnalul punctului de referință;

Robustețe în raport cu răspândirea parametrilor obiectului de control;

Economie de energie într-un sistem controlat;

Minimizarea zgomotului de măsurare.

Pentru un regulator PID clasic, parametrii care sunt cei mai buni pentru monitorizarea punctului de referință sunt în general diferiți de parametrii care sunt cei mai buni pentru atenuarea influenței perturbațiilor externe. Pentru ca ambii parametri să fie optimi în același timp, este necesar să folosiți regulatoare PID cu două grade de libertate.

Urmărirea precisă a modificărilor punctului de referință este necesară în sistemele de control al mișcării, în robotică; în sistemele de control al procesului, unde valoarea de referință rămâne de obicei neschimbată pentru o perioadă lungă de timp, este necesară atenuarea maximă a influenței sarcinii (perturbații externe); în sistemele de control al rezervorului de lichid se cere asigurarea fluxului laminar (minimizarea variației variabilei de ieșire a regulatorului) etc.

După cum se arată în subsecțiune, feedback-ul slăbește influența perturbațiilor externe în |S(jш)| ori, cu excepția acelor frecvențe la care |S(jw)|. Perturbațiile externe pot fi aplicate unui obiect în multe părți diferite ale acestuia, totuși, atunci când locația specifică este necunoscută, se consideră că perturbația acționează asupra intrării obiectului. În acest caz, răspunsul sistemului la perturbațiile externe este determinat de funcția de transfer de la intrarea perturbațiilor externe la ieșirea sistemului:

Deoarece perturbațiile externe se află de obicei în partea de joasă frecvență a spectrului, unde |S(jш)| și, în consecință, T, atunci expresia (28) poate fi simplificată:

Astfel, pentru a slăbi influența perturbațiilor externe (în special, influența sarcinii), se poate reduce constanta de integrare Ti.

În domeniul timpului, răspunsul la perturbațiile externe este estimat din răspunsul la un singur salt d(t). Reducerea efectului zgomotului de măsurare: Funcția de transfer de la punctul de aplicare a zgomotului la ieșirea sistemului este:

Datorită scăderii răspunsului în frecvenţă al obiectului de frecvente inalte funcția de sensibilitate tinde spre 1 (Figura 18). Prin urmare, este imposibil să se reducă efectul zgomotului de măsurare folosind feedback. Cu toate acestea, aceste zgomote sunt ușor eliminate prin utilizarea filtrelor low-pass și ecranarea și împământarea corespunzătoare.

Sistemul închis rămâne stabil atunci când parametrii obiectului se modifică cu valoarea DP(jw), dacă condiția (18) este îndeplinită.

Criterii de calitate în domeniul timpului. Pentru a evalua calitatea reglării într-un sistem închis cu un controler PID, o acțiune de intrare în pas și un număr de criterii sunt de obicei utilizate pentru a descrie forma procesului tranzitoriu (Figura 21):

Eroare maximă de control

și timpul Tmax la care eroarea atinge acest maxim;

Eroare absolută integrată

Integrala erorii pătrate

Decrementează d (acesta este raportul dintre primul maxim și al doilea, valoarea tipică d=4 sau mai mult)

observăm că și alte definiții ale decrementului de amortizare se găsesc în literatură, în special, ca sau ca coeficient b/a în exponentul exponentului care descrie anvelopa oscilațiilor amortizate;

Eroarea statică e0 (aceasta este o eroare constantă în echilibru, adică în modul constant sau static al sistemului);

Timpul de stabilizare Te cu o eroare dată es (acesta este timpul după care eroarea de control nu depășește valoarea setată es; de obicei es = 1%, mai rar 2% sau respectiv 5% -, timpul de stabilire este notat cu T0. 01, T0.02, T0.05);

Depășire emax (acesta este excesul primului vârf față de valoarea de echilibru a variabilei, de obicei exprimată ca procent din valoarea de echilibru);

Timp de creștere Tr (acesta este intervalul de timp în care variabila de ieșire crește de la 10 la 90% din valoarea ei în regim de echilibru);

Perioada oscilațiilor amortizate Tcl (strict vorbind, oscilațiile amortizate nu sunt periodice, prin urmare aici perioada este înțeleasă ca distanța dintre două maxime adiacente ale caracteristicii tranzitorii).

Figura 21 - Criterii pentru calitatea reglementării în domeniul timpului

Pentru sistemele de control al mișcării, funcția de rampă este folosită mai des ca semnal de testare decât funcția de salt, deoarece sistemele electromecanice au de obicei o rată de mișcare limitată a valorii de ieșire.

Criteriile de mai sus sunt utilizate pentru a evalua calitatea răspunsului atât la schimbările punctului de referință, cât și impactul perturbațiilor externe și al zgomotului de măsurare.

Criterii de calitate a frecvenței. În domeniul frecvenței, se folosesc de obicei următoarele criterii, obținute din graficul răspunsului amplitudine-frecvență al unui sistem închis y (u) (Figura 22):

Lățimea de bandă u-3dB (sau u0.7) la nivelul de -3 dB (sau la nivelul 1/ = 0.7) - bandă de frecvență de la 0 la u-3dB = u0.7, în cadrul căreia curba răspunsului în frecvență scade cu nu mai mult de 3 dB față de valoarea sa la frecvența zero y(0);

Oscilația M - raportul dintre valoarea maximă (vârf) a răspunsului în frecvență ymax și valoarea acestuia la frecvența zero y(0), adică în stare staționară

valorile tipice sunt M = 1,5...1,6;

Frecvența de rezonanță a sistemului wp este frecvența la care răspunsul în frecvență atinge maximul său ymax = y(wp).

Criteriile de frecvență ale regulatoarelor reale nu pot fi legate fără ambiguitate de criteriile de timp din cauza neliniarităților (de obicei acestea sunt neliniarități de tip „limitativ”) și de algoritmi pentru eliminarea efectului de saturație integrală. Cu toate acestea, este aproximativ posibil să se stabilească următoarele relații între criteriile din domeniul frecvență și timp:

Frecvența caracteristicii de transfer maxim a unui sistem închis corespunde aproximativ cu perioada de oscilații amortizate a răspunsului la intrarea în trepte - h;

Cu cât vibrațiile scade mai lent, cu atât indicele de oscilație M este mai mare.

Selectarea parametrilor controlerului. LA teorie generală control automat structura controlerului este selectată pe baza modelului obiectului de control. În acest caz, obiectelor de control mai complexe corespund controlerelor mai complexe. În cazul nostru, structura controlerului este deja setată - luăm în considerare un controler PID. Această structură este foarte simplă, astfel încât controlerul PID nu poate da întotdeauna calitate bună control, deși regulatoarele PID sunt utilizate în marea majoritate a aplicațiilor industriale.

Documente similare

    Tipuri și utilizare a senzorilor control automat parametrii de regim ai proceselor tehnologice producție chimică. Principiul de funcționare a senzorilor măsurați, controlerelor de temperatură, comutatoarelor modulare. Mijloace de protectie a instalatiilor electrice.

    teză, adăugată 26.04.2014

    Cunoașterea etapelor de calcul a setărilor regulatoarelor tipice într-un sistem de răspuns automat cu o singură buclă. Caracteristici ale alegerii tipului de regulator industrial. Metode de construire a regiunii de stabilitate în planul parametrilor de reglare ai controlerului.

    teză, adăugată 17.06.2013

    Analiza proprietăților obiectului de control, regulatoare tipice și selectarea tipului de regulator. Calculul parametrilor optimi ai setărilor controlerului. Dependenţa acţiunii de reglementare de abaterea valorii controlate. Regulatoare integrale și proporționale.

    lucrare de termen, adăugată 02.11.2014

    Proiectarea unui dispozitiv care măsoară temperatura într-o cameră. Alegerea senzorului de temperatură, a microcontrolerului și a plăcii de depanare. Studierea funcționării senzorului de temperatură încorporat. Dezvoltare de software. Organizarea funcțională a programului.

    lucrare de termen, adăugată 26.12.2013

    Proiectarea unui model de motor electric cu parametrii calculați în mediul Simulink. Simularea funcționării motorului cu diferite sarcini (cuplu perturbator). Calculul parametrilor și controlerelor optime și indicatorilor de calitate pentru o serie de caracteristici.

    lucrare de termen, adăugată 24.06.2012

    Calculul răspunsului în frecvență complex al obiectului în domeniul de frecvență necesar. Determinarea marjei de stabilitate a unui inchis sistem automat regulament. Evaluarea calității controlului la utilizarea controlerelor PI și PID și alegerea celui mai bun.

    lucrare de termen, adăugată 04.12.2014

    Caracteristica de accelerare a obiectului de reglare și determinarea parametrilor care caracterizează proprietățile inerțiale ale obiectului. Calculul setărilor regulatoarelor în funcție de caracteristica amplitudine-fază a obiectului reglat. Calculul indicatorilor de calitate ATS.

    lucrare de termen, adăugată 22.10.2012

    Sinteza unui controler proporțional-integral-diferențial care oferă indicatori de precizie și calitate a controlului pentru un sistem închis. caracteristica amplitudine-frecventa, analiza dinamicași procesul tranzitoriu al sistemului ajustat.

    lucrare de termen, adăugată 08.06.2013

    Calculul parametrilor de reglare a controlerului PI pentru un obiect de ordinul doi. Calculul analitic și implementarea programului în mediul MatLab, care determină parametrii controlerului și tranzitorii. Criterii pentru calitatea procesului tranzitoriu al unui sistem închis.

    lucru de laborator, adaugat 29.09.2016

    Clasificarea suspensiilor electromagnetice. Construirea unui model matematic al standului. Implementarea software a unui controler proporțional-integral-diferențial. Descrierea microcontrolerului ATmega 328 și a plăcii Arduino. Asamblarea si punerea in functiune a standului.

  • tutorial

Controlerul PID este cel mai simplu controler care are implementări hardware analogice eficiente și, prin urmare, este cel mai utilizat. Pentru funcționarea sa, necesită setarea a 3 coeficienți pentru un anumit obiect, permițându-vă să selectați procesul de reglare în funcție de cerințe. Având o semnificație fizică simplă și o notație matematică simplă, este utilizat pe scară largă și adesea în regulatoarele de temperatură, regulatoarele de debit de gaz și alte sisteme în care este necesară menținerea unui anumit parametru la un anumit nivel, cu posibile tranzițiiîntre diferite niveluri prestabilite. Desigur, există controlere mai complexe care vă permit să ajungeți la parametrii setați mai precis și mai rapid și cu mai puține depășiri, precum și luând în considerare neliniaritatea sau histereza obiectului controlat, dar au o complexitate de calcul mai mare și sunt mai dificile. a înscena.

În ciuda simplității sale atât a semnificației fizice, cât și a notației matematice:

În implementarea software a controlerului PID, se fac adesea erori care apar chiar și în dispozitivele de automatizare verificate.

În plus, este extrem de ușor să verificați calitatea implementării controlerului PID.

Considera cel mai simplu exemplu: termostat. Pentru a-i testa calitatea, un obiect rapid, cu inerție redusă și cu putere redusă este cel mai potrivit. Un clasic al genului: un bec obișnuit de 100W cu un termocuplu subțire (XA) înșurubat. Și primul lucru de verificat controlerul PID este degradarea PID la doar un controler P. Adică, setăm coeficienții integrali și diferențiați la zero și setăm proporționalul la maxim.

Pornim regulatorul, verificăm: temperatura actuală este de 22 de grade, setarea este de 16 grade. Lampa nu se aprinde. Începem să creștem setarea: 16.1, 16.3, 16.7, 18 ... 19 ... lumina este aprinsă. Cum?! Unde?! Ne oprim - oprit. Așa că ne-am întâlnit prima greșeală clasică implementarea controlerului PID.

O mică digresiune matematică: să ne amintim încă o dată notația integrală indicată mai sus. Îl implementăm programatic, ceea ce înseamnă discret. Adică cu o regularitate de invidiat măsurăm valoarea de intrare, o comparăm cu valoarea de referință, calculăm efectul, emitem, repetăm. Deci, este necesar să trecem de la forma integrală la schema cu diferențe finite. La tranziție, se folosește de obicei o tranziție frontală:

unde E(n) = X(n) - X0(n) - adică mărimea nepotrivirii dintre valoarea curentă și valoarea setată a parametrului controlat.

Utilizarea unei formule directe va necesita, în primul rând, să se calculeze și să se stocheze integrala nepotrivirilor pe o perioadă mare și, în al doilea rând, va necesita lucru în virgulă mobilă de înaltă precizie (deoarece coeficientul integral Ki este întotdeauna< 1), либо операции деления (представляя коэффициент в форме 1/Ki) большой разрядности. Всё это требует вычислительных ресурсов, коих в embedded как правило сильно ограничено… Поэтому, вместо реализации прямой схемы, реализуют рекуррентную формулу:

utilizarea unei formule recursive face posibilă reducerea cantității de calcule și a adâncimii de biți a valorilor intermediare.

Deci, înapoi la regulatorul nostru. Deci, există un obiect reglabil: un bec. Pentru a controla puterea furnizată acestuia, se utilizează o abordare simplă: sursa de alimentare (220V 50Hz) este alimentată prin triac la sarcină. Triac-ul se oprește în momentul în care semi-undă trece prin zero și rămâne oprit până când un semnal este aplicat electrodului de control. Astfel, cu cât mai devreme după începutul semi-undă dăm un semnal de control, cu atât mai multă energie din această semi-undă va ajunge la obiectul controlat. Prin cronometrarea corectă a liniarității zonei semi-undă de la momentul X până la sfârșitul semi-undă, suntem capabili să ieșim putere de la 0 la 100% cu precizia cu care am calculat tabelul de liniarizare.

Deci, putem scoate putere de la 0 la 100%. În obiectele reale, este adesea imposibil să se elibereze 100% din putere - de exemplu, aceasta este plină de arderea elementului de încălzire. Prin urmare, toate dispozitivele au o setare pentru puterea de ieșire minimă și maximă per obiect.

Deci, după calcularea U(n) conform formulei de mai sus, se adaugă o altă limitare a rezultatului:
ma distrez< Umin then Un:= Umin; if Un>Umax apoi Un:= Umax;
După aceea, Un calculat este puterea de ieșire necesară în momentul curent. Ta-dam! Această implementare este cea care creează eroarea descrisă mai sus.

Motivul este banal: în momentul trecerii de la o schemă discretă la o schemă cu diferențe finite, „aparam” operația de calcul a integralei, iar la fiecare pas adăugăm derivata la suma acumulată U(n-1) . După ce i-am impus o restricție, anulăm de fapt întreaga integrală calculată. (Ei bine, nu cât de mult resetăm, cât aducem în intervalul 0-100, ceea ce în acest caz nu este semnificativ). Astfel, diferentiem controlerul PID, iar acceleratorul diferential ramane. Ceea ce de fapt arată ca un simplu controler diferenţial - puterea este furnizată proporţional cu modificarea punctului de referinţă sau variabilei controlate, şi nu proporţional cu diferenţa dintre valoarea de referinţă şi variabila controlată.

Concluzia #1: Calcularea lui U(n) nu poate fi restricționată. Pentru a limita puterea furnizată dispozitivului de ieșire, trebuie setată o variabilă separată.

Acum că avem Urn, pentru putere limitată, reîncărcăm, continuăm să testăm.
Pornim regulatorul, verificăm: temperatura actuală este de 22 de grade, setarea este de 16 grade. Lampa nu se aprinde.
Începem să adăugăm setarea: 16.1, 16.4, 17, 18, 20, 22, 24 (hopa! aprins! urât!), 28, 30, 40, 60... Frumusețe! Lucrări!
Urmărim procesul - s-a dovedit a fi aproximativ 60, atârnă puțin înainte și înapoi, dar ține. Se pare că totul este frumos. Expirăm, verificăm controlul de la PC: setăm 600 de grade. Și... Lumina se stinge. Cum așa? Punct de referință 600, curent 60, dar lumina este stinsă?

În timp ce așteptăm și ne dăm seama încet-încet că ne-am lovit clar de unele „Îmbinare clasică #2”™ becul se aprinde încet, ajunge la 100% putere și rămâne așa - nu poate da 600 de grade.

Revenim din nou la schema noastră de diferențe. U(n) = U(n-1) + Kp*(dE + ...) . Diferența reziduală înmulțită cu coeficientul de proporționalitate se adaugă la valoarea curentă calculată a impactului. Aveam un setpoint de 60, o temperatură de 60, adică o discrepanță zero. Puterea de ieșire a fost, de asemenea, zero. Și apoi dintr-o dată, brusc, valoarea de referință a fost crescută la 600 de grade. discrepanța a devenit brusc de 540 de grade, au înmulțit-o și cu factorul de proporționalitate ... și au zburat din capacitatea de stocare U (n). Nu râde, folosind matematica în virgulă fixă ​​în loc de virgulă mobilă. Cu o diferență de 540 de grade și lucrând prin 1/16, cu un factor de proporționalitate de 20, obținem ... 540 * 20 * 16 = 172800, iar dacă avem un U (n) de 16 biți și chiar un semn unul, apoi de fapt, ca rezultat al calculului, am obținut A300h = -8960. Opachki. În loc de un mare plus - un astfel de minus tangibil.

Concluzia #2: Calculele trebuie făcute cu suport corect de preaplin. S-a revărsat? Limitați numărul limită, cu siguranță nu înfășurați.

Deci, am mărit adâncimea de biți U (n), am retradus, am cusut, lansăm. Becul încă nu s-a răcit complet, sunt 80 de grade acolo, setarea este tot aceeași 600. Becul se aprinde... și se stinge. Se aprinde și se stinge. Cum așa? Setarea este 600, becul este 80 - și își menține destul de bine propriul 80! Ce zici de asta?! Evident că am ieșit Eroare #3.

Și din nou, o digresiune lirico-matematică. Deci, există schema noastră de diferențe: U(n) = G(U(n-1), dE(n)) . Încă o dată: noua valoare a impactului este suma impactului trecut și a unui anumit impact, în funcție de diferența dintre rezidualul din momentul actual și cel anterior. Care este momentul anterior? Și care este momentul anterior celui precedent? Ei bine, amintiți-vă de școală. Dovada prin inducție. Dacă este posibil să construim o demonstrație pentru K+1, presupunând că demonstrația pentru K este corectă, Și demonstrați separat ceea ce este adevărat pentru K=0, atunci demonstrația este adevărată. Deci, cum calculăm U(0)?

O soluție comună: resetați totul, citiți valoarea de referință din memoria flash și valorile de referință, așteptați 1 ciclu de interogare și citiți X(0). Aici, zero este gata, acum lucrăm. Și... Și nu corect. De ce? Deoarece formula recurentă este respinsă prin modificări ale reziduului. Și după ce am inițializat cu zero și am încărcat valorile curente, am pierdut condițiile de pornire. Asta e tot - în loc să mențină valoarea absolută a temperaturii la un nivel egal cu valoarea de referință absolută, regulatorul începe să mențină temperatura egală cu temperatura de pornire plus diferența punctului de referință. Adică, au fost 80 de grade și setarea a fost 200, a pornit dispozitivul - deține 80. S-a schimbat setarea la 240 - a început să țină 120.

Inițializarea corectă a schemei de diferențe: setați _totul_ la zero. Acesta este
X(0) = 0, X0(0) = 0. U(0) = 0. E(0)=X(0)-X0(0)=0.
Și chiar în primul ciclu de calcule, valoarea de referință și valoarea curentă, așa cum ar fi, apar brusc:
X(1) = 80. X0(1)=200. U(1) = U(0)+Kp*(E(1)-E(0)) = U(0)+Kp*(X(1)-X0(1)-E(0)) = 0 + 20*(200 - 80 - 0) = 2400
Acum circuitul funcționează corect.

Concluzia #3: inițializați corect condițiile de pornire.

Este corect? Păi, bine, bine... Încă o dată... Setăm setarea la 20. Așteptăm răcirea... O oprim. Porniți. Deci, frumusețe: curent 20, setpoint 20. Set jump 600. Hai să ne încălzim. 100, 120 ... setați setarea la 20. S-a oprit, s-a răcit. Așteptăm puțin (120… 110… 100… 90… 80…) și setăm setarea la 100. Să ne încălzim… 105 grade, oprit. Stop. Și de ce ține 105? La noi, acum funcționează doar componenta proporțională. Cu implementarea corectă din sensul fizic al procesului, procesul oscilator nu poate menține setarea mai sus decât este setat. strict mai jos. Și ține cu 5 grade mai mult decât se cere. Se observă Farsa #4.

Deci, să ne amintim ce am avut mai sus: Concluzia #2: U(n) nu poate fi limitat. Și Concluzia nr 3: în caz de preaplin, mai trebuie să te limitezi. Da Da. În caz contrar, „punctul de lucru” este deplasat cu un moment limitat. Ce să fac? Creșteți rangul? Ei bine, dacă există suficientă putere de calcul. Este necesar? De fapt, ce este greșit în a avea U(n) = 9999,99 și nu 29999,99? În general, doar că am pierdut 20 000. Dar acum, pentru a funcționa, trebuie doar să ne prăbușim 100% din putere oricum, nu? Corect. Asta înseamnă că nu este nicio problemă cu restricția din regiment, atâta timp cât nu ne îndepărtăm de limită. Astfel, în caz de depășire, trebuie setat un flag, iar la atingerea, de exemplu, jumătate din interval (adică, deoarece U (n) după ce 9999.9 a scăzut sub 5000.00), reinițializați circuitul. Adică, aruncați istoricul, spuneți că n=0 și vedeți Concluzia nr. 3 de mai sus. O minte curioasă și-a dat deja seama că în acest caz schema completa, când toate cele trei componente nu sunt egale cu zero, anulând procesul iterativ din proces, anulăm și integrala acumulată a componentei integrale. Cu toate acestea, datorită faptului că ne resetăm la zero cu mult în avans, va avea timp să se acumuleze în timpul producției suplimentare a restului. Și nu este în întregime corect să acumulați integrala pe etape „mari”, deoarece scopul componentei integrale este de a „selecta” discrepanța pe care componenta proporțională nu o poate rezolva separat.

Concluzia #4: dacă dintr-un motiv oarecare U(n) a fost limitat, circuitul ar trebui reinițializat de îndată ce circuitul pare să revină la normal.

În numărul următor: este necesar să se implementeze o schemă de diferențe? O implementare detaliată a unui circuit discret direct cu coeficienți reglabili simpli și de înțeles, cu semnificație fizică directă, care calculează cu ușurință acțiunea de control la o frecvență de 25 Hz pe procesorul ADuC847 (controller rapid de 8 biți, cu nucleul 8051), lăsând mult timp CPU pentru alte procese.

(Imaginile care prezintă formule sunt preluate din articol