כיצד לגוון בחומרי ה-SOLIDWORKS VISUALIZE ?

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

ספריית חומרים מהענן של התוכנה:

ספריית חומרים של התוכנה:

אז מה קורה אם נכנסתי לתוך תיקייה ואין בה את החומר הספציפי הדרוש (גם לא מהענן)?

לשאלה זו יש שתי תשובות עיקריות:

תחילה, נלך בדרך המוכרת והאהובה והיא הגדרת החומרים דרך הסוליד. נפתח הרכבה/חלק ודרך הסוליד נגדיר את ה-Appearance הרצוי, לאחר מכן דרך התוסף של ה-SOLIDWORKS VISUALIZE בסוליד נבחר באופציה של Advanced Export שמעבירה חומרים מתוך הסוליד אל ה-SOLIDWORKS VISUALIZE ונוכל לראות אותם ב-Appearance.

וכך ניתן לערוך את החומר ולהתאים אותו לצרכים שלכם 🙂

כעת תשובה מספר שתיים:

ה-SOLIDWORKS VISUALIZE עובד עם עוד מספר פורמטים, אשר ניתן להוריד למחשב ולהשתמש בהם ללא עבודה קשה.

הראשון הוא פורמט MDL – פורמט זה מיוצר על ידי חברת Nvidia. הם קבעו את המראה, ההתנהגות, את טווחי הפרמטרים ועוד. ניתן להוריד את החומרים מהלינק הבא: https://developer.nvidia.com/vmaterials.

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

לאחר מכן, נפתחת לי תיקייה ואני בוחרת את הניתוב לתיקיית החומרים שהורדתי ואת החומר אותו ארצה להוסיף לסיפרייה שלי.

שימו לב: לכל חומר שירד, יש מספר קונפיגורציות ולכן כאשר נטען חומר לתוך ה-SOLIDWORKS VISUALIZE, נראה כי נוסף שם החומר אבל במספר Appearances שונים כמו שרואים בתמונה.

הפורמט השני הוא Library PBR – ניתן לחפש בגוגל יש לא מעט סיפריות חלקן חינמיות וחלקן בתשלום.מצרפת לינק לאתר אחד חינמי – https://freepbr.com.

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

לאחר מכן נגדיר לתוכנה להשתמש בחומר PBR:

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

כמובן אם משהו לא מובן ניתן לפתוח קריאת שירות אצלינו באתר כאן.

עבודה נעימה ומגוונת 🙂

*

מה עושים כשלא ניתן להוסיף Property Name ב-SOLIDWORKS

אז גם אתם בניתם והתאמתם את הCustom Properties והם נעלמו? עברתם שדרוג והם כבר לא מופיעים יותר?

ניסיתם ולחיצה על החלונית של Property Name לא פותחת כלום?

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

הבעיה נובעת מכך שה-SOLIDWORKS לא יכול לאתר את הקובץ properties.txt.

על מנת שהתוכנה תוכל לאתר את קובץ ה- properties.txt נכנסים להגדרות->System Option->File location- בחץ הקטן נחפש הגדרה שקוראים לה Custom Property File ושם נגדיר את המסלול הדרוש:

לרוב, המסלול הינו: C:\ProgramData\SOLIDWORKS\SOLIDWORKS 20XX\lang\english, במקרה ואצליכם המסלול שונה, ניתן לבצע חיפוש לפי שם הקובץ properties.txt, ולנתב למסלול הרלוונטי.

לאחר מכן נפתח את ה-SOLIDWORKS מחדש ונגלה שהמצב חזר לקדמותו.

עבודה נעימה 🙂

לא הסתדרתם?

תוכלו לפתוח קריאת שירות כאן.

*

מה הסיפור של MBD? ואיך זה מתקשר לתעשיית המכשור הרפואי?

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

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

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

