CABLAGE MOTEURS PAS à PAS

Un shield de pilotage pour 4 moteurs à courant continu ou 2 moteurs pas à pas, qui permet une alimentation sur 12V et qui n'utilise que 4 sorties Pwm (sur 6) et 2 entrées analogiques (sur 6) de l'Arduino

CABLAGE MOTEURS PAS à PAS

Message non lude semtou » Mer 29 Juin 2011 15:30

Salut
Comment câbler un moteur pas à pas BIPOLAIRE sur le bornier M2 et M1 ?
Faut-il mettre une bobine par bornier ?
A +
SEMTOU
Avatar de l’utilisateur
semtou
 
Messages: 35
Inscription: Jeu 23 Déc 2010 08:31
Localisation: Toulouse

Re: CABLAGE MOTEURS PAS à PAS

Message non lude Lionel » Mer 29 Juin 2011 15:45

Bonjour,

c'est un stepper et ses deux bobines par bornier,

stepper 1 : une bobine sur M1 et une sur M2
stepper 2 : une bobine sur M3 et une sur M4
Image - Distributeur officiel Arduino - Conception de shields
Avatar de l’utilisateur
Lionel
 
Messages: 734
Inscription: Mar 21 Déc 2010 09:52
Localisation: Toulouse

Re: CABLAGE MOTEURS PAS à PAS

Message non lude semtou » Mer 29 Juin 2011 15:48

ok merci Lionnel

J'ajouterai ceci :
dans le programme exemple de la librairie : (juste en dessous du **** ICI ******)
Code: Tout sélectionner
// Snootlab Max 7313 Motor shield library
// Based on Adafruit Motor shield library
// https://github.com/adafruit/Adafruit-Motor-Shield-library
// copyleft Snootlab, 2011
// this code is public domain, enjoy!


#include <Wire.h>
#include <snootor.h>

#define FREQ_MIN 100
#define FREQ_STEP 50
#define FREQ_COUNT 20


SnootorStep M2;

void setup(){
  Serial.begin(115200);
  Wire.begin();

//********************* ICI ******************************
  M2.init(100,48,2, MOTOR_MODE_HALFSTEP);
//  M2.init(100,48,2, MOTOR_MODE_FULLSTEP);
//  M2.init(100,48,2, MOTOR_MODE_SIXWIRE);
}

void loop(){
  Serial.println("start loop...");
  for (long d=0;d<FREQ_COUNT;d++){
    Serial.print("Round ");
    Serial.println(d,DEC);
    Serial.print(" - millis ");
    Serial.println(millis(),DEC);
    M2.forward(576);
    while(!M2.stopped()){
      SC.delay(200);
      SC.dump();
    }
    delay(2000);
    M2.setDelay(FREQ_MIN+d*FREQ_STEP);
  }
}

Ya le numéro du moteur :
M.init(<FREQ>,<NB PAS>,<NUMERO MOTEUR>, <MOTOR_MODE>);
M2.init(100,48,2, MOTOR_MODE_HALFSTEP);
Si vous êtes sur les borniers M1 et M2 il faut donc mettre 1 soit :
M2.init(100,48,1, MOTOR_MODE_HALFSTEP);

Voilou.
Avatar de l’utilisateur
semtou
 
Messages: 35
Inscription: Jeu 23 Déc 2010 08:31
Localisation: Toulouse


Retourner vers Rotoshield

Qui est en ligne

Utilisateurs parcourant ce forum: Aucun utilisateur enregistré et 1 invité