La Taberna del Puerto Osmosis
"Se navega por los astros, por la mar, por la tierra, por las gentes, por los sentimientos...Se navega." Altair
VHF: Canal 77
Regresar   La Taberna del Puerto > Foro > Foros Náuticos > Foro Náutico Deportivo

Avisos

Responder
 
Herramientas Estilo
  #176  
Antiguo 12-11-2020, 21:05
Avatar de alcapar
alcapar alcapar esta desconectado
Corsario
 
Registrado: 27-10-2006
Localización: Golfo de Cádiz y Algarve
Mensajes: 1,847
Agradecimientos que ha otorgado: 415
Recibió 395 Agradecimientos en 247 Mensajes
Sexo:
Predeterminado Re: Simulador de corredera usando 1 GPS

He usado el esquema del mensaje 100 de este post.

Comprueba las soldaduras y que el cable que lleva la señal desde nuestro montaje al display es el correcto.

Citar y responder
Los siguientes cofrades agradecieron este mensaje a alcapar
skovela (13-11-2020)
  #177  
Antiguo 12-11-2020, 21:57
Avatar de skovela
skovela skovela esta desconectado
Corsario
 
Registrado: 29-10-2007
Localización: Alrededores de Valencia
Edad: 60
Mensajes: 1,153
Agradecimientos que ha otorgado: 160
Recibió 406 Agradecimientos en 275 Mensajes
Sexo:
Predeterminado Re: Simulador de corredera usando 1 GPS

De acuerdo, gracias. Es lo que estaba usando. Seguiré en el intento .


Citar y responder
  #178  
Antiguo 13-11-2020, 21:02
Avatar de skovela
skovela skovela esta desconectado
Corsario
 
Registrado: 29-10-2007
Localización: Alrededores de Valencia
Edad: 60
Mensajes: 1,153
Agradecimientos que ha otorgado: 160
Recibió 406 Agradecimientos en 275 Mensajes
Sexo:
Predeterminado Re: Simulador de corredera usando 1 GPS

Bueno todo repasado y parece que vuelve a funcionar , el domingo lo probaré en el barco.

Unas
Citar y responder
  #179  
Antiguo 14-11-2020, 20:11
Avatar de ScubaEdu
ScubaEdu ScubaEdu esta desconectado
Pirata
 
Registrado: 08-04-2016
Edad: 52
Mensajes: 134
Agradecimientos que ha otorgado: 28
Recibió 19 Agradecimientos en 16 Mensajes
Sexo:
Predeterminado Re: Simulador de corredera usando 1 GPS

Cita:
Originalmente publicado por Tartessos Ver mensaje
Hola de nuevo ScubaEdu, solo es para confirmarte que a mí me ha funcionado perfectamente la conexión de la placa arduino (que me facilitó ya programada el cofrade Masivas) con mi Autohelm Tridata ST50, solo abrí el cable negro que viene de la corredera y sustituí el cable interior de color verde por la salida de la placa arduino. Tienes que tener mucho cuidado porque los cables interiores del cable negro original son muy finos.
Suerte
Tartessos. Muchas Gracias. Hoy me he decidido y lo he hecho. Mi sorpresa es que el cable rojo lleva 5v y no 12v como esperaba. El Arduino Nano no le gusta mucho que lo alimentes por debajo de 6,5 voltios y sospecho de de vez en cuando se reinicia. ¿Tu has utilizado para alimentarlo el cable rojo y la camisa del cable de la corredera o lo has alimentado de otra forma?

Luego me tocará calibrarlo porque me parece que mide en exceso pero eso ya lo haré en la siguiente fase.

Citar y responder
  #180  
Antiguo 15-11-2020, 19:02
Avatar de ScubaEdu
ScubaEdu ScubaEdu esta desconectado
Pirata
 
Registrado: 08-04-2016
Edad: 52
Mensajes: 134
Agradecimientos que ha otorgado: 28
Recibió 19 Agradecimientos en 16 Mensajes
Sexo:
Predeterminado Re: Simulador de corredera usando 1 GPS

