התוכנית הזו מסומנת כנקייה על ידי המארח.
--------------------
01. הקדמה
זוהי הפרק השני בסדרה של שמונה חלקים.
02
בפרק הקודם דנו במקדמים של PLCs, בפרט בלוגיקה של רלאי.
בפרק זה נדון כיצד לוגיקת העברת הודעות עברה ביטוי בתוכנה במקום ברכיבי חומרה פיזיים.
03
הנושאים שיכולים להיות מכוסים כוללים:
מחשבים מוקדמים בתעשייה.
הראשון של PLC.
* מחשב מרכזי לעומת בקר לוגי מתכנת (PLC) - מה ההבדל בשם?*
* מי הן המותגים הגדולים?*
* מה נראה בקר לוגי מתכנת (PLC)?*
* ארכיטקטורת מכונה.*
* תוכניות בקר לוגי מתכנת (PLC).*
* הסריקה.*
* שפות תכנות לבקרי לוגיקה מתכנתים (PLC).*
* הפופולריות היחסית של שפות תכנות PLC לעומת שפות תכנות מחשב קונבנציונליות יותר.*
--------------------
מחשבים החלו לשמש בתעשייה מוקדם יחסית.
מחשבים הגיעו לתעשייה בשימוש מוקדם למדי.
מינימחשבים שימשו בתעשיות גדולות לשליטה בדברים כמו תחנות כוח חשמליות.
לדוגמה, ה-DEC PDP8 שימש לשליטה במכונות התדלוק של תחנות הכוח הגרעיניות CANDU.
הם היו עומסים ופורקים דלק מהמתקן, מה שקורה באופן רציף מדי יום בזמן שהמתקן פועל.
05
המחשב הראשון המבוסס על מיקרו-מעבד שנמכר בשוק המסחרי היה ה-MICRAL מצרפת, המבוסס על ה-Intel 8008.
הוא נמכר כחלופה יעילה מבחינה כלכלית למינימחשבים ששימשו בתעשייה.
הוא קדם למה שנחשבים בדרך כלל למחשבי האישיים הראשונים.
כך שתוכלו לראות שהתעשייה לא הייתה סקפטית לאמץ טכנולוגיה חדשה.
06
עם זאת, מחשבים זעירים היו מערכות מורכבות וגדולות שלא התאימו היטב לרצפת מפעל.
הם היו להם נישות מסוימות במערכות משולבות גדולות ומורכבות, אך לא היו מתאימים לשליטה על מכונות רבות במפעל שמייצר דברים כמו מכוניות או מכשירי חשמל ביתיים.
07
מה שנדרש היה משהו שיתאים למכל חשמלי סטנדרטי,
יחזיק בטמפרטורות שנמצאות במפעל,
יתמודד עם רעידות ורעש,
יהיה סובלני לתנודות מתח,
יתחבר ישירות לחיישנים ומפעילים.
והתכנת בקלות על ידי מהנדסים, טכנאים ועובדים מיומנים שהיו מוכרים עם התהליכים שנדרש לשלוט בהם, אך היו להם מעט או ללא ניסיון במחשבים.
08
זה דרש חבילה משולבת מלאה הכוללת חומרה, תוכנה והפצה של מוצרים דרך קמעונאים של אספקה תעשייתית.
דבר שיכול לעמוד בקריטריונים האלה הוא מה שהיה נחוץ כדי להפוך ל-PLC.
--------------------
9 היסטוריה
מחקרים רבים מצביעים על מפתח אמריקאי שהפך ל-Modicon.
עם זאת, החומרה הראשונה שלהם הייתה יותר הוכחה קונספטית מאשר מוצר מסחרי בר-קיימא.
בפועל, חברות רבות בארצות הברית, אירופה ויפן עבדו על הבעיה ושחררו מוצרים דומים בערך באותו זמן בתחילת שנות ה-70.
10
הרעיון הקדים את היישום במספר שנים.
לדוגמה, חברת ג'נרל מוטורס ביקשה מספקי ציוד בקרה תעשייתי באמצע שנות ה-1960 מכשיר בקרה מתכנת כלשהו כדי להחליף לוגיקת רלאי.
זה הראה לספקים פוטנציאליים שקיים שוק לדברים כאלה, והעניק להם מושג ברור יותר לגבי מה הלקוחות מחפשים.
11
מה שהפך זאת לאפשרית היה פיתוח המעבד המיקרו-8-ביט הראשון בתקופה זו, בשילוב עם מעבדי סלייסים זמינים בקלות מתעשיית המיניקומטרים ורכיבים אחרים.
12
אנשים ידעו מה לעשות, הבעיה הייתה המתנה לפיתוח חומרה רכיבים מתאימים.
מיניקומטרים כבר שימשו בתעשייה, אך בדרך כלל היו ממוקמים חדרי בקרה.
PLC היו מאמץ להביא את הטכנולוגיה הזו מחוץ לחדרי בקרה ולהציב אותה ברצפת הייצור.
13 מחשב אישי לעומת PLC - מה ההבדל בשם?
בימים המוקדמים, למערכות אלה היו שמות כמו PLC, שמשמעו "מנהל לוגיקה מתכנת", או PC, שמשמעו "מנהל מתכנת".
ספקים שונים העדיפו מונחים שונים, אך שניהם היו נפוצים.
יש לי ספר שהיה פעם אחד מהמדריכים ההתייחסות הסטנדרטיים לתעשייה זו שפורסם בשנת 1989, והוא מתייחס אליהם כ"מנהלי תוכניות" או "PCs".
14
המונח PC שימש גם כדי להביע "מחשב אישי", אך זה לא היה באמת בעיה בימים המוקדמים.
עם זאת, חברה גדולה מסוימת החליטה לקרוא לכניסתה לשוק המחשבים האישיים "IBM PC", ופתאום "PC" הפך למונח גנרי למחשבים שולחניים.
15
לאחר מאבק ארוך כדי להמשיך להתייחס למוצרים שלהם כ"PCs", אפילו הספקים הגדולים נכנעו ונטשו את המאבק והתחילו להשתמש במונח "PLC".
לכן, אשתמש במונח "PLC" בסדרת הפודקאסטים הזו, גם כשאני מדבר על מוצרים שנקראו במקור "PCs" בזמן שהוצגו.
מי המותגים הגדולים.
החברות שהשתלטו על התעשייה באופן מובהק יחסית מוקדם היו בדרך כלל חברות שכבר ייצרו חומרה חשמלית תעשייתית.
אלו היו
סימנס
אלן ברידג', הידוע מאוחר יותר כרוקוול
שנר
מיצובישי
אומרון
17
אלו עדיין החברות הדומיננטיות בענף, אף על פי שיש מותגים קטנים רבים, במיוחד בקטגוריית המחירים הנמוכה יותר.
כולם היו ספקים של מגוון רחב של חומרה לשליטה תעשייתית, כך שניתן היה לבנות את כל החלקים של מערכת השליטה שלך או כמעט את כולם באמצעות מוצריהם בלבד.
18
כל אחד מהם מוכר חבילת חומרה ותוכנה משולבת, כולל תוכנת פיתוח, שהיא בבעלות מלאה.
אם חשבת שהעסק של המחשבים המרכזיים סובל ממשתקת ספקים, אתה לא ראית את השוק התעשייתי.
--------------------
מה נראה אחד מהדברים האלה בפועל?
בשלב זה, אתה ככל הנראה עדיין מבולבל מאוד לגבי מהו PLC.
אנסה לתאר אחד במונחים בסיסיים על ידי מתן דוגמה לאחד.
הקטנים והפשוטים ביותר נקראים PLCs של "קופסת נעליים".
אלה הם בעצם קופסה מרובעת עם מקרה פלסטיק.
20
הנה הממדים למודל טיפוסי של קצה נמוך, Mitsubishi FX3U-32M.
לפי המפרטים במדריך, הוא רחב 150 מ"מ, גבוה 90 מ"מ ועמוק 86 מ"מ.
21
ניתן להרכיב אותו על הלוח בקופסת החשמל על ידי לחיצתו על מה שנקרא מסילה של DIN.
מסילות DIN הן מערכות הרכבה סטנדרטיות המשתמשות ברצועת מתכת בצורת U עם שפת עליון בכל קצה של ה-U.
אתה מסתובב את מסילה של DIN על לוח החשמל בקופסה, ומרבית הרכיבים התעשייתיים כמו PLCs, בלוקי חיבורים, מפסקי מעגל, וכל מיני דברים אחרים יתחברו אליה בקלות וישמשו לחיבור חוטים.
22
לאורך הצדדים העליון והתחתון של ה-PLC יש קצות אליהם ניתן לחבר חוטים מדברים שברצונך לחוש או לשלוט בהם בשאר המכונה, כמו כפתורים, אורות כוון, חיישני קרבה, ושסתומים.
23
הקלטים לאורך הצד העליון, והפלטים לאורך התחתון.
ה-FX3U-32M כולל 16 קלטים ו-16 פלטים.
קלטי/פלטי אלו יכולים להיות 24 וולט DC, או 100-120 וולט AC, בהתאם למודל.
באופן אלטרנטיבי, זה יכול לכלול רלאי קטנים ליציאות.
בעוד ש-AC I/O שלט בעבר, 24VDC הפך לסטנדרט ברוב התעשיות לפני מספר עשורים מכיוון שהוא התאים בקלות יותר למכשירים אלקטרוניים ואיפשר גם חיווט זול וקומפקטי יותר.
24
ניתן להוסיף יותר קלטים ויציאות על ידי חיבור מודולי I/O נוספים לצד ה-PLC הראשי על אותו מסילה DIN, עד ל-256 I/O בסך הכל.
החיבור הוא בדרך כלל דרך כבלים קצרים של רצועות שחוברים למודול הסמוך.
מודולי ה-I/O האלה נראים כמו ה-PLC הראשי, אך הם רק מוסיפים קלט ויציאה.
25
בתוך ה-PLC יש CPU, זיכרון ותוכנה.
דגם זה כולל 64K "שלבים" של זיכרון, שניתן לחשוב עליהם כמספר ההוראות שאתה יכול לכלול.
התוכנית רצה בזיכרון RAM, אך ניתן להוסיף מכשיר זיכרון פלאש קטן כדי לשמור את התוכנית.
יש מתג הפעלה/עצירה המאפשר לך להתחיל או לעצור את התוכנית של המשתמש.
יש פורט שאתה יכול להשתמש בו כדי לחבר את ה-PLC למחשב נייד באמצעות כבל, כך שתוכל להוריד את התוכנית שלך אליו.
26
החלק הגדול ביותר של שוק ה-PLC הוא עבור סגנונות אלה של "קופסת נעליים".
עם זאת, יש גם יחידות גדולות יותר עם יותר קלט/פלט, יותר זיכרון, מעבדים מהירים יותר וכו'.
אלה מיועדים למשימות כמו תיאום קווי הרכבה גדולים ודברים דומים.
אלה מה שנקראים מערכות מתלה, כאשר המתלה הוא קופסה ריקה פתוחה מלפנים עם אוטובוס גב רץ לאורך הגב.
אתה מחבר את המעבד הראשי לאוטובוס, בדרך כלל בעמדה השמאלית ביותר, ואז מחבר מודולי קלט/פלט למתלה.
מודולי הקלט/פלט הם קופסאות גבוהות, דקות, סגורות לחלוטין עם תקני קלט/פלט לאורך החזית.
27
כדאי לך להיות בעל רעיון גס של המראה שלהם בשלב זה, אז אני אעזוב את התיאור הפיזי בצד לרגע ואמשיך לרעיונות מאחורי האופן שבו הם פועלים בפועל ומה הופך אותם שונים מדבר כמו Raspberry Pi.
--------------------
28 ארכיטקטורת מכונה
זה לא באמת החומרה שמגדירה את ה-PLC.
לא, מדובר בארכיטקטורת מערכת התוכנה.
כל PLC שאני מודע לו מכיל סט משותף של תכונות.
29 טבלת נתונים
טבלת נתונים היא פשוט חתיכה של זיכרון שיכולה להיות או לא להיות מחולקת לחלקים שונים.
כל הלוגיקה, וכל או כמעט כל קלט/פלט פועלים על ידי כתיבה וקריאה לכתובת בטבלת הנתונים.
30 קלט/פלט
כל נקודת קלט ופלט מקושרת לכתובת זיכרון קבועה ב-PLC.
כדי לקרוא את מצב הקלט, קוראים את כתובת הזיכרון שלו.
כדי לשנות את מצב הפלט, כותבים לכתובת הזיכרון שלו.
31
קלטי/פלט דיגיטליים אלו מופיעים כערכים בוליאניים של ביט יחיד.
שפת התכנות של ה-PLC כוללת הוראות המאפשרות לקרוא או לכתוב ישירות לביטים בודדים ללא צורך במסכת ביטים, כפי שהיה נדרש בשפות תכנות רגילות.
עד כה הזכרתי רק קלטי/פלט דיגיטליים, שהם ערכי הפעלה/כיבוי של ביט יחיד.
32 סוגים אחרים של קלט/פלט
רבים ממערכות ה-PLC כוללות סוגים אחרים של קלט/פלט (I/O), כגון
קלט/פלט אנלוגי, המייצג מתח משתנה במקום רק ערכי דלתא או כיבוי.
לדוגמה, ייתכן שתרצה לקרוא טמפרטורה ממתג חום בו רמת המתח משתנה עם הטמפרטורה.
לעיתים קרובות, נתונים אלו מיוצגים בטבלת הנתונים כערכים של בתים או מילים.
33 זיכרון ביט פנימי או בוליאני
יהיה טווח של זיכרון ביט בודד או בוליאני המשמש למצב הלוגיקה הפנימית.
התוכנית שלך עשויה להזדקק לסדרה של ערכים לוגיים ביניים, ואתה מאחסן אותם בביטים הפנימיים או בדגלים אלו.
34 טיימרים ומספור
שליטה במכונות לעיתים קרובות כרוכה בתזמון ובספירה.
טיימר ומספרים ממופים לטבלת הנתונים.
טיימר ומספרים מוגדרים מראש וערכים יכולים להיות נקראים במילים, ויהיו כתובות ביטים שמצביעות על מצב הטיימר או המספור, כגון האם הוא הגיע למוגדר מראש והוא "סיים".
35 ערכי שלם ומשוער
יהיו כתובות מילים בהן ניתן לאחסן מילים של שלם ומשוער.
אם יש צורך לבצע חישובים מתמטיים ואחסון התוצאות, תשמור אותם במילה של שלם או משוער.
36 זיכרון מסומן
בניגוד לתכנות משהו כמו מחשב אישי שבו יש פשוט טווח של בייטים לא מבדילים וזה תלוי בתוכנה שלך להציב משמעות עליהם, זיכרון טבלת הנתונים של PLC יש סוגים ומובנים מוגדרים והתוכנה של המערכת אכפתית משיטות הגישה לזיכרון הנכונות.
גודל טבלת הנתונים
טבלאות נתונים משתנות מאוד בגודלן.
טבלת נתונים גדולה מאפשרת תוכניות גדולות ומורכבות יותר.
באופן כללי, PLCs חדשים יכללו טבלאות נתונים גדולות יותר מאשר ישנים יותר,
ו-PLCs יקרים יותר יכללו טבלאות נתונים גדולות יותר מאשר זולים יותר מאותה דור.
דוגמה
לאחר שבחרתי PLC נוכחי כדוגמה לממדים פיזיים, אבחר אחד ישן ומוחלף כדוגמה לטבלת נתונים.
סדרת Siemens S5-100 הייתה PLC קטן שהיה זמין במספר גדלים.
הבסיס של S5-100 כלל גודל טבלת נתונים של 5-100.
39
קלט/פלט דיגיטלי הגיע למקסימום של 128 קלטים ופלטים יחד.
קלטים ופלטים אנלוגיים הגיעו למקסימום של 8 יחד.
זיהוי, או זיכרון ביט, היה 1024.
טיימרים - 16.
ספירות - 16.
40
S5-103 הציע יותר מכל דבר באותו חבילה בסיסית, אך כמובן במחיר גבוה יותר.
קלט/פלט דיגיטלי הגיע למקסימום של 256 קלטים ופלטים יחד.
קלטים ואפיקים אנלוגיים הגיעו למקסימום של 32 יחד.
זיכרון דגל, או ביט, היה 2048
טיימרים - 128
ספירות - 128
--------------------
41 תוכנית PLC
PLC יגיע עם מה שמסתכם במערכת הפעלה ומכונה וירטואלית המובנות בו.
אתה, כמתכנת, משתמש בתוכנת הפיתוח הקניינית של הספק, הנקראת בדרך כלל "תוכנת תכנות PLC", לכתיבת יישום עבורה.
42
לאחר מכן, אתה מחבר את המחשב האישי שלך ל-PLC באמצעות כבל כלשהו, והורדת התוכנית שלך לתוכו.
התוכנית נשמרת בזיכרון RAM של ה-PLC.
ייתכן שישנה זיכרון פלאש שמשרת כגיבוי ל-RAM כאשר אין חשמל, כך שלא תאבד את התוכנית.
לפני שהיה זמין פלאש, סוללה הייתה נדרשת בדרך כלל כדי לשמור את זיכרון ה-RAM הסטטי.
43
יש רק תוכנית אחת ב-PLC.
אין מערכת קבצים, רק זיכרון התוכנית וטבלת הנתונים.
כאשר ה-PLC מתחיל, הוא מריץ את התוכנית שכתבת.
הוא ממשיך לרוץ את התוכנית עד שאתה מכבה את החשמל או שאתה מגדיר את מתג הרצה/עצירה למצב עצירה.
44
אחזור לתכנות מאוחר יותר, אך היינו צריכים לכסות את הנקודות הבסיסיות האלה לפני שאוכל לתאר כמה מושגים נוספים שאנחנו צריכים לכסות.
--------------------
סריקה 45
דבר מרכזי שיש להבין בנוגע ל-PLCs הוא מושג ה"סריקה".
כך זה פועל.
יש מחזור חוזר הנקרא סריקה.
46
ראשית, ה-PLC קורא את כל הקלטים הפיזיים ומעדכן את כתובות הקלט המתאימות בטבלת הנתונים.
לאחר מכן הוא מריץ את התוכנית של המשתמש פעם אחת.
לבסוף הוא קורא את כתובות הפלט בטבלת הנתונים ומכתיב אותן לפלטים הפיזיים המתאימים.
אז הוא חוזר על הסריקה מהצעד 1.
47
סריקה יכולה לארוך מכל כמה מילישניות ועד למאות מילישניות, בהתאם למודל של PLC.
PLCים ישנים ו-PLCים זולים נוטים להיות איטיים יותר.
עם זאת, ככל שהתקדמה טכנולוגיית מעגלים משולבים, התוכניות הפכו מהירות יותר.
48
ל-PLC יש טיימר משגיח.
זהו טיימר שפועל ברקע ומתחיל מחדש בתחילת סריקה.
49
אם סריקה לוקחת זמן רב מדי, המשגיח יפעל ויעצור את התוכנית ויגדיר את הפלטים למצב מוגדר, בין אם כיבוי כולם או החזקתם בערך האחרון.
זה ידוע כ"שגיאה" של המעבד.
50
שגיאת משגיח יכולה להיגרם מתוכנית ארוכה מדי, או משימוש בהרבה הוראות איטיות מאוד, או במקרים מסוימים, זה יכול להיות בשל באג בתוכנית שלך.
עם זאת, הסיבה האחרונה אינה נפוצה או קלה להשגה כמו שאולי תחשבו כשמדובר בשגיאות.
--------------------
51 שפות תכנות PLC
המפתח לכל זה הוא הדרך הייחודית שבה שפות התכנות המשמשות ב-PLCs עובדות.
ראשית, אתאר בקצרה את שתי שפות התכנות העיקריות ולאחר מכן אסביר כיצד הן עובדות ב-PLC כחלק ממערכת שלמה.
52 לוגיקת סולם
קיימות מספר שפות תכנות, אך העיקרית שבהן נקראת לוגיקת סולם.
אם האזנתם לפרק הקודם, המילה "סולם" תעורר בכם זכרון.
כאשר מכונות נשלטו על ידי רכיבי רליים אלקטרומכניים, התוכניות החשמליות שסימנו ותיעדו את סוגי הרכיבים והחיבורים ביניהם נקראו "דיאגרמות סולם".
53
PLCs לוקחים פשוט את תרשימי הסולם האלה ומכניסים אותם למסך המחשב שלך בתוכנת התכנות באמצעות הסמלים השגרתיים של תרשים.
54
אין צורך לצייר את הסמלים כמו בתוכנת CAD.
במקום זאת, אתה פשוט משתמש בקלדת או בעכבר כדי לציין שאתה רוצה שהסמל הזה ייכנס במיקום העכבר הנוכחי או שחוט זה יחובר מכאן לשם.
כאשר השורה שלך הושלמה, התוכנה תבדוק בשלב כלשהו אם היא תחבירית.
לאחר מכן, אתה ממשיך להכניס את השורות הבאות אחת אחרי השנייה עד שיש לך את התוכנית המלאה שלך.
רשימת הוראות 55
ייצוג אלטרנטיבי הוא משהו שנקרא "רשימת הוראות", אף על פי שספקים שונים עשויים להשתמש במונחים אחרים.
זהו ייצוג טקסטואלי שנראה כמו סוג של שפת אסמבלר.
עם זאת, זה למעשה באמת מדרגות, רק מוצג בצורה שונה כטקסט ותוכנות תכנות מסוימות מאפשרות לך לעבור בין מצב מדרגות לרשימת הוראות, מתרגמות באופן אוטומטי בין השניים.
56
זה אמור לתת לך רמז לגבי איך PLC יכול לבצע תרשים סכמטי.
מאחורי הקלעים, תוכנת התכנות תרגמת את התרשים לרשימת הוראות, ולאחר מכן ה-PLC יבצע את ההוראות הללו באמצעות מפרש, או יקומפל אותן לקוד מכונה ויבצע אותן.
57 שפות תכנות אחרות
קיימות שפות תכנות אחרות, אך הן נדירות.
לא אכנס לפרטים במונחים של תיאור שלהם, רק אזכיר אותם בקצרה.
58
אחד נקרא תרשים פונקציות סדרתיות.
זהו סוג של תרשים זרימה שנועד להציג רצפים מורכבים, כולל אלו עם נתיבים חלופיים או מקבילים.
השם המקורי הוא גרפט"ק, כתוב G R A F C E T.
זה מייצג "גרף פונקציה של פקודה שלב מעבר".
בנוסף להיותו שפת תכנות, זהו גם כלי עיצוב וניתוח מצוין גם אם ה-PLC המשמש לא תומך בו.
59
עוד אחד הוא דיאגרמת בלוק פונקציה.
זו שפה גרפית נוספת הדומה לדיאגרמות זרימה המשמשות בתעשיות תהליכים.
על פי מה שאומרים, היא משמשת בעיקר בתעשיות כמו ייצור כימי.
עם זאת, נראה שהיא מאוד נישה ומרבית האנשים שמשתמשים ב-PLCs לא ראו אותה מעולם, ורבים לא שמעו עליה כלל.
60
שפה נוספת היא טקסט מובנה.
זה ברור מאוד שהוא נגזר מ-Modula-2 ודומה לו מאוד.
אם אינך מכיר את Modula-2, הוא נוצר על ידי ניקולאס וירט ונועד להחליף את הפסקל, שממנו נגזר.
טקסט מובנה נראה שהוא אהוב מאוד על קבוצה קטנה של אקדמאים, אך נראה שיש לו מעט שימוש מעשי בתחום.
אם אתה משתמש בו, אתה מאבד כמעט את כל מתקני הניטור והדיבוג המובנים ב-PLC, אז זה חסר משמעות למעט אולי עבור כמה יישומים נישה.
יש שפות אחרות כמה, בעיקר בעלות פרטיות, המשתמשות לעיתים קרובות בתרשימי זרימה או דומים.
61 שפות PLC אינן חוסמות.
הדבר החשוב לגבי תוכנית PLC הוא שהיא מתבצעת מלמעלה למטה, משמאל לימין, ללא עצירה או חסימה.
אין המתנה לקלט או פלט או לחזרה של קריאת מערכת.
כל מד מייצר באופן מיידי תוצאה שנכתבת לכתובת זיכרון או שמפעילה טיימר או ספירה.
כל מד מבוצע בכל סריקה.
62
ניתן לשחזר זאת בשפת תכנות מחשב מסורתית.
בלוגיקה של מד, זה מובנה בסינטקס ואין דרך אחרת לעשות זאת אלא זה קשה מאוד או בלתי אפשרי.
אתן דוגמה בפייתון למה שאני מתכוון.
63
a = (b או c) ולא d
64
אם b או c נכונים ו-d שקר, אז a מוגדר כנכון.
אם b ו-c שקריים או ש-d נכון, אז a שקר.
65
דמיינו עכשיו שאנחנו לא מבצעים את ההצהרה הזו פעם אחת, אלא מבצעים אותה שוב ושוב.
ההצהרה הזו לעולם לא תחסום את הביצוע.
היא תמיד תניב תוצאה מיידית.
עכשיו בואו נשנה את זה קצת.
66
a = (b או a) ולא d
67
שימו לב שהחלפנו את c ב-a.
עכשיו ערך ה-a תלוי בערך הקודם של a כמו גם ב-b וב-d.
עם זאת, ברגע ש-a הופך לאמת, ערך ה-b כבר לא משנה כי b נמצא בתנאי "או" עם a.
אם נבצע זאת שוב ושוב, רק כאשר d הופך לאמת, go יהפוך לשקר.
68
זהו מעגל כפתור סטנדרטי, הידוע גם כמעגל "סגור במעגל", מכיוון שהוא "מסגר" סביב תנאי ההתחלה.
69
b הוא כפתור ההתחלה עם מגע פתוח באופן רגיל.
d הוא כפתור העצירה עם מגע סגור באופן רגיל.
a הוא רלאי עם אחד ממגעיו המשמש להחזקתו.
70
אם תחבר זאת עם כפתורים ריאליים ורלאי או תתכנת זאת לתוך PLC עם לוגיקה מדרגותית, זה יעבוד באותו אופן.
תוכנית PLC מורכבת משורות לוגיקה אחת אחרי השנייה ומבצעת זאת שוב ושוב סריקה אחר סריקה, רק עוצרת לעדכן את הקלט/פלט שלה.
71 תכנות אסינכרוני
אתם עשויים לחשוב שסריקה מחזורית זו נשמעת כמו תכנות אסינכרוני, שהוא כל כך פופולרי ביישומי שרתי אינטרנט בימינו.
בעצם, זה אותו עיקרון בדיוק.
72
עם תכנות אסינכרוני, התוכנית שלך לעולם לא צריכה להשתמש בהוראות חסימה והביצוע ממשיך במחזור חוזר.
PLCסים פותרים זאת על ידי היעדר הוראות שמחסמות, ורבים מ-PLCסים לא מאפשרים קפיצות לאחור.
מכונאים בבגדים עבודה במפעלים ביצעו תכנות אסינכרוני עשורים לפני שה"קוליים" שמעו על זה.
73 שפות תכנות של PLC הן שפות חזותיות או גרפיות.
אם סולם, תרשים פונקציה סדרתי, או גרפט ודיאגרמת בלוקים פונקציונליים נשמעים כמו שפות תכנות חזותיות, הם באמת כאלה.
בפועל, הסולם הוא כנראה אחד מהשפות החזותיות המוקדמות ביותר בשימוש מסחרי.
ויקיפדיה מגדירה שפת תכנות חזותית כך:
74
במחשוב, שפת תכנות חזותית (מערכת תכנות חזותית, VPL, או VPS), הידועה גם כתכנות דיאגרמטי, תכנות גרפי או קידוד בלוקים, היא שפת תכנות שמאפשרת למשתמשים ליצור תוכניות על ידי מניפולציה של אלמנטי התוכנית גרפית במקום לציין אותם בטקסט. VPL מאפשרת תכנות עם ביטויים חזותיים, סידורים מרחביים של טקסט וסמלים גרפיים, המשמשים כאלמנטים של תחביר או כסימון משני. לדוגמה, רבות משפות VPL מבוססות על הרעיון של "קופסאות וחצים", בהן קופסאות או אובייקטים אחרים על המסך מטופלים כגופים, המחוברים בחצים, קווים או קשתות המייצגים יחסים. VPL הן בדרך כלל הבסיס של פלטפורמות פיתוח בקוד נמוך. Scratch היא דוגמה ל-VPL.
75
סוף ציטוט.
כפי שאתם יכולים לראות, מה שנחשב מגניב היום היה ברצף הייצור לפני יותר מ-40 שנה.
--------------------
פופולריות של שפות תכנות PLC
PLC הן בעלות בעלות פרטית כמעט מוחלטת.
בערך כל ספק יש לו גישה פרטית משלו לכל שפה.
איך ניתן לתכנת PLC מסוים נקבע על ידי תוכנת התכנות של הספק.
אם הספק לא תומך בכך, אי אפשר להשתמש בכך.
ספק יחיד יכול אף להחזיק בקווי מוצרים לא תואמים רבים, אשר צריכים להיות מתוכנתים בדרכים שונות עם תוכנות שונות, אף על פי שזה לא נפוץ כמו שהיה בעבר.
77
כמעט כל ה-PLCs תומכים בתכנות ב-Ladder.
חלק תומכים בתכנות ברשימת הוראות בנוסף ל-Ladder.
כל דבר אחר פחות נפוץ בהרבה.
78
לוגיקת Ladder נמצאת גם במדד Tiobe, אגב.
לאלה שלא שמעו על זה, מדד Tiobe, או T I O B E, הוא אתר אינטרנט שמפרסם את הפופולריות של שפות תכנות רבות על בסיס קריטריונים שונים.
79
המקום הראשון ברשימה שלהם הוא Python, כרגע ב-19.98%.
שני הוא ג, עם 11.55%.
80
בזמן כתיבת התסריט הזה, לוגיקה מדרגותית הייתה במקום ה-46 עם דירוג של 0.28%, מה שהציב אותה ממש מתחת ל-Erlang ומעל Haskell.
אני לא בטוח אם זה אומר שלוגיקה מדרגותית אינה מוזרה כמו שחשבת, או אולי שארנג' והאסקל הם למעשה מוזרים יותר ממה שחשבת.
--------------------
סיכום הפרק 81
בפרק זה עברנו על
ההיסטוריה המוקדמת של המחשבים בשליטה תעשייתית
ההיסטוריה המוקדמת של PLCs, כולל איך הם קיבלו את שמם
מי המותגים הגדולים
מה המראה הפיזי שלהם
82
תיאור בסיסי של ארכיטקטורת מכונה מופשטת
הצצה קצרה מאוד למה שתוכנית PLC נראית כמו
הרעיון של הסריקה
שפות התכנות העיקריות של PLC
שפות התכנות הקטנות של בקרת המערכות
הפופולריות היחסית של כל שפת תכנות
83
בפרק הבא נסקור אחד ממחשבי השער המתוכנתים (PLCs) המוקדמים מתקופת השימוש הרחב שלהם.
פלטפורמת בקרה זו הייתה מוצלחת מאוד ושימשה רבות מחברות לראשונה בפלטפורמת בקרה כזו.
זהו ה-Allen Bradley PLC2.
84
זו הייתה הסדרה השנייה מתוך שמונה חלקים.
--------------------
