Navigacija
Lista poslednjih: 16, 32, 64, 128 poruka.

Podesavanje PID parametara primenom Ziegler-Nichols metode

[es] :: Elektronika :: Podesavanje PID parametara primenom Ziegler-Nichols metode

Strane: < .. 1 2 3

[ Pregleda: 16827 | Odgovora: 57 ] > FB > Twit

Postavi temu Odgovori

Autor

Pretraga teme: Traži
Markiranje Štampanje RSS

zivadin_despot
Živadin Despotović
Novi Sad

Član broj: 175438
Poruke: 704
*.dynamic.isp.telekom.rs.



+5 Profil

icon Re: Podesavanje PID parametara primenom Ziegler-Nichols metode03.01.2015. u 13:13 - pre 113 meseci
Hvala na pojasnjenju...posle praznika cu poceti sa prakticnim eksperimentima. Probacu vise metoda na vise sistema a rezultate cu ovde postavljati, radi diskusije. Radi cu sa STM33F4, i sad pitanje za moderatora, da li da diskusiju oko programa ovde vodimo ili u posebnoj temi na mikrokontrolerim?
 
Odgovor na temu

zivadin_despot
Živadin Despotović
Novi Sad

Član broj: 175438
Poruke: 704
*.dynamic.isp.telekom.rs.



+5 Profil

icon Re: Podesavanje PID parametara primenom Ziegler-Nichols metode03.01.2015. u 13:21 - pre 113 meseci
Jos neke literature vezano za ovu metodu...(i opste). Ovde na 175 strani je praktican eksperiment, gde je sistem ljuljao oko neke manje vrednosti, proracunao parametri i zatim pratio odziv kada zada neki veci SP (grafici). Ovde je na poslednje 2 strane takodje objasnjeno na kojim vrednostima odredjuje parametre, tkz faza 1 i faza 2. Tu je tacno navedeno stanje ono o kom sam ja pricao, da se sitem dovede u neko stanje, zatim se upravljacka digne za 5%, ali sta ako to ne rezultira dolazak do SP:
Citat:

The process output may be far from the desired
equilibrium condition when the regulator is
switched on. In such cases it would be desirable to
have the system reach its equilibrium automatically.
For a process with finite low-frequency gain there is
no guarantee that the desired steady state will be
achieved with relay control unless the relay
amplitude is sufficiently large. To guarantee that the
output actually reaches the reference value, it may
be necessary to introduce manual or automatic
reset.


Dakle zapocecu po savetima Veselinovica i Dragoljuba, on-off metodom dovesti sistem do SP i onda ga usko ljuljati oko te vrednosti....

Javljam se malo kasnije...
Srecni praznici
 
Odgovor na temu

macolakg
Dragoljub Aleksijevic
Kragujevac

Član broj: 301424
Poruke: 3227
*.adsl.eunet.rs.



+1095 Profil

icon Re: Podesavanje PID parametara primenom Ziegler-Nichols metode04.01.2015. u 00:54 - pre 113 meseci
Živadine,

Evo još par praktičnih saveta pošto ćeš verovatno za početak eksperimentisati sa sistemom prvog reda:

Ako želiš sve te probe izvršiti na nekom improvizovanom sistemu sa prilično malom inercijom, onda upotrebiš malu kartonsku kutiju, sijalicu unutra i sondu na izvesnom rastojanju od sijalice.
Sasvim jevtino i pravi se za 5 minuta od onog što uvek imaš u kući.
Transportno kašnjenje menjaš rastojanjem sonde od sijalice i (ili) promenom visine sonde u kutiji.
Gubitke namestiš nekom omanjom rupom na gornjoj strani kutije.
Istom kutijom možeš uz malo pomeranja sonde imati nekoliko različitih tjuninga PID-a.

Staviš bitno veću kutiju i promeni se sve to za red veličine veoma lako.
Sasvim jevtino a radi. Naravno za jedan eksperiment sonda ne sme menjati položaj dok taj konkretni eksperiment ne odradiš. Vežeš sondu na primer nekom žicom kroz sam karton (probušiš dve rupice).
Što se tiče same kartonske kutije, podneće i više od 300*C na površini kartona. Smrdeće malo ali se neće zapaliti na toj temperaturi. To je sasvim dobar raspon jer imaš na raspolaganju od sobne temperature do možda čitavih 300*C.

