Discusión: Bricobarco Simulador de corredera usando 1 GPS
Ver mensaje
  #192  
Antiguo 26-11-2020, 19:52
Avatar de skovela
skovela skovela esta desconectado
Corsario
 
Registrado: 29-10-2007
Localización: Alrededores de Valencia
Edad: 62
Mensajes: 1,163
Agradecimientos que ha otorgado: 171
Recibió 414 Agradecimientos en 282 Mensajes
Sexo:
Predeterminado Re: Simulador de corredera usando 1 GPS

Hoy he cambiado la librería del GPS por la plus, he quitado las líneas referentes a latitud longitud y la oscilación a que hacía referencia en el anterior mensaje ha bajado a 0,1 nudos y todo parece mas estable


El código de Alcapar quedaría así



Cita:
#include <SoftwareSerial.h>
#include <TinyGPS++.h>

TinyGPSPlus gps;
SoftwareSerial ss(2, 3);

float velocidad = 0.0;
float frecuencia = 0;
int intervalo = 0;
float semiciclo = 0;
unsigned long tiempo = 0;
void setup()
{
Serial.begin(115200);
pinMode(9, OUTPUT);
digitalWrite(9, HIGH);
ss.begin(9600);
}

void loop()
{
while (ss.available() > 0)
gps.encode(ss.read());
if (gps.speed.isUpdated()){

velocidad = gps.speed.knots();
frecuencia = 4.8 * velocidad;
tiempo = millis();
if (velocidad != 0) {
while ((millis() - tiempo) <= 2000) {
semiciclo = 500 / frecuencia;
intervalo = round(semiciclo);
digitalWrite(9, LOW);
delay(intervalo);
digitalWrite(9, HIGH);
delay(intervalo);
}
}
else
{
digitalWrite(9, HIGH);
}
}
else {
digitalWrite(9, HIGH);
}

}


A ver si lo pruebo de forma real ...


Unas
Citar y responder
Los siguientes cofrades agradecieron este mensaje a skovela
alcapar (27-01-2021)