Aller au contenu


Contenu de cook

Il y a 114 élément(s) pour cook (recherche limitée depuis 01-mai 13)



#120470 bonton marche arret pour moteur pas à pas

Posté par cook sur 17 mars 2024 - 11:13 dans Conseils et aide aux débutants, livres et kits en robotique

Si il y a plus sûr comme code , c'est une certitude , il le faudra . C'est une bonne nouvelle  . Là , le standard du code me sera profitable en fait ,  j'attends presque un décalage pour connaitre la limite mécanique, quoique je peux le créer le décalage de pas  !  . Cinq , six mouvements sur 150 cm , c'est plus compliqué que je pensais  .

C'est toujours la même tricoteuse , la suite en fait . Je vois pas la simplification du code . Par curiosité surtout , mais on sait jamais, cela pourrai me donner une indication pour savoir en combien de parties je vais scinder les futurs codes .




#120467 bonton marche arret pour moteur pas à pas

Posté par cook sur 16 mars 2024 - 08:14 dans Conseils et aide aux débutants, livres et kits en robotique

Merci pour ces réponses , chui bluffé depuis que je cherche !  c'est peu de le dire .

 

J'ai  modifié une ligne :

void boutondecommande() {
  static bool motors = LOW;    // faut changer( LOW en HIGH ) pour créer la différence (!= )  à motors . Je l'ai compris comme cela .

Les moteurs vibrent plus !!!!!!!  ; Avec les exemples accelstepper les moteur vibrent trop . Bizarre . je vais rajouter des bouton en parallèle pour me faciliter la tache . Pour savoir si mécaniquement je suis dans le coup , ca va m'aider .

merci beaucoup .

Sur mon projet, j'ai deux moteurs , et plus , j 'y reviendra parce que là , c'est un test de plus . Mais es ce que je peux compter  faire fonctionner ces 2 moteurs ensemble de façon précise ( avec moteurs boucle fermé ), où il est préférable de les relier mécaniquement ? 




#120462 bonton marche arret pour moteur pas à pas

Posté par cook sur 16 mars 2024 - 04:44 dans Conseils et aide aux débutants, livres et kits en robotique

Bonjour , 

pour tester la partie mécanique de mon projet , il me faut faire mettre en marche et arrêter   2 moteurs pas à pas simultanément avec l'aide d'un bouton . 

J'ai trouver la solution pour les faires démarrer  avec 1 bouton  , modifier leur vitesses et le nombre de pas en modifiant le code , mais cela ne marche qu'une fois après le téléchargement  . Si j' appuis à nouveau , il ne se passe plus rien . J'ai essayé avec 2 boutons , rien y fait . Mélangé plusieurs codes et fait des essais et liens à tout vas . J'ai lu que la fonction est bloquante  . je tourne en rond . 

Avez vous une idée de ce qu'il faut faire ? 

merci pour votre aide .


#include <AccelStepper.h>
#include <MultiStepper.h>
const int boutonmarche = 12;
const int boutonarret = 13;
int etatboutonmarche = 0;
int etatboutonarret = 0;
const int led = 8;
int etatboutonprecedent = 0;
int motors = 0;
//ccelStepper stepper2(AccelStepper::FULL4WIRE, 6, 7, 8, 9);
//AccelStepper stepper3(AccelStepper::FULL2WIRE, 10, 11);
AccelStepper stepper1(1, 2, 3);   // 1 pour dire je sais pas. 2 c'est le pul + sur l’arduino et 3 le dir +
AccelStepper stepper2(1, 5, 6);   // 1 pour dire je sais pas. 2 c'est le pul + sur l’arduino et 3 le dir +



void setup() {
  // Serial.begin(9600);
  pinMode(boutonmarche, INPUT_PULLUP);
  pinMode(boutonarret, INPUT_PULLUP);
  pinMode(8, OUTPUT);
}
void moteursMarche()  {

  stepper1.setMaxSpeed(1000);
  stepper1.setAcceleration(400);
  stepper1.moveTo(4000);

  stepper2.setMaxSpeed(2000);
  stepper2.setAcceleration(400);
  stepper2.moveTo(800);
  stepper1.run();
  stepper2.run();
  digitalWrite(8, HIGH);
}


void boutondecommande() {
  etatboutonmarche = digitalRead(boutonmarche);
  if ((etatboutonmarche == LOW) && (etatboutonprecedent == HIGH)) {
    motors = 1 - motors ;
  }
  etatboutonprecedent = etatboutonmarche ;
  if ( motors == 1) {
    moteursMarche();
  }
}

void loop() {
  boutondecommande();
}

//Serial.println("avant");
//Serial.print(motors);




#117304 Débrancher son driver et son moteur

Posté par cook sur 22 novembre 2022 - 08:30 dans Electronique

Oui oui je te rejoint . Apres mesure ca colle avec ce que tu décris . C'était de la curiosité mais finalement ca me différencie bien le travail de l'Arduino et du driver  . Pour le bouton, c'est de l'urgence. je fait des essais avec du fil de pêche !  C'est important que l'AU marche . Et ca marche.

A bientôt 




#117285 Débrancher son driver et son moteur

Posté par cook sur 21 novembre 2022 - 08:13 dans Electronique

Merci à tous les trois . Oui j'avance pas à pas ;)

je commence à me familiariser ou me dégrossir avec l'électronique , les profilés alu , les déplacements linéaire et rotatif .Je vais bientôt finaliser et enchainer d' autre mouvement qu'il faudra coder par la suite .

J'ai une question , quand je fait un arrêt d'urgence en plein fonctionnement ( quand le moteur tourne  )   , Au relâchement de l'AU  , j'ai l'impression que le moteur continue les pas qu'il avait pas fini de faire . Je vais le mesurer oki ,  mais c'est normal même si ca me convient ?




#117269 Débrancher son driver et son moteur

Posté par cook sur 20 novembre 2022 - 06:32 dans Electronique

J'ai trouvé cette solution toute bête . Ce doit être cela l'explication qui est décrite plus haut . Cela arrête le moteur direct  .

 

Quelqu'un peut me confirmer que une fois l'arrêt d'urgence enclenché je peux débrancher la prise 240V  de ma machine sans risque de détériorer l'électronique ?

Image(s) jointe(s)

  • TB 6600.png



#117257 Débrancher son driver et son moteur

Posté par cook sur 20 novembre 2022 - 08:18 dans Electronique

Voila c'est le driver qui commande un moteur Nema 17 . Je l'utilise soit avec le code bounce que l'on trouve sur le net soit avec un code plus complet que l'on a réalisé sur ce site avec bouton et écran LCD  et qui marche bien .

Mais voila j'ai oublié la chose importante en cas d'urgence c'est de pouvoir arrêter mon monteur a tout moment en cas de problème et pour pouvoir débrancher  l'alimentation 240 v en fin de journée .

Je vais réparer l'écran mais je n'ai pas la solution a mon arrêt d'urgence .

Image(s) jointe(s)

  • TB 6600.png



#117254 Débrancher son driver et son moteur

Posté par cook sur 19 novembre 2022 - 10:19 dans Electronique

je préfère un arrêt d'urgence . Si je me coince un doigts je veux arrêter le moteur au plus vite . Et puis quand je veux plus me servir de la machine je met un coup sur l'arrêt d'urgence et je débranche le 240 v .

J'ai mis l'arrêt d'urgence directement sur les  sorties enable et rien ne se passe . Le moteur tourne toujours , Je me demande si mon écran lcd n'a pas un problème du coup ! C'est bizarre j'ai l'impression de mettre en court jus le enable moins et plus en fait  !




#117247 Débrancher son driver et son moteur

Posté par cook sur 19 novembre 2022 - 05:08 dans Electronique

Bonjour, je reviens sur l'idée de mettre un bouton on / off sur  la prise enable du driver pas a pas pour le mettre à la masse de sorte à pouvoir faire arrêter mon moteur pas à pas avant de le débrancher physiquement.

Et puis au bout de deux essais je m'aperçois que je peux me coincé un doigt ou un outil dans les courroies et j'ai pas moyen d'arrêter le moteur tant que le cycle n'est pas fini ! Comment je m'y prend ? Je met un bouton sur une entrée de l'Arduino ? et en sorti je vais a l'énable ? Je dis n'importe quoi je trouve pas de doc sur la technique !




#116263 Débrancher son driver et son moteur

Posté par cook sur 20 juillet 2022 - 05:58 dans Electronique

:ok:




#116238 Débrancher son driver et son moteur

Posté par cook sur 12 juillet 2022 - 09:49 dans Electronique

Je comprends mieux la méthode et il me faudra prévoir un arrêt d'urgence pour éventuellement débrancher physiquement mon installation. Apparemment le matériel est plutôt résistant , mais je fait  encore des erreurs de débutant. Je m'oriente vers plusieurs moteurs, plus gros aussi , alim , driver à couper . Il faut que j'en parle dans mes futurs codage Arduino dans tous les cas .

Merci pour l'aide

A bientôt




#116232 Débrancher son driver et son moteur

Posté par cook sur 10 juillet 2022 - 05:07 dans Electronique

Ah oui , merci j'ai compris . Face à l'électronique je me demande si il n'existe pas une procédure adapté pour arrêter sa machine ou on tire simplement sur le fil de la prise ?




#116229 Débrancher son driver et son moteur

Posté par cook sur 10 juillet 2022 - 02:52 dans Electronique

Effectivement ce driver est équipé de 3 optocoupleurs ce qui,  si je comprends protègerai mon driver .

 

En continuant ma lecture je tombe sur cette phrase que je n'arrive pas à comprendre .

 

NB : Ne débranchez pas les connecteurs quand la carte est sous tension, toujours éteindre le montage avant de débrancher un connecteur sinon vous risquez d'abîmer le driver.

 

Qui est la carte ( je pense que c'est driver )  ?

Qu'es ce " le montage" ? 




#116227 Débrancher son driver et son moteur

Posté par cook sur 10 juillet 2022 - 11:44 dans Electronique

Bonjour à tous,

 

J'ai mis en route un moteur Nema 17 avec son driver TB 6600 , un Arduino uno et une alimention à découpage en  24 Vdc .

Dès le branchement de  l' alim sur la prise 220v et du l'USB à l'Arduino le moteur se met en route et fait ses aller retour grâce au code BOUNCE de https://www.airspayce.com/.

 

Jusqu'à là tout va bien mais je me souviens plus comment débrancher sans rien abimer ! Il me semble avoir entendu qu'une mauvaise manipulation entrainait une détérioration du matériel . 

 

Faut t'il débrancher l'alim 220 v qui alimente le driver en premier ou l'USB qui alimente l'Arduino ? 

Est 'il mieux de le débrancher le moins possible ?

 

Tous avis sera le bienvenue . Merci pour votre aide.




#112826 Guide linéaire motorisé

Posté par cook sur 02 février 2021 - 07:56 dans Conseils et aide aux débutants, livres et kits en robotique

J'ai besoin d'une précision en pas . La vitesse a peu d'importance . Un tour seconde max , c'est pas énorme . Je la règlerai avec accel stepper .

J'ai peu être trouvé une solution pour pouvoir faire un essai mais avec 12 Nm sans réducteur  ! Simplement avec la poulie sur l'axe et sur le moteur .

  Je me demande si ca fais pas un peu trop  ! L'idée que le moteur saute des pas au cas l' ensemble tournant se bloque est séduisante  .




#112793 Guide linéaire motorisé

Posté par cook sur 30 janvier 2021 - 07:40 dans Conseils et aide aux débutants, livres et kits en robotique

J'ai converti 12.4 kg.cm en Nm et je trouve 1.20 Nm . C'est pas énorme et me laisse un choix pas possible !

 

Beaucoup de sites parle de réducteurs mécanique et d'autres à courroies .

Comme il me faut prévoir des arrêts brusques suite à une mauvaise manipulation , je suis tenté par une réduction par courroies , mais je ne trouve pas de site qui parle de résistance des courroies en Nm .

Vous connaissez une adresse ? 

 

Image(s) jointe(s)

  • reducteur.jpg



#112786 Guide linéaire motorisé

Posté par cook sur 30 janvier 2021 - 03:43 dans Conseils et aide aux débutants, livres et kits en robotique

Avant de relire plusieurs fois la réponse , oui j'envisage de faire tourner l'ensemble avec un moteur nema , une courroie et poulie dentée . Vitesse un tours secondes grand maximum .




#112784 Guide linéaire motorisé

Posté par cook sur 30 janvier 2021 - 03:04 dans Conseils et aide aux débutants, livres et kits en robotique

Photo de la poulie 

Image(s) jointe(s)

  • IMG_4687.JPG



#112782 Guide linéaire motorisé

Posté par cook sur 30 janvier 2021 - 03:02 dans Conseils et aide aux débutants, livres et kits en robotique

Bonjour Sandro , 

super pour le code Arduino que l'on a fait ensemble   . Le calcul mécanique ci dessus c'est  la suite  . J'essaye de mettre au point mécaniquement la partie centrale qui fait tourner l'ensemble . 

Y'a un truc qui m'échappe dans les calculs du couple . Effectivement je n'ai pas donné le diamètre de la poulie que j'ai choisie au flair :)  . Elle fait de  rayon  3.1 cm . Je sais pas si c'est important mais elle a pour pas 5 mm et elle compte 40 dents . 

 

Si g bien compris je reprends le calcul .       Couple = 4 kg X 3.1 cm de rayon = 12.4 kg.cm

 

Ce qui voudrai dire que plus la poulie est petite moins j'ai besoin de couple . c'est bizarre ou je comprends pas ? 

 

 




#112779 Guide linéaire motorisé

Posté par cook sur 30 janvier 2021 - 12:47 dans Conseils et aide aux débutants, livres et kits en robotique

Bonjour à tous ,

je reviens sur le sujet mais avec un peson que je viens de recevoir pour mesurer l'effort que cela me demande pour faire tourner l'axe . J'ai fixer une poulie sur l'axe et enroulé une corde autour  et j'ai tiré dessus  pour faire tourner l'ensemble .

C'est un peu grossier comme méthode mais ca marche pour se faire une idée .

Si je veux faire un tour seconde il me faut compter  4 kg au peson pour le lancer en 1 tour  et  autant pour l'arrêter  ,  voir plus  ! 

 

Si je dois choisir un moteur avec réduction comment je dois m'y prendre ?




#112495 Guide linéaire motorisé

Posté par cook sur 12 janvier 2021 - 11:06 dans Conseils et aide aux débutants, livres et kits en robotique

L'idée du peson c'est pas mal .  Je vais finir de le monter , et regarder l'effort que cela  demande pour faire tourner l'axe . Je devrai pouvoir le mesurer et revenir en parler avec un chiffre .

Vous me dirai si se que je trouve à du sens . Bon , comment je prends la mesure autour d'un axe  , je sais pas . je vais y réfléchir . 

Pour les réducteurs j'en ai vu des mécaniques et d'autre à courroies . Je verrai .

Je vais commencé par le couple . Ca va me prendre un peu de temps .

Merci pour les infos .

A bientot  :thank_you:




#112493 Guide linéaire motorisé

Posté par cook sur 12 janvier 2021 - 10:02 dans Conseils et aide aux débutants, livres et kits en robotique

Oui l'ensemble va tourner . L'axe sera sur roulement à bille . C'est un tourneur qui va s'en occupé . C'est en cour de réalisation . Bon après c'est moi qui donne les mesures . Je peux me tromper ! 

Le but est d'entrainer du fil pour macramé . C'est genre fil de laine . Rien de bien lourd , même si il est enroulé plusieurs fois (autour des 4 plots rond sur la photo)  . Si ya pas de nœud bien sur :) .

 

