RS485 ופרוטוקול תקשורת Modbus

Aug 29, 2025 השאר הודעה

מבוא ממשק RS485

 

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


עיקרון RS485

 

ממשק RS485 משתמש בשידור דיפרנציאלי, תוך שימוש בשני קווי אות (A ו-B) לשאת אותות רמת מתח. גודל האות תלוי בהפרש המתח בין שני הקווים הללו. בממשק RS485, קווי אות A ו-B יכולים לתפקד כמשדרים או כמקלטים. שיטת שידור דיפרנציאלית זו מאפשרת לממשק RS485 להתנגד ביעילות לרעשים והפרעות חיצוניות, ובכך להבטיח איכות שידור.


שדות יישום RS485


ממשק RS485 נמצא בשימוש נרחב בתרחישים הדורשים העברת נתונים-למרחקים ארוכים,-גבוהים ויציבות, כגון אוטומציה תעשייתית, בתים חכמים ומערכות אבטחה. מבחינת מרחק שידור, RS485 תומך בעד 1200 מטר, ומבחינת מהירות שידור הוא תומך בעד 10Mbps. זה הופך את ממשק RS485 ליישומי נרחב בתרחישים הכוללים רכישת נתונים, רגולציה, ניטור ובקרה.

 

 

 

info-638-230

עיצוב מעגלים RS485


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

 

מרחק שידור


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


מהירות תקשורת

 

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


הגנת ברקים


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


בידוד

 

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


פרוטוקולי תקשורת RS485


ביישומים מעשיים, ממשקי RS485 דורשים גם מפרטי פרוטוקול ועיצוב נתונים. פרוטוקולי תקשורת RS485 נפוצים כוללים Modbus, Profibus ו-CANopen. לכל פרוטוקול מאפיינים ברורים ותרחישים ישימים, המאפשרים בחירה על סמך דרישות ספציפיות. להלן, אנו מציגים בעיקר את פרוטוקול Modbus RTU, שהוא פרוטוקול השידור הנפוץ ביותר בפרויקטים שלנו המבוסס על ממשקי RS485.


מבוא ל- Modbus RTU

 

Modbus RTU הוא פרוטוקול תקשורת תעשייתי מאומץ נרחב, אחד מפרוטוקולי התקשורת הטוריים המבוססים על מסגרת Modbus. משמש בעיקר לתקשורת טורית בין התקנים כגון בקרי PLC, חיישנים ומפעילים, פרוטוקול זה מקל על חילופי נתונים. מאמר זה מפרט את המשמעויות הספציפיות של כל אוגר בפרוטוקול Modbus RTU, מספק דוגמאות לשידור וקליטה של ​​נתונים עבור כל קוד פונקציה, ומדגיש את סכום הבדיקה החיוני של ה-CRC.


פורמט נתונים של פרוטוקול Modbus RTU


פרוטוקול Modbus RTU משתמש בתקשורת טורית להעברת נתונים.


ספציפית:


השדה כתובת מזהה את כתובת התקן העבד בתקשורת, שיכולה להיות כל ערך בין 0 ל-247.


קוד הפונקציה מציין את סוג הנתונים ואת כיוון הקריאה/כתיבה, בדרך כלל מספר שלם בין 1 ל-127.


שדה הנתונים מכיל את תוכן הנתונים בפועל.
ה-Checksum (CRC) מאמת את תקינות חבילת הנתונים.
קודי פונקציית פרוטוקול Modbus RTU
בפרוטוקול Modbus RTU, קודי פונקציות שונים מייצגים סוגי נתונים שונים וכיווני קריאה/כתיבה. להלן קודי פונקציות נפוץ ומשמעותם:


01: קרא את פנקס הסליל
02: קרא אוגר קלט בדיד
03: קרא את רישום החזק
04: קרא אוגר קלט
05: כתוב אוגר סליל יחיד
06: כתוב רישום החזקה בודדת
15: כתוב רישום סליל מרובים
16: כתוב רישום החזקה מרובים


רישומי כתובות פרוטוקול Modbus RTU


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


רישום סלילים (רשימת סלילים)

 

אוגרי סליל מאחסנים ערכים בוליאניים (0 או 1). קודי הפונקציות 01, 05 ו-15 מותרים להפעלה על אוגרי סליל. מצב של כל סליל יכול להיות מיוצג על ידי סיבית בינארית אחת.


לדוגמה, אם הסליל בסיביות 0x0001 מוגדר ל-0, הערך הבינארי שלו הוא 00000000 00000001. אם הסליל מוגדר ל-1, הערך הבינארי שלו משתנה ל-00000000 00000010.


רישום קלט דיסקרטי


ה-Discrete Input Register מאחסן את הערכים של מתגי קלט בינאריים ונקרא-בלבד, כאשר קוד הפונקציה התואם הוא 02. ההבדל בין ה-Discrete Input Register ל-Cil Register הוא שהוא מציין אם מתג נמצא במצב ON, ולא במצבו הנוכחי.


רישום אחזקות

 

מאגר החזקות מאחסן משתני מספרים שלמים של 32 סיביות. קודי הפונקציה 03, 04, 06 ו-16 מאפשרים פעולות קריאה/כתיבה בפנקס האחזקה. ערכים בתוך רישום החזקות יכולים להקל על העברת נתונים בין מכשירים או להיות מותאמים אישית על ידי משתמשים כפרמטרי בקרה רלוונטיים.


רישום קלט

 

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


בדיקת פרוטוקול Modbus RTU CRC

 

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


אם לוקחים את אוגר הקריאה (קוד פונקציה: 03) כדוגמה, הערכים ההקסדצימליים של סכום הבדיקה של ה-CRC עבור מנות הנתונים המשודרות והמתקבלות שלו הם 0x39 ו-0x3E, בהתאמה. מנות הנתונים הספציפיות שנשלחו והתקבלו הן כדלקמן:


המשדר-שלח חבילת נתונים: 01 03 00 00 00 01 C4 0ב
בחבילה זו, 6 הסיביות הראשונות (01 03 00 00 00 01) מייצגות את פורמט פרוטוקול Modbus RTU, בעוד ששתי הסיביות האחרונות (C4 ו-0B) מהוות את סכום הבדיקה של ה-CRC.
מנה שהתקבלה במקלט: 01 03 02 00 01 39 3ה
בחבילת נתונים זו, 6 הסיביות הראשונות 01 03 02 00 01 39 מייצגות את ערך אוגר ההחזקה שהתקבל (שני בתים), בעוד ששתי הסיביות האחרונות 3E ו-39 הן סכום הבדיקה המחושב של CRC.


דוגמה לשידור פרוטוקול Modbus RTU


להלן דוגמה פשוטה של ​​שידור פרוטוקול Modbus RTU לקריאת נתונים מפנקס ההחזקה של התקן:


המשדר שולח: 01 03 00 00 00 02 ג5 9א
המקלט מקבל: 01 03 04 00 00 00 66 CB


דוגמה זו קוראת את אוגר ההחזקה של התקן 01 באמצעות קוד פונקציה 03, תוך גישה לשני הבייטים בכתובת הרישום 0x0000. לפיכך, חבילת הנתונים שהתקבלה מכילה את הערכים 0x0000 ו-0x0000, כלומר, 0x0000 0000, המיוצגים בהקסדצימליים כ-0x66CB.


מַסְקָנָה


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

שלח החקירה

whatsapp

טלפון

דוא

חקירה