» Electrónica » Arduino »Equipos de radio control en Arduino

Equipo de radio control en Arduino



Este artículo analiza la fabricación de equipos de radio control proporcionales basados ​​en placas. Arduino. Una característica interesante del proyecto es que el equipo se concibió como una alternativa al equipo "adulto", pero que usted mismo puede hacer. Hay teclas de ajuste en el transmisor, lo cual es importante para el control, por ejemplo modelos En las aeronaves, el transmisor también está equipado con una pequeña pantalla con LED orgánicos, que muestra información básica sobre el funcionamiento del transmisor. El equipo está diseñado para 6 canales, 4 proporcionales y 2 discretos. El autor también sentó las bases para la futura adición de dos canales proporcionales más, se agregaron 2 potenciómetros al caso, pero en este momento no están involucrados. Sin embargo, esto es suficiente para controlar el modelo de un avión, barco o automóvil, y los canales discretos le permitirán controlar la carga adicional, por ejemplo, la inclusión de faros, luces de cubierta, luces de navegación o incluso lanzar pequeños misiles. El equipo tiene dos modos de control: lineal y exponencial.




Para el transmisor necesitarás:

1 x Arduino NANO / UNO / ProMini
1 x placa de protección BMS para tres latas de iones de litio
1 x conector de 5,5 x 2,1 mm
1 x Step Up DC / DC Converter XL6009
1 x convertidor reductor pequeño LM2596 (hablaré sobre esto por separado)
3 x 18650:
2 x joysticks JH-D202X (vendido en Ali)
2 x interruptor de palanca
1 x pantalla OLED i2c 0.96 pulgadas 128X64
1 x módulo de radio NRF24l01 con amplificador y antena
9 x botón táctil 6 * 6 * 5 mm
Resistencias de salida (ver diagrama)

Para el receptor necesitarás:

1 x Arduino NANO / UNO / Pro Mini
1 x Módulo de radio NRF24l01
1 x regulador de voltaje AMS1117 3.3V
30 x pls peines
1 x tablero
1 x 10 uF condensador

A continuación puede ver una imagen gráfica de todos los componentes y un diagrama de su conexión. Antes del ensamblaje, los convertidores reductores deben configurarse, XL6009 a 12,6 V (este módulo es responsable de la carga), LM2596 a 3,3 V (alimentación al módulo de radio). En lugar de LM2596, es teóricamente posible usar ASM117, de acuerdo con la hoja de datos, el voltaje de entrada máximo de este estabilizador es de 15 V, pero se recomienda no aplicarlo a más de 12 V. Aparentemente, en base a estas consideraciones, el autor usó otro convertidor CC / CC. En cambio, también puede usar un estabilizador ajustable, por ejemplo LM317.




Vivienda

Equipo de radio control en Arduino


El estuche consta de dos partes principales: la superior y la inferior. Además, se imprimen 9 botones (8 para recortar y un botón de modo), 5 copias de seguridad para botones, un bisel de pantalla y un control deslizante de encendido.El autor imprimió un PLA con una goma de borrar con una cobertura del 20%, una boquilla de 0,4 mm y una altura de capa de 0,3 mm. Por cierto, nadie prohíbe el uso de otro estuche, solo puede tomar una caja adecuada, pegarla usted mismo o tomar un estuche bastante grande de un juguete chino, casi se venden en bolsas en sitios clasificados.


Montaje del transmisor

Las baterías están conectadas en serie. El autor hizo esto soldando, quiero señalar que soldar latas de 18650 requiere algo de habilidad, así que si no tienes esa experiencia, compra baterías con pétalos ya soldados. Además, las baterías de acuerdo con el esquema anterior están soldadas al módulo BMS, cuya entrada se suministra con voltaje del convertidor XL6009 (en su lugar se puede utilizar MT3608). El BMS es responsable de cargar / descargar de manera uniforme todas las latas y apagar la energía cuando las baterías están agotadas. El voltaje también se puede monitorear usando la pantalla. Las baterías se cargan mediante una fuente de alimentación de 9 V con una corriente de no más de 3 A (máximo para XL6009). De hecho, la corriente de carga debe calcularse en función de la capacidad de las baterías y tomar la fuente de alimentación con una corriente ligeramente más baja o limitarla. Es conveniente montar los módulos en la carcasa con la ayuda de la cinta de doble cara "automóvil".




