Bonsoir,
Résultat de mes recherches et essais :
Tout d'abord, voici un document qui donne des caractéristiques du NEMA 11 :
.
Nema11_motors_2022.pdf
.
Bon, ça ne correspond pas à la marque de mon moteur, mais ça donne une idée et surtout, ça donne l'encombrement et les côtes de fixation .
Les caractéristiques du mien doivent être différentes car, en plus, c'est un moteur hybride . . .
Pour ceux qui veulent connaitre la différence avec un moteur classique , voilà des éléments de réponse
ici
Ceci étant dit, j'ai fait un p'tit montage avec des restes des essais de l'ascenseur de Patrice :
.
IMG_3366.jpg
.
Et j'ai fait un bout de programme :
Code : Tout sélectionner
/* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
* * * * * * * * * *
* * * * * Tests moteur NEMA 11 * * * * *
* * * * * * * * * *
* * * * * Piloté par driver TMC 2209 * * * * *
* * * * * * * * * *
* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * */
#include <AccelStepper.h>
AccelStepper Moteur = AccelStepper(1, 4, 3); // 1=Driver, Pin 4=pas, Pin 3=direction
const byte pinCdDriver = 2; // vrai = driver désactivé
const byte pinZero = A4 ; // Entrée du détecteur à effet hall du zéro
const byte pinTestAller = A1 ;
const byte pinTestRetour = A0 ;
const byte pinMS1 = 8;
const byte pinMS2 = 9; // MS1 MS2 µStep
// 0 0 8
boolean MS1 = LOW ; // 1 0 32
boolean MS2 = LOW ; // 0 1 64
boolean ini ; // 1 1 16
int Vitesse = 4500 ; // Défini la vit. de rot. du moteur en (µ)steps / sec
int Accel = 1800 ; // Défini l'accélération du moteur
unsigned long NbTours = 120000 ;
unsigned long Destination ;
void setup()
{
pinMode (pinZero, INPUT);
pinMode (pinCdDriver, OUTPUT);
pinMode (pinTestAller, INPUT);
pinMode (pinTestRetour, INPUT);
pinMode (pinMS1, OUTPUT);
pinMode (pinMS2, OUTPUT);
Moteur.setCurrentPosition(0);
Moteur.setMaxSpeed(Vitesse);
Moteur.setAcceleration(Accel);
}
void loop()
{
if(digitalRead(pinTestAller)){ Destination = NbTours ; Bouge(); }
if(digitalRead(pinTestRetour)){ Destination = 0 ; Bouge(); }
}
//* * * * * * * * * * * * * * *
void Bouge ()
{
digitalWrite(pinCdDriver,LOW);
Moteur.moveTo(Destination);
ini = true ;
while (ini) {
Moteur.run();
if ( !Moteur.run() ){ ini = false ; }
}
digitalWrite(pinCdDriver,HIGH);
}
Ben force est de reconnaitre que ça marche bien avec un couple non négligeable .
J'ai juste du diminuer un peu de courant au moyen du fameux petit potentiomètre situé sur le driver . Sinon il y avait un échauffement qui aurait pu devenir excessif . Et aussi, un courant trop élevé peut provoquer des pertes de pas et surtout de micro pas .
Bilan : petit moteur intéressant .
Il faut néanmoins en avoir l'utilité car son coût est sensiblement le même que pour un NEMA 17 .
Et il est moins facile à trouver . . .
Sinon, il s'utilise comme un NEMA 17
Voilà voilà !
Vous n’avez pas les permissions nécessaires pour voir les fichiers joints à ce message.