כיצד לחבר מודבוס TCP/IP?
א. סקירת ההסכם
MODBUS TCP פרוטוקול בקרת שידור (Transmission Control Protocol) הוא פרוטוקול תקשורת טורית נפוץ בסביבות תעשייתיות, שתוכנן במקור עבור התקנים המחוברים באמצעות קווי תקשורת טוריים. עם זאת, עם הזמן, MODBUS TCP הפך גם לפרוטוקול תקשורת מרכזי עבור התקנים המחוברים דרך רשתות, בדרך כלל Ethernet. MODBUS TCP מאפשר למכשירים לתקשר דרך רשת, מה שמאפשר ניטור ובקרה מרחוק.
מודבוס-TCP הוא יישום פרוטוקול Modbus על גבי Ethernet, המבוסס על ה- פרוטוקול TCP/IP מחסנית. היא שומרת על הפונקציות המרכזיות של Modbus (כגון מודל נתונים וקודי פעולה), אך עוטפת נתונים בחבילות TCP/IP, תוך מינוף האמינות של TCP כדי להבטיח העברת נתונים מדויקת.
II. מבנה בסיסי של פרוטוקול MODBUS TCP
- מודל לקוח/שרת:
- הלקוח (בדרך כלל מחשב אישי, בקר מתקדם או התקן בקרה אחר) יוזם את החיבור ושולח בקשות.
- השרת (בדרך כלל מכשיר נשלט או מכשיר עבד) מקבל בקשות ומחזיר תשובות.
התקשורת מאמצת מודל של לקוח-שרת, שבו הלקוח (תחנת אב) יוזם בקשות באופן פעיל והשרת (תחנת עבד) מגיב. יציאת ברירת המחדל היא 502.

2. מבנה העסקה:
- מזהה עסקה: משמש להבחנה בין בקשות ותגובות שונות.
- מזהה פרוטוקול: בדרך כלל 0, משמש לזיהוי ה- פרוטוקול MODBUS.
- אורך: שדה אורך נתונים.
- מזהה יחידה: נגזר מכתובת המכשיר.
- קוד פונקציה: מציין את סוג הבקשה (כגון אוגר קריאה/כתיבה).
- נתונים: נתונים ספציפיים הקשורים לקוד הפונקציה.
- אימות שגיאות: משמש לאימות שלמות הנתונים.
3. מבנה מסגרת נתונים:
הנתונים ארוזים בחבילות TCP/IP, המורכבות משני חלקים: כותרת ההודעה MBAP ויחידת נתוני הפרוטוקול PDU (יחידת נתוני פרוטוקול).
- כותרת טלגרם MBAP (7 בתים): מזהה עסקה, מזהה פרוטוקול, אורך ומזהה יחידה.
מזהה עסקה (2 בתים): מזהה באופן ייחודי את זוג הבקשה-תגובה, ומבטיח התאמה.
מזהה פרוטוקול (2 בתים): קבוע ב-0x0000, המציין Modbus-TCP.
שדה אורך (2 בתים): מציין את מספר הבייטים של ה-PDU העוקב (כולל מזהה היחידה וקוד הפונקציה).
מזהה יחידה (בייט אחד): שווה ערך לכתובת עבד, המזהה התקנים ברשת.
- PDU (יחידת נתוני פרוטוקול): קוד פונקציה ונתונים, זהים ל מודבוס-RTU.
קוד פונקציה (בייט 1): מגדיר את סוג הפעולה (כגון קריאה/כתיבה של סליל או אוגר).
נתונים: אורך משתנה, המכיל את הכתובת והערך הנדרשים לפעולה.

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

IV. קודי פונקציה נפוצים
- 01: קריאת סטטוס סליל (קריאת קלט בדיד)
- 02: סטטוס קלט קריאה (אוגר קלט קריאה)
- 03: קרא את רישום ההחזקות (קרא את ערך רישום ההחזקות)
- 04: קריאת אוגר קלט (קריאת ערך אוגר הקלט)
- 05: כתיבה על סליל יחיד
- 06: כתיבת אוגר יחיד
- 15: כתוב סלילים מרובים
- 16: כתיבת מספר אוגרים
- 17: כתיבת מספר אוגרים (עם מסכה)
אמצעי זהירות
- ודא ש- MODBUS TCP השירות בצד השרת הופעל והוא מאזין בפורט הנכון (ברירת המחדל היא 502).
- ייתכן שיהיה צורך להגדיר כראוי את הגדרות חומת האש והרשת כדי לאפשר לתעבורת TCP לעבור דרך פורטים ייעודיים.
- השתמש במזהה היחידה ובקוד הפונקציה הנכונים כדי לתקשר עם המכשיר.
- MODBUS TCP נמצא בשימוש נרחב במערכות אוטומציה וניטור תעשייתיות בשל פשטותו ותאימותו הנרחבת. בעזרת יישום ותצורה נכונים, ניתן להשיג ביעילות תקשורת וניהול מרחוק בין התקנים.