L'ensemble fera 9 kg ,  j'ai fait au mieux , c'est pas facile .   Pour la vitesse j'ai tablé sur 1 tour / seconde . C'est un peu rapide mais avec un moteur Nema je pourrai baisser la vitesse .

 

 Il me faudra faire un essai . Il devrai y avoir de l'inertie . Je pense pas y arrivé du premier coup , alors je me dit par quoi il faut commencé ? Comment je peux me faire une idée du couple ?




#112483 Guide linéaire motorisé

Posté par cook sur 11 janvier 2021 - 08:35 dans Conseils et aide aux débutants, livres et kits en robotique

Bonjour à tous ,

Je vais essayé de reformuler ma question de mon post ci dessus  .

 

Je voudrais faire tourner mon futur guide linéaire ( photo ci dessus )  . Il sera monté sur un axe central et entrainé par courroie .

Je cherche à calculer le couple moteur ( type NEMA  pas à pas ) qui me permettrai de faire tourner l'ensemble .

Comment je dois m'y prendre ? Existe t'il une formule qui me guiderai dans mon choix de moteur  ?

 

a bientôt

:)




#112275 Guide linéaire motorisé

Posté par cook sur 29 décembre 2020 - 04:30 dans Conseils et aide aux débutants, livres et kits en robotique

