El otro dia, ya os estube hablando sobre lo que puede pasar (y pasó) si no aseguramos bien un motor brushless, el riesgo que conlleva y las perdidas que ocasiona el no hacerlo.
Hoy os traigo un completo ejemplo de como controlar un brushless mediante arduino con total seguridad, ya que lo activamos nosotros mismos, mediante un pulsador o cualquier otro método que se os ocurra.
Si estais intentando hacer vuestro quadcopter como yo, este tutorial os interesará muchisimo, pues muestra los fundamentos básicos de control de motores.
A partir de lo que ya hablamos en anteriores entregas de esta saga, el montaje del circuito, uso, precaciones con baterias LiPo...
Partiré desde donde lo dejé, para continuar explicando conceptos, como por ejemplo, armado del ESC, control de pulsos del motor, control de seguridad, control por botoneras y otros...
Primero de todo, tenemos que hacernos con algun pulsador, como este de aqui:
Y con una resistencia montamos el pull-up (para tomar un valor de referencia), algo parecido a esto:
Y llevamos la patilla de señal al pin con el que queramos leer, en mi ejemplo lo he llevado al pin número 22 de mi Arduino Mega.
Tenemos que ocupar otro pin pwm, para el control de esc, y en consecuente el del motor, en mi caso es el PWM 9.
Y voilá! Aqui tenemos el montaje, ahora toca el código... Pero tranquilos! Yo mismo os lo daré.
#include <Servo.h> Servo myservo; // int boton = 22; int estadoboton = 0; void setup() { myservo.attach(9); pinMode(boton, INPUT); arm(); // Usamos la función creada abajo para armar el esc } void loop() { estadoboton = digitalRead(boton); while(estadoboton == HIGH) { //Mientras el botón esté pulsado, el servo gira estadoboton = digitalRead(boton); myservo.write(70); } myservo.write(15); } void arm() { //La función de armado para los ESC FLY 20A que hay en la tienda myservo.write(0); delay(1000); myservo.write(30); delay(10000); }
Y podremos observar que nuestro motor gira cuando pulsamos el botón, en caso de soltarlo para de girar, consiguiendo así una manera facil de evitara cidentes y controlar nuestro motor.
No olvideis atornillarlo a una superfície sólida y bien anclada al suelo!
En la tienda:
Arduino MEGA & Duemilanove (UNO), mirad en productos relacionados.