Neste artigo explicaremos como fazer um Car Tracking com Arduino + GPS+Cartões SD. Para isso vamos utilizar o módulo GPS GY-NEO 6M2V e um módulo leitor de Cartões de Memória SD, para guardares a tua localização periodicamente no cartão de memória.
Como usar módulo GPS e cartões SD [Vídeo]:
Se preferires aprender em formato de vídeo, um sobre o mesmo assunto foi carregado para o nosso canal de youtube, podes vê-lo em baixo.
Agora passamos a explicar como fazer as montagens necessárias para este projeto.
#Montagem do módulo GPS
A montagem do módulo GPS segue estes passos:
- Ligar o pino VCC aos 3.3V do arduino
- Ligar o GND ao GND do arduino
- Ligar o pino TX ao pino 3 do arduino
Nesta montagem não ligamos o pino RX a nenhum pino do arduino, porque neste projeto não enviaremos nada para o módulo GPS.
#Montagem do módulo Cartões SD
A montagem do módulo leitor de cartões SD é o mais comum, e segue os passos seguintes:
- Começamos por ligar o VCC aos 5V do arduino e por ligar os GND’s
- Ligamos depois o pino MISO do módulo ao pino digital 12 do arduino
- Ligamos o pino SCK ao pino digital 13 do arduino
- O pino MOSI ao pino digital 11 do arduino
- E por fim ligamos o pino CS ao pino digital 4 do arduino
#Código utilizado
Antes de abrires o IDE do arduino e começares a programar, tens que adicionar a libraria TinyGPSPlus ao teu IDE
#include <TinyGPS++.h> #include <SPI.h> #include <SD.h> #include <SoftwareSerial.h> File myFile; SoftwareSerial serial_connection(3,2); TinyGPSPlus gps; void setup() { //Iniciar a comunicação entre o arduino e o módulo GPS Serial.begin(9600); serial_connection.begin(9600); } void loop() { while(serial_connection.available()){ gps.encode(serial_connection.read()); } myFile = SD.open("GPS.txt", FILE_WRITE); // Se o ficheiro for aberto com sucesso, escrever nele if (myFile) { //Escrever a latitude e longitude no cartão SD myFile.print("Latitude: "); myFile.println((gps.location.lat(),6)); myFile.print("Longitude: "); myFile.println((gps.location.lng(),6)); myFile.println("-------------------"); //Fechar o ficheiro myFile.close(); } else { // Se o .txt não abrir escrever um erro no monitor de série Serial.println("Erro ao abrir o ficheiro .txt"); } } delay(15000); // esperar 15 seg para voltar a escrever a localização }
Com este código a tua localização será guardada num ficheiro de texto no cartão SD a cada 15 segundos.
#Material usado
# Dúvidas:
http://www.arduinoportugal.pt/forums/
https://www.facebook.com/groups/arduinoportugal/
Subscreva o nosso canal Arduino Portugal do Youtube! E fique a saber qual é o próximo projeto!