Bonjour à tous , je reviens sur le sujet sur lequel on a réalisé le code Arduino et qui marche très bien . Je voudrai essayer d'éclaircir quelques problèmes mécanique qui m'empêchent d'avancer sur un futur projet très ressemblant .
 
Le futur guide linéaire serai sur la base de celui ci , qui n'est d'autre que 4 guides linéaires montés sur un axe central . Les 4 guides sont entrainés en même temps par des engrenages  et un moteur nema 17 avec réducteur (27/1) .
 
Photo jointe .
 
L'idée étant de le faire tourner sur son axe central en inox de 25 mm . Quel type de moteur NEMA  pourrai faire tourner l'ensemble ?
Vos critiques et idées mécaniques m'intéresse .
Quand pensez vous ?

Image(s) jointe(s)

  • Guide linéaire.png



#110356 Guide linéaire motorisé

Posté par cook sur 25 juin 2020 - 08:22 dans Conseils et aide aux débutants, livres et kits en robotique

Bonjour, 

Ça y est ! J'ai  simplifier le code au niveau des pas dans la fonction float initMoteur (float InitDistance ) { .

 

Et j'ai surtout retiré le moins dans la fonction qui converti les Cm en pas .  J'ai essayé en vain 

avec stepper.setPinsInverted(true, false, false); , sans résultat et sans comprendre ; Mais alors pas du tout  .

 

