Qazanclar:
- PID nəzarətçisinin P, I, D şərtlərini və təsirlərini düzgün kontekstlə AI-yə izah etmək və tətbiq etmək bacarığı
- AI köməyi ilə Ziegler-Nichols və eksperimental tənzimləmə üsullarını addım-addım həyata keçirmək bacarığı
- Süni intellekt tövsiyələrində inteqral bağlama, törəmə səs-küy kimi PID tələlərini tanımaq və aradan qaldırmaq bacarığı
Sobanın temperaturunu sabit saxlamaq, motorun sürətini istənilən dəyərdə sürmək, dronun bucağını tarazlaşdırmaq; Onların hamısının mərkəzində nəzarət alqoritmi dayanır. Bunlardan ən çox yayılmışı sənayenin əsasını təşkil edən PID nəzarətçisidir. PID; O, sadədir, möhkəmdir və çoxlu problemlər üzərində işləyir. Ancaq "sadə" "asan tənzimləmək" demək deyil: yanlış təyin edilmiş PID yellənəcək, aşıb, gec oturacaq və ya tamamilə qeyri-sabit olacaq. Süni intellekt burada dəyərli köməkçidir: o, PID şərtlərini izah edir, tənzimləmə metodları ilə bələdçilik edir, tipik tələlərin diaqnozunu qoyur və tənzimləmə kodunu yazır. Bununla belə, son tənzimləmə sisteminizin fiziki davranışına baxılaraq edilir və sabitlik qərarı mühəndisə aiddir. Bu bölmədə biz AI ilə PID tələlərini necə quraşdırmaq, sazlamaq və yoxlamaq barədə danışırıq.
PID-in üç şərti
PID səhv siqnalına (e = hədəf - ölçülür) üç şəkildə cavab verir:
müddət
Nəyə baxır?
Effekt
həddindən artıq
P (mütənasib)
cari səhv
sürətli cavab
Salınma, daimi xəta
I (inteqral)
Yığılmış keçmiş səhv
Daimi xətanı sıfırlayır
həddi aşmaq, sarsıdılma, salınma
D (törəmə)
Səhvlərin dəyişmə dərəcəsi
Söndürmə həddindən artıqlığı azaldır
Səs-küyü gücləndirin
Şifahi xülasə: P "indi nə qədər uzağam", mən "nə qədər uzaqdayam", D "nə qədər sürətlə yaxınlaşıram" suallarına cavab verir. Yaxşı bir nəzarətçi hər üçünü balanslaşdırır.
sinif PID: def __init__(self, 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 selfrorer, özünü hesablamaq.0, Self. ölçülür, dt): səhv = hədəf - ölçülür # P p = öz-özünə.Kp * səhv # I -- qurma mühafizəsi ilə self.integral += səhv * dt i = self.Ki * self.integral # D - törəmə səs-küyə həssas d = self.Kd * (səhv - self.previous_error) / dt self.previous_error) / dt self.previous_error = özünün.previous_səhv = dt +çıxış limiti windup if output > self.output_max: output = self.out_max self.integral -= error * dt # anti-windup: inteqralı ləğv elif çıxışı < self.output_min: output = self.output_min self.integral -= xəta * dt çıxışı qaytarın
Bu kod "təlim PID" deyil, istehsal məntiqinə yaxın bir skeletdir: o, çıxış doyma və anti-windup daxildir. Süni intellekt tərəfindən verilən bir çox sadə PID-lər bu iki mühafizədən yan keçir; Bunlar olmadan, aktuator həddi çatdıqda, inteqral şişəcək və sistem gözlənilmədən aşıb.
İpucu: AI-dan PID üçün soruşduqda "çıxış doyma və anti-windup əlavə edin, törəmə termininə ölçüdə törəmə tətbiq edin" deyin. Bu üç əlavə dərslik PID-ni sahə PID-ə çevirir.
İnteqral Windup və Törəmə Səs-küyü
İki klassik tələ PID uğursuzluğunun ən çox yayılmış səbəbləridir:
İnteqral sarğı: Ötürücü doyduğu zaman (məsələn, mühərrik artıq tam gücdədir) xəta davam edir və inteqral termini böyüməyə davam edir. Bu şişirdilmiş inteqral, sistem hədəfə çatdıqda böyük bir həddi aşır. Həll yolu: çıxış doymuş olduqda inteqralı dayandırmaq və ya geri çəkmək (yuxarıdakı kodda nümayiş etdirilən anti-windup).
Törəmə səs-küy: D termini xətanın törəməsini alır; Səs-küylü ölçmənin törəməsi daha səs-küylüdür və ötürücüyü titrəyəcək. Həll üsulları: ölçüdən törəmənin alınması (xəta yerinə ölçmə törəməsi), törəmə termininə aşağı keçid filtrinin əlavə edilməsi.
# Törəmə səs-küyün azaldılması: ölçmə törəməsi + filterd_raw = -(ölçülmüş - self.previous_measured) / dt səhv əvəzinə
Süni intellekt bu tələləri müəyyən etməkdə yaxşıdır; "Mənim PID-im hədəfə çatdıqda çox aşır" deyirsinizsə, o, söndürməyi tövsiyə edir. Lakin siz düzəlişin sisteminizdə işlədiyini ölçməklə yoxlayırsınız.
Ziegler-Nichols ilə təyinat
Sıfırdan qazanc tapmaq üçün klassik üsul (Kp, Ki, Kd) Ziegler-Nichols-dur. Onun mahiyyəti: yalnız P-dən başlayaraq sistem davamlı rəqsə keçənə qədər Kp-nin artırılması; Cədvəldən Kp, Ki, Kd-ni kritik qazanc Ku və bu nöqtədə salınma dövrü Tu ilə hesablayın.
nəzarətçi
kp
Ti
Td
P.
0,5·Ku
–
–
P.I.
0.45·Ku
Tu/1.2
–
PID
0,6·Ku
Tu/2
Tu/8
Ziegler-Nichols addımları (AI tərəfindən hazırlanacaq plan): 1. Ki=0, Kd=0 götürün. Sadəcə P.2-ni işə salın. Stabil, davamlı rəqs başlayana qədər Kp-ni YAVAŞ-ARTIRIN.3. Bu Kp = Ku (kritik qazanc), rəqs dövrü = Tu.4. Cədvəldən Kp, Ti, Td hesablayın; Ki = Kp/Ti, Kd = Kp*Td.5. Bu dəyərlərlə başlayın, sonra eksperimental düzəlişlər edin.
Diqqət: Ziegler-Nichols sistemi qəsdən sabitlik həddinə (davamlı salınma) gətirir. Bunu real aparatda edərkən mexaniki gərginlik, həddindən artıq cərəyan və təhlükə riski var; Mümkünsə, bunu əvvəlcə simulyasiyada edin, sonra aşağı güc limiti və aparatda E-stop ilə işləyin. AI tərəfindən təklif olunan Ku başlanğıc nöqtəsidir, sisteminizdə ölçülür və yoxlanılır.
AI-Assisted Diaqnostika
PID davranışını AI-yə təsvir etməklə diaqnoz edə bilərsiniz. Simptom → mümkün səbəbin xəritəsi:
simptom
mümkün səbəb
AI təklif edəcək istiqamət
yavaş oturma
Kp/Ki aşağı
kp artırmaq
Daimi səhv
Mən yoxam və ya çox aşağıyam
Əlavə et/artır
Həddini aşmaq + salınım
Kp/Ki yüksək, D yoxdur
Kd əlavə edin, Ki azaldın
Aktuator titrəyir
törəmə səs-küy
Filtrləyin/azaltın D
Böyük aşdığınız zaman
inteqral bağlama
Anti-windup əlavə edin
Zəif Tələb / Güclü Tələb
ZƏFS:"PID qazancını verin."(Hansı sistem? Davranış necədir? Ölçmələr varmı? Təsadüfi rəqəmlər gəlir.)GÜÇLÜ:"Mən DC motor sürətinə nəzarət üçün PID-i tənzimləyirəm. Hazırda Kp=2, Ki=0.5, Kd=0. O, addım girişində 35%-i aşır və böyük bir hədəfə çatdıqda, onu vurmaq çox vaxt alır. 100 Hz-dir. "Hansı istiqaməti dəyişməyi təklif et və həddi aşırma inteqral olub-olmadığını yoxlamaq üçün mənə deyin" qazanan bu simptomlardan mümkün səbəbləri sadalayın.
Mini Çanta
Nəzarət mühəndisi Kerem ekstruderin temperatur nəzarətini tənzimləyir. Süni intellekt tərəfindən təklif edilən qazanclarla sistem hədəfə tez çatır, lakin hər təyin edilmiş dəyişiklikdə böyük həddi aşır və yavaş-yavaş yerləşir. Kerem simptomu AI-ya izah edir; Qızdırıcı bir müddət tam gücdə (doymuş) qaldığı üçün AI inteqral sönmədən şübhələnir. Kerem PID koduna anti-windup əlavə edir və aşırma əhəmiyyətli dərəcədə azalır. Ancaq indi qızdırıcının çıxışında kiçik bir titrəmə var; O, bunu temperatur sensorunun səs-küyünü gücləndirən D termini ilə əlaqələndirir və törəməyə aşağı keçid filtri əlavə edir. Nəhayət, o, təxminən Ziegler-Nichols ilə qazancları təsdiqləyir və eksperimental incə tənzimləməni həyata keçirir. Süni intellektdə sürətli diaqnoz var; Lakin Kerem faktiki addım cavabını ölçməklə hər bir düzəlişi təsdiqlədi - istər korreksiya düzəldilsin, istərsə də titrəmə yox oldu, bunu yalnız qrafik olaraq görmək mümkün idi.
Ümumi Səhvlər
- PID-ə çıxış doyma və anti-sönmə əlavə edilməməsi və ötürücü limitində böyük həddi aşması.
- Səs-küylü ölçmənin törəməsindən törəmənin alınması və ötürücünün titrəməsi.
- Dt-nin sabit olduğunu fərz etsək, seçmə müddəti dəyişir.
- Təhlükəsizlik tədbirləri olmadan aparat üzərində Ziegler-Nichols rəqs testinin aparılması.
- Süni intellekt tərəfindən yaradılan qazancları sistemə aid yoxlama olmadan “yekun” kimi qəbul etmək.
- Çox böyük addımlarla tək qazancın dəyişdirilməsi və sistemi qeyri-sabitliyə itələmək.
Xülasə
- PID; P (cari xəta), I (yığılmış xəta), D (səhv dəyişmə sürəti) ilə reaksiya verir.
- Sahə PID çıxış doyma, anti-windup və törəmə filter daxil olmalıdır.
- İnteqral sarma böyük həddi aşır, törəmə səs-küy aktuator vibrasiyasına səbəb olur.
- Ziegler-Nichols qazanmağa başlayır; Aparatda təhlükəsizlik tədbirləri ilə həyata keçirilir.
- AI simptomdan səbəbə doğru diaqnozda sürətlidir; Düzəliş ölçmə ilə təsdiqlənir.
- dt faktiki ölçülür; Qazanc dəyişiklikləri kiçik addımlarla və müşahidələrlə həyata keçirilir.
Tətbiq tapşırığı
Sistem seçin (əsl mühərrik/qızdırıcı və ya Python-da sadə birinci/ikinci dərəcəli model) və süni intellektə doyma + anti-windup ilə PID sinifini yaratsın. Sonra: (1) yalnız P-dən başlayaraq və Kp-ni artırmaqla salınım davranışını müşahidə edin, (2) daimi xətanı aradan qaldırmaq üçün Ki əlavə edin və həddi aşmanın necə artdığına baxın, (3) külək əleyhinə funksiyanı yandırıb-söndürməklə böyük həddi aşmağa təsiri müqayisə edin. Hər addımda addım cavabını tərtib edin və hansı qazancın hansı davranışı dəyişdiyini qeyd edin. Ziegler-Nichols-dan əldə etdiyiniz qazancları özünüz tapdığınız qazanclarla müqayisə edin.