‏הצגת רשומות עם תוויות Simscape. הצג את כל הרשומות
‏הצגת רשומות עם תוויות Simscape. הצג את כל הרשומות

יום רביעי, 21 בדצמבר 2016

חידושים בבקרה ומידול פיסיקלי בגרסת R2016b

לפני כשלושה חודשים שוחררה גרסת ה-MATLAB השנייה לשנה זו, R2016b. הגרסה החדשה כוללת הרבה שיפורים ויכולות חדשות ל-MATLAB ולכלים המשלימים אותו, ובפרט – לכלים מעולם הבקרה והמידול הפיסיקלי. במסגרת סדרת הפוסטים העוסקים בחידושים בגרסת R2016b (לחצו לפוסט הקודם בסדרה), מובאת להלן סקירה בנושאים שבכותרת, אשר נכתבה על ידי אסף מוזס, מהנדס אפליקציה בחברת סיסטמטיקס. למעוניינים בסקירה בנושא משפחת הכלים למידול פיסיקלי, שפורסמה פה בעבר על ידי אסף, לחצו פה.

מידול פיסיקלי

Simscape
•          Gas Domain - מידול מערכות גז ברמות דיוק שונות
•          PS Lookup Table (4D) - חישוב שיערוך פונק' מרובות משתנים f = f(x1,x2,x3,x4)
וקבלת פלטים פיסיקליים
•          יצירת קוד משופרת (C / C++), מורחבת ומודולרית יותר
•          קישוריות משופרת בין עץ התוצאות לבין בלוקים במודל
•          Simscape Language - התניית קטעי קוד, הוספת אופרטורים מ-MATLAB לעריכת רכיבים, הכרזת פונקציות בקוד הרכיבים

Simscape Multibody
•          מצלמה דינאמית למעקב אחר אובייקטים במהלך הסימולציה
•          יצירת קבצי וידאו בפורמטים שונים ושליטה בקצב וגודל המסגרות משורת הקוד (smwritevideo) או מכלי ממשק גרפי יעודי
•         עידכון והרחבת סוגי היחידות הפיסיקליות הנתמכות

Simscape Driveline
•          השפעות תרמיות המתפתחות במצמד ומערכת הבלמים
•          מקורות סינוסאידלים ורעשים פיסיקליים בעלי התפלגות נורמאלית - כוחות, מומנטים, מהירויות והעתקה
•          מידול כשלים מכאנים ברכיבי ריסון מסוגי סיבוב / העתקה
•          מצמד מבוקר לוגית - הפעלה / השבתה של המצמד ע"י אותות לוגיים

Simscape Fluids
•          ספריית  Hydraulic Pump and Motor- שיפור החישובים הנומרים למעבר בין משטרי העבודה השונים (forward / reverse)
•          התיחסות ליעילות והפסדים נפחיים / מכאניים עבור משאבות ומנועים הידראולים
(תזוזה קבועה / משתנה)
•          ממשק TL-IL - חיבור בין רשת מידול נוזלים תרמיים (thermal liquid) לבין רשת מידול הידראולית (isothermal liquid)

Simscape Electronics
•          בלוק MOSFET - מידול מדויק יותר באזורי עבודה של מתח הסף
•          מידול טרנזיסטורים LDMOS/VDMOS - מתאים למערכות מתח גבוה
•          מידול מעבר חום עבור בטריות ומדידת השינויים הפנימיים
•          מנועי סרבו - שימוש בטבלאות נצילות וטיפול בכשלים

Simscape Power Systems
•          שינויים תרמיים - מידול הפסדים כתוצאה מהולכה ופעולות מיתוג
•          מידול קבל-על בעל יכולות טעינה / פריקה מהירות
•          ספריית בקרה המכילה רכיבי PWM תלת פאזיים (2-3 שלבים)

בקרה

Control System Toolbox
•          כוונון מערכות בקרה לתחום חרוט, עפ"י גבולות קבועים או גבולות התלויים בתדר
•          כוונון בקרה משופר עבור מערכות פסיביות
•          הגדרת הימנעות קטבים ואפסים מלהגיע לאינסוף (MaxRadius)
•          שיערוך מצבים עבור מערכות לא לינאריות באמצעות אובייקטי Kalman Filter מורחבים

Simulink Control Design Toolbox
•          גזירת קבוצת נקודות - שינוי פרמטרי המודל וחישוב מספר נקודות עבודה בתהליך מואץ (compilation)
•          תהליך יצירת מערכות LPV (Linear Parameter-Varying) משופר, חישוב היסטים עבור נקודות עבודה מרובות תוך התחשבות בקלטים, פלטים, מצבים ונגזרותיהם
•          יצירת מערך אובייקטים עבור מפרטי נקודות עבודה

Robust Control Toolbox
•          חישוב חוסן היציבות של מערכת הבקרה כתלות בתדר
•          פונקציות משופרות לחישוב הערך הסינגולרי (Miu) וזיהוי שיאים קריטיים היכולים להשפיע על אזורי היציבות – קבלת גבולות יציבות מדויקים יותר

Model Predictive Control Toolbox
•          בלוק  Multiple Explicit MPC Controllers - מידול בקר מסוג Explicit MPC בעל הגברים מתוזמנים (עבור כל נקודת עבודה), עבור כל הגדרת תת-בקר מסוג זה יהיה שימוש ב- Lookup Table מתאימה
•          MPC Designer App - שיערוך אוטומטי של זמן הדגימה וייבוא מודלים אשר נוצרו ע"י ה- System Identification (המרה אוטומטית)

System Identification Toolbox
•           Standalone Application - פריסה של הכנת הנתונים ושיערוך המודל באמצעות
ה-
MATLAB Compiler
•          זיהוי פונק' תמסורת עפ"י נתונים במישור התדר, בצורה מהירה ומדויקת יותר
•          פונקציות משופרות עבור ניבוי התגובה והשגיאות
•          טיפול בהשהיות במהלך שיערוך המודל הלינארי (במישור הזמן)


יום ראשון, 29 במאי 2016

מידול פיסיקלי

אני מתכבד לארח בפעם הראשונה בבלוג הזה את אסף מוזס, מהנדס אפליקציה העובד יחד עמי בחברת סיסטמטיקס, האחראי הטכני אצלנו על תחום המידול הפיסיקלי:

ככל שהזמן מתקדם קדימה, כך גם הטכנולוגיה המוכרת לנו מחיי היום יום הופכת להיות מורכבת יותר מבעבר ומכילה תחומים רבים ומגוונים יותר. כיום, כאשר אנו רוצים לפתח המצאה חדשה שתהפוך את חיינו לנוחים וקלים יותר, אנו צריכים להיות בקיאים בתחומים רבים יותר בכדי שהרעיון שלנו יקרום עור וגידים ויתממש. וכדי לעשות זאת בהצלחה, בקלות ובמהירות – מומלץ להשתמש בסביבה אחת עבור כל התחומים השונים.

משפחת הכלים למידול פיסיקלי של MathWorks, המבוססים על סביבת Simscape, מאפשרת בניה מהירה של מודלים פיסיקליים המתארים בצורה מדויקת את העולם האמיתי. סימולציה של המודלים הפיסיקליים הללו בעזרת הכלים הנ"ל מאפשרת בחינה מהירה של ביצועי המערכת, הרבה לפני בניית אב-טיפוס. בנוסף, ניתן לשלב כלים אלו עם מערכות נוספות בכדי ליצור סימולציה מערכתית מלאה יותר, לדוגמא עבור סגירת חוגי בקרה על המערכות הממודלות.

מודל דינמי מורכב של זרוע רובוטית בעלת מספר דרגות חופש. המודל מכיל את מערכת הבקרה,
הרכיבים האלקטרוניים ומכניקה תלת-מימדית של כלל המערכת (ניתן ללחוץ להגדלה)

להלן סקירה של יכולות הכלים השונים של חברת MathWorks למידול פיסיקלי:

Simscape
Simscape הינו כלי למידול וסימולציה עבור מערכות פיסיקליות רב-תחומיות, המאפשר ליצור בצורה מהירה מודלים של מערכות פיסיקליות בסביבת התכנות הגרפי Simulink, ולסמלץ אותם. בעזרת הכלי, ניתן למדל מערכות כגון מנועים חשמליים, מיישרי זרם, מפעילים הידראולים, מערכות קירור ועוד, וזאת על ידי שילוב רכיבים בסיסיים לתוך דיאגרמת בלוקים אחת.
בנוסף, Simscape עוזר לפתח מערכות בקרה ולבחון ביצועים ברמת המערכת (System-Level). בעזרת ה- Simscape Language, ניתן ליצור רכיבים, ספריות ותחומים חדשים המבוססים על בלוקים פיסיקליים גנריים. כמו כן, ניתן להשתמש בביטויים ופרמטרים מסביבת ה- MATLAB ולסגור חוגי בקרה בסביבת ה- Simulink.
כפי שנכתב לעיל, קיימים כלים מתקדמים נוספים עבור מידול פיסיקלי, כלים היושבים על גבי פלטפורמת ה- Simscape והמספקים בלוקים מורכבים יותר ויכולות ניתוח נוספות. כל הכלים הללו, וכמובן Simscape, מאפשרים יצירת קוד C מתוך דיאגרמת הבלוקים במטרה לפרוס ולהריץ את המערכות הממודלות בסביבות סימולציה אחרות (HIL: hardware-in-the-loop).
למידע נוסף - לחצו פה.

Simscape Multibody
Simscape Multibody (ובשמו הקודם: SimMechanics) מאפשר סימולציה עבור מערכות מכאניות בתלת-מימד כגון מערכות רובוטיות, מתלים לרכב, ציוד מכאני כבד ומערכות תעופתיות. בעזרת הכלי ניתן למדל מערכות מורכבות באמצעות בלוקים המייצגים חוליות, מפרקים, אילוצים, אלמנטים של כוחות/מומנטים וחיישנים. לאחר הגדרת כל האלמנטים, ניתן ליצור הדמייה תלת-מימדית ולבחון את דינאמיקת המערכת. ניתן לשלב כלי זה עם כלים פיסיקלים נוספים במטרה למדל את המערכת קרוב ככל האפשר למציאות. הכלי מגדיר ומחשב את משוואות התנועה עבור מערכת מכאנית שלמה. כמו כן, הכלי מאפשר לייבא לתוך המודל הרכבות CAD שלמות ואת המידע הרלוונטי עבורן: מסות, אינרציות, מפרקים, אילוצים וגאומטריות תלת-מימד.
למידע נוסף - לחצו פה.

Simscape Electronics
Simscape Electronics (ובשמו הקודם: SimElectronics) מספק ספריות רכיבים עבור מידול וסימולציה של מערכות אלקטרוניות ומערכות אלקטרומכאניות. הכלי כולל בלוקים המיצגים סוגי מנועים שונים, ממירי A/D, D/A, חיישנים, מפעילים ומוליכים למחצה (הרכיבים של המוליכים למחצה כוללים השפעות דינאמיות ולא לינאריות של הטמפרטורה על המערכת). ניתן להשתמש ברכיבי הכלי בכדי לפתח מערכות הפעלה אלקטרומכאניות ולבנות את התנהגות המודל במטרה להעריך ארכיטקטורות של מעגלים אנלוגים. הכלי מאפשר שילוב של תחומים פיסיקלים נוספים כגון: מכאניקה, חשמל, מעבר חום ועוד ממשפחת הכלים הפיסיקלים של Simscape. כמו כן, Simscape Electronics מאפשר פיתוח מערכות מורכבות כגון אלקטרוניקה של גוף הרכב, מכאניזם של מנועי סרבו בכלים תעופתיים, מגבירי שמע ועוד.
למידע נוסף - לחצו פה.

Simscape Driveline
Simscape Driveline (ובשמו הקודם: SimDriveline) מספק ספריות רכיבים עבור מידול וסימולציה של מערכות מכאניות מסוגים של סיבוב ו/או העתקה ומרכיבי רכב שונים כגון: מנועים, צמיגים, תמסורות גירים וממירי מומנט. ניתן להשתמש בכלי זה בכדי למדל תמסורות מכאניות מורכבות של מסוקים, ציוד תעשייתי כבד, מערכות העברת אנרגיה ועוד. בנוסף, הכלי מאפשר לשלב מערכות פיסיקליות מתחומים מגוונים: חשמל, הידראוליקה, פנאומטיקה ועוד ממשפחת הכלים הפיסיקלים של Simscape.
למידע נוסף - לחצו פה.

Simscape Fluids
Simscape Fluids (ובשמו הקודם: SimHydraulics) מספק ספריות רכיבים עבור מידול וסימולציה של מערכות נוזלים. הכלי מכיר רכיבים המתארים משאבות הידראוליות, שסתומים, מפעילים, צינורות ומחליפי חום. ניתן להשתמש בכלי זה עבור פיתוח מערכות כוח הידראוליות כגון: היגון כוח, כני נסע ועוד. הכלי מאפשר גם למדל מנועי קירור, חומרי סיכה עבור גירים ומערכות הספקת דלק. הכלי מאפשר שילוב של תחומים פיסיקלים נוספים כגון: מכאניקה, חשמל, מעבר חום ועוד ממשפחת הכלים הפיסיקלים של Simscape.
למידע נוסף - לחצו פה.

Simscape Power Systems
Simscape Power Systems (ובשמו הקודם: SimPowerSystems) מספק ספריות רכיבים עבור מידול, סימולציה וניתוח של מערכות זרם חזק (הספק). הכלי כולל מודלים של רכיבי הספק חשמליים, מכונות תלת-פאזיות, מנועים חשמליים, רכיבים לתמסורות מערכות זרם חילופין (FACTS) ורכיבים למידול מערכות אנרגיה מתחדשת. בנוסף, Simscape Power Systems מאפשר לחקור את ביצועי המערכת המתוכננת: ניתוח הרמוניות וחישוב עיוותי הרמוניות כולל (THD). הכלי מאפשר שילוב של תחומים פיסיקלים נוספים כגון: מכאניקה, חשמל, מעבר חום ועוד ממשפחת הכלים הפיסיקלים של Simscape.
למידע נוסף - לחצו פה.

מצורף תרשים מסכם של משפחת הכלים השונים של חברת MathWorks למידול פיסיקלי (ניתן ללחוץ להגדלה). כלים אלה הולכים ותופסים חלק משמעותי יותר ויותר בתהליכי פיתוח בארץ ובעולם, ומגרסה לגרסה נוספות להם עוד ועוד יכולות אשר מסייעות במידול נכון, מהיר וקל של העולם האמיתי.


יום שני, 15 באוקטובר 2012

הבחירות כבר כאן | אפשר לבחור בין שתי טכנולוגיות של SimMechanics

"הרשו לי לפנות את הבמה בפוסט הזה פעם נוספת לטובת רוני פאר, אשר עובד יחד עמי בחברת סיסטמטיקס והתארח בבלוג הזה מספר פעמים, האחרונה שבהן – לפני חודש וחצי".

אם אתם משלבים מערכות מכניות/אלקטרוניקה/בקרה או עובדים בתחום המכשור התעשייתי, בתעשייה הבטחונית, בתעשיית הרכב, בתחום המכשור הרפואי או בעולם הרובוטיקה - כדאי לכם להמשיך לקרוא. בגרסת R2012a בוצע עדכון משמעותי למוצר SimMechanics, ונוספה לו טכנולוגיה המהווה למעשה תחליף מלא לטכנולוגיה הישנה של המוצר הזה. כיום, מוצר זה כולל את שתי הטכנולוגיות, תחת שתי ספריות שונות, והמשתמשים יכולים לבחור באיזו גרסה לעבוד (השמות שלהן הם 1G עבור הטכנולוגיה הישנה ו-2G עבור החדשה). פוסט זה יעסוק בעיקר בטכנולוגיה החדשה.

רק רגע, מה זה בכלל ה-SimMechanics הזה?

