Herramientas Buscar en Tema
Antiguo 25/11/2015, 20:48   #2731
rortega
* * * * * *
 
Avatar de rortega
 
Ingreso 20/abr/2012
3.816 Mensajes
Hay una cosita en el código que dice así:

Código:
if (targetPosition.distance == 0) {
    // in larger altitude 1m distance shouldnt mess up the calculation.
    //e.g. in 100m height and dist 1 the angle is 89.4° which is actually accurate enough
    targetPosition.distance = 1;
  }
Esto quería decir que la variable targetPosition.distance está tomando el valor 0 por algún motivo.

Y podría ser porque en la línea 540 aproximadamente, dice:

Código:
if (!HOME_SET && TEST_MODE && NEW_HEADING) {
        distance = getDistance();
        targetPosition.alt = getTargetAlt();
Creo que eso debería ser así:

targetPosition.distance = getDistance();

No puedo probarlo, necesitaría el tracker funcionando y tramas con dato de distancia (ahora de memoria no recuerdo si el último archivo de pruebas tenía distancias, el que probaste Simba, es que tengo muchas cosas en al cabeza y ahora no sé ni donde lo tengo).

Digo que está aproximadamente en la línea 540 porque lo mismo estáis usando una versión anterior a la 0.8. En la original esa línea es la 503, pero como metí muchos cambios ha corrido hacia abajo, así que entre la 503 y la 540 deberíais encontralar. Cambiadla y probad a ver que pasa.
__________________
WiiFPV Team: VIMEO - YouTube
rortega esta en línea ahora   Responder Citando
Antiguo 25/11/2015, 20:54   #2732
ALBERTHAMON
* * * * * *
 
Avatar de ALBERTHAMON
 
Ingreso 16/mar/2011
De De nuevo en Casa(Alicante)
1.747 Mensajes
Cita:
Iniciado por Simba Ver mensaje
Pues ale uno mas en el lio, creo que te va a gustar, es un chisme curioso que no me había percatado de lo bien pensado que está.
Es diríamos el corazón del sistema MDF, pero no solo decodifica la Telemetria del Vídeo, ademas controla el Home y el Test de posicionamiento, creando unas tramas de control, para posicionar en los 4 puntos cardinales y el Tilt a 0º 45º y 90º, con lo que sirve de verificación de todo el sistema, y nuestro Traker360 debe de funcionar igual, si rortega lo pone a punto claro.

Por otro lado este chisme lo venden por separado, por que tiene la función "FlyTogether", para poder seguir en el OSD la posición del avión de un compañero, que muchos lo compran solo por esto.
Y además controla lo que llaman DuoTracking, que es un GPS local para el Home automático del Traker.

En fin no es que se lo quiera vender a nadie, es solo que lo he descubierto y me parece muy interesante.

Sl2
ijijijjiji hombre de poca fe. y pensar que al principio cuando expuse la situación con el driver todo lo que opinabais era.... no creo que sirva, no creo que sea tan fácil...pero como funcione.....!!!! jiiijjijijj
Me alegro que al final os decidieseis por hacer las pruebas antes de que me llegase el driver que por cierto cuando yo lo pedí estaba mas barato. creo que 49$. ir pidiendo que para el año que viene lo mismo llegan.

Lo dicho, me alegro de que todo avance correctamente.
Un saludo,
__________________
Team FPV Levante TFL
ALBERTHAMON está desconectado   Responder Citando
Antiguo 25/11/2015, 20:54   #2733
Simba
* * * * * *
 
Avatar de Simba
 
Ingreso 04/jul/2008
4.652 Mensajes
Yo estoy con la v.08 y el fichero.log si que tiene distancia y todo lo demás. Lo tienes en un link un poco antes.
Simba esta en línea ahora   Responder Citando
Antiguo 25/11/2015, 20:59   #2734
Simba
* * * * * *
 
Avatar de Simba
 
Ingreso 04/jul/2008
4.652 Mensajes
Si si tu tienes parte de la culpa de este lío aunque a nosotros con poco que nos pinches tenemos bastante. Jiji jiji ji jaja
Simba esta en línea ahora   Responder Citando
Antiguo 25/11/2015, 21:24   #2735
Simba
* * * * * *
 
Avatar de Simba
 
Ingreso 04/jul/2008
4.652 Mensajes
Cita:
Iniciado por rortega Ver mensaje
Hay una cosita en el código que dice así:

Código:
if (targetPosition.distance == 0) {
    // in larger altitude 1m distance shouldnt mess up the calculation.
    //e.g. in 100m height and dist 1 the angle is 89.4° which is actually accurate enough
    targetPosition.distance = 1;
  }
Esto quería decir que la variable targetPosition.distance está tomando el valor 0 por algún motivo.

Y podría ser porque en la línea 540 aproximadamente, dice:

Código:
if (!HOME_SET && TEST_MODE && NEW_HEADING) {
        distance = getDistance();
        targetPosition.alt = getTargetAlt();
Creo que eso debería ser así:

targetPosition.distance = getDistance();

No puedo probarlo, necesitaría el tracker funcionando y tramas con dato de distancia (ahora de memoria no recuerdo si el último archivo de pruebas tenía distancias, el que probaste Simba, es que tengo muchas cosas en al cabeza y ahora no sé ni donde lo tengo).

Digo que está aproximadamente en la línea 540 porque lo mismo estáis usando una versión anterior a la 0.8. En la original esa línea es la 503, pero como metí muchos cambios ha corrido hacia abajo, así que entre la 503 y la 540 deberíais encontralar. Cambiadla y probad a ver que pasa.
Lo voy a cambiar y lo pruebo con el .log a ver si noto alguna diferencia.
Simba esta en línea ahora   Responder Citando
Antiguo 25/11/2015, 21:37   #2736
Simba
* * * * * *
 
Avatar de Simba
 
Ingreso 04/jul/2008
4.652 Mensajes
rortega, ya lo he probado pero sigue igual, y en el LCD sigue marcando lo mismo 1 m.
Simba esta en línea ahora   Responder Citando
Antiguo 25/11/2015, 21:49   #2737
Simba
* * * * * *
 
Avatar de Simba
 
Ingreso 04/jul/2008
4.652 Mensajes
Por si sirve de algo, al pasar el .log en mi traker el Tilt si que se mueve a la super velocidad, pero en el LCD sale lo mismo siempre D:00001
Simba esta en línea ahora   Responder Citando
Antiguo 25/11/2015, 22:32   #2738
rortega
* * * * * *
 
Avatar de rortega
 
Ingreso 20/abr/2012
3.816 Mensajes
Cita:
Iniciado por Simba Ver mensaje
Por si sirve de algo, al pasar el .log en mi traker el Tilt si que se mueve a la super velocidad, pero en el LCD sale lo mismo siempre D:00001
A ver, que en este otro trozo de código se repite, y creo que es el bueno, dios, que no lo había visto por culpa de la discusión de besugos que tenía en otro hilo.

Código:
if (HOME_SET && HAS_FIX && NEW_HEADING && !TEST_MODE) {
        targetPosition.alt = getTargetAlt();
        targetPosition.heading = getAzimuth() * 10;
        distance = getDistance();
Els la línea 562 de la versión 0.8. Está unas 10 líneas más abajo del cambio anterior. Creo que es ahí porque la condición se lee así:

Sí se ha activado el home, tenemos fix hay un nuevo cambio de heading y no estamos en modo test, entonces toma estos valores...y pone la distancia en la variable distancia a secas, que no se usa en la función calcTilt, se usa targetPosition.distance.

Cámbialo ahí también.
__________________
WiiFPV Team: VIMEO - YouTube
rortega esta en línea ahora   Responder Citando
Antiguo 25/11/2015, 22:48   #2739
rortega
* * * * * *
 
Avatar de rortega
 
Ingreso 20/abr/2012
3.816 Mensajes
Cita:
Iniciado por rortega Ver mensaje
A ver, que en este otro trozo de código se repite, y creo que es el bueno, dios, que no lo había visto por culpa de la discusión de besugos que tenía en otro hilo.

Código:
if (HOME_SET && HAS_FIX && NEW_HEADING && !TEST_MODE) {
        targetPosition.alt = getTargetAlt();
        targetPosition.heading = getAzimuth() * 10;
        distance = getDistance();
Els la línea 562 de la versión 0.8. Está unas 10 líneas más abajo del cambio anterior. Creo que es ahí porque la condición se lee así:

Sí se ha activado el home, tenemos fix hay un nuevo cambio de heading y no estamos en modo test, entonces toma estos valores...y pone la distancia en la variable distancia a secas, que no se usa en la función calcTilt, se usa targetPosition.distance.

Cámbialo ahí también.
Hay otra sección de código en la que también podría estar mal, pero no afecta al funcionamiento del tracker, es sólo para mostrar los datos cuando está el modo DEBUG activado, que te los va sacando por el puerto serie para mostrarlo en consola. No vamos a cambiarlo de momento, sólo si vemos que el último cambio que has hecho soluciona el problema.
__________________
WiiFPV Team: VIMEO - YouTube
rortega esta en línea ahora   Responder Citando
Antiguo 25/11/2015, 22:53   #2740
Simba
* * * * * *
 
Avatar de Simba
 
Ingreso 04/jul/2008
4.652 Mensajes
A ver si esto debe de ser así:

if (!HOME_SET && TEST_MODE && NEW_HEADING) {
distance = getDistance();
targetPosition.distance = getDistance();
targetPosition.heading = getAzimuth() * 10;

getError();
calculatePID();
SET_PAN_SERVO_SPEED(PWMOutput);
calcTilt();
NEW_HEADING = false;
}
if (HOME_SET && HAS_FIX && NEW_HEADING && !TEST_MODE) {
targetPosition.distance = getDistance();
targetPosition.heading = getAzimuth() * 10;
distance = getDistance();
Simba esta en línea ahora   Responder Citando
Antiguo 25/11/2015, 23:03   #2741
Simba
* * * * * *
 
Avatar de Simba
 
Ingreso 04/jul/2008
4.652 Mensajes
Bueno ya lo he probado, ahora ya marca distancias en el LCD, pero el servo Tilt no se mueve ?¿?¿?¿?¿?¿.
La ultima distancia que queda en el LCD es 23m y es la misma que en la untima Trama del .log, es decir que tanto azimut de 037, altura de 0 y distancia de 23, corresponden exactamente con el dato de la ultima Trama del .log
Simba esta en línea ahora   Responder Citando
Antiguo 25/11/2015, 23:09   #2742
Simba
* * * * * *
 
Avatar de Simba
 
Ingreso 04/jul/2008
4.652 Mensajes
Yo creo que la Crius no es capaz de digerir el chorro de datos que le llega del .log y los movimientos que veo no tienen representatividad, pero lo importante es que ya se ven datos de distancia en el LCD, pero que cambian a toda leche y seguro que no son todos.

Por otro lado paradógicamente, ahora que verdaderamente si que entiende los datos de distancia, no mueve el servo tilt.
Simba esta en línea ahora   Responder Citando
Antiguo 25/11/2015, 23:12   #2743
rortega
* * * * * *
 
Avatar de rortega
 
Ingreso 20/abr/2012
3.816 Mensajes
Cita:
Iniciado por Simba Ver mensaje
Bueno ya lo he probado, ahora ya marca distancias en el LCD, pero el servo Tilt no se mueve ?¿?¿?¿?¿?¿.
La ultima distancia que queda en el LCD es 23m y es la misma que en la untima Trama del .log, es decir que tanto azimut de 037, altura de 0 y distancia de 23, corresponden exactamente con el dato de la ultima Trama del .log
Cual de los archivos logs es????

Altura 0 y distancia 23 es un tilt 0.
__________________
WiiFPV Team: VIMEO - YouTube
rortega esta en línea ahora   Responder Citando
Antiguo 25/11/2015, 23:19   #2744
rortega
* * * * * *
 
Avatar de rortega
 
Ingreso 20/abr/2012
3.816 Mensajes
Cita:
Iniciado por Simba Ver mensaje
Yo creo que la Crius no es capaz de digerir el chorro de datos que le llega del .log y los movimientos que veo no tienen representatividad, pero lo importante es que ya se ven datos de distancia en el LCD, pero que cambian a toda leche y seguro que no son todos.

Por otro lado paradógicamente, ahora que verdaderamente si que entiende los datos de distancia, no mueve el servo tilt.
¿Qué me das si te hago un programilla que lea el archivo y te saque las tramas a 2 o 5 hz?¿O a los que tú los quieras poner?¿Y si te permito que le metas cualquier archivo?¿O mejor, que produzca las tramas con altura y distancia simulando un vuelo real?...
__________________
WiiFPV Team: VIMEO - YouTube
rortega esta en línea ahora   Responder Citando
Antiguo 25/11/2015, 23:28   #2745
Simba
* * * * * *
 
Avatar de Simba
 
Ingreso 04/jul/2008
4.652 Mensajes
Vale pues ya tienes una Birra que con las que le debo a Turruk ya son 3.

Yo lo que he hecho es mientras esperaba le he metido entre renglon y renglon del .log lineas en blanco y he conseguido relentizarlo algo, pero sigue mas o menos igual .

El .log que le meto es este, pero con la cabecera esta:
#####################################################XXXXXXXXXXXXXX



https://www.dropbox.com/s/0zp2sy1tgj...river.log?dl=0
Simba esta en línea ahora   Responder Citando
Antiguo 25/11/2015, 23:32   #2746
Simba
* * * * * *
 
Avatar de Simba
 
Ingreso 04/jul/2008
4.652 Mensajes
No se pero a me da que después de la modificación podría estar volable, que si le llegan datos digeribles por la Crius igual va bien y todo.
Simba esta en línea ahora   Responder Citando
Antiguo 25/11/2015, 23:45   #2747
Simba
* * * * * *
 
Avatar de Simba
 
Ingreso 04/jul/2008
4.652 Mensajes
Rectifico, me acabo de dar cuenta de un detalle, borro lo dicho anteriormente.

Lo que pasa después de la modificación es que ahora lo que no funciona es la altura.

Lo siento pero no me di cuenta pensaba que ya estaba pero claro en el suelo la altura es cero y me despisto.

El caso es que durante el vuelo ahora marca distancia pero no altura, o sea al revés de antes.
Simba esta en línea ahora   Responder Citando
Antiguo 26/11/2015, 00:42   #2748
rortega
* * * * * *
 
Avatar de rortega
 
Ingreso 20/abr/2012
3.816 Mensajes
Es que te has cargado la altitud...

He realizado los cambios y he subido el archivo al repositorio, espero no haberme equivocado, estoy que me caigo de sueño. Mañan seguimos.

https://raw.githubusercontent.com/ra...360tracker.ino
__________________
WiiFPV Team: VIMEO - YouTube
rortega esta en línea ahora   Responder Citando
Antiguo 26/11/2015, 01:19   #2749
Simba
* * * * * *
 
Avatar de Simba
 
Ingreso 04/jul/2008
4.652 Mensajes
OK Buenas noches.
Simba esta en línea ahora   Responder Citando
Antiguo 26/11/2015, 01:40   #2750
Simba
* * * * * *
 
Avatar de Simba
 
Ingreso 04/jul/2008
4.652 Mensajes
Bueno no se si aun estas por aquí, pero te comunico que BINGO .
Ya funciona se ven en el LCD ahora si los datos del .log, los 3 datos y coinciden exactos con la ultima trama del .log cuando termina de moverse.

Ademas tiene buena pinta, va muy rapido pero lo que hace es logico.

Una vez mas muchas gracias.
Simba esta en línea ahora   Responder Citando
Antiguo 26/11/2015, 06:26   #2751
Ivan_Cillo
* * * *
 
Ingreso 25/oct/2013
De Valencia
648 Mensajes
Hola hola!
Joe tíos, OS leo cada día y ni con esas me entero de una miseria.
Estoy montando el mio los ratillos que voy teniendo.
De momento estoy con la mecánica, que como no he encontrado cajas en condiciones me la voy a hacer en madera para que quede lo mas compacto posible.
Por ahora es de cartón hasta que lo tenga todo.
En cuanto empiece con la programación OS daré la turra.
Os dejo unas fotos


Enviado desde mi DG800 mediante Tapatalk
Ivan_Cillo está desconectado   Responder Citando
Antiguo 26/11/2015, 10:07   #2752
Simba
* * * * * *
 
Avatar de Simba
 
Ingreso 04/jul/2008
4.652 Mensajes
No te preocupes que cuando ya lo tenemos en marcha y probado lo demás es fácil.
Simba esta en línea ahora   Responder Citando
Antiguo 26/11/2015, 17:37   #2753
rortega
* * * * * *
 
Avatar de rortega
 
Ingreso 20/abr/2012
3.816 Mensajes
Qué bueno, en cartón! Ya iremos echando una manita por aquí en lo que podamos.

Simba lo del simulador para enviar tramas lo tengo a medias, pero tengo intención de hacerlo. Una cosa simple que sirva para testear, de momento MFD.

La idea es sacar por USB las tramas a intervalo de 250 milisegundos, simulando un vuelo con dos giros de 360 grados y variando distancia y altitud, todo de forma gradual.
__________________
WiiFPV Team: VIMEO - YouTube
rortega esta en línea ahora   Responder Citando
Antiguo 26/11/2015, 18:00   #2754
Simba
* * * * * *
 
Avatar de Simba
 
Ingreso 04/jul/2008
4.652 Mensajes
Cita:
Iniciado por rortega Ver mensaje
Qué bueno, en cartón! Ya iremos echando una manita por aquí en lo que podamos.

Simba lo del simulador para enviar tramas lo tengo a medias, pero tengo intención de hacerlo. Una cosa simple que sirva para testear, de momento MFD.

La idea es sacar por USB las tramas a intervalo de 250 milisegundos, simulando un vuelo con dos giros de 360 grados y variando distancia y altitud, todo de forma gradual.
Bueno lo ultimo que se, es que Turruk lo ha probado igual que yo anoche, con la modificación del ultimo y le funciona, primero lo ha probado con el fichero.log y luego de forma real con el Ala y el Driver conectado al Traker360, y todo sale correcto distancia, altura y azimut.
Solo faltara probar en vuelo real, pero ya estoy casi seguro al 100% que va a funcionar todo OK.

Lo del simulador que comentas, siempre sera util para afinar y que los compis puedan probar fácilmente, tu veras la faena que te pueda dar.

Nos quedara pendiente el sacar las tramas de los pulsadores del Driver, las de HOME y TEST, que las veo interesantes, lo mismo ya funcionan pero visto lo visto, el código original no ofrece muchas garantías si no es que le haces un lavado de cara en profundidad .

Ayer me fui a la cama, con un poco de remordimiento, por la paliza que te pegue y el sueño que pasaste. lo siento . es broma Jajajaj jaja.

Pero al final TATACHIN TATACHAN ya lo tenemos casi listo.
Simba esta en línea ahora   Responder Citando
Antiguo 27/11/2015, 12:56   #2755
Simba
* * * * * *
 
Avatar de Simba
 
Ingreso 04/jul/2008
4.652 Mensajes
Turruk ¿vas a probar el Driver Traker 360? Estoy ansioso de que comentes resultado.
Simba esta en línea ahora   Responder Citando
Antiguo 27/11/2015, 16:28   #2756
TURRUK
* * *
 
Avatar de TURRUK
 
Ingreso 04/abr/2012
397 Mensajes
Cita:
Iniciado por Simba Ver mensaje
Turruk ¿vas a probar el Driver Traker 360? Estoy ansioso de que comentes resultado.
Hola Simba y compania hecho las pruebas con ultimas configuraciones, el tilt no funciona, pero por lo menos se a parece los dos medidas ALT, DIS , al respecto de OSD. Esto todo, losiento.
TURRUK esta en línea ahora   Responder Citando
Antiguo 27/11/2015, 16:57   #2757
Simba
* * * * * *
 
Avatar de Simba
 
Ingreso 04/jul/2008
4.652 Mensajes
Donde lo probaste has ido al campo????. Yo estoy en Barcelona.
Simba esta en línea ahora   Responder Citando
Antiguo 27/11/2015, 17:04   #2758
TURRUK
* * *
 
Avatar de TURRUK
 
Ingreso 04/abr/2012
397 Mensajes
Cita:
Iniciado por Simba Ver mensaje
Donde lo probaste has ido al campo????. Yo estoy en Barcelona.
Si en campo.
TURRUK esta en línea ahora   Responder Citando
Antiguo 27/11/2015, 17:07   #2759
rortega
* * * * * *
 
Avatar de rortega
 
Ingreso 20/abr/2012
3.816 Mensajes
El problema tiene que ver con ésta línea de código (línea 623 en la versión 0.8):

Código:
void calcTilt() {
...
...
...
alpha = toDeg(atan(float(targetPosition.alt - trackerPosition.alt) / targetPosition.distance));
...
...
...
}
El resultado de alpha está dando 0, lo cual puede ser por varios motivos:

  • targetPosition.alt y trackerPosition.alt sean iguales
  • un error en la función atan que no admita altitudes negativas (supongamos que targetPosition.alt está tomando valores negativos, por lo que sea).
  • que targetPosition.alt simplemente no esté recibiendo el dato, no se le esté pasando o se le esté pasando mal
  • que la lectura del dato de altitud desde el driver se esté recepcionando mal por parte del decodificador MFD del tracker
  • que haya un error en la conversión entre tipos de datos que se le pasan a la función atan, podría porvocar un alpha igual a 0.
Una prueba sencilla que se puede realizar para comprobar si verdaderamente el error es por culpa de targetPosition.alt, es poner justo encima de esa línea otra como:


Código:
void calcTilt() {
...
...
...
targetPosition.alt = 120;

alpha = toDeg(atan(float(targetPosition.alt - trackerPosition.alt) / targetPosition.distance));
...
...
...
}
Y subir el firm al tracker. Ésto, si no hay un error de conversión de datos y suponiendo que trackerPosition.alt tenga valor, obligará al tilt a moverse pues hacemos creer que nuestro avión está a 120 metros de altura constantes.

También podríamos añadir otras líneas para que nos saque por puerto serie el tracker los valores de esas cuatro variables, así podríamos descartar algunas de las causas y dilucidar el origen real del problema, que seguro está antes de calcular el tilt.


Código:
void calcTilt() {
...
...
...
targetPosition.alt = 120;

alpha = toDeg(atan(float(targetPosition.alt - trackerPosition.alt) / targetPosition.distance));
Serial.print("tartet Alt: ");
Serial.print(targetPosition.alt);
Serial.print(" tracker Alt: ");
Serial.print(trackerPosition.alt);
Serial.print(" distance: ");
Serial.print(distance);
Serial.print(" alpha: ");
Serial.print(alpha);
Serial.println();

...
...
...
}
Para ello habría que pinchar en "Y" la salida tx y negativo de nuestro del puerto serie de nuestro tracker para ponernos a la escucha con el programa sscom, mientras le llegan los datos del AAT Triver por el rx.

Si usamos el hercules para neviar el archivo, no debería haber problema en enviar y recibir en la ventana las respuesta de los Serial.print, pero creo que los datos del archivo no son buenos para comprobar ésto.
__________________
WiiFPV Team: VIMEO - YouTube
rortega esta en línea ahora   Responder Citando
Antiguo 27/11/2015, 17:07   #2760
Simba
* * * * * *
 
Avatar de Simba
 
Ingreso 04/jul/2008
4.652 Mensajes
Una cosa con el fichero.log se movía el Tilt.
A mi si que se movía bien terminando el fichero y la posición Tilt donde marcaba la altura
Simba esta en línea ahora   Responder Citando


Herramientas Buscar en Tema
Buscar en Tema:

Búsq. Avanzada

Ir al foro

Temas similares
Tema Autor Foro Resp. Último mensaje
Ayuda! antena tracker darylkorn R/C Antenas, Emisores, Receptores y Comunicaciones 0 14/04/2015 10:25
Opiniones antena tracker mdf o rv antoniobernal R/C Antenas, Emisores, Receptores y Comunicaciones 7 14/07/2014 10:34
Busco antena tracker duckcrazy MERCADO de COMPRA / VENTA 0 15/06/2012 08:45
Opiniones Recomendarme un Antena Tracker jonpeter R/C Antenas, Emisores, Receptores y Comunicaciones 3 06/05/2012 20:30


Tu hora GMT +1. Ahora son las 15:18.


2015