במסגרת מחקר של ה-FDA שחקר כיצד ניתן להפחית את כמות ה-recalls והשגיאות של מוצרים רפואיים ולשפר את הפיתוח עצמו של המוצרים, ה-FDA חבר לחברת MathWorks, והם שיתפו פעולה על מנת לחקור כיצד ניתן לשפר את תהליך הפיתוח של מוצרים רפואיים בצורה שתבטיח פחות שגיאות כבר במהלך הפיתוח עצמו, בשלבים מוקדמים ככל הניתן.
הפתרון אשר נחקר והתקבל על ידי ה-FDA הוא פיתוח בגישת MBD (Model-Based Design) כדרך לשפר את הבטיחות של המוצרים הרפואיים, תוך שימוש בשיטות פורמליות ותהליכי V&V סדורים בתהליך הפיתוח.

אז מה הרעיון שעומד מאחורי MBD?

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

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

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


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

איך זה נראה בפועל?

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

המודל כולל תתי מערכות של השסתומים, בקרי Real-Time, מסכת ההנשמה, והמידול של הפציינט (ריאות וקנה הנשימה).

בגישת MBD, המודל נולד ונוצר מתוך הדרישות – למעשה, הוא מהווה למסמך חי ובר הרצה של דרישות המוצר.

הדרישות מקושרות בקישור דו כיווני למודל, מה שמאפשר מעקב מלא בין המימוש לבין הדרישה.

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

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

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

האינטגרציה למעשה כבר בוצעה בשלב המודלים וכעת בבדיקות הסופיות כל מה שנותר הוא לאשש את תקינות המערכת והימצאות שגיאות.

אבל אל תסמכו עליי, תראו איך חברת Weinmann Emergency Medical הגרמנית פיתחה מכונת הנשמה ניידת על ידי שימוש בגישת MBD, ומה יש לה להגיד על זה.

תרצו לשמוע עוד על הנושא? צרו אתנו קשר ונשמח לעזור לכם להגיע למטרות שלכם

למידע נוסף:

  1. [1] Artificial Intelligence and Machine Learning (AI/ML) Software as a Medical Device Action Plan. FDA. January 2021.
  2. Model Based Design for Medical Device Development – White paper

AI in PCB Design – The Current State

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

איפה אפשר להשתמש ב AI בתכנון PCB

בניית PCB כוללת מספר רב של משימות, החל מתכנון מעגל ועד עריכת ה- PCB והכנה לייצור. נכון לסוף שנת 2023, אין מערכת אחת שיכולה לטפל בכל משימות ההנדסה יחד.

CHATGPT וצ'ט-בוטים אחרים

כיוון ש CHATGPT הוא המוכר ביותר בכל הנוגע ל Generative AI. כדאי להתייחס לאפשרויות שיש לו ואיך אנשים משתמשים בו. לצ'טבוטים אחרים יש בעצם את אותן יכולות, כך שניתן לבצע את הפעולות האלו גם בפלטפורמות האלו.

אז מה הן האפשרויות?

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

יצירת קוד או סקריפטים – כתיבת קוד או סקריפטים זו דרך קלאסית לשימוש ב CHATGPT כולל סקירפטים של Altium

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

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

שאילתות בDATASHEET באמצעות plug-ins – חיפוש פיצ'רים באינטרנט מאפשר למשתמשים להעביר כתובות אתרים של DATASHEETS לצ'אטבוט וכך תוכלו להתשמש במידע מ DATASHEETS בפרומפטים אחרים.

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

יצירה מתוך דרישות מערכת

גישה נוספת מונחית בינה מלאכותית שמיישמת קוד לאוטומציה ב –  front-end system-level design מגיעה מ JITX ונוקטת בגישה מבוססת קוד לפיתוח מעגלים ומאפשר לייצר פרוייקטים בפורמט הקבצים של Altium.

למרות שאינה מבוססת פרומפטים (prompt-based) היא משתמשת בבינה מלאכותית כדי לייצר את OUTPUTS ל CAD ולסייע למתכנן ה PCB בתהליך התכנון. עדיין יהיה בן -אדם בתהליך כיוון שצריך לבצע בדיקות ואימות של התוצאות מול דרישות המערכת.

למידע נוסף ניתן לצפות בפרק האחרון של הפודקאסט שלנו OnTrack  עם דאנקן הלדיין מייסד וCTO של JITX .

