Kitengo 7 / 9

Usanifu na Uigaji kwa Msingi wa Mfano

Faida:

  • Uwezo wa kuunda mfano wa equation tofauti wa mfumo na AI na kuiga katika Python
  • Uwezo wa kutafsiri matokeo ya simulation (majibu ya hatua, utulivu) kwa msaada wa AI
  • Uwezo wa kutumia nidhamu ya kuthibitisha mipaka ya mawazo ya mfano na utangamano wao na mfumo halisi.

Kabla ya kujenga kimwili mfumo wa mechatronic, unaweza kuelewa, kubuni na kupima kwenye mfano. Muundo wa Msingi wa Mfano; Ni mbinu ya kuwakilisha tabia ya mfumo wenye milinganyo tofauti au michoro ya kuzuia, iendeshe kwa kuiga, kubuni na kuthibitisha kidhibiti. Hii ina thamani kubwa: unaweza kujaribu mamia ya matukio, kutabiri utulivu, kurekebisha faida za mtawala bila kuhatarisha vifaa. Akili ya Bandia ni msaidizi mwenye nguvu katika mchakato huu: huunda equation ya mfumo, huandika simulation yake katika Python, hutafsiri matokeo. Lakini mfano ni ramani, si ardhi; Ni jukumu la mhandisi kuamua jinsi mtindo unawakilisha ukweli (uthibitisho). Katika kitengo hiki, tunashughulikia ujenzi wa mfano, kuiga, na kuthibitisha mipaka ya mfano na AI.

Mfano ni nini na hupuuza nini?

Kielelezo ni kiwakilishi kilichorahisishwa cha ukweli kilichoundwa na kusudi. Kwa mfano, mfano rahisi wa motor DC umeanzishwa na equations za umeme na mitambo, lakini inaweza kupuuza sehemu isiyo ya mstari ya msuguano, kurudi nyuma kwa gear na athari ya joto. Mapungufu haya hufanya mfano kuwa muhimu lakini pia huweka kikomo cha uhalali wake.

Iko kwenye mfano

mara nyingi hupuuzwa

Misa, inertia, upinzani, inductance

Msuguano usio na mstari, kurudi nyuma

Milinganyo ya kimsingi inayobadilika

Kueneza, eneo lililokufa

Kihisi/kiendeshaji kinachofaa

Kelele ya kipimo, kuchelewa

Vigezo vilivyowekwa

Vigezo vinavyobadilika na joto

Kanuni muhimu: "Mifano yote si sahihi, baadhi ni muhimu." Iwapo kielelezo kinafanya kazi inategemea ikiwa vitu vilivyoachwa ni muhimu katika safu yako ya kufanya kazi.

Kujenga na Kuiga Modeli ya DC Motor

Mfano rahisi wa nafasi ya hali ya motor DC imeandikwa na majimbo kasi ya angular ω na sasa i. AI inaweza kusanidi hesabu hizi na kuziiga kwenye Python na scipy:

agiza numpy kama npkutoka kwa scipy.jumisha kuagiza solve_ivpimport matplotlib.pyplot kama plt# vigezo vya motor DC (thamani za sampuli -- zinapaswa kuchukuliwa kutoka kwa hifadhidata halisi)J = 0.01 # inertia (kg*m^2)b = 0.1 # msuguano wa viscous (N*m*0m/s)1 # motor V*s/rad)R = 1.0 # upinzani (ohm)L = 0.5 # inductance (H)def motor_dynamigi(t, x, V): """x = [omega, i]. V = voltage iliyotumika.""" omega, i = x domega = (K * i - b * omega) / J # mechanical equation -electrical equation L-equation = V # mechanical equation Rmega equation [domega, di]# 12 Uigaji na ingizo la hatua ya V (uthibitishaji):omega_ss_kinadharia = K * V / (R * b + K**2)print(f"Kasi ya mwisho ya Uigaji: {omega[-1]:.2f} rad/s")print(f"Hali thabiti ya kinadharia: {omega_ss_kinadharia}rad:/sf").

