Aujourd’hui j'ai finis d'assemblé avec les collègues le drone que j'ai dessiné en 3D :-D #jesuiscontent
Donc j'ai fait quelques tests et avec j'ai un problème: quand je fais varier la valeur que j'envoie dans le contrôleur de vol au potentiomètre, ça marche, mais lorsque j'envoie directement une autre valeur dans le contrôleur, là, plus rien ne marche (excepté l'initialisation des moteurs)
(j'utilise un arduino nano)
Le programme qui marche mais seulement manuellement:
Code : Tout sélectionner
#include <Servo.h>
Servo gaz;
Servo roulis;
Servo avancer;
Servo tourner;
int x;
void setup()
{
gaz.attach(6); //attribution du pin connecté à chaque voie de la radio
roulis.attach(9);
avancer.attach(10);
tourner.attach(11)
}
void loop()
{
x = analogRead(A0); //lecture de la valeur du potentiomètre en A0
x = map(x, 0, 1023, 20, 160);
gaz.write(val); //écrire la valeur du potentiomètre
roulis.write(90); //mise au neutre
avancer.write(90);
tourner.write(90);
delay(15);
}
Code : Tout sélectionner
#include <Servo.h>
Servo gaz;
Servo roulis;
Servo avancer;
Servo tourner;
int x;
void setup()
{
gaz.attach(6); //attribution du pîn connecté à chaque voie de la radio
roulis.attach(9);
avancer.attach(10);
tourner.attach(11)
}
void loop()
{
gaz.write(20); //mise à 0 des gaz car la plage varie de 20 à 160
roulis.write(90); //mise au neutre
avancer.write(90);
tourner.write(90);
delay(5000); //attente de l'initialisation des moteurs
gaz.write(60); //augmentation de la puissance des moteurs (à ce stade ils tournent quand j'utilise le potard)
delay(1000); //test des moteurs pendant une seconde
gaz.write(20); //retour au neutre
delay(60000); //temps de sécurité pour enlever la batterie sans risques
}
https://goo.gl/photos/ALNKYU1ANQXZE5xb7
Par contre, quand je connecte un seul vario à l'arduino et que je passe automatiquement de 20 à 60, là, ça marche, donc c'est assez étrange...
Merci d'avance!
PS: les pins sont censés être bons, mais ne vous inquiétez pas en vrai je n'ai utilisé que des sorties PWM pour sortir le PPM des servos