בדיקה ויזואלית ומעקב

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

כאן אפשר להשתמש ב Cybord.ai – מערכת המבוססת AI ועובדת על קווי הייצור כדי לזהות רכיבים וגם לשנות מיקומים אם יש חשד שרכיב מסויים לא תקין.

ברגע שמזהים בעייה עם מערכת מסוג זה, המשוב חייב להגיע ישירות לצוות התכנון כדי שניתן יהיה לעדכן את התכנון בגרסאות עתידיות. זהו מרכיב חיוני של בקרת איכות שכיום מבוצע ידנית לרוב. למידע נוסף, צפו בפרק האחרון של OnTrack עם ד"ר אייל ווייס מייסד וCTO של חברת Cybord.ai

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

  • מפרטי תקינות חשמל
  • מפרטי תקינות אות/סיגנל
  • תפוקה/צריכת חשמל
  • סוגי הממשקים 
  • תכנון שכבות

כפי שניתן לראות בדיאגרמה מעל, זהו התהליך שכיום לוקח חלק בכל נושא תכנון/עריכת PCB מבוסס AI:

  1. אימון מכונה
  2. ייצור נתוני PCB
  3. הערכה אנושית

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

כאשר שכלי התכנון וworkflows מתפתחים, אפשר להיות בטוחים שנהיה שם להדריך אתכם בעולם החדש של תכנון PCB מונחה בינה מלאכותית.

אני מזמין אתכם להיכנס לדף הלינקדין שלנו ולהתעדכן בפוסטים מעניינים, בנוסף לדף הוובינרים שלנו ביוטיוב שמתעדכן ברמה שבועית.

למידע נוסף צרו איתנו קשר,

תודה שקראתם ונתראה בבלוג הבא,

בן מימון

New Multi-Board Support for External PCBs & Components

בסביבת System Design של Altium Designer היכולת לחבר מספר מעגלים מודפסים קיימת כבר כמה שנים טובות, אך את נושא המעגלים הקנויים או מעגלים שכבר תכננתי וייצרתי בעבר ואני רק רוצה ייצוג שלהם בסכמת העל, עד היום עדיין לא היה אפשר לקבל.

במאמר זה נציג לכם את החידוש לסביבת Multi-Board Design בנושא מעגלים קנויים וייצוגם בסכמת ה-System של המוצר.

נתחיל בהקדמה קצרה…

המטרה העיקרית של תכנון מרובה מעגלים (Multi-Board Design) היא לאחד את כל האלמנטים של מוצר אלקטרוני לכדי מערכת אחת לייצור או במילים אחרות – System Design.

תפוקות ייצור והרכבה, מפרויקטי משנה (פרויקטים של מעגלים בודדים), במסגרת פרויקט Multi-Board מאפשרות ייצור של אותם מודולים ספציפיים.

בנוסף להגדרות התכנון של תתי-המודולים של הPCB, המארזים הנדרשים, החומרה והחיווטים; תכנון מערכת צריך לכלול גם נתוני ייצור מרכזיים המתייחסים למוצר השלם, כגון הגדרות יחידות של חלקים ובשלמותו.

בגירסה החדשה של תוכנת Altium Designer 24.5 ייצא כלי חדש שיודע להתמודד עם מעגלים קנויים וגם חיבור של מעגל בסביבה למעגל או לרכיב במקום רק למעגל.

גירסא זו מרחיבה את הפונקציונליות של סביבת Multi-Board Design כדי לספק ממשק וחיבור למעגלים/רכיבים חיצוניים שאינם חלק מפרוייקטי ה-PCB הרגילים.

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

כאן ניתן לראות שכעת נוספה יכולת למיקום של מודול שנקראת – Custom Part שמהווה חיבור של מעגל בסביבה לרכיב אלקטרוני מהספרייה שלכם או של Altium Vault:

דוגמא למיקום רכיב בסביבת ה – System Design והמחשה של כל פין של הרכיב כ – Module Entry:

כעת הסביבה של Altium Designer לתכנון דיאגרמת בלוקים של המוצר הכולל הינה מקיפה ושלמה הרבה יותר. במידה ואתם מעוניינים לקבל מידע בנושא נא פנו אלינו באחד מהערוצים ונשמח להציג לכם את הפתרון שלנו.

אני מזמין אתכם להיכנס לדף הלינקדין שלנו ולהתעדכן בפוסטים מעניינים, בנוסף לדף הוובינרים שלנו ביוטיוב שמתעדכן ברמה שבועית.

למידע נוסף צרו איתנו קשר,

תודה שקראתם ונתראה בבלוג הבא,

בן מימון

צפיה בקבצי SOLIDWORKS COMPOSER מכל מכשיר ומכל מקום

התוצרים יכולים להיות מסוגים שונים, והתוצר האפקטיבי ביותר הוא צפיה ישירה בקבצי המקור שמאפשר גם צפיה תלת-ממדית בפעולות השונות וגם אפשרויות שונות לאינטראקטיביות מול המשתמש.

בעבר, היה ניתן לצפות בקבצים אלה רק ע"י התקנת Player במחשב מבוסס מערכת הפעלה של Windows.

כיום, קיימת אפשרות לצפות בקבצים מכל מכשיר (גם ניידים), מכל מקום וללא צורך בהתקנה של תוכנת Player.

זאת ע"י שימוש בשירות הבסיסי של ה 3DEXPERIENCE שכלול היום במסגרת חוזה התחזוקה בעמדות SOLIDWORKS חדשות.

להלן השלבים לשיתוף קבצי SOLIDWORKS COMPOSER בסביבת ה 3DEXPERIENCE.

1. הפקת קובץ COMPOSER ושמירה שלו בפורמט smg:

2. כניסה לסביבת ה 3DEXPERIENCE והפעלת ה 3DDrive שהינו App בסיסי וקיים בכל רישיון 3DEXPERIENCE:

3. שמירת קובץ ה smg לתוך סביבת ה 3DDrive:

ניתן לפתוח מחיצה חדשה, בחירת Upload file, או פשוט גרירת הקובץ אל חלון ה 3DDrive:

4. סימון הקובץ, ובחירת Share:

5. המערכת מאפשרת מספר אפשרויות:

א. Share with users- שיתוף עם משתמשי 3DEXPERIENCE בתוך הארגון.

ב. Publish to 3DSwym – פרסום ב"רשת החברתית" הארגונית שלכם בסביבת ה 3DEXPERIENCE.

ג. Share with external- שיתוף עם כל אחד, גם מחוץ לארגון שאינו מחובר לסביבת ה 3DEXPERIENCE שלכם ואין תלות אם יש להם רישיונות.

6. נבחר את האפשרות השלישית כדי לשתף עם גורמים מחוץ לארגון שלנו:

ניתן לאפשר לצופה בקובץ לכתוב הערות ולהגביל את מי מאפשר לו לצפות בקובץ בעזרת רשימת אימיילם.

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

בסוף נלחץ על Copy external link ונקבל לינק שניתן לשלוח לגורמים הרלוונטיים.

7. מי שמקבל את הלינק נדרש להזדהות, ואם זו פעם הראשונה שהם מתחברים לסביבת ה 3DEXPERIENCE נדרש לייצר שם משתמש וסיסמה שבה הם נכנסים למערכת:

8. כעת ניתן לצפות בקובץ ה COMPOSER האינטראקטיבי בכל מכשיר וללא צורך בהתקנת COMPOSER PLAYER מתוך ה Internet Browser:

AI ב-MATLAB נועד עבורכם המהנדסים!

הבעיה היא (וגם היתרון), שאנחנו ממש טובים במה שאנחנו עושים – למעשה אנחנו מומחים אמיתיים ב-Domain שלנו – אבל אולי טרם רכשנו ניסיון ב-AI, או שפשוט עוד לא הצלחנו לגייס צוות של Data scientists שנוכל לרוץ איתו.
ואולי – כבר יש לנו תהליך פיתוח שלם שפיתחנו כבר, ורק היינו רוצים לשבץ לו מודל מוכן שחברינו מצוות מקביל פיתחו בפלטפורמה אחרת כמו Pytorch או Tensorflow?
כבר ראיתי הרבה פעמים מפתחים ומהנדסים בשלבים שונים שעומדים במקום מול שאלות אלו ולא יודעים כיצד להתקדם..

טוב, אני כאן כדי להרגיע ולהגיד – יש לנו הרבה איך לעזור לכם!

אחלק את הפוסט הבא לנקודות – כשבכל אחת מהן טמון ערך רב שניתן לקבל יחד עם כלי MathWorks ל-AI לצד סיסטמטיקס.

  • MATLAB נועדה למהנדסים!
    ולכן בראש ובראשונה חשוב להבין ש-AI ב-MathWorks כולל גם את כל היכולות המתקדמות מוורטיקלים הנדסיים מעולמות כמו Predictive Maintenance, Radar, Lidar, Visual Inspection, Virtual Sensing, ROM, Wireless, Medical Imaging, ועוד.
    מדובר כאן על פתרון שיכול לשלב ולענות על הבעיות ההנדסיות הספציפיות מה-Domain הרלוונטי לכם.
  • פיתוח AI בגישת Low Code\No Code במטרה להרחיב את קהל המפתחים והמהנדסים שיוכלו להתעסק ב-AI בחזית הטכנולוגיה.

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

ובאמצעות גישות אלו ניתן לפתח פרויקטים שלמים עם כתיבת קוד מינימלית/ ללא כתיבת קוד כלל.

כל זה תוך כדי כך שאין התחייבות לשפת פיתוח אחת מסוימת, ובעיקר – תוך כדי היכולת להתרכז במה שחשוב באמת: הבעיה עצמה אותה אנחנו מעוניינים לפתור (ופחות באיך מיישמים את ה-AI).

האפליקציות תמיד מתעדכנות ומתרחבות; למשל בגרסה האחרונה בוצעו שיפורים נוספים באפליקציית Deep Network Designer, למשל לייצוא רשתות הישר לתוך Simulink ושיפורים בייבוא רשתות מ-Pytorch ו-Tensorflow היישר לתוך האפליקציה (מעבר לארסנל הרשתות המאומנות הזמינות לייבוא) – להמשך ביצוע שינויים בארכיקטורה (אם נדרש), אימון מחדש, fine tuning, ועוד.

  • התמונה השלמה: שילוב AI בתוך Simulink

בשורה התחתונה, אנחנו לא מפתחים רק רכיב AI קטן ויחיד שמקבל תמונות של חתולים ומסווג אותם לפי רמת חמידות, אנחנו עושים הרבה יותר מזה: אנחנו צריכים בסופו של דבר לשלב את רכיב ה-AI בתוך מערכת שלמה – מערכת שכנראה משלבת בתוכה רכיבים נוספים, בין אם מדובר ברכיבים פיזיקליים, חשמליים, רכיבי בקרה, סנסורים, תקשורת, ועוד!
בנוסף לכל זה, המערכת במרבית הסיכויים תצטרך לעבור אופטימיזציות ולהיות יעילה ביותר על מנת לעבוד בסופו של דבר על טרגט היעד, בין אם מדובר על חומרה מסוגים שונים, בענן, או על מערכת אנטרפרייז…
יש כאן המון רכיבים לדאוג להם – כשכולם צריכים לעבוד יחד בצורה הטובה ביותר!