Mstari wa uthibitishaji hapa ni muhimu: tunalinganisha kasi ya hali-tulivu inayopatikana kwa uigaji na fomula ya kinadharia inayotolewa kwa mkono (K·V/(R·b+K²)). Ikiwa hizi mbili zinalingana, imani yetu katika simulation huongezeka; Ikiwa hazilingani, kuna hitilafu ama katika equation au katika kanuni. Pata sehemu huru kama hiyo ya heshi kwa kila simulizi ambayo AI hutoa.

Kidokezo: Unapokuwa na AI kuiga mfumo, kila wakati sema "pia nipe sehemu ya ukaguzi ya kinadharia/kichanganuzi ambapo ninaweza kuthibitisha matokeo." Cheki huru, kama vile thamani ya hali thabiti, sheria ya uhifadhi, salio la nishati, n.k., ndiyo njia ya haraka zaidi ya kupata hitilafu za msimbo.

Majibu ya Hatua na Utulivu

Tabia za msingi utasoma kutoka kwa simulation:

  • Muda wa Kupanda: Muda unaochukua kwa matokeo kufikia sehemu fulani ya lengo.
  • Overshoot: Kiasi gani kinazidi lengo.
  • Muda wa kusuluhisha: Muda unaochukua ili kuwa wa kudumu katika bendi lengwa.
  • Utulivu: Je, mwitikio unabaki kuwa mdogo au unakua hadi usio na mwisho?

Utulivu ni matokeo muhimu zaidi ya muundo wa msingi wa mfano. Ikiwa miti ya mfumo (mizizi ya denominator ya kazi ya uhamisho) iko kwenye ndege ya nusu ya kushoto, mfumo ni imara; Nguzo inayohamia kwenye nusu ya ndege ya kulia inamaanisha kutokuwa na utulivu. AI inaweza kuhesabu polarity ya mfumo na kutafsiri uthabiti wake:

leta numpy kama np# Mfano: vibali bainishi vya polinomia [1, a2, a1, a0]coefficients = [1, 3, 3, 1]roots = np.roots(coefficients)print("Poles:", roots)stable = np.all(np.real(roots) <0,the #stable) printa zote?" hasi?

Uthibitishaji wa Mfano (Uthibitishaji)

Haitoshi kujenga mfano na kuiga; Unahitaji kuthibitisha kwamba mfano unawakilisha ukweli. Hatua za uthibitishaji:

  1. Toa uchanganuzi: Linganisha na vidhibiti huru kama vile sheria za hali thabiti, sheria za uhifadhi.
  2. Chanzo cha kigezo: Je, vigezo vya kielelezo (J, K, R...) vinapimwa/laha data au makadirio?
  3. Ulinganisho wa majaribio: Ikiwezekana, pima mwitikio wa hatua wa mfumo halisi na uufunike na ule wa modeli.
  4. Usikivu: Je, matokeo hubadilika kiasi gani wakati wa kubadilisha vigezo kwa ± 20% (mfano ni nyeti kiasi gani)?
  5. Masafa ya uhalali: Je, ni katika masafa gani ya kasi/mzigo/joto ni sahihi, inaharibika wapi?
Tahadhari: Vigezo vya mfano (inertia, msuguano, motor constant) zinazotolewa na AI ni karibu kila mara maadili ya sampuli/kishika nafasi. Usilete matokeo ya uigaji "kwa uhalisia" bila kuyabadilisha na hifadhidata au vipimo vya mfumo wako halisi. Daraja kati ya "kazi katika simulation" na "kazi katika shamba" ni usahihi wa parameter na uthibitishaji.

Uhamasishaji dhaifu / Uhamasishaji Wenye Nguvu

