Conectar una emisora radio control con Arduino


arduino-emisora-rc

¿Qué es una emisora RC?

Una emisora de radio control (RC) es un tipo de mando inalámbrico que, por supuesto, también podemos conectar a un procesador como Arduino para emplearlo como controlador.

Las emisoras de radio control son uno de los controles más habituales que podemos encontrar en el mundo de la electrónica, y son ampliamente empleadas para controlar vehículos por control remoto.

Existe una gran variedad de emisores RC, que varían en el número de canales, resolución y el alcance. Otros factores a tener en cuenta son la calidad de fabricación y los materiales, si incorporan pantalla y su tipo, si disponen de varias configuraciones por software, o incluso si son reprogramables.

La variable principal es el número de canales, que representa el número de variables analógicas que podemos controlar en el receptor. Por ejemplo,

Anuncio:

  • En vehículos terrestres y barcos, que se mueven en un plano horizontal, necesitaremos mínimo 2 canales (aceleración y giro).
  • En un tanque necesitaremos 4 canales (aceleración, giro y dos para la torreta)
  • En un vehículo aéreo como un avión, helicóptero o quadricóptero, necesitaremos mínimo 4 canales (aceleración, y tres ángulos).

Los canales adicionales se emplean para transmitir variables como, por ejemplo, el control de una cámara, del GPS, el cambio de modo de vuelo, desplegar el tren de aterrizaje, o activar alguna luz o dispositivo.

En general, los transmisores normales tienen 6 canales y, ya que es una inversión importante que no haremos frecuentemente, lo recomendable es que no adquiramos un transmisor con un número inferior de canales.

Por el contrario, los transmisores de 9 y 10 canales pueden considerarse casi profesionales y, en general, tienen precios muy superiores y están destinados a vehículos complejos y usuarios experimentados.

Actualmente la mayoría de emisoras operan en una banda de 2.4 Ghz, una frecuencia libre. El alcance puede llegar desde unos cientos de metros hasta algunos kilómetros. La resolución suele variar entre 10bits (1024 niveles) a 12bits (4096 niveles).

Junto con la emisora necesitaremos, lógicamente, un receptor que deberá ser compatible con nuestro mando. En general, el receptor suele adquirirse de forma simultánea con el mando, aunque es posible adquirir más receptores para integrarlos en varios proyectos, reaprovechando el transmisor.

Las emisoras RC son uno de los controles más avanzados que podemos emplear para nuestros proyectos de electrónica, y uno de los de mayor alcance. En general, será uno de los mandos preferidos para vehículos y robots complejos.

Precio

En general, podemos decir que las emisoras RC son controladores avanzados y, por tanto, caros. Existe una gran variedad de rangos de precio que van desde los 20€ a los 1000€.

Un controlador muy habitual es el FlySky FS-i6, que tiene 6 canales de 10bits. Podemos encontrarlo por unos 40€, incluido su receptor FS-iA6, buscando en vendedores internacionales de eBay o AliExpress.

arduino-emisora-rc-componente

En caso de querer comprar el receptor suelto, podemos encontrar el FlySky FS-iA6 o el FS-iA6B por 10€.

arduino-emisora-rc-componente-receptor

A modo de comparación, un podemos encontrar mandos 3 canales por 25€, mientras que los de 10 canales cuestan a partir de 110€. Como hemos dicho, una emisora de 40€, es un buen punto de inicio.

Esquema de conexión

La conexión de un receptor RC con Arduino es realmente sencilla. En la emisora por supuesto, no tenemos que realizar ninguna acción. Únicamente asegurarnos de que tiene pilas, está encendida, y sincronizarla con el receptor con normalidad.

El receptor dispone de de salidas de tipo servo (S = Señal, V = Vcc, G = Gnd), y de una primera fila con los pines de alimentación.

arduino-emisora-rc-funcionamiento

Simplemente alimentamos el módulo Vcc y Gnd del receptor, respectivamente, a 5V y Gnd de Arduino. Por otro lado, conectamos el pin de señal de cada uno de los canales que queramos leer con cualquier entrada digital de Arduino.

arduino-emisora-rc-esquema

La conexión, vista desde Arduino, sería la siguiente.

arduino-emisora-rc-conexion

Ejemplos de código

La señal de salida del receptor es similar a la de un servo. De hecho, esto es así para que en un vehículo el receptor actué directamente sobre servos, sin necesidades de un procesador adicional.

Para leer la señal del receptor desde Arduino, únicamente tenemos que medir el ancho del pulso de cada uno de los canales.

El siguiente ejemplo muestra la lectura de los 6 canales mediante la función PulseIn(), y muestra el valor de cada canal en Arduino.

Si te ha gustado esta entrada y quieres leer más sobre Arduino puedes consultar la sección TUTORIALES DE ARDUINO

Anuncio:

Previous Hasta 32 de servos en Arduino con el controlador USC-32
Next Arduino y mando a distancia de 4 canales 315MHz IC2262
1000
2 Comment threads
0 Thread replies
0 Followers
 
Most reacted comment
Hottest comment thread
2 Comment authors
newest oldest
ASCNAVAL

Hola un saludo! estoy muy interesado en este tema para un proyecto y aprendiendo mucho con tus tutoriales. Mi pregunta es si con lo explicado en este tutorial en concreto y con el modulo ARDUINO UNO puedo multiplicar los servos que puedo poner en cada uno de los canales o por contra si tengo 10 canales en el receptor controlo igualmente 10 canales en ARDUINO. Lo pregunto porque mi intención es que 5 canales de mi emisora RC realicen el control de 2 servos cada uno. Es este el dispositivo adecuado para tal función?…GRACIAS!

JAAM

Hola. Antes de nada muchas gracias por sus tutoriales. Quería hacerle una consulta porque miro y miro en internet y todos los ejemplos que veo de conexiones de un mando rc a Arduino son leyendo el pulso y mostrandolo en el puerto serie, pero no veo ninguno que directamente conecte el mando rc a arduino y mueva un motor dc, no un servo, sino un motor DC, para poder mover por ejemplo un coche RC (ejemplo, yo pueblo la palanca del mando a la izquierda y se active el motor de la rueda derecha ).
Muchas gracias.