Innholdsfortegnelse:

Opptil 3 RS485 -busser på en Arduino: 5 trinn
Opptil 3 RS485 -busser på en Arduino: 5 trinn

Video: Opptil 3 RS485 -busser på en Arduino: 5 trinn

Video: Opptil 3 RS485 -busser på en Arduino: 5 trinn
Video: #19 Ведущая катушка Modbus Чтение/Запись | Внешний ПЛК Arduino 2024, Juli
Anonim
Opptil 3 RS485 -busser på én Arduino
Opptil 3 RS485 -busser på én Arduino
Opptil 3 RS485 -busser på én Arduino
Opptil 3 RS485 -busser på én Arduino

I denne instruksen vil jeg vise hvordan du kobler opptil 3 uavhengige RS485 -busser til en Arduino. Dette kan være nyttig hvis du vil opprette en gateway mellom disse bussene eller hvis du vil kontrollere enheter i disse bussene (uten å koble til bussene selv). En annen applikasjon er tilkoblingen av en RS422 -enhet (for eksempel motorstyring) og en RS485 -enhet (for eksempel en sensor) til den samme Arduino.

Uansett trenger du et RS485 -skjold med isolert grensesnitt for å eliminere jordingsproblemer og for å beskytte Arduino.

Trinn 1: Verktøy og materialer

Image
Image

Maskinvare:

  • Arduino UNO (eller hvilken som helst annen enkelt datamaskin med Arduino Shield -kontakter)
  • Arduino RS42 / RS485 Shield med isolert grensesnitt

Programvare:

Arduino IDE

Trinn 2: DIP -bryter og jumperinnstilling for BUS 1

DIP -bryter og jumperinnstilling for BUS 2
DIP -bryter og jumperinnstilling for BUS 2

Genser:

  • UART RX til posisjon 0
  • UART TX til posisjon 1
  • Spenning til posisjon 5V

DIP -bryter:

  • S1 = AV - PÅ - PÅ - AV
  • S2 = AV - AV - PÅ - PÅ
  • S3 = PÅ - AV - AV - AV

Trinn 3: DIP -bryter og jumperinnstilling for BUS 2

Genser:

  • UART RX til posisjon 2
  • UART TX til posisjon 3
  • Spenning til posisjon 5V

DIP -bryter:

  • S1 = AV - PÅ - PÅ - AV
  • S2 = AV - AV - PÅ - PÅ
  • S3 = PÅ - AV - AV - AV

Trinn 4: DIP -bryter og jumperinnstilling for BUS 3

DIP -bryter og jumperinnstilling for BUS 3
DIP -bryter og jumperinnstilling for BUS 3

Genser:

  • UART RX til posisjon 4
  • UART TX til posisjon 5
  • Spenning til posisjon 5V

DIP -bryter:

  • S1 = AV - PÅ - PÅ - AV
  • S2 = AV - AV - PÅ - PÅ
  • S3 = PÅ - AV - AV - AV

Trinn 5: Programvareintegrasjon

Skjoldet for buss 1 vil bruke maskinvaren UART på PIN 0 og 1 på Arduino. Begge de andre skjoldene bruker UART -programvare.

#inkludere

SoftwareSerial RS485_BUS2 (2, 3);

SoftwareSerial RS485_BUS3 (4, 5);

ugyldig oppsett ()

{

….

// init seriell port for buss 1

Serial.begin (9600);

// init seriell port for buss 2

RS485_BUS2.begynner (9600);

// init seriell port for buss 3

RS485_BUS3.begynner (9600);

….

Overføringsdataene til disse programvare UART -ene er begrenset av beregningskraften til Arduino. Selvfølgelig, hvis du vil bruke et ARM -basert Arduino- eller STM32 -kort, vil dette egentlig ikke være et problem, men for UNO anbefales det å bruke bare to skjold samtidig og for det andre skjoldet ikke mer som 9600 Baud som datahastighet.

Anbefalt: