Eining 5 / 9

Stýringaralgrím: PID og gervigreind studd stilling

Hagnaður:

  • Geta til að útskýra og beita P, I, D hugtökum og áhrifum PID stjórnanda á gervigreind með réttu samhengi
  • Geta til að framkvæma Ziegler-Nichols og tilraunastillingaraðferðir skref fyrir skref með hjálp gervigreindar
  • Hæfni til að þekkja og útrýma PID gildrum eins og samþættum vindum, afleiddum hávaða í AI ráðleggingum

Halda hitastigi ofns stöðugu, keyra hraða mótor á æskilegu gildi, jafnvægi á horn dróna; Kjarninn í þeim öllum er stjórnunaralgrím. Algengasta þeirra er PID stjórnandi, sem er burðarás iðnaðarins. PID; Það er einfalt, öflugt og vinnur á margs konar vandamálum. En „einfalt“ þýðir ekki „auðvelt að stilla“: rangt stillt PID mun sveiflast, fara fram úr, sitja seint eða verða algjörlega óstöðugt. Gervigreind er dýrmætur aðstoðarmaður hér: hún útskýrir PID hugtök, leiðir í gegnum stillingaraðferðir, greinir dæmigerðar gildrur og skrifar stillikóðann. Hins vegar er lokaaðlögunin gerð með því að skoða líkamlega hegðun kerfisins þíns og stöðugleikaákvörðunin tilheyrir verkfræðingnum. Í þessari einingu förum við yfir hvernig á að setja upp, stilla og sannreyna PID gildrur með gervigreind.

Þrír skilmálar PID

PID bregst við villumerkinu (e = mark - mælt) á þrjá vegu:

tíma

Hvað horfir hann á?

Áhrif

í öfgum

P (hlutfallslega)

núverandi villa

skjót viðbrögð

Sveifla, varanleg villa

ég (óaðskiljanlegur)

Uppsöfnuð fyrri villa

Endurstillir varanlega villu

overshoot, windup, oscillation

D (afleiða)

Hlutfall breytinga á villu

Dempun dregur úr yfirskot

Magnaðu hávaðann

Munnleg samantekt: P svarar spurningunum „hversu langt er ég núna“, ég „hvað hef ég verið lengi í burtu“, D „hversu hratt er ég að nálgast“. Góður stjórnandi kemur öllum þremur í jafnvægi.

flokkur PID: def __init__(sjálf, Kp, Ki, Kd, output_min=-100, output_max=100): self.Kp, self.Ki, self.Kd = Kp, Ki, Kd self.out_min, self.out_max = output_min, output_max self.integral = 0.0 self.previous.drror self.previous. dt): villa = skotmark - mæld # P p = sjálf.Kp * villa # I -- sjálf.samþætt með vindvörn += villa * dt i = sjálf.Ki * sjálf.heildin # D -- afleiðu hávaðanæm d = sjálf.Kd * (villa - sjálf.fyrri_villa) / dt sjálf.fyrri_villa ef framleiðsla i + úttakið úttakið Sa + d úttakmarkið = p + self.output_max: output = self.out_max self.integral -= villa * dt # anti-windup: afturkalla integral elif output < self.output_min: output = self.output_min self.integral -= villa * dt return output

Þessi kóði er ekki „þjálfunar-PID“, heldur beinagrind nálægt framleiðslurökfræði: hann felur í sér mettun úttaks og andstæðingur-windup. Mörg einföld PID sem gefin eru af AI fara framhjá þessum tveimur vörnum; Án þeirra, þegar stýrisbúnaðurinn nær takmörkum sínum, mun samþættingin bólgna og kerfið mun yfirstíga óvænt.

Ábending: Þegar þú spyrð gervigreindina um PID, segðu „bættu við framleiðslumettun og and-windup, notaðu afleiðu við mælingu á afleiðutíma“. Þessar þrjár viðbætur breyta kennslubókinni PID í reitinn PID.

