Bonsoir ^^.
Actuellement élève en deuxième année de classe prépa je réalise actuellement des tests de performance de moteurs brushless.
Ce qui m'intéresse c'est avant tout la consommation de mes moteurs en fonction de leur vitesse de rotation.
Mais je souhaiterai aussi connaître précisément la valeur de tension qui est envoyée dans mon moteur au travers de mon ESC ()
Donc j'utilise un programme Arduino où j'envoi à mon ESC un rapport cyclique de PWM mais vu que l'ESC est censé fonctionner en Dshot j'imgagine bien le problème :/
Mais alors pourquoi est-ce que mon moteur tourne quand même ? ( avec des valeurs de vitesses plus faibles...)
Y a t-il moyen de communiquer en Dshot avec mon ESC via Arduino ?
Je vous laisse mon programme (pour information la vitesse de mon moteur est mesurée à l'aide d'une interruption, un aimant est en fait sur l'axe du moteur et un capteur effet hall détecte son passage à chaque tour). Merci d'avance
Code HTML:#include <Servo.h> int valeur = 0; // Variable potentiomètre Servo esc ; int capteurpin = 2; unsigned long temps = 0; unsigned long duree = 1000; volatile unsigned int compteur = 0 ; void setup() { esc.attach(8); esc.writeMicroseconds(1000); // On attribue la valeur min Serial.begin(9600); temps = millis(); attachInterrupt(digitalPinToInterrupt(capteurpin),increment,CHANGE); } void loop() { // Lecture du potentiomètre pour régler la vitesse valeur = analogRead(A0); int valeuresc = map (valeur , 0 , 1023, 1000, 2000); esc.writeMicroseconds(valeuresc); // On attribue la variable mappée qu'on attribue à l'esc if (millis() - temps > duree) { temps = millis(); Serial.println(compteur); Serial.println(valeuresc); compteur = 0; } } void increment() { compteur++; }
-----