CarTracker (2 / 3 paso)

Paso 2: Bocetos de Arduino

Boceto de coche perseguidor: ArduinoCarTracker.zip

Recuerda: En el entorno de Arduino, este Mini Pro 8 MHz 3.3V Board y procesador. Pero estoy usando el pinout USB-BUB 'estándar' por lo que necesita un USB-BUB o equivlaent (PL2303).

GPS: TinyGPS ++ library

http://arduiniana.org/Libraries/tinygpsplus/

LSM303DLHC: Por desgracia, no recuerdo donde conseguí esta librería de Arduino. Creo que era de Pololu. De todos modos, yo he conectado la biblioteca.

Para la librería de Pololu tiene un bosquejo de calibrar a ' calibrar la LSM303DLHC. Aquí está la descripción:

Calibre: Este programa es similar al ejemplo calibrar Serial, pero en vez de imprimir las lecturas más recientes, imprime un funcionamiento mínimo y máximo de las lecturas de cada eje del magnetómetro en la pantalla de LCD5110. Estos valores pueden utilizarse para calibrar las funciones de heading() y el ejemplo de partida después de mover el LSM303 a través de cada orientación posible.

Lo modifico para que los minutos y Maxs se mostrará en el LCD5110. Ejecute este bosquejo del módulo CarTracker. Ejecución de croquis, lentamente, gire y gire el módulo en todas las orientaciones. Grabar los minutos y Maxs en la pantalla, luego enchúfelos en bosquejo de CarTracker, reemplazando los valores en las siguientes líneas:

Compass.m_min = (LSM303::vector) {-433, -600,-546};

Compass.m_max = (LSM303::vector) {+570, +488, +579};

Esto debe mejorar la precisión de la brújula.

ADVERTENCIA: Cuando me actualicé a Arduino a la 1.6.1, tuve que actualizar las bibliotecas de Adafruit_GFX y Adafruit_PCD8544. Aquí es el último:

https://Learn.Adafruit.com/Adafruit-GFX-Graphics-Library

https://github.com/Adafruit/Adafruit-PCD8544-Nokia-5110-LCD-Library


Resumen del bosquejo de CarTracker:

Además setup() y loop(), escribí seis funciones:

void setSetPoint(); fijar punto de referencia, tiendas de latitud y longitud a EEPROM

void getGPS(); obtener datos GPS actuales

void calculate(); calcular la distancia y rumbo

int getHeading(); obtener partida utilizando compás

getPostion(int) de bytes; posición con rumbo

void displayDirection(); Mostrar la información

Setup() lee EEPROM punto coordenadas, GPS, brújula, se inicia instala LCD5110

Loop() se actual GPS, calcula la distancia y rumbo a punto de. Indica dirección a punto y la distancia.

Si se pulsa el botón, coordenadas GPS son almacenados en EEPROM como consigna.

Otro software de Arduino:

Brújula: Compás simple que señala el norte y la muestra partida en la pantalla LCD. (Compass.zip)

GPStoLCD: Coordenadas GPS de LCD5110 (GPStoLCD.zip)

Artículos Relacionados