Aller au contenu


Photo
- - - - -

tressage avec 2 moteurs pas à pas


  • Veuillez vous connecter pour répondre
2 réponses à ce sujet

#1 cook

cook

    Membre occasionnel

  • Membres
  • Pip
  • 128 messages

Posté 13 janvier 2026 - 06:16

Bonjour à tous , en quelques lignes je vais vous présenter mon projet . Le but étant de tresser la corde placé entre les 2 moteurs . Pour cela, je vais avoir besoin de réaliser des mouvements précis sur mes moteurs . Je vais compléter mon code avec des boutons , un écran LCD et un potentiomètre .
 
 Voici l'explication pour le code que je cherche à réaliser pour faire fonctionner 2 moteurs pas à pas, face à face .
Ce qui est important c'est d'utiliser la librairie Accel stepper pour un démarrage progressif .
 
 
 
* Dans n'importe quel cas d'utilisation des moteurs il me faut faire varier la vitesse à l'aide d'un potentiomètre de toute les vitesses moteur ,(qu'un seul potentiomètre) .
* Rajouter un bouton arrêt , pour stopper le programme (bouton unique si possible ) .
 
 
             1)  LA MARCHE AVANT 
 a) Sur un écran LCD ( ligne 2 ), régler le nombre de tour de la bobine à effectuer par le bouton réglage bobine (100,200 jusqu'à 1000 )puis retour à 100  en boucle .
 B) J'appuis sur le bouton marche avant de la bobine , les 2 moteurs tournent en même temps mais en sens contraire .
 
             2) LA MARCHE ARRIERE
 c) Sur un écran LCD ( ligne 2 ) régler le nombre de tour de la bobine à effectuer  (100,200 jusqu'à 1000 )puis retour à 100 en boucle .
 d) J'appuis sur le bouton marche arrière de la bobine , les 2 moteurs tournent en même temps mais en sens contraire . Mais dans la direction opposé de la marche avant.
 
            3) TORSADE HORAIRE
 e)   Sur un écran LCD ( ligne 1 ) régler le nombre de tour de la torsade à effectuer par un bouton réglage torsade (de 1 à 20 ) puis retour à 1 en boucle .
 f)   J'appuis sur le bouton torsade horaire , les 2 moteurs tournent en même temps dans le même sens .
 
            4) TORSADE ANTI HORAIRE
 g)   Sur un écran LCD ( ligne 1 ) régler le nombre de tour de la torsade à effectuer  (de 1 à 20 ) puis retour à 1 en boucle .
 h)   J'appuis sur le bouton torsade anti horaire , les 2 moteurs tournent en même temps dans le même sens  . Mais dans la direction opposé du sens horaire.
 
 
 
J'ai déjà effectué un code avec vous . C'est pas si simple et cela fait quelques temps . Toute aide sera apprécié . Je vais rajouter quelques lignes de variables pour le code . 
 
En vous remerciant 
cook
 

Image(s) jointe(s)

  • 2 moteur pas a pas.jpg


#2 cook

cook

    Membre occasionnel

  • Membres
  • Pip
  • 128 messages

Posté 13 janvier 2026 - 06:20

#include <AccelStepper.h>
#include <LiquidCrystal.h>

LiquidCrystal lcd(22, 23, 24, 25, 26, 27);

AccelStepper stepper1 (1, 4, 5); // 1 pour dire DRIVER. 4 c'est le pul + sur l’arduino et 5 le dir +
AccelStepper stepper2 (1, 7, 8); // 1 pour dire DRIVER. 7 c'est le pul + sur l’arduino et 8 le dir +


const int BoutonArret = 29; 
const int BoutonReglageTourBobine = 34;
const int BoutonMarcheAvantBobine = 38;
const int BoutonMarcheArriereBobine = 42;
const int BoutonReglageTorsade = 32;
const int BoutonMarcheTorsadeHoraire = 36;
const int BoutonMarcheTorsadeAntiHoraire = 40;

const int PotVitesseMot = A0;







#3 cook

cook

    Membre occasionnel

  • Membres
  • Pip
  • 128 messages

Posté 13 janvier 2026 - 06:46


#include <AccelStepper.h>
AccelStepper stepper1 (1, 4, 5); // 1 pour dire driver. 4 c'est le pul + sur l’arduino et 5 le dir +
AccelStepper stepper2 (1, 7, 8); // 1 pour dire driver. 7 c'est le pul + sur l’arduino et 8 le dir +

#include <LiquidCrystal.h>
LiquidCrystal lcd(22, 23, 24, 25, 26, 27);



const int Boutonarret = 29; //arret de tout mouvement
const int BoutonReglageTourBobine = 34;//bonton de reglage qui donne le nombre de tour de la bobine sur le LCD (de 100,200 à 1000)puis retour à 100 en boucle .
const int Boutonmarcheavantbobine = 38;//Bouton de marche avant de la bobine
const int Boutonmarchearrierebobine = 42;//Bouton de marche arrière de la bobine
const int BoutonReglagetorsade = 32;// bonton de reglage qui donne le nombre de tour de la torsade sur le LCD (de 1,2 à 20)puis retour à 1 en boucle .
const int BoutonMarchetorsadeHoraire = 36;//Bouton marche torsade sens horaire
const int BoutonMarchetorsadeAntiHoraire = 40;//Bouton marche torsade sens anti-horaire

const int PotVitesseMot = A0;// Modifie la vitesse du moteur



void setup() {
  Serial.begin(9600);
  
  pinMode(Boutonarret, INPUT_PULLUP); 
  pinMode(BoutonReglageTourBobine, INPUT_PULLUP);
  pinMode(Boutonmarchearrierebobine, INPUT_PULLUP); 
  pinMode(Boutonmarcheavantbobine, INPUT_PULLUP); 
  pinMode(BoutonReglagetorsade, INPUT_PULLUP);
  pinMode(BoutonMarchetorsadeHoraire, INPUT_PULLUP); 
  pinMode(BoutonMarchetorsadeAntiHoraire, INPUT_PULLUP); 
  
  lcd.begin(16, 2);
  lcd.print("START PRESS INIT");



}


void loop() {
  // put your main code here, to run repeatedly:

}





1 utilisateur(s) li(sen)t ce sujet

0 members, 1 guests, 0 anonymous users