Los botones del reloj se instalan en plataformas especiales, después de lo cual se unen con pequeños tornillos a los soportes correspondientes dentro de la caja. Aquí, de hecho, todo está al nivel del diseñador y se entiende bien en la foto.




Los botones están interconectados por resistencias, dejando esencialmente un pequeño teclado resistivo, que le permite usar solo un pin de la placa Arduino. Los cables se sueldan a los potenciómetros del joystick, los cables extremos van a tierra y 5 V, los cables promedio al pin Arduino correspondiente. Tengo planes de repetir este esquema, ya he experimentado un poco y puedo decir que el código tiene la función de invertir automáticamente los canales según sea necesario, pero aún no he entendido cómo el esquema determina esta necesidad. Esto quiere decir que la inversión del canal se lleva a cabo esencialmente al soldar las conclusiones extremas en algunos lugares. Dichos joysticks, en el momento de la escritura, se venden en Ali a un precio de aproximadamente $ 7 cada uno, ya sea de usted o no. En su lugar, puede usar los módulos de joystick para arduino o joysticks de los controladores de juego.

De hecho, el joystick funciona como un divisor, desviando el mango, cambiamos el voltaje en la salida media del potenciómetro y, dependiendo de este voltaje, el arduino determina la desviación.
[centro] [/ centro]
Los vasos también están conectados. Los interruptores de palanca son necesarios para encendido y apagado, ya que el canal es discreto y tiene solo dos valores: 0 o 1, dependiendo de si la salida del arduino es atraída al suelo o a una fuente de alimentación de 5 V. Además, el interruptor de encendido y apagado es necesario, si deja la salida "suspendida en el aire", qué sucedería al usar tres posicionales, el controlador no entiende lo que está sucediendo y el valor salta aleatoriamente 0 o 1 (en mi experiencia). No se pueden configurar potenciómetros adicionales, por el momento no están involucrados. O puede poner y monitorear la página fuente, quizás el autor eventualmente publicará el firmware actualizado.




A continuación, se instalan un arduino, un módulo de radio y una placa de alimentación del módulo de radio. Como se describió anteriormente, es necesario establecer un voltaje de 3.3 voltios en él. Es casi imposible hacer esto con la ayuda de una resistencia variable estándar, por lo que el autor la deshizo y soló un recortador de varias vueltas. A continuación, se monta la pantalla y todos los componentes se conectan a los terminales arduino de acuerdo con el diagrama.




Firmware

El firmware de Arduino ya se ha hablado 1000 veces, en este momento, la capacidad de hacer esto mientras se aferra a un proyecto arduino es tan importante por defecto como la capacidad de sostener un soldador en sus manos mientras sostiene algo para soldar.El código para el transmisor, el receptor, las bibliotecas necesarias y un archivo para la impresión 3D del estuche se pueden descargar en un archivo al final del artículo.


Receptor



Para el receptor, necesitará otra placa Arduino, un módulo de radio (sin antena, la telemetría aún no está implementada aquí) y un estabilizador de 3.3 voltios. El receptor está soldado a la placa de pruebas. La potencia del receptor se realiza de la misma manera que la potencia de cualquier otro receptor de fábrica, desde una salida especial del controlador de velocidad.




Por mi cuenta, quiero agregar que en lugar de la antena estándar de este módulo, es deseable soldar la misma antena que está instalada en el módulo con un amplificador (solo sin carcasa). Esto no afectará particularmente el rango de recepción, pero afectará significativamente la calidad de recepción dependiendo de la posición del modelo controlado en diferentes planos. Para los receptores y transmisores modernos, para este propósito, se instalan incluso dos antenas, que están ubicadas perpendiculares entre sí.