DHAIFU:"Andika uigaji wa injini."(Muundo upi? vigezo? uthibitishaji? Mchoro usio na maana unaonekana.)STRONG:"Jenga muundo wa anga za juu (unasema: kasi ya angular na mkondo) wa motor ya DC. Iga jibu la hatua 12 kwa vescipy solve_ivp. Bainisha vigezo kama viambajengo mwanzoni, ili thamani iweze kuweka pia thamani halisi mwanzoni, R, b, na K. pia inaweza kuweka thamani halisi. formula ya kinadharia ya kasi ya hali thabiti "ili niweze kuthibitisha simulizi. Kokotoa muda wa kupanda, risasi kupita kiasi, na muda wa kutulia kutoka kwa jibu la hatua."

Kesi Ndogo

Mhandisi wa R&D Nil anaunda mfumo kabla ya kuunda kidhibiti kwa mhimili mpya wa kuweka nafasi. Ana AI kujenga mfano wa gari la DC na kuongeza kidhibiti cha PID; Simulation inatoa jibu zuri, lisilo la kupita kiasi. Lakini Nil anapolinganisha kasi ya hali-tulivu na fomula ya kinadharia, anapata tofauti ya 15%: Sampuli ya mara kwa mara ya injini K inayotumiwa na AI ni tofauti na ile ya injini halisi. Unapoweka maadili ya hifadhidata, simulation inafaa na nadharia. Kisha hupima majibu ya hatua ya injini halisi na kuifunika kwa pato la mfano; Mfano huo unafaa vizuri katika eneo la haraka, lakini hupotoka kwa kasi ya chini-kwa sababu mfano hupuuza msuguano wa tuli. Nil anabainisha kikomo hiki: mfano huo ni wa kuaminika kwa kasi ya juu, si kwa kasi ya chini sana. Inatengeneza kidhibiti ipasavyo. AI mfano na simulation haraka imara; lakini uthibitisho wa parameta na ulinganisho wa majaribio ulifunua kwa mhandisi kikomo cha kweli cha uhalali wa mfano.

Makosa ya Kawaida

  • Kuiga na vigezo vya sampuli/vishika nafasi vya AI na kuleta matokeo katika ukweli.
  • Kutoidhinisha uigaji na kituo huru cha ukaguzi cha uchanganuzi.
  • Kusahau madhara ambayo mtindo hupuuza (msuguano, kurudi nyuma, kuchelewesha) na kuiamini chini ya hali zote.
  • Kuzingatia mfano "uliothibitishwa" bila kulinganisha na kipimo halisi.
  • Kuruka uchambuzi wa utulivu (fito) na kusema tu "grafu inaonekana nzuri".
  • Kutumia modeli katika eneo lote la utafiti bila kubainisha masafa ya uhalali.

Kwa muhtasari

  • Mfano huo ni kurahisisha kwa makusudi ukweli na daima huacha kitu nje.
  • Uigaji huwezesha muundo na urekebishaji wa kidhibiti bila kuhatarisha maunzi.
  • Kila mwigo lazima uthibitishwe dhidi ya nukta huru ya uchanganuzi ya heshi.
  • Vigezo vya mfano vinapaswa kutoka kwa kipimo/laha data halisi, visiachwe na sampuli ya thamani ya AI.
  • Utulivu unatathminiwa kwa kuangalia maeneo ya nguzo (ndege ya nusu ya kushoto).
  • Uthibitishaji huonyesha mhandisi safu ya uhalali na mipaka ya muundo.

Jukumu la maombi

Chagua mfumo rahisi wa nguvu (motor DC, molekuli-spring-damper, mzunguko wa RC). Acha AI iunde muundo wa nafasi ya serikali au mlingano wa tofauti na uige jibu la hatua katika Python, na uhakikishe kuwa umeuliza hoja ya kinadharia ya hali-tulivu/uchanganuzi. Kisha: (1) linganisha matokeo ya kuiga na thamani ya kinadharia ili kuona ikiwa inakubali, (2) badilisha kigezo kwa ± 20% na uone ni kiasi gani matokeo yanabadilika (unyeti), (3) andika angalau athari mbili za kimwili ambazo mfano hupuuza na katika eneo gani la uendeshaji zingekuwa muhimu. Eleza safu ya uhalali ya kielelezo chako katika sentensi moja.