Mục lục:
Video: Node-RED: RS485 Raspberry Pi Hướng dẫn: 8 bước
2025 Tác giả: John Day | [email protected]. Sửa đổi lần cuối: 2025-01-13 06:58
Công cụ lập trình trực quan dựa trên luồng Node-RED ngày càng trở nên phổ biến hơn đối với các nhà phát triển Raspberry Pi. Tài liệu hướng dẫn này sẽ chỉ cho bạn cách sử dụng RS422 / RS485 Serial HAT riêng biệt của chúng tôi dưới Node-Red cho giao tiếp RS485 đơn giản và cho cả các ứng dụng MODBUS.
Bước 1: Công cụ và vật liệu
Vật liệu:
- Raspberry Pi A +, B +, 2B, 3B hoặc 4B
- HAT nối tiếp RS422 / RS485
- Thẻ SD
Phần mềm:
-
Raspbian Stretch hoặc Buster (với máy tính để bàn và
phần mềm được đề xuất)
Bước 2: Giải phóng UART trong Raspbian Stretch hoặc Buster
Cách dễ nhất là sử dụng công cụ raspi-config để chuyển UART sang các chân GPIO14 / 15. chụp ảnh Raspbian mới
- sudo raspi-config
- goto '5 Tùy chọn Giao diện'
- goto 'P6 Serial'
- 'Bạn có muốn một trình bao đăng nhập có thể truy cập được qua nối tiếp không?' KHÔNG
- 'Bạn có muốn bật phần cứng cổng nối tiếp không?' ĐÚNG
- Kết thúc raspi-config
- khởi động lại Raspberry Pi
Bây giờ bạn có thể truy cập UART qua / dev / serial0
Bước 3: Cài đặt chuyển mạch DIP cho RS485 HAT
RS422 / RS485 HAT của chúng tôi đi kèm với 3 ngân hàng chuyển mạch DIP. Bạn phải thiết lập các công tắc DIP này cho RS485 như thể hiện trong hình trên.
- Công tắc 1: 1-TẮT 2-BẬT 3-BẬT 4-TẮT
- Công tắc 2: 1-TẮT 2-TẮT 3-BẬT 4-BẬT
- Công tắc 3: 1-TẮT hoặc BẬT * 2-TẮT 3-TẮT 4-TẮT
* Tùy thuộc vào vị trí của RS422 / RS485 HAT trong dòng Modbus, bạn phải chuyển điện trở đầu cuối BẬT hoặc TẮT. Vui lòng chỉ chuyển điện trở sang vị trí ON nếu HAT nằm trên một đầu của đường dây. Trong tất cả các trường hợp khác, chuyển điện trở đầu cuối TẮT
Bước 4: Khởi động Node-RED
Khởi động Node-RED:
Node-RED là một phần của Raspbian Stretch and Buster (với máy tính để bàn và phần mềm được đề xuất). Bạn có thể sử dụng lệnh node-red để chạy Node-RED trong một thiết bị đầu cuối hoặc trên màn hình nền thông qua menu 'Lập trình'.
Mở trình chỉnh sửa:
Khi Node-RED đang chạy, bạn có thể truy cập trình chỉnh sửa trong trình duyệt. Nếu bạn đang sử dụng trình duyệt trên máy tính để bàn Pi, bạn có thể mở địa chỉ: https:// localhost: 1880.
Bước 5: Giao tiếp RS485 đơn giản
Trong dòng ví dụ này, Raspberry Pi sẽ gửi văn bản 'Hello World' qua RS485 sau khi nhấn nút tiêm. Luồng sẽ nhận các chuỗi đến (kết thúc bởi / d) và hiển thị chuỗi trong cửa sổ gỡ lỗi ở phía bên phải.
Giao tiếp sẽ được thực hiện bằng cách sử dụng các nút vào và ra nối tiếp đã được cài đặt sẵn. Điều rất quan trọng là đặt các thuộc tính của Cổng nối tiếp thành / dev / serial0 như trong hình trên.
Bạn có thể kiểm tra luồng bằng PC được kết nối (qua bộ chuyển đổi USB sang RS485) và một chương trình đầu cuối đơn giản.
Bước 6: MODBUS - Cấu hình 1
Trong các bước sau, tôi muốn chỉ cho bạn cách triển khai một giao tiếp Modbus RTU đơn giản trong Node-RED.
Đầu tiên, chúng ta phải cài đặt thêm các nút Modbus node-red-Contrib-modbus thông qua trình quản lý bảng màu hoặc trên bash bằng cách nhập:
npm cài đặt node-red-Contrib-modbus
Bây giờ bạn có thể nhập luồng.
Bước 7: Cấu hình Modbus 2
Sau khi nhập luồng, chúng ta có thể xem cấu hình của các nút 'Modebus ghi' và 'Đọc Modbus'. Điều quan trọng là đặt thuộc tính 'Máy chủ' thành dev / serial0 và cấu hình nó như thể hiện trong hình trên.
Bước 8: Kiểm tra Modbus
Đối với thử nghiệm, tôi đã kết nối Arduino với RS485 Shield làm nô lệ Modbus (bạn có thể kiểm tra hướng dẫn này để biết thêm thông tin).
Modbus Read sẽ thăm dò Unit 1 tất cả 2s và đọc 8 thanh ghi của slave. Bạn có thể xem kết quả trong trạng thái của Modbus Response. Thông qua 2 kim phun, bạn có thể đặt thanh ghi 6 của nô lệ thành 0 hoặc 255.