Mục lục:
2025 Tác giả: John Day | [email protected]. Sửa đổi lần cuối: 2025-01-13 06:58
NMEA-0183 Là một tiêu chuẩn điện để kết nối GPS, SONAR, cảm biến, đơn vị hoa tiêu tự động, vv trong tàu và thuyền. Khác với tiêu chuẩn NMEA 2000 mới hơn (dựa trên CAN), NMEA 0183 dựa trên EIA RS422 (một số hệ thống cũ hơn và / hoặc đơn giản sử dụng RS-232 hoặc một dây).
Tôi muốn chỉ cho bạn cách kết nối Raspberry Pi 3B với bất kỳ thiết bị NMEA-0183 nào có đầu ra khác biệt. Mặc dù tiêu chuẩn yêu cầu các đầu vào và đầu ra cô lập, nhưng việc sử dụng RS422 / RS485 HAT với giao diện cô lập là rất hữu ích.
Bước 1: Công cụ và phần mềm
Vật liệu:
Raspberry Pi
RS422 / RS485 HAT
một thiết bị NMEA0183 nối tiếp
Phần mềm:
Raspbian Stretch
Trình mô phỏng NMEA
Bước 2: Kết nối với NMEA 0183
Trong hình trên, bạn có thể thấy một thiết bị NMEA điển hình với đầu ra vi sai. Các thiết bị đầu cuối là NMEA OUT + và NMEA OUT- hoặc TX + hoặc TX-. Dây NMEA IN + và NMEA IN- là tùy chọn.
nếu bạn có một dây truyền duy nhất từ thiết bị của mình (rất có thể được gắn nhãn TX hoặc NMEA OUT hoặc tương tự như vậy), thì thiết bị của bạn sử dụng giao thức RS-232. Trong trường hợp này, bạn sẽ cần một bộ chuyển đổi RS232 đơn giản.
Bước 3: Cài đặt chuyển đổi DIP
Bước 4: Giải phóng dòng nối tiếp và kích hoạt UART của Raspberry Pi
Cách dễ nhất là sử dụng công cụ raspi-config để chuyển UART sang 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 5: Phần mềm cơ sở
Bạn có thể tìm thấy rất nhiều phần mềm NMEA-0183 khác nhau Ngăn xếp Python cho Raspberry Pi Một giải pháp rất đơn giản là thư viện NMEA của Nick Sweeting:
github.com/nsweeting/NMEA0183
Xin lưu ý: cần có pyserial cho các kết nối nối tiếp:
github.com/nsweeting/NMEA0183
Bước 6: Chạy thử nghiệm
Chương trình Python sẽ giải mã các giao thức NMEA đến. Nếu bạn không có thiết bị NMEA ở nhà, bạn cũng có thể sử dụng Trình mô phỏng trên PC và bộ chuyển đổi USB sang RS485 đơn giản thay vì thiết bị thực.