Napraviš izlaz sa trijakom kog pogoniš optotrijakom bez zero crossing, na primer MOC3021. Tako ti je galvanski rastavljeno od MCU, a može se LED od MOC3021 pobuditi direktno iz pina, eventualno sa emiter folower-om od nekog BC546 ili slično ako taj MCU ima manji kapacitet pina od 20mA.

Taj način je vrlo zgodan za vežbu jer možeš eksperimentisati sa vrlo sporim PWM, čiji je period nekoliko ili više sekundi (imitacija releja ili kontaktora), a možeš ga i "ubrzati" sve do faznog zaseka, gde ti sam period izvršnog organa bude 100Hz.
Takođe i možeš navežbati regulaciju celim periodama, čim odstranjuješ smetnje zbog toga što vršiš komutaciju oko prolaza kroz nulu.
Tako lepo možeš videti kako će se odraziti period PWM na ceo sistem, a u zavisnosti od inercije sistema.
To je vrlo bitna stavka između ostalih.

Ako ti pak treba vrlo inertan sistem, onda posuda sa vodom i neki omanji potapajući grejač.
Za samo litar tekuće vode treba čak oko 4186W unešene energije za prirast temperature od 1*C/sek.
Sistem je prilično linearan ako je posuda izolovana i ako ne stigneš do blizu promene agregatnog stanja.
Voda u tečnom stanju je tu pravi izbor jer ima veću specifičnu toplotu od svih ostalih materija na planeti.

Pozz



 
Odgovor na temu

zivadin_despot
Živadin Despotović
Novi Sad

Član broj: 175438
Poruke: 704
*.mts.telekom.rs.



+5 Profil

icon Re: Podesavanje PID parametara primenom Ziegler-Nichols metode07.01.2015. u 22:43 - pre 113 meseci
Pozdrav, evo kako izgleda kutija za eksperimentisanje...Dakle koristim grejac iz kucnog fena (800W), postavlja se u kutiju, gde sa jedne strane imam ventilator, a sa druge strane izlaz za merenje. Sistem lako mogu usporiti, tako sto kutiji zatvorim rupe, a ventilator skinem, a moze se ispitivati i brzi kada se ukljuci i ventilator...
Sledece nedelje ide i elektronika, a zatim i regulacija
Evo par slika.
Srećan Božić svima




Prikačeni fajlovi
 
Odgovor na temu

zivadin_despot
Živadin Despotović
Novi Sad

Član broj: 175438
Poruke: 704
*.dynamic.isp.telekom.rs.



+5 Profil

icon Re: Podesavanje PID parametara primenom Ziegler-Nichols metode18.01.2015. u 22:28 - pre 112 meseci
Pozdrav...
Eksperimentisanje se privodi kraju. Ne znam da li sam opisao elektroniku, ali ovako ona principskie izgleda: Kontroler je STM32F4 i na upravljackoj PCB imam TRIJAK, detekciju prolaska kroz nulu (mrezni napon), regulacija ventilatora, i merenje temperature NTC 47k. Kao sto sam rekao, za prvi eksperiment cu raditi sa on-off (ventilator je na max), dakle postupak je da grejac drzim ukljucenim dok je PV<SP u suprotnom ga gasim i na osnovu toga odredim pid parametre. Radi sticanja osecanja ukljucivao sam grejac sa odredjenim faktorom ispune i cekao ustaljeno stanje, vidi se na slikama. Grejac je iz fena snage cca 1,2kW (prespojen je bimetal).
Nakon prvog eksperimenta sam dobio lepe rezultate, stabilne ne prigusene oscilacije iz kojih sam proracunao parametre. Vidi se sve na slikama.
Ostalo je samo da pokrenem pid i da vidim odziv. (upravljanje ce biti relejno a faktor ispune ce biti rezultat pida. Maksimalan prozor rada releja ce biti 1 do 2 sekunde, jer mi se za to vreme t promeni za oko 0,5-1 stepen). Okacicu rezultate samog pid-a. Sada su proracunati njegovi parametri.
Da ne dodje do zabune PI kontroler ce biti realizovan.

Faktor ispune: 40%


Faktor ispune: 16%



