Tutorial: como utilizar o GPS Shield com Arduino

 

***************************************************************************************************************************************************

ATENÇÃO: ESTE TUTORIAL FOI ATUALIZADO, VOCÊ PODE ACESSÁ-LO CLICANDO AQUI.

***************************************************************************************************************************************************

 

Neste tutorial vamos mostrar como utilizar o GPS Shield com Arduino. Com este shield você pode ver seu percurso e depois ver em um visualizador de mapas (gps visualizer, google maps, por exemplo). Este GPS funciona apenas em lugares abertos.

Ao tirar da embalagem, solde os componentes. Você pode saber mais clicando aqui!

 

Depois, conecte o shield no Arduino:

No Shield contém uma chave liga/desliga (1), uma chave de Dline/Uart(2) e um botão RESET (4).

Primeiro verifique se o Shield está desligado (chave 1 em OFF). Agora, mude a chave (2) para DLINE:

 

Agora, baixe a biblioteca TinyGPS. Extraia para a pasta "libraries" localizada dentro da pasta da IDE do Arduino.

Abra a IDE do Arduino e passe a seguinte programação:

 

#include <SoftwareSerial.h>
#include <TinyGPS.h>

TinyGPS gps;
SoftwareSerial serialgps(2,3);
int year;
byte month, day, hour, minute, second, hundredths;
unsigned long chars;
unsigned short sentences, failed_checksum;

void setup()
{

Serial.begin(115200);
serialgps.begin(4800);
Serial.println("");
Serial.println("GPS Shield QuickStart Example Sketch v12");
Serial.println(" ...waiting for lock... ");
Serial.println("");
}

void loop()
{
while(serialgps.available())
{
int c = serialgps.read();
if(gps.encode(c))
{
float latitude, longitude;
gps.f_get_position(&latitude, &longitude);
Serial.print("Lat/Long: ");
Serial.print(latitude,5);
Serial.print(", ");
Serial.println(longitude,5);
gps.crack_datetime(&year,&month,&day,&hour,&minute,&second,&hundredths);
Serial.print("Date: "); Serial.print(month, DEC); Serial.print("/");
Serial.print(day, DEC); Serial.print("/"); Serial.print(year);
Serial.print(" Time: "); Serial.print(hour, DEC); Serial.print(":");
Serial.print(minute, DEC); Serial.print(":"); Serial.print(second, DEC);
Serial.print("."); Serial.println(hundredths, DEC);
Serial.print("Altitude (meters): "); Serial.println(gps.f_altitude());
Serial.print("Course (degrees): "); Serial.println(gps.f_course());
Serial.print("Speed(kmph): "); Serial.println(gps.f_speed_kmph());
Serial.print("Satellites: "); Serial.println(gps.satellites());
Serial.println();
gps.stats(&chars, &sentences, &failed_checksum);
}
}
}

 

Com essa programação o Arduino pegará os dados do GPS e mostrará no Serial Monitor.

Conecte a placa Arduino no seu PC. Selecione a versão da sua placa Arduino (UNO, Duemilanove, etc) e a porta (COMx, ttyUSBx, ttyACMx, etc) e clique em UPLOAD.

Agora abra o Serial Monitor e você verá os dados como mostra a figura abaixo:

 

A latitude e longitude estão negativos por causa da localização em que o tutorial foi feito. As referências adotadas é a linha do Equador e o Meridiano de Greenwich. Jogando estes dados no google maps, por exemplo, podemos ver exatamente onde estamos.

 

E é isso! Esperamos que tenha gostado! Caso tiver dúvidas sobre o tutorial, poste aqui mesmo neste blog! Para sugestões de tutoriais, clique aqui! E para ver outros tutoriais e projetos desenvolvidos pela equipe LdG e por outros garagistas, clique aqui e aqui, respectivamente! Até a próxima!

 

Referências:

http://www.labdegaragem.org/loja/index.php/31-shields/kit-gps-shiel...

https://www.sparkfun.com/products/10709

http://www.sparkfun.com/tutorials/184

http://www.sparkfun.com/tutorials/173

http://arduiniana.org/libraries/tinygps/

Exibições: 32924

Comentar

Você precisa ser um membro de Laboratorio de Garagem (arduino, eletrônica, robotica, hacking) para adicionar comentários!

Entrar em Laboratorio de Garagem (arduino, eletrônica, robotica, hacking)

Comentário de Nilton em 19 abril 2013 às 19:45

o meu Skylab SKM53 comprei pelo ebay

custou uns 27 dollar com frete free

e fiz algumas descoberta sem o uso de bibliotecas e data, vel e curso funcionaram

Porem... A atualização da vel. é mt lerda num servindo para meus propositos.

a minha ideia a principio era por um modulo no pc.. google maps ou um programa expecifico.

mais..pouco consegui.

www.flogao.com.br/xur

Comentário de Iogo Soares em 19 abril 2013 às 17:44

onde eu compro esse modulo?

Comentário de RAFAEL RABELO em 18 abril 2013 às 0:41

SERIA MAIS UTIL SE VOCE COLOCASSE A POSSIÇAO DO GPS NO GOOGLE MAPS.

FICARIA EXCELENTE  

Comentário de Nilton em 9 março 2013 às 2:17

Montei um usando o modulo Skylab SKM53

Porém, a biblioteca não mostra a data, velocidade nem o curso.

Alguém poderia me ajudar???

Nilton

Comentário de Marcio Torres em 6 agosto 2012 às 15:03

Obrigado pessoal, por mais essa novidade e de quebra um exemplo já pronto !

© 2024   Criado por Marcelo Rodrigues.   Ativado por

Badges  |  Relatar um incidente  |  Termos de serviço