Decodificador PPM con F/s y pic

Tema en 'R/C ELECTRÓNICA' iniciado por HMR, 28 Mar 2010.

  1. HMR Miembro

    HMR
    Registrado:
    17 Feb 2009
    Mensajes:
    262
    Me Gusta recibidos:
    0
    Hola a todos. :party:
    Abro este hilo para que aportemos en la construcción de un decodificador PPM con función de F/S para ser acoplado al genial Easy Linx.

    Mi idea es usar un Pic 16f628 que nos de por lo menos 8 canales de salida
    La ventaja del PIC 16f628 es que tiene cristal interno y modulo de comparación y que nos puede ayudar a reducir el circuito con menos componentes externos.:biggrin2:

    19 Abril 2010

    Ya esta en funcionamiento la version 1.0 del deco PPM !!!!!!!! :party::party:

    Les dejo un videito simple con las instrucciones de programación y muestra del funcionamiento.



    Esta nueva versión del programa es para conectar directamente a la salida de pulsos del receptor.

    Componentes necesarios
    Pic16f628
    C1 - 100Uf en linea de alimentacion
    C2 - 100Nf en linea de alimentacion pegado al PIC
    10 resistencias 1,2 Kohm
    Led o buzzer para indicacion de estado
    switch (pulsador)
    Rx con salida de pulso positivo....

    Saludos a todos
    HMR
     

    Adjuntos:

    #1 HMR, 28 Mar 2010
    Última edición: 21 Abr 2010
  2. zotfidjy Miembro

    zotfidjy
    Registrado:
    19 Nov 2007
    Mensajes:
    364
    Me Gusta recibidos:
    0
    Hola HMR, me parece una idea estupenda.

    Yo habia recopilado unos cuantos enlaces interesantes, que puse en el hilo del Easylink.

    Con Pic, pero de 6 canales y failsafe:
    http://www.rcgroups.com/forums/showthread.php?t=298197
    http://homepages.paradise.net.nz/bhabbott/decoder.html

    Otra funcion failsafe con pic es el failsafe de rccam:
    http://www.rc-cam.com/rcfs2.htm

    Con un Atmega:

    http://www.mstar2k.com/index.php?option=com_content&view=category&layout=blog&id=35&Itemid=12
    Este tiene failsafe, decodificador de errores, etc..

    Yo con el codigo no os voy a poder ayudar mucho, pero estare de incansable betatester.
    Saludos y animo.

    PD: hay un failsafe de 8ch, pero la complejidad es excesiva a mi entender:
    http://www.elektor.fr/magazines/200...lti-canaux-pour-modeles-r-c.68383.lynkx?tab=2
     
    #2 zotfidjy, 28 Mar 2010
    Última edición: 29 Mar 2010
  3. Fred Gurú FPV

    Fred
    Registrado:
    26 Jun 2008
    Mensajes:
    3.659
    Me Gusta recibidos:
    1
    Es un proyecto muy interesante :smile:.

    Si puede simplificar, se podría olvidar de la parte decodificadora, y hacer solo un FS de 8 canales que se adaptaría al easylink. Por lo menos es asi que piensava en el principio , para dejarlo sencillo y fiable.
    Pero alfinal quisas si el 628 es rápido bastante para hacer todo de una manera segura podría ser una solución...

    Saludos!
     
  4. Mikel Miembro Activo

    Mikel
    Registrado:
    11 Ene 2009
    Mensajes:
    1.565
    Me Gusta recibidos:
    1
    Si hay algo que pueda hacer contar conmigo, aunque me temo que solo pueda daros animos.
    Un FS de 8 canales que se adaptara al easylink seria magnífico, y si se pudiera implementar un vuelta a casa. . . . . .ya me quedaria sin adjetivos.:ansioso:
     
  5. HMR Miembro

    HMR
    Registrado:
    17 Feb 2009
    Mensajes:
    262
    Me Gusta recibidos:
    0
    Hola a todos
    No creo que de la capacidad del PIC para un retorno a casa Mikel
    Pero de a poquito vamos a hacer que nos de la función F/s .

    Estuve leyendo un poco de por aquí y por allá.
    Esta muy buena la info. de http://homepages.paradise.net.nz/bhabbott/decoder.html que has encontrado zotfidjy.
    Lastima que es un rollo ampliarlo a 8 canales. Según entendí en el foro hablan de que no queda tiempo de proceso para ampliar los canales.

    Pregunta para los easy Link´ers. El modulo de Radiometrix ya tiene una salida con los pulsos filtrados ??
    O se utiliza la salida de audio y luego se pasa por un comparador para discriminar los pulsos ???
    Pregunto esto, pues el PIC tiene una entrada de modulo comparador que se podría utilizar para tal fin.
    Si los pulsos están filtrados se puede utilizar el modulo CCP del PIC para medir los pulsos y representarlo inmediatamente en las salidas.
    Además implementar funciones de registro de pulso para el F/s en la memoria del PIC, etc.
     
  6. ertopogigio Maestro FPV

    ertopogigio
    Registrado:
    10 Abr 2007
    Mensajes:
    2.384
    Me Gusta recibidos:
    0
    Tiene una salida específica de la trama de pulsos (RXD)
    que vá al IC Cd4015 además de AF-out y RSSI.
     

    Adjuntos:

  7. HMR Miembro

    HMR
    Registrado:
    17 Feb 2009
    Mensajes:
    262
    Me Gusta recibidos:
    0

    Excelente ertopogigio

    Ya he programado la parte que mide el ancho de los pulsos entrantes PPM con un modulo CCP del PIC. Ahora me falta tomar estos valores y separarlos en canales del 1 al 8.

    Buscando algo de info. sobre PPM/PCM encontré la página de un conversor USB hecho con PIC.
    En la página se encuentran todos los datos para su construcción más una sorpresa.
    Los constructores del desarrollo han hecho la ingeniería reversa de la modulación PCM 1024 "futaba" entre otras cosas.
    Wauuu. Que bueno estaría usar esto como ejemplo para construirnos un deco PCM !!!!!
    http://alessioandrea.altervista.org/rcjoyng2.html

    Según leí en el código, para modo PCM decodifica 8 canales mas 2 on/off.
    Realmente a mi me sobrepasa. Seguramente por el foro habrá algún genio de los PIC que tome la parte del de PCM y la vuelque a salidas para servos.

    Saludos
    HMR
     
  8. ibizar Miembro

    ibizar
    Registrado:
    8 Jun 2009
    Mensajes:
    173
    Me Gusta recibidos:
    0
    buenas

    Siempre he querido acer esto ...... valla ya me compre la emisora wifly jejeje.

    pero ayudare en lo que pueda....

    saludos
     
  9. fbforos Miembro

    fbforos
    Registrado:
    1 Nov 2008
    Mensajes:
    984
    Me Gusta recibidos:
    0
    Creo que te estas equivocando de camino. No vas a tener tiempo de proceso
     
  10. HMR Miembro

    HMR
    Registrado:
    17 Feb 2009
    Mensajes:
    262
    Me Gusta recibidos:
    0
    Y tienes razón fbforos. Pero me sirvió como experiencia para desasnarme con asembler.:confused:
    Descarte el uso del modulo CCP por la cantidad de pasos que se necesitan para medir una señal de pulso variable.
    Ahora estoy probando usar una entrada digital para leer el tren PPM y representar el pulso de un canal en su salida en el mismo momento
    Vamos a ver si en estos días me hago un tiempito, saco algo en limpio como para publicar el código y que podamos mejorarlo

    Saludos a todos
    HMR
     
  11. fbforos Miembro

    fbforos
    Registrado:
    1 Nov 2008
    Mensajes:
    984
    Me Gusta recibidos:
    0
    El modulo CCP no es el mas adecuado, pero no solo es eso, tal y como lo cuentas no tiene nada que ver, el problema esta en que si medimos todos los pulsos y luego queremos generarlos, estamos de nuevo en tiempo de lectura de pulsos y el micro aunque uses las interrupciones no puede hacer dos tareas que son criticas con el tiempo a la vez.

    En el soft del HTWM+ tienes el código para hacerlo en C.

    El assembler es muy bonito para pequeñas cosas o para código que controla procesos críticos con el tiempo :eek: . El C tiene muchas ventajas y además puedes escribir la parte crítica en assembler.
     
    #11 fbforos, 8 Abr 2010
    Última edición: 8 Abr 2010
  12. Fred Gurú FPV

    Fred
    Registrado:
    26 Jun 2008
    Mensajes:
    3.659
    Me Gusta recibidos:
    1
    Por lo que entiendo entonces lo que vas hacer es el faislsafe de 4 canales solo, y se usará el easylink para decodificar el PPM ?
     
  13. fbforos Miembro

    fbforos
    Registrado:
    1 Nov 2008
    Mensajes:
    984
    Me Gusta recibidos:
    0
    Insertar CODE, HTML o PHP:
    Por lo que entiendo entonces lo que vas hacer es el faislsafe de 4  canales solo, y se usará el easylink para decodificar el PPM ? 	
    Fred, aqui nadie ha dicho que no se pueda hacer, la realidad es que no es complejo, lo único que le dije a HMR es que no iba por buen camino
     
  14. HMR Miembro

    HMR
    Registrado:
    17 Feb 2009
    Mensajes:
    262
    Me Gusta recibidos:
    0
    Fred, fbforos
    Estoy trabajando para obtener en principio la decodificacion de la trama PPM.
    En asembler aunque me cueste sudor, es con lo que puedo lidiar por el momento.
    No es simple para mi, pero si se pueden decodificar los canales con un ic 4017 o 4015 por que no con un PIC. Mas teniendo esta primera parte funcionando estaremos mas cerca de agregar el F/s.

    En efecto tuve un grandes errores al interpretar la trama PPM. Tome cada pulso completo de la trama como tiempo de canal.
    En realidad el tiempo de canal sale de por ejemplo el primer flanco ascendente hasta el siguiente flanco ascendente.
    Y también es imposible generar la secuencia de 8 pulsos de canales dentro del tiempo de sincronismo. No terminaría de generar los 8 pulsos de canal que tendría dentro parte del próximo tren PPM. Con menos canales si se prodia

    Corrígeme fbforos si le estoy pifiando en esto !!!

    Saludos
    HMR
     

    Adjuntos:

  15. fbforos Miembro

    fbforos
    Registrado:
    1 Nov 2008
    Mensajes:
    984
    Me Gusta recibidos:
    0
    Aunque no has publicado el codigo del ampliador de recorrido y deberías hacerlo, no por mi, que estoy terminando el mio programable con failsafe e inversor y que publicaré la semana que viene, sino por el resto de compañeros que quieren cacharrear y necesitan más ayuda que nosotros.

    Hacerlo con un pic es sumamente facil y además puedes hacer un failsafe de hasta 10 canales.

    ME llama mi chica a cenar que es su cumple. Tan pronto como acabe la cena os lo explico
     
  16. Fred Gurú FPV

    Fred
    Registrado:
    26 Jun 2008
    Mensajes:
    3.659
    Me Gusta recibidos:
    1
    Gracias,
    En mi opinión yo vería bien un failsafe de 4 o mas canales separado.Asi seria opcional, evitaría desmontar los easylink que tienen diseño comprobado - al cuesto de un poco más peso y tamaño...
    Saludos,
    Fred.
     
  17. fbforos Miembro

    fbforos
    Registrado:
    1 Nov 2008
    Mensajes:
    984
    Me Gusta recibidos:
    0
    Bueno manos a la obra.

    Comenzamos por la selección del PIC. El 628 estaría bien para usar un reloj externo de al menos 8mhz. Si no quieres el reloj externo y quieres usar el interno Esto te permite aumentar la precisión cuando utilizas los timer. El 16F88 es una buena inversión, tiene reloj interno a 8 mhz. mismo numero de i/o que el 628.
    Aunque para las pruebas te casi igual, te recomiendo más que usar un cristal externo el usar 16f88 a 8mhz. (se produce un conteo cada 0,5us en vez de cada us.

    Bueno y ahora que tenemos el micro vamos a ver que tenemos que hacer.

    medir intervalos y luego generar la trama ¡¡¡no!!!. Si te miras el programa del HTWM+ que tenemos publicado la versión NOTRAINER lo que hace es utilizar la interruoción externa que se activa por cambio de alto(H) a Bajo (L) o viceversa L To H.

    Que tienes que hacer conectar la trama de entrada al pin RB0/INT. Cada vez que cambie el pulso de entrada se te activa la interrupción por cambio en el pin RB0, inicialmente programa que se active cuando cambie de L to H.

    Ahora ya eres capaz de detectar que hay pulso de entrada.

    Necesitamos un timer de 16bit para poder contar tiempo. No nos hacen falta interrupciones cada vez que entramos en la interrupcion RBO/INT
    leemos el timer1 y sabemos cuanto tiempo paso desde que lo pusismos a 0:eek:hmy: . Y cuando lo ponemos a 0 inmediatamente después de leerlo.

    después de ponerlo a cero, cambiamos el estado del pin de salida que toque el que esta activo en este momento lo ponemos a 0 y el siguiente a 1

    activamos el canal 1 desactivamos el 0 y asi sucesivamente hasta el final.

    Si queremos un FS lo que hacemos es guardar en una matriz los valores de los 8 canales cuando activemos un pulsador (luego los guardamos en la eeprom para poder leerlos cada vez que encendamos el micro).

    Todo esto tenemos que sincronizarlo y empezar cuando el canal 1 llegue. Como se hace, pues muy facil.
    Cuando el timer1 te diga que ha contado mas de 20000 pulsos a 8 mhz o en tu caso 10000 pulsos a 4mhz (10.000*1us= 10ms) estonces ese es el momento de activar el canal uno y a partir de este punto no hay mas que ir activando y desactivando las salidad.

    Como puedes observar es sumamente fácil y con un pic se puede implementar un FS sin problemas. Si tienes dudas pregunta que es la única manera de aprender:ansioso:
     
  18. fbforos Miembro

    fbforos
    Registrado:
    1 Nov 2008
    Mensajes:
    984
    Me Gusta recibidos:
    0
    FRED,

    siento decirte que lo único que cambia es el código, el circuito es el mismo.

    ¿Pregunta de ignorante?
    (definición de Ignorante: aquel que aun sabiendo como encontrar algo no lo busca)

    ¿El 4017/4018 ya esta incluido en el módulo o hay que ponerlo aparte?

    Si hay que ponerlo aparte realmente esta es la solución
     
  19. Fred Gurú FPV

    Fred
    Registrado:
    26 Jun 2008
    Mensajes:
    3.659
    Me Gusta recibidos:
    1
    El 4015 hace ya hace parte del easylink,(es el decodificador PPM) por eso mi mensaje precedente :smile:
    Es que si se hace el decodificador con el pic , sera necesario hacer nuevo PCB. Para nuevo proyecto perfecto, pero para los que ya tienen un easylink :sad:
     
  20. fbforos Miembro

    fbforos
    Registrado:
    1 Nov 2008
    Mensajes:
    984
    Me Gusta recibidos:
    0
    Si quieres tener un FS necesitas:
    - un circuito que lea el tren PPM,
    - que sea capaz de decodificarlo y almacenar el valor que queremos tener en cada canal cuando tengamos un FS
    - que genere el tren PPM que tenemos almacenado cuando tengamos FS
    - que deje pasar el tren cuando no tenfamos FS

    habria que colocarlo justo a la entrada del 4018/4017. Se podría hacer con un 12F683.

    Pero claro serían 2 proyectos independientes
     
  21. HMR Miembro

    HMR
    Registrado:
    17 Feb 2009
    Mensajes:
    262
    Me Gusta recibidos:
    0
    Hola a todos.
    Es para comentarles que ya esta en marcha la versión preliminar del decodificador PPM y F/S con pic 16f628. En simulador esta funcionando 10 puntos pero falta probar en el pic
    Además de decodificar los 8 canales de la trama a salidas independientes para cada servo, he logrado adicionar un pin de salida con el tren de pulsos PPM. Cuenta con función Hold y F/s. Led de status. Switch de programación para F/s

    La función Hold se activa cuando se pierden 1 tramas PPM y la siguiente no entra en tiempo generando en la salida ppm y servos el tren de pulso con el último valor bueno recibido.
    Función F/s se altiva si después de 30 tramas (se puede modificar) en modo Hold no se restaura la señal PPM de entrada. Se leen los valores guardados por previa programación de la memoria y se continúa generando en las salidas señal PPM y señal a los servos hasta que se agote la batería. Jejeje


    Como comento Fred, hay ya en funcionamiento varios Easy Link que cuentan con el deco. Pues solo tendrían que intercalar el pic entre el Rx y el deco para contar con la función hold y F/s gracias a que cuenta con salida PPM.
    El pic no necesita cristal ya que usa el reloj interno. Solo hará falta una resistencia Pull Down y el condensador de filtro para mantener la estabilidad del pic.
    Esta primera versión tiene compatibilidad con la trama PPM generada por radios Futaba, sin embargo tengo pensado hacer que por programación reconozca los otros tipos de trama PPM.
    El Led de estado indica
    *Al arrancar
    Dos destellos modo Rx (arranque normal)
    Tres destellos modo programar F/s (al prender el Rx mantenemos pulsado el Switch de programación)
    Destellos cortos al grabar la posición de canales a la memoria permanente.
    *Si se encuentra trabajando en modo Rx
    Condición normal = apagado
    Función Hold o F/s destellos cortos

    Para programar el F/s debemos arrancar el rx con el botón de programación pulsado. Además debemos tener el Radio Tx encendido y llegar con buena señal al Rx.
    Notaremos unos destellos en el Led indicador.
    Soltamos el botón de programación antes de que los destellos terminen. Ya estamos en modo programación.
    El Rx se comporta en forma normal y podemos mover con los sticks del Tx los servos a la posición deseada ante un F/S.
    En esa condición pulsamos el botón de programación y el led de estado nos dará unos flashes cortos indicando que la programación ha sido correcta.
    El Rx retorna a operación normal y tenemos registradas permanentemente las posiciones de nuestros servos.


    Les dejo el diagrama propuesto y el programa compilado para quien quiera ir haciendo pruebas. :biggrin2:
     

    Adjuntos:

    • PPMRx2.JPG
      PPMRx2.JPG
      Tamaño de archivo:
      103 KB
      Visitas:
      397
    • PPMrx2.HEX
      Tamaño de archivo:
      7,8 KB
      Visitas:
      212
    #21 HMR, 14 Abr 2010
    Última edición: 15 Abr 2010
  22. Fred Gurú FPV

    Fred
    Registrado:
    26 Jun 2008
    Mensajes:
    3.659
    Me Gusta recibidos:
    1
    Estupendo HMR!!
    Muchas gracias!.
    Voy hacer un PCB para probar.
    Pero en este caso, como recebe y decodifica la trama PPM, sera mejor hacer nuevo PCB del RX completo.
    Pero primero tengo que acabar otro PCB de un proyecto .

    Saludos!
     
  23. zotfidjy Miembro

    zotfidjy
    Registrado:
    19 Nov 2007
    Mensajes:
    364
    Me Gusta recibidos:
    0
    Muy Bueno HMR!! que poco has tardado. Muchas gracias por tu esfuerzo, me da pena no saber mas de como programar....
    Gracias a gente como tu esto avanza! Saludos y quedo a la espera de la placa de Fred, hoy mismo voy a ver si tienen el pic en la tienda de electronica...(una odisea...jeje)
    Gracias a todos por vuestras aportaciones!
    Telmo
     
  24. JuanTrillo Gurú FPV

    JuanTrillo
    Registrado:
    21 Sep 2007
    Mensajes:
    5.285
    Me Gusta recibidos:
    0
    Genial HMR. Tengo parado el estreno del easylink a falta de buscarle un FS. Habia pensado destripar un corona comprado por error en 36 Mhz pero tu solucion me gusta mas.

    Gracias por el aporte.

    Saludos
    JT
     
  25. ertopogigio Maestro FPV

    ertopogigio
    Registrado:
    10 Abr 2007
    Mensajes:
    2.384
    Me Gusta recibidos:
    0
    Estupendo HMR, es el complemento ideal para el EasyLink. Una pregunta, se puede utilizar el pic 16f629 para este decodificador?

    Salu2.


    EDITO: Ya veo que no.
     
    #25 ertopogigio, 16 Abr 2010
    Última edición: 16 Abr 2010
  26. HMR Miembro

    HMR
    Registrado:
    17 Feb 2009
    Mensajes:
    262
    Me Gusta recibidos:
    0

    Hola ertopogigio
    He buscado el 16f629 :confused: para verificar la compatibilidad con el 16f628 o 16f628a y no le he encontrado ni en Microchip.

    No te estarás refiriendo a PIC12f629 ?


    Les comento que ya he logrado hacer funcionar el deco con pic 16f628 en el banco de pruebas. Jijijiji
    Le he conectado la salida PPM de un viejo Rx al pic y he logrado que funcionen los servos sin problemas.
    Es recomendable adicionar una resistencia de 1,2 a 2,2 K entre la salida de cada canal del pic y los servos.
    Los movimientos en los servos lo he notado muy suaves.
    He programado en la memoria la posición de servos para el F/s y al apagar el Tx en momentos funciona bien, tomando los servos la actitud programada.
    En otros momentos no lo hace y todavía sigo investigando por que......
    Con paciencia iré puliendo estos detalles .......

    Si logran ponerle en marcha me comentan sus experiencias :biggrin2:

    Saludos
    HMR
     
  27. Fred Gurú FPV

    Fred
    Registrado:
    26 Jun 2008
    Mensajes:
    3.659
    Me Gusta recibidos:
    1
    HolaHMR,
    Hay un pequeño error en el esquema, el pic no tiene alimentación :smile:
     
  28. HMR Miembro

    HMR
    Registrado:
    17 Feb 2009
    Mensajes:
    262
    Me Gusta recibidos:
    0
    Hea...:eek: Es que es un PIC magico. Se auto alimenta !!!! :tongue2:
    Fuera de broma, el esquema es copia del simulador que utilizo y ya considera el Ic como alimentado a 5vcc.

    Pin5=Grd
    Pin14= 2,5 a 5,5 Vcc
     

    Adjuntos:

    • 16f628.JPG
      16f628.JPG
      Tamaño de archivo:
      19,1 KB
      Visitas:
      138
  29. ertopogigio Maestro FPV

    ertopogigio
    Registrado:
    10 Abr 2007
    Mensajes:
    2.384
    Me Gusta recibidos:
    0
    Si, así es. Por eso edité el post, me confundí en la referencia del IC.

    Un saludo maestro:smile:
     
  30. HMR Miembro

    HMR
    Registrado:
    17 Feb 2009
    Mensajes:
    262
    Me Gusta recibidos:
    0
    Hola a todos.
    Es para presentarles el deco con pic, ya en funcionamiento. :biggrin2::biggrin2:
    Logros de un fin de semana sin poder volar por las inclemencias climatologicas de la zona. Juas:eek:
    He realizado algunos ajustes en la programación que anteriormente he cargado.
    Básicamente depure los errores que el simulador no me acusaba ya que he montado el circuito con los servos y en funcionamiento real detecte algunos detalles.
    He agregado al circuito unas resistencias de 1,2k a cada canal de salida del PIC hacia los servos para no quemar nada ante una falla de conexionado.
    Les dejo un videito simple con las instrucciones de programación y muestra del funcionamiento.



    Y la nueva versión del programa para conectar directamente a la salida de pulsos del receptor
     

    Adjuntos:

  31. Fred Gurú FPV

    Fred
    Registrado:
    26 Jun 2008
    Mensajes:
    3.659
    Me Gusta recibidos:
    1
    Hola HMR,
    Me ha pasado despercebido este ultimo post, entonces esta finalizado y aprobado el failsafe ?
    Podrias poner el esquema de las version FS sola ?

    Gracias!
    un saludo.
     
  32. HMR Miembro

    HMR
    Registrado:
    17 Feb 2009
    Mensajes:
    262
    Me Gusta recibidos:
    0
    Hola a todos

    Fred. En el primer post del hilo he dejado el esquema. Lo copio aquí para que este a mano.

    Para utilizar solo la parte de F/s; Tren PPM de entrada pin 6 del pic y Ppm de salida con F/S pin 18 del pic.

    Saludos
    HMR
     

    Adjuntos:

  33. zotfidjy Miembro

    zotfidjy
    Registrado:
    19 Nov 2007
    Mensajes:
    364
    Me Gusta recibidos:
    0
    Hola a todos, he estado trabajando en una del decodificador con failsafe para el Easylink.
    He optado por la opcion todo en una placa. En cuanto tenga tiempo me pondre con la placa para añadir al easylink.
    Ha quedado pequeña, de 45.5x33mm con el radiometrix soldado en la parte de abajo y plegado sobre la placa. Todo componentes normales en una cara. Falta poner el plano de tierra, pero eso prefiero hacerlo directamente sobre la placa, con rotulador.

    Se aceptan todo tipo de cambios, modificaciones, mejoras y correcciones!

    Atencion:
    Esta sin probar, aun no he podido hacerla. Si alguien puede revisarla se lo agradeceria. (la he revisado varias veces, pero ya se sabe que es mas facil que otros encuentren tus errores jeje)

    Bueno aqui queda, espero que sea de utilidad y asi contribuir un poco. Saludos
     

    Adjuntos:

  34. HMR Miembro

    HMR
    Registrado:
    17 Feb 2009
    Mensajes:
    262
    Me Gusta recibidos:
    0

    Grande zotfidjy :party:
    Muchas gracias por el aporte !!!! A quedado espectacular la placa !!!!

    Yo sigo a la espera del modulo Tx de 400mhz para poder probar el sistema de largo alcance.

    Uds. me cuentan como les esta funcionando el deco y si hay que modificar algo.

    Saludos
    HMR
     
  35. Fred Gurú FPV

    Fred
    Registrado:
    26 Jun 2008
    Mensajes:
    3.659
    Me Gusta recibidos:
    1
    Me parece bien tu PCB zotfidji :smile:

    Has puesto un condensador C1 entra la entrada PPM y las masa ?

    Estoy a finalizar un PCB con las resistencias en SMD,(se puede cambiar por normales sin dificuldade), del tamaño del otro.Se podria hacer más pequeño, pero no veo el interés, ya que el modulo radiometrix determina el tamaño.
    Luego que lo tengo a funcionar lo pongo aqui.

    Saludos!
     
    #35 Fred, 10 May 2010
    Última edición: 11 May 2010
  36. zotfidjy Miembro

    zotfidjy
    Registrado:
    19 Nov 2007
    Mensajes:
    364
    Me Gusta recibidos:
    0
    Jeje pues si, se ha colado el condensador.... la idea era ponerlo entre masa y Rssi, como apunto un compañero, para estabilizar las lecturas. Yo no tenia problemas pero era para que quedara ya preparada para todos. Me gusta tu placa, como siempre el maestro...

    Me puedes mandar el archivo? Gracias
    Saludos
     
  37. fbforos Miembro

    fbforos
    Registrado:
    1 Nov 2008
    Mensajes:
    984
    Me Gusta recibidos:
    0
    perdonad por mi ignorancia, pero no debería llevar una resistencia antes del condensador?
     
  38. Fred Gurú FPV

    Fred
    Registrado:
    26 Jun 2008
    Mensajes:
    3.659
    Me Gusta recibidos:
    1
    Si es para estabilizar el RSSI no necesita resistencia.

    Aqui esta el PCB, con algunos cambios, pero aún no probado.
     
    #38 Fred, 11 May 2010
    Última edición: 11 May 2010
  39. Fred Gurú FPV

    Fred
    Registrado:
    26 Jun 2008
    Mensajes:
    3.659
    Me Gusta recibidos:
    1
    Corregido un error con el pulsador :mad:
    Aquí la versión testada.(Voy a borrar las otras todas para evitar confusiones.)

    Pero por alguna razón no me funciona el FS: pulsando el botón enciendo el RX con emisora encendida tambéns, pongo los sticks en la posición FS y pulso e botón.Parpadea el led 3 o 4 veces , pero si apago la emisora se vuelven locos los servos.:confused:
    El funcionamiento normal de los servos parece bueno.
    puede ser que el nivel de salida del radiometrix mismo sin señal sea damasiado alto y que el pic lo toma por PPM ?

    Bueno esta comprobado que solo cuando pongo la salida del radiometrix a masa se activa el FS :sad:
     

    Adjuntos:

    #39 Fred, 11 May 2010
    Última edición: 11 May 2010
  40. zotfidjy Miembro

    zotfidjy
    Registrado:
    19 Nov 2007
    Mensajes:
    364
    Me Gusta recibidos:
    0
    Ummm eso no es bueno....
    Si es que la salida es demasiado alta, se podria poner una resistencia entre la señal ppm de salida del radiometrix y masa, con lo cual le bajariamos la intensidad (Creo...)
    No se si en el programa se podria cambiar algo para ajustar el nivel de deteccion.

    HMR podrias decirme a que voltaje sale la trama ppm del receptor que usas para las pruebas? y cual es el metodo que utiliza el programa del pic para detectar cuando entra en Failsafe? muchas gracias
     
  41. Fred Gurú FPV

    Fred
    Registrado:
    26 Jun 2008
    Mensajes:
    3.659
    Me Gusta recibidos:
    1
    Lo he probado con resistencias de 1k, 10k y 100k y no funciona. De cualquier manera no era una solución muy buna:Lo que me preocupa es que si hace eso quiere decir que no decodifica realmente el PPM para verificar la validad de la trama, pero si detecta niveles de señales??
     
  42. HMR Miembro

    HMR
    Registrado:
    17 Feb 2009
    Mensajes:
    262
    Me Gusta recibidos:
    0
    Hola a todos
    zotfidjy Fred

    La detección de error de trama PPM en el programa tiene dos pasos.
    El primero es por excesos de tiempo contando un pulso. Si es mayor a 2,2 ms o menor a 0,5ms lo descarta y coloca a la salida correspondiente el valor del último valido. Si esto sucede más de 5 veces seguidas pasa a F/S

    El segundo es por 0Vcc o por debajo del umbral de disparo del pin de la entrada. No hay interrupción del micro y si se mantiene esta condición pasa a Fs.

    Uds. podrían verificar con un Oscilo, si al apagar el Tx , la salida del radiometrix continua emitiendo ruido por el pin data ?. No debería

    El Rx que utilice para realizar las pruebas tiene su salida a 0Vcc cuando no hay Tx. Es decir silencia el canal por squelch.
    Cuando hay señal de tx el tren de pulsos es de 0 a Vbat.

    Si radiometrix no silencia el pin data por RSSi debajo del umbral de Rx, tendré que modificar algunas cosillas en el programa para detectar un estado de F/s.

    Saludos
    HMR
     
  43. Fred Gurú FPV

    Fred
    Registrado:
    26 Jun 2008
    Mensajes:
    3.659
    Me Gusta recibidos:
    1
    Hola HMR,

    Estaba mismo haciendo pruebas y el radiometrix sin señal emite señal aleatorio de Vcc :mad:, asi que el FS siempre debera encontrar el señal que "espera"...
    Pienso que debera asumir el ruido de entrada como siendo señal.

    Gracias!
    saludos,
    Fred.
     
  44. zotfidjy Miembro

    zotfidjy
    Registrado:
    19 Nov 2007
    Mensajes:
    364
    Me Gusta recibidos:
    0
    Buenas
    Tambien se podria, ya que disponemos de señal Rssi directa del radiometrix, hacer que el pic detecte cuando el voltaje de salida esta por encima de 0v, y que dispare el failsafe cuando este llegue a 0v durante un tiempo X preestablecido.
    Pero claro eso contando que el pic tenga entradas libres, que sea factible, y que HMR tenga tiempo y ganas de hacerlo... a mi la programacion por ahora me supera, estoy en pañales aun.
    Saludos y gracias
     
  45. HMR Miembro

    HMR
    Registrado:
    17 Feb 2009
    Mensajes:
    262
    Me Gusta recibidos:
    0

    Hola a todos

    Que macana con la salida de pin data del radiometrix.
    Yo consideraba que como todo receptor silencia su salida al no tener buen nivel de Rssi, este modulo funcionaria de la misma manera.
    Mirando el diagrama de bloques del rx2a el data slicer no tiene silenciamiento :mad:

    Les cuento que estuve haciendo algunas pruebas con los comparadores analógicos que trae disponible el pic 16f628.

    Les propongo modificar la programación del micro para que a través del comparador se detecte el umbral de RSSI.
    Si el Rssi esta por debajo de un umbral que ajustamos a través de un preset o resistencia variable; podríamos pasar a F/s de forma segura.

    En fin es hacer en el pic, lo que el modulo radiometrix no trae en su lógica.

    Voy cocinando el programita y vemos que sale. Jeje

    Saludos
    HMR

     

    Adjuntos:

  46. Fred Gurú FPV

    Fred
    Registrado:
    26 Jun 2008
    Mensajes:
    3.659
    Me Gusta recibidos:
    1
    Seria una solución usar el RSSI, aunque un poco dificil de calibrar.Basicamente construir el squelch que el radiometrix no tiene.
    Estuve mirando un receptor Multiplex y hay 2 señales que llegan al atmega, uno es el pulso PPM pero el otro puede que sea el RSSI.

    Gracias HMR por tu trabajo.
     
  47. HMR Miembro

    HMR
    Registrado:
    17 Feb 2009
    Mensajes:
    262
    Me Gusta recibidos:
    0
    Hola a todos
    Fred , zotfidjy Les tengo novedades

    He logrado incorporar un comparador al programa del pic !!!!

    Para este cometido he tenido que desplazar la salida PPM Out al pin 17 (RA0)

    El comparador utiliza las entradas Pin1 (RA2/ref) como entrada de tensión de referencia y Pin 18 (Ra1) como entrada de RSSI.

    Para la tensión de referencia se deberá generar un voltaje estabilizado con un zener o diodo 1n4141 + una resistencia a Vcc.
    Esta tensión es el punto de partida del comparador y será introducida por el pin 1. Tendremos que colocar entre el pin 1 y masa (Grd) un condensador de unos 100Nf para eliminar posibles ruidos a la entrada del pic.

    Ahora el modulo Radiometrix dice en su hoja de datos que:
    The output on pin 3 of the module has a standing DC bias of 0.15V-0.45V (0.25V typ.) with no signal, rising to 0.9-1.3V (1.15V typ.) at maximum indication.

    Entonces para la referencia necesitamos una tensión de 0,50v como para hacer las pruebas.

    Este valor de tensión nos determina la transición.

    En el pin 18 introducimos la tensión de Rssi.

    Si el Rssi es mayor a Vref el deco opera normal.
    Si El Rssi es menor a Vref el deco pasa a F/s después de 50 ciclos de programa.

    He dejado el pin 16 (RA7) como salida del comparador.
    En este pin podemos colocar un led con su resistencia.
    En alto nos indica buena señal de RSSi.
    En bajo no hay señal !!!!!

    Por ahora solo lo he probado en simulador.
    Esta noche le hecho mano al soldador y vemos que hace en la vida real !!!!!


    Les dejo el programita por si pueden ir probando

    Saludos
    HMR
     

    Adjuntos:

    #47 HMR, 11 May 2010
    Última edición: 12 May 2010
  48. Fred Gurú FPV

    Fred
    Registrado:
    26 Jun 2008
    Mensajes:
    3.659
    Me Gusta recibidos:
    1
    Estupendo HMR,

    Con un diodo 4148 tenemos una referencia de 0.6-0.7V, que seria RSSI a 50% mas o menos.

    (no es importante pero he cambiando la resistencia R2 de 1K para 10K)

    Saludos!
     
  49. Fred Gurú FPV

    Fred
    Registrado:
    26 Jun 2008
    Mensajes:
    3.659
    Me Gusta recibidos:
    1
    He logrado poner el Multiplex a funcionar con la salida del radiometrix, asi tengo 9 canales con FS .:smile:
    Este RX tiene duplo sistema, por PPM y RSSI.Desactivé el RSSI poniendo a masa y funciona perfecto.
    Disculpa si es algo OT ...
     
  50. HMR Miembro

    HMR
    Registrado:
    17 Feb 2009
    Mensajes:
    262
    Me Gusta recibidos:
    0
    Perfecto Fred
    Mejor R2 con 10K.
    Tienes razón. Yo puse 1n4141 por confusión. Quise decir 1n4148
    Si intercalas un preset entre Vref - Pin1 - Grd podrás regular fino el corte del comparador.

    Echas a funcionar el deco, Le calibras el F/s con la radio encendida, luego apagas la radio y calibras el preset hasta que quede la salida del pin 16 en 0Vcc.


    Me alegra que funcione el Rx Multiplex con el modulo Radiometrix. !!!!!
    CarlosDMA ha hecho funcionar un Rx Corona de la misma manera.



    Saludos
    HMR
     

Compartir esta página