工業製造
産業用モノのインターネット | 工業材料 | 機器のメンテナンスと修理 | 産業プログラミング |
home  MfgRobots >> 工業製造 >  >> Manufacturing Technology >> 製造プロセス

ArduinoでNMEA-0183を使用する方法

コンポーネントと消耗品

>
Arduino UNO
× 1
RS422 / RS485シールド
× 1

このプロジェクトについて

NMEA-0183は、船舶やボートのGPS、SONAR、センサー、自動操縦装置などを接続するための電気規格です。新しいNMEA2000標準(CANに基づく)とは異なり、NMEA0183はEIARS422に基づいています(一部の古いシステムや単純なシステムではRS-232、または単線を使用しています)。

Arduino UNO(または他のArduino)を差動出力のNMEA-0183デバイスに接続する方法を紹介します。標準では分離された入力と出力が要求されていますが、分離されたインターフェースでRS422 / RS485Arduinoシールドを使用すると便利です。

NMEA0183への接続

下の写真では、差動出力を備えた典型的なデバイスを見ることができます。端子はNMEAOUT +およびNMEAOUT-またはTX +またはTX-です。 NMEA IN +およびNMEAIN-ワイヤーはオプションです。

<図>

デバイスからの送信線が1本ある場合(ほとんどの場合、TXまたはNMEA OUTなどのラベルが付いています)、デバイスはRS-232プロトコルを使用します。この場合、単純なRS232コンバータが必要になります。

ジャンパー設定

<図>
  • UARTRXから位置2
  • UARTTXから位置3
  • 5Vを配置するための電圧

DIPスイッチの設定

<図>

ファームウェア

Arduino用のさまざまなNMEA-0183ソフトウェアスタックを見つけることができます。非常に優れたソリューションは、Justin RCutlerによるNMEAライブラリです

https://github.com/jrcutler/NMEA0183

ソフトウェアUARTのピンをピン2と3に変更する必要があります! 取る ケア それ ボー レート ソフトウェア uart 同じ as あなた NMEA デバイス - 典型的 4800 ボー。

テスト実行

コンパイルしてアップロードした後、プログラムは着信NMEAプロトコルをデコードします。シリアルモニターを開いて、デコードされたプロトコルを確認できます。

自宅にNMEAデバイスがない場合は、実際のデバイスの代わりに、PCでシミュレーターと単純なUSB-RS485アダプターを使用することもできます。

<図>

コード

  • NMEA0183デモ
NMEA0183デモ Arduino
NMEA0183プロトコルの解析
 #include  // Zihatec RS422 / RS485に一致shieldSoftwareSerialgps(2、3); NMEA0183 nmea; void setup(){while(!Serial); Serial.begin(115200); gps.begin(4800); Serial.println( "NMEA0183パーサーテスト");} void loop(){if(gps.available()){char c =gps.read(); if(nmea.update(c)){Serial.print( "NMEA0183センテンスが受け入れられました("); Serial.print(nmea.getFields()); Serial.print( "fields):"); Serial.write(nmea.getSentence()); Serial.println(); }}} 

製造プロセス

  1. C# キューと例:C# キューとは何ですか? 使用方法は?
  2. IRリモコンをハックする方法
  3. ArduinoとAndroidデバイスでルンバロボットを制御する
  4. ArduinoMegaをNEO-6MGPSモジュールとインターフェースする方法
  5. DHT11でBlynkの温度と湿度を読み取る方法
  6. サーミスタの使い方は簡単ですか?!
  7. Arduinoで音楽を作る方法
  8. ArduinoでModbusを使用する方法
  9. Arduinoを搭載した自動デバイステスター
  10. Arduinoを使用したHID準拠のUPS
  11. カッターグラインダーの使い方