SistemeIncorporate Curs 6 Sisteme de Control
ModelareaSistemelorIncorporate Un sistem incorporat este un sistem dinamic Sistemul actioneaza in functie de stimulii primiti Atuncicandunasaumaimulteiesiriale sistemului trebuiesase conformezeanumitorreguli, un controller manipuleaza intrarea sistemului pentru a aduce iesirile la valorile dorite. Sistemul poate fi afectat de perturbatii exterioare Parametriide intraretrebuiecalculatiin functiede erori si de parametrii de iesire.
SistemeDinamice Exemple: Termostatarea unei incinte Controlul vitezei de rotatie a unui hard-disk Controlul altitudinii de zbor Cruise control/traction control Surse de alimentare Controlul miscarii pentru robotii industriali
ControlulSistemelor Aplicarea unor valori la intrarea sistemului pentru care iesirea acestuia se conformeaza unei valori de referinta. Cruise-control: f_motor(t)=? viteza=60 km/h Server E-commerce: Alocarea resurselor? T_raspuns = 5 sec Networking: Rata de transfer? Intarziere = 1 sec
Tipuride sistemede control Sisteme in bucla deschisa Referinta Intrare Iesire Controller Sistem Sisteme cu reactie Referinta Eroare Masurata Controller Intrare Sistem Iesire Valori Iesire Masurate Senzori
Sistemein bucladeschisa Calculeaza valorile de intrare fara a masura variabilele de sistem Simplu de implementat Trebuie cunoscute exact TOATE VARIABILELE din sistem ca totul sa mearga cum trebuie Cruise-control: frecare(t), unghi_plan(t) Server E-commerce: Incarcarea(rata de sosire a cererilor? Consumul de resurse?); sistem (timp de service? defectiuni?) Sistemele in bucla deschisa dau gres atunci cand Nu stim totul Facem erori de modelare Lucrurile se schimba
Sistemelecu reactie Ceestereactia? Intoarcereauneipartidin iesireaunuisistemla intrarea acestuia in scopul auto-corectarii. Presupune interconectarea mutuala a doua sau mai multe sisteme Relatiacauza efecte dificilde stabilit. Sisteme interdependente Feedback-ul este prezent oriunde in sistemele naturale si artificiale Sistem 1 Sistem 2
Exemplu#1 Regulator de viteza Flyball governor (1788) Reguleaza viteza unui motor cu aburi Reduce efectele variatiei de sarcina (rejectia perturbatiilor) Produce accelerarea revolutiei industriale Greutatile se indeparteaza odata cu cresterea vitezei de rotatie Supapase inchide, micsorand turatia motorului Motor cu aburi Regulator
Control = Senzori+ Calcule+ Efectoare Actioneaza Pedalade acceleratie Simte Viteza Calculeaza Legeade control Teluri: 1. Stabilitate: Sistemul isi mentine starea de-a lungul timpului(ruleaza cu viteza constanta) 2. Performanta: Sistemul reactioneaza rapid la schimbari(accelereaza de la 0 la 100 km/h) 3. Robustete: Sistemul tolereaza perturbatiile (masa, frecare, unghiul pantei etc.)
Celedouaprincipiide control Robustete la nesiguranta prin feedback Reactia asigura performante marite chiar si la variatiile neprevizibile ale variabilelor de sistem Amplificatoare care functioneaza corect chiar daca valorile componentelor variaza Ideeade baza: masurareacu acuratetea diferentei dintre comportamentul obtinut si cel dorit; corectare prin calcul si efectori. Designul comportamentului dinamic prin feedback Reactia permite modificarea caracteristicilor dinamice ale unui sistem Exemplu: Imbunatatirea manevrabilitatii pentru avioanele instabile Ideea de baza: Interdependenta modifica comportamentul normal
Exemplul#2 Cruise Control Stabilitate/performanta Vitezasteady state (Vss) se apropie de viteza dorita pentruk-> Raspuns lin, fara depasire sau oscilatii Rejectia perturbatiilor Efectele perturbatiilor (dealurile) sunteliminate candk-> Robustete Rezultatelenu depindde valorilefactorilorm, b, k pentru k suficient de mare.
Exemplul#3 Zboruluneiinsecte SENZORI Senzori giroscopici Ochi compusi Creier ~ 500.000 neuroni Muschi specializati Aripi SISTEM DE CALCUL EFECTOARE
Aplicatiilemoderneale sistemelorcu Sisteme de zbor Fly-by-wire UAV Robotica Determinareaexacta a pozitiei pentru operatii precise Mediigreuaccesibile: spatiu, mare, operatii non-invazive reactie Procesechimice Regulareatemperaturii, vitezei de reactie, dozarea reactantilor Comunicatii si retelistica Amplificatoare si repetoare de semnal Power management pentru comunicatiile wireless Automobile Controlulmotorului, tractiunii, climatizarii, stabilitatii etc. Si multe altele.
Functiade transfer Functia de transfer a sistemului
Exemplu: Sursade tensiune Cerinte: Vreausaproiectezo sursade tensiunecare sa furnizeze o tensiune fixa indiferent de variatia tensiuniide intraresaua sarciniide la iesire saaibao eficientacat maimare Uin Sursa Uout Rload
Solutia 1: DivizorRezistiv Putereatotala: P = 10V * 14mA = 140mW Putereadisipatain rezistente: Pd= 5*1 + 6.9*10 + 8.2*3 = 96.6mW 70% din putere este pierduta in conversia de tensiune Este, probabil, cea mai proasta solutie
Altesolutiimaibune? Ce-ar fi sa folosim componente fara pierderi? Inductanta Condensator P a U = I L Z = 2 = Re{ S} = Re{ UI } = Re{ I jωl} = 0 L I L jωl L P a = U = I C Z = Re{ S} = Re{ UI C I L 1 ( j ) Cω } = Re{ I 2 C 1 ( j } = 0 Cω Comutator P= I U = 0 U =0 P= I U = I 0= 0
Solutia 2: Sursain comutatie Folosindcondensatoare, bobinesicomutatoarese poateface eficient conversia
Functiade transfer V V X O = = D V s 2 S LC 1 + s L R V + 1 X V = L R O V S 2 s LC D + s + 1
Indicatoride Performanta Referinta Variabila controlata Overshoot Eroare Steady state ±ε% Stare Dinamica Timp de stabilizare Steady State Timp
ProprietatileControllerelor Stabilitate Iesirea urmareste intrarea pentru orice tip de semnal de intrare In controlul proportional, stabilitatea este estimata prin stabilirea daca polii functiei de transfer au modulul mai mic decat 1
ProprietatileControllerelor Acuratete Acurateea este data de marimea erorii de steady-state. In controlul proportional, acuratetea este calculata in raport cu castigul functiei de tranfer pentru o valoare de referinta a intrarii. Eroarea este zero daca si numai daca acest castig este 1.
ProprietatileControllerelor Depasirea superioara (Overshoot) Este o proprietate a raspunsului la o excitatie de tip treapta a intrarii. Depasirea superioara este caracteristica pentru un comportament oscilant al sistemului. O valoare mare pentru overshoot va fi urmata de obicei de o depasire inferioara (undershoot).
Tipuride control Control Proportional (P) Control Proportional Integral (PI) Control Proportional Diferential(PD) Control PID
Control Proportional Unadintrecelemaides intalnitebuclede control Iesirea controllerului este direct proportionala cu eroarea Produce rezultate bune pentru majoritatea aplicatiilorundeparametriide functionarenu sunt critici(overshoot, stabilitate, eroare steady-state)
Control Proportional R(s) + E(s) U(s) G(s) Y(s) - Controller Sistem Tinta K p E( s) = R( s) Y( s) U( s) = K E( s) Y ( s) = G( s) U( s) P KP G( s) H( s) = 1+ K G( s) P
Exemplu Controlul temperaturii unei incinte Termostatcu 2 praguri: 80 si60 grade C (bang-bang) Control proportional
Raspunsulla semnalde tip treapta www.embedded.com
CaracterizareaControluluiP Ecuatia caracteristica a sistemului: 1 + G( s) = K P 0 Cand Kp-> 0, solutiile urmatoarei ecuatii sunt polii lui G(s): 1 G( s) + K p Cand Kp->infinit, solutiile urmatoarei ecuatii sunt zerourile lui G(s): 1 K p = + G( s) = 0 0
Stabilitate Sistemul cu control proportional este stabil dacapentruo anumitavaloarea luikp, toti polii sunt in interiorul cercului unitate (modul< 1). Oricesistemcare are celputinun zero la infinitvadeveniintotdeaunainstabilpentruo valoaresuficientde mare a luikp.
Acuratete e ss K p e ss = = = lim k > G ( r( k) H ( s)(1 ( s) H y( k)) ( s)) lim 1 e( k) = lim > 1+ K G( s 0 k s > Eroareade stare stabilaestecu atatmaimica cu cat Kpestemaimare. = r ss P y ss )
EstimareaKp Cevaloarea luikpalegpentruca sistemulmeu sa fie cat mai performant? Exemplu: controllerul de temperatura Controller Sistem tinta R(s) + E(s) U(s) Y(s) - K p b s a
Efectepentrudiferitevaloriale Kp G( s) 0.43 = s 0.47 Evolutia sistemului in timp in functie de Kp K P = 1, polul functiei de transfer este aproape 0, e ss este mare. K P = 2, pol in -0.51, overshoot si oscilatie. K P = 3, pol la -1, oscilatie. K P = 3.5, pol la -1.25, sistemul este instabil.
ConcluziiControl P + Este foarte usor de implementat + Stabilitate buna daca alegem Kp potrivit - Timp destul de indelungat pentru stabilizare - Poate intra foarte usor in oscilatie - Pentruvaloridin cein cemaimariale Kpsistemul devine instabil - In general, unasaumaimultecerinte(eroarede stare stabila, depasire, oscilatie) suntimposibilde satisfacut pentru orice valoare a Kp
Control Integral Folosit pentru a adauga precizie pe termen lung sistemului Aproape intotdeauna este folosit in conjunctie cu controlul proportional (PI) Controllerul insumeaza erorile trecute pana cand iesirea ajunge la valoarea de referinta
Control integral pur Raspunsul controlului I este lent si uneori poate produce oscilatia sistemului. De cele mai multe ori este preferatcontrolulpi. www.embedded.com
Control Proportional-Integral Iesirea controllerului este direct proportionala cu integrala tuturor erorilor trecute. Controller Sistem Tinta r(t) + e(t) u(t) K p e(t) g(t) y(t) - K I t 0 e( τ) dτ
Functiade transfer PI K p E(S) G(s) R(s) E(s) Y(s) + - U(s) Controller Sistem Tinta K I E(S)/S ) ( ) ( ) ( s Y s R s E = s s E K s E K s U I P ) ( ) ( ) ( + = ) ( ) ( ) ( s U s G s Y = ) ( ) ( 1 ) ( ) ( ) ( s G s K K s G s K K s H I P I P + + + =
Exemplu Pentru controllerul de temperatura: www.embedded.com
e ss = lim k > e( k) = Acuratete KI Ecuatia caracteristica: 1 + KP+ G( s) = 0 s lim0 s > 1 K I 1 + K P + G ( s s ) Eroarea steady-state este zero cat timp sistemul este stabil.
ImplementareControl PI double iterm; // calculeaza termenii PI // intre doua limite pid->istate += error; if (pid->istate > pid->imax) pid->istate = pid->imax; else if (pid->istate < pid-> imin) pid->istate = pid->imin; iterm = pid->igain * istate; // calculeaza factorul integral
ConcluziiPI ControlulIntegral purare un timpde raspuns lent si poate produce oscilatia sistemului ControlulPI are un timpde raspunsmaimic decati pur. Cande stabil, PI ajungeintotdeaunala valoarea de referinta(ess = 0)
Control Diferential Controlul P trateaza comportamentul prezent al sistemului ControlulI trateazacomportamentultrecutal sistemului Dacanu stimcum o sase comportesistemul, nu avem cum sa-l stabilizam. Anticiparea comportamentului-> stabilitate marita Controlul D monitorizeaza viteza de schimbare a erorii sistemului
Control PD Controlul diferential este cel mai puternic dar si cel mai problematic. Sistemul devine instabil la zgomot si la neregularitati de esantionare.
Control Proportional-Diferential Iesirea controllerului este direct proportionala cu rata de cresterea erorii. Controller Sistem Tinta r(t) + e(t) u(t) K p e(t) g(t) y(t) - K D e( τ) τ
Functiade transfer PD Controller Sistem Tinta R(s) + E(s) U(s) K p E(S) G(s) Y(s) - K D E(S)*s E( s) = R( s) Y( s) U( s) = K E( s) + K se( s) Y ( s) = G( s) U( s) P D ( K H( s) = 1+ P + sk ) G( s) ( K + sk ) G( s) P D D
Acuratete Ecuatia caracteristica: ( K + sk ) G( ) 0 1 + s = P D e ss = lim 1 e( k) = lim > 1 + s ( K + sk ) G ( ) k s > 0 + P D s Pentruess, PD se aseamanacu controlulp. Sitemul poate avea probleme in atingerea valorii de referinta.
ImplementareControl PD double dterm; dterm = pid->dgain * (position - pid->dstate); pid->dstate = position;
ConcluziiPD ControlulPD are un timpde raspunsfoartemic Anticipeaza comportamentul viitor al sistemului folosindu-se de variatia erorii masurate Este foarteutilintr-un sistemde control fin al miscarii/pozitieidatoritavitezeicrescutede raspuns Sensibilitate crescuta la zgomote si perturbatii datorata factorului de amplificare mare. Controlul PD pot fi folosit pentru miscsorarea depasirii superioare(overshoot) in locul sistemelor cu control P.