Manufactura industrial
Internet industrial de las cosas | Materiales industriales | Mantenimiento y reparación de equipos | Programación industrial |
home  MfgRobots >> Manufactura industrial >  >> Manufacturing Technology >> Proceso de manufactura

Cómo utilizar NMEA-0183 con Arduino

Componentes y suministros

Arduino UNO
× 1
Escudo RS422 / RS485
× 1

Acerca de este proyecto

NMEA-0183 es ​​un estándar eléctrico para conectar GPS, SONAR, sensores, unidades de piloto automático, etc. en barcos y embarcaciones. A diferencia del estándar NMEA 2000 más nuevo (basado en CAN), el NMEA 0183 se basa en EIA RS422 (algunos sistemas más antiguos y / o simples usan RS-232 o un solo cable).

Quiero mostrarte cómo conectar un Arduino UNO (o cualquier otro Arduino) a cualquier dispositivo NMEA-0183 con salida diferencial. Aunque el estándar requiere entradas y salidas aisladas, es útil usar nuestro escudo Arduino RS422 / RS485 con interfaz aislada.

Conexión a NMEA 0183

En la siguiente imagen puede ver un dispositivo típico con salida diferencial. Los terminales son NMEA OUT + y NMEA OUT- o TX + o TX-. Los cables NMEA IN + y NMEA IN- son opcionales.

Si tiene un solo cable de transmisión desde su dispositivo (probablemente etiquetado como TX o NMEA OUT o algo así), entonces su dispositivo usa el protocolo RS-232. En este caso, necesitará un convertidor RS232 simple.

Ajuste del puente

  • UART RX a la posición 2
  • UART TX a la posición 3
  • Voltaje a la posición 5V

Configuración del interruptor DIP

Firmware

Puede encontrar muchas pilas de software NMEA-0183 diferentes para Arduino. Una muy buena solución es la biblioteca NMEA de Justin R Cutler

https://github.com/jrcutler/NMEA0183

¡Es necesario cambiar los pines del software UART a los pines 2 y 3! Tomar cuidado eso el baudios tasa de el software uart es el igual como en tu NMEA dispositivo - típico 4800 Baudios.

Prueba de funcionamiento

Después de la compilación y carga, el programa decodificará los protocolos NMEA entrantes. Puede abrir el monitor en serie para ver los protocolos decodificados.

Si no tiene un dispositivo NMEA en casa, también puede usar un simulador en su PC y un simple adaptador USB a RS485 en lugar de un dispositivo real.

Código

  • Demostración de NMEA 0183
Demostración de NMEA 0183 Arduino
Analizando los protocolos NMEA 0183
 #include  // coincide con Zihatec RS422 / RS485 shieldSoftwareSerial gps (2, 3); NMEA0183 nmea; void setup () {while (! Serial); Serial.begin (115200); gps.begin (4800); Serial.println ("prueba del analizador NMEA0183");} void loop () {if (gps.available ()) {char c =gps.read (); if (nmea.update (c)) {Serial.print ("sentencia NMEA0183 aceptada ("); Serial.print (nmea.getFields ()); Serial.print ("campos):"); Serial.write (nmea.getSentence ()); Serial.println (); }}} 

Proceso de manufactura

  1. C# Queue con ejemplos:¿Qué es C# Queue y cómo usarlo?
  2. Cómo piratear mandos a distancia por infrarrojos
  3. Controlar un robot Roomba con Arduino y un dispositivo Android
  4. Cómo conectar Arduino Mega con el módulo GPS NEO-6M
  5. Cómo leer la temperatura y la humedad en Blynk con DHT11
  6. ¡¿Qué tan fácil es usar un termistor ?!
  7. Cómo hacer música con un Arduino
  8. Cómo utilizar Modbus con Arduino
  9. Probador automático de dispositivos con Arduino
  10. UPS compatible con HID con Arduino
  11. Cómo usar una amoladora cortadora