מה חדש ב-Simulink בגרסת R2022a?
בואו להכיר את החידושים בגרסה R2022a, שיכולים להאיץ את זמן הפיתוח שלכם ולהקל על תהליך העבודה שלכם! נתרכז בעדכונים ב-Simulink, כיצד השתפרה האינטגרציה של Stateflow עם Simulink ואילו רכיבים חדשים נוספו ל- Simscape Electrical.
שדרוג Mask Editor
הממשק של Mask Editor שלו כעת יותר קל ואינטואיטיבי, ניתן לייצר dialog box לקביעת פרמטרים ואייקונים ל-mask בצורה יותר פשוטה, לשלב קוד עבור אתחול ולהוסיף callbacks עבור קומפוננטות ב-dialog box. בנוסף ניתן ליצור dialog box יותר מגוונת (נוספו קומפוננטות כגון: popup, lookup table ועוד), נוסף constraint manger בו ניתן להגדיר data type והממדים של הסיגנלים בפורטים שב-subsystem שמתחת ל-mask.
הממשק החדש של Mask Editor
שילוב קוד ++C ב-Simulink
בגרסה R2022a השילוב של קוד ++C לתוך Simulink הרבה יותר קל!
לפני R2022a, עמדו בפנינו שתי אפשרויות לשלב קוד ++C
- לכתוב S-Function
- לכתוב סוג של C-style wrapper function, על מנת להביא קוד ++C לתוך C Function Block.
עם השיפור בגירסה R2022a, ניתן לשלב קוד ++C בתוך C Function Block ממש בדומה לקוד C.
ניתן לקרוא בהרחבה על השלבים לאינטגרציה בדוקומנטציה של C Function Block.
תמיכה מורחבת בשילוב קוד ++C
שיפור בביצועי הסימולציה
כפי שרבים מכם וודאי מכירים, פלטפורמת Simulink משתמשת ב-Solver אחד עבור סימולציה. עובדה זו עשויה להביא לביצועים לא אופטימליים במקרים שבהם המודל כולל מספר מערכות, שלכל אחת דינאמיקה שונה, או time scale שונה.
הפיצ'ר החדש מאפשר ל-Model Reference להשתמש ב-Fixed Step Solver משל עצמו (השונה מ-Solver של המודל ברמה מעליו). פיצ'ר זה שימושי עבור מערכות רציפות, כאשר יש time scales שונים. עם זאת, חשוב לשים לב למספר מגבלות:
- בחירת Solver מקומי שונה מתאפשרת רק עבור Normal Mode
- Solvers מקומיים יכולים להיות מסוג Fixed Step בלבד
- המרת קוד אוטומטית אינה נתמכת כאשר יש שני פותרים שונים
בחירת Solver עצמאי ל-Model Reference
Simulink Compiler
באמצעות Simulink Compiler ניתן לשתף את המודל שלנו כ-standalone executable, אפליקציה אינטרנטית או FMU (Functional Mock-up Unit).
מקרי השימוש ב-Simulink Compiler
בגרסות קודמות, על מנת לשתף סימולציית Simulink עם ממשק גרפי בפורמט של אפליקציה, היה צריך לפתוח את App Designer ולכתוב קוד MATLAB – מה שלא בהכרח מתאים לכל משתמש Simulink.
כעת, נוסף פיצ'ר יצירת אפליקציה מ-Simulink בצורה אוטומטית וישירה, ומבלי לרשום אפילו שורת קוד אחת!
פשוט מריצים את הפקודה simulink.compiler.genapp ('MyModel') ונוצרת אפליקציה. ניתן לשנות בה את המספר הרצוי של רמות ההיררכיה של המודל, והכי חשוב – להפוך את האפליקציה ל-standalone.
לפני גרסה R2022a, לא היה ניתן להמיר Protected Model ל-FMU. עכשיו ההגבלה הזאת הוסרה וניתן לייצא מודל מוגן ל-standalone FMU. הוספה זאת מאפשרת להשלים את ה-workflow, שכולל המרה ממודל מוגן ויצירת standalone FMUs.
Stateflow
מבחינת אינטגרציה של Stateflow עם Simulink, כעת ניתן לשלב breakpoints שנמצאות ב-Stateflow לתוך Simulink Breakpoints Pane. כך ניתן לעשות enable ו-disable, למחוק ולשנות breakpoints של Stateflow דרך Simulink.
Simscape Electrical
ב-Simscape Electrical נוספו בלוקים חדשים עבור אנרגיה מתחדשת, טכנולוגיית מימן ומיקרו-גריד.
כעת ניתן למדל תהליך ייצור מימן באמצעות בלוקים של אלקטרוליזה. בלוק האלקטרוליזה החדש מאפשר מחקר ברמת High level, בשילוב עם מערכות פיסיקאליות שונות.
בתחום האנרגיה המתחדשת- ניתן לבחור פרמטרים עבור תאים סולאריים, מתוך רשימה של יותר מ-250 יצרנים שונים. מידול של שדה סולארי מאפשר לבחון את השדה, רכיביו ויעילותו בשלבים מוקדמים לפני הקמת השדה. ניתן לבחון את ההשפעה של פאנל אחד על סך המערכת.
ניתן לקרוא בהרחבה על החידושים והעדכונים בכלים השונים ב-Release highlights וב- Release Note.