Puis en fait il suffisait de mettre une vitesse négative !

Bon je suis ravi que sa marche et que c'est plus clair .

 

 

 

Je ne me souvient plus sur ce site ou l'on parle de (int32_t) . Ou je la retrouve l''explication ?

//Code avec la fonction des pas complete 



#include <AccelStepper.h>
AccelStepper stepper (1, 9, 8);
#include <LiquidCrystal.h>
LiquidCrystal lcd(12, 11, 5, 4, 3, 2);

const int PinBoutonInit = A0; //Bouton qui déplacera le chariot vers la buté à 30 cm
const int PinContactBute = A1;// Contact qui stope le chariot à 30 cm
const int PinBoutonReglageDistanceCm = A2;//Bouton de reglage distance en Cm
const int PinBoutonReglageDistanceMm = A3;//Bouton de reglage distance en Mm
const int PinBoutonReglageDistancePlus5Mm = A4;//Bouton de reglage distance + 5 Mm
const int PinBoutonReglageDistanceMoins5Mm = A5;//Bouton de reglage distance - 5 Mm
const int PinBoutonConfigurationPlateau = 6;//Bouton configuration Plateau à la distance écrite sur écran LCD
const int LED = 10;
const float distanceMin = 30.0 ; // reglage mécanique minimum de mon guide
const float distanceMax = 290.0 ; // reglage mécanique maximum de mon guide
//stepper.setPinsInverted(true, false, false);

