תוכן עניינים:

עד 3 אוטובוסים RS485 על ארדואינו אחד: 5 שלבים
עד 3 אוטובוסים RS485 על ארדואינו אחד: 5 שלבים

וִידֵאוֹ: עד 3 אוטובוסים RS485 על ארדואינו אחד: 5 שלבים

וִידֵאוֹ: עד 3 אוטובוסים RS485 על ארדואינו אחד: 5 שלבים
וִידֵאוֹ: Dingtian DT-R008 ממסר חכם רב ערוצי עם Ethernet ו-Wi-Fi - סקירה כללית ושילוב ב-Home Assistant 2024, נוֹבֶמבֶּר
Anonim
עד 3 אוטובוסים RS485 על ארדואינו אחד
עד 3 אוטובוסים RS485 על ארדואינו אחד
עד 3 אוטובוסים RS485 על ארדואינו אחד
עד 3 אוטובוסים RS485 על ארדואינו אחד

במדריך זה אראה כיצד לחבר עד 3 אוטובוסים עצמאיים מסוג RS485 ל- Arduino אחד. זה יכול להיות שימושי אם ברצונך ליצור שער בין אוטובוסים אלה או אם ברצונך לשלוט במכשירים באוטובוסים אלה (מבלי לחבר את האוטובוסים עצמם). יישום נוסף הוא חיבור של מכשיר RS422 (למשל בקרת מנוע) והתקן RS485 (למשל חיישן) לאותו Arduino.

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

שלב 1: כלים וחומרים

Image
Image

חוּמרָה:

  • Arduino UNO (או כל מחשב לוח אחד אחר עם שקעי מגן Arduino)
  • מגן Arduino RS42 / RS485 עם ממשק מבודד

תוֹכנָה:

Arduino IDE

שלב 2: מתג DIP & מגשר עבור BUS 1

מתג DIP ומתג מגש עבור BUS 2
מתג DIP ומתג מגש עבור BUS 2

קַפצָן:

  • UART RX למיקום 0
  • UART TX למיקום 1
  • מתח למיקום 5V

מתג DIP:

  • S1 = OFF - ON - ON - OFF
  • S2 = OFF - OFF - ON - ON
  • S3 = ON - OFF - OFF - OFF

שלב 3: מתג DIP & הגדרת מגשר ל- BUS 2

קַפצָן:

  • UART RX למיקום 2
  • UART TX למיקום 3
  • מתח למיקום 5V

מתג DIP:

  • S1 = OFF - ON - ON - OFF
  • S2 = OFF - OFF - ON - ON
  • S3 = ON - OFF - OFF - OFF

שלב 4: הגדרת מתג DIP ומגשר ל- BUS 3

מתג DIP ומתג מגשר ל- BUS 3
מתג DIP ומתג מגשר ל- BUS 3

קַפצָן:

  • UART RX למיקום 4
  • UART TX למיקום 5
  • מתח למיקום 5V

מתג DIP:

  • S1 = OFF - ON - ON - OFF
  • S2 = OFF - OFF - ON - ON
  • S3 = ON - OFF - OFF - OFF

שלב 5: שילוב תוכנה

המגן לאוטובוס 1 ישתמש בחומרה UART על PIN 0 ו- 1 של ה- Arduino. שני המגנים האחרים ישתמשו בתוכנות UART.

#לִכלוֹל

SoftwareSerial RS485_BUS2 (2, 3);

SoftwareSerial RS485_BUS3 (4, 5);

הגדרת חלל ()

{

….

// יציאה טורית init לאוטובוס 1

Serial.begin (9600);

// יציאה טורית init עבור אוטובוס 2

RS485_BUS2.begin (9600);

// יציאה טורית init עבור אוטובוס 3

RS485_BUS3.begin (9600);

….

נתוני ההעברה של תוכנות UART אלה מוגבלות בכוח החישוב של ה- Arduino. כמובן שאם תשתמש בלוח Arduino מבוסס ARM או STM32 זו לא תהיה באמת בעיה, אך עבור UNO מומלץ להשתמש בשני מגנים בלבד במקביל ולמגן השני לא יותר מ- 9600 באוד כקצב הנתונים..

מוּמלָץ: