Índice:
- Etapa 1: construção da estação base
- Etapa 2: o primeiro teste
- Etapa 3: Crie a interface
- Etapa 4: adicionar medidor
- Etapa 5: arraste o GPS do medidor e adicione o OpenStreetMap
- Etapa 6: Arraste o medidor GPS e adicione o registro da tabela
- Etapa 7: obter o código
- Etapa 8: IDE Arduino
- Etapa 9: Detalhes de codificação
Vídeo: Projeto Arduino: Testar o módulo LoRa RF1276 para solução de rastreamento GPS: 9 etapas (com imagens)
2024 Autor: John Day | [email protected]. Última modificação: 2024-01-30 11:38
Conexão: USB - Serial
Necessário: navegador Chrome
Necessidade: 1 X Arduino Mega
Necessário: 1 X GPS
Necessário: 1 cartão SD
Necessidade: 2 X LoRa Modem RF1276
Função: Arduino Enviar valor GPS para a base principal - Dados de armazenamento da base principal no Dataino Server Módulo Lora: RF1276 de alcance ultralongo da APPCONWIRELESS LoRa é uma nova técnica de modulação privada e de espalhamento espectral que permite o envio de dados em taxas de dados extremamente baixas a extremamente longos intervalos. A baixa taxa de dados (até poucos bytes por segundo) e a modulação LoRa levam a uma sensibilidade do receptor muito baixa, o que significa neste teste mais de 10km.
Etapa 1: construção da estação base
Conexão de internet com largura de computador e um modem LoRa conectado à porta USB.
Arduino Car Kit ·
A caixa métrica
Anduino Mega conectado a serial 2 para receptor GPS e Serial 1 para modem LoRa. Um cartão SD é usado para armazenar dados.
Etapa 2: o primeiro teste
· 10,6 Km de percurso por centros urbanos, galerias e ao longo da costa feito com voltas
A relação de recepção / transmissão foi de 321 / 500TX ponto
Ponto RX
Etapa 3: Crie a interface
1 - Crie um novo projeto LoRa
Pressione o ícone de engrenagem para abrir a configuração do projeto
Etapa 4: adicionar medidor
2) Abra o controle deslizante do medidor.
· 3) Vá até o GPS.
· 4) Adicione um à mesa.
Etapa 5: arraste o GPS do medidor e adicione o OpenStreetMap
· 5) Adicionar mapa do OpenStreetMap à mesa
Arrastando o componente GPS no mapa de ícones, o mapa OpenStreet é gerado.
Crie a interface
· 6) Alterar atualização do mapa
Altere o tempo de atualização do mapa de 5.000 para 10.000
Etapa 6: Arraste o medidor GPS e adicione o registro da tabela
· 7) Adicionar um medidor de registro de tabela.
Ao arrastar o medidor acima da tabela de ícones de GPS, é criado o registro da tabela de medidores
· 8) Alterar atualização do log da tabela. Altere o tempo de atualização do mapa de 5.000 para 10.000
Ajuste a posição dos medidores
· 9) Medidores de arrasto ajustar a posição dos medidores arrastando-os pela tela.
· 10) Salvar projeto
Etapa 7: obter o código
10) Ative o contêiner de código
Botão no botão superior direito, selecione tudo e copie o código base.
Etapa 8: IDE Arduino
· 11) Cole o código no IDE do Arduino
· 12) Editar código Adicionar esta linha na definição
Etapa 9: Detalhes de codificação
Adicione esta linha na definição
//*************************************************************************
//** BIBLIOTECA ** //***************************************** ********************************
#include // ++ biblioteca GPS
#include // ++ biblioteca SPI #include
// ++ biblioteca SD //
*************************************************************************
//** SD ** //***************************************** ********************************
// * Cartão SD conectado ao barramento SPI da seguinte forma:
// ** UNO: MOSI - pino 11, MISO - pino 12, CLK - pino 13, CS - pino 4
// (o pino CS pode ser alterado) e o pino # 10 (SS) deve ser uma saída
// ** Mega: MOSI - pino 51, MISO - pino 50, CLK - pino 52, CS - pino 53
// (o pino CS pode ser alterado) e o pino # 52 (SS) deve ser uma saída
// ** Leonardo: Conecte-se ao SPI de hardware por meio do cabeçalho ICSP
// Pino 4 usado aqui para consistência com outros exemplos do Arduino const int chipSelect = 53;
// ++ seletor de pinos SD
//*************************************************************************
//** GPS ** //***************************************** ********************************
TinyGPS gps; // ++ GPS em Serial2
void gpsdump (TinyGPS & gps); // ++
bool newdataGPS = false; // ++
Adicione esta linha na configuração ()
//***********************************************************************
// ** Configuração serial do GPS ** // ************************************** ********************************
Serial2.begin (9600); // ++
atraso (1000); // ++
//***********************************************************************
// ** Inicializando SD ** // **************************************** *******************************
// certifique-se de que o pino de seleção de chip padrão está definido como // ++
// saída, mesmo que você não use: // ++
pinMode (SS, OUTPUT); // ++
Serial.println (F ("Inicializando o cartão SD …")); // ++
// veja se o cartão está presente e pode ser inicializado: // ++
if (! SD.begin (chipSelect)) {// ++
Serial.println (F ("O cartão falhou ou não está presente")); // ++
// não faça mais nada: // ++
Retorna; // ++
} else {// ++
Serial.println (F ("Cartão SD OK")); // ++
} // ++
Adicione estas linhas em loop () void
serialEvent2 (); // ++ chamar evento serial de GPS
Adicionar código SeriaEvent2
//*************************************************************************
// ** GPS serialEvent ** // *************************************** *********************************
void serialEvent2 () {// ++
while (Serial2.available ()) {// ++
char c = Serial2.read (); // ++
//Serial.print(c); // descomente para ver dados GPS brutos // ++
if (gps.encode (c)) {// ++
newdataGPS = true; // ++
pausa; // descomente para imprimir novos dados imediatamente! // ++
} // ++
} // ++
} // ++
Adicionar GPS despejo voud
//*************************************************************************
// ** despejo gps ** // **************************************** *********************************
// ** O intervalo válido de latitude em graus é -90 e +90. **
// ** A longitude está no intervalo -180 e +180 **
// ** especificando a posição leste-oeste **
//** "123456789 1234567890" **
//** "000.00000;0000.00000" ** //*************************************************************************
void gpsdump (TinyGPS e gps) // ++
{ // ++
ano int; // ++
byte mês, dia, hora, minuto, segundo, centésimos; // ++
longa idade sem sinal; // ++
gps.f_get_position (& LATGP00, & LONGP00, & age); // ++
gps.crack_datetime (& ano, & mês, & dia, & hora, // ++
& minuto, & segundo, & centésimos, & idade); // ++
lat longo, lon; // ++
gps.get_position (& lat, & lon, & age); // ++
// *********************************************************************
// ** faça uma string para reunir os dados para registrar: **
// *********************************************************************
String dataString = ""; // ++
dataString + = (lat / 100000); // ++
dataString + = "."; // ++
dataString + = lat - (lat / 100000) * 100000; // ++
dataString + = ";"; // ++
dataString + = (lon / 100000); // ++
dataString + = "."; // ++
dataString + = lon - (lon / 100000) * 100000; // ++
dataString + = ";"; // ++
dataString + = String (static_cast (dia)); // ++
dataString + = "/"; // ++
dataString + = String (static_cast (mês)); // ++
dataString + = "/"; // ++
dataString + = String (ano); // ++
dataString + = ";"; // ++
dataString + = String (static_cast (hora)); // ++
dataString + = ":"; // ++
dataString + = String (static_cast (minuto)); // ++
dataString + = ":"; // ++
dataString + = String (static_cast (segundo)); // ++ // ******************************************** *****************************
// ** SALVAR EM SD ** // *************************************** **********************************
// abre o arquivo. observe que apenas um arquivo pode ser aberto por vez, **
// então você tem que fechar este antes de abrir outro. ** // ********************************************** ***************************
Arquivo dataFile = SD.open ("gps00.txt", FILE_WRITE); // ++
// ***********************************************************************
// ** se o arquivo estiver disponível, escreva nele: **
// ***********************************************************************
if (dataFile) {// ++
dataFile.println (dataString); // ++
dataFile.close (); // ++
} else {// ++
Serial.println (F ("ERROR SD Write")); // ++
} // ++
}
Se você deseja baixar o código, visite esta página.
Recomendado:
Faça seu próprio sistema de rastreamento de segurança GPS SMS: 5 etapas (com imagens)
Faça Seu Próprio Sistema de Rastreamento de Segurança GPS SMS: Neste projeto, mostrarei como combinar um módulo SIM5320 3G com um Arduino e um transdutor piezoelétrico como um sensor de choque para criar um sistema de rastreamento de segurança que enviará a você a localização do seu veículo precioso via SMS quando eu
Módulo de rastreamento para ciclistas: 5 etapas
Módulo de rastreamento para ciclistas: Este módulo de rastreamento para ciclistas é um módulo que detecta automaticamente colisões em uma corrida, e que detecta uma avaria mecânica ao tocar um sensor de toque. Quando um desses eventos acontece, o módulo envia o evento para um banco de dados em uma framboesa
Como usar o Tinkercad para testar e implementar seu hardware: 5 etapas (com imagens)
Como usar o Tinkercad para testar e implementar seu hardware: A simulação de circuito é uma técnica em que o software de computador simula o comportamento de um circuito ou sistema eletrônico. Novos projetos podem ser testados, avaliados e diagnosticados sem realmente construir o circuito ou sistema. A simulação do circuito pode ser um
Dicas para testar componentes: 5 etapas
Dicas para testar componentes: Aconteceu com você sempre que você fez um projeto e não funcionou por causa de transistores ou monitores com defeito. Então aqui está um dispositivo com o qual você pode testar componentes como transistor, diodos, LDR, LED, etc. antes de iniciar o projeto. Isto
Como conectar o DeLorme Earthmate GPS LT-20 ao Google Earth para obter um ótimo mapa de rastreamento GPS: 5 etapas
Como conectar o DeLorme Earthmate GPS LT-20 ao Google Earth para obter um ótimo mapa de rastreamento GPS .: Vou mostrar como conectar um dispositivo GPS ao popular programa Google Earth, sem usar o Google Earth Plus. Não tenho um grande orçamento, então posso garantir que será o mais barato possível