float  ReglageAffichageDistance   (float NouvelleDistance)  {

  while (digitalRead(PinBoutonReglageDistancePlus5Mm) == 0) {// Bouton + 5 mm
    NouvelleDistance = NouvelleDistance + 0.5 ;
    if (NouvelleDistance > distanceMax ) {
      NouvelleDistance = distanceMin ;
    }
    attendreMs(300);
    Serial.println(NouvelleDistance);
    AfficherLaDistance(NouvelleDistance);
    AfficherLaDistancePouce(NouvelleDistance);
  }

  while (digitalRead(PinBoutonReglageDistanceMoins5Mm) == 0)  { // Bouton - 5 mm
    NouvelleDistance = NouvelleDistance - 0.5 ;
    if (NouvelleDistance < distanceMin ) {
      NouvelleDistance = distanceMax ;
    }
    attendreMs(300);
    Serial.println(NouvelleDistance);
    AfficherLaDistance(NouvelleDistance);
    AfficherLaDistancePouce(NouvelleDistance);
  }


  while (digitalRead(PinBoutonReglageDistanceMm) == 0) { // Bouton réglage des millimetres
    NouvelleDistance = NouvelleDistance + 0.01 ;
    if (NouvelleDistance > distanceMax ) {
      NouvelleDistance = distanceMin ;
    }
    attendreMs(100);
    Serial.println(NouvelleDistance);
    AfficherLaDistance(NouvelleDistance);
    AfficherLaDistancePouce(NouvelleDistance);
  }

  while (digitalRead(PinBoutonReglageDistanceCm ) == 0) { // Bouton réglage des cm

    NouvelleDistance = NouvelleDistance + 1 ;   // Le compteur s'incrémente de 1 cm
    if (NouvelleDistance > distanceMax) {
      NouvelleDistance = distanceMin ;
    }
    attendreMs(200);                            // on attend 500 ms sans utiliser la fonction delay()
    Serial.println(NouvelleDistance);
    AfficherLaDistance(NouvelleDistance);
    AfficherLaDistancePouce(NouvelleDistance);
  }
  return NouvelleDistance;       // quand on a fini d'incrémenter on retourne la valeur au reste du programme
}

