Unit 7 / 9

Reka Bentuk dan Simulasi Berasaskan Model

Keuntungan:

  • Keupayaan untuk membina model persamaan pembezaan sistem dengan AI dan mensimulasikannya dalam Python
  • Keupayaan untuk mentafsir keputusan simulasi (tindak balas langkah, kestabilan) dengan bantuan AI
  • Keupayaan untuk menerapkan disiplin mengesahkan had andaian model dan keserasiannya dengan sistem sebenar

Sebelum membina sistem mekatronik secara fizikal, anda boleh memahami, mereka bentuk dan mengujinya pada model. Reka Bentuk Berasaskan Model; Ia adalah pendekatan untuk mewakili tingkah laku sistem dengan persamaan pembezaan atau gambar rajah blok, menjalankannya dalam simulasi, mereka bentuk dan mengesahkan pengawal. Ini mempunyai nilai yang besar: anda boleh mencuba beratus-ratus senario, meramalkan kestabilan, melaraskan keuntungan pengawal dengan selamat tanpa mempertaruhkan perkakasan. Kecerdasan buatan ialah pembantu yang berkuasa dalam proses ini: ia membina persamaan sistem, menulis simulasinya dalam Python, mentafsirkan hasilnya. Tetapi modelnya adalah peta, bukan rupa bumi; Adalah menjadi tanggungjawab jurutera untuk menentukan sejauh mana model itu mewakili realiti (pengesahan). Dalam unit ini, kami meliputi membina model, mensimulasikannya dan mengesahkan had model dengan AI.

Apakah Model dan Apa yang Diabaikan?

Model ialah representasi realiti yang dipermudahkan untuk tujuan dibina. Sebagai contoh, model ringkas motor DC ditubuhkan dengan persamaan elektrik dan mekanikal, tetapi ia boleh mengabaikan bahagian tak linear geseran, tindak balas gear dan kesan suhu. Peninggalan ini menjadikan model berguna tetapi juga menetapkan had kesahihannya.

Ia ada dalam model

sering diabaikan

Jisim, inersia, rintangan, kearuhan

Geseran tak linear, tindak balas

Persamaan dinamik asas

Ketepuan, zon mati

Sensor/penggerak yang ideal

Pengukuran bunyi, kelewatan

Parameter tetap

Parameter yang berubah mengikut suhu

Prinsip utama: "Semua model salah, ada yang berguna." Sama ada model berfungsi bergantung pada sama ada perkara yang ditinggalkan itu penting dalam julat kerja anda.

Membina dan Mensimulasikan Model Motor DC

Model ruang keadaan ringkas bagi motor DC ditulis dengan menyatakan halaju sudut ω dan arus i. AI boleh menyediakan persamaan ini dan mensimulasikannya dalam Python dengan scipy:

import numpy sebagai npfrom scipy.integrate import solve_ivpimport matplotlib.pyplot sebagai plt# parameter motor DC (nilai sampel -- hendaklah diambil daripada lembaran data sebenar)J = 0.01 # inersia (kg*m^2)b = 0.1 # geseran likat (N*m*s)K = 0.01/0 # motor malar (N*m.*s) K = 0.01/0 # Rd motor # rintangan (ohm)L = 0.5 # kearuhan (H)def motor_dynamigi(t, x, V): """ x = [omega, i]. V = voltan terpakai.""" omega, i = x domega = (K * i - b * omega) / J # persamaan mekanikal di = (V - R * i - K * omega) / L # persamaan input elektrik dengan pulangan V1 # domega2 (pengesahan):omega_ss_theoretical = K * V / (R * b + K**2)print(f"Kelajuan akhir simulasi: {omega[-1]:.2f} rad/s")print(f"Keadaan mantap teori: {omega_ss_theoretical:.2f} rad/s")

Baris pengesahan di sini adalah kritikal: kami membandingkan halaju keadaan mantap yang dicapai oleh simulasi dengan formula teori terbitan tangan (K·V/(R·b+K²)). Jika kedua-duanya sepadan, keyakinan kita terhadap simulasi meningkat; Jika mereka tidak sepadan, terdapat ralat sama ada dalam persamaan atau dalam kod. Cari titik cincang bebas untuk setiap simulasi yang dihasilkan AI.

Petua: Apabila anda mempunyai sistem simulasi AI, sentiasa sebut "juga berikan saya pusat pemeriksaan teori/analisis di mana saya boleh mengesahkan hasilnya." Semakan bebas, seperti nilai keadaan mantap, undang-undang pemuliharaan, imbangan tenaga, dsb., ialah cara terpantas untuk menangkap ralat kod.

Tindak Balas Langkah dan Kestabilan

Tingkah laku asas yang anda akan baca daripada simulasi:

  • Masa meningkat: Masa yang diambil untuk output mencapai bahagian tertentu sasaran.
  • Overshoot: Berapa banyak ia melebihi sasaran.
  • Masa penyelesaian: Masa yang diperlukan untuk menjadi kekal dalam jalur sasaran.
  • Kestabilan: Adakah tindak balas kekal terhad atau adakah ia berkembang kepada infiniti?

Kestabilan ialah hasil yang paling kritikal bagi reka bentuk berasaskan model. Jika kutub sistem (akar penyebut fungsi pemindahan) berada di separuh satah kiri, sistem itu stabil; Tiang yang bergerak ke separuh satah kanan bermakna ketidakstabilan. AI boleh mengira kekutuban sistem dan mentafsir kestabilannya:

