התוכנית הזו הוגדרה כנקייה על ידי המארח.
--------------------
01. הקדמה
זהו הפרק השלישי בסדרה של שמונה חלקים.
02
בפרק הקודם כיסינו
ההיסטוריה המוקדמת של מחשבים בשליטה תעשייתית
* ההיסטוריה המוקדמת של PLCs, כולל כיצד הם קיבלו את שמם
מי המותגים הגדולים
מה המראה הפיזי שלהם
תיאור בסיסי של ארכיטקטורת מכונה מופשטת
מבט קצר מאוד על מהו תוכנית PLC
מושג הסריקה
שפות התכנות העיקריות של PLC
שפות התכנות המשניות של PLC
הפופולריות היחסית של כל שפת תכנות
03
בפרק זה נתחיל על ידי הסתכלות על אחד ה-PLC המוקדמים מתקופת השימוש הרחב הראשונית שלהם.
לא אנסה אפילו לנסות להיות מקיף, רק אספק סקירה רחבה בזמן המוגבל שיש לי כאן.
התחלתי עם מודל ישן יותר מכיוון פשטותו ותכונותיו המוגבלות מאפשרות כניסה קלה יותר לנושא.
--------------------
04 אלן בראדלי PLC/2
אלן בראדלי PLC/2 הוצג לשוק בשנת 1977.
זה לא היה הניסיון הראשון שלהם בתחום זה, אבל זה היה הראשון באמת מוצלח שלהם.
אני לא מודע להיסטוריה מקיפה של קו המוצרים המוקדמים שלהם, אבל אחד מהמודלים המוקדמים העיקריים שלהם שנמכרו היה ה-PLC2/30.
זה גם ידוע כסדרת 1771 שלהם.
--------------------
05 סידור פיזי
מודול ה-CPU היה קופסה מתכתית גדולה שעמדה לצד מתלה הקלט/פלט והתחברה אליו באמצעות כבל.
המדף I/O היה תיבה עם חזית פתוחה וסדרה של חריצים בהם ניתן להכניס תיבות צרות גבוהות המכילות את ה-I/O.
06
לוח אחורי עבר לאורך הגב, וחיבר את ה-I/O ל-CPU.
מדפים מרובים יכלו להיות מחוברים זה לזה באמצעות כבלים.
עבור ה-PLC2/30, ניתן היה לקבל עד 896 נקודות I/O דיגיטליות מקסימליות.
07
המדפים היו בגובה 315 מ"מ, ורוחבם נע בין 247 מ"מ ל-610 מ"מ, עם מדפים הזמינים ב-4, 8, 12 ו-16 חריצים.
ה-CPU היה באותו גובה כמו המדף וערך בצורה ריבועית בערך.
08
עם ההתקדמות של האלקטרוניקה המיקרוסקופית, מודול ה-CPU היה יכול להיות מצמצם בגודלו כך שיתאים לחריץ במדף, מה שהפך לנורמה עבור PLCs.
--------------------
09 האלקטרוניקה בפנים
מודלים מוקדמים של PLC/2 השתמשו בסוג כלשהו של מעבד 8-ביט, לפי מקורות מסוימים, אינטל 8080.
10
הם השתמשו גם בארבעה מעבדים AMD 2900 סליל ביט כעוזר לוגי.
אם אינכם מכירים מעבדים מסוג Bit Slice, אלו הם שבבים הדומים לפרוסות אנכיות של 4 ביט מעבד, וניתן לחבר אותם יחד עם שבבי לוגיקה ליצירת CPU שלם.
אלה הם אלה ששימשו לבניית מיני-מחשבים.
11
השתמשו בהם כעוזרי עיבוד בפלסים מוקדמים מכיוון שעיבודרים מיקרו לבד היו פשוט איטיים מדי כדי לטפל בביצוע תוכנית המשתמש במהירות מספקת כדי לאפשר גודל תוכנית שימושי.
גם אחד או יותר מעבדים זעירים שימשו כדי לתאם את הפעולה הכוללת ואת ניהול המערכת.
12
כאשר המעבדים המיקרויים הפכו מהירים וחזקים יותר, הצורך במעבדי לוגיקה משניים דעך והם הוסרו בסופו של דבר.
גרסאות מוקדמות השתמשו בזיכרון ליבה מגנטי.
מאוחר יותר עברו לסוג כלשהו של זיכרון RAM מוצק, כנראה זיכרון RAM סטטי מסוג כלשהו.
13
פרטים לגבי סוג המעבדים שבפנים של כל PLC למעשה קשים מאוד להשגה, מכיוון שמפיקים בדרך כלל לא מדברים על סוג זה של דבר.
הם רוצים שהמשתמש יראה זאת רק כקופסה שחורה.
--------------------
טבלת הנתונים 14
מנקודת מבט של מתכנת, הדבר החשוב ביותר להבין תחילה הוא טבלת הנתונים.
טבלת הנתונים היא זיכרון הנתונים של ה-PLC.
15
עבור PLC2, זהו מערך של מילים בנות 16 ביט.
כל מילה מורכבת משתי בתים של 8 ביט.
כתובות עבור ביטים ומילים הן באוקטל.
16
עבור אלו שאינם מכירים אותם, מספרים אוקטליים עוקבים אחר מערכת ספירה שמתחילה ב-0 ומסתיימת ב-7.
המספר הבא אחרי 7 הוא 10.
הספירה ממשיכה אז מ-11, 12, 13 וכו', עד 17, 20, 21 וכו'.
כל סעיף אוקטלי לוקח בדיוק 3 ביטים.
17
ביטים בודדים ב-PLC2 יכולים להיות מיועדים על ידי ציון המילה אחר סימן הסלאש, ואז הביט.
לדוגמה, 030/12 הוא הביט 12 במילה 030. זכור שזה אוקטלי, אז 12 אינו הביט ה-12 אם אתה סופר במערכת העשרונית.
ארגון זיכרון 18
בפלטפורמת PLC2/30, טבלת הנתונים מאורגנת כדלקמן.
19
המילים 000 עד 007 הן אזור העבודה של המעבד מספר 1.
זה לא נגיש למשתמש.
20
המילים 010 עד 100, אך לא כולל 100, הן טבלת תמונת הפלט.
זוהי תמונת מפה זיכרון של פלטי קלט/פלט.
010 עד 077 הוא למדף 1.
020 עד 027 הוא למדף 2.
המבנה הזה ממשיך עד למדף 7, שהוא 070 עד 077.
21
מספרי העבודה של המעבד 100 עד 107 הם 2.
זה גם אינו נגיש למשתמש.
22
כתובות המילים 110 עד 200 הן טבלת תמונת הקלט.
זוהי תמונת זיכרון של קלטי I/O.
זה מסודר באותו אופן כמו טבלת תמונת הפלט, ומתחיל מ-110 עד 177.
110 עד 117 הוא למדף 1.
120 עד 127 הוא למדף 2.
דפוס זה ממשיך עד מדף 7, שהוא 170 עד 177.
23
תשים לב שהטבלה היוצאת של התמונה והטבלה הנכנסת של התמונה נראות כאילו הן מתייחסות לאותן סעיפי מדפים.
הן באמת עושות זאת.
לגבי לאיזה כתובת סעיף מסוים במדף מסוים מפותח, תלוי אם יש כרטיס קלט או כרטיס פלט באותו סעיף.
24
הכתובת 200 עד 277 היא עבור ערכים מצטברים של טיימר/ספירה.
ערך מצטבר הוא הזמן הנוכחי או הספירה.
25
הכתובת 300 עד 377 היא עבור ערכים מוגדרים מראש של טיימר/ספירה.
ערך מוגדר מראש הוא הזמן היעד או הספירה שמגיעים אליו גורם לטיימר או לספירה להצביע על כך שהגיע לערך הרצוי.
26
הזיכרון מעל 400 ניתן לתצורה כדי לחלק אותו לאזור אחסון נתונים ולאזור תוכנית משתמש.
אזור אחסון הנתונים הוא המקום בו אתה מאחסן נתונים שהתוכנית שלך צריכה להשתמש בהם, שאינם חלק ממערכות הקלט/פלט או מהספירות והמספרים.
עליך למצוא את האיזון הנכון בין נתוני המשתמש לגודל התוכנית.
27
ישנן דברים שונים שניתן לשנות ולהתאים ביחס למה שנאמר לעיל, אך לא אעמיק בנושא זה מכיוון שזה אינו מדריך על ה-PLC2.
=
אתם צריכים, עם זאת, להיות עם רעיון די טוב של הזיכרון של מודל מוקדם של PLC.
הדברים שיש להבין הם שקלט/פלט ממופים לכתובת זיכרון, ו-
שימושים שונים של טווחי זיכרון שונים משמשים למטרות שונות.
28
כל ניהול הזיכרון היה ידני.
זה היה תלוי במשתמש לעקוב אחר כתובות הזיכרון שהיו אמורות לשמש למטרות שונות.
אלן בראדלי סיפק בנדיבות טפסים נייריים שתוכלו להעתיק, אותם תוכלו להשתמש לתכנון ותיעוד לשימוש בכל כתובת.
חלק ממשימת התכנות הייתה להשתמש בזיכרון באופן יעיל ולוגי, תוך השארת מקום לשינויים עתידיים.
--------------------
29 תוכנית המשתמש
תוכנית המשתמש מורכבת מהנחיות.
כל הנחיה תופסת בדרך כלל מילה אחת של זיכרון.
עם זאת, הנחיות מורכבות יכולות לתפוס עד 8 מילים של זיכרון.
30
יש תוכנית ראשית.
ניתן לחשוב על זה כמו הפונקציה הראשית ב-C.
אם לא מועיל המטפורה הזו, פשוט חשבו שזה המקום בו התוכנית שלכם מתחילה.
התוכנית הראשית ממשיכה מדרגה אחת לאחרת עד שהיא מגיעה למשפט הסיום.
31
יש גם אזור של פרוצדורות משנה.
התוכנית הראשית קוראת לפרוצדורת משנה באמצעות הוראת "קפיצה לפרוצדורת משנה" (JSR).
תחנת התכנות T3
כאשר יצא ה-PLC2, דברים כמו מחשבים ניידים היו עדיין רחוקים מאוד.
אפילו המחשב הנייד הראשון בסגנון תיקיית Compaq עדיין היה רחוק שנים רבות.
למעשה, ה-PLC/2 יצא לא ארוך לאחר ערכת ה-Altair הראשונה.
33
לכן, התכנות הראשוני בוצע באמצעות תחנת תכנות מיוחדת הידועה כ-T3.
ה-T3 היה קופסה בגודל מזוודה עם מסך CRT קטן בקצה שלה, ומקלדת מחוברת למטה מהמסך.
אם זה נשמע כמו מחשבי הנייד המוקדמים, זכרו שזה למעשה קדם להם במספר שנים.
34
המקלדת לא הייתה מכונת כתיבה או בסגנון QWERTY.
היא הייתה מפתח ממברנה עם סמלים גרפיים.
זכרו את הפרק הקודם על דיאגרמות בקרה באמצעות רלאיי ואיך תיעדו אותם באמצעות סמלים תרשימיים בציורים.
מפתח ה-T3 כלל סמלים התואמים גרסה פשוטה ומעודנת של הסמלים המשמשים בתרשימים אלה.
35
כאשר מתכנת לחץ על אחד מהסמלים במפתח, הסמל התואם הופיע על המסך במיקום העכבר הנוכחי.
התכנות יכול היה אז להזין את כתובת הנתונים לסמל שהיה אמור להתאים באמצעות החלק המספרי של המקלדת.
36
מהנדס, טכנאי או חשמלאי יכול היה לכן ליצור ולהזין תוכניות בסביבה גרפית מלאה שהשתמשה בידע הקיים שלו בשליטה באמצעות רכיבי חומרה.
הם לא ראו זאת כתכנות מחשב, הם ראו זאת כמשהו אחר לגמרי שלא היה קשור למחשבים.
37
התכנות התרחש עם ה-T3 מחובר ל-PLC בזמן שה-PLC היה במצב תכנות.
ההוראות הוזנו ישירות מהטרמינל לזיכרון ה-PLC.
תוכניות יכלו להיות נשמרות או משוחזרות לקלטת.
התוכנית תריץ את עצמה כאשר ה-PLC יתוקן למצב ריצה.
38
מה יותר, הטרמינל T3 איפשר דיאגנוסטיקה בזמן אמת של תוכניות.
כאשר ה-T3 התחבר במצב הפעלה, תרשים הסולם עודכן בזמן אמת.
כאשר תנאי לוגי היה נכון, הוא היה מודגש.
כאשר תנאי הלוגיקה היה שקר, הוא הוצג במצב לא מודגש.
39
על ידי צפייה בסולם ספציפי, ניתן לראות אם סדרת ההוראות הגרפיות הצפויות היו כולן מודגשות בדפוס שיוביל לפלט הסופי של הסולם, אמת או שקר, כפי שציפינו.
זה היה כלי עזר חיוני בפתרון בעיות במציאת באגים בתוכנה וחסרונות בחומרה.
תחנות תכנות הפכו לחלק בלתי נפרד ממכשיר החשמל התעשייתי של טכנאי התחזוקה.
40
בסופו של דבר, כאשר מחשבים ניידים ומאוחרים יותר מחשבים ניידים הפכו לזמינים, ה-T3 הפך למיושן והפונקציות הללו הועברו לתוכנה שרצה על מחשבים סטנדרטיים.
עם זאת, הם עדיין פועלים באופן דומה באופן מהותי.
נוספו יכולות נוספות, כגון היכולת לכתוב תוכניות מבלי להיות מחוברים ל-PLC.
ניתן היה להוסיף תוויות ותיאורים לזיכרון כדי לתעד אותם ולסייע בקריאת התוכנית.
פונקציות צולבות היו הופכות את מציאת הכתובת ששימשה למטרה מסוימת לפשוטה יותר.
וכו'.
--------------------
41 הוראות
כעת אעבור לפירוט סוגי ההוראות שהיו זמינות לשימוש.
לא אנסה להסביר הכל, אך זה לפחות יתן לך רעיון מעורפל על איך תוכננו אלה.
אשתמש בשמות של Allen Bradley עבור אלה, שאדגיש שהם אינם תואמים את מה שמתכננים אחרים קוראים להם.
הוראות סוג רליי 42
אלו הוראות בוליאניות המורכבות מההוראות הבאות.
הוראות קלט 43
הוראות אלו בוחנות ביטים בזיכרון ומניבות מצב לוגי בהתאם לערך הביט שהם מתייחסים אליו.
הוראות קלט מתחילות משמאל לשורה ועובדות ימינה כאשר מוספות עוד.
בדוק על - זה נכון כאשר הביט המדובר מוגדר ל-1.
בדוק מחוץ - זה נכון כאשר הביט המדובר מוגדר ל-0.
הוראות פלט 44
חתיכות אלו נדלקות או כבות בהתאם לסכום תנאי הלוגיקה הבוליאנית שמובילים אליהן.
הוראות היציאה נמצאות מימין למדרג.
חייב להיות לפחות הוראת פלט אחת בכל עת.
יציאה של אנרגיה - כאשר תנאי הלוגיקה המובילים אליה נכונים, היא מגדירה ביטוי ל-1.
כאשר התנאים הלוגיים המובילים אליו הם שגויים, הוא מגדיר ביטוי ל-0.
45
מנגנון פלט - כאשר הוא נכון, הביט מופעל.
כאשר זה שקר, זה לא עושה כלום.
יציאה ללא נעילה - כאשר זה נכון, הביט מושבת.
כאשר זה שקר, זה לא עושה דבר.
46 הוראות ענף
אלו לא עושות דבר בעצמן, אבל הן יוצרות חיבורים בין חוטים בתרשים.
אלו חשובים כדי לאפשר להוראות המפורטות לעיל להיות מונחות במקביל באותו שלב, כך שהם יכולים לעשות דברים כמו לציין תנאים של OR.
ניתן לחשוב עליהם כעל המרה של בדיקה על או בדיקה כבויה להוראת OR או OR לא.
--------------------
47 הוראות טיימר ומנהור
טיימרים ומנהורים הם, כפי שהשם מרמז, הוראות שמבצעות פעולות של טיימינג ומנהור.
יש להם ערכים מוגדרים מראש נפרדים וערכים מצטברים.
הם סוג של הוראות יציאה, שכן הם ממוקמים בצד הימני של סולם הסולם, ותפענוחם תלוי במצב הלוגיקה של הסולם שמאלה.
48
טיימרים ומספור פועלים במערכת קוד עשרוני בינארי, או BCD.
ערכי BCD דורשים 4 ביטי זיכרון לכל אחד.
עם זאת, בניגוד למערכת שיצוג שיצוגי (הקסדצימלית), רק ערכים מ-0 עד 9 תקפים.
מה שהיה ערכים מ-A עד F בהקסדצימלית, אינם ערכים תקפים ב-BCD.
49
ערכים מוגדרים מראש וערכים מצטברים מאוחסנים במילים של 16 ביט. 12 הביטים הראשונים משמשים לאחסון עד 3 ספרות BCD.
4 הביטים העליונים הנותרים משמשים לאחסון ביטי מצב הוראה, כגון האם הטיימר או המספור הושלמו, ותכונות שונות אחרות.
50 טיימרים
בסיס הזמן של המונה תואם את רזולוציית המונה.
בסיסי הזמן הם 1.0 שניות, 0.1 שניות ו-0.01 שניות.
לכן, מונה עם בסיס זמן של שנייה אחת יכול למדוד בין 0 ל-999 שניות ברזולוציה של שנייה אחת.
מונה עם בסיס זמן של 0.1 שניות יכול למדוד בין 0 ל-99.9 שניות ברזולוציה של 0.1 שניות.
51
קיימים שלושה סוגים של מונה:
מונה עיכוב הפעלה (או TON),
מונה עיכוב כיבוי (או TOF),
מונה מחזיק (או RTO).
52
על טיימרים של עיכוב, הוא ממתין עד שהתנאי של השורה נכון, ומתחיל מחדש כשהוא הופך לשקר.
מעכבי זמן מופעלים לאחר תנאי ההפעלה הופך לשקר ומתרגלים מחדש כאשר הוא הופך לאמת.
מתזמרים רטינטיביים דומים למתזמרים עם עיכוב, אך שומרים על הערך המצטבר שלהם עד לניקוי על ידי ההוראה "ניקוי מתזמר רטינטיבי" (או RTR).
בדרך כלל, אתה מתחיל טיימר ואז מפקח על ה-"עשה" שלו במקום אחר בלוגיקה שלך.
חמישים ושלושה מדדים
מספירים סופרים אירועים.
אלה מגיעים במגוון הבא:
54
מנהרה נגדית (או CTU).
ספור יורד (או CTD)
איפוס ספור (או CTR)
ספור סריקה (או SCT)
55
ספירים כלפי מעלה סופרים מאפס, וספירים כלפי מטה סופרים מהנקבע מראש.
ספור הסריקה סופר את מספר סריקות התוכנית.
זה לא משהו שהיית בדרך כלל מוצא שימוש בו, אף על פי שאתה יכול להשתמש בו, למשל, לחישוב זמן הסריקה.
--------------------
56 הוראות מניפולציית נתונים
הוראות מניפולציית נתונים משמשות לקריאה, כתיבה והשוואה של נתונים בתים ומילים.
פעולות מתבצעות כאשר הרנג נכון.
57
GET קורא מילה של 16 ביט ממקום בזיכרון.
PUT כותב מילה של 16 ביט למקום בזיכרון.
LES נפתר כנכון אם הערך שנקרא על ידי הוראת GET קטן מערך מוגדר.
EQU נפתר כנכון אם הערך שנקרא על ידי הוראת GET שווה לערך מוגדר.
58
הוראות LES ו-EQU יכולות להיות משולבות בדרכים שונות זו עם זו ועם GET כדי לתת את כל האפשרויות של פרמטרי השוואה כמו גדול מ, קטן מ או שווה ל וכו'.
59
GET BYTE קורא בייט של 8 ביט ממקום בזיכרון.
TEST LIMIT נפתר כנכון אם ערך של בייט נמצא בין הגבולות המאוחסנים בבייטים העליונים והתחתונים של מילה.
מבחן הגבלה משמש בשילוב עם קבל בתים.
--------------------
60 הוראות אריתמטיות
הוראות אריתמטיות פועלות גם על ערכי מילה BCD.
הפעולות מתרחשות כאשר הרמה הופכת לאמיתית.
הביט העליון משמש להצגת דברים כמו עודף או תת-עודף אריתמטי.
אלה כוללים
61
הוסף
חסר
הכפל
חלוקת
המרת BCD לבינארי
המרת בינארי ל-BCD
--------------------
62 הוראות העברת בלוק
הוראות העברת בלוק הן הוראות פלט המשמשות להעברת עד 64 מילים של 16 ביט בין טבלת הנתונים למודולי קלט/פלט.
אלו משמשות עם קלט/פלט אינטליגנטי שעובד במילים ולא בביטים בודדים.
63
דוגמאות לכך הן דברים כמו
קלט/פלט אנלוגי שקורא וכותב מתח משתנה במקום רק על או כיבוי.
מערכת PID שמטפלת בשליטה בלולאה סגורה של דברים כמו טמפרטורה.
חיישנים תרמיים שמקריאים טמפרטורות.
בקרת מנועי שרת שמפקחים על מיקומי מנועי שרת.
שליטה במנוע צעדיים
מקודדים של מיקום.
64
לא אכנס לפרטים על העברות בלוקים, אבל זה אמור לספק לך רעיון כללי על איך ה-PLC יכול לטפל בסוג כזה של ציוד בהשוואה למצבי הפעלה/כיבוי הפשוטים של מודולים דיגיטליים.
בטבעי, ניתן להשתמש בהם בשילוב עם GET, PUT והוראות אחרות של מניפולציה על נתונים, שיכולות לקרוא ולכתוב מיקומי זיכרון.
--------------------
65 הוראות קפיצה ותכנות תת-רוטים
אלו כוללות את ההוראות הבאות.
66
קפיצה (או JMP)
תווית (או LBL)
קפיצה לתת-רוט (או JSR)
החזר (או RET)
67
קפיצה תעביר את הביצוע למצב התווית.
אפשר לחשוב על זה כמו הוראת GOTO.
68
תוויות הן מספריות וניתנות לטווח 00 עד 77 באוקטל.
הוראות קפיצה הן פלטים מופעלים, וכאשר הפלט הופך לאמתי, הביצוע קופץ למספר התווית המצוין בהוראה.
תוויות הן הוראות קלט ומופיעות בתחילת הפלט שבו הביצוע חוזר.
69
קפיצות רגילות לא יכולות לקפוץ לתוך פרוצדורה משנה, והן יכולות לקפוץ רק קדימה, לא אחורה.
זה אומר שאי אפשר ליצור לולאות באמצעות קפיצה.
זה יהיה החלטה מכוונת בעיצוב כדי למנוע מתוכניות להיתקע בלולאה ולמנוע מהסריקה להתקדם.
70
פרוצדורות משנה מופיעות לאחר סוף התוכנית הראשית.
הן מוגדרות על ידי תוויות אוקטל מספריות באמצעות הוראת התווית.
תת-רוטינות נקראות באמצעות ההוראה "קפוץ לתת-רוטינה" (או JSR).
בסוף תת-התוכנית, הוראת החזרה (או RET) מחזירה את הביצוע לשורה הבאה לאחר ה-JSR שקרא לה.
אתה יכול להכניס קריאות לתת-רוטינות עד לעומק של 8.
--------------------
הוראות העברת נתונים 71
למרות מה שאתה עלול לחשוב מהשם, אין קבצי דיסק ב-PLC2.
הוראת "קובץ" מעבירה למעשה בלוקים של מילים ממקום אחד בזיכרון הנתונים למקום אחר.
=
זה כולל כתובות מקור ויעד, ופרמטרים שונים נוספים המנהלים את הפעולה.
אכן, יש כאן הרבה דברים, אבל אני לא אטרח להיכנס לפרטים.
אתה פשוט צריך לדעת שזה אפשרי להעביר בלוקים של זיכרון נתונים מסביב.
--------------------
הוראות רשום 72 שינויים
אלה פועלים על סדרה שלמה של מילים וכוללים
=
העברת קובץ למעלה
העתק קובץ למטה
טעינה FIFO
פריקה FIFO
73
אלה יכולים לפעול בין 1 ל-999 מילים.
שימוש טיפוסי של הוראות מסוג זה יהיה לעקוב אחר חלק כזה כשהוא נע דרך התחנות השונות של מכונה.
--------------------
74 שינויים בביט
אלה פועלים על ביטים בודדים וכוללים את הבאים.
75
הזזה שמאלה של ביט
הזזה ימינה של ביט
בדיקת ביט הזזה מחוץ
בדיקת ביט הזזה פנימה
הגדרת ביט הזזה
איפוס ביט המשתנה
76
אלה עובדים בדיוק כפי שאתה מצפה במונחים של הזזת ביטים שמאלה או ימינה.
עם זאת, ניתן להגדיר את רשם ההזזה כארוך בין 1 ל-999 ביטים, כך שהוא אינו מוגבל לגודל של מילה.
--------------------
הוראות סקוונצר 77
הוראות הסדרן הן סימולציה תוכנית של בקרי תופים אלקטרומכניים.
מנהלי תופים אפשרו ביצוע של סדרה ארוכה של פעולות.
הם השתמשו בתוף מסתובב שהיה לו סדרה סדירה של חורים מקבילים על פני השטח החיצוני.
מעל שורה אחת של חורים הייתה שורה של מתגי הגבלה.
על ידי הכנסת מוטות לחורים מסוימים אשר באו במגע עם מתגי הגבלה, בקר התוף יכול להפעיל דפוסים של רכיבים או שסתומים.
78
חלק ממתגי הגבלה יכולים להיות מחוברים לחיישנים על האלמנטים הנעים של המכונה.
כאשר חלקי המכונה נמצאים בעמדה הנכונה עבור שלב זה ברצף, דפוס המוטות יגרום למסלול חשמלי להשלים דרך מתגי הגבלה ולהפעיל סולenoid אשר יסתובב את התוף לשלב הבא.
79
זה לעיתים קרובות משווה לתיבת מוזיקה או לסגנון ישן של שליטה במכונת כביסה.
עם זאת, במקרה של בקר התוף, המוטות יתכנתו תנאי התאמה קלט כמו גם את הפלט הרצוי.
בקר התוף PLC/2 יחקה את המסדר הזה.
תכונה זו הפכה לשימוש נרחב מאוד בציוד המשמש בתעשיית הרכב ותהליכי ייצור אחרים מבוססי הרכבה, ולעיתים קרובות הייתה ליבה של תוכנית PLC/2.
80
לא אכנס לפרטים של ההוראות של המסדר, אך יש הוראות רצף קלט ופלט נפרדות.
ההוראות של רצף הקלט ינסו להתאים את מצבי החיישנים, והוראות רצף הפלט יפעילו או יכבו פלטים שונים, ויפקחו על דברים כמו שסתומים ממתח.
הרצף עצמו ימוגדר על ידי סדרה של מילים בזיכרון, כאשר כל ביט תואם קלט או פלט בודד.
--------------------
81 הוראות לוגיקה של קובץ
הוראות לוגיקה של קובץ שוויו לפעולות מערך על מילים, למרות שהמונח "קובץ" משמש עבור מה שבדרך כלל יהיה "מערך" במונחים מחשביים.
הוראות אלו כללו
ו (AND)
או (OR)
או בלעדי (EXCLUSIVE OR)
תוספת
--------------------
טכניקות תכנות מיוחדות 82
אלו הוראות שונות.
הן מורכבות מהדברים הבאים.
קצה מתקדם חד-פעמי
קצה אחורי חד-פעמי
83
חד-פעמי היא הוראת פלט שגורמת לביט המופנה להדליק למשך סריקה אחת כאשר יש שינוי במצב בתנאי הלוגיקה של השורה.
חד-פעמיים יכולים להיות מופעלים על ידי שינוי מטעה לאמיתי או מאמיתי לשקר, בהתאם להוראה מבין השתיים שנעשה בה שימוש.
--------------------
84 למה ה-PLC2 השתמש ב-BCD?
סביר להניח שאתה תוהה למה ה-PLC2 השתמש במספרים BCD במקום מספרים שלמים רגילים.
זה משקף את סביבת העבודה שבה היה על ה-PLC המוקדם לעבוד.
לוחות בקרה מוקדמים שהשתמשו במכשירים מספריים מכניים ומסכי תצוגה אלקטרוניים פשוטים שפעלו בדרך כלל ב-BCD.
85
מתגות גלגל היו מכשירים מסתובבים בצורת גליל עם המספרים 0 עד 9 מודפסים על השוליים.
מספר גלגלים הונחו זה לצד זה.
הם נראו מעט כמו מד מהירות מכני שתמצא במכונית ישנה.
עם זאת, המפעיל יכול היה להזיז כל גלגל ספרות בנפרד.
כל ספירה תיקרא על ידי חיבור 4 חוטים ל-4 קלטים ב-PLC.
לכן, כל ספירה הייתה באופן טבעי BCD בשל האופן שבו החומרה של גלגל האצבע עבדה.
86
על ידי סיבוב הגלגלים השונים בנפרד, המפעיל יכול היה להתאים דברים כמו טמפרטורות, מהירויות, עיכובים בזמן, וכו', ולשנות פרמטרים של התהליך.
תצוגות המפעיל היו בדרך כלל תצוגות LED של 7 סגמנטים, ניאון, או תצוגות פלואורסצנטיות ואקום.
תצוגות אלו או מכשירים דומים להן קדמו ל-PLCs, ולכן היו מכשירים תעשייתיים נפוצים שנדרש לטפל בהם.
כל ספירה עשרונית הייתה לה 4 קלטים שיחוברו ל-4 פלטים ב-PLC.
תצוגות של 7 סגמנטים יכולות להשתמש ב-Hexadecimal, אך זה לא היה שימושי במיוחד אם מנסים להציג טמפרטורה בצלזיוס למפעיל.
לכן, שוב, BCD הייתה סוג המספר המעשי ביותר לעבוד איתו.
87
כשמערכות ה-PLC והתוכניות המשתמשות בהן הפכו למתוחכמות יותר, הן החלו לעבוד עם מספרים שלמים רגילים ואפילו עם מספרים נקיים.
עם זאת, רבות, אם לא רוב, ממערכות ה-PLC שמרו על הוראות לתרגום בין BCD לבין פורמטים אחרים.
--------------------
השפעת ה-PLC2
ה-PLC2 היה מוצר מצליח מאוד עבור Allen Bradley והקנה להם מעמד של אחד מספקי ה-PLC המובילים, עם מקום ראשון בשוק הצפון אמריקאי, וחמישייה ראשונה בעולם.
עם זאת, היו לו מספר חולשות, במיוחד הארכיטקטורה הפרימיטיבית של הזיכרון והתת-תוכניות והדגש על מספרים אוקטליים ו-BCD.
הוא התמקד בהחלפת רכיבי בקרת מתגים, והוא עשה זאת באופן סביר.
89
היורש האמיתי הבא המוצלח של ה-PLC2 עבור Allen Bradley היה ה-PLC5.
הוא לקח את סט ההוראות הבסיסי של ה-PLC2 ושילב אותו עם מערכת זיכרון חדשה, סוגי נתונים חדשים, מרחבים שמותנים נפרדים ותפקודים פרמטריים.
90
זה היה כמו מעבר מכתיבה ב-Basic עם מספרי שורות וקפיצות לפסקל.
עם זאת, עדיין ניתן להשתמש במדפי מודולים I/O של PLC2, שיקול חשוב בהתחשב בכך שרוב עלות ה-PLC הייתה במערכת I/O.
91
ה-PLC 5 הוחלף בתורו בסדרת Contrologix, שהעמידה דברים על דרכם עוד יותר, תוך שמירה על גודל קטן יותר.
Allen Bradley נותר אחד מספקי ה-PLC העיקריים כיום, הפועל תחת שם רוקול.
--------------------
92 מסקנה
בפרק זה התמקדנו ב-PLC מוקדם ספציפי אך בשימוש נרחב מאוד, ה-Allen Bradley PLC2.
כסרנו את הנושאים הבאים.
האלקטרוניקה הפנימית.
טבלת הנתונים
תוכנית המשתמש
תחנת התכנות T3
סקירה קצרה מאוד של סט ההוראות
93
זו הייתה בקרה פשוטה למדי ובדרכים מסוימות פרימיטיבית, אך עליכם לקבל מושג גס על המושגים מאחורי בקרה כזו, כולל טבלת הנתונים, מושג הסריקה וסט ההוראות בסגנון רלאי.
94
בפרק הבא נביט בבקרה של ספק הגדול בעולם, סימנס.
בדוגמה זו נביט בדגם מאוחר מעט מהבקרות PLC2, סדרה S5.
זה יכול להיחשב כבקרה דור שני.
מאז שלא נצטרך לחזור על המושגים הבסיסיים שכבר כיסינו, נוכל להתמקד יותר במה חדש ושונה ב-S5 בהשוואה ל-PLC2.
95
זהו היה הפרק השלישי בסדרה של שמונה חלקים.
--------------------
