Programme ne se lance pas Eleegoo uno r3

a marqué ce sujet comme résolu.

Bonsoir à tous je suis nouveau sur le forum bien que l’ayant parcouru à de nombreuses reprises. Je suis sur un projet de porte automatique de poulailler. De nombreux programmes se trouvent sur le net, mais j’ai voulu faire le mien en m’inspirant des autres. J’ai donc réussi à le faire en utilisant une photorésistance et un moteur pas à pas. Mais le moteur n’était pas assez puissant pour lever la trappe. j’ai donc fait l’acquisition d’une l293d, sur laquelle j’ai branché un moteur de visseuse deviseuse 12v. Cela a fonctionné quelques jours et puis la carte elegoo (l tx et rx toujours allumées) et plus reconnus par l’ordinateur. j ai donc acquis une nouvelle carte et essayé de réparé l’ancienne mais ans succès. Je me suis donc dit qu’elle était naze, et j’ai voulu reprendre la programmation avec la nouvelle (de même type). Et la je téléverse le programme ok sur l’IDE. Mais le programme ne se lance pas, j ai l’habitude de mettre dans mes essais des" prints " pour voir ce que fait le programme et dans le monitor que nenni. L’une ou l’un d’entre vous aurez t il était confronté au même problème? je remercie d’avance toutes les personnes qui prendrons le temps de me lire et de de m’aider. cordialement

Bonjour merci pour la réponse ci-dessous le code source réduit a la mise en marche du moteur avant réintégration dans mon code source complet.

// mon code c
int Moteur_sens1 = 4; // Pin 4 Arduino vers broche A+ du L293D
int Moteur_sens2 = 5; // Pin 5 Arduino vers broche A- du L293D
void setup() {
// On définit les bornes 4 et 5 de l'Arduino en sorties digitales
pinMode(Moteur_sens1, OUTPUT); // Pin 4 Arduino en sortie digitale
pinMode(Moteur_sens2, OUTPUT); // Pin 5 Arduino en sortie digitale
}
void loop() {
// Le moteur tourne dans le sens normal
Serial.print("Le moteur  va tourne dans le sens normal = ");
digitalWrite(Moteur_sens1, HIGH); // Activation de la broche A+ du L293D
digitalWrite(Moteur_sens2, LOW); // Désactivation de la broche A- du L293D
Serial.print("Le moteur a  tourne dans le sens normal = ");
delay( 3000 ); // Attendre 3 secondes
// Le moteur est à l'arrêt
digitalWrite(Moteur_sens1, LOW); // Désactivation de la broche A+ du L293D
digitalWrite(Moteur_sens2, LOW); // Désactivation de la broche A- du L293D
delay( 3000 ); // Attendre 3 secondes
// Le moteur tourne dans le sens inverse
Serial.print("Le moteur va  tourne dans le sens inverse = ");
digitalWrite(Moteur_sens1, LOW); // Désactivation de la broche A+ du L293D
digitalWrite(Moteur_sens2, HIGH); // Activation de la broche A- du L293D
Serial.print("Le moteur a tourne dans le sens inverse = ");
delay( 3000 ); // Attendre 3 secondes
// Le moteur est à l'arrêt
Serial.print("Le moteur est à l'arrêt = ");
digitalWrite(Moteur_sens1, LOW); // Désactivation de la broche A+ du L293D
digitalWrite(Moteur_sens2, LOW); // Désactivation de la broche A- du L293D
delay( 3000 ); // Attendre 3 secondes
}

En effet, il faut ajouter une opération à l’initialisation :

void setup() {
  // On définit les bornes 4 et 5 de l'Arduino en sorties digitales
  pinMode(Moteur_sens1, OUTPUT); // Pin 4 Arduino en sortie digitale
  pinMode(Moteur_sens2, OUTPUT); // Pin 5 Arduino en sortie digitale
  Serial.begin(9600); // ouvre le port série et fixe le débit de communication à 9600 bauds
}

Bonjour ok j ai pu retrouve le déroulement du programme. Mais j ai de nouveau un doute puisque ma nouvelle carte elegoo n’est plus reconnue par le PC. Le programme que j’ai posté tourne en boucle, est ce que le fait de le débrancher ne créerait pas le problème matériel que j’ai avec les cartes elegoo uno r3. J ai retourné la carte récente défectueuse et en recommande une, d’ailleurs si quelqu’un aurait une méthode fiable pour les initialiser de nouveau, je suis preneur. Toutes celles trouvées sur le net ne fonctionne pas. Dore et déjà, dans mon programme je vais mettre un for et nxt pour arrêter le programme après deux ou trois essais. merci d’avance pour votre aide