Na prvom grafiku se vidi da je stacionarno stanje na oko 70 stepeni, nakon cega je smanjen faktor ispune i t je oko 50 stepeni.
Ventilator je konstantan na max, za sada se ne regulise (ostavljena je mogucnost regulacije, radi testiranja sistema sa dve upravljacke velicine)
Prikačeni fajlovi
 
Odgovor na temu

zivadin_despot
Živadin Despotović
Novi Sad

Član broj: 175438
Poruke: 704
*.dynamic.isp.telekom.rs.



+5 Profil

icon Re: Podesavanje PID parametara primenom Ziegler-Nichols metode18.01.2015. u 22:36 - pre 112 meseci
Prilikom proracuna Kp i Ki, izostavljena je prva oscilacije...!
 
Odgovor na temu

macolakg
Dragoljub Aleksijevic
Kragujevac

Član broj: 301424
Poruke: 3227
*.adsl.eunet.rs.



+1095 Profil

icon Re: Podesavanje PID parametara primenom Ziegler-Nichols metode19.01.2015. u 00:55 - pre 112 meseci
Super se snalaziš Živadine!

Primetio si da se nikada ne bavim onim što možeš naći na internetu, već obično dajem neke praktične savete koji se ređe nađu u pisanom obliku.

Citat:

Radi sticanja osecanja ukljucivao sam grejac sa odredjenim faktorom ispune i cekao ustaljeno stanje, vidi se na slikama.



Kao što sam ti ispričao u jednom od prethodnih postova, nikakvo sticanje osećaja ti nije potrebno.

Za pronalaženje faktora popune (faktora režima, duty ili PWM, kako god), bilo ti je potrebno samo da zadaš željenu temperaturu stacionarnog stanja, potom uključiš spravu kao običan off-on regulator. U tvom slučaju može i bez histerezisa pošto trijaku ni malo neće zasmetati kvazistabilnost dok ostvarena vrednost preseca zadatu vrednost.
Releju ili kontaktoru bi to bio problem ako je taj prolazak monoton, te bi se moglo javiti "treperenje", što za relejne naprave nije preporučljivo, dok sa trijakom nema tih problema.

Dakle, namestiš set point na željenu temperaturu stacionarnog stanja, uključiš najobičniju off-on regulaciju:
- iznad set point isključi
- ispod set point uključi.
I čekaš...

Sistem ima neminovno kašnjenje, te će kod prvog uzlaznog prolaska kroz set point slediti preskok, potom će opet zbog kašnjenja sistema slediti prolazak na dole i neminovan podbačaj.

Naravno prvu oscilaciju ne uzimaš ni ovde u obzir, već možda treću-četvrtu.
Te oscilacije će imati stabilnu periodu i amplitudu prebačaja i podbačaja, sve to zavisno isključivo od transportnog kašnjenja sistema i gubitaka stacionarnog stanja.

Osrednjena vrednost tog "talasanja", koje je uzgred veoma pravilno i ritmično ako ne menjaš karakteristike sistema, tj. gubitke i transportno kašnjenje, je strogo temperatura koju si i tražio.
Odnosno srednja vrednost temperature tvog sistema, koji je jednostavnih karakteristika i na temperaturama gde ne moraš brinuti o naglom prirastu gubitaka zbog infra emisije, će biti jednaka tvom set point.

Jednostavno izmeriš odnos vremena uključenog i isključenog stanja tih sopstvenih oscilacija i to ti je skoro precizno vrednost PWM stacionarnog stanja za tu temperaturu. Upravo tu vrednost PWM ćeš kasnije upotrebiti za ono što želiš, samo naravno sa višom frekvencijom tako da sistem tvoj pravi PWM dosta fino izintegrali zato što je mnogo puta sporiji od samog PWM, a ti pri tom posle imaš to što sada imaš za Zeigler-Nichols, što se tiče "ispeglanosti" tog tvog oscilograma.

Dakle, PWM nisi morao da napipavaš. Ovako se sam "kaže".

Dalje, off-on regulacija mora uspostaviti sopstvene oscilacije sistema, osim ako transportno kašnjenje nije nulto (što je u praksi nemoguće), i te oscilacije imaju jasan period i duty-cycle.
Nijhova perioda je potpuno srazmerna transportnom kašnjenju sistema, a dutu-cycle stacionarnim gubicima, onda vidiš jasno nagibe promena, površine prebačaja i podbačaja i td i td...

