Spisu treści:

Node-RED: samouczek RS485 Raspberry Pi: 8 kroków
Node-RED: samouczek RS485 Raspberry Pi: 8 kroków

Wideo: Node-RED: samouczek RS485 Raspberry Pi: 8 kroków

Wideo: Node-RED: samouczek RS485 Raspberry Pi: 8 kroków
Wideo: RS485 Communication between Raspberry Pi, Arduino, Seeeduino and ESP32 2024, Listopad
Anonim
Node-RED: samouczek RS485 Raspberry Pi
Node-RED: samouczek RS485 Raspberry Pi

Oparte na przepływie narzędzie do programowania wizualnego Node-RED staje się coraz bardziej popularne wśród programistów Raspberry Pi. Ta instrukcja pokaże Ci, jak używać naszego izolowanego RS422 / RS485 Serial HAT pod Node-Red do prostej komunikacji RS485, a także do zastosowań MODBUS.

Krok 1: Narzędzia i materiały

Narzędzia i materiały
Narzędzia i materiały

Materiały:

  • Raspberry Pi A+, B+, 2B, 3B lub 4B
  • Szeregowy kapelusz RS422/RS485
  • Karta SD

Oprogramowanie:

  • Raspbian Stretch lub Buster (z pulpitem i

    zalecane oprogramowanie)

Krok 2: Uwolnij UART w Raspbian Stretch lub Buster

Uwolnij UART w Raspbian Stretch lub Buster
Uwolnij UART w Raspbian Stretch lub Buster

Najprostszym sposobem jest użycie narzędzia raspi-config do przełączenia UART na piny GPIO14/15. weź świeży obraz Raspbian

  1. sudo raspi-config
  2. przejdź do „5 opcji interfejsu”
  3. przejdź do „Seria P6”
  4. 'Czy chcesz, aby powłoka logowania była dostępna przez port szeregowy?' NIE
  5. 'Czy chcesz, aby sprzęt portu szeregowego był włączony?' TAK
  6. Zakończ konfigurację raspi
  7. zrestartuj Raspberry Pi

Teraz możesz uzyskać dostęp do UART przez /dev/serial0

Krok 3: Ustawienie przełącznika DIP dla RS485 HAT

Ustawienie przełącznika DIP dla RS485 HAT
Ustawienie przełącznika DIP dla RS485 HAT

Nasz RS422/RS485 HAT jest wyposażony w 3 banki przełączników DIP. Musisz ustawić te przełączniki DIP dla RS485, jak pokazano na powyższym obrazku.

  • Przełącznik 1: 1-WYŁ 2-WŁ 3-WŁ 4-WYŁ
  • Przełącznik 2: 1-WYŁ 2-WYŁ 3-WŁ 4-WŁ
  • Przełącznik 3: 1-WYŁ lub WŁ* 2-WYŁ 3-WYŁ 4-WYŁ

*W zależności od pozycji RS422/RS485 HAT w linii Modbus należy włączyć lub wyłączyć terminator. Proszę przełączyć rezystor do pozycji ON tylko wtedy, gdy HAT jest na jednym końcu linii magistrali. We wszystkich innych przypadkach należy wyłączyć rezystor terminujący

Krok 4: Uruchom węzeł-CZERWONY

Uruchom węzeł-CZERWONY
Uruchom węzeł-CZERWONY

Uruchom węzeł-CZERWONY:

Node-RED jest częścią Raspbian Stretch and Buster (z komputerem i zalecanym oprogramowaniem). Możesz użyć polecenia node-red, aby uruchomić Node-RED w terminalu lub na pulpicie za pomocą menu „Programowanie”.

Otwórz edytor:

Po uruchomieniu Node-RED możesz uzyskać dostęp do edytora w przeglądarce. Jeśli używasz przeglądarki na pulpicie Pi, możesz otworzyć adres:

Krok 5: Prosta komunikacja RS485

Prosta komunikacja RS485
Prosta komunikacja RS485
Prosta komunikacja RS485
Prosta komunikacja RS485

W tym przykładzie przepływ Raspberry Pi wyśle tekst „Hello World” przez RS485 po naciśnięciu przycisku wstrzykiwania. Przepływ otrzyma ciągi przychodzące (zakończone przez \d) i pokaże ciąg w oknie debugowania po prawej stronie.

Komunikacja będzie realizowana za pomocą szeregowych węzłów wejścia i wyjścia, które są wstępnie zainstalowane. Bardzo ważne jest, aby ustawić właściwości portu szeregowego na /dev/serial0, jak na powyższym obrazku.

Możesz przetestować przepływ za pomocą podłączonego komputera PC (przez adapter USB na RS485) i prostego programu terminala.

Krok 6: MODBUS - Konfiguracja 1

MODBUS - Konfiguracja 1
MODBUS - Konfiguracja 1

W poniższych krokach chcę pokazać, jak zaimplementować prostą komunikację Modbus RTU pod Node-RED.

Najpierw musimy zainstalować dodatkowe węzły Modbus node-red-contrib-modbus przez menedżera palet lub w bash wpisując:

npm zainstaluj node-red-contrib-modbus

Teraz możesz zaimportować przepływ.

Krok 7: Konfiguracja Modbus 2

Konfiguracja Modbus 2
Konfiguracja Modbus 2
Konfiguracja Modbus 2
Konfiguracja Modbus 2
Konfiguracja Modbus 2
Konfiguracja Modbus 2

Po zaimportowaniu przepływu możemy przyjrzeć się konfiguracji węzłów 'Modebus write' i 'Modbus read'. Ważne jest, aby ustawić właściwość 'Server' na dev/serial0 i skonfigurować ją tak, jak pokazano na powyższych obrazkach.

Krok 8: Test Modbus

Test Modbus
Test Modbus

Do testu podłączyłem Arduino z RS485 Shield jako slave Modbus (możesz sprawdzić tę instrukcję, aby uzyskać więcej informacji).

Modbus Read odpytuje jednostkę 1 o wszystkie 2s i odczytuje 8 rejestrów urządzenia podrzędnego. Możesz zobaczyć wynik w statusie Modbus Response. Za pomocą 2 wtryskiwaczy można ustawić rejestr 6 urządzenia podrzędnego na 0 lub 255.

Zalecana: