- Moteur pas à pas:
- Pilote de moteur pas à pas ULN2003:
- Matériaux nécessaires:
- Schéma:
- Code et explication de travail:
Dans ce tutoriel, nous allons interfacer le moteur pas à pas à l'aide du MSP430. Le MSP-EXP430G2 est un outil de développement aka LaunchPad fourni par Texas Instruments pour apprendre et s'exercer à utiliser leurs microcontrôleurs. Cette carte fait partie de la catégorie MSP430 Value Line où nous pouvons programmer tous les microcontrôleurs de la série MSP430. Si vous êtes nouveau sur MSP, consultez notre tutoriel de démarrage avec MSP430.
Moteur pas à pas:
Le moteur pas à pas est un type de moteur à courant continu sans balais qui convertit les impulsions électriques en mouvements mécaniques distincts. L'arbre d'un moteur pas à pas tourne par étapes discrètes. Nous pouvons obtenir des étapes et une vitesse précises en fonction de nos besoins.
Nous utiliserons un moteur pas à pas bipolaire 35BYJ46, disponible à bas prix sur le marché. Il a 6 fils mais il est également livré avec 5 fils. Il y a 2 bobines dans notre moteur pas à pas. Chacun a 3 fils qui en sortent. Sur 3 fils, 1 est centré sur taraudé, les 2 autres fils étant connectés directement à la bobine. Au total, nous avons 4 fils de signal et 2 fils taraudés centrés qui sont connectés avec une alimentation 5-12V.
Dans le cas, s'il y a au total 5 fils sortant du moteur, alors 4 fils sont des fils de signal et 1 est centré sur les deux bobines. Comme ça.
Pour vérifier quel fil est centré ou quel est le fil de signal, vous devez vérifier la résistance des fils sortant du moteur. Ainsi, ces fils, qui sont connectés à la même bobine, ont une valeur de résistance élevée par rapport à la résistance de prise centrée.
Dans le diagramme ci-dessus, si nous avons vérifié la valeur de résistance des fils bleu et jaune et que la résistance entre eux est supérieure à la valeur entre jaune et rouge ou bleu et rouge. Ainsi, le fil rouge est centré sur le fil taraudé.
Nous avons précédemment interfacé le moteur pas à pas avec d'autres microcontrôleurs:
- Interfaçage du moteur pas à pas avec Arduino Uno
- Contrôle du moteur pas à pas avec Raspberry Pi
- Interfaçage du moteur pas à pas avec le microcontrôleur 8051
- Interfaçage du moteur pas à pas avec le microcontrôleur PIC
Le moteur pas à pas peut également être contrôlé sans microcontrôleur, voir ce circuit de pilote de moteur pas à pas.
Pilote de moteur pas à pas ULN2003:
La plupart des moteurs pas à pas ne fonctionneront qu'avec l'aide d'un module de pilotage. En effet, le module contrôleur (dans notre cas MSP) ne pourra pas fournir suffisamment de courant à partir de ses broches E / S pour que le moteur fonctionne. Nous allons donc utiliser un module externe comme le module ULN2003 comme pilote de moteur pas à pas. Il existe de nombreux types de modules de pilotage et la valeur nominale d'un module varie en fonction du type de moteur utilisé. Le principe principal de tous les modules de commande sera de fournir / absorber suffisamment de courant pour que le moteur fonctionne.
Dans ce projet, nous utiliserons le CI de pilote de moteur ULN2003. Le diagramme des broches de l'IC est donné ci-dessous:
Nous utiliserons 4 ports d'entrée et 4 ports de sortie si IC.
Matériaux nécessaires:
- MSP430
- Moteur pas à pas 35BYJ46 ou 28-BYJ48
- IC ULN2003
- Fils
- Planche à pain
Schéma:
Dans le diagramme ci-dessus, le fil ROUGE du moteur pas à pas n'est pas connecté à la broche 5 de l'IC. Le code de couleur de votre moteur pas à pas peut être différent des couleurs indiquées dans le schéma électrique. Alors, connectez les fils après avoir vérifié les bons fils de signal.
Nous écrirons notre code en utilisant Energia IDE. Il est identique à l'IDE Arduino et facile à utiliser. Un exemple de code pour piloter le stepper peut également être trouvé dans le menu d'exemple d'Arduino IDE.
Code et explication de travail:
Avant de commencer à programmer avec notre MSP430, voyons ce qui devrait réellement se passer dans le programme. Nous utiliserons la méthode de séquence en 4 étapes, nous aurons donc quatre étapes à effectuer pour effectuer une rotation complète. Considérez A, B, C et D comme quatre bobines.
Étape |
Broche sous tension |
Bobines sous tension |
Étape 1 |
6 et 7 |
A et B |
Étape 2 |
7 et 8 |
B et C |
Étape 3 |
8 et 9 |
C et D |
Étape 4 |
9 et 6 |
D et A |
Dans ce tutoriel, nous allons écrire le code du moteur pas à pas MSP430. Le programme complet se trouve à la fin du tutoriel, quelques lignes importantes sont expliquées ci-dessous.
Le nombre de pas par tour pour notre moteur pas à pas a été calculé à 32; donc nous entrons cela comme indiqué dans la ligne ci-dessous
const int STEPS = 32;
Ensuite, vous devez créer des instances dans lesquelles nous spécifions les broches auxquelles nous avons connecté le moteur pas à pas.
Stepper myStepper (STEPS, 6, 7, 8, 9);
Puisque nous utilisons la bibliothèque Stepper, nous pouvons définir la vitesse du moteur en utilisant la ligne ci-dessous. La vitesse peut être comprise entre 0 et 200 pour les moteurs pas à pas 35BYJ46.
Mystepper.setSpeed (200);
Maintenant, pour faire bouger le moteur d'un pas, nous pouvons utiliser la ligne suivante.
myStepper.step (ÉTAPES);
Puisque nous avons 32 pas et 64 comme rapport de démultiplication, nous devons déplacer 2048 (32 * 64 = 2048), pour faire une rotation complète. Maintenant, téléchargez le code ci-dessous et modifiez le no. d'étapes selon votre besoin.
C'est ainsi que vous pouvez interfacer le moteur pas à pas avec un microcontrôleur PIC, maintenant vous pouvez utiliser votre propre créativité et découvrir des applications pour cela. Il existe de nombreux projets qui utilisent un moteur pas à pas.