Pomnožiš snagu grejača sa tim duty i imaš savršen podatak o tome koliko W gubi sistem u stacionarnom stanju.

Kod sistema kod kog ne postoji opasnost od preskoka neke temperature, poput inkubatora za spermatozoide ili sličnih kontrola vezanih za organsku hemiju ili žive sisteme, ili možda neke druge ultra zahtevne procese, ti uvek možeš u prvom "udaru" uključiti najjednostavniju off-on metodu i iz nje jednopotezno saznati skoro sve potrebno o sistemu.

Tu saznaš stacionarne gubitke, transportno kašnjenje, da li ti je dovoljna snaga grejača i koliko "viška" imaš na raspolaganju, takođe sa istom tom metodom koju primeniš u nekoliko različitih set point, imaš odmah krivu gubitaka vs temperatura, odnosno svaki set point će imati svoju vrednost PWM koju upišeš lepo u tabelu.
U prevodu, već unapred imaš podatke za feed forward, ako ga nameravaš upotrebiti (a to je junačka stvar jer može veoma povećati brzinu odziva i smanjiti složenost samog PID).

I tako dalje i tako dalje...

Ako ne vršiš promenu agregatnog stanja materije koju zagrevaš (problem "zakucane" temperature bez obzira na snagu, a zbog latentne toplote), tvoj sistem možeš u nekim užim granicama smatrati prilično linearnim, i tome posvetiš PID, dok feed forward upotrebiš za grubo dovođenje do neke približne vrednosti ispod set point.

Nadam se da će ti ovi praktični saveti biti od pomoći?

Pozdrav drugar

P.S.

Zaboravih:

Čak i kod tih zahtevnih sistema gde je preskok potencijalno opasan, takođe možeš naterati sistem da ti se sam "izjasni", običnom off-on metodom, samo naravno sa predviđanjem (sada već iskustveno), dovoljno daleko ispod budućeg set point, tako da ti gornji pik nikad ne dohvati opasnu zonu.
Kod tih sistema koji nisu previše nelinearni, i ako to radiš na nekoj margini od radne set point ipak ćeš imati obilje korisnih podataka na raspolaganju.
 
Odgovor na temu

macolakg
Dragoljub Aleksijevic
Kragujevac

Član broj: 301424
Poruke: 3227
*.adsl.eunet.rs.



+1095 Profil

icon Re: Podesavanje PID parametara primenom Ziegler-Nichols metode19.01.2015. u 01:25 - pre 112 meseci
I još nešto korisno...

Ako na primer vršiš regulaciju nekog sistema gde se vrši promena agregatnog stanja materije, kao na primer kuvanje nečeg u vodi, topljenje metala ili slično tome, onda u neposrednoj blizini temperature koja je tačka promene agregatnog stanja, obavezno isključiš integrator jer bi njegov akumulat žestoko destabilizovao sistem odmah po izlasku iz latentne faze.

Na primer, ako želiš da neku količinu vode zagreješ do ključanja, potom nastaviš da je zagrevaš u vidu vodene pare,
pri 100*C gde započne isparavanje, bila bi ti potrebna beskonačno velika snaga da bi ti se nagib prirasta temperature nastavio na isti način kako je tekao tokom zagrevanja do tih 100*C.
Baš recimo kod vode, za podizanje temperature jednog kilograma vode za 1*C/sek ti treba snaga od približno 4,16 KW, dok za isparavanje tog istog kilograma vode, odnosno za dostizanje 101*C u sledećoj sekundi ti treba 2,2MW snage!!!

Sa nekim realnim snagama faza promene agregatnog stanja traje dugo, i temperatura bude "zakucana" na 100*C (ako je atmosferski pritisak od apsolutnih 1 bar), sve dok i poslednja kap vode ne ispari. Za to vreme integrator koji bi radio, "nakupio" bi ogroman akumulat jer se temperatura ne menja a zahtev za promenom postoji, potom bi taj isti akumulat potpuno i na duži period destabilizovao sistem.

Praktično kod takvih regulacija, integrator se na primer isključi na 99*C, "odspava" sa nultim akumulatom do na primer 101*C, potom mu ponovo dozvoliš aktivnost van tih granica.

pozz
 
Odgovor na temu

zivadin_despot
Živadin Despotović
Novi Sad

