Capteurs fin de course translation chariot - ARDUINO
Répondre à la discussion
Affichage des résultats 1 à 25 sur 25

Capteurs fin de course translation chariot - ARDUINO



  1. #1
    invite49040884

    Question Capteurs fin de course translation chariot - ARDUINO


    ------

    Bonjour, vous n'imaginez pas comment j'ai besoin de vous ! je suis tout nouveau dans la communauté arduino ^^
    Afin de faire translater verticalement un chariot pour un projet sans intérêt d'être expliqué, j'ai mis en oeuvre des capteur fin de courses ref. IFC5001 (chariot arrivé en haut/ en bas), mais la partie programmation ne fonctionne pas. J'utilise l'arduino uno. Cela fais plusieurs heures que je cherche, en vain . Voilà ce que je voudrais faire exactement : au départ, le chariot ce trouve quelque part sur la trajectoire linéaire ;
    si il n'est pas en contact avec le capteur fin de course haut, un motoréducteur le fait monter via une courroie ; ensuite, après contact avec le capteur fin de course haut, le moteur tourne dans l'autre sens pour le faire descendre jusqu'à contact avec le capteur fin de course bas ; et le moteur tourne à nouveau dans l'autre sens pour le faire monter, et ainsi de suite. C'est un peu comme un renvoi de balle Pour la rotation du moteur dans un sens puis dans l'autre j'utilise un l293d. J'arrive à par exemple allumer une led avec un capteur fin de course, mais impossible de réaliser ce que je veux
    Voici le programme que j'ai essayé de mettre en place :

    //debut
    int motor1Pin1 = 3; // pin 2 (Input 1) du L293D
    int motor1Pin2 = 4; // pin 7 (Input 2) du L293D
    int enablePin = 9; // pin 1 (Enable 1) du L293D
    const int Capt1= 7; // broche 7 du micro-contrôleur se nomme maintenant : Capt1
    const int Capt2= 8; // broche 3 du micro-contrôleur se nomme maintenant : Capt2

    void setup() {
    // set all the other pins you're using as outputs:
    pinMode(motor1Pin1, OUTPUT);
    pinMode(motor1Pin2, OUTPUT);
    pinMode(enablePin, OUTPUT);
    pinMode(Capt1, INPUT); // Capt1 est une broche d'entree
    pinMode(Capt2, INPUT); // Capt2 est une broche d'entree
    // Mettre la broche Enable a high comme ca le moteur tourne
    digitalWrite(enablePin, HIGH);
    }

    void loop() //
    {
    //contenu du programme
    monte() ;
    int test = digitalRead(Capt1);// Lecture de l'entree et sockage du résultats dans test
    if(test==LOW) {// Si test est à l'état bas
    descend();
    }
    int test2 = digitalRead(Capt2);
    if(test2==LOW) {// Si test est à l'état bas
    monte();
    }

    }
    void monte() {
    digitalWrite(motor1Pin1, LOW); // mettre pin 2 a 293D low
    digitalWrite(motor1Pin2, HIGH); // mettre pin 7 a L293D high
    }
    void descend() {
    digitalWrite(motor1Pin1, HIGH); // Mettre pin 2 a L293D high
    digitalWrite(motor1Pin2, LOW); // Mettre pin 7 a L293D low
    }
    //fin

    Voici ce qu'il était censé exécuter tel que je l'ai écrit :

    - initialisation des fonctions
    → broches du l293d en sorties

    → les deux capteurs fin de courses paramétrés en entrés (entré d'information)

    ---
    - boucle
    → si aucun capteur niveau haut, monter chariot

    → si le capteur du haut niveau haut : descendre chariot (mettre pin 2 du l293d niveau haut / pin 7 niveau bas)

    → si le capteur du bas niveau haut : monter chariot (mettre pin 2 du l293d niveau bas / pin 7 niveau haut)

    Voila j'espère que j'ai plus ou moins répondu à ce que vous vouliez savoir, si vous pouvez m'éclairer... merci beaucoup !

    Pouvez-vous m'aidez s.v.p. ?

    -----

  2. #2
    vincent66

    Re : Capteurs fin de course translation chariot - ARDUINO

    Bonjour,
    Bien qu'étant encore un apprenti en langage C ou arduino une chose me semble bizarre : vous faites tourner le moteur continuellement et inversez son sens de rotation en fonction des capteurs...
    Le moteur risque de ne pas aimer, il faudrait l'arrêter quelques dizaines ou centaines de millisecondes avant de le faire tourner dans l'autre sens...
    Leonardo était ingénieur "sans papier", et moi diplômé juste...technicien...

  3. #3
    invite49040884

    Re : Capteurs fin de course translation chariot - ARDUINO

    Merci de votre remarque vincent66, je ne manquerai pas de la prendre en compte en intégrant un delay de quelque milliseconde afin de perdre toute l'inertie du rotor ^^

  4. #4
    mkh.mourad

    Re : Capteurs fin de course translation chariot - ARDUINO

    voila le code qui correspond a votre énoncé:

    Code:
    // debut
    // vaut mieux des define que des int ou const!!
    
    #define motor1Pin1  3 // pin 2 (Input 1) du L293D
    #define motor1Pin2  4 // pin 7 (Input 2) du L293D
    #define enablePin	9 // pin 1 (Enable 1) du L293D
    #define Fin_C_Haut	7 // broche 7 du micro-contrôleur se nomme maintenant : Capt1
    #define Fin_C_Bas	8 // broche 3 du micro-contrôleur se nomme maintenant : Capt2
    
    // pour une meilleur lisibilité du programme
    #define CapteurHautOn	!digitalRead (Fin_C_Haut)	//capteur fermé au repos, donc actif LOW
    #define CapteurBasOn	!digitalRead (Fin_C_Bas)	//capteur fermé au repos, donc actif LOW
    
    // tu dois declarer tes fonctions avant de les utiliser!!
    void monte() {
    	digitalWrite(motor1Pin1, LOW); // mettre pin 2 a 293D low
    	digitalWrite(motor1Pin2, HIGH); // mettre pin 7 a L293D high
    }
    void descend() {
    	digitalWrite(motor1Pin1, HIGH); // Mettre pin 2 a L293D high
    	digitalWrite(motor1Pin2, LOW); // Mettre pin 7 a L293D low
    }
    
    void stop() {
    	digitalWrite(motor1Pin1, HIGH); // Mettre pin 2 a L293D high
    	digitalWrite(motor1Pin2, HIGH); // Mettre pin 7 a L293D low
    }
    
    
    void setup() {
    	// set all the other pins you're using as outputs:
    	pinMode(motor1Pin1, OUTPUT);
    	pinMode(motor1Pin2, OUTPUT);
    	pinMode(enablePin, OUTPUT);
    	
    	// initialistaion des capteurs qui sont de preference fermé au repos
    	pinMode(Fin_C_Haut, INPUT); // Capt1 est une broche d'entree
    	pinMode(Fin_C_Bas, INPUT); // Capt2 est une broche d'entree
            
            stop();
    	// Mettre la broche Enable a high comme ca le moteur tourne
    	digitalWrite(enablePin, HIGH);
    	
    	// si au debut on est entre les deux capteur donc on monte
    	if (!CapteurHautOn && !CapteurBasOn) monte();
    }
    
    void loop() // boucle principal
    {
    	//contenu du programme
    	
    	// Si fin de course bas ateint
    	if(CapteurBasOn) {
    		stop();
    		delay(500);
    		monte();
    	}
    	
    	// Si fin de course haut ateint
    	if(CapteurHautOn) {
    		stop();
    		delay(500);
    		descend();
    	}
    }
    //fin
    Dernière modification par mkh.mourad ; 22/06/2014 à 23h43.

  5. A voir en vidéo sur Futura
  6. #5
    mkh.mourad

    Re : Capteurs fin de course translation chariot - ARDUINO

    une petite question:
    tes capteurs haut et bas sont de type NC (contact fermé au repos) ou NO (contact ouvert au repos) ? et comment ils sont câblés? avec une résistance de Pull Up extérieur vers le GND ou vers VCC?
    leurs état si ils ne sont pas sollicités est HIGH ou LOW?
    sur le code que je t'ai écris j'ai considérer qu'il sont des NO connectés par une résistance Pull-Up donc si le capteur est activé il renvoi un LOW.

    mais de preference pour les fin de course on utilise des NC cablé vers le GND comme sur cette photo:

    Nom : Sans titre-1.jpg
Affichages : 2781
Taille : 16,6 Ko
    dans ce cas on change quelques ligne de code:
    Code:
    // pour une meilleur lisibilité du programme
    #define CapteurHautOn	digitalRead (Fin_C_Haut)	//capteur NC cablé vers le gnd, donc actif HIGH
    #define CapteurBasOn	digitalRead (Fin_C_Bas)	//capteur  NC cablé vers le gnd, donc actif HIGH

  7. #6
    invite49040884

    Re : Capteurs fin de course translation chariot - ARDUINO

    Je ne sais comment vous remercier pour ce si grand service ! c'est que je ne fais pas encore bien la différence en entre les déclarations d'entrées define, int, const... c'est que je ne suis qu'en premiere^^ merci de mettre votre savoir faire au service de tout le monde, c'est vraiment génial ; ainsi je ne reste pas sur cet échec et puis avancer mon projet. Ayant grillé mon l293d, il faudra attendre que j'en reçoive pour tester le programme... je vous dirai !

  8. #7
    invite49040884

    Re : Capteurs fin de course translation chariot - ARDUINO

    Je ne sais comment vous remercier pour ce si grand service ! c'est que je ne fais pas encore bien la différence en entre les déclarations d'entrées define, int, const... c'est que je ne suis qu'en premiere^^ merci de mettre votre savoir faire au service de tout le monde, c'est vraiment génial ; ainsi je ne reste pas sur cet échec et puis avancer mon projet. Ayant grillé mon l293d, il faudra attendre que j'en reçoive pour tester le programme... je vous dirai ! Concernant les capteurs, j'avais le choix entre NC ou NO, et j'ai déja soudé un fils sur NO. Je pensais moi aussi activer la résistance du pullup, votre premier programme devrait donc fonctionner. Si je ne me trompe pas, l'information envoyé sera donc un niveau bas

  9. #8
    invite49040884

    Re : Capteurs fin de course translation chariot - ARDUINO

    Et oui, le programme fonctionne à merveille !!! MERCI ^^

  10. #9
    invite49040884

    Re : Capteurs fin de course translation chariot - ARDUINO

    Ah, par contre il y a un sol bémol : lorsque le chariot reste en contact avec l'un des capteurs fin de course, il s'arrête puis plus rien ; il faut en effet que la pression sur les capteurs s'effectue momentanément pour enclencher la fonction "monte" ou "descend" ; or lorsque le chariot est en fin de course, il reste appuie sur le capteur ; comment remédier à cela au niveau du programme précédant s.v.p ?

  11. #10
    arsene de gallium

    Re : Capteurs fin de course translation chariot - ARDUINO

    Dans la réalité, les fin de courses restent en fonction (appuyer) tout le temps que la came est en position.
    C'est à toi de traiter dans ton bidule (arduino) l'information envoyé par le fin de course.
    Cherche "front montant" par exemple.

  12. #11
    mkh.mourad

    Re : Capteurs fin de course translation chariot - ARDUINO

    après les fonctions monte() ou descente() tu fais un delay de 500ms ou 1000ms , le temps que le moteur se déplace hors du capteur.
    Code:
    // debut
    // vaut mieux des define que des int ou const!!
    
    #define motor1Pin1  3 // pin 2 (Input 1) du L293D
    #define motor1Pin2  4 // pin 7 (Input 2) du L293D
    #define enablePin	9 // pin 1 (Enable 1) du L293D
    #define Fin_C_Haut	7 // broche 7 du micro-contrôleur se nomme maintenant : Capt1
    #define Fin_C_Bas	8 // broche 3 du micro-contrôleur se nomme maintenant : Capt2
    
    // pour une meilleur lisibilité du programme
    #define CapteurHautOn	digitalRead (Fin_C_Haut)	//capteur fermé au repos avec pull-up, donc actif High
    #define CapteurBasOn	digitalRead (Fin_C_Bas)		//capteur fermé au repos avec pull-up, donc actif High
    
    // tu dois declarer tes fonctions avant de les utiliser!!
    void monte() {
    	digitalWrite(motor1Pin1, LOW); // mettre pin 2 a 293D low
    	digitalWrite(motor1Pin2, HIGH); // mettre pin 7 a L293D high
    }
    void descend() {
    	digitalWrite(motor1Pin1, HIGH); // Mettre pin 2 a L293D high
    	digitalWrite(motor1Pin2, LOW); // Mettre pin 7 a L293D low
    }
    
    void stop() {
    	digitalWrite(motor1Pin1, HIGH); // Mettre pin 2 a L293D high
    	digitalWrite(motor1Pin2, HIGH); // Mettre pin 7 a L293D low
    }
    
    
    void setup() {
    	// set all the other pins you're using as outputs:
    	pinMode(motor1Pin1, OUTPUT);
    	pinMode(motor1Pin2, OUTPUT);
    	pinMode(enablePin, OUTPUT);
    	
    	// initialistaion des capteurs qui sont de preference fermé au repos
    	pinMode(Fin_C_Haut, INPUT); // Capt1 est une broche d'entree
    	pinMode(Fin_C_Bas, INPUT); // Capt2 est une broche d'entree
    	
    	stop();
    	// Mettre la broche Enable a high comme ca le moteur tourne
    	digitalWrite(enablePin, HIGH);
    	
    	// si au debut on est entre les deux capteur donc on monte
    	if (!CapteurHautOn && !CapteurBasOn) monte();
    }
    
    void loop() // boucle principal
    {
    	//contenu du programme
    	
    	// Si fin de course bas ateint
    	if(CapteurBasOn) {
    		stop();
    		delay(500);
    		monte();
    		delay(500);
    	}
    	
    	// Si fin de course haut ateint
    	if(CapteurHautOn) {
    		stop();
    		delay(500);
    		descend();
    		delay(500);
    	}
    }
    //fin
    une bonne programmation s'appuis sur une machine d'état, c'est mieux adapté a votre cas
    Dernière modification par mkh.mourad ; 24/06/2014 à 13h15.

  13. #12
    invite49040884

    Re : Capteurs fin de course translation chariot - ARDUINO

    Heu, ça ne marche pas, le moteur fais un truc bizarre, marche avant puis arriere rapidement.

  14. #13
    mkh.mourad

    Re : Capteurs fin de course translation chariot - ARDUINO

    svp donnez nous votre schema électrique de câblage.

  15. #14
    invite49040884

    Thumbs up Re : Capteurs fin de course translation chariot - ARDUINO

    Il y a également quelque chose que je ne comprend pas : parfois le motoréducteur tourne dans l'autre sens sans qu'aucun switch soit activé. Et à peine lui inflige t-on une petite résistance mécanique qu'il me fais n'importe quoi (s'arrête, reprend ou tourne dans le sens opposé). Pourtant, avec le même composant L293D et motoréducteur à un même voltage, ce programme tout bête fonctionne très bien (il ne met pas en jeu les switchs)

    Code:
    int motor1Pin1 = 3;    // pin 2 (Input 1)  du L293D
    int motor1Pin2 = 4;    // pin 7 (Input 2) du L293D
    int enablePin = 9;     // pin 1 (Enable 1) du L293D
    
    void setup() {
      // set all the other pins you're using as outputs:
      pinMode(motor1Pin1, OUTPUT);
      pinMode(motor1Pin2, OUTPUT);
      pinMode(enablePin, OUTPUT);
    
      // Mettre la broche Enable a high comme ca le moteur tourne
      digitalWrite(enablePin, HIGH);
    }
    
    void stop() {
    	digitalWrite(motor1Pin1, HIGH); // Mettre pin 2 a L293D high
    	digitalWrite(motor1Pin2, HIGH); // Mettre pin 7 a L293D low
    }
    
    
    void loop() {
      // Le moteur tourne dans un sens 
      digitalWrite(motor1Pin1, LOW);   // mettre pin 2 a 293D low
      digitalWrite(motor1Pin2, HIGH);  // mettre pin 7 a L293D high
     
      delay( 3000 ); // Attendre 3 secondes 
      stop();
      delay(4000);
    
      // Le moteur tourne dans l'autre sens 
      digitalWrite(motor1Pin1, HIGH);  // Mettre pin 2 a L293D high
      digitalWrite(motor1Pin2, LOW);   // Mettre pin 7 a L293D low
      
      delay( 3000 ); // Attendre 3 secondes 
      stop();
      delay(4000);
    }
    Voici mon montage en pièce jointe, je pense donc que mon problème vient des connections des switchs puisqu'un programme fonctionnant sans s'exécute parfaitement au niveau de la machine. Ai-je tort ? Savez-vous d'où viens mon problème ?
    Images attachées Images attachées  

  16. #15
    invite49040884

    Re : Capteurs fin de course translation chariot - ARDUINO

    bon j ai oublier de relier le gnd sur le schéma, mais c'est évidant qu'en réaliter je l'ai fait ^^ ; et valeur résistances switchs = 1K
    Dernière modification par Matthieu074 ; 24/06/2014 à 15h56.

  17. #16
    invite49040884

    Re : Capteurs fin de course translation chariot - ARDUINO

    Quand il y a le poids du chariot (test sans chariot j'actionnais manuellement les switchs) ça à l'air de mieux marcher ; parfois je trouve que l'électronique c'est bizarre cependant, cela ne résout pas le problème de comment provoquer la fonction "monter" ou "descendre" lorsque le switch reste appuyer de façon non instantanné (lorsque que le chariot est en haut ou en bas il reste forcement en contact avec le switch ce qui bloque les fonctions à suivre) ; il doit bien y avoir une solution niveau programme, non ? ça m'éviterait de bricoler un truc permettant de provoquer l'appuie d'un instant. Merci de votre attention, en particulier mkh.mourad sans qui mon projet serait déjà loin derrière la fenêtre c'est que ce n'est pas évident la programmation et les montages électrique ^^

  18. #17
    invite49040884

    Re : Capteurs fin de course translation chariot - ARDUINO

    Nom : Système.jpg
Affichages : 2612
Taille : 156,6 Ko

    voila mon montage

  19. #18
    mkh.mourad

    Re : Capteurs fin de course translation chariot - ARDUINO

    ça c'est pas un schéma Electrique mais une photo de câblage mais c'est claire, merci.
    oui j'ai remarqué que tu as oublié la GND en haut de votre plaque de prototypage, tant que tu l'as fais en réalité.
    les micro-switch sont des contact ouvert au repos et non fermé au repos!!
    dans le code précédent je me suis basé que tes switch sont fermé au repos et non ouvert.
    le même code est apparemment fonctionnel, à vérifier :

    Code:
    // debut
    // vaut mieux des define que des int ou const!!
    
    #define motor1Pin1  3 // pin 2 (Input 1) du L293D
    #define motor1Pin2  4 // pin 7 (Input 2) du L293D
    #define enablePin	9 // pin 1 (Enable 1) du L293D
    #define Fin_C_Haut	7 // broche 7 du micro-contrôleur se nomme maintenant : Capt1
    #define Fin_C_Bas	8 // broche 3 du micro-contrôleur se nomme maintenant : Capt2
    
    // pour une meilleur lisibilité du programme
    #define CapteurHautOn	!digitalRead (Fin_C_Haut)	//capteur OUVERT au repos avec pull-up, donc actif LOW
    #define CapteurBasOn	!digitalRead (Fin_C_Bas)		//capteur OUVERT au repos avec pull-up, donc actif LOW
    
    // tu dois declarer tes fonctions avant de les utiliser!!
    void monte() {
    	digitalWrite(motor1Pin1, LOW); // mettre pin 2 a 293D low
    	digitalWrite(motor1Pin2, HIGH); // mettre pin 7 a L293D high
    }
    void descend() {
    	digitalWrite(motor1Pin1, HIGH); // Mettre pin 2 a L293D high
    	digitalWrite(motor1Pin2, LOW); // Mettre pin 7 a L293D low
    }
    
    void stop() {
    	digitalWrite(motor1Pin1, HIGH); // Mettre pin 2 a L293D high
    	digitalWrite(motor1Pin2, HIGH); // Mettre pin 7 a L293D low
    }
    
    
    void setup() {
    	// set all the other pins you're using as outputs:
    	pinMode(motor1Pin1, OUTPUT);
    	pinMode(motor1Pin2, OUTPUT);
    	pinMode(enablePin, OUTPUT);
    	
    	// initialistaion des capteurs qui sont de preference fermé au repos
    	pinMode(Fin_C_Haut, INPUT); // Capt1 est une broche d'entree
    	pinMode(Fin_C_Bas, INPUT); // Capt2 est une broche d'entree
    	
    	stop();
    	// Mettre la broche Enable a high comme ca le moteur tourne
    	digitalWrite(enablePin, HIGH);
    	
    	// si au debut on est entre les deux capteur donc on monte
    	if (!CapteurHautOn && !CapteurBasOn) monte();
    }
    
    void loop() // boucle principal
    {
    	//contenu du programme
    	
    	// Si fin de course bas ateint
    	if(CapteurBasOn) {
    		stop();
    		delay(500);
    		monte();
    		delay(500);
    	}
    	
    	// Si fin de course haut ateint
    	if(CapteurHautOn) {
    		stop();
    		delay(500);
    		descend();
    		delay(500);
    	}
    }
    //fin

  20. #19
    invite49040884

    Re : Capteurs fin de course translation chariot - ARDUINO

    Merci, ça marche !!!!!!!!!!!!!!!! suesper ça commençait à me tracasser ; de plus, le chariot ne reste plus coincé sur le switch ! C'est que j'aurais pleins de questions à vous poser, mon projet ne ce limitant pas à cela ^^ (notamment avec les codes infrarouges) ; il n'y en a pas deux comme vous sur ces forums, merci encore !

  21. #20
    mkh.mourad

    Re : Capteurs fin de course translation chariot - ARDUINO

    Bravo! heureux pour toi que ca fonctionne.
    nous somme dans un forum d'entraide, c'est évident qu'on ai, a un moment donné, soit en demande ou un partage et échange d'information.
    je ne suis pas le seul, tous les membre du forum le sont.

  22. #21
    invite49040884

    Re : Capteurs fin de course translation chariot - ARDUINO

    Tenez, si vous voulez voir ce que ça donne à mon projet...
    https://www.youtube.com/watch?v=1O0IJ7Mub-Q

  23. #22
    invite49040884

    Re : Capteurs fin de course translation chariot - ARDUINO

    Et voici le programme complet qui fait fonctionner ma machine :

    Code:
    #include <Stepper.h>
    
    // vaut mieux des define que des int ou const!!
    
    #define motor1Pin1  3 // pin 2 (Input 1) du L293D
    #define motor1Pin2  4 // pin 7 (Input 2) du L293D
    #define enablePin	9 // pin 1 (Enable 1) du L293D
    #define Fin_C_Haut	7 // broche 7 du micro-contrôleur se nomme maintenant : Capt1
    #define Fin_C_Bas	8 // broche 3 du micro-contrôleur se nomme maintenant : Capt2
    Stepper moteur(200, 10, 11, 12, 13);
    
    // pour une meilleur lisibilité du programme
    #define CapteurHautOn	!digitalRead (Fin_C_Haut)	//capteur OUVERT au repos avec pull-up, donc actif LOW
    #define CapteurBasOn	!digitalRead (Fin_C_Bas)		//capteur OUVERT au repos avec pull-up, donc actif LOW
    
    // tu dois declarer tes fonctions avant de les utiliser!!
    void monte() {
    	digitalWrite(motor1Pin1, LOW); // mettre pin 2 a 293D low
    	digitalWrite(motor1Pin2, HIGH); // mettre pin 7 a L293D high
    }
    void descend() {
    	digitalWrite(motor1Pin1, HIGH); // Mettre pin 2 a L293D high
    	digitalWrite(motor1Pin2, LOW); // Mettre pin 7 a L293D low
    }
    
    void stop() {
    	digitalWrite(motor1Pin1, HIGH); // Mettre pin 2 a L293D high
    	digitalWrite(motor1Pin2, HIGH); // Mettre pin 7 a L293D low
    }
    
    
    void setup() {
    	// set all the other pins you're using as outputs:
            moteur.setSpeed(15);
    	pinMode(motor1Pin1, OUTPUT);
    	pinMode(motor1Pin2, OUTPUT);
    	pinMode(enablePin, OUTPUT);
    	
    	// initialistaion des capteurs qui sont de preference fermé au repos
    	pinMode(Fin_C_Haut, INPUT); // Capt1 est une broche d'entree
    	pinMode(Fin_C_Bas, INPUT); // Capt2 est une broche d'entree
    	
    	stop();
    	// Mettre la broche Enable a high comme ca le moteur tourne
    	digitalWrite(enablePin, HIGH);
    	
    	// si au debut on est entre les deux capteur donc on monte
    	if (!CapteurHautOn && !CapteurBasOn) monte();
    }
    
    void loop() // boucle principal
    {
    	//contenu du programme
    	
    	// Si fin de course bas ateint
    	if(CapteurBasOn) {
    		stop();
    		delay(500);
    		monte();
    		delay(500);
    	}
    	
    	// Si fin de course haut ateint
    	if(CapteurHautOn) {
    		stop();
    		delay(500);
                    moteur.step(100);
    		descend();
    		delay(500);
    	}
    }

  24. #23
    sam el

    Re : Capteurs fin de course translation chariot - ARDUINO

    S'il vous plait je suis aussi débutante au monde Arduino et je me demande si ce programme déjà énoncée dans les commentaire précédente peut être applique si la translation et horizontal puisque je travaille aussi sur un projet similaire mais la translation que devra effectuer mon moteur et horizontal et il devra changer le sens de rotation a chaque fois il es en contacte avec un capteur de fin de course.

  25. #24
    f6bes

    Re : Capteurs fin de course translation chariot - ARDUINO

    Bjr à toi,
    Un des intervenants (invité49...) n'est plus réapparu sur FUTURA depuis... 2014 et mkh .mourad depuis mai 2016.
    Bonne journée

  26. #25
    antek

    Re : Capteurs fin de course translation chariot - ARDUINO

    Citation Envoyé par sam el Voir le message
    . . . je me demande si ce programme déjà énoncée dans les commentaire précédente peut être applique si la translation et horizontal . . .
    Un interrupteur n'est pas affecté par son orientation.

Discussions similaires

  1. Arduino anti rebond avec arduino
    Par sari12 dans le forum Électronique
    Réponses: 13
    Dernier message: 23/10/2014, 17h04
  2. Communication arduino-arduino avec module Xbee
    Par TPESI22012 dans le forum Électronique
    Réponses: 2
    Dernier message: 23/12/2013, 17h24
  3. Câblage capteurs à ultrasons et capteurs de proximités.
    Par invite2cc824b3 dans le forum Électronique
    Réponses: 6
    Dernier message: 24/11/2011, 19h36
  4. Capteurs inductifs vs capteurs potentiométriques
    Par invite9d252634 dans le forum Électronique
    Réponses: 3
    Dernier message: 09/08/2011, 21h33
  5. recheche sur les capteurs numériques et les capteurs communicants
    Par invite411fccf2 dans le forum Technologies
    Réponses: 0
    Dernier message: 28/09/2006, 10h29
Découvrez nos comparatifs produits sur l'informatique et les technologies.