Hoy lo he probado y:
Efectivamente el ST50 va a 5V no a 12
No tiene suficiente intensidad para alimentar el Arduino NANO y el GPS.
Modifico para alimentar el VIN del Ardunino con 12V y va mucho mejor. Me empeñaba en alimentarlo con el cable Rojo del ST50 y no tenia fuerza.
Estoy calibrando. De momento
No va mal a 17.000 p/nm* (4.8 Hz per knot) aunque creo que para velocidades muy bajas tendré que bajar un poco. El numero de pulsos 16.500 o algo así.

Gracias a todos
Citar y responder
  #181  
Antiguo 16-11-2020, 08:36
Avatar de Tartessos
Tartessos Tartessos esta desconectado
Piratilla
 
Registrado: 01-12-2018
Edad: 68
Mensajes: 57
Agradecimientos que ha otorgado: 28
Recibió 13 Agradecimientos en 7 Mensajes
Sexo:
Predeterminado Re: Simulador de corredera usando 1 GPS

Cita:
Originalmente publicado por ScubaEdu Ver mensaje
Hoy lo he probado y:
Efectivamente el ST50 va a 5V no a 12
No tiene suficiente intensidad para alimentar el Arduino NANO y el GPS.
Modifico para alimentar el VIN del Ardunino con 12V y va mucho mejor. Me empeñaba en alimentarlo con el cable Rojo del ST50 y no tenia fuerza.
Estoy calibrando. De momento
No va mal a 17.000 p/nm* (4.8 Hz per knot) aunque creo que para velocidades muy bajas tendré que bajar un poco. El numero de pulsos 16.500 o algo así.

Gracias a todos
Estupendo ScubaEdu, te podía haber advertido desde el primer momento porque di los mismos pasos que tú, naturalmente me tuve que buscar 12v de otro lugar.
Perdona que no te respondiera antes pero es que no me conecto a la taberna muy a menudo.
Citar y responder
Los siguientes cofrades agradecieron este mensaje a Tartessos
ScubaEdu (18-11-2020)
  #182  
Antiguo 16-11-2020, 19:28
Avatar de Leeway
Leeway Leeway esta desconectado
Pirata pata palo
 
Registrado: 25-02-2020
Localización: Cabo de la Nao
Edad: 67
Mensajes: 315
Agradecimientos que ha otorgado: 593
Recibió 241 Agradecimientos en 149 Mensajes
Sexo:
Predeterminado Re: Simulador de corredera usando 1 GPS

Perdón por atreverme a opinar pero, si los 5 volts están regulados (como es de suponer) podrían alimentar el arduino nano, no a través de Vin (entrada de alimentación externa) sino por el pin 4 (5v) o, mas fácil, directamente con un cable USB a su entrada.


https://i0.wp.com/descubrearduino.co...nout.jpg?ssl=1


Yo de momento solo he usado el Arduino uno y claro, si lo alimentas con 5 volts por la entrada de Vin no es suficiente porque pasa por el regulador interno y hay caída de tensión.


Citar y responder
  #183  
Antiguo 18-11-2020, 23:16
Avatar de ScubaEdu
ScubaEdu ScubaEdu esta desconectado
Pirata
 
Registrado: 08-04-2016
Edad: 52
Mensajes: 134
Agradecimientos que ha otorgado: 28
Recibió 19 Agradecimientos en 16 Mensajes
Sexo:
Predeterminado Re: Simulador de corredera usando 1 GPS

Hoy he pensado en meter a la entrada de 12v un buck converter. Concretamente un dc dc mini360 MP2307.
No llega a un euro y me baja un poco la tension que con el motor en marcha llega a unos 14v. En teoria el arduino soporta picos de 20v pero mejor protegerlo. Durara mas.
Citar y responder
  #184  
