Problemas inusuales -Cuadricoptero

Buenos dias . :slight_smile:
como dice el titulo, me salieron problemas inusuales al armar un proyecto (cuadricoptero)…
como fuente de poder uso una fuente regulable de 0-30v y claro , lo dejo en 12v.

teoricamente los 4 Motore Brushless (A2212 1000kv) con un ESC 30a , pueden levantar 1 kg . y para probar esto cree un mini circuito . con un algoritmo sencillo .

#include <Servo.h>
 
Servo esc1;
Servo esc2;
Servo esc3;
Servo esc4;


 
void setup(){

  esc1.attach(5);
  esc1.write(0);
  
  esc2.attach(6);
  esc2.write(0);
  
  esc3.attach(9);
 esc3.write(0);
 
  esc4.attach(10);
  esc4.write(0);
  
}
 
void loop(){
  
  
  
 for ( int i = 0; i<150;i++){
          esc1.write(i);
          esc2.write(i);
          esc3.write(i);
          esc4.write(i);
         delay(100);
        }
  
  
}

para ver si a ese angulo puede levantar el sistema que pesa ( 600g) y el problema que surge es :
no se mueven los 4 motores , en algunas repeticiones solo giran 3 , en otros dos , o solo uno …
pero nunca se mueven los 4 … intente y probe con un codigo y un potenciometro. :wink:

#include <Servo.h>
 
Servo esc1;
Servo esc2;
Servo esc3;
Servo esc4;


int throttlePin = 0;



 
void setup(){
  esc1.attach(5);
  esc1.write(0);
  
  esc2.attach(6);
  esc2.write(0);
  
  esc3.attach(9);
  esc3.write(0);
 
  esc4.attach(10);
  esc4.write(0);
  
}
 
void loop(){
  
  
  int throttle = analogRead(throttlePin);
  throttle = map(throttle, 0, 1023, 0, 179);
  
  esc1.write(throttle);
  esc2.write(throttle);
  esc3.write(throttle);
  esc4.write(throttle);
  

  
  
}

y pasa que con el potenciometro algunas veces se mueven los 4 y algunas veces se mueven solo 3 .
ahora . cambie la alimentacion con una fuente de pc y cuando conecto el arduino con el cargador ( 9v) y luego conecto los motores a la fuente . esta no se prende . y si no conecto el arduino a su cargador . la fuente si se prende y el arduino tmb esta prendido … es como si la fuente alimentaria ambos sistemas ( arduino y ESC ). tengo miedo de quemar el arduino . :fearful:

Sugerencias o ideas ??

aun no comienso con la estabilizacion … pero tengo que solucionar este lio para pasar al sgnt paso …

Que yo sepa, tienes que "armar" los motores

myservo.write(0);
delay(1000);
myservo.write(30);
delay(3000);

Y para cada uno de ellos

subirlo paulatinamente me dices ? .

for (int zz = 0 ; zz <170 ;zz++ ){
      esc1.write(zz);
      delay (100);
      esc2.write(zz);
      delay (100);
      esc3.write(zz);
      delay (100);
      esc4.write(zz);
      delay (100);
      
    }

Los motores tiene que armarse antes de hacerlos funcionar.

esc1.write(0);
delay(1000);
esc1.write(30);
delay(3000);

Haciendo eso para cada motor tendrías que oír unos pitidos que indican que ese motor esta listo (armado) y ya puedes mandarle esc1.write(xxx);

P.D. No es por desanimarte, pero si a este nivel tienes problemas (subir una mínima colina), preparate para el tema de la estabilización (subir el Everest)