Proyecto Seguidor de Antena 360º

Discussion in 'R/C ELECTRÓNICA' started by Simba, Dec 16, 2016.

  1. TURRUK Miembro

    TURRUK
    Joined:
    Apr 4, 2012
    Messages:
    438
    Likes Received:
    0
    Hola , ya probado va de lujo , :party::-winner_first_h4h: gracias.
     
  2. Stapelton Nuevo Miembro

    Stapelton
    Joined:
    Aug 21, 2015
    Messages:
    88
    Likes Received:
    0
    Ya me llego el programador pic K150, pero al cargar el boot loader ds30loader.HEX con el programa microbrn da error, también al cargar el otro fichero Seguidor_Antena_1_0_4_corregido.hex.
    Pero la pregunta que quería haceros es que pic tengo que seleccionar ya que el 18F2620 no aparece en la lista.

    Saludos...
     

    Attached Files:

    • 1.jpg
      1.jpg
      File size:
      74.2 KB
      Views:
      132
    • 2.jpg
      2.jpg
      File size:
      73.9 KB
      Views:
      140
    • 3.jpg
      3.jpg
      File size:
      99.9 KB
      Views:
      108
  3. CIAPU35 Miembro

    CIAPU35
    Joined:
    May 9, 2010
    Messages:
    201
    Likes Received:
    16

    No tengo este programador, pero he estado leyendo un poco por "San Google", y parece ser que el software tiene algún "bug" , y necesitas transformar primero el fichero ".hex" que vayas a grabar.

    Debes utilizar el programa "FIXHEX2.exe" que está en la misma carpeta que "microbrn.exe" .

    Este te dará un fichero ".hex" con el mismo nombre pero le añade una extensión ".fix.hex" , este es el fichero que debes grabar.

    Fíjate en la imagen que he hecho de prueba.


    [​IMG]


    Elige el Chip 18F2620 ( Editado en post siguiente)


    Por cierto, si vas a grabar directamente el seguidor.hex sin bootloader , mejor que grabes la ultima versión, "Seguidor de Antena 1.0.5"


    Reporta por aquí para ayuda de otros, como ha salido la cosa !!!!!!
     

    Attached Files:

    #203 CIAPU35, Feb 24, 2017
    Last edited: Feb 24, 2017
  4. CIAPU35 Miembro

    CIAPU35
    Joined:
    May 9, 2010
    Messages:
    201
    Likes Received:
    16
    Actualización Programador K150

    Siguiendo en la programación con el K150 y complementando al post anterior , he encontrado esta actualización que deberás insertar en el fichero "Chipdata.cid" .

    Lo abres con un editor de texto puro (bloc de notas) e insertas entre el final del bloque chipname=18f2520 y el principio del bloque chipname=18f2525 (dejando solo una linea en blanco, delante-detrás, entre cada uno de los bloques de chip)

    el texto mostrado aquí:

    Code:
      
    CHIPname=18F2620
    INCLUDE=Y
    KITSRUS.COM=28Npin
    EraseMode=4
    FlashChip=Y
    PowerSequence=VccVpp1
    ProgramDelay=10
    ProgramFlag2=1
    PanelSizing=0
    CoreType=bit16_B
    ROMsize=008000
    EEPROMsize=00000100
    FUSEblank=0800 1018 0100 0081 C00F E00F 400F
    CPwarn=N
    CALword=N
    BandGap=N
    ICSPonly=N
    ChipID=0C80
    LIST1 FUSE1 "IE Switchover" "Enabled"=FFFF "Disabled"=7FFF
    LIST2 FUSE1 "Fail Safe Clock Mon" "Enabled"=FFFF "Disabled"=BFFF
    LIST3 FUSE1 "Oscillator" "LP Osc"=F0FF "XT Osc"=F1FF "HS Osc"=F2FF "Ext RC"=F3FF "EC Osc"=F4FF "EC Port RA6"=F5FF "HSPLL"=F6FF "Ext RC"=F7FF "Int OSC"=F8FF "Int OSC Clk RA6 PortB"=F9FF "Int Osc Clk RA6"=FBFF "Int Osc Clk RA6"=FCFF
    LIST4 FUSE2 "Brownout Voltage" "2.0V"=FFFF "2.7V"=FFFB "4.2V"=FFF7 "4.5V"=FFF3
    LIST5 FUSE2 "Brownout Detect" "Enabled"=FFFF "Disabled"=FFFD
    LIST6 FUSE2 "Powerup Timer" "Disabled"=FFFF "Enabled"=FFFE
    LIST7 FUSE2 "Watchdog Timer" "Enabled"=FFFF "Disabled"=FEFF
    LIST8 FUSE2 "Watchdog Postscale" "1:32768"=FFFF "1:16384"=FDFF "1:8192"=FBFF "1:4096"=F9FF "1:2048"=F7FF "1:1024"=F5FF "1:512"=F3FF "1:256"=F1FF "1:128"=EFFF "1:64"=EDFF "1:32"=EBFF "1:16"=E9FF "1:8"=E7FF "1:4"=E5FF "1:2"=E3FF "1:1"=E1FF
    LIST9 FUSE3 "MCLRE" "Enabled"=FFFF "Disabled"=7FFF
    LIST10 FUSE3 "LPT1OSC" "LOW Power Mode"=FFFF "HighPower Mode"=FBFF
    LIST11 FUSE3 "PBADEN" "AD 4:0 Analog on Reset"=FFFF "AD 4:0 Digital on Reset"=FDFF
    LIST12 FUSE3 "CCP2MX" "MUC RC1"=FFFF "MUC RE7/RB3"=FEFF
    LIST13 FUSE4 "BBSIZ" "2K words"=FFFF "1K words"=FEFF
    LIST14 FUSE4 "Background Debug" "Disabled"=FFFF "Enabled"=FF7F
    LIST15 FUSE4 "XINST" "Enabled"=FFFF "Disabled"=FFBF
    LIST16 FUSE4 "Low Voltage Program" "Enabled"=FFFF "Disabled"=FFFB
    LIST17 FUSE4 "Stack Overflow Reset" "Enabled"=FFFF "Disabled"=FFFE
    LIST18 FUSE5 "BOOT ROM Protect" "0000-07FF Disabled"=FFFF "0000-07FF Enabled"=BFFF
    LIST19 FUSE5 "ROM Protect" "0800-3FFF Disabled"=FFFF "0800-3FFF Enabled"=FFFE
    LIST20 FUSE5 "ROM Protect" "0400-7FFF Disabled"=FFFF "0400-7FFF Enabled"=FFFD
    LIST21 FUSE5 "ROM Protect" "8000-BFFF Disabled"=FFFF "8000-BFFF Enabled"=FFFB
    LIST22 FUSE5 "ROM Protect" "C000-FFFF Disabled"=FFFF "C000-7FFF Enabled"=FFF7
    LIST23 FUSE5 "EEPROM Protect" "Disabled"=FFFF "Enabled"=7FFF
    LIST24 FUSE6 "BOOT Table Write Protect" "0000-07FF Disabled"=FFFF "0000-07FF Enabled"=BFFF
    LIST25 FUSE6 "ROM Table Write Protect" "0800-3FFF Disabled"=FFFF "0800-3FFF Enabled"=FFFE
    LIST26 FUSE6 "ROM Table Write Protect" "4000-7FFF Disabled"=FFFF "4000-7FFF Enabled"=FFFD
    LIST27 FUSE6 "ROM Table Write Protect" "8000-BFFF Disabled"=FFFF "8000-BFFF Enabled"=F7FB
    LIST28 FUSE6 "ROM Table Write Protect" "C000-FFFF Disabled"=FFFF "C000-FFFF Enabled"=FFF7
    LIST29 FUSE6 "EEPROM Table Write Protect" "Disabled"=FFFF "Enabled"=7FFF
    LIST30 FUSE6 "CONFIG Table Write Protect" "Disabled"=FFFF "Enabled"=DFFF
    LIST31 FUSE7 "BOOT Table Read Protect" "0000-07FF Disabled"=FFFF "0000-07FF Enabled"=BFFF
    LIST32 FUSE7 "ROM Table Read Protect" "0800-3FFF Disabled"=FFFF "0800-3FFF Enabled"=FFFE
    LIST33 FUSE7 "ROM Table Read Protect" "4000-7FFF Disabled"=FFFF "4000-7FFF Enabled"=FFFD
    LIST34 FUSE7 "ROM Table Read Protect" "8000-BFFF Disabled"=FFFF "8000-BFFF Enabled"=FFFD
      
      
     
    !!! Opción alternativa citada abajo y fichero adjunto No válido... es un fichero en desarrollo y necesita mucha edición.. ¡¡¡¡
    !! No dejes de reportar resultados.. tanto si funciona como si no...para informar al resto de la peña ¡¡¡¡¡.
     

    Attached Files:

    #204 CIAPU35, Feb 24, 2017
    Last edited: Mar 30, 2017
  5. Stapelton Nuevo Miembro

    Stapelton
    Joined:
    Aug 21, 2015
    Messages:
    88
    Likes Received:
    0
    Hola Ciapu35, ayer convertí los ficheros con el "FIXHEX2.exe" y lo grabe sin ningún resultado parece que todo está muerto, cuando lo enciendo no muestra nada el lcd, si me conecto con el Seguidor_Antena_Configurador_1_6 tampoco veo ningún dato al leer eeprom.:sad:
    Leyendo en algún foro ingles ya lo estuve buscando anoche alguna actualización del archivo chipdata pero no lo encontré, podría ser la solución pero si lo renombro da error al abrir el programa y se cierra (veo que cambia valores de fuse y direcciones quizás sea para otra versión del microbrn)
    Voy a copiar al chipdata.cid original solo los datos del pic18F2620 y a grabarlo de nuevo, ya os contare como me ha ido.:-beg:

    Saludos...
     
    #205 Stapelton, Feb 24, 2017
    Last edited: Feb 26, 2017
  6. Stapelton Nuevo Miembro

    Stapelton
    Joined:
    Aug 21, 2015
    Messages:
    88
    Likes Received:
    0

    Attached Files:

    • a.jpg
      a.jpg
      File size:
      104.8 KB
      Views:
      115
    • b.jpg
      b.jpg
      File size:
      94.4 KB
      Views:
      120
  7. TURRUK Miembro

    TURRUK
    Joined:
    Apr 4, 2012
    Messages:
    438
    Likes Received:
    0
    Hola tienes que cambiar direcion de de LSD.
    En configurador pudes cambiar Captura.JPG
     
  8. Stapelton Nuevo Miembro

    Stapelton
    Joined:
    Aug 21, 2015
    Messages:
    88
    Likes Received:
    0
    Hola TURRUK:
    Como ya he dicho es imposible, no puedo ver los datos que hay en el pic así que modificar y grabar menos.
    Tengo este FTDI http://www.ebay.es/itm/Standard-RC-...489274?hash=item4b1194757a:g:u90AAOSwTglYm1wP
    con el que he programado los OSDs, los ublox neo-m8n así que debería poder modificar ,configurar algo, por si acaso acabo de pero por ebay un silicon labs cp210x.
    Sigo pensando que es cosa de la programación del pic.

    Saludos...
     
  9. Stapelton Nuevo Miembro

    Stapelton
    Joined:
    Aug 21, 2015
    Messages:
    88
    Likes Received:
    0
    Enredando con el K150 parece que sí que graba el código, cuando le doy a read veo que si lo ha grabado, aunque no sé si bien. :icon_eek:

    Tengo 2 placas, 2 pic, 2 lcd, etc., con lo cual descarto que todo este mal, así que esperare el cp210x.

    CIAPU35 una pregunta ¿el Seguidor_Antena_1_0_5.hex viene configurado el lcd para 0x27, si es así debería ver algo en el LCD?

    Saludos...
     
    #209 Stapelton, Feb 25, 2017
    Last edited: Feb 25, 2017
  10. CIAPU35 Miembro

    CIAPU35
    Joined:
    May 9, 2010
    Messages:
    201
    Likes Received:
    16
    Por defecto va configurado con dirección 0x27 que corresponde al chip I2C PCF8574 , y se puede cambiar a dirección 0x3F si el chip es PCF8574A como seguramente será tu caso si lo has comprado en el sitio que mencionas.

    Pero de momento no te preocupes de si funciona o no el LCD, ya se verá más adelante. Ahora mismo lo necesario es ver que el Chip funciona, y el mejor test es conectarle un servo cualquiera a la salida "Vertical" de la placa y debería moverse hacia un lado y permanecer allí al encender el montaje, (el servo se resiste al movimiento forzado con la mano), si no es así, significa que no se han grabado correctamente los "Fuses".

    Los valores correctos de los Fuses van embebidos en el propio ".hex", y son los que configuran al Chip, y entre otras cosas , activan el oscilador interno en el arranque.


    Ya sabes que no tengo este programador, pero he estado trasteando un poco y he llegado a la conclusión de que tiene algún que otro bug y al cargar el "Hex" no carga simultáneamente los fuses correctos.

    He probado a ver si poniendo los Fuses por defecto en el bloque de definición del chip 18F2620 del archivo "chipdata.cip" lo cargaba correctamente , y parece ser que así sucede.

    Entonces lo que debes hacer es editar este archivo y en esta línea lo sustituyes por esta: FUSEblank=0800 1018 0100 0081 C00F E00F 400F


    En el post anterior (#204) también está corregido.


    En definitiva , cuando cargues el fichero ".fix.hex" para grabar, obligatoriamente deben salirte los valores que te muestro en las siguientes imágenes:

    [​IMG]



    [​IMG]


    No abras el Botón de fuses ( Con dedo amarillo en la imagen), porque parece ser que marea los valores anteriores.


    Además también deben salirte los valores de EEPROM que se ven al fondo de la imagen anterior.


    !! A ver si hay suerte .......y arranca ¡¡¡¡¡¡

    Saludos.
     

    Attached Files:

  11. judasall Miembro Activo

    judasall
    Joined:
    Feb 12, 2009
    Messages:
    1,279
    Likes Received:
    0
    Otro mas con todo pedido para montar un seguidor.
    Por cierto, he pedido otro PIC mas para eso otro que vas a enseñar a hacer...
     
  12. Stapelton Nuevo Miembro

    Stapelton
    Joined:
    Aug 21, 2015
    Messages:
    88
    Likes Received:
    0
    Ahora sí, me funciona todo. :party::party::party:
    :worthy:Gracias CIAPU35
     
  13. BUITRAGO Nuevo Miembro

    BUITRAGO
    Joined:
    Mar 14, 2007
    Messages:
    65
    Likes Received:
    0
    Hola compañeros,lo primero dar las gracias por este estupendo proyecto.
    Pues nada otro que me suma al seguidor y ya lo tengo terminado pero me me surge alguna pregunta...............

    Lo estoy utilizando con un orange de 1w y segun ciapu35 se puede capar el receptor de orange,ahora lo tengo con un data rate 19200 y baudrate 4800 a 2hz y la trama GGA solo pero parece que no va fino.¿puede ser por que no este bien configurado el receptor o no este capado?

    Otra cosa..... lo he montado todo en una caja y cuando enciendo el tx de orange me oscila los dos ejes,lo he tenido que poner retirado (con un latigullo a un metro)me imagino que al tener tanta cosa cerca interfiere con el tx de orange.

    Gracias y sigo el hilo muy atento.

    Pondre fotos si puedo subirlas, un saludo.
     
  14. Guillesan Maestro FPV

    Guillesan
    Joined:
    Oct 31, 2008
    Messages:
    2,232
    Likes Received:
    4
    Me parece que tienes poco refresco con esos 4880 2hz , si no recuerdo mal Simba que también usa nmea puro lo tiene a 9600 5hz y le pirula muy bien, pero mejor te lo dice el
     
  15. Guillesan Maestro FPV

    Guillesan
    Joined:
    Oct 31, 2008
    Messages:
    2,232
    Likes Received:
    4
    Yo también estoy terminando la ya quinta antena........ jajaja.
    Unos góticos de cómo va.
    [​IMG][​IMG][​IMG]
     
  16. BUITRAGO Nuevo Miembro

    BUITRAGO
    Joined:
    Mar 14, 2007
    Messages:
    65
    Likes Received:
    0
    Muy guapa,si señor si puedo subo alguna foto de mi cacharro.

    Voy a probar con esa configuracion y te cuento.
     
  17. Simba Gurú FPV

    Simba
    Joined:
    Jul 4, 2008
    Messages:
    6,811
    Likes Received:
    13
    Bueno actualmente lo tenemos todo a 57600 baudrate y Datarate.
    Dicen y tienen razón que reduce el alcance, pero en mi caso no lo noto, pues con 6 km de radio me sobra.
    Esos 57600 permiten hasta 8hz con errores 0.

    Enviado desde mi GT-I9505 mediante Tapatalk
     
  18. BUITRAGO Nuevo Miembro

    BUITRAGO
    Joined:
    Mar 14, 2007
    Messages:
    65
    Likes Received:
    0
    Aquí mi enjendro,la pantalla lcd es XXL para verla bien.
     

    Attached Files:

  19. Guillesan Maestro FPV

    Guillesan
    Joined:
    Oct 31, 2008
    Messages:
    2,232
    Likes Received:
    4
    Podrías poner más concreto la solución que as tomado para el eje central , slipring y demás, gracias.
     
  20. Stapelton Nuevo Miembro

    Stapelton
    Joined:
    Aug 21, 2015
    Messages:
    88
    Likes Received:
    0
    Tiene muy buena pinta sí señor, por cierto la pletina de chapa para colocar la antena directiva la compraste o es hecha manualmente, he conseguido un ángulo de aluminio en la una ferretería porque no tenía pletinas de aluminio espero que no se me rompa al doblarla. :frown:

    Saludos...
     
  21. Simba Gurú FPV

    Simba
    Joined:
    Jul 4, 2008
    Messages:
    6,811
    Likes Received:
    13
    Mi enhorabuena por la máquina, tiene una apariencia muy innovadora.

    Enviado desde mi GT-I9505 mediante Tapatalk
     
  22. BUITRAGO Nuevo Miembro

    BUITRAGO
    Joined:
    Mar 14, 2007
    Messages:
    65
    Likes Received:
    0
    Gracias por los comentarios.


    Así lo llevo guillesan,no sé si lo aprecias bien pero es que no puedo desarmar más los cables no me dan más.
    El slipring lo llevo por dentro del rodamiento los alojamientos del rodamiento los he torneado uno va fijo con el piñón y el otro es el móvil.

    Stapelton Lo de la platina de aluminio es de una antena UHF (el dipolo) que tenía por aquí a mano pero en leroy creo que hay platina de 10mm x 1 metro de largo y 1,5 mm de expesor y valen baratas.
     

    Attached Files:

  23. Simba Gurú FPV

    Simba
    Joined:
    Jul 4, 2008
    Messages:
    6,811
    Likes Received:
    13
    Buitrago, es una muy buena idea, y diferente a todas las que he visto, pero mucho mas difícil de hacer, para el común de los mortales, por el soporte del rodamiento y el torneado.

    De todas formas un 10 para la maquina, que debe de ir fina fina, mucho mejor que con los rodamientos Ladysusan.
     
  24. Stapelton Nuevo Miembro

    Stapelton
    Joined:
    Aug 21, 2015
    Messages:
    88
    Likes Received:
    0
    Gracias BUITRAGO es una pena que en mi pueblo no tengamos leroy :blink:

    Saludos...
     
  25. CIAPU35 Miembro

    CIAPU35
    Joined:
    May 9, 2010
    Messages:
    201
    Likes Received:
    16

    Primero..., enhorabuena por la máquina, parece fuerte y preparada para soportar antenas de grandes dimensiones.

    Y en cuanto a las oscilaciones de los servos he de decirte que a mí me pasó lo mismo en un principio, sobre todo cuando puse unos servos estandar de la marca Hitec.

    Está claro que la frecuencia de 433 Mhz se introduce dentro de la electronica del servo y los hace oscilar.

    Una de las soluciones que empecé a investigar fué la de colocar unas anillos de ferrita en los cables de control del servo; esto mitigó ligeramente la oscilación pero no la quitaba totalmente.

    A continuación probé con los servos Futaba (los actuales), y observé que con estos las oscilaciones eran minúsculas, pero todavía estaban ahí.

    Mientras hacía estas pruebas, el modulo Orange estaba calzado con la antena estándar que viene con el mismo (la porrita), cuando lo cambié a la antena Moxxon (la actual), observé que desaparecieron totalmente las oscilaciones.

    Por tanto deduzco que la dirección de difusión de la energía radioeléctrica influye sobre los servos ( la porrita les dirigía energía, mientras que la Moxxon la dirige hacía el exterior, alejándola de los servos).


    Además para completar la solución, cambié el modulo de 1W ( en realidad de 400 mW) al de 100 mW, y el problema totalmente solucionado.

    Con este modulo y la antena citada ,se alcanzan perfectamente los 10 Km.(La discusión de esta afirmación me gustaría dejarla para otro hilo. El próximo proyecto del medidor de potencia - muy pronto-).


    Así que deberás probar cambiando los modelos y marcas de servos, o intentar blindarlos radioelectricamente (incluidos los cables), o cambiando de posición o de antena al modulo Orange.

    Te dejo enlace a este video para ver que solución adopta este individuo.

    [ame="https://www.youtube.com/watch?v=kZGMuhRqpnA"]https://www.youtube.com/watch?v=kZGMuhRqpnA[/ame]
     
    #225 CIAPU35, Mar 2, 2017
    Last edited: Mar 3, 2017
  26. BUITRAGO Nuevo Miembro

    BUITRAGO
    Joined:
    Mar 14, 2007
    Messages:
    65
    Likes Received:
    0
    Gracias ciapu lo probare os cuento,otra cosa que me pasa es que me oscilan tambien los servos cuando estan conectados al rx orange no se si es por alguna configuracion que tengo mal en el receptor.
    Ahora estoy probando la configuracion que me dio simba 57600 y 57600 a 8hz.

    ya os digo como me va.

    un saludo.
     
  27. CIAPU35 Miembro

    CIAPU35
    Joined:
    May 9, 2010
    Messages:
    201
    Likes Received:
    16

    Veo que tu también eres usuario del Orange, a pesar de su mala fama (según algunos), pero creo que lo dicen por que es un incomprendido.
    Es un aparato que cumple las tres "B", y para quererlo solo hay que entenderlo un poquito.
    Aunque se salga un poco del propósito general de este Hilo, no puedo dejar pasar la oportunidad de explicar un poco su funcionamiento interno, para que una vez entendido, saquemos el máximo rendimiento del mismo.

    El "OpenLrsng" según diseño de su creador está preparado para bajar telemetría a 8 bytes (caracteres) desde el Avión hacia tierra por cada uno de los cuadros de control recibidos desde tierra hacia el avión (Control de servos).
    Como sabéis con las radios clásicas, el refresco de cuadro control de servos es de 50 Hz, y solo se emite en una dirección.
    Pero en este sistema se deben de combinar el control de subida y la recepción de datos de bajada en una misma ventana de tiempo.
    El tiempo de apertura de esta ventana dependerá de la velocidad de transmisión de datos por unidad de tiempo, y como siempre recomiendan una baja velocidad para obtener una buena sensibilidad en el receptor y por tanto un mayor alcance, pues ponemos el datarate en el aire, muy bajo.

    Al hacer esto estamos creando dos problemas: Uno es que el refresco de control de servos es muy lento (para aviones rápidos o helicópteros no sirve), y dos, la telemetría de bajada es una caca.

    Por tanto hay que pasar de todas esas recomendaciones y poner un Datarate de moderado a alto, que se ajuste a nuestras necesidades.

    la forma de calcularlo es la siguiente:

    [​IMG]


    Si observas la imagen verás que al poner un data Rate en el aire de 19200, obtienes un refresco de cuadro de control de servos de 39 Hz y por definición de programa un refresco de bajada de telemetría de 8 x 39= 312 caracteres/sg.

    Si tienes conectado un GPS que esta dando una única sentencia (GPGGA) de una longitud de 70 caracteres puedes obligarlo a dar una frecuencia de hasta ( 312 / 70 = 4 hz) sin saturar el buffer de transmisión.

    Pero si está mandando dos sentencias (GPGGA y GPRMC) de 70 caracteres cada una y a la misma frecuencia ( 70 x 2 =140, 140 x 4Hz = 560 caracteres/sg) , como 560 es mayor que la capacidad actual de evacuar 312 caracteres, estás saturando el buffer y perderás los datos de diferencia.

    Entonces lo que debes hacer es subir el Data rate :

    [​IMG]


    Observa como el ratio de refresco de servos a subido a 90 Hz.

    Con esto que consigues: Pues que aumentas el ancho de banda de transmisión de telemetría y a partir de ahora puedes enviar hasta 8 x 90 = 720 caracteres/sg

    En el caso anterior con dos sentencias de GPS a 4 Hz que ocupaban 560 caracteres/sg, te caben perfectamente en el buffer de bajada sin saturarlo.

    En el caso que solo mandaras una única sentencia (GPGGA) de 70 caracteres , podrías subir la frecuencia hasta 10 Hz ( 720/ 70 = 10 Hz).



    Observa como lo único critico es el datarate en el aire, el baudrate es secundario y depende solamente de la configuración de los aparatos vecinos que tengas conectados ( Placa APM, Minimosd, etc).


    Lo del capado del Rx en el avión es para usar con protocolo Mavlink ( este protocolo es muy denso y necesita un tratamiento especial).
    Hablaré de esto en otro Post, si alguien está todavía interesado después de tragarse este tocho :rolleyes:
     

    Attached Files:

  28. BUITRAGO Nuevo Miembro

    BUITRAGO
    Joined:
    Mar 14, 2007
    Messages:
    65
    Likes Received:
    0
    muchas gracias ciuapu,voy a configurarlo ahora mismo.
     
  29. judasall Miembro Activo

    judasall
    Joined:
    Feb 12, 2009
    Messages:
    1,279
    Likes Received:
    0

    No dudes en comentarlo. Yo estoy muy interesado en tener la telemetria en tierra poara mover la antena. Lo que no tengo claro es si se necesita otro GPS dedicado solo a mandar esas sentencias o se puede usar el del OSD (voy a usar APM e Inav)
     
  30. Zolber Miembro

    Zolber
    Joined:
    Oct 20, 2013
    Messages:
    869
    Likes Received:
    3
    La verdad es que te explicas muy bien. Yo actualmente tengo en avión otro gps para bajar tramas de telemetría para hacer seguimiento con el Oruxmaps en la tablet. Quizás más adelante, cuando realmente pueda volar algo.... Quizás me anime y pruebe con un seguidor. Un saludo

    Enviado desde mi Aquaris X5 mediante Tapatalk
     
  31. BUITRAGO Nuevo Miembro

    BUITRAGO
    Joined:
    Mar 14, 2007
    Messages:
    65
    Likes Received:
    0
    Bueno pues decir que esta mañana he probador por fin el seguidor del señor ciapu y funciona a la perfeccion y eso que solo esta calibrada con la brujula sin afinar.

    Desde aqui darle las gracias por este magnifico proyecto.
     
  32. judasall Miembro Activo

    judasall
    Joined:
    Feb 12, 2009
    Messages:
    1,279
    Likes Received:
    0
    Yo ya lo tengo todo menos el lcd y joystick. Se puede montar y usar asi?
     
  33. BUITRAGO Nuevo Miembro

    BUITRAGO
    Joined:
    Mar 14, 2007
    Messages:
    65
    Likes Received:
    0
    Creo que si,la ajustas con el configurador y pc y ya ves como se mueve.
     
  34. BUITRAGO Nuevo Miembro

    BUITRAGO
    Joined:
    Mar 14, 2007
    Messages:
    65
    Likes Received:
    0
    Yo he puesto 5 pulsadores
     

    Attached Files:

  35. CIAPU35 Miembro

    CIAPU35
    Joined:
    May 9, 2010
    Messages:
    201
    Likes Received:
    16
    Estupendo.. me alegro que todo haya ido bien...bienvenido al club de los que nos gusta el "Hágalo usted mismo".

    Aprovecho para recordar que con un calibrado estandar es suficiente para una buena precisión, si hemos conseguido montar la brújula en una buena posición.

    El calibrado avanzado es para que lo usen aquellos que tienen una caja de montaje minúscula o con mucho metal, y tienen muy difícil obtener un buen lugar para colocar la brújula.



    Sí, si que puedes, como ya te ha dicho Buitrago, es más, podrías usarlo de este modo para siempre en tus vuelos, siempre y cuando hayas hecho los deberes en casa y salgas con las configuraciones realizadas.

    Lo malo, es que te perderías la información de los vuelos, y en caso de aporrizaje lejano , no tendrías a la vista, la ultima posición de lat y lon para poder ir a buscarlo.
     
  36. CIAPU35 Miembro

    CIAPU35
    Joined:
    May 9, 2010
    Messages:
    201
    Likes Received:
    16
    Modificación OpenLRSng del Módulo Orange/Wolfbox para filtrar telemetría Mavlink

    Como podéis ver, sigo fiel a mis "tochos" , !! ale.. ya tenéis lectura...para un rato ¡¡¡:biggrin2::rolleyes2:

    Tal como insinuaba en post anteriores y a petición de algunos, voy a comentar como tengo preparado mi modulo Orange con Openlrsng, para poder transmitir correctamente telemetría con protocolo Mavlink desde la placa controladora APM.

    El protocolo Mavlink es muy bueno dando todo tipo de información, que el modulo MinimOsd sabe aprovechar y presentarnos en pantalla todos esos datos que ya conocemos.
    Pero esto tiene un precio, y es que la transferencia de bytes/sg es muy alta. Si le dedicamos un RadioModem exclusivo para estos menesteres, estupendo, sin problemas, pero si intentamos calzarlo en un sistema que ya está casi completamente ocupado transfiriendo flujo de bytes de control de servos, .. pues como que no va a ser posible.

    Aquellos que utilicen una versión especial del "OpenLRSng" llamada "GITSLY", preparada para soportar un gran flujo de telemetría pueden seguir usándola, si necesitan en tierra todas las sentencias posibles del protocolo. (También tiene sus desventajas, y no la recomiendo, y en otro post futuro, explicaré el porqué de mi opinión).

    Lista de mensajes:enlace al post de mensajes mavlink

    Pero si solo se necesita controlar el Seguidor, o cualquier otro Tracker compatible, entonces con una única sentencia tenemos suficiente.
    Esto nos da una gran ventaja, ya que adelgazaremos considerablemente el flujo, y el modulo Orange nos lo agradecerá

    La sentencia de la que estoy hablando es la identificada con el Id.24 (GPS_RAW_INT) y su longitud es de 38 bytes.

    Si consigo que la APM me la refresque a una frecuencia de 5 Hz, tengo un flujo de 38 x 5 hz = 190 bytes/sg y por tanto la puedo meter con un DataRate en el aire de tan solo 19200 ( Según la formula del post #227), y si además, con este bajo DataRate consigo un !!alcance mayor¡¡ (especial para los obsesivos del alcance), pues miel sobre hojuelas......

    Y como se consigue esto?, pues manipulando el OpenLRSng y añadiéndole una nueva rutina que nos haga el Filtrado de todo el flujo Mavlink y extraiga la sentencia citada.

    Pasos a seguir:
    1-. Empezamos creando un archivo adicional en la carpeta del sketch de cualquier versión, en donde tengamos el OpenLRSng.ino

    Lo llamaremos Filtro_Mavlink.h y le pegaremos el siguiente codigo:

    Code:
    /********************************************
     Proposito : Filtro de flujo Mavlink
                 pasar solo sentencia  24
    
      *- El modulo APM lanza multiples sentencias
      *- Dejar solo una sentencia para bajar por telemetria para 
        usar en el Seguidor de Antena, sin saturar el buffer
        y permitiendo que otros modulos (ejemplo: Minim OSD) obtengan  
        todas las sentencias Mavlink para mostrar datos en pantalla 
    
      *- Ciapu35 ( Club Saeta Rc - Puerto Sagunto)
    *******************************************/
    
    uint8_t Estado=1;
    uint8_t Indice=0;
    uint8_t Buffer[38];  // buffer temporal
    boolean Sentencia_completa = false;
    
    void Filtro_Sentencia24(uint8_t *serial_tail, uint8_t *serial_head, uint8_t *serial_buffer, uint8_t SERIAL_BUFSIZE)
    {
         uint8_t C ;
           //  Leer el buffer de entrada RS232
      while(Serial.available()){
                C = Serial.read();
    
        switch (Estado) {
          case 1:
             if (C == 254) {        // cabecera protocolo mavlink
                Estado = 2;
                Indice = 0;
                Buffer[Indice]= C;
             }
            break;
          case 2:
             Estado = 3;
             Indice = Indice + 1 ;
             Buffer[Indice] = C;    // longitud del mensaje
             //Datos_Long = C
            break;
          case 3:
             Estado = 4;         
             Indice = Indice + 1 ;
             Buffer[Indice] = C;    // secuencia
            break;
          case 4:
             Estado = 5;
             Indice = Indice + 1 ;
             Buffer[Indice] = C;   // id_Sys
            break;
          case 5:
             Estado = 6;
             Indice = Indice + 1 ;
             Buffer[Indice] = C;   // Comp_Id
            break;
          case 6:
             Indice = Indice + 1 ;
             Buffer[Indice] = C;   // ID del Mensaje
             
             if (C == 24){        // solo mensaje 24 (GPS_RAW_INT)
               Estado = 7 ;       // seguir con el resto del mensaje
             }
             else
             {
               Estado = 1;        // reiniciar
             }
           break; 
          case 7:                 // recoger el resto del mensaje incluido el CRC1 y CRC2
             Indice = Indice + 1 ;
             Buffer[Indice] = C;
    
               if (Indice >= 37){   // 6 bytes de cabecera + 30 bytes de datos  + 2 bytes de CRC (38 bytes)
                                    // pasar el buffer temporal a serial_buffer para bajarla por telemetria
                Estado = 0;         
                Sentencia_completa = true;
               }
    
        }
      } 
    
             // copiar buffer temporal en serial_buffer 
    
             if (Sentencia_completa) {
                    Sentencia_completa = false;
                    Estado = 1;         // reiniciar                
                    memcpy( serial_buffer, Buffer, 38 );
                   *serial_tail =  38 ; 
                   *serial_head =  0  ;  
           }
    } 
    
    //************************** Fin.
    
    2-. insertamos en OpenLRSng.ino el siguiente código en donde indica la imagen:
    Code:
    // Si se va a usar telemetria Mavlink desde APM
    // Filtrar entrada RS232 para localizar sentencia 24 de protocolo Mavlink
    // para usar en Seguidor de Antena o cualquier otro Tracker compatible
    
    #define FILTRA_MAVLINK
    
    [​IMG]

    3-. Modificar RX.h con el siguiente codigo en el lugar que indica la imagen:
    Code:
    #ifdef FILTRA_MAVLINK
       #include "Filtro_Mavlink.h"
    #endif
    
    [​IMG]

    4-. Seguimos modificando RX.h con el siguiente codigo en el lugar que indica la imagen:
    Code:
    //#define SERIAL_BUFSIZE 32
    #define SERIAL_BUFSIZE 45     //******* la sentencia 24 de Mavlink tiene 38 bytes 
    
    [​IMG]

    5-. Seguimos modificando RX.h y sustituimos el procedimiento original checkSerial() con el siguiente codigo en el lugar que indica la imagen:

    Code:
    void checkSerial()
    {
     #ifdef FILTRA_MAVLINK
       Filtro_Sentencia24(&serial_tail, &serial_head, serial_buffer,SERIAL_BUFSIZE);
     #else 
       while (Serial.available() && (((serial_tail + 1) % SERIAL_BUFSIZE) != serial_head)) {
         serial_buffer[serial_tail] = Serial.read();
         serial_tail = (serial_tail + 1) % SERIAL_BUFSIZE;
      }
     #endif  
    }
    
    [​IMG]



    Compilar solo para RX , y cargar solamente al RX, el TX no es necesario cambiarlo.

    Nota: Si en algún momento queremos revertir al estado original, no es preciso borrar el nuevo codigo insertado. Solo es necesario comentar con dos // la sentencia define del archivo OpenLRSng.ino ( //#define FILTRA_MAVLINK) y volver a compilar.



    Si alguien quiere el archivo ya compilado preparado para la versión 3.8.8 se tiene que descargar el archivo adjunto. Es obligatorio que el TX también tenga la misma versión.


    !! Se olvidaba ¡¡¡¡...... aquí conseguiras el fuente del OpenLRSng : https://github.com/openLRSng/openLRSng
     

    Attached Files:

    #236 CIAPU35, Mar 9, 2017
    Last edited: Mar 9, 2017
  37. judasall Miembro Activo

    judasall
    Joined:
    Feb 12, 2009
    Messages:
    1,279
    Likes Received:
    0


    Creo que tienes una pequeña pero muy importante errata, y es que has puesto en uno de los ejemplos FILTRO_MAVLINK y en el resto FILTRA_MAVLINK.
    Pero vamos, que esto es algo que me viene de perlas para lo que yo busco, tu tracker a 3 o 5 hz y no perder alcance.

    P.D. Estoy impaciente esperando que publiques tu otro DIY :tongue2:
     
  38. CIAPU35 Miembro

    CIAPU35
    Joined:
    May 9, 2010
    Messages:
    201
    Likes Received:
    16

    !! No existe ninguna errata ¡¡...... el post es correcto.


    Fíjate en que cuando digo "FILTRO_MAVLINK.H" me estoy refiriendo al nombre del archivo nuevo que hay que crear en la carpeta. Además veras que el nombre del archivo que hay que incluir se refiere a este . #include "Filtro_Mavlink.h"


    En cambio cuando digo "FILTRA_MAVLINK" , me estoy refiriendo a un "DEFINE" dentro del código del programa.


    Como ves, son dos cosas totalmente distintas


    Espero que haya quedado claro...... y si surge alguna duda más, lo comentas e intentaré aclararlo.

    saludos.:smile:
     
  39. Stapelton Nuevo Miembro

    Stapelton
    Joined:
    Aug 21, 2015
    Messages:
    88
    Likes Received:
    0
    Hola de nuevo Ciapu, he tenido el tema aparcado en lo que me llegan algunas cosas que me faltan, mis ultimas noticias es que por fin parecía que funcionaba todo correctamente pero hoy que ya tengo instalada la telemetría con dos módulos 3DR y además de otro modulo para conectarlo al móvil, me he puesto a configurarlo y al conectarlo se pone a dar vueltas indefinidamente parece que la burbuja no detecta el norte, la cambié de posición, la aleje, probé con otra brújula idéntica, con otra placa, otro pic y sigue sin darme el norte, todo parece funcionar menos la brújula.
    Seguiré teniendo algún problema con la programación del PIC, los fuses están idénticos a la última imagen que posteaste.
    Esto es lo que muestra el Configurador, ¿Que estoy haciendo mal?

    Saludos...
     

    Attached Files:

    • A.jpg
      A.jpg
      File size:
      48.6 KB
      Views:
      108
    • B.jpg
      B.jpg
      File size:
      152.3 KB
      Views:
      112
    • Ruido1.jpg
      Ruido1.jpg
      File size:
      104.9 KB
      Views:
      111
  40. Stapelton Nuevo Miembro

    Stapelton
    Joined:
    Aug 21, 2015
    Messages:
    88
    Likes Received:
    0
    La conexión con el dron mediante la telemetría 3dr parece que funciona correctamente.
    ¿Pero qué puede estar pasando con la brújula del seguidor? :confused:
    Saludos...
     

    Attached Files:

    #240 Stapelton, Mar 12, 2017
    Last edited: Mar 12, 2017
  41. CIAPU35 Miembro

    CIAPU35
    Joined:
    May 9, 2010
    Messages:
    201
    Likes Received:
    16

    Deberías darme más datos para poder ayudarte, como por ejemplo :

    ¿ Has calibrado y centrado correctamente el servo Horizontal ?, que por cierto es la primera operación a realizar ( sigue el vídeo de configuración desde Pc 1)
    Mientras realizas esta operación, si seleccionas la opción "servo Horizontal estático" la brújula queda desconectada,(aunque es mejor que la desconectes físicamente del circuito) y si consigues parar el servo moviendo valores, se puede considerar operación terminada.( Ten en cuenta también la inversión según tipo de servo)

    ¿ Has conectado correctamente los hilos Scl y Sda hacia la brújula ?. Para comprobar que la brújula funciona, desconectas el servo horizontal para que no te mueva el aparato; seleccionas en la pestaña de datos y Rs232 activar salida de datos hacia PC ( No uses el botón verde de Forzar entrada datos), ni tampoco uses de momento la telemetría, y girando el aparato a mano, deberías ver que se mueven los grados ( Bruj= xxxx), en los datos de salida.

    Por cierto que en una de tus imágenes he observado que los valores para los ejes X e Y de la brújula dan 0. Esto es muy sintomático de la mala conexión del cableado hacia la brújula.


    Prueba de momento esto que te indico, y reportas resultados.......


    Saludos.
     
  42. Stapelton Nuevo Miembro

    Stapelton
    Joined:
    Aug 21, 2015
    Messages:
    88
    Likes Received:
    0
    Si, lo intento, activo la casilla de Servo horizontal estático y con un valor bajo 1350 puedo detenerlo, el vertical sin problema, pero cuando lo vuelvo a conectar se pone a girar de nuevo como un loco y no encuentra el norte.

    Como comente anteriormente compre dos brújulas, el cableado está bien sda a sda y scl a scl, hoy mismo he probado con una brújula de un gimbal con el mismo resultado.
    Por eso te preguntaba si la programación del pic podía ser la causa, es que no se me ocurre nada mas, los demás compañeros de proyecto parece que no han tenido este problema ni el del pic así que es a lo único a lo puedo asociar.
    Saludos...

    Esa foto es sin pulsar el botón verde de forzar entrada datos, sin telemetría y girando el aparto con la mano.
     

    Attached Files:

    • 111A.jpg
      111A.jpg
      File size:
      152.2 KB
      Views:
      142
    • AA.jpg
      AA.jpg
      File size:
      213 KB
      Views:
      123
  43. CIAPU35 Miembro

    CIAPU35
    Joined:
    May 9, 2010
    Messages:
    201
    Likes Received:
    16

    Evidentemente NO es la causa, puesto que te funciona todo ( LCD, muestra datos en Pc, muestra valores EEprom, etc..........); sobre el funcionamiento del Microchip no hay dudas; o funciona bien o no funciona nada.

    Pero la brújula..........
    Según observo en los datos mostrados del Puerto Comm, veo que el valor de grados de brújula ( Bruj="224"), no varia, a pesar de que la estás moviendo. Esto es síntoma de que el microcontrolador no está leyendo nada de la brújula, ya sea porque tenga algún cable mal (revisa todos los cables incluidos el +(5V) y el - ), o porque el chip de la brújula no funcione.

    Otra prueba: Haz un calibrado estandar, y cuando acabe, lees valores EEprom y reporta los valores devueltos de Offset de ejes X,Y,Z.
     
  44. Stapelton Nuevo Miembro

    Stapelton
    Joined:
    Aug 21, 2015
    Messages:
    88
    Likes Received:
    0
    He revisado por decimonovena vez los cables de las tres brújulas y están correctamente, las pistas del circuito impreso sin contactos ni cortacircuitos, anteriormente probé con otra placa de circuito impreso con otro pic con los mismos síntomas.
    Pongo un video [FONT=&quot]que estoy mareao de tanta vuelta [/FONT] :locos:
    [ame]https://youtu.be/AIxQMgLQQ90[/ame]
     
  45. CIAPU35 Miembro

    CIAPU35
    Joined:
    May 9, 2010
    Messages:
    201
    Likes Received:
    16
    Para empezar..... el centro del servo horizontal lo tienes demasiado desplazado hacia un lado, y por eso te quedas sin recorrido de control hacia el lado de la izquierda. Debes corregirlo moviendo el potenciómetro del servo hacia el centro ( 1500 usg). Puedes utilizar la placa para comprobarlo mientras lo haces ( pon en estático a 1500, y vas moviendo el potenciómetro hasta que se pare el servo) . Al final, ponle una gota de ciano para fijar el potenciómetro.

    [​IMG]



    En la prueba de desconexión del servo horizontal, para mover a mano el aparato, debería darte valores variables de Bruj="xx" tal como ves en la imagen . Estoy moviendo a derecha e izquierda rápidamente.

    [​IMG]


    Cuando te digo que calibres la brújula , no hagas el "calibrado avanzado", haz solo el calibrado estándar , poniendo un 1 en calibrado "hard iron" y grabando.

    Deja pasar 8 sg y relee EEprom. Te debería devolver unos valores parecidos a los de la imagen en los offset de ejes X,Y,Z. ( Por lo menos distintos de 0)

    [​IMG]





    Haz una prueba más: Intercambia los conectores del LCD y de la Brújula en sus posiciones en la Placa. (Es el mismo Bus y es indiferente la posición). Pero prueba por si acaso hay algún fallo en el conector inferior en la placa.( si en esta posición funciona el LCD, entonces conector de placa correcto).



    Y ya por último, ¿ Cuando grabaste el Pic .. el grabador hizo la verificación posterior a la grabación y te dio el OK ???. :blink:
     

    Attached Files:

  46. Stapelton Nuevo Miembro

    Stapelton
    Joined:
    Aug 21, 2015
    Messages:
    88
    Likes Received:
    0
    [ame]https://www.youtube.com/watch?v=UKBdr6GrKv8[/ame]

    Para el servo he utilizado el método de las dos resistencias 2K2 luego modificare alguna de ellas para centrar el valor horizontal, lo tuve con el sistema del otro video pero como estuve con el problema de la brújula, debió de estar mal centrado el servo durante mucho tiempo y se quemo.
    Acabo de hacer otra prueba con el servo horizontal desconectado y girando con la mano no cambia nada.
    Ya intercambie los conectores con el LCD aunque lo tenía ya requetemirado con el tester pero nada, también probé en la salida no usada que también tengo puesto un conector, como ya he dicho he probado con otra placa, otro pic grabado idénticamente el mismo día y hasta cambie en alguna brújula las cables de SDA y SCL por obcecación.
    Respecto a la última pregunta, si me hizo la verificación posterior a la grabación y me dio OK, pero sigo pensando que es tema de la programación, me gustaría probar a grabar el Bootloader con el K150 y con el ds30LoaderGui meter el Seguidor_Antena_1_0_5.hex no sea que al Seguidor_Antena_1_0_5.fix.hex le modifique algo, es lo único que me queda por probar. Por cierto grabe los pic con el Seguidor_Antena_1_0_5.fix.hex sin Bootloader.

    Voy a ponerme con el servo y quizás hasta me anime a programar el pic.
    Saludos...
     
  47. Stapelton Nuevo Miembro

    Stapelton
    Joined:
    Aug 21, 2015
    Messages:
    88
    Likes Received:
    0
    Gracias Ciapu, al final use el otro sistema que pusiste para modificar el servo y lo fije con una gotita de pegamento, ahora está completamente centrado.
    Le metí el Bootloader pero esos mensajes de fuse acojonan, quizás debí dar a no, después de cenar intentare cargar con ds30LoaderGui el Seguidor_Antena_1_0_5.hex.

    [ame]https://youtu.be/1me2PUjmocI[/ame]
     
  48. Stapelton Nuevo Miembro

    Stapelton
    Joined:
    Aug 21, 2015
    Messages:
    88
    Likes Received:
    0
    Le metí el Seguidor_Antena_1_0_5.hex al primer intento, y todo funciona menos la brújula :facepalm:
    Es inexplicable, esto es un caso para Iker Jiménez. :sad:
     

    Attached Files:

    • 20A.jpg
      20A.jpg
      File size:
      177.8 KB
      Views:
      127
    • 55A.jpg
      55A.jpg
      File size:
      155.3 KB
      Views:
      123
  49. CIAPU35 Miembro

    CIAPU35
    Joined:
    May 9, 2010
    Messages:
    201
    Likes Received:
    16
    Mira el mensaje privado que te he enviado...a ver que te parece.........

    saludos.
     
  50. CIAPU35 Miembro

    CIAPU35
    Joined:
    May 9, 2010
    Messages:
    201
    Likes Received:
    16

    Lo que se vé en la Tv mientras grabas el Pic .....¿ es una alegoría de lo que le haras a la placa? .... ponerle un !petardo bien gordo¡¡.. porque ya se lo está mereciendo....:laugh::laugh::laugh::laugh:
     

Share This Page