Integral Windup og Afleidd Noise

Tvær klassískar gildrur eru algengustu orsakir PID bilunar:

Integral windup: Þegar stýrisbúnaðurinn mettast (t.d. er mótorinn þegar á fullu afli) er villa viðvarandi og samþættan lið heldur áfram að stækka. Þessi uppblásna samþætting leiðir til mikillar yfirskots þegar kerfið nær markmiðinu. Lausn: stöðva eða snúa til baka samþættinguna þegar framleiðslan er mettuð (anti-windup, sýnt í kóðanum hér að ofan).

Afleiðuhljóð: D-hugtakið tekur afleiðu villunnar; Afleiðan af hávaðasömum mælingu er miklu háværari og mun titra stýrisbúnaðinn. Lausnir: taka afleiðuna úr mælingunni (afleiða mælingarinnar í stað villunnar), bæta lágrásarsíu við afleiðuheitið.

# Að draga úr afleiðuhljóði: mælingarafleiða + filterd_raw = -(mælt - sjálf.previous_measured) / dt í stað villu

gervigreind er góð í að bera kennsl á þessar gildrur; Ef þú segir „PID minn skýtur verulega yfir þegar það nær markmiðinu“, mælir það með upprifjun. En þú staðfestir með því að mæla hvort lagfæringin virkar á kerfinu þínu.

Umgjörð með Ziegler-Nichols

Klassísk aðferð til að finna hagnað (Kp, Ki, Kd) frá grunni er Ziegler-Nichols. Kjarni þess: byrja aðeins með P og auka Kp þar til kerfið fer í viðvarandi sveiflu; Reiknaðu Kp, Ki, Kd út frá töflunni með mikilvæga ávinningnum Ku og sveiflutímabilinu Tu á þessum tímapunkti.

stjórnandi

kp

Ti

Td

P.

0,5·Ku

P.I.

0,45·Ku

Þri/1.2

PID

0,6·Ku

Þri/2

Þri/8

Ziegler-Nichols skref (áformað að gera af AI):1. Taktu Ki=0, Kd=0. Keyrðu bara P.2. HÆGT auka Kp þar til stöðugt, viðvarandi sveifla hefst.3. Þetta Kp = Ku (mikill hagnaður), sveiflutímabil = Tu.4. Reiknaðu Kp, Ti, Td út frá töflunni; Ki = Kp/Ti, Kd = Kp*Td.5. Byrjaðu á þessum gildum, gerðu síðan tilraunabreytingar.

Varúð: Ziegler-Nichols færir kerfið vísvitandi að stöðugleikamörkum (viðvarandi sveiflu). Það er hætta á vélrænni álagi, ofstraumi og hættu þegar þetta er gert á alvöru vélbúnaði; Ef mögulegt er, gerðu það í uppgerð fyrst, vinndu síðan með lága aflmörk og E-stopp í vélbúnaði. Ku sem gervigreindin leggur til er upphafspunktur, hann er mældur og staðfestur í kerfinu þínu.

AI-aðstoð greining

Þú getur greint PID hegðun með því að lýsa því fyrir gervigreindinni. Einkenni → möguleg orsök kortlagning:

einkenni

hugsanleg orsök

Stefnan sem AI mun stinga upp á

hægur setur

Kp/Ki lágt

hækka kp

Varanleg villa

Ég er fjarverandi eða mjög lágt

Ki bæta við/hækka

Yfirskot + sveifla

Kp/Ki hátt, engin D

Bæta við Kd, minnka Ki

Stýribúnaðurinn titrar

afleiddur hávaði

Sía/minnka D

Þegar þú nærð stóru yfir

óaðskiljanlegur vindur

Bættu við vindvörn

Veik kvaðning / sterk kvaðning

