Raspberry PI Tutorial

Premiers pas avec les moteurs pas à pas Arduino

Par Thomas, le 13 novembre 2020
Premiers pas avec les moteurs pas à pas Arduino

Les microcontrôleurs Arduino sont extrêmement populaires parmi les fabricants. L’une des principales raisons est la polyvalence des minuscules cartes à faible consommation d’énergie. De même, il existe des tonnes de composants matériels différents disponibles pour connecter divers appareils tels que des LED, des servomoteurs et une multitude d’autres pièces et pièces. Les moteurs pas à pas sont d’excellents ajouts aux projets. Apprenez tout sur la prise en main des moteurs pas à pas Arduino, de ce qu’est un moteur pas à pas à la façon d’en programmer un!

Qu’est-ce qu’un moteur pas à pas et comment sont-ils utilisés?

Avant de programmer un moteur pas à pas, il est important de comprendre ce qu’est un moteur pas à pas. C’est une sorte d’hybride d’un servomoteur et d’un moteur à courant continu. Un moteur pas à pas compatible Arduino peut être positionné avec précision et déplacé vers l’arrière ou vers l’avant en un seul pas ou en continu. Les moteurs pas à pas sont assez courants dans divers appareils électroniques tels que les imprimantes 3D, les appareils photo et les lecteurs DVD ou Blu-ray. Par exemple, une imprimante 3D peut utiliser un moteur pas à pas pour le positionnement exact de la tête d’impression. Un appareil photo équipé d’une fonctionnalité de zoom à distance ou d’une fonction de mise au point automatique peut utiliser un moteur pas à pas pour obtenir un mouvement précis. Alors que les moteurs pas à pas fonctionnent de la même manière que les moteurs à courant continu, ils sont plutôt contrôlés par l’application d’impulsions électriques à courant continu aux bobines internes qui déplacent ensuite le moteur, comme son nom l’indique, par étapes.

programmation de commande de moteur pas à pas arduino - moteur pas à pas bipolaire

Exemple de moteur pas à pas bipolaire. Source de l’image: Fritzing.org, utilisée avec permission sous la licence CC-By-SA

Alors, comment fonctionnent les moteurs pas à pas? Fondamentalement, un noyau magnétique est enveloppé dans des bobines qui servent d’électroaimants. Quel que soit le nombre de bobines physiques présentes, la plupart des moteurs pas à pas utilisent généralement deux bobines, ou une paire de bobines puis subdivisées en bobines plus petites. Et les bobines sont connectées aux bornes positives et négatives. En décomposant davantage les moteurs pas à pas, vous trouverez quelques types différents, y compris des moteurs pas à pas bipolaires et unipolaires. Un moteur pas à pas unipolaire présente une configuration où seule la moitié de chaque bobine est utilisée à un moment donné. En revanche, un moteur pas à pas bipolaire utilise deux bobines de fil, chacune généralement avec deux connexions pour un total de quatre connecteurs. La bobine entière est utilisée pour une efficacité accrue, mais au prix de la complexité du contrôleur car la polarité de la tension doit être inversée. De même, les moteurs pas à pas unipolaires peuvent ne pas être aussi efficaces, mais le contrôle est plus facile car il n’y a pas d’inversion de polarité nécessaire.

commande et programmation de moteur pas à pas arduino - exemple de moteur pas à pas unipolaire

Exemple de moteur pas à pas unipolaire. Source de l’image: Fritzing.org, utilisée avec permission sous la licence CC-By-SA

Qu’est-ce qu’un moteur pas à pas: C’est similaire à un hybride d’un moteur à courant continu et d’un servomoteur dans lequel un moteur peut être positionné à des emplacements précis en déplaçant un pas ou une fraction de pas à la fois.

Le moteur pas à pas utilise:

  • Imprimantes 3D: positionnement de la tête d’impression)
  • Caméras: autofocus, zoom à distance)
  • Lecteurs DVD et Blu-ray: ouverture et fermeture d’un lecteur de disque

Types de moteurs pas à pas:

  • Bipolaire: utilise toutes les bobines, efficace mais complexe à utiliser car il y a une inversion de polarité nécessaire
  • Unipolaire: utilise la moitié de toutes les bobines, inefficace mais plus facile à utiliser car il ne nécessite pas d’inversion de polarité

Premiers pas avec les moteurs pas à pas Arduino

Afin de jouer avec les moteurs pas à pas, vous aurez besoin de quelques articles. Tout d’abord, une carte Arduino. Vous aurez besoin d’un moteur pas à pas, d’une carte d’expérimentation 830 points de liaison, d’un module de commande de moteur pas à pas, d’une alimentation, de fils DuPont femelle à mâle, de fils de cavalier mâle à mâle et d’un adaptateur 9V1A.