import numpy sebagai np# Contoh: pekali polinomial ciri [1, a2, a1, a0]pekali = [1, 3, 3, 1]roots = np.roots(coefficients)print("Poles:", roots)stable = np.all(np.real(roots) "Adakah bahagian sebenar" #Is the real(akar) < 0) cetak ("table)? negatif?

Pengesahan Model (Pengesahan)

Ia tidak mencukupi untuk membina model dan mensimulasikannya; Anda perlu membuktikan bahawa model itu mewakili realiti. Langkah pengesahan:

  1. Sediakan analitis: Bandingkan dengan kawalan bebas seperti undang-undang pemuliharaan keadaan mantap.
  2. Sumber parameter: Adakah parameter model (J, K, R...) sebenarnya diukur/lembaran data atau anggaran?
  3. Perbandingan eksperimen: Jika boleh, ukur tindak balas langkah sistem sebenar dan tindih dengan model.
  4. Kepekaan: Berapa banyak keputusan berubah apabila menukar parameter sebanyak ±20% (berapa sensitif model)?
  5. Julat kesahan: Dalam julat kelajuan/beban/suhu apakah model itu sah, di manakah ia rosak?
Awas: Parameter model (inersia, geseran, pemalar motor) yang diberikan oleh AI hampir selalu merupakan nilai sampel/pemegang tempat. Jangan bawa hasil simulasi "kepada realiti" tanpa menggantikannya dengan lembaran data atau ukuran sistem sebenar anda. Jambatan antara "bekerja dalam simulasi" dan "bekerja di lapangan" ialah ketepatan dan pengesahan parameter.

Gesaan Lemah / Gesaan Kuat

LEMAH:"Tulis simulasi motor."(Model mana? Parameter? pengesahan? Grafik tidak bermakna muncul.) KUAT:"Bina model ruang keadaan (nyatakan: halaju sudut dan arus) motor DC. Simulasikan tindak balas langkah 12 V dengan vescipy solve_ivp. Takrifkan parameter sebagai pembolehubah pada permulaan (J, B, K, R) juga boleh menulis nilai sebenar saya. untuk kelajuan keadaan mantap "jadi saya boleh mengesahkan simulasi. Kira masa naik, overshoot dan masa penyelesaian daripada tindak balas langkah."

Mini Case

Jurutera R&D Nil memodelkan sistem sebelum mereka bentuk pengawal untuk paksi kedudukan baharu. Dia mempunyai AI membina model motor DC dan menambah pengawal PID; Simulasi memberikan respons yang bagus dan tidak berlebihan. Tetapi apabila Nil membandingkan kelajuan keadaan mantap dengan formula teori, dia mendapati perbezaan 15%: Pemalar enjin sampel K yang digunakan oleh AI berbeza daripada enjin sebenar. Apabila anda meletakkan nilai lembaran data, simulasi sesuai dengan teori. Ia kemudian mengukur tindak balas langkah enjin sebenar dan menindihnya dengan output model; Model ini sesuai dengan baik di kawasan pantas, tetapi menyimpang pada kelajuan rendah-kerana model mengabaikan geseran statik. Nil mencatatkan had ini: model boleh dipercayai pada kelajuan tinggi, bukan pada kelajuan sangat rendah. Ia mereka bentuk pengawal dengan sewajarnya. Model dan simulasi AI dengan cepat ditubuhkan; tetapi pengesahan parameter dan perbandingan eksperimen mendedahkan kepada jurutera had sebenar kesahan model.

Kesilapan Biasa

  • Simulasi dengan parameter sampel/pemegang tempat AI dan membawa hasilnya kepada realiti.
  • Tidak mengesahkan simulasi dengan pusat pemeriksaan analisis bebas.
  • Melupakan kesan yang model diabaikan (geseran, tindak balas, kelewatan) dan mempercayainya dalam semua keadaan.
  • Memandangkan model "disahkan" tanpa pernah membandingkannya dengan ukuran sebenar.
  • Melangkau analisis kestabilan (tiang) dan hanya menyebut "graf kelihatan bagus".
  • Menggunakan model di seluruh kawasan kajian tanpa menentukan julat kesahan.

Secara ringkasnya

  • Model adalah penyederhanaan realiti yang bertujuan dan sentiasa meninggalkan sesuatu.
  • Simulasi membolehkan penalaan reka bentuk dan pengawal tanpa mempertaruhkan perkakasan.
  • Setiap simulasi mesti disahkan terhadap titik cincang analisis bebas.
  • Parameter model hendaklah datang daripada ukuran/lembaran data sebenar, bukan dibiarkan dengan nilai sampel AI.
  • Kestabilan dinilai dengan melihat lokasi tiang (satah separuh kiri).
  • Pengesahan menunjukkan kepada jurutera julat kesahan dan had model.

Tugasan permohonan

Pilih sistem dinamik mudah (motor DC, jisim-spring-peredam, litar RC). Minta AI membina model ruang keadaan atau persamaan pembezaan dan simulasikan tindak balas langkah dalam Python, dan pastikan anda meminta titik cincang keadaan mantap/analisis secara teori. Kemudian: (1) bandingkan hasil simulasi dengan nilai teori untuk melihat sama ada ia bersetuju, (2) tukar parameter sebanyak ±20% dan lihat berapa banyak keputusan berubah (sensitiviti), (3) tulis sekurang-kurangnya dua kesan fizikal yang model diabaikan dan di kawasan operasi mana ia akan menjadi penting. Terangkan julat kesahan model anda dalam satu ayat.