WEAK:"Give the PID gains."(Hvaða kerfi? Hvernig er hegðunin? Eru einhverjar mælingar? Tilviljunarkenndar tölur koma.)STERKT:"Ég er að stilla PID fyrir DC mótor hraðastýringu. Eins og er, Kp=2, Ki=0.5, Kd=0. Það fer yfir 35% á þrepainntakinu og þegar það nær markinu tekur það langan tíma yfir skotið; 100 Hz Listaðu mögulegar ástæður frá þessum einkennum, sem fá "Stingdu upp á hvaða átt ég ætti að breyta því og segðu mér hvernig á að prófa hvort yfirskotið sé óaðskiljanlegur vindur."

Mini Case

Kerem stýrifræðingur stillir hitastýringu á pressuvél. Með þeim ávinningi sem gervigreindin leggur til nær kerfið markmiðinu fljótt, en við hverja breytingu á settinu gerir það mikla yfirskot og sest hægt niður. Kerem útskýrir einkennin fyrir gervigreind; AI grunar að það sé samþætt vindur vegna þess að hitarinn helst á fullu afli (mettaður) um stund. Kerem bætir and-windup við PID kóðann og yfirskotið minnkar verulega. En nú er örlítið flökt við úttak hitara; Hann rekur þetta til D-hugtaksins sem magnar hávaða hitaskynjarans og bætir lágrásarsíu við afleiðuna. Að lokum staðfestir það ávinninginn með Ziegler-Nichols gróflega og framkvæmir tilrauna fínstillingu. AI hefur hraðvirka greiningu; En Kerem staðfesti hverja leiðréttingu með því að mæla raunverulegt skrefsvörun - hvort sem vindurinn var leiðréttur eða flöktið horfið var aðeins hægt að sjá það myndrænt.

Algeng mistök

  • Mistókst að bæta framleiðslumettun og and-windup við PID og upplifir mikla yfirskot á stýrismörkum.
  • Að taka afleiðuna úr afleiðu hávaðamælingarinnar og titra stýrisbúnaðinn.
  • Að því gefnu að dt sé stöðugt, en sýnatökutímabilið er breytilegt.
  • Framkvæmir Ziegler-Nichols sveifluprófið á vélbúnaði án öryggisráðstafana.
  • Samþykkja gervigreindartekjur sem „endanlegar“ án kerfissértækrar staðfestingar.
  • Að breyta einum ávinningi með mjög stórum skrefum og ýta kerfinu í óstöðugleika.

Í stuttu máli

  • PID; Það bregst við P (núverandi villa), I (uppsöfnuð villa), D (hraði villubreytingar).
  • PID reits ætti að innihalda úttaksmettun, and-windup og afleidd síu.
  • Integrated windup stór yfirskot, afleiddur hávaði veldur titringi stýrisbúnaðar.
  • Ziegler-Nichols gefur byrjun til að ná; Það er útfært með öryggisráðstöfunum í vélbúnaðinum.
  • Gervigreind er hröð í greiningu frá einkennum til orsaka; Leiðréttingin er staðfest með mælingu.
  • dt raunverulegt mælt; Tekjubreytingar eru gerðar í litlum skrefum og athugun.

Umsóknarverkefni

Veldu kerfi (raunverulegur mótor/hitari eða einfalt fyrsta/annar röð líkan í Python) og láttu gervigreindina búa til PID flokk með mettun + vindvörn. Síðan: (1) fylgstu með sveifluhegðuninni með því að byrja aðeins á P og auka Kp, (2) bæta við Ki til að útrýma varanlegu villunni og sjá hvernig yfirskotið eykst, (3) bera saman áhrifin á stóra yfirskotið með því að kveikja og slökkva á andvörn. Teiknaðu skrefaviðbragðið við hvert skref og athugaðu hvaða ávinningur breytir hvaða hegðun. Berðu saman hagnaðinn frá Ziegler-Nichols við hagnaðinn sem þú fannst sjálfur.