ክፍል 5 / 9

የቁጥጥር ስልተ ቀመሮች፡- PID እና AI የሚደገፍ ማስተካከያ

ትርፍ፡

  • የPID መቆጣጠሪያውን የP, I, D ውሎች እና ተፅእኖዎች ከትክክለኛው አውድ ጋር ለ AI የማብራራት እና የመተግበር ችሎታ
  • በ AI እርዳታ Ziegler-Nichols እና የሙከራ ማስተካከያ ዘዴዎችን ደረጃ በደረጃ የማከናወን ችሎታ
  • የ PID ወጥመዶችን የማወቅ እና የማስወገድ ችሎታ እንደ የተቀናጀ ንፋስ መጨመር ፣ በ AI ምክሮች ውስጥ የመነጨ ድምጽ

የምድጃውን የሙቀት መጠን በቋሚነት ማቆየት ፣ የሞተርን ፍጥነት በሚፈለገው ዋጋ መንዳት ፣ የድሮንን አንግል ማመጣጠን ፣ የሁሉም ልብ ውስጥ የቁጥጥር አልጎሪዝም ነው. ከእነዚህ ውስጥ በጣም የተለመደው የኢንዱስትሪው የጀርባ አጥንት የሆነው የ PID መቆጣጠሪያ ነው. PID; ቀላል, ጠንካራ እና በተለያዩ ችግሮች ላይ ይሰራል. ነገር ግን "ቀላል" ማለት "ለመቃኘት ቀላል" ማለት አይደለም፡ በስህተት የተቀመጠ PID ይንቀጠቀጣል፣ ከመጠን በላይ ይተኩሳል፣ አርፍዶ ይቀመጣል ወይም ሙሉ በሙሉ ያልተረጋጋ ይሆናል። አርቴፊሻል ኢንተለጀንስ እዚህ ጠቃሚ ረዳት ነው፡ የፒአይዲ ቃላትን ያብራራል፣ የማስተካከያ ዘዴዎችን ይመራል፣ የተለመዱ ወጥመዶችን ይመረምራል እና የመቃኛ ኮዱን ይጽፋል። ይሁን እንጂ የመጨረሻው ማስተካከያ የሚደረገው የስርዓትዎን አካላዊ ባህሪ በመመልከት እና የመረጋጋት ውሳኔው የመሐንዲሱ ነው. በዚህ ክፍል የPID ወጥመዶችን በ AI እንዴት መጫን፣ መቃኘት እና ማረጋገጥ እንደሚቻል እንሸፍናለን።

ሶስት የPID ውሎች

PID ለስህተት ሲግናል (e = ዒላማ - የሚለካ) በሶስት መንገዶች ምላሽ ይሰጣል፡-

ቃል

ምን ይመለከታል?

ውጤት

በከፍተኛ ሁኔታ

P (ተመጣጣኝ)

የአሁኑ ስህተት

ፈጣን ምላሽ

ማወዛወዝ, ቋሚ ስህተት

እኔ (የተጠቃለለ)

የተከማቸ ያለፈ ስህተት

ቋሚ ስህተትን ዳግም ያስጀምራል።

ከመጠን በላይ መነሳት, ንፋስ መጨመር, ማወዛወዝ

D (የመነጨ)

የስህተት ለውጥ መጠን

እርጥበት ከመጠን በላይ መጨመርን ይቀንሳል

ድምጹን አጉላ

የቃል ማጠቃለያ፡ ፒ ለጥያቄዎች ምላሽ ይሰጣል “አሁን ምን ያህል እራቀዋለሁ”፣ እኔ “ለምን ያህል ጊዜ ራቅኩ”፣ D “ምን ያህል በፍጥነት እየቀረብኩ ነው”። ጥሩ ተቆጣጣሪ ሶስቱን ያመዛዝናል.

