J'ai pour projet de construire un robot qui joue du piano, il est composé d'un moteur mcc pour la translation et pour l'instant de deux servomoteurs MG996R. J'aurai envie que les deux doigts s'activent en même temps pour que le robot joue deux notes en même temps, cela rend beau en musique. Cependant j'ai beaucoup cherché et ne trouve pas commun les activer en même temps.
Voici mon code:
#include <Servo.h>
Servo monServomoteur1;
Servo monServomoteur2;
void setup() {
// Attache le servomoteur1 à la broche D9
monServomoteur1.attach(9);
// Attache le servomoteur2 à la broche D10
monServomoteur2.attach(10);
}
void loop() {
doigt_1();
doigt_2();
}
void doigt_1() {
for (int position = 103.24; position >= 83.24; position--) {
monServomoteur1.write(position);
delay(6);
}
delay(500);
// Fait bouger le bras de 0° à 180°
for (int position =83.24; position <= 103.24; position++) {
monServomoteur1.write(position);
delay(6);
}
}
void doigt_2 () {
// Fait bouger le bras de 0° à 180°
for (int position =80.31; position <= 97.94; position++) {
monServomoteur2.write(position);
delay(8);
}
delay(500);
for (int position = 97.94; position >= 80.31; position--) {
monServomoteur2.write(position);
delay(8);
}
}
J'ai cru comprendre que comme il s'agissait d'un microcontrôleur mono-coeur donc que c'est compliqué pour faire deux action en même temps. Mais si vous avez une idée pour y arriver d'une autre manière je suis preneur.
Although it looks like errors are errors in any language…
I understand that since it was a single-core microcontroller, it's complicated to do two actions at the same time. But if you have an idea to get there in another way I'm interested.