domingo, 28 de junio de 2020

Arduino NRF24L01 Walkera RC modificación

Muy Buenas a todos y todas las Arduineras!!!

Hace un tiempo dando una vuelta me encontré con este mando de radio control para un ¿Helicoptero? el modelo creo que es el WK-2401 2,4GHz.

No tengo ni idea de sus características y la verdad poco importa... mi interés era el mando en si, los mandos iban bien y tenia posibilidades para ampliar los canales con huecos donde se pueden colocar interruptores en la parte superior y a los lados de la pantalla.

En total me costo 10€ aunque de la web que saque la foto del original lo tienen por 23$ (unos 20€).

Una vez en casa, toda la electrónica fue removida sin problemas, los gimbal iban conectados con un cable a la placa y solo tuve que desconectar.

3 de los 4 canales tienen resorte, es decir vuelven a la posición central y 1 de ellos no, siendo este para aviones y helicópteros ya que mantiene la posición.

Después de quitar la electrónica original le hice un hueco al Arduino NANO y al módulo NRF24L01.


Esquema RC XBOX

El esquema es prácticamente el mismo que he usado para el RC Xbox con algunas modificaciones como pueden ser los pulsadores que los he cambiado por interruptores y los dos pulsadore son para moverse por el menú.

Ademas de 4 interruptores de palanca le he añadido dos pulsadores que serán las teclas "Atras" y "Selección.

La energia es suministrada por una batería de 2 celdas 18650, estas baterías se cargan desde la parte posterior con el interriptor principal en posición OFF.

Así las funciones para el interruptor principal son: ON para uso normal y OFF para apagado o carga de la batería.



Si buscas un poco en internet, veras que tener una buena configuración es imprescindible, pero otros apartados a tener en cuenta son:

  • Aislamiento del módulo NRF24L01
  • Alimentación estable 3.3V
  • Añadir condensador de 47uF lo más cercano a la alimentación del módulo



Adaptador NRF24l01Con esos sencillos puntos veras como mejora el rango de recepción y transmisión.

Otro de los puntos a tener en cuenta es el canal en el que transmitimos, en este caso el 50, ya que, según leí mientras solucionaba problemas de comunicación, los canales más altos daban más problemas (no se hasta que punto sera esto cierto).

Como dato curioso, hubo un día que salí a pleno sol y todo iba fatal, hasta me enfade un poco por que no entendía nada. Al entrar a casa y probar, todo funcionaba bien. No se hasta que punto la radiación solar puede afectar a estos módulos, o si fue algo que toque sin darme cuenta. Bueno yo ahí lo dejo como dato curioso, Ah y cuando digo sol, me refiero a solanero gordo, 38-40ºC...

El programa esta dividido en diferentes archivos para tener un código más limpio y mejor organizado. Aquí está la información sobre como trabajar con pestañas en el Sketch :

  • Walkera_RC24 (Archivo principal)
  • Axis.ino
  • Calibratión.ino
  • Config.h
  • Memory.ino
  • Model.ino
  • Oled.ino

También hace uso de la librería U8Glib para la pantalla oled y usando solo un par de fuentes, ya que son un coladero de memoria.

Se conserva la estructura del mando XboxRC24, pero cambia totalmente la interfaz ya que pasamos de una pantalla LCD a una pantalla oled

Esto hace que haya mychos cambios en la lógica y porsupuesto, dispara el consumo de memoria, almenos en micricontroladores tan justitos como el Arduino NANO.

La configuración del modulo esta en la pestaña Config.h ahí podremos cambiar diferentes parametros del módulo como:.

  • Pines CE y CS
  • Nivel amplificador de potencia (PA)
  • Velocidad de transmisión
  • ACK
  • ACKPAYLOAD
  • delayRF
  • countRF
  • Canal de transmisión (canal50 por defecto)

Otra de las cosas es que se puede ajustar el trim de los canales 1,2,3 y 4, este igual que el mínimo y máximo, también se almacena en la memoria EEprom y se leen al entrar en el modelo.

Seguramente más avanzado cambiare la interfaz ya que es lo que más memoria consume.

Programa para Arduino:

Receptor nRF24L01 Gaz66 desde GitHub

Los módulos nRF24L01 es una muy buena base para hacer proyectos más elaborados con este tipo de módulos, como por ejemplo un mando de Radio Control multifunción o receptores con funciones totalmente personalizadas.

Os dejo enlaces a proyectos realizados con el módulo de radiofrecuencia nRF24L01:

Saludos a todos y todas!!

No hay comentarios :

Publicar un comentario