ክፍል PID: def __init__(እራስ፣ 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 መለካት, 0.0 ራስን መመዘን. ስህተት = ዒላማ - የሚለካው # P p = self.Kp * ስህተት # እኔ -- ራስን.integral with windup ጥበቃ += ስህተት * dt i = self.Ki * self.integral # D --derivative noise sensitive d = self.Kd * (ስህተት - self.previous_error) / dt self.previous_error = ስህተት ወጥቷል = p + i + d # ውፅዓት ገድብ > ውፅዓት ወሰን self.out_max self.integral -= ስህተት * dt # ጸረ-ዊንዶፕ፡ integral elif ውፅዓት ይቀልብስ <self.output_min: ውፅዓት = self.output_min self.integral -=ስህተት * dt መመለሻ ውፅዓት

ይህ ኮድ "የስልጠና PID" አይደለም, ነገር ግን ለምርት አመክንዮ ቅርብ የሆነ አጽም ነው: የውጤት ሙሌት እና ፀረ-ንፋስ ያካትታል. በ AI የተሰጡ ብዙ ቀላል ፒአይዶች እነዚህን ሁለት ጥበቃዎች ያልፋሉ; ያለ እነርሱ, አንቀሳቃሹ ገደቡ ላይ ሲደርስ, ውስጠቱ ያብጣል እና ስርዓቱ ሳይታሰብ ከመጠን በላይ ይወጣል.

ጠቃሚ ምክር፡ AI ን ለፒአይዲ ሲጠይቁ “የውጤት ሙሌት እና ፀረ-ንፋስ ጨምሩ፣ በመለኪያ ላይ ተዋጽኦን ወደ መነሻ ቃል ይተግብሩ” ይበሉ። እነዚህ ሶስት ተጨማሪዎች የመማሪያ መጽሃፉን PID ወደ መስክ PID ይቀይራሉ.

የተቀናጀ ንፋስ እና የመነጨ ድምጽ

የPID ውድቀት በጣም የተለመዱት ሁለት የተለመዱ ወጥመዶች ናቸው፡

የተቀናጀ ንፋስ፡- አንቀሳቃሹ ሲሞላ (ለምሳሌ ሞተሩ ቀድሞውኑ በሙሉ ኃይል ላይ ሲሆን) ስህተቱ ይቀጥላል እና ዋናው ቃል ማደጉን ይቀጥላል። ይህ የተጋነነ ውህደት ስርዓቱ ዒላማው ላይ ሲደርስ ወደ ትልቅ መተኮስ ያመራል። መፍትሄው፡ ውፅዋቱ ሲሞላ ውህዱን ማቆም ወይም መመለስ (ፀረ-ንፋስ፣ ከላይ ባለው ኮድ የሚታየው)።

የመነጨ ጫጫታ፡- D የሚለው ቃል የስህተቱን መነሻ ይወስዳል። የጩኸት መለኪያ አመጣጥ የበለጠ ጫጫታ ነው እና አንቀሳቃሹን ይንቀጠቀጣል። መፍትሄዎች፡ ተዋጽኦውን ከመለኪያው መውሰድ (ከስህተቱ ይልቅ የመለኪያው የመነጨ)፣ ዝቅተኛ የማለፊያ ማጣሪያ ወደ የመነሻ ቃል ማከል።

# የመነጨ ጫጫታ መቀነስ፡ የመለኪያ መነሻ + filterd_raw = -(የሚለካ - ራስን.የቀድሞ_መለኪያ) / ዲቲ ከስህተት ይልቅ

AI እነዚህን ወጥመዶች በመለየት ጥሩ ነው; "የእኔ PID ዒላማው ላይ ሲደርስ ከመጠን በላይ ይተኩሳል" ካሉ፣ ንፋስ መጨመርን ይመክራል። ግን ማስተካከያው በስርዓትዎ ላይ እንደሚሰራ በመለካት ያረጋግጣሉ።

ከ Ziegler-Nichols ጋር ማቀናበር

ከባዶ ትርፍ ለማግኘት (Kp, Ki, Kd) ክላሲክ ዘዴ Ziegler-Nichols ነው. ዋናው ነገር: በፒ ብቻ በመጀመር እና በ Kp መጨመር ስርዓቱ ወደ ዘላቂ ማወዛወዝ እስኪገባ ድረስ; Kp, Ki, Kd ከጠረጴዛው ወሳኝ ትርፍ Ku እና የመወዛወዝ ጊዜ Tu በዚህ ነጥብ አስላ.

ተቆጣጣሪ

ኪ.ፒ

ት.ዲ

ፒ.

0.5 · ኩ

-

-

ፒ.አይ.

0.45 · ኩ

ቱ/1.2

-

PID

0.6 · ኩ

ቱ/2

ቱ/8

Ziegler-Nichols እርምጃዎች (በ AI የሚሠራ ዕቅድ):1. Ki=0፣ Kd=0 ውሰድ። ልክ P.2 አሂድ. የተረጋጋ፣ ቀጣይነት ያለው ማወዛወዝ እስኪጀምር ድረስ ቀስ ብሎ Kp ይጨምሩ።3. ይህ Kp = Ku (ወሳኝ ትርፍ), የመወዛወዝ ጊዜ = Tu.4. ከጠረጴዛው ላይ Kp, Ti, Td አስላ; ኪ = ኬፕ / ቲ, Kd = Kp * Td.5. በእነዚህ እሴቶች ይጀምሩ፣ ከዚያ የሙከራ ማስተካከያዎችን ያድርጉ።

ጥንቃቄ፡ Ziegler-Nichols ሆን ብሎ ስርዓቱን ወደ መረጋጋት ገደብ (የቀጠለ መወዛወዝ) ያመጣል። በእውነተኛ ሃርድዌር ላይ ይህን ሲያደርጉ የሜካኒካል ጫና, ከመጠን በላይ መጨመር እና አደጋ አደጋ አለ; ከተቻለ በመጀመሪያ በሲሙሌሽን ውስጥ ያድርጉት ፣ ከዚያ በትንሽ የኃይል ገደብ እና በሃርድዌር ውስጥ ኢ-ማቆሚያ ይስሩ። በ AI የተጠቆመው Ku የመነሻ ነጥብ ነው, በስርዓትዎ ውስጥ ይለካል እና የተረጋገጠ ነው.

በ AI የታገዘ ምርመራዎች

የPID ባህሪን ለ AI በመግለጽ መመርመር ይችላሉ። ምልክት → ሊሆን የሚችል የካርታ ስራ፡

ምልክት

ሊሆን የሚችል ምክንያት

መመሪያው AI ይጠቁማል

ቀስ ብሎ መቀመጥ

ኪፒ/ኪ ዝቅተኛ

የ kp

ቋሚ ስህተት

የሌለሁ ወይም በጣም ዝቅተኛ ነኝ

ጨምር/ጨምር

ከመጠን በላይ መወዛወዝ + መወዛወዝ

ኪፒ/ኪ ከፍተኛ፣ የለም ዲ

Kd ጨምር፣ Ki ቀንስ

አንቀሳቃሽ እየተንቀጠቀጠ ነው።

የመነጨ ጫጫታ

አጣራ/ቀንስ ዲ

ከፍተኛ መጠን ሲደርሱ

የተቀናጀ ንፋስ

ፀረ-ነፋስ አክል

ደካማ ፈጣን/ጠንካራ ፍጥነት

ደካማ፡ "የ PID ጥቅሞቹን ስጡ።"(የትኛው ስርዓት? ባህሪው እንዴት ነው? መለኪያዎች አሉ? የዘፈቀደ ቁጥሮች ይመጣሉ።) STRONG:" ፒአይዲውን ለዲሲ ሞተር ፍጥነት መቆጣጠሪያ እያስተካከልኩ ነው። በአሁኑ ጊዜ Kp=2፣ Ki=0.5፣ Kd=0. በደረጃ ግብዓት ላይ 35% በላይ ይተኩሳል እና ዒላማው ላይ ሲደርስ ትልቅ ሰከንድ 0 ጊዜ ይወስዳል። Hz. ከእነዚህ ምልክቶች ሊከሰቱ የሚችሉ ምክንያቶችን ዘርዝር, ይህም ትርፍ "በየትኛው አቅጣጫ መቀየር እንዳለብኝ ጠቁም እና ከመጠን በላይ መወዛወዝ ወሳኝ የንፋስ መከላከያ መሆኑን እንዴት እንደምሞክር ንገረኝ."

ሚኒ መያዣ

የመቆጣጠሪያ መሐንዲስ Kerem የኤክስትራክተርን የሙቀት መቆጣጠሪያ ያስተካክላል. በ AI በተጠቆሙት ግኝቶች, ስርዓቱ በፍጥነት ወደ ዒላማው ይደርሳል, ነገር ግን በእያንዳንዱ ስብስብ ላይ ትልቅ ለውጥ ያመጣል እና ቀስ በቀስ ይረጋጋል. Kerem ምልክቱን ለ AI ያብራራል; ማሞቂያው ለተወሰነ ጊዜ በሙሉ ኃይል (የተሞላ) ስለሚቆይ AI አጠቃላይ የንፋስ መጨመርን ይጠራጠራል። Kerem ጸረ-ዊንዳፕን ወደ PID ኮድ ይጨምረዋል እና ከመጠን በላይ መነሳት በከፍተኛ ሁኔታ ይቀንሳል። አሁን ግን በማሞቂያው መውጫ ላይ ትንሽ ብልጭ ድርግም ይላል; ይህንን የዲ ቃሉ የሙቀት ዳሳሽ ጫጫታ በማጉላት እና ዝቅተኛ ማለፊያ ማጣሪያን በመነጩ ላይ በመጨመር ነው ብሏል። በመጨረሻም፣ በዚግለር-ኒኮልስ የተገኘውን ውጤት በመጠኑ ያረጋግጣል እና የሙከራ ማስተካከያዎችን ያከናውናል። AI ፈጣን ምርመራ አለው; ነገር ግን Kerem ትክክለኛውን የእርምጃ ምላሽ በመለካት እያንዳንዱን እርማት አረጋግጧል - ነፋሱ ተስተካክሏል ወይም ብልጭ ድርግምታው ጠፍቷል, ሊታይ የሚችለው በግራፊክ ብቻ ነው.

የተለመዱ ስህተቶች

  • የውጤት ሙሌት እና ጸረ-ዊንዳፕን ወደ PID ማከል አለመቻል እና በአንቀሳቃሽ ገደቡ ውስጥ ትልቅ ከመጠን በላይ መነሳት እያጋጠመው ነው።
  • ከጩኸት መለኪያው ተዋጽኦውን በመውሰድ እና አንቀሳቃሹን መንቀጥቀጥ።
  • ዲቲ ቋሚ ነው ብለን በማሰብ የናሙና ጊዜ ግን ይለያያል።
  • ያለደህንነት ጥንቃቄዎች የዚግለር-ኒኮል ማወዛወዝን በሃርድዌር ላይ በማካሄድ ላይ።
  • በ AI የመነጩ ገቢዎችን እንደ "የመጨረሻ" ስርዓት-ተኮር ማረጋገጫ መቀበል።
  • በጣም ትልቅ በሆኑ ደረጃዎች አንድ ነጠላ ትርፍ መቀየር እና ስርዓቱን ወደ አለመረጋጋት መግፋት.

በማጠቃለያው

  • PID; እሱ በ P (የአሁኑ ስህተት) ፣ I (የተጠራቀመ ስህተት) ፣ ዲ (የስህተት ለውጥ መጠን) ምላሽ ይሰጣል።
  • የመስክ PID የውጤት ሙሌት፣ ፀረ-ንፋስ እና የመነሻ ማጣሪያን ማካተት አለበት።
  • የተቀናጀ ንፋስ ትልቅ ከመጠን በላይ መነሳት፣ የመነጨ ጫጫታ የአንቀሳቃሽ ንዝረትን ያስከትላል።
  • Ziegler-ኒኮልስ ማግኘት ይጀምራል; በሃርድዌር ውስጥ ከደህንነት እርምጃዎች ጋር ተተግብሯል.
  • AI ከምልክት ወደ መንስኤ በምርመራ ፈጣን ነው; እርማቱ በመለኪያ የተረጋገጠ ነው.
  • dt ትክክለኛ መለኪያ; የገቢ ለውጦች በትንሽ ደረጃዎች እና ምልከታዎች ይከናወናሉ.

የመተግበሪያ ተግባር

ስርዓት ምረጥ (እውነተኛ ሞተር/ማሞቂያ ወይም ቀላል የመጀመሪያ/ሰከንድ ትዕዛዝ ሞዴል በፓይዘን) እና AI የ PID ክፍልን ሙሌት + ጸረ-ንፋስ ያመነጫል። ከዚያም፡ (1) በፒ ብቻ በመጀመር እና Kp በመጨመር የመወዛወዝ ባህሪን ይከታተሉ፣ (2) ቋሚ ስህተቱን ለማስወገድ Ki ጨምር እና ከመጠን በላይ መተኮሱ እንዴት እንደሚጨምር ይመልከቱ፣ (3) ጸረ-ዊንዶፕን በማብራት እና በማጥፋት በትልቁ ላይ ያለውን ተጽእኖ ያወዳድሩ። በእያንዳንዱ እርምጃ የእርምጃውን ምላሽ ያቅዱ እና የትኛው ትርፍ የትኛው ባህሪ እንደሚቀየር ልብ ይበሉ። ከ Ziegler-Nichols የተገኘውን እራስህ ካገኘህው ትርፍ ጋር አወዳድር።