- Mar, 30 Dic 2014 12:05
#1302012
Hola a todos, me he liado a construir un estabilizador de vuelo casero en base a un arduino mini pro y una MPU 6050.
Este no es un proyecto en el que se ahorre mucho dinero, ya que hay estabilizadores por cuatro perras por ahí, aunque el coste del proyecto es bastante bajo comprando los componentes en los sitios adecuados. El objetivo es hacerme uno para aprender y experimentar, comprarlo hecho es algo que puedo hacer en cualquier momento (si tengo euros, claro XD)
Como ya adelantaba más arriba los componentes a usar son un Arduino Mini Pro: http://arduino.cc/en/pmwiki.php?n=Main/ ... ardProMini, que es una plaquita muy pequeña ideal para este trabajo y una placa que lleva integrado el MPU6050 (GY521: http://playground.arduino.cc/Main/MPU-6050), en principio no hace falta nada más.
En mi caso las dos placas funcionan a 5V, lo que coincide con las tensiones de receptor y servos que yo tengo y me viene perfecto, otras placas funcionan a 3,3V, y necesitan un estabilizador a esa tensión.
El coste puesto en casa es de unos 5 euros, aparte necesitaremos cables y conectores para los servos y alimentación.
La parte de conexiones del hardware es sencilla, hay que meterle al arduino todas las señales desde el receptor que nos interesan (en este caso las de los servos de Alerones y timones, que son tres señales siempre que usemos una Y para alerones, y por lo tanto esto nos ocupará tres entradas. La salida ocupará otros tres pines del Ardu hacia los servos. La conexión de la MPU va por I2C, por lo que ocupa los pines específicos para ello del Mini Pro, que son A4 y A5, además utiliza la entrada digital 2, para manejar las interrupciones.
Aparte de eso habrá que llevar los +5 del variador o circuito aparte al arduino, al receptor a la MPU y a los servos, lo mismo con la masa, es bastante obvio
Como de momento no vamos a controlar el motor desde el Ardu, el variador alimentará el receptor directamente, y de las salidas de los servos se alimentará el Ardu y la MPU.
Eso es lo fácil, pondré fotos cuando esté montado todo, ahora vamos a lo complicado, el software.
En principio es bastante sencillo ir a Internet y bajarse ejemplos de código para este proyecto, hay desde lecturas de PPM directamente (hace falta un receptor que nos proporcione esa señal), como para leer las señales PWM que entregan los receptores RC para los servos, también hay muchos ejemplos de regulación PID para estabilizar, librerias, etc.
En mi caso voy a prescindir de usarlas, ya que busco hacerlo yo mismo, pero el que quiera bajarse las librerías de internet y un corta pega de los ejemplos y acondicionarlos al uso especifico del estabilizador de vuelo puede tener el prototipo en marcha en pocas horas.
No obstante voy a hacer dos excepciones, una es la de la librería de control de los servos, ya que viene incluida con el entorno de Arduino y la veo sencilla y práctica, el otro es la librería de acceso a la MPU, lo que merece una explicación aparte en el siguiente post lo pongo.
Este no es un proyecto en el que se ahorre mucho dinero, ya que hay estabilizadores por cuatro perras por ahí, aunque el coste del proyecto es bastante bajo comprando los componentes en los sitios adecuados. El objetivo es hacerme uno para aprender y experimentar, comprarlo hecho es algo que puedo hacer en cualquier momento (si tengo euros, claro XD)
Como ya adelantaba más arriba los componentes a usar son un Arduino Mini Pro: http://arduino.cc/en/pmwiki.php?n=Main/ ... ardProMini, que es una plaquita muy pequeña ideal para este trabajo y una placa que lleva integrado el MPU6050 (GY521: http://playground.arduino.cc/Main/MPU-6050), en principio no hace falta nada más.
En mi caso las dos placas funcionan a 5V, lo que coincide con las tensiones de receptor y servos que yo tengo y me viene perfecto, otras placas funcionan a 3,3V, y necesitan un estabilizador a esa tensión.
El coste puesto en casa es de unos 5 euros, aparte necesitaremos cables y conectores para los servos y alimentación.
La parte de conexiones del hardware es sencilla, hay que meterle al arduino todas las señales desde el receptor que nos interesan (en este caso las de los servos de Alerones y timones, que son tres señales siempre que usemos una Y para alerones, y por lo tanto esto nos ocupará tres entradas. La salida ocupará otros tres pines del Ardu hacia los servos. La conexión de la MPU va por I2C, por lo que ocupa los pines específicos para ello del Mini Pro, que son A4 y A5, además utiliza la entrada digital 2, para manejar las interrupciones.
Aparte de eso habrá que llevar los +5 del variador o circuito aparte al arduino, al receptor a la MPU y a los servos, lo mismo con la masa, es bastante obvio
Como de momento no vamos a controlar el motor desde el Ardu, el variador alimentará el receptor directamente, y de las salidas de los servos se alimentará el Ardu y la MPU.
Eso es lo fácil, pondré fotos cuando esté montado todo, ahora vamos a lo complicado, el software.
En principio es bastante sencillo ir a Internet y bajarse ejemplos de código para este proyecto, hay desde lecturas de PPM directamente (hace falta un receptor que nos proporcione esa señal), como para leer las señales PWM que entregan los receptores RC para los servos, también hay muchos ejemplos de regulación PID para estabilizar, librerias, etc.
En mi caso voy a prescindir de usarlas, ya que busco hacerlo yo mismo, pero el que quiera bajarse las librerías de internet y un corta pega de los ejemplos y acondicionarlos al uso especifico del estabilizador de vuelo puede tener el prototipo en marcha en pocas horas.
No obstante voy a hacer dos excepciones, una es la de la librería de control de los servos, ya que viene incluida con el entorno de Arduino y la veo sencilla y práctica, el otro es la librería de acceso a la MPU, lo que merece una explicación aparte en el siguiente post lo pongo.
Última edición por dragoncet el Mar, 30 Dic 2014 12:07, editado 1 vez en total.
AXN Floater -- Muy reparado, pero en servicio.
Trainstar -- Una maravilla para aprender.
W-28 -- Mi primer velero.
Archer -- Mi primer destrozo (ahora en vuelo) (Ahora ya no...)
Hummer 3S Epp -- AcroCorcho.
Emisora: Turnigy 9X, Firm: OpenTX
Trainstar -- Una maravilla para aprender.
W-28 -- Mi primer velero.
Archer -- Mi primer destrozo (ahora en vuelo) (Ahora ya no...)
Hummer 3S Epp -- AcroCorcho.
Emisora: Turnigy 9X, Firm: OpenTX