Antiguo 19-11-2020, 11:55
Avatar de Leeway
Leeway Leeway esta desconectado
Pirata pata palo
 
Registrado: 25-02-2020
Localización: Cabo de la Nao
Edad: 67
Mensajes: 315
Agradecimientos que ha otorgado: 593
Recibió 241 Agradecimientos en 149 Mensajes
Sexo:
Predeterminado Re: Simulador de corredera usando 1 GPS

Cita:
Originalmente publicado por ScubaEdu Ver mensaje
Hoy he pensado en meter a la entrada de 12v un buck converter. Concretamente un dc dc mini360 MP2307.
No llega a un euro y me baja un poco la tension que con el motor en marcha llega a unos 14v. En teoria el arduino soporta picos de 20v pero mejor protegerlo. Durara mas.
Y un 7809 con un disipador?
Citar y responder
Los siguientes cofrades agradecieron este mensaje a Leeway
Rony (19-11-2020)
  #185  
Antiguo 19-11-2020, 20:45
Avatar de ScubaEdu
ScubaEdu ScubaEdu esta desconectado
Pirata
 
Registrado: 08-04-2016
Edad: 52
Mensajes: 134
Agradecimientos que ha otorgado: 28
Recibió 19 Agradecimientos en 16 Mensajes
Sexo:
Predeterminado Re: Simulador de corredera usando 1 GPS

Cita:
Originalmente publicado por Leeway Ver mensaje
Y un 7809 con un disipador?
Pues lo estuve pensando pero en teoria se calienta mucho mas y es menos eficiente ¿Por qué lo prefieres?

http://https://m.youtube.com/watch?v=giGRrODKJSE
Citar y responder
  #186  
Antiguo 19-11-2020, 21:30
Avatar de Leeway
Leeway Leeway esta desconectado
Pirata pata palo
 
Registrado: 25-02-2020
Localización: Cabo de la Nao
Edad: 67
Mensajes: 315
Agradecimientos que ha otorgado: 593
Recibió 241 Agradecimientos en 149 Mensajes
Sexo:
Predeterminado Re: Simulador de corredera usando 1 GPS

Cita:
Originalmente publicado por ScubaEdu Ver mensaje
Pues lo estuve pensando pero en teoria se calienta mucho mas y es menos eficiente ¿Por qué lo prefieres?

http://https://m.youtube.com/watch?v=giGRrODKJSE
Pues el vídeo es muy interesante. Pero yo lo decía porque lo he hecho así en algunos montajes y porque creía que el Arduino también monta un 7805 , pero desde luego puede que sea mejor tu opción.
Gracias
Citar y responder
  #187  
Antiguo 20-11-2020, 14:52
Avatar de skovela
skovela skovela esta desconectado
Corsario
 
Registrado: 29-10-2007
Localización: Alrededores de Valencia
Edad: 60
Mensajes: 1,153
Agradecimientos que ha otorgado: 160
Recibió 406 Agradecimientos en 275 Mensajes
Sexo:
Predeterminado Re: Simulador de corredera usando 1 GPS

Bueno, ya he probado el programa de Alcapar y me marca velocidades muy bajas, aproximadamente de la mitad de lo que debería. Modificaré la calibración de la corredera pero me parece mucha diferencia para que sea sólo un desajuste de calibración. Seguiremos ...

Unas
Citar y responder
  #188  
Antiguo 21-11-2020, 15:24
Avatar de alcapar
alcapar alcapar esta desconectado
Corsario
 
Registrado: 27-10-2006
Localización: Golfo de Cádiz y Algarve
Mensajes: 1,847
Agradecimientos que ha otorgado: 415
Recibió 395 Agradecimientos en 247 Mensajes
Sexo:
Predeterminado Re: Simulador de corredera usando 1 GPS

Cita:
Originalmente publicado por skovela Ver mensaje
Bueno, ya he probado el programa de Alcapar y me marca velocidades muy bajas, aproximadamente de la mitad de lo que debería. Modificaré la calibración de la corredera pero me parece mucha diferencia para que sea sólo un desajuste de calibración. Seguiremos ...

