Spisu treści:
Wideo: Node-RED: samouczek RS485 Raspberry Pi: 8 kroków
2025 Autor: John Day | [email protected]. Ostatnio zmodyfikowany: 2025-01-13 06:58
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
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
Najprostszym sposobem jest użycie narzędzia raspi-config do przełączenia UART na piny GPIO14/15. weź świeży obraz Raspbian
- sudo raspi-config
- przejdź do „5 opcji interfejsu”
- przejdź do „Seria P6”
- 'Czy chcesz, aby powłoka logowania była dostępna przez port szeregowy?' NIE
- 'Czy chcesz, aby sprzęt portu szeregowego był włączony?' TAK
- Zakończ konfigurację raspi
- zrestartuj Raspberry Pi
Teraz możesz uzyskać dostęp do UART przez /dev/serial0
Krok 3: 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:
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
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
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
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
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.