רווחים:
- יכולת לייצר מבני לוגיקה סולם ומבני טקסט מובנה (ST) כטיוטות עם AI
- יכולת להגדיר מעגלי בטיחות, מנעולים ומכונות מצב בעזרת AI
- יכולת לאמת את לוגיקית ה-PLC שנוצרה בינה מלאכותית מול מפת I/O ודרישות בטיחות
שם המהימנות בתחום המפעל הוא PLC (בקר לוגי לתכנות). מסועים, תאי רובוט, קווי מילוי, מכבשים; הכל נשלט על ידי PLCs. תכנות PLC הוא עולם נבדל מתוכנת שולחן העבודה: Ladder Logic (LD) היא שפה חזותית המחקה לוגיקה ממסר, בעוד טקסט מובנה (ST) היא שפה טקסטואלית דמוית פסקל; שניהם מוגדרים בתקן IEC 61131-3. בסביבה זו, הדבר החשוב ביותר אינו פונקציונליות אלא בטיחות; כי שגיאה לוגית עלולה לסגור מכבש בזמן הלא נכון, ולסכן מפעיל. בינה מלאכותית מסייעת ביצירת טיוטות סולם ו-ST, בניית מכונות מדינה ותיעוד היגיון. עם זאת, מעגלי בטיחות, מנעולים ואימות סופי הם באחריות המהנדס ולא ניתן להאציל אותם לבינה מלאכותית. ביחידה זו, אנו מכסים כיצד לבנות ולאמת לוגיקת PLC עם AI.
לוגיקה עבודה של PLC: מחזור סריקה
PLC לא מריץ את הקוד רק פעם אחת וזה נעשה; הוא מבצע מחזור סריקה מתמשך. בכל לולאה: (1) קורא את כל התשומות, (2) מבצע לוגיקה מלמעלה למטה, (3) מעדכן את כל הפלטים. מחזור זה נמשך אלפיות שניות וחוזר בלי סוף. להתנהגות זו יש השלכות קריטיות בעת כתיבת לוגיקה של PLC:
- הפלטים מתעדכנים בסוף הלולאה; אם אתה מקצה ערך לפלט ביותר ממקום אחד בתוך הלולאה, ההקצאה האחרונה מנצחת.
- ההיגיון עובד מאפס בכל מחזור; אז משתני תפס או מצב משמשים כדי "לזכור" מצב.
- אירועים מהירים עשויים להחמיץ אם זמן הסריקה מתארך; אירועים קריטיים נלכדים על ידי הפסקות חומרה או מונה במהירות גבוהה.
טיפ: בעת כתיבת היגיון PLC ל-AI אמור "לקחת בחשבון התנהגות לולאת סריקה, ללא הקצאות סותרות לאותו פלט, השתמש במכונת תפס/מצב עבור מצב". AI לפעמים חושב כמו לוגיקה של שולחן העבודה ומדלג על התנהגות סריקה.
לוגיקה סולם וטקסט מובנה
אותו היגיון יכול להיכתב בשתי השפות. דוגמה פשוטה: מנוע מופעל בלחיצה על כפתור ההתנעה, עוצר וננעל מעצמו בלחיצה על כפתור העצירה.
סולם (תצוגת טקסט): התחל עצור מנוע---| |------|/|-------------( )--- | מנוע |---| |------+ (מגע מנוע שומר על עצמו -> אטום) הסבר: כשלוחצים על Start, המנוע מופעל; המנוע שומר על זרם באמצעות המגע שלו (איטום). כאשר עצור (NC) נלחץ, השרשרת נחתכת.
(* אותו היגיון כמו טקסט מובנה *)IF Start AND NOT Stop THEN Engine := TRUE;END_IF;IF Stop THEN Engine := FALSE; (* עצירה תמיד מקבלת עדיפות *)END_IF;(* הערה: כפתור ה-Stop מחובר פיזית ל-NC (סגור בדרך כלל); כך שאם הכבל נשבר, Stop=FALSE והמערכת עוברת לצד הבטוח. *)
פרט הבטיחות כאן הוא קריטי: לחצן העצירה מחובר פיזית סגור רגיל (NC). לפיכך, במקרה של שבירה של כבל או כשל במגע, האות מנותק והמערכת עוברת לכיוון "עצירה" (כשל בטוח). אם NO (פתוח בדרך כלל) מחובר, המעצור לא יפעל אם הכבל נשבר - תקלה שקטה מסוכנת. גם אם קוד ה-AI נראה נכון מבחינה לוגית, החלטת החיבור הפיזי הזו תלויה במהנדס.
בטיחות: עצירה אלקטרונית, נעילה ו-Fail-Safe
בטיחות באוטומציה תעשייתית אינה נושא שניתן "לטפל בתוכנה"; זהו שיתוף פעולה שכבות של חומרה ותוכנה. עקרונות בסיסיים:
עקרון
משמעות
יישום
בטוח לכשל
כישלון צריך להוביל לצד הבטוח
מגע NC, תקלה=עצירה
יתירות
פונקציה קריטית ערוץ כפול
שני אנשי קשר, ניטור צולב
משתלבים
למנוע מצב מסוכן
המכונה אינה פועלת כאשר הדלת פתוחה
e-stop
עצירת חירום עצמאית
ברמת החומרה, ללא תלות ב-PLC
נקודה קריטית: E-stop לא נותר רק לתוכנה. עצירת חירום הקשורה לבטיחות נקטעת לעתים קרובות גם ברמת החומרה על ידי ממסרי בטיחות או PLC בטיחותי; תוכנת PLC סטנדרטית היא שכבה נוספת על זה. ISO 13849 (בטיחות מכונה) ו-IEC 62061 מספקים את המסגרת לתכנונים אלה.
זהירות: אל תניח שהיגיון E-stop או נעילה שנוצר על ידי בינה מלאכותית הוא "מספיק בתוכנה". פונקציות הבטיחות מתוכננות בהתאם לתקנים הרלוונטיים (ISO 13849 PL, IEC 62061 SIL), כוללות שכבת חומרה ומאומתות על ידי הערכת סיכונים. הערכה זו היא באחריות המהנדס והארגון; בינה מלאכותית יכולה לייצר רק קווי מתאר ורשימות תיוג.
מכונות מדינה
לוגיקה של אוטומציה מורכבת מאורגנת עם מכונת מצבים ולא עם אם-אחר מבולגן: המערכת מוצאת מצבים מסוימים (לא פעיל, התחלה, ריצה, עצירה, שגיאה) וממשיכה במעברים מוגדרים. מבנה זה ניתן לקריאה וניתן לאימות.
(* מכונת מצב תחנת תדלוק פשוטה *) מקרה מקרה של 0: (* BOSTA *) IF Button AND CoverClosed THEN Case := 10; END_IF; 10: (* מילוי *) שסתום := TRUE; IF LevelFull THEN Valve := FALSE; סטטוס := 20; END_IF; אם לא מכסה סגור אז שסתום := FALSE; סטטוס := 90; END_IF; (* בטיחות *) 20: (* ניקוז *) טיהור := נכון; IF LevelEmpty THEN Empty := FALSE; סטטוס := 0; END_IF; 90: (* שגיאה *) שסתום := FALSE; ריק := FALSE; (* כל המפעילים בטוחים *) IF ResetButton THEN Status := 0; END_IF;END_CASE;
במבנה זה, מעברי בטיחות (עבור למצב שגיאה אם המכסה נפתח, סגור את כל המפעילים) כלולים בבירור בכל מצב. בינה מלאכותית מייצרת שלד של מכונות מדינה במהירות; אבל איזה אירוע בטיחותי ייצא מאיזה מצב נובע מניתוח הסיכונים שלך.
הנחיה חלשה / הנחיה חזקה
WEAK:"כתוב קוד PLC עבור מסוע."(אין קלט/פלט, אין בטיחות, שפה לא ברורה. לא ניתן לשדה טיוטה.)STRONG:"כתוב בקרת מסוע עם IEC 61131-3 Structured Text. כניסות:Start (NO), Stop (NC), PhotocellProductVar (NO), CoverOpen. מכונה (סרק, פועל, שגיאה) עצירה תמיד עדיפה, עבור אל שגיאה כאשר המכסה פתוח וכבה את המנוע נניח את הערכת הבטיחות של קוד זה.
קייס מיני
מהנדס האוטומציה טולגה מבקש קוד ST מ-AI עבור קו אריזה. ה-AI מייצר קוד שנראה שעובד, אבל כשטולגה מאמת אותו מול מפת ה-I/O, הוא מוצא שתי בעיות. ראשית: בינה מלאכותית טיפלה בלחצן עצור בהיגיון NO (פתוח בדרך כלל); טולגה הופך את זה ללוגיקה בטוחה בכשל NC, כי אם הכבל נשבר, הקו חייב לעצור. שנית: הנעילה, שבה על המכונה לעצור כאשר מכסה המגן פתוח, נבדקת רק בעת האתחול, לא במהלך הפעולה; טולגה מתקן אותו כך שהוא נבדק בכל מחזור סריקה. היא גם מאשרת שהעצירה החשמלית בפועל אינה מושארת לתוכנה, אלא גם נקטעת בחומרה עם ממסר הבטיחות. בינה מלאכותית נתנה את השלד ההגיוני שלה במהירות; אבל האימות של המהנדס הבטיח שלוש החלטות בטיחות: חיבור בטוח, נעילה קבועה ועצירה חשמלית של החומרה.
טעויות נפוצות
- חיבור לחצן עצור/עצירה חשמלית ל-NO ואיבוד התנהגות בטוחה לכשל במקרה של שבירה של כבל.
- בדיקת ההשתלבות (מכסה, מסך אור) רק בעת האתחול ודילוג עליו בפעולה.
- השארת פונקציית האבטחה כולה לתוכנה והזנחת שכבת החומרה.
- שכחת התנהגות לולאת הסריקה וביצוע הקצאות סותרות לאותו פלט.
- הפיכת הלוגיקה המורכבת לבלתי ניתנת לאימות על ידי כתיבתו עם אם-אחר מבולגן במקום במכונת מצב.
- קבלת הפרשנות של AI לתקן האבטחה מבלי לאמת אותו עם הטקסט הרשמי.
לסיכום
- PLC פועל עם מחזור סריקה מתמשך; הפלטים מתעדכנים בסוף הלולאה.
- סולם וטקסט מובנה מבטאים את אותו היגיון בשתי שפות שונות של IEC 61131-3.
- לחצני עצירה/עצירה חשמלית NC ו-fail safe מחוברים; כישלון צריך להוביל לצד הבטוח.
- נעילה נבדקת בכל מחזור סריקה; כולל שכבת חומרת אבטחה.
- מכונת המדינה הופכת את ההיגיון המורכב לקריאה וניתנת לאימות.
- הערכת בטיחות (ISO 13849/IEC 62061) היא באחריות המהנדס; AI מייצר טיוטה.
משימת יישום
בחר תרחיש אוטומציה פשוט (למשל הפעלה/עצירה של מנוע נעילה עצמית, מפעיל דו-מצבי או תחנת מילוי קטנה). רשום את רשימת הקלט/פלט שלך ואת דרישות הבטיחות (איזה כפתור הוא NC, שהוא משתלב). בקש מה-AI ליצור מכונת מצב של טקסט מובנה עם ההקשר הזה. לאחר מכן ודא את הפלט לבטיחות: (1) האם עצור מספק יציאה בטוחה מכל מצב, (2) נעילה משתלבת נבדקת בכל מחזור סריקה, (3) האם כל המפעילים עוברים למצב בטוח במקרה של שגיאה? שים לב לכל ליקויי בטיחות ותיקונים שאתה מוצא.