Unas
Lo que marca no es importante, calibra con el GPS, o cambia la relación de pulsos en el sketch. Una vez ajustes para 5 nudos irá bien.

Citar y responder
Los siguientes cofrades agradecieron este mensaje a alcapar
skovela (21-11-2020)
  #189  
Antiguo 22-11-2020, 09:26
Avatar de ScubaEdu
ScubaEdu ScubaEdu esta desconectado
Pirata
 
Registrado: 08-04-2016
Edad: 52
Mensajes: 134
Agradecimientos que ha otorgado: 28
Recibió 19 Agradecimientos en 16 Mensajes
Sexo:
Predeterminado Re: Simulador de corredera usando 1 GPS

Ve poniendo valores fijos a la velocidad en el programa de arduino en lugar del del GPS y con esos valores miras lo que pone en el display y ajustas el invento. Yo lo hice con pasos de medio en medio nudo y se me ha quedado perfecto. Asi ademas no mezclas error de GPS con ajuste de la corredera.

Luego ya vuelves al programa original.

Ah! Te a importante el GPS que uses. Yo el primero tenia mucho error a velocidades bajas. Me compre otro que ademas era GNSS y ahora perfecto.
Citar y responder
Los siguientes cofrades agradecieron este mensaje a ScubaEdu
skovela (22-11-2020)
  #190  
Antiguo 22-11-2020, 11:15
Avatar de skovela
skovela skovela esta desconectado
Corsario
 
Registrado: 29-10-2007
Localización: Alrededores de Valencia
Edad: 60
Mensajes: 1,153
Agradecimientos que ha otorgado: 160
Recibió 406 Agradecimientos en 275 Mensajes
Sexo:
Predeterminado Re: Simulador de corredera usando 1 GPS

Cita:
Originalmente publicado por ScubaEdu Ver mensaje
Ve poniendo valores fijos a la velocidad en el programa de arduino en lugar del del GPS y con esos valores miras lo que pone en el display y ajustas el invento. Yo lo hice con pasos de medio en medio nudo y se me ha quedado perfecto. Asi ademas no mezclas error de GPS con ajuste de la corredera.

Luego ya vuelves al programa original.

Ah! Te a importante el GPS que uses. Yo el primero tenia mucho error a velocidades bajas. Me compre otro que ademas era GNSS y ahora perfecto.



Buena idea lo de la velocidad fija. Y lo mejor es que no hace falta irse a pasear para probar . Lo intentaré.



Tengo tres GPS, un NEO 6M, otro NEO7M y un VKEL pero creo que todos comparten el chip de ublox y me da que ninguno tiene GNSS, de todas forma en el primer montaje que hice allá por 2013 con la instrucción original del cofrade Jiauka iba perfecto y la precisión era muy buena incluso a baja velocidad (era el chip que indicaba él al principio de este hilo). Por cierto ... ¿usais un divisor de tensión o un convertidor lógico 3,3v -5v. para conectar el GPS al arduino? o conectais directamente el Tx y Rx del GPS a las patas 2 y 3 del Arduino? lo digo porque ya he leido de todo. Parece que no afecta en principio pero no sé si a la larga se pueden romper cosas aunque aumenta el lío de conexiones y cables.


Unas
Citar y responder
  #191  
Antiguo 24-11-2020, 18:18
Avatar de skovela
skovela skovela esta desconectado
Corsario
 
Registrado: 29-10-2007
Localización: Alrededores de Valencia
Edad: 60
Mensajes: 1,153
Agradecimientos que ha otorgado: 160
Recibió 406 Agradecimientos en 275 Mensajes
Sexo:
Predeterminado Re: Simulador de corredera usando 1 GPS