J ai retourné la carte récente défectueuse et en recommande une, d’ailleurs si quelqu’un aurait une méthode fiable pour les initialiser de nouveau, je suis preneur. Toutes celles trouvées sur le net ne fonctionne pas.

reynald

Je ne comprends pas bien l’origine du problème. Chez moi j’ai deux Arduino Uno r3, dont l’une que j’ai monté sous les coutures avec des LED, détecteurs, affichage à cristaux … jamais je n’ai eu de souci de connexion avec le PC et elle fonctionne toujours. Alors peut-être que c’est la marque ELEGOO spécifiquement qui n’est pas de très bonne qualité ?? Dans ce cas-là essayes de commander celle fabriqué par Arduino. Ou alors quelque chose a pu t’échapper dans la configuration ? Pour ce qui est d’une méthode fiable pour initialiser … à part la brancher, je ne sais pas trop quoi te dire. Le principe d’Arduino c’est justement de boucler sur un programme, ce serait un peu le comble de l’interrompre au bout d’un certain temps. :S Tu n’utilises pas de bibliothèque spécifique par hasard ? Quelque chose que tu n’as pas partagé dans ton code.

Bonsoir et merci de prendre le temps de me lire. Non je n’utilise pas de bibliothèque spécifique. Pour le fait j’ai désinstallé l’ide arduino et procédé de nouveau à l’installation et mes deux cartes n’étaient toujours pas reconnues par le PC. j’ai même essayé d’installer les pilotes manuellement rien n’y fait. je vais essayé de me tourner sur une carte arduino et j’espère que cela va fonctionné. Bonne soirée

re bonjour et merci d’avance à ceux et celles qui prendrons le temps de me lire après réflexion je me suis décidé à me procurer une carte officielle arduino et une nouveau schield l293d. comme déjà évoqué je suis sur le projet d’une porte automatique de poulailler mon programme inspiré de tout ce qu’a pu écrire M Eskimon fonctionnait avec un moteur pas à pas qui n’était pas capable de soulever ma porte de 500g. j’ai don opté après plusieurs mois de réflexion pour une visseuse deviseuse 3.6v trouvée pour 10€ sur le net. Je me borne pour l’instant à la faire tourner de part l’Arduino. je suis le tuto à la lettre de M Eskimon et rien n’y fait. Alimenté directement par la pile le moteur tourne, branché la L293d, les deux led du + et - moteur a+ et a- s’allume faiblement et le moteur ne démarre pas. Pourriez vous m’aider à comprendre le pourquoi de de la chose, j’en suis à mes premiers pas en électronique. voici le code // mon code c // la PWM pour la vitesse const int enable = 3; // les broches de signal pour le sens de rotation const int in1 = 2; const int in2 = 4;

// une entrée analogique (A0) pour régler la vitesse manuellement const int potar = 0;

void setup() { // put your setup code here, to run once: pinMode(enable, OUTPUT); pinMode(in1, OUTPUT); pinMode(in2, OUTPUT); // j’utilise la liaison série pour verifier // la vitesse définie par le potentiomètre Serial.begin(115200);

// on démarre moteur en avant et en roue libre
Serial.println("on démarre moteur en avant et en roue libre");  
analogWrite(enable, 250);
digitalWrite(in1, LOW);
digitalWrite(in2, HIGH);

}

void loop() { // put your main code here, to run repeatedly: // on lit la valeur du potentiomètre

int vitesse = analogRead(potar);
                                                                                          Serial.println(vitesse);
// division de la valeur lue par 4
vitesse /= 4;

// envoie la nouvelle vitesse sur le moteur
analogWrite(enable, vitesse);

// on affiche la vitesse sur le moniteur série
Serial.println(vitesse);

delay(50);

} je voulais joindre les photos de mon montage mais je n’ai pas trouvé comment faire merci d’avance pour votre aide

Bonjour voici mon code et depuis les deux led de la l293d ne sont plus allumées. et encore merci // mon code c // la PWM pour la vitesse const int enable = 3; // les broches de signal pour le sens de rotation const int in1 = 2; const int in2 = 4;

// une entrée analogique (A0) pour régler la vitesse manuellement const int potar = 0;

void setup() { // put your setup code here, to run once: pinMode(enable, OUTPUT); pinMode(in1, OUTPUT); pinMode(in2, OUTPUT); // j’utilise la liaison série pour verifier // la vitesse définie par le potentiomètre Serial.begin(115200);

// on démarre moteur en avant et en roue libre
Serial.println("on démarre moteur en avant et en roue libre");  
analogWrite(enable, 250);
digitalWrite(in1, LOW);
digitalWrite(in2, HIGH);

}