Član broj: 175438
Poruke: 704
*.dynamic.isp.telekom.rs.



+5 Profil

icon Re: Podesavanje PID parametara primenom Ziegler-Nichols metode19.01.2015. u 01:30 - pre 112 meseci
Pozdrav,
hvala na svim savetima, uvek pomazu...:)
Evo zavrsio sam i PI regulator. Dakle u prvom delu program sam pronalazi parametre Kp i Ki na Sp=50 stepeni, kada ih pronadje, SP povecam na 75 i ukljucim PI regulator. Odziv se vidi. Preskok je 1,5 stepeni i pik to pik oscilacija je oko 1 stepen (lepo za pocetak)...
Evo i slika za prikaz...
Eksperimentisacu i sa PID pa cu okaciti rezultate.
Na ovom krafiku crvena boja je granica algoritma autotuning (prikaz), nakon odredjenih paramatera ukljucuje se PI regulator sa prozorom rada 2s, i onako kako sam vec naveo.
Na donjem baru se vide rezultati autotuning algoritma


Prikačeni fajlovi
 
Odgovor na temu

zivadin_despot
Živadin Despotović
Novi Sad

Član broj: 175438
Poruke: 704
*.dynamic.isp.telekom.rs.



+5 Profil

icon Re: Podesavanje PID parametara primenom Ziegler-Nichols metode19.01.2015. u 01:34 - pre 112 meseci
Hvala na prakticnim savetima...Svakako mi je plan kad zavrsim eksperimentisanje na ovom sistemu, odradicu sistem sa dve upravljacke (ventilator + grejac), a zatim cu raditi sa vodom, tako da ce mi tad dobro doci saveti :)
 
Odgovor na temu

macolakg
Dragoljub Aleksijevic
Kragujevac

Član broj: 301424
Poruke: 3227
*.adsl.eunet.rs.



+1095 Profil

icon Re: Podesavanje PID parametara primenom Ziegler-Nichols metode19.01.2015. u 01:39 - pre 112 meseci
Lepo! Bravo Živadine! Samo napred drugar!

Drago mi je ako sam makar samo malo pomogao.
Probaj ono sa off-on i probaj da iz tog napraviš autotjuning. Većina tih skupljih regulatora upravo to radi, a za kritične stvari gde se ne sme preskočiti set point, kod njih postoji parametar gde uneseš distancu od set point na kojoj se dogodi autotuning, a posle se ako treba fino ručno dotera na onoj zahtevnoj set point. A neki čak imaju naknadni fini autotuning na toj konačnoj set point.

Pozz

P.S.

Kada budeš video oscilograme off-on regulacije, shvatićeš potpunu povezanost sa Zeigler-Nichols.

Na kraju, ništa te ne sprečava da eto radi zezanja napraviš autotuning za PWM, koji potom upotrebiš za Zeigler-Nichols ako baš tu metodu želiš na taj način kao sada što radiš.

Posle tri off-on ciklusa izmeriš njhov PWMi dodeliš ga tvom pravom PWM-u, i onda nastaviš sa autotuningom kao i do sada. Sve automatski.
 
Odgovor na temu

zivadin_despot
Živadin Despotović
Novi Sad

Član broj: 175438
Poruke: 704
*.dynamic.isp.telekom.rs.



+5 Profil

icon Re: Podesavanje PID parametara primenom Ziegler-Nichols metode19.01.2015. u 01:45 - pre 112 meseci
Sutra cu isprobati to, pa okacim...Veceras za kraj prikaz kada SP spustim na 45 stepeni...Preskok je 2,5 stepeni, podbacaja nema.

Prikačeni fajlovi
 
Odgovor na temu

macolakg
Dragoljub Aleksijevic
Kragujevac

Član broj: 301424
Poruke: 3227
*.adsl.eunet.rs.



+1095 Profil

icon Re: Podesavanje PID parametara primenom Ziegler-Nichols metode19.01.2015. u 01:46 - pre 112 meseci
Vrlo pristojno za prvi pokušaj!
 
Odgovor na temu

zivadin_despot
Živadin Despotović
Novi Sad

Član broj: 175438
Poruke: 704
*.dynamic.isp.telekom.rs.



+5 Profil

