Manufaturação industrial
Internet das coisas industrial | Materiais industriais | Manutenção e reparo de equipamentos | Programação industrial |
home  MfgRobots >> Manufaturação industrial >  >> Manufacturing Technology >> Processo de manufatura

Conectando Arduino ao NMEA‑0183: Guia Passo a Passo

Componentes e Materiais

Arduino UNO × 1
Shield RS422 / RS485 × 1

Sobre o Projeto

O NMEA-0183 é um padrão elétrico para conectar GPS, sonar, sensores, pilotos automáticos, etc., em navios e barcos. Diferente do padrão mais novo NMEA 2000 (baseado em CAN), o NMEA 0183 baseia-se no EIA RS422 (alguns sistemas mais antigos ou simples usam RS-232 ou fio único).

Mostrarei como conectar um Arduino UNO (ou qualquer outro Arduino) a qualquer dispositivo NMEA-0183 com saída diferencial. Embora o padrão exija entradas e saídas isoladas, é útil usar nosso Shield Arduino RS422/RS485 com interface isolada.

Conexão ao NMEA 0183

Na imagem abaixo, você vê um dispositivo típico com saída diferencial. Os terminais são NMEA OUT+ e NMEA OUT- ou TX+ ou TX-. Os fios NMEA IN+ e NMEA IN- são opcionais.

Conectando Arduino ao NMEA‑0183: Guia Passo a Passo

Se você tem apenas um fio de transmissão do seu dispositivo (provavelmente rotulado TX ou NMEA OUT), então seu dispositivo usa o protocolo RS-232. Nesse caso, você precisará de um conversor RS232 simples.

Configuração dos Jumpers

Conectando Arduino ao NMEA‑0183: Guia Passo a Passo

Configuração dos DIP Switches

Conectando Arduino ao NMEA‑0183: Guia Passo a Passo

Firmware

Existem várias bibliotecas NMEA-0183 para Arduino. Uma excelente solução é a biblioteca NMEA de Justin R Cutler:

github.com/jrcutler/NMEA0183

É necessário alterar os pinos da UART de software para os pinos 2 e 3! Certifique-se de que a taxa de baud da UART de software seja a mesma do seu dispositivo NMEA - típico 4800 Baud.

Teste

Após compilar e carregar, o programa decodificará os protocolos NMEA recebidos. Abra o Monitor Serial para ver os protocolos decodificados.

Se você não tem um dispositivo NMEA em casa, também pode usar um simulador no PC e um adaptador USB para RS485 simples em vez de um dispositivo real.

Conectando Arduino ao NMEA‑0183: Guia Passo a Passo

Código

Demo NMEA 0183 Arduino

Parsing de protocolos NMEA 0183

#include <NMEA0183.h> // compatível com shield Zihatec RS422/RS485 SoftwareSerial gps(2, 3); NMEA0183 nmea; void setup() { while (!Serial); Serial.begin(115200); gps.begin(4800); Serial.println("NMEA0183 parser test"); } void loop() { if (gps.available()) { char c = gps.read(); if (nmea.update(c)) { Serial.print("NMEA0183 sentence accepted ("); Serial.print(nmea.getFields()); Serial.print(" fields): "); Serial.write(nmea.getSentence()); Serial.println(); } } }

Processo de manufatura

  1. Dominando Queues em C#: Enqueue, Dequeue e Operações First-In-First-Out Explicadas
  2. Construa um Controle Remoto IR Universal com Arduino: Guia Passo a Passo
  3. Controlar Roomba Create 2 com Arduino e Android: Guia Passo a Passo
  4. Conectando Arduino Mega ao Módulo GPS NEO‑6M: Guia Passo a Passo
  5. Leitura de Temperatura e Umidade com DHT11 no Blynk – Tutorial Arduino Passo a Passo
  6. Usando Termistor Facilmente: Guia Passo a Passo com Arduino
  7. Criar Tons Musicais com Arduino: Um Guia Passo a Passo
  8. Dominando Modbus no Arduino: Guia Passo a Passo
  9. Testador Automatizado Baseado em Arduino para Produtos Power Blough-R
  10. Dominando Técnicas de Retificadora de Ferramentas e Cortadores: Guia Prático