int32_t ConversionDistanceCmEnPas (float DistanceEnCm) {   // On met un type d'entier car le nombre de pas c'est un entier
 int32_t DistanceEnPas = DistanceEnCm * 3905.4 ;// 1tour = 11cm = 42960 pas soit 390.54 pas pour 1 mm avec le signe - car inversion
 
 Serial.println("C");   // print utile que pour du débug à commenter ou supprimer plus tard ... 
 Serial.println(DistanceEnPas); // idem
 return DistanceEnPas ; // aprés la conversion, on retourne la valeur au reste du programme
}

void  ConfigurationPlateau (float Distance) {

  if (digitalRead(PinBoutonConfigurationPlateau) == 0)  {

    stepper.moveTo(ConversionDistanceCmEnPas(Distance));// move to prend en paramètre une distance en pas.
    stepper.runToPosition () ;
    attendreMs(100);

  }
  else {
     stepper.stop();
  }
}


void attendreMs (unsigned int attente) {
  unsigned long InstantouJappuis = millis();           // Variable qui enregistre le déroulement du temps qui passe depuis l'appuis
  while (millis() - InstantouJappuis <  attente ) { // décompte de 500ms en cours
  }
}



void  AfficherLaDistance  (float Distance) {
  lcd.clear();
  lcd.setCursor(0, 0);
  lcd.print (  " BUTEE " );
  lcd.setCursor(7, 0);
  lcd.print (  Distance  );
  lcd.setCursor(13, 0);
  lcd.print (  " cm "   );
}

void  AfficherLaDistancePouce  (float Distance) {

  lcd.setCursor(1, 1);
  lcd.print (  Distance / 2.54  );
  lcd.setCursor(11, 1);
  lcd.print (  " inch "   );
}



void  AfficherInitTermine () {
  lcd.clear();
  lcd.setCursor(0, 0);
  lcd.print (" Initialisation  "  );
  lcd.setCursor(0, 1 );
  lcd.print (" terminée "  );
  Serial.println ("Initialisation terminée " );
}

void  AfficherInitEnCours () {
  lcd.clear();
  lcd.setCursor(0, 0);
  lcd.print (" Initialisation  "  );
  lcd.setCursor(0, 1 );
  lcd.print (" en cours "  );
  Serial.println (" Initialisation en cours "  );

}

float initMoteur (float InitDistance ) {


  if (digitalRead(PinBoutonInit) == 0) {
    AfficherInitEnCours ();
    stepper.setSpeed(-3900);
    
    while (digitalRead(PinContactBute) == 1) {
      
      stepper.runSpeed();
       digitalWrite(10, LOW); // initialisation non réalisé
      // on attends la buté
    }
    stepper.stop(); // On remet à 0 les consignes de vitesse ...
   digitalWrite(10, HIGH);  // initialisation  réalisé

    InitDistance  = distanceMin ;
    stepper. setCurrentPosition (ConversionDistanceCmEnPas(distanceMin)) ;// Permet de mettre le moteur à sa position cible de 30 cm à la butée

  

    Serial.println (InitDistance);

    AfficherInitTermine ();
     attendreMs(1000);
    AfficherLaDistance(InitDistance) ;
  }
  return InitDistance;   // quand on a fini d'initialisé on retourne la valeur au reste du programme
}

void setup() {

  Serial.begin(9600);
  pinMode(A0, INPUT_PULLUP); //  pour le mettre en INPUT_PULLUP
  pinMode(A1, INPUT_PULLUP); //  pour le mettre en INPUT_PULLUP
  pinMode(A2, INPUT_PULLUP); //  pour le mettre en INPUT_PULLUP
  pinMode(A3, INPUT_PULLUP); //  pour le mettre en INPUT_PULLUP
  pinMode(A4, INPUT_PULLUP); //  pour le mettre en INPUT_PULLUP
  pinMode(A5, INPUT_PULLUP); //  pour le mettre en INPUT_PULLUP
  pinMode( 6, INPUT_PULLUP); //  pour le mettre en INPUT_PULLUP
  pinMode(10, OUTPUT);
  stepper.setMaxSpeed(4000);
  stepper. setAcceleration ( 500 ) ;
  lcd.begin(16, 2);
  lcd.print("START PRESS INIT");
}

void loop() {

  static float maDistance = 29; // Variable qui va stocker la distance de consigne
  maDistance = initMoteur (maDistance);  // Permet d'initialisé ma distance sur 30 cm
  maDistance = ReglageAffichageDistance (maDistance); // réglage de la distance de 30 à 290 cm
  Serial.println (maDistance );
  ConfigurationPlateau (maDistance) ;

}