En effet après avoir fais le code avec l'aide précieuse de black templar et bien d'autre qui se reconnaîtrons certainement. Je l'ai transférer sur mon robot composé de deux capteur US placé a 45° a l'avant et de deux moteurs que je branche direct sur l'arduino ( peut être que le problème vient de la ? ).
Bref après l'avoir transférer il ne c'est rien passé si ce n'est des petits bruit au niveau des moteurs.
Quelqu'un a une idée sur la source du problème ? ( je vais essayer de mettre en marche les moteurs de base pour voir si ils fonctionnent )
Voici le code :
// Declaration des variables int TRIGPINcapteurg = 13; int ECHOPINcapteurg = 12; int TRIGPINcapteurd = 11; int ECHOPINcapteurd = 10; int moteurgauche = 9; int moteurdroit = 8; // Initialisation void setup() { pinMode(ECHOPINcapteurg, INPUT); pinMode(TRIGPINcapteurg, OUTPUT); pinMode(ECHOPINcapteurd, INPUT); pinMode(TRIGPINcapteurd, OUTPUT); pinMode(moteurgauche,OUTPUT); pinMode(moteurdroit,OUTPUT); } // Boucle principale void loop() { // recuperation données du capteur gauche et convertionen cm. long durationcapteurg, cmcapteurg; digitalWrite (TRIGPINcapteurg, LOW); delayMicroseconds(2); digitalWrite (TRIGPINcapteurg, HIGH); delayMicroseconds(10); digitalWrite(TRIGPINcapteurg, LOW); durationcapteurg = pulseIn(ECHOPINcapteurg, HIGH); cmcapteurg = durationcapteurg / 29 / 2; // recuperation données du capteur droit et convertion en cm. long durationcapteurd, cmcapteurd; digitalWrite (TRIGPINcapteurd, LOW); delayMicroseconds(2); digitalWrite(TRIGPINcapteurd, HIGH); delayMicroseconds(10); digitalWrite(TRIGPINcapteurd, LOW); durationcapteurd = pulseIn(ECHOPINcapteurd, HIGH); cmcapteurd = durationcapteurd / 29 / 2; if ( cmcapteurg < 15) { // Si distance entre capteurg et obstacle inferieur a 15 cm. digitalWrite ( moteurgauche, LOW); // On tourne a droite. digitalWrite ( moteurdroit, HIGH); } else if ( cmcapteurg >= 15) { // Sinon si distance entre capteurg et obstacle superieur ou egal a 15 cm. digitalWrite ( moteurgauche, HIGH); // On tourne a gauche. digitalWrite ( moteurdroit, LOW); } else { // Sinon. digitalWrite ( moteurgauche, LOW); // On avance tout droit. digitalWrite ( moteurdroit, LOW); } if ( cmcapteurd < 15) { // Si distance entre capteurd et obstacle inferieur a 15 cm. digitalWrite ( moteurgauche, HIGH); // On tourne a gauche. digitalWrite ( moteurdroit, LOW); } else if ( cmcapteurd >= 15) { // Sinon si distance entre capteurd et obstacle superieur ou egal a 15 cm. digitalWrite ( moteurgauche, LOW); // On tourne a droite. digitalWrite ( moteurdroit, HIGH); } else { // Sinon. digitalWrite ( moteurgauche, LOW); // On avance tout droit digitalWrite ( moteurdroit, LOW); } } // FIN DU PROGRAMME