void loop() { // put your main code here, to run repeatedly: // on lit la valeur du potentiomètre

int vitesse = analogRead(potar);
                                                                                          Serial.println(vitesse);
// division de la valeur lue par 4
vitesse /= 4;

// envoie la nouvelle vitesse sur le moteur
analogWrite(enable, vitesse);

// on affiche la vitesse sur le moniteur série
Serial.println(vitesse);

delay(50);

}

Toujours pas, voici le code pour la communauté :

// la PWM pour la vitesse
const int enable = 3;

// les broches de signal pour le sens de rotation
const int in1 = 2;
const int in2 = 4;

// une entrée analogique (A0) pour régler la vitesse manuellement
const int potar = 0;

void setup() {
    // put your setup code here, to run once:
    pinMode(enable, OUTPUT);
    pinMode(in1, OUTPUT);
    pinMode(in2, OUTPUT);
    // j'utilise la liaison série pour verifier
    // la vitesse définie par le potentiomètre
    Serial.begin(115200);

    // on démarre moteur en avant et en roue libre
    Serial.println("on démarre moteur en avant et en roue libre");
    analogWrite(enable, 250);
    digitalWrite(in1, LOW);
    digitalWrite(in2, HIGH);
}

void loop() {
    // put your main code here, to run repeatedly:
    // on lit la valeur du potentiomètre
    int vitesse = analogRead(potar);
    Serial.println(vitesse);

    // division de la valeur lue par 4
    vitesse /= 4;

    // envoie la nouvelle vitesse sur le moteur
    analogWrite(enable, vitesse);

    // on affiche la vitesse sur le moniteur série
    Serial.println(vitesse);

    delay(50);
}

Tu peux suivre ce tuto, il a l’air complet : https://electrotoile.eu/arduino-moteur-DC-shield.php.

[…] depuis les deux led de la l293d ne sont plus allumées […]

Un problème de montage ? As-tu essayé de faire tourner le moteur dans le vide ?

Bonsoir merci pour la réponse, en fait tant le programme posté que celui de electrotoile fonctionne. Cela devait être du à l’alimentation du shield l293d que j’alimenté par un ancien chargeur 12v. j ai essayé avec une ancienne alimentation pc 24v et le moteur a tourné. Mais la l293d s’est mise à chauffer très très fort, j ai donc débranche. Je suis donc toujours dans l’impasse. avec quel schield fiable et qu’elle alimentation pourrais je faire tournée ce moteur de visseuse 3.6v, no 180min pour qu’il puisse me monter et descendre une trappe de 350g sur 50cm. pourquoi ce moteur parce que mes deux poulies(anciennes bobines de coupe herbe) sont montées sur une tige fileté ou j’ai mis un ecrou et l’embout correspondant sur le visseuse. comme déja expliqué j’ai un programme écrit avec utilisation d’une photoresistance et d’un moteur PAP pas assé puissant pour soulever la trappe. Promis quand la totalité fonctionnera, je posterai les photos de mes montages. Merci d’avance pour votre aide

Cela devait être du à l’alimentation du shield l293d que j’alimenté par un ancien chargeur 12v. j ai essayé avec une ancienne alimentation pc 24v et le moteur a tourné.

reynald

La personne de l’électrotoile mentionne une charge de 5V ou 9V.

[…] avec quel schield fiable et qu’elle alimentation pourrais je faire tournée ce moteur de visseuse 3.6v, no 180min pour qu’il puisse me monter et descendre une trappe de 350g sur 50cm.

reynald

Aucune idée. C’est en dehors de mon champ de connaissances / compétences. Peut-être que @Eskimon peu t’aider.

(ps: sinon y’a toujours des soucis avec les caches et l’éditeur de Zds)

+0 -0

merci je suis pas très électronique, et j’aurai besoin d explications concernant la mise en place de se relais. merci encore pour la réponse

reynald

Moi, je n’y connais rien en Arduino. Alors j’au demandé à mon moteur de recherche :
"relais Arduino". Il me semble qu’il y a des réponses valables.

+0 -0
Connectez-vous pour pouvoir poster un message.
Connexion

Pas encore membre ?

Créez un compte en une minute pour profiter pleinement de toutes les fonctionnalités de Zeste de Savoir. Ici, tout est gratuit et sans publicité.
Créer un compte