Cita:
Originalmente publicado por ScubaEdu Ver mensaje
... Ve poniendo valores fijos a la velocidad en el programa de arduino en lugar del del GPS y con esos valores miras lo que pone en el display y ajustas el invento. Yo lo hice con pasos de medio en medio nudo y se me ha quedado perfecto. Asi ademas no mezclas error de GPS con ajuste de la corredera ...

.

Bueno ... lo he probado y me oscila mucho la velocidad, he puesto 4.5 como velocidad fija dejando el resto de operaciones del GPS en el bucle , pero oscila en la pantalla desde 4.3 hasta 5.0 de forma continua, no se está quieta ni dos segundos. He variado el pulso un poco arriba y abajo y esa oscilación sigue igual. Si quito del bucle las todas operaciones del GPS , entonces si que se queda fija fija a 4.5 una vez ajustada la corredera ahí. No tengo mucha idea de esto pero da la impresión que la adquisición de datos del GPS distorsiona el tiempo del bucle con la consiguiente variación de pulsos por segundo. Seguiremos estudiando e intentando entender todo esto. Gracias de nuevo.


Unas
Citar y responder
  #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: 60
Mensajes: 1,153
Agradecimientos que ha otorgado: 160
Recibió 406 Agradecimientos en 275 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)
  #193  
Antiguo 27-01-2021, 10:05
Avatar de piratadragut1971
piratadragut1971 piratadragut1971 esta desconectado
Grumete Pirata
 
Registrado: 23-06-2018
Edad: 53
Mensajes: 1
Agradecimientos que ha otorgado: 0
Recibió 0 Agradecimientos en 0 Mensajes
Sexo:
Predeterminado Re: Simulador de corredera usando 1 GPS

Cita:
Originalmente publicado por jiauka Ver mensaje
Hola:

Hace días que tenía pendiente 1 pequeño brico para sustituir el típico sensor airmar analógico que llevan muchos veleros (el típico con el cable de masa, rojo y verde). Lo que hace es simular los impulsos en función de la velocidad GPS (SOG), ya sé que no es muy ortodoxo, ya que no tiene en cuenta la corriente, pero no tengo ningún agujero en el casco y no quiero hacerlo.

He usado 1 placa de desarrollo arduino

http://arduino.cc/en/Main/ArduinoBoardNano

1 sensor GPS NMEA0183


y 1 poco de programación en C algo cutre.
Código:
  

#define F_CPU 16000000L
#include <avr/io.h>
#include <avr/interrupt.h>
#include <util/delay.h>    // including the avr delay lib
#include "led.h"            // Header file for led
#include "usart.h"            // Header for Serial communication
#include "SoftwareSerial.h"

#define MYDEBUG(x)

// OBJECT CREATION
LED led1(0x05,5);            // Creates an object called led1 connected to PortB.5 (0x05 is the Special function register for PORTB)
LED output(0x0b,4);  //PPRTD, bit 4

SoftwareSerial mySerial(2, 3,false);
#include <avr/io.h>
#include <avr/interrupt.h>

#define FOSC F_CPU // Clock Speed
#define BAUD 115200      // Baud Rate
#define MYUBRR (((((FOSC * 10) / (16L * BAUD)) + 5) / 10) - 1)

// NMEA setences
#define NMEA_DISABLE_CGA "PSRF103,00,00,00,01"
#define NMEA_DISABLE_GLL "PSRF103,01,00,00,01"
#define NMEA_DISABLE_GSA "PSRF103,02,00,00,01"
#define NMEA_DISABLE_GSV "PSRF103,03,00,00,01"
#define NMEA_DISABLE_RMC "PSRF103,04,00,00,01"
#define NMEA_DISABLE_VTG "PSRF103,05,00,00,01"
#define NMEA_ENABLE_VTG_1HZ "PSRF103,05,00,05,01"
#define NMEA_QUERY_VTG "PSRF103,05,01,01,01"

char nmea_data[128];
char setnyb(unsigned char c)
{
  if(c<9) return c+'0';
  else return c-10+'A';
}