icon Re: Podesavanje PID parametara primenom Ziegler-Nichols metode19.01.2015. u 01:49 - pre 112 meseci
Hvala...
Nastavljam sutra :)
Pozdrav, sve najbolje
 
Odgovor na temu

macolakg
Dragoljub Aleksijevic
Kragujevac

Član broj: 301424
Poruke: 3227
*.adsl.eunet.rs.



+1095 Profil

icon Re: Podesavanje PID parametara primenom Ziegler-Nichols metode19.01.2015. u 01:51 - pre 112 meseci
Sad samo zamisli da si imao tabelu sa gubicima stacionarnog stanja, i feed forward metodom odmah dodeliš malo manji PWM nego što ti treba za tih 45*C. To samo lagano i lepo klizne na dole i sasvim fina korekcija posle toga treba.

Vrlo neuznemirujući način promene.

A kad budeš imao i ventilator kao izvršni organ onda ništa brže od toga :-)

Lep pozdrav!

P.S.
Kad budeš sutra ovo pročitao, zainteresuj se za histerezisnu metodu ragulacije kao jedan od najbržih metoda za dovođenje do blizu set point, ili "one cycle control" kao takođe jednu od najbržih metoda za isto to.
Potpuno je nebitno što se one cycle control koristi kod čopera. Pravila su ista i primenljiva na bilo kakvu regulaciju.

Obe metode su žetoko upotrebljive kod profilnih regulacija.

[Ovu poruku je menjao macolakg dana 19.01.2015. u 03:02 GMT+1]
 
Odgovor na temu

macolakg
Dragoljub Aleksijevic
Kragujevac

Član broj: 301424
Poruke: 3227
*.adsl.eunet.rs.



+1095 Profil

icon Re: Podesavanje PID parametara primenom Ziegler-Nichols metode19.01.2015. u 02:05 - pre 112 meseci
Pošto znam da si dosta dugo "navežbavao" sa čoperima (SMPS), shvati ventilator i grejač kao push-pull, transportno vreme kao storage kalem, medijum kao izlazni kondenzator i sve će ti biti jasno za trenutak.

I da ne zaboravim: naravno gubitke kao opteretni otpor.

- Samo grejač = buck
- Grejač-ventilator = sinhroni buck (half-bridge ispred storage)

P.S.

Jbg, uvek se naknadno setim nečeg što nisam rekao :-(

Onaj drugi primer sa sinhronim buck shvati kao half bridge sa tri state izlazom, odnosno treće stanje je "ne pipaj ništa :-)" odnosno sve off.

[Ovu poruku je menjao macolakg dana 19.01.2015. u 03:40 GMT+1]
 
Odgovor na temu

zivadin_despot
Živadin Despotović
Novi Sad

Član broj: 175438
Poruke: 704
*.dynamic.isp.telekom.rs.



+5 Profil

icon Re: Podesavanje PID parametara primenom Ziegler-Nichols metode20.01.2015. u 14:18 - pre 112 meseci
U prethodnom programu sam uocio gresku...Amplitudu oscilacija sam racunao kao MAX-MIN, a treba (MAX-MIN)/2, potkralo se. Kada sam ovo ispravio, rezultati su jos bolji..
Evo i prikaza... Isti mi je odziv i na 90 i na 100 stepeni.

Dragoljube, za vikend cu eksperimentisati sa vasim predlozima, napisacu i prenosnu funkciju mog sistema na osnovu proracuna, i proracunacu gubitke (kao sto ste objasnjavali) pa cemo videti kako ce to sve izgledati. Do vikenda sam zauzet...
Pozdrav

Prikačeni fajlovi
 
Odgovor na temu

zivadin_despot
Živadin Despotović
Novi Sad

Član broj: 175438
Poruke: 704
*.dynamic.isp.telekom.rs.



+5 Profil

icon Re: Podesavanje PID parametara primenom Ziegler-Nichols metode03.02.2015. u 12:52 - pre 112 meseci
Evo kako sve ovo izgleda u matlabu:






Prikačeni fajlovi
 
Odgovor na temu

[es] :: Elektronika :: Podesavanje PID parametara primenom Ziegler-Nichols metode

Strane: < .. 1 2 3

[ Pregleda: 16827 | Odgovora: 57 ] > FB > Twit

Postavi temu Odgovori

Navigacija
Lista poslednjih: 16, 32, 64, 128 poruka.