Premiers pas avec les moteurs pas à pas Arduino

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?

  • Elegoo 5pcs Moteurs Pas à Pas 5V 28BYJ-48 Stepper Motor + 5pcs Driver Board Carte Pilot ULN2003 + Câble Dupont Mâle vers Femelle
    Moteur pas à pas avec connecteur standard, branchable directement. Un affichage à 4 Leds indique quelle phase du moteur est en cours de fonctionnement (A, B, C ou D). Un connecteur en ligne 5 broches ( de type Dupont mâle ) est utilisé pour connecter les 4 phases du moteur au pilote ULN2003. Et l’UNL2003 à la carte de développement directement de l’autre côté. Taille carte de commande ULN2003 : 3,48 x 3 x 1,52 cm ; Diamètre du moteur pas à pas:2,7 cm ; Longueur câbles du moteur pas à pas:24 cm. Packaging dans une boîte en plastique refermable:5 Sets de 5 set ULN2003 Stepper Motor + Driver Board ( plus un petit cadeau )
  • ELEGOO Kit Robotique de Voiture Intelligent Automatique 4.0 avec UNO R3, Module de Suivi Linéaire, Capteur à Ultrasons, Télécommande IR, Jouet Éducatif pour l'Apprenant Arduino
    ELEGOO Voiture robot intelligente: un kit pédagogique pour les débutants pour acquérir une expérience pratique sur la programmation UNO, l'assemblage électronique et les connaissances robotique. Plus de 10 mises à niveau: capteur infrarouge intégré sur la carte, 3 modules de suivi de ligne sur une carte. Facile à assembler: toute l'interface du module a des ports Xh2.54, ce qui le rend beaucoup plus facile et très pratique pour assembler la voiture et réduire les erreurs. Modes de fonctionnement: suivi de ligne, évitement d'obstacles, télécommande IR et contrôle Bluetooth sur votre téléphone avec notre application sur iOS et Android. Kit basé sur la carte de couplage UNO R3. Tutoriel affiné: les instructions de rendu HD vous expliquent comment assembler et programmer la voiture robot étape par étape. Tous les programmes et codes nécessaires sont inclus.
  • ICQUANZX 5 Ensembles 28BYJ-48 ULN2003 5V Moteur Pas à Pas + Carte Pilote ULN2003 pour Arduino
    Moteur pas à pas avec une interface standard, lorsqu'il est utilisé directement enfichable. Une LED à quatre phases A, B, C, D indique l'état du travail du moteur pas à pas. 5 lignes 4 phases peuvent être utilisées pour le pilote de puce ULN2003 ordinaire, connectez-vous à la phase 2, supportez la carte de développement Avec une utilisation pratique, connexion directe Taille de la carte du module d'entraînement (pouces): 1,37 * 1,18 * 0,6; Diamètre du moteur pas à pas: 1,06 (in); Lignes de moteur pas à pas: 9.45 (in)