void send_nmea(const char *datagram) {
    int i;
    char *p=(char*)datagram;
    unsigned char checksum=0;
    i=0;
    nmea_data[i++]='$';
    while(*p) {
        nmea_data[i]=*p++;
        checksum=checksum^nmea_data[i];
        i++;
    }
    nmea_data[i++]='*';
    nmea_data[i++]=setnyb((checksum >> 4) &0x0f);
    nmea_data[i++]=setnyb(checksum &0x0f);
    nmea_data[i]=0x00;
    mySerial.println((const String &)nmea_data);
    
}
#define STAT_NMEA_NONE 0
#define STAT_NMEA_HEADER 1
#define STAT_NMEA_DATA 2
        
//    VTG-Course Over Ground and Ground Speed
//$GPVTG,309.62,T,,M,0.13,N,0.2,K
char nmea_header[5];
char nmea_field[32];    
int knots=1450,dotpos,tknots=10;

int int_counter = 0;
volatile int second = 0;
int oldSecond = 0;
long starttime = 0;
int on=0;
/* Timer2 reload value, globally available */  
unsigned int tcnt2;  
 
// Aruino runs at 16 Mhz, so we have 1000 Overflows per second...
// 1/ ((16000000 / 64) / 256) = 1 / 1000
ISR(TIMER2_OVF_vect) {
       /* Reload the timer */  
      TCNT2 = tcnt2;  
    int_counter++;
    if(tknots > 0 ) {
          if (int_counter >= tknots) {
             if(on) {
                 led1.on();
                output.on();
                on=0;
            }
               else {
                   led1.off();
                output.off();
                on=1;
            }
            int_counter = 0;
        }
    }
};
 
 void timer_setup() {  
  
  TIMSK2 &= ~(1<<TOIE2);  
  
  /* Configure timer2 in normal mode (pure counting, no PWM etc.) */  
  TCCR2A &= ~((1<<WGM21) | (1<<WGM20));  
  TCCR2B &= ~(1<<WGM22);  
  
  /* Select clock source: internal I/O clock */  
  ASSR &= ~(1<<AS2);  
  
  /* Disable Compare Match A interrupt enable (only want overflow) */  
  TIMSK2 &= ~(1<<OCIE2A);  
  
  /* Now configure the prescaler to CPU clock divided by 128 */  
  TCCR2B |= (1<<CS22)  | (1<<CS20); // Set bits  
  TCCR2B &= ~(1<<CS21);             // Clear bit  
  
  /* We need to calculate a proper value to load the timer counter. 
   * The following loads the value 131 into the Timer 2 counter register 
   * The math behind this is: 
   * (CPU frequency) / (prescaler value) = 125000 Hz = 8us. 
   * (desired period) / 8us = 125. 
   * MAX(uint8) + 1 - 125 = 131; 
   */  
  /* Save value globally for later reload in ISR */  
  tcnt2 = 131;   
  
  /* Finally load end enable the timer */  
  TCNT2 = tcnt2;  
  TIMSK2 |= (1<<TOIE2);  
}  

