מה חדש בתחום המידול הפיזיקלי בסביבת MATLAB בגרסת R2021a?
גרסת R2021a של חברת MathWorks כוללת חידושים רבים בתחום המידול הפיזיקלי באמצעות Simscape וההרחבות של Simscape. זה המקום לקרוא על החידושים העיקריים.
תחום המידול הפיזיקלי באמצעות Simscape תופס תאוצה בשנים האחרונות, ורואה שימושים רבים, כגון תהליכים למערכות בקרה, מודלים פיזיקליים עבור סימולציות, חקר ביצועים ועוד, כאשר המטרה היא לדמות את הסביבה הפיזיקלית שלנו בדיוק גבוה ככל שניתן, לפני שנעבור לניסויים בעולם האמיתי.
בפוסט שלפניכם נסקור מה חדש ב- Simscape ומה חדש בהרחבות השונות שלו בגרסה האחרונה של כלי MathWorks. אך לפני הפירוט של החידושים בכל אחד מהכלים הרלוונטים לתחום המידול הפיזיקלי, כדאי להזכיר את ה- Simscape Onramp, שזהו קורס חינמי של כשעתיים שהתווסף לאחרונה לרשימת ההכשרות החינמיות שמציעה MathWorks, ושמסייע למי שרוצה להיכנס לעולם המידול הפיזיקלי באמצעות Simscape.
Simscape
Simscape זוהי סביבה למידול פיזיקלי, אשר מתבססת על מידול באמצעות רכיבים במקום כתיבת משוואות. ניתן ללמוד עוד בהרצאה בקישור.
נחלק את החידושים בסביבה זו לשלושה חלקים עיקריים:
- שפת Simscape, שזו היכולת ליצור בלוקים מותאמים עבורנו.
- Foundation library, שזוהי הספרייה המכילה את הבלוקים שלנו.
- Simulation capabilities, שאלה בעצם יכולות הסימולציה שלנו מבחינת דיוק/מהירות.
שפת Simscape:
- הוספת תחום מינימום ומקסימום: למשל נוכל להגדיר פרמטר שהוא זווית, ומראש לתחום אותו בין 0 ל-360 מעלות. כאשר הגבולות החדשים יצטרפו ללשונית Variables. כמובן שניתן גם לקבוע את ה- Priority לעמוד בתחום הזה.
- הוספת Table Lookup לתוך חישובי הבלוק: נוכל להגדיר כחלק מהחישובים שהבלוק שלנו עושה, שהוא יעשה אינטרפולציה לפי Lookup Table. כאשר ה- Lookup Table יכול להיות חד, דו, תלת וארבע מימדי. כמובן שנוכל גם להגדיר את האקסטרפולציה מחוץ לתחום, בדיוק כמו שהיינו עושים עם Lookup Table ב- MATLAB ו-Simulink.
Foundation Library:
- Multibody interface Blocks: ניתן לחבר רשתות Simscape שונות ל- Simscape Multibody, כאשר החיבור יעבור דרך ה- Mechanical. נוכל כך למדל מערכת תלת מימדית ב- Simscape Multibody ולחבר אותה דרך מערכת מכנית לשאר Simscape, ולכלול גם רשתות תרמיות, חשמליות ועוד, בקלות בתוך המודל. מידע נוסף בקישור. בנוסף, לרשימת הבלוקים הבאים יש input port אופציונלי שמאפשר להעביר מידע לגבי מיקום למפרק של Simscape Multibody:
- Translational Mechanical Converter (IL)
- Rotational Mechanical Converter (IL)
- Translational Mechanical Converter (TL)
- Rotational Mechanical Converter (TL)
- Translational Mechanical Converter (2P)
- Rotational Mechanical Converter (2P)
- Translational Mechanical Converter (G)
- Rotational Mechanical Converter (G)
- Translational Mechanical Converter (MA)
- Rotational Mechanical Converter (MA)
- Translational Hydro-Mechanical Converter
- Rotational Hydro-Mechanical Converter
- חיזוק הכלי hydraulicToIsothermalLiquid: הפונקציה יכולה לקבל עכשיו רשימת מודלים אשר מכילים בלוקים הידראוליים ולהמיר אותם ל- Isothermal Liquid. חשוב לציין שהכלי לא מוחק את הקבצים המקוריים, אלא מייצר קבצים חדשים עם תוספת converted לשם, כך ניתן לבדוק את המודלים ולראות אם התוצאות מספקות אותנו. לאחר שאנחנו מרוצים מההמרה, ניתן להשתמש בפונקציה hydraulicToIsothermalLiquidPostProcess בשביל לעדכן את כל שמות המודלים חזרה לשמות שאיתם עבדנו. מידע נוסף על שדרוג בלוקים הידראוליים ל- Isothermal Liquid נמצא בקישור.
- בלוק Saturation Properties Sensor (2P): מאפשר למדוד את מאפייני הרוויה של נוזלים וגז לפי הלחץ או לפי הטמפרטורה. ניתן גם למדוד את האנרגיה והאנתלפיה דרך הבלוק.
- חיזוק ספריית ה- Physical Signals: הסיגנלים הפיזיקליים מאפשרים לנו לבצע פעולות נוספות בתוך הרשת של Simscape, מבלי לעבור דרך סיגנלים של Simulink. כאשר בגרסה האחרונה התווספו:
- PS Ramp, PS Sine Wave, PS Step: מאפשר לנו לייצר סיגנל פיזיקלי, במקום לייצר את הסיגנל ב-Simulink ולהמיר אותו.
- PS Integrator: ניתן לאתחל את הבלוק מחדש לתנאי התחלה כאשר הבלוק מקבל טריגר. גם תנאי ההתחלה של הבלוק יכולים להיות פרמטר בתוך הבלוק או כניסה חיצונית.
- PS Math Function: התווספה אפשרות נוספת של u^v, כאשר האפשרות הזאת מעלה את סיגנל הכניסה u בחזקת v.
- שדרוג הבלוק PS Lookup Table Block: הבלוק מאפשר לבצע Table Lookup עבור מערך חד מימדי של נקודות.
- Power Dissipation Data Logging: לבלוקים הבאים נוספה האפשרות להקליט את איבוד האנרגיה כחלק מההקלטה שלהם מתוך Simscape:
- שדרוג הבלוק Variant Connector: הבלוק יכול כעת לעבוד עם mask, משתנים מה-model workspace, ו- Simscape Bus Blocks. ניתן כעת להשתמש ב-Simscape Bus Blocks בתוך אזור המוגדר ע"י הוריאנט, מידע נוסף בקישור.
Simulation:
- שדרוג daessc Solver: כשיוצרים מודל, הפותרן דיפולטית הוא Variable-step והשיטה דיפולטית היא Auto. החל מהגרסה החדשה, מודלים שכוללים בלוקים של Simscape ומשוואות דיפרנציאוליות אלגבריות, השיטה של ה-Auto תהיה DAE. זהו פותרן שעוצב במיוחד עבור המידול הפיזיקלי, כאשר הפותרן מאפשר לעשות fine-tune לביצועים שלו.
- שימוש ב-Run-Time Parameters עם Fast Restart דרך ה-property inspector: ניתן לעדכן פרמטרים המוגדרים כ-Run Time Paramters, דרך ה-Property inspector ולעבוד במצב של Fast Restart. כאשר נאתחל את המודל מחדש, הערכים החדשים יעודכנו.
- שדרוג Partitioning Solver: שיפור היציבות של הפותרן המקומי, ניתן כעת לעבוד ב-Robust simulation וכך עוד משוואות נפתרות בשיטת Backward Euler Scheme.
- שדרוג ה-workflow של Simscape HIL: ניתן לייצר מימוש HDL של המודל Simscape (דורש HDL coder).
- הקלטת מידע ב-accelerator mode: בגרסאות קודמות, היה ניתן להשתמש ב-Simscape data logging רק ב-normal mode, כעת ניתן להקליט את המידע גם ב-accelerator mode.
- שדרוג הפותרן הנומרי: יש כעת תמיכה רחבה יותר במשוואות דיפרנציאליות מסדר גבוה עבור משוואות וקטוריות. מידע נוסף בקישור.
- שיפור התוצאות המתקבלות מ-conserving laws: האלגוריתם החדש משתמש בשיטת פיתרון מסוג DAE (Differential Algebraic Equations) ומגיע לתוצאות יותר מדויקות. למשל ניתן לראות שיפור בשימור תנע עבור מערכות מכניות.
- דוגמאות חדשות: ישנן מגוון דוגמאות חדשות שניתן להיעזר בהן:
- Nonlinear Electromechanical Circuit with Partitioning Solver
- PEM Fuel Cell System
- Lithium Pack Thermal Runaway
- Variant Connector Block with Simscape Bus Block
- Mask Workspace Variable in Variant Connector Block
- Lead-Acid Battery with Dashboard Blocks
- Hydraulic Actuator with Analog Position Controller and Dashboard Blocks
בנוסך לבסיס של Simscape ישנן ארבע הרחבות: Simscape Electrical, Simscape Multibody, Simscape Fluids ו- Simscape Driveline, כאשר כל הרחבה נועדה לעזור לנו עוד בתחומה, כפי שיפורט למטה.
Simscape Electrical:
כלי זה נועד לעזור לנו למדל מערכות חשמליות מורכבות יותר בעזרת כלים מוכנים, למשל מנועים חשמליים, מעגלים נפוצים ועוד. בסרטון ניתן לראות בתמצית מה זה Simscape Electrical:
את החידושים ב-Simscape Electrical ניתן לחלק לשני תחומים: Electrical ו-Specialized Power Systems. חשוב לציין שבשניהם יש לרוב רכיבים דומים אך ניתן להשתמש בהם קצת שונה. אם לסכם בשתי שורות את ההבדלים ביניהם:
Specialized Power Systems: הקווים בצבע שחור, ניתן להיעזר בכלים כדי לתכנן את המערכת, למשל powergui.
Electrical: הקווים בצבע כחול, משתלב בקלות יותר עם שאר Simscape, נוח למערכת multi domain.
כמובן שתמיד אפשר לשלב בין השניים.
Electrical:
- פונקציה ee_comtradeDataset: פונקציה חדשה שיודעת לקרוא הקלטת COMTRADE ולהוציא אובייקט מסוג dataset.
- שדרוג הבלוקים N-Channel MOSFETand P-Channel MOSFET: ניתן להשתמש ב-Lookup table דו ותלת מימדי כדי לחשב את הקשר בין הזרם למתח. בנוסף, ניתן להגדיר את הקשר בין המתח לזרם עבור הדיודה המובנית כמידע בטבלה.
- פונקציה ee_getBillOfMaterials: פונקציה חדשה שמייצרת דוח עבור המודל שכולל את כל התת מערכות במודל, הדו"ח הוא קובץ HTML שמכיל סקירה של המודל, רשימת רכיבים פיזיקליים מ-Simscape Foundation ו-Simscape Electrical, כולל הערכים בתוך הרכיבים.
- המרה מ-SPICE: ה- SPICE Conversion assistant תומך במידול ערכים טפיליים. פרטים נוספים בקישור.
- שדרוג הבלוק Diode: ניתן כעת למדל תקלות, כאשר הבלוק יכול להפעיל את התקלות בזמן מסוים או כאשר הוא מגיע לסף מסוים או שילוב של שניהם.
- שדרוג הפונקציות ee_getPowerLossSummaryand ee_getPowerLossTimeSeries: הפונקציות כעת יכולות לחשב הפסדים עבור בלוקים של מוליכים למחצה.
- שדרוג הבלוק SPICE-Imported MOSFET: כעת ניתן לבחור פרמטריזציות נוספות עבור הבלוק, פרטים נוספים בקישור.
- בלוק Piezo Bender: (לא להתבלבל עם bender b rodriguez), בלוק אשר מייצג קרן בימורפית פייזואלקטרית בעלת חתך מלבני. הבלוק מייצג מכשיר אשר מתכופף כאשר הוא כפוף לפוטנציאל חשמלי בין הפלטות שלו.
- הסתרת ה-port הניטרלי במספר בלוקים: ניתן לסמן את ה-Zero Sequence ל-Exclude ואז ה-port n יהיה מוסתר:
- בלוק Fuel Cell: בלוק זה מתאר המרה של אנרגיה כימית ממימן לאנרגיה חשמלית, כאשר ניתן להתאים את רמת האמינות של המודל, בין מפושט עבור מהירות למפורט עבור דיוק.
- שדרוג הבלוק FEM-Parameterized PMSM: ניתן כעת למדל הפסדי ברזל לפי משוואות שטיינמץ. כמו כן, אפשר להוסיף port נייטרלי n.
- שדרוג הבלוק DC-DC Converter: ניתן להכניס את היעילות כטבלה ולחשב הפסדים כתלות בזרם היציאה והטמפרטורה.
- בלוק Compound Motor: בלוק אשר מייצג מנוע מרכב. ניתן להוסיף למנוע מאפיינים ותקלות.
- שדרוג הבלוקים Batteryand Battery (Table-Based): ניתן למדל דגדרדציה של ביצועי הסוללה כתלות בהזדקנות הסוללה. ההזדקנות יכולה להיות כתוצאה מזמן, טמפרטורה, שניהם, או מידע מטבלה.
- הרחבה של הספרייה Mathematical Transforms: נוספו בלוקים שמתארים טרנספורמציות של חמש ושש פאזות:
- הרחבה של הספרייה Pulse Width Modulation: נוספו בלוקים עבור מערכות עם חמש פאזות:
- שדרוג הבלוק Winding: ניתן כעת למדל תקלות תלויות בזמן ובהתנהגות, למשל כאשר המתח או הזרם עוברים סף מוגדר מראש.
- בלוק Rotating Air Gap: בלוק שמתאר רווח בין שן של סטטור ומגנט מסתובב. ניתן להשתמש בבלוק הזה כאבן בניין לבניית מנועי PMSM.
- שדרוג הבלוק Average-Value Voltage Source Converter (Three-Phase): ניתן כעת למדל הפסדים כתלות מתרמיקה, כאשר מאפשרים לבלוק להתחבר לרשת תרמית.
- בלוק Constant Current Load (Three-Phase): מספק זרם קבוע עבור מערכת תלת פאזית. ניתן גם למדל תקלות תלויות בזמן כחלק מהבלוק.
- בלוק Constant Current Load: מספק זרם קבוע. ניתן גם למדל תקלות תלויות בזמן כחלק מהבלוק.
- שדרוג הבלוק PMSM: יש כעת אפשרויות מובנות לפרמטריזציות של המנוע, כך שניתן למדל מנועים מסוימים לפי ספקים מסוימים.
- שדרוג בלוקים של שנאים: בכדי למדל בצורה נכונה יותר ריסון, ניתן כעת לציין את ההתנגדות הטורית של הסליל בבלוקים הבאים:
- שדרוג בלוקים של מנועים תלת פאזיים: ניתן כעת למדל השפעות תרמיות במנועים הבאים:
- הוספה של דוגמאות רלוונטיות:
- Lithium Pack Cell Balancing
- Lithium Pack Cooling
- Lithium Pack Short Circuit
- Lithium Pack DCFC
- SPICE Conversion of a MOSFET Subcircuit and Validation
- Three-Phase Grid-Tied Inverter Optimal Current Control
- Input Admittance Response of RLC Ladder Network with Mutual Coupling Between Multiple Coils
- Permanent Magnet Synchronous Generator Battery Charging
- Three-Phase Matrix Converter with Venturini Modulation
- Scalar Control in Matrix Converter-Fed Induction Machine Drive
- Piezo Bender Energy Harvester
- Compound Motor Design Optimization
- Faulted PMSM
- Parameterize the Lookup Table-Based MOSFET from SPICE
- Import Efficiency Map Data from Motor-CAD
- Analysis of Solar Photovoltaic System Shading
Specialized Power Systems:
- בנייה מחדש של הספרייה: ספריית הרכיבים עבור Specialized Power Systems סודרה מחדש כדי לעשות אותה יותר ידידותית למשתמש.
- שדרוג הבלוק Asynchronous Machine: ניתן כעת לספק את יחס הסיבוב עבור הבלוקים.
- שימוש באפליקציה Measurements and States Analyzer: ניתן להשתמש באפליקציה בכדי לחשב את תנאי ההתחלה והמצב המתמיד עבור הזרמים והמתחים במודל.
- שימוש באפליקציה FFT Analyzer: ניתן להשתמש באפליקציה לבצע ניתוחי פורייה לסיגנלים במודל.
- שימוש באפליקציה Load Flow Analyzer: ניתן להשתמש באפליקציה בשביל לבצע בדיקת עומסים ולתחל את המודל לערכים הנדרשים.
- דוגמאות חדשות:
- Speed Regulation of Brushless DC Motor Drive Using a Hysteresis-Based Current Controller
- Speed Regulation of a Brushless DC Motor Drive Using a Variable DC Link Six-Step Inverter
- Direct Torque Control of an Induction Motor Drive
- Direct Torque Control with Space Vector Modulation of an Induction Motor Drive
- Field-Oriented Control of an Induction Motor Drive Used in a Ground Transportation System
- Field-Oriented Control of an Interior Permanent Magnet Synchronous Motor
- Field-Oriented Control of a Surface Mounted Permanent Magnet Synchronous Motor
- Speed Regulation of a 6/4 Switched Reluctance Motor
Simscape Multibody:
כלי זה נועד למידול פיזיקלי של רכיבים ומאפשר לנו להתממשק עם מודלים של CAD ולעבוד בעולם הפיזיקלי, כולל ויזואליזציה של המודל המכני כאשר עובדים עם בלוקים מה-Simscape Multibody. ניתן ללמוד עוד בסרטון:
להלן החידושים העיקריים בכלי זה:
- בלוק Point Cloud: יצירת ענן נקודות עבור מידול מגע מפולג וממושך. הבלוק משפר את הביצועים של הבלוק Spatial Contact Force, כאשר מדמים מגע ממושך ומפולג.
- שדרוג הבלוק Constant Velocity Joint: ניתן כעת להשתמש ברצף סיבוב, כאשר אפשר לבחור בין Rotation Sequence עבור זמן ריצה מהיר יותר, וקווטרניון עבור מניעה מ- Gimbal lock.
- בלוק Point on Surface Constraint: מאפשר להגביל נקודה למישור, כאשר לנקודה יש חמש דרגות חופש ויכולה לנוע במישור. הבלוק חייב להתחבר לבלוק Infinite Plane.
- שדרוג הבלוק Point on Curve Constraint: ניתן להוסיף חישה למומנט המופעל על המפרק.
- שדרוג ה – Mechanics Explorer: כעת תומך גם ב- accelerator mode, פרטים נוספים על עבודה ב- accelerator mode בקישור.
- דוגמאות חדשות:
Simscape Driveline:
הכלי נועד לחזק את היכולות של Simscape Mechanical, ומאפשר לנו למדל גלגלי שיניים, תגובות של מתח ורפיון, ותהליכים נוספים של ממסרות. פרטים נוספים בסרטון:
- בלוק Motor & Drive: מפשט את התהליך של הוספת מנוע חשמלי למודל ויכול לעזור לבחור את המנוע הנכון עבור המערכת. זאת היא גרסה מפושטת של הבלוק Motor & Drive (System Level).
- בלוק Air Spring: ניתן להוסיף את הבלוק כדי לסנן רעידות בתדר גבוה. הבלוק משתמש בפרמטרים שלרוב ניתנים ע"י היצרן.
- בלוק Rope: ניתן למדל רשתות עם מתח/רפיון.
- שדרוג הבלוק Belt Pulley: הוספת כיווניות לחגורה בבלוק.
- דוגמאות חדשות:
Simscape Fluids:
הכלי מאפשר לנו למדל מערכות נוזלים וגז, וכן למדל תהליכי מעבר חום ומערכות תרמו דינמיות. פרטים נוספים בסרטון:
החידושים העיקריים בכלי זה:
- בלוקים Compressor (G) ו- Turbine (G): בלוקים חדשים למידול מערכות תרמו דינמיות.
- ממשק לרשת Multibody: המפעילים הבאים יכולים כעת לקבל מיקום מתוך מפרק מ- Simscape Multibody כאשר עוברים דרך Translational Multibody Interface או Rotational Multibody Interface
-
- Single-Acting Hydraulic Cylinder
- Double-Acting Hydraulic Cylinder
- Single-Acting Actuator (IL)
- Double-Acting Actuator (IL)
- Single-Acting Rotary Actuator (IL)
- Double-Acting Rotary Actuator (IL)
- Rotating Single-Acting Actuator (IL)
- Single-Acting Actuator (TL)
- Double-Acting Actuator (TL)
- בלוק P-H Diagram (2P): ניתן כעת לעקוב אחר הלחץ והאנתלפיה ברשת.
- שדרוג הבלוק Centrifugal Pump (TL): כולל כעת גם פרמטריזציה אנליטית ופרמטרי run-time לאופטימיזציה.
- שדרוג הבלוק Centrifugal Pump (IL): כולל כעת גם פרמטר של צפיפות ייחוס בשביל לשפר את הביצועים כאשר המפרט והרשת הפיזיקלית אינם זהים.
- שדרוג הבלוקים Check Valve(IL) ו-Orifice (IL): ניתן כעת למדל תקלות.
- בלוקים ממשקים חדשים Interface (2P-G) ו-Interface (2P-TL): ניתן כעת לחבר מערכות Two Phase Fluids עם מערכות Gas ו- Thermal Liquid.
- בלוק 4-Way 2-Position Directional Valve (IL): שסתום ארבע כיווני עם שני מיקומים.
- הוספת תרכובת Isobutane כחלק מה- Two Phase Fluids שמוגדרים מראש ב- two phase fluids properties