SimMechanics הוא חלק מכלי המידול הפיסי של MathWorks, ואחד מהכלים הותיקים שלה (משנת 1996 לערך). מטרת המוצר הזה היא להקל על מידול וסימולציה של מערכות מכניות קשיחות תלת-מימדיות. הדוגמה הפשוטה ביותר היא זרוע רובוטית – כלומר מספר חלקים מכניים המחוברים ביניהם במפרקים סיבוביים – היכולה לנוע במרחב התלת-מימדי. SimMechanics מאפשר לאפיין את החלקים השונים (מסה, אינרציה ותכונות מכניות אחרות), את צירי החופש והתנועה (סיבוב, תנועה קווית, בורג וכו'), את הסביבה (גרביטציה למשל) ואת האינטראקציה עם הסביבה (כוחות המופעלים על החלקים, חיכוך/שיכוך ועוד). והיתרון הגדול ביותר של SimMechanics הוא שהכלי מאפשר למתכנן להתמקד ב"בעיה" ולא ב"מתמטיקה". כלומר במקום לכתוב הרבה נוסחאות – פשוט גוררים בלוקים, מחברים אותם ולבסוף מריצים את הסימולציה, וכל המשוואות נפתרות בעזרת המנוע של SimMechanics "מאחורי הקלעים".

למה MathWorks הוסיפה טכנולוגיה חדשה לכלי?

הטכנולוגיה הישנה פותחה בצורה מאד בעייתית, שהקשתה על הוספת יכולות ומודולים חדשים שביקשו המשתמשים בכלי (ויזואליזציה טובה יותר, יכולות של שילוב גופים גמישים, הוספת מתמטיקה של "התנגשויות" בין חלקים וכו'). לאנשי הפיתוח של MathWorks לקח הרבה זמן לעשות אפילו שדרוג קטן במוצר, ולכן במקום להמשיך ולהשקיע את הזמן הזה, הוחלט לעשות "cut" ולהחליף את כל המנוע המתמטי במנוע חדש, אשר נעזר בטכנולוגיה של Simscape – התשתית לכל כלי המידול הפיסי של MathWorks.

מה החידושים בטכנולוגיה החדשה?

• הגדרה פשוטה ונוחה יותר של גופים - יש מגוון של גופים מוכנים (גליל, אליפסה, כדור וכו').

• חישוב מסה ואינרציה בצורה אוטומטית ופשוטה.

• המערכת רצה חלק ומהר יותר.

• הגדרה של צירים ותנועה יכולה להיעשות ישירות באמצעות MATLAB – לרבות שילוב של "קדחים" בגוף. הדבר מאפשר יכולות הקיימות בתוכנות תיב"מ (במידה ואין אחת זמינה).

• חיבור גופים בסיסיים ליצירת אחד חדש, ללא שימוש ב"ריתוך" ביניהם. אין צורך להגדיר משוואות.

• אנימציה משופרת באמצעות ה-Mechanics Explorer, אשר בין יתרונותיה:
.     o מספר Views שונים בו-זמנית.
.     o האנימציה נשמרת ללא צורך בהרצה חוזרת של המודל.
.     o אפשר לשלוט על מהירות העדכון של האנימציה, אפשר לעשות Rewind, להריץ צעד-צעד וכו'.
.     o שמירה של סרטונים.
.     o "עץ גרפי" של חיבור החלקים וכיצד הם משוייכים אחד לשני, המזכיר את ה-Browser של Windows.

• שמירה אוטומטית (Logging) של כל הנתונים של ריצת הסימולציה, ללא חיבור חיישנים וסנסורים!

• דרגות החופש (ה-Joints) מכילות כבר בתוכן את החיישנים, ולכן אין צורך בהרבה בלוקים חיצוניים.

• ניתן לחבר בין בלוקים של הגרסה הישנה לבלוקים של הגרסה החדשה – עם כמה מגבלות.

מה המגבלות בהשוואה לגרסה הקודמת?

נכון לגרסה השניה של הטכנולוגיה החדשה (זו שנכללת בגרסת R2012b של כלי MathWorks) מרבית היכולות הקיימות בטכנולוגיה הישנה קיימות גם בחדשה. בגרסה השניה, למשל, ניתן כבר לייצר קוד C מתוך המודלים (באמצעות ה-Simulink Coder) ואף ניתן לייבא מודלים מתוך תוכנת תיב"מ (כמו SolidWorks).

עם זאת עדיין יש מספר חוסרים:
1. מגוון נמוך יותר של Joints (דרגות חופש).
2. לא ניתן להגדיר תנועה, ואז לפתור את הבעיה ההופכית, אלא רק להפעיל באמצעות כוחות.
3. אין שיטה אוטומטית לשדרוג מודלים מהטכנולוגיה הקודמת לחדשה, אך אנשי הפיתוח עובדים על כך.

 לסיכום, יותר מאי פעם, השימוש ב-SimMechanics מאפשר כעת:

• חסכון אדיר בזמן – במקום לכתוב משוואות ניתן פשוט לחבר חלקים.

• יבוא מודלים קיימים מתוכנת תיב"מ, לשם יצירת מודל מערכתי רחב יותר, הכולל גם מערכות אלקטרוניות ומערכות בקרה.

• שימוש חוזר במודלים שפותחו בעזרת כלי זה.

• ויזואליזציה מדהימה המאפשרת לראות בדיוק מה קורה בכל שלב נתון.

• בחירה בין שתי טכנולוגיות שונות.

• חיבור פשוט ל-MATLAB, Simulink ו-Simscape.

• אפשרות למקבל סימולציות, להשתמש בסקריפט לשינוי פרמטרים ולייצר קוד C מתוך המודלים.


האם אתם משתמשים ב-SimMechanics ? אם כן, האם כבר עברתם לטכנולוגיה החדשה ?