int main(void)
{
    char c,*p;
    unsigned char stat=STAT_NMEA_NONE;
    int i,head_counter,nmea_field_counter,nmea_field_data_counter;
    // INITIALIZATIONS
    DDRB = 0b00100000;    //B5 output: board LED
    USART_Init(MYUBRR); // Initializes the serial communication

    mySerial.begin(4800);
    mySerial.listen();
    tknots=10000/knots;
    timer_setup();
    _delay_ms(1000);
    sei();
    send_nmea(NMEA_DISABLE_CGA);
    send_nmea(NMEA_DISABLE_GLL);
    send_nmea(NMEA_DISABLE_GSA);
    send_nmea(NMEA_DISABLE_GSV);
    send_nmea(NMEA_DISABLE_RMC);
    send_nmea(NMEA_DISABLE_VTG);
    send_nmea(NMEA_ENABLE_VTG_1HZ);
    while(1)
    {
        sei();
        
         if (mySerial.available()) {
            c=mySerial.read();
            MYDEBUG(USART_Sendbyte(c));
            if( c < 0x20) {
                stat=STAT_NMEA_NONE;
            }
            if( c == 0x0a) {
                _delay_ms(100);
                send_nmea(NMEA_QUERY_VTG);
            }
            switch (stat) {

                case STAT_NMEA_HEADER:
                    if(head_counter < 5 ) {
                        nmea_header[head_counter++] = c;
                        if(head_counter==5) {
                            if(strncmp(nmea_header,"GPVTG",5) ==0) {
                                MYDEBUG(USART_Send_string("GPVTG\r\n"));
                                stat=STAT_NMEA_DATA;
                                nmea_field_counter=0;
                                head_counter=0;
                            } else {
                                stat=STAT_NMEA_NONE;
                            }                            
                        }
                    } else {
                        stat=STAT_NMEA_NONE;
                    }                            
            
                break;
                case STAT_NMEA_DATA:
                    if(c == ',') {
                        if(nmea_field_counter==5) {
                            p=nmea_field;
                            dotpos=0;
                            knots=0;
                            while(*p) {
                                if(*p >= '0' && *p <= '9') {
                                    knots=knots*10+*p-'0';
                                }
                                p++;
                            }
                            sprintf(nmea_field,"\r\nspeed=%d\n\r",knots);
                            USART_Send_string(nmea_field);
                            if(knots>0)
                                tknots=10000/knots;
                            else
                                tknots=0;
                        }                            
    
                        nmea_field_counter++;
                        nmea_field_data_counter=0;
                        nmea_field[0]=0;
                    }
                    if(nmea_field_counter==5) {
                        nmea_field[nmea_field_data_counter++]=c;
                        nmea_field[nmea_field_data_counter]=0;
                    }
                    break;
                case STAT_NMEA_NONE:
                default:
                    if(c=='$') {
                        stat=STAT_NMEA_HEADER;
                        head_counter=0;
                    }
                break;
            }
        }
    }
}
Si hay alguien interesado en esquema, etc... para hacerse 1 que me lo diga y miro de pasarlo a limpio.
Hola, estaría interesado en el esquema de conexiones. Gracias
Citar y responder
  #194  
Antiguo 27-01-2021, 11:00
Avatar de PEDRO >K
PEDRO >K PEDRO >K esta desconectado
Pirata
 
Registrado: 19-06-2007
Localización: Baleares
Edad: 56
Mensajes: 239
Agradecimientos que ha otorgado: 366
Recibió 31 Agradecimientos en 31 Mensajes
Sexo:
Predeterminado Re: Simulador de corredera usando 1 GPS

Hola cofrade, yo también estaría interesado.
Muchas gracias
Citar y responder
  #195  
Antiguo 08-02-2021, 22:43
Avatar de ScubaEdu
ScubaEdu ScubaEdu esta desconectado
Pirata
 
Registrado: 08-04-2016
Edad: 52
Mensajes: 134
Agradecimientos que ha otorgado: 28
Recibió 19 Agradecimientos en 16 Mensajes
Sexo:
Predeterminado Re: Simulador de corredera usando 1 GPS

Cita:
Originalmente publicado por PEDRO >K Ver mensaje
Hola cofrade, yo también estaría interesado.
Muchas gracias
¿Habeis visto el mensaje #95 o el #100?
¿Que esquema es el que os falta?

Citar y responder
Responder Ver todos los foros en uno

Osmosis


Reglas del foro
No puedes crear discusiones
No puedes responder a mensajes
No puedes editar tus adjuntos
No puedes editar tus mensajes

BB code está activado
Emoticonos está activado
El código [IMG] está activado
El código HTML está desactivado
Ir a


Todas las horas son GMT +1. La hora es 16:58.


Powered by vBulletin® Version 3.7.0
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
© La Taberna del Puerto