Además, el autor ha implementado una función muy importante: la salida de la señal del receptor PPM. Esquemáticamente, nada cambia, solo necesita completar otro firmware, la señal PPM se emite de la misma manera que en la mayoría de los receptores de fábrica, desde el primer canal (gas).




Eso es todo Personalmente, me gustó mucho el proyecto, y como ya dije, planea repetirlo en el caso desde el control remoto de un juguete para niños. En el menú puede seleccionar el modo de lineal a exponencial y ajustar el valor de cada barra. Tenga en cuenta que el valor promedio de cada canal debe ser 127.


Puedes descargar todo lo que necesites aqui.

Todo el éxito en el trabajo!
8.9
8.6
8.6

Agrega un comentario

    • sonriesonrisasxaxaokno sabesyahoonea
      jeferascarsetontosisi-siagresivosecreto
      lo sientobailardance2dance3perdónayudabebidas
      pararamigosbuenobuenosilbatodesmayarselengua
      fumaraplaudirllorardeclararburlóndon-t_mentiondescargar
      calorfuriosorisa1mdareuniónMoskingnegativo
      not_ipalomitas de maizcastigarleerasustarasustabuscar
      burlagraciasestoto_clueumnikagudode acuerdo
      malbeeeojo negroblum3ruborpresumiraburrimiento
      censuradocortesíasecreto2amenazarvictoriaYusun_bespectacled
      shokrespektjajajaPrevedbienvenidokrutoyya_za
      ya_dobryiayudantene_huliganne_othodigolpearprohibircerrar
30 comentarios
feonor12 escribe correctamente que las entradas no utilizadas se deben tirar al suelo o al poder. Comencé a cumplir con esta regla tan pronto como aprendí a trabajar con chips CMOS. Oh, hace cuánto tiempo fue ... Y en los microcontroladores, por supuesto, nadie ha cancelado esta regla.
muchas gracias !!!!!
El autor
En el proceso de compilación, también reasigné algunas variables y también escribí que había poca memoria, aunque de inmediato se escribió que el boceto usa el 77% de la memoria. El boceto es torpe, nadie lo niega, pero funciona. Lo principal que compiló. Cree un circuito de prueba y compruebe cómo funciona; los problemas deben resolverse a medida que estén disponibles. Cuando ensambla el circuito de prueba del transmisor: todos los canales no utilizados, ya sean joysticks, un interruptor de palanca o teclado, en general, todo lo que no está conectado debe estar conectado a tierra o a 5V, si deja el dispositivo "colgando en el aire" no funcionará adecuadamente, con esto chocó cuando se repite.

Z.Y. Regístrate y puedes.
Andrew invitado
casi resultó como en tu foto.
solo ahora jura, en resumen, aquí
C: \ Usuarios \ mozga \ Documentos \ Arduino \ library \ Adafruit_GFX_Library \ Adafruit_GFX.cpp: en la función miembro 'valor booleano Adafruit_GFX_Button :: contiene (int16_t, int16_t)':

C: \ Users \ mozga \ Documents \ Arduino \ library \ Adafruit_GFX_Library \ Adafruit_GFX.cpp: 1120: 28: advertencia: comparación entre expresiones enteras con y sin signo [-Wsign-compare]

return ((x> = _x1) && (x <(_ x1 + _w)) &&

                             ^

C: \ Users \ mozga \ Documents \ Arduino \ library \ Adafruit_GFX_Library \ Adafruit_GFX.cpp: 1121: 28: advertencia: comparación entre expresiones enteras con y sin signo [-Wsign-compare]

(y> = _y1) && (y <(_ y1 + _h)));
finalmente compilación completada
y no escribe suficiente memoria y el programa puede no funcionar de manera estable.
lo siento, no puedo poner una foto aquí.
El autor
Eliminar / poner dos barras.

#define SSD1306_128_64
// #define SSD1306_128_32
// #define SSD1306_96_16