Liste des pièces du moteur pas à pas:

Pour ce projet, j’ai utilisé des composants d’un kit de démarrage Arduino, plus précisément un kit de démarrage Elegoo Uno R3. Vous devriez pouvoir vous procurer un pack Arduino complet ou acheter des pièces à la pièce. Votre liste de pièces variera selon que vous utilisez ou non un réseau de moteurs pas à pas unipolaire ou bipolaire. Nous examinons un moteur pas à pas unipolaire avec quatre broches de contrôleur.

Câblage d’un moteur pas à pas

Il y a un Arduino Uno R3, un moteur pas à pas et une carte de dérivation entre les deux. Donc, les connexions physiques iront: Arduino Uno R3-Carte de dérivation-moteur pas à pas. Dans cet exemple, nous utilisons quatre broches pour contrôler le moteur pas à pas lui-même. Ce seront les broches 8, 9, 10 et 11 sur l’Arduino. D8, D9 PWM (modulation de largeur d’impulsion, un moyen d’abaisser la moyenne fournie par un signal électrique), D10 PWM et D11 PWM se raccordent à In4, In3, In2 et In1 sur la carte de dérivation. Et le sol va au sol.

Arduino> Connecteurs de carte de dérivation:

D8> In4

D9> In3

D10> In2

D11> In1

Gnd> Gnd

Ensuite, sur la carte de dérivation> côté moteur pas à pas, out1 (16) va à la bobine 4, sortie 2 (15) à la bobine 3, sortie 3 (14) à la col 2, sortie 4 (13) à la bobine 1.

Carte de dérivation> connecteurs de moteur pas à pas:

Out 1 (broche 16)> Bobine 4

Out 2 (broche 15)> Bobine 3

Out 3 (broche 14)> Bobine 2

Out 4 (broche 13)> Bobine 1

Com 9> Com rouge

Et la batterie / source d’alimentation doit être connectée au connecteur + 5-12V sur la carte de dérivation.

Code du moteur pas à pas Arduino

Une fois que vous avez correctement connecté tous vos composants, vous devrez utiliser du code pour programmer réellement votre moteur pas à pas Arduino. Vous pouvez écrire le vôtre à partir de zéro ou utiliser un exemple de code. Voici un exemple de code de moteur pas à pas Arduino, stepper_oneRevolution, directement depuis l’IDE Arduino (environnement de développement intégré):

/*
 Stepper Motor Control - one revolution

 This program drives a unipolar or bipolar stepper motor.
 The motor is attached to digital pins 8 - 11 of the Arduino.

 The motor should revolve one revolution in one direction, then
 one revolution in the other direction.


 Created 11 Mar. 2007
 Modified 30 Nov. 2009
 by Tom Igoe

 */

#include <Stepper.h>

const int stepsPerRevolution = 200;  // change this to fit the number of steps per revolution
// for your motor

// initialize the stepper library on pins 8 through 11:
Stepper myStepper(stepsPerRevolution, 8, 9, 10, 11);

void setup() {
  // set the speed at 60 rpm:
  myStepper.setSpeed(60);
  // initialize the serial port:
  Serial.begin(9600);
}

void loop() {
  // step one revolution  in one direction:
  Serial.println("clockwise");
  myStepper.step(stepsPerRevolution);
  delay(500);

  // step one revolution in the other direction:
  Serial.println("counterclockwise");
  myStepper.step(-stepsPerRevolution);
  delay(500);
}

Vous pouvez jeter un œil à divers attributs tels que le sens antihoraire et les modifier dans le sens horaire, ou modifier RPM, l’attribut myStepper et d’autres parties de votre code Arduino. De cette façon, vous pouvez modifier la façon dont le moteur pas à pas se déplace.

Moteurs pas à pas Arduino – Réflexions finales

Bien que les moteurs pas à pas Arduino puissent sembler intimidants, ils sont assez faciles. Vous pouvez trouver un exemple de code pour le contrôle de moteur pas à pas dans l’IDE Arduino, vous n’avez même pas besoin de programmer quoi que ce soit vous-même. Il est sans doute plus difficile du point de vue matériel de tout connecter correctement. Mais même ce n’est pas très difficile, tant que vous faites attention. Les moteurs pas à pas sont très utiles, et pouvoir les contrôler élèvera vraiment vos projets de fabricant.

À votre tour: quels composants Arduino appréciez-vous le plus?

Thomas

Thomas

Fan de Raspberry Pi de la première heure, je suis l'évolution de ces micro-pc depuis maintenant 5 ans. En plus de l'actualité je propose de nombreux tutoriels pour vous aider à exploiter pleinement votre nano-ordinateur côté domotique ou retro-gaming.