ובהחלט בגרסה האחרונה התווספה יכולת של שילוב בלוקים היישר מ-Pytorch,  Tensorflow ו-ONNX בתוך מודלים של Simulink – כך שגם אם המודלים שלי כבר אומנו ב-Open Source, אוכל לבחון ולסמלץ את התנהגות של המערכת כולה!

  • אנחנו חייבים לסמוך על החלטות מודלי ה-AI ברמה הגבוהה ביותר:
    עבור תעשיות שמפתחות מוצרים "רגישים" כמו התעשייה הביטחונית, תעשיית הרכב והמכשור הרפואי, מעבר לאתגרים הקשורים באימוץ AI לתהליך הפיתוח שלהם, מתווסף אתגר נוסף ולא פחות חשוב: למוצרים אותן הן מפתחות, עלולות להיות השלכות מסכנות חיים.
    ולכן עליהם לסמוך בלב שלם על מודל הניבוי ועל תהליך קבלת ההחלטות הפנימי המתרחש, על מנת לאמת את המהימנות שלו.
    ונקודה זו באה לידי ביטוי מ-3 כיוונים שונים:
    • Explainable AI (XAI): או – למה מודל ה-AI שלנו הגיע להחלטה המסוימת שהגיע אליה?
      חשוב שנשאל שאלות (ונצליח לענות עליהן) כמו – למה המודל לא בחר בניבוי אחר? מתי המודל מצליח להגיע לדיוקים טובים? מתי הוא נכשל? מתי אוכל לסמוך עליו? איך אוכל לתקן את השגיאות של המודל?
      במיוחד בתעשיות הנ"ל אשר נדרשות בעמידה בתקנים רגולטורים מאוד מחמירים – חשוב שהחברות השונות יוכלו לסמוך על המודלים שהן מפתחות.
    • ביצוע וולידציה וורפיקציה של מודלי ה-AI:
      אימוץ שיטות ווריפיקציה וולידציה למודלי AI עבור פיתוח מוצרים הנדרשים לעמוד בתקנות הבטיחות המחמירות ביותר, בין היתר על ידי שיטות פורמליות לווריפיקציה על מנת לאמת את הרובסטיות של מודלי החיזוי (עם DL Verification Library)

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

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

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

    יכולת שיתוף הפעולה בין הפלטפורמות מאפשרת לנו כמפתחים למנף את העבודה שפותחה על ידי מפתחים אחרים ולהשתמש ב-MATLAB לחלקים אחרים של הפיתוח, כמו אלגוריתמי עיבוד מקדים קיימים או למנף את יכולות יצירת קוד.
  • אומרים שאין הנחתום מעיד על עיסתו … אבל נקודה לא פחות חשובה היא:
    אנחנו 😊 – הצוות בסיסטמטיקס והצוותים השונים ב-MathWorks!
    למידה מתמדת, הכשרות, סדנאות Hands-on, כנסים ואירועים שונים הם רק חלק מתפקידנו.
    בסיסטמטיקס קיים מערך של מומחים טכניים שישמחו לעזור לכם לבחור את הדרך הנכונה עבורכם לפיתוח ולהטמיע תהליכי עבודה חדשים ויעילים יותר בחברה.
    בנוסף בכל ימות השבוע מנגנון של תמיכה טכנית פעיל ועומד לשירותכם! במידה ונתקלתם בבעיה – באמת שנשמח לעזור ובמקרה הצורך להגיע עד אליכם.

אתם מוזמנים ליצור איתנו קשר ולשמוע עוד על איך נוכל לתרום לכם 😊  

לקריאה (ולצפייה) נוספת:

  1. MATLAB and Simulink for AI (32:23)
  2. AI with Model-Based Design (22:42)
  3. Integrating AI into System-Level Design (E-book)
  4. What is Explainable AI? (עמוד באתר)

מה חדש בגרסת R2024a ב-MATLAB ו-Simulink?

שינויים בפלטפורמת MATLAB

  • בודק איות (Spell Checker) – גם ב-Editor וגם ב-Live Editor.
    • איזו תוספת כיפית? מדובר באחד הפיצ'רים שהכי הרבה משתמשים ביקשו להוסיף – ועכשיו הוא כאן.

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

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


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

שינויים באינטגרציה בין MATLAB ל-Python

  • הרצת קוד Python מ-MATLAB בגישת Low Code:
    • על מנת להימנע משגיאות סינטקס בעת שימוש בפונקציות pyrun ו-pyrunfile, שגיאות שעלולות להיות מבלבלות ומבזבזות זמן – כעת ניתן להריץ קוד Python בצורה אינטראקטיבית באמצעות Live task חדש בשם Run Python Code.