Así es como debe ser.
Andrew invitado
muchas gracias
No jures mucho.
Ahora buscaré en google, lo que significa:
(Comente el segundo y descomente el primero).
El autor
Para dos, maldita sea, minutos de google. En el archivo Adafruit_SSD1306.h necesita encontrar estas líneas

// #define SSD1306_128_64
#define SSD1306_128_32
// #define SSD1306_96_16

comente el segundo y descomente el primero.
El autor
Escucha, no escribí este código y no soy especialista en programación. Lo que supe, luego lo solicité, no te conviene. Funciona para el autor, lo recopilé, también funciona para mí. No funciona para usted, por lo que el error no está en el código ni en la biblioteca. Póngase en contacto con el foro temático, vaya a la fuente y escriba al autor, o espere hasta que alguien que conoce aquí responda. Le dije que no sabía cuál era el problema, qué más necesitaba de mí, para que dejara todo y comenzara a resolver el problema por usted. Lo siento no
Andrew invitado
"gracias por la ayuda"
error en la biblioteca Adafruit_SSD1306.h
Y tengo un problema de "orden privado".
eso es lo que da.
Transmitter_code: 102: 2: error: #error ("Altura incorrecta, corríjalo en Adafruit_SSD1306.h!");
tal vez qué número o letra debería cambiarse allí, pero no sé
El autor
Entonces no sé, todo se compiló y se cosió. Ahora revisé por interés, todo estaba compilado también. Entonces un problema privado.

Andrew invitado
Adafruit_SSD1306-master library
instaló el programa arduino ide en el programa mismo
El autor
¿Hay algún error durante la compilación? Está maldiciendo en la biblioteca de exhibición. ¿Instaló la biblioteca Adafruit_SSD1306-master del archivo el miércoles?
Andrew invitado
hola
Decidí comprobar primero los bocetos: receptores PPM y PWM (leer).
Empecé a revisar el transmisor, da un error.
#error ("Altura incorrecta, arregle esto en Adafruit_SSD1306.h!");
Traductor de Google traducido.
#error ("La altura es incorrecta, corríjala en Adafruit_SSD1306.h!");
Y qué debo hacer ahora, ni siquiera sé ..............
El autor
Hola a todos En general, no tengo ni el tiempo ni el deseo de terminar la aplicación en un futuro cercano para poder escribir un artículo sobre ella, pero durante mucho tiempo dibujé un sello del receptor que necesita ser tomado. No coleccioné el tablero, pero lo revisé varias veces, todo parece ser correcto. Algunas palabras para que no haya preguntas:
El estabilizador del módulo de radio está soldado en smd en la placa (ASM1117 a 3.3 V, encendido por hoja de datos). Si funcionará de manera inestable o por una corta distancia, cuelgue 10 microfaradios de conders directamente en los contactos de alimentación del módulo (no pude encontrar un lugar para empujar en el tablero).
Soldamos el smd, luego los puentes, seguidos por el arduino (patas de programación al peine de salidas), el segundo "piso" del módulo de radio, como hice en el controlador de vuelo. El módulo de radio se superpone al botón de reinicio del arduino, así que lo llevé a la parte posterior del sello (solo suelde el arduino y suelde). Si su programador activa el restablecimiento usted mismo, o si no planea volver a realizar la actualización después del ensamblaje, puede quitar el botón y las pistas de la regadera, la bufanda saldrá unos milímetros más estrecha y más corta (20x50 mm). En cualquier caso, la bufanda salió muy compacta. En el módulo de radio, es conveniente cortar la antena impresa y soldar como en los receptores estándar de 2.4 GHz (foto a continuación). Esto no afectará el rango, pero la recepción mejorará con diferentes orientaciones en el espacio. Potencia de 5V a cualquier conector del regulador de PESO o externo.
Configure el tablero terminado en un termocontraíble transparente, puede dibujar previamente, imprimir e insertar una placa de identificación con la designación de grupos de contacto. O haga un pan de molde como el mismo estabilizador de vuelo.
Bueno, todo parece ser Puedes descargar el cartel aquí.



Aquí está el trozo. vuelo, un artículo sobre él en mi perfil.