באמצעות ה-Live Task ניתן:

  • לכתוב ולהריץ את קוד ה-Python
  • להעביר דאטה ומשתנים מ-MATLAB ל-Python ולהפך
  • לציין את ה-Command line arguments
  • לייצר קוד MATLAB בצורה אוטומטית על מנת להביא לאוטומציה של השלבים שבוצעו.
  • נוספה יכולת להמרת טבלאות MATLAB ו-DataFrames של pandas.
    ההמרה בין סוגי הדאטה האלו לעיתים נעשית לא טריוויאלית בגלל אי התאמות בין השפות.
    התוספת הנ"ל שימושית למשתמשי MATLAB שמשתמשים גם ב-Python, ובפרט למשתמשים בחבילה של Pandas לחקר דאטה. כעת, באמצעות ה-GUI החדש – ההמרה בין סוגי הדאטה הנ"ל נעשית בצורה אוטומטית!

שינויים בפלטפורמת Simulink

שינוי בבניית מודל ב-Simulink Editor:
שינוי אדיר לכל אחד שעובד ב-Simulink ומסוגל להשתגע כשהחיבור של החיצים בין בלוק לבלוק משתבש כשמזיזים קומפננטות שונות או שמשנים את הגודל של בלוק מסוים.

כשמזיזים ב-Simulink בלוקים במערכת \ תתי מערכות שלמות, יכולים להיגרם שינויים בלתי רצויים לפריסה (layout) של המודל – בין אם זה אלמנטים חופפים, או דרכים שחוצות זו את זו – והתיקון של המערך של המודל יכול להיות מעייף וארוך בצורה ידנית.
בגרסה האחרונה לא צריך כלל להתעסק עם הנושא הזה בכלל: כשמגדילים, מזיזים, משנים את הבלוקים – כל שאר מערך החיצים משתנה בהתאם, מבלי "להתקפל", בצורה שחוסכת לנו הרבה זמן שהיינו צריכים להשקיע אחרת.

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

כעת ניתן לשלוט על ההרצה של הסימולציה, ולשנות ערכי פרמטרים דרך סימולציות "כתובות". זה מאפשר לנו לקבל גישה לתוצאות של הסימולציה ולסטטוס הסימולציה תוך כדי ריצה. זה בא לידי ביטוי למשל על ידי היכולת של "stepping" בעת הרצת סימולציה.
כמו כן, מתאפשרות דרכים לאינטגרציה של הסימולציה עם מערכות 3rd party נוספות למשל עבור  reinforcement learning ו-digital twin.

לדוגמא, כשיש לנו מערכת מבוססת Reinforcement Learning בה הסוכן מפותח ב-Python והסביבה מפותחת ב-MATLAB, הפלטים מהמודל יכולים כעת להתקבל בכל Time Step של תהליך אימון המודל.

  • הקלה על תהליך בניית אפליקציות להרצת סימולציות:

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

כתיבת אפליקציות דורשת ידע בתכנות GUI וגרפיקות, שלא בהכרח קיים ודורש הרבה מאמצים על מנת לסגל תהליכי כתיבת אפליקציות נכונה.

בגרסה החדשה נוספה יכולת חשובה המתבססת על MATLAB App Designer  – סביבת בניית אפליקציות בגישת Low-code  של MATLAB, שאהודה מאוד על מהנדסים.

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

בוצעו עוד שינויים רבים עם יציאת הגרסה, בין היתר בעולמות ההנדסיים הוורטיקליים בהם אנו מציעים פתרונות עומק – ותוכלו להעמיק כאן בשינויים העיקריים (Major Updates) שנעשו בתחומים כגון AI, Aerospace, Wireless Communications ו-Autonomous Systems.  

בפוסט אחד לא ניתן לכסות את כל החידושים כולם, באמת מדובר בהרבה יכולות חדשות ושימושיות שחשוב שתכירו ותאמצו!

ניתן לקרוא עוד על חידושים נוספים של הגרסה האחרונה של MATLAB & Simulink – כאן!

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