Guest Vladislav
Déjame ayudarte, recogí el boceto en pedazos, ya que mi nativo no comenzó, ahora todo funciona bien, Viber 0993482290
el robot
Ayuda con el skate. ¡Hay muchos errores!
El autor
Hago Appu en mi tiempo libre, incluso desde el tiempo libre, una tautología, pero es cierto.Porque hay una aplicación de fábrica flysky i6, esta, en aras del interés deportivo, la estoy recopilando. Cuando lo termine por completo, recogeré el receptor normal; redactaré todo en un artículo separado.
Pero para que no tenga dudas sobre su rendimiento, aquí agitó el alerón:

Como puede ver, funciona. Un canal conectado, por ejemplo. El cable al receptor es el poder, alimentado por la carga desde el teléfono.

Aunque hay mucho por desarrollar, en general está en la parte del software, realizar la elección del canal más silencioso, vinculante, para recopilar varios receptores, agregar memoria para al menos 5 modelos. Incluso la telemetría se puede lavar si lo desea. Pero para esto necesitamos la ayuda de entusiastas, o es mejor aprender el idioma Arduino en sí, o el autor para escribir, tal vez esto le interese. Yo, en un futuro cercano, definitivamente no haré esto.

Y ya dije sobre la comida. 1 lata de 18650 + MT3608 + ASM1117 + TP4056 con protección de ≈4-5 dólares. Como opción, pero hay muchos de ellos, al menos con baterías.
Andrew1978
Muestre el video de su control remoto ..... Sobre tonterías: las tonterías pueden ser para usted, pero es el 65% del costo de todo el control remoto: tres trozos, un cargador y tres litios ...
El autor
Nadie se molesta en organizar comidas de otra manera. Por alguna razón, todos se aferran a las tonterías, omitiendo el matiz principal: estos son "cerebros" ya preparados, el receptor y el transmisor en una señal PPM estándar, y cómo alimentarlos y en qué caso empujar es la décima cosa. Es posible alimentar desde una lata a través de un convertidor DC / DC de refuerzo, corrigiendo el código para indicar correctamente la carga de una lata. Hasta ahora he estado comiendo de la corona, para uso permanente no he concebido mi propia versión.
Andrew1978
Qué perversión alimentar a los tres litios con un control remoto que usa 5v y 3.3v ...
El autor
El autor
¿Quieres hacer un caso tú mismo? Esto es una pérdida de tiempo, normalmente todavía no funcionará. En los sitios, los anuncios clasificados venden un montón de controles remotos de juguetes, incluido el tipo de pistola. Vender por un centavo (el niño mató el juguete, pero el control remoto permanece). Elija menos masivo y rehaga. La alteración se reduce a tirar todo el relleno y hacer palanca a los controles de los potenciómetros lineales.
Otra opción es comprar un appu con un relleno chamuscado, pero toda la mecánica. En los sitios de modeladores, de vez en cuando aparecen ventanas emergentes.
Mi ropa se verá más o menos así (la placa de identificación es una prueba, luego la haré más bella)
Invitado Eugene
esa es la mecánica e intereses y no hay nada con lo que volver a dibujar
El autor
Por qué Sí, y quién se detiene, es cuestión de mecánica. Saca la consola de la pistola del juguete, modifícala y será así. Puedes llevar cualquier cosa, un joystick de computadora para simuladores de vuelo, incluso un gamepad de Sonya. Aquí el esquema principal.
Ya me estoy armando desde una consola de juguete.
Invitado Eugene
se fabricaría equipo tipo pistola ...
El autor
Acabo de marcar, todo se abre y descarga. Quizás tengas algún tipo de bloqueador de anuncios o algo así.
Si alguien más tiene problemas con la descarga, escriba, recurriré al administrador.
este no funciona aquí
El autor
Puede descargar todo lo que necesita aquí.

Haga clic aquí
El autor
Puede descargar todo lo que necesita aquí.

Haga clic aquí
y donde esta el boceto del equipo

Le recomendamos que lea:

Pásalo por el teléfono inteligente ...