Comment programmer un moteur dans Arduino facilement et simplement? Guide étape par étape
Une broche Arduino peut être évaluée jusqu’à 5 volts et 40 mA , ce qui est insuffisant pour entraîner un moteur. Il faudra donc intégrer un driver pour amplifier le courant et rendre la plaque apte à déplacer le moteur.
Si vous souhaitez savoir comment le programmer, nous vous invitons à continuer la lecture. Nous vous expliquerons quel type de moteur vous pouvez programmer et quels modèles vous devez utiliser.
Mais ce n’est pas tout, vous trouverez également les étapes à suivre pour programmer un moteur à partir de zéro. Ne manquez rien et commencez par les meilleurs projets motorisés .
Un moteur peut-il être programmé sur n’importe quelle carte Arduino?
Une carte Arduino n’a pas assez de puissance pour déplacer un moteur (comme nous l’avons mentionné dans l’introduction dans les premières lignes de cet article), vous aurez donc besoin d’un amplificateur qui vous permet de déplacer un actionneur. Les moteurs que vous pouvez utiliser dans Arduino sont le type CC, le servomoteur, le moteur CC sans balais, le pilote L293D, le pilote L298, la carte de dérivation L298N, le moteur Shield . Dans cette liste se trouvent les amplificateurs de courant afin que les actionneurs puissent fonctionner correctement.
Types de moteurs à utiliser dans Arduino Quels sont tout ce qui existe?
Vous pouvez choisir les moteurs suivants pour vos projets à utiliser sur une carte Arduino.
Rencontrez chacun d’eux dans leurs coordonnées:
docteur moteur
C’est un moteur à courant continu , également appelé DC car il s’agit d’un courant continu. Sa principale caractéristique est de convertir l’énergie électrique en énergie mécanique grâce à un champ magnétique . Cela signifie que le moteur tourne constamment dans les deux sens, si la polarité du courant est modifiée.
Il est composé d’un stator ; qui est utilisé pour générer les pôles et est généralement construit avec des aimants ou des fils de cuivre; et par un rotor . Ce dernier composant est celui qui reçoit le courant continu et est fabriqué de manière cylindrique par du graphite ou d’autres alliages. Son utilisation principale est les moteurs de ligne, les moteurs pas à pas et les servomoteurs. Il est très courant de les trouver dans les jouets car leur vitesse peut être contrôlée.
Servomoteur
Le servomoteur est un type spécial de moteur qui est utilisé pour maintenir l’axe au même endroit , de cette manière, ils peuvent être tournés à 180 ° ou faire un tour complet. Il se caractérise par un couple important généré par son potentiomètre , qui fonctionne avec un moteur à courant continu et est utilisé pour déplacer les engrenages.
Par conséquent, un servomoteur est un boîtier composé d’une carte Arduino , d’un potentiomètre, d’un moteur à courant continu et d’engrenages. Il est principalement utilisé en robotique, il peut donc être vu dans les usines, les jouets et même dans les ascenseurs.
Pilote L293D
Le travail de cet appareil est de contrôler d’autres moteurs , ce qui en fait une pièce idéale pour les projets Arduino. Il peut fonctionner avec 4 moteurs de type DC ou avec 2 moteurs pas à pas ou, si vous préférez, avec 2 servomoteurs . Ce qui implique qu’il peut y avoir une combinaison de ceux-ci, comme le permettent vos borniers. En incluant 4 circuits individuels , vous pouvez contrôler le type de charge que chaque moteur recevra.
Il peut être utilisé sur une carte Arduino UNO selon ces broches:
- Numérique 3 – PWM_Motor2
- Numérique 4 – DIR_CLK
- Numérique 5 – PWM_Motor4
- Numérique 6 – PWM_Motor3
- Numérique 7 – DIR_EN
- Numérique 8 – DIR_SER
- Numérique 9 – Servo_1
- Numérique 10 – Servo_2
- Numérique 11 – PWM_Motor1
- Numérique 12 – DIR_LATCH
Pilote L298
Ce composant est chargé de contrôler la vitesse et la direction dans lesquelles les moteurs tourneront lorsqu’ils tournent. Elle est caractérisée en étant compatible avec une large gamme de température de fonctionnement, 20 ° C à + 135 ° C . Le courant de sortie généré par canal peut aller jusqu’à 2 ampères .
La connexion des broches est la suivante:
- Broche IN1 – MOTEUR A
- Broche IN2 – MOTEUR A
- Broche IN3 – MOTEUR B
- Broche IN4 – MOTEUR B
- Broche ENA – PWM
- Broche ENB – PWM
Moteur à courant continu sans balais
Il est également connu sous le nom de moteur sans balais car il n’a pas besoin de bagues collectrices pour produire un changement de polarité. Il se caractérise par sa lumière, ne nécessitant pas beaucoup d’ entretien et d’ être moins cher dans son coût de fabrication .
La complexité de sa manipulation a diminué ces derniers temps, ce qui en fait un outil largement utilisé en technologie. Pour trouver la polarité correcte, la détection de champ magnétique est utilisée au moyen du rotor. Son mécanisme se trouve dans les plateaux de lecteurs DVD et de refroidisseurs de disques.
Que dois-je garder à l’esprit lors du choix du moteur idéal pour mon projet Arduino?
Avant de choisir un moteur pour votre projet Arduino, vous devez prendre en compte ces facteurs:
- La vitesse du temps d’essorage. Autrement dit, vous devrez interpréter quelle est la vitesse optimale dont le moteur a besoin pour votre projet.
- La force appliquée à la masse , également appelée couple dans les moteurs rotatifs. Vous devez prendre en compte si le poids de l’objet que vous souhaitez déplacer est supérieur ou inférieur à la capacité que le moteur aura pour le déplacer.
- Capacité à fournir la charge électrique. Autrement dit, vous devez considérer la quantité d’énergie que le moteur est capable de donner dans un temps donné.
- Possibilité maximum de travail. Ceci est lié à la charge que le moteur doit travailler sans se rompre en raison de l’effort qu’il fait.
- Le niveau de précision est un autre facteur à prendre en compte, car les mouvements dont vous aurez besoin dans votre projet peuvent nécessiter plus ou moins de précision.
- Tension d’alimentation. Dans la partie électronique, il est important que vous sachiez qu’un moteur fonctionne à des tensions différentes, de sorte que la carte Arduino doit offrir la même tension nominale.
- Courant nominal. Cet élément fait référence à l’intensité du courant dont le moteur a besoin pour fonctionner. La résistance et la tension nominale doivent être prises en compte pour établir les valeurs logiques de fonctionnement.
- Énergie absorbée par le moteur à un instant donné. C’est ce qu’on appelle l’énergie électrique et il mesure les performances globales du moteur sur la carte Arduino.
En plus des valeurs mentionnées ci-dessus, vous devrez tenir compte des dimensions du moteur pour savoir s’il s’adapte à l’endroit, les supports de montage , le poids et la durée de vie, entre autres facteurs. Nous entendons par là que pour choisir le moteur idéal dans votre projet Arduino, vous devez prendre en compte de nombreux facteurs , car vous pouvez trouver un actionneur qui a une valeur plus élevée qu’un autre, ce qui n’implique pas qu’il soit le meilleur ou le bon pour vous.
Apprenez étape par étape comment programmer un moteur dans Arduino à partir de zéro
Pour programmer un moteur DC Brushless dans Arduino avec variation de vitesse et de rotation, vous devrez faire cette étape par étape:
Assemblez tous les composants
La première chose à faire est de connecter l’Arduino au contrôleur, puis la batterie au contrôleur et cette dernière au moteur . Il ne faut pas oublier que tout cela, vous devrez joindre au moyen de câbles. Vous pouvez sélectionner le type d’alimentation que vous souhaitez, c’est-à-dire si vous voulez 5 ou 12 volts. Pour cela, vous devrez utiliser un cavalier pour accéder directement à la carte Arduino. Ensuite, vous devrez connecter les broches 3 et 4 avec les extrémités de câble femelle que vous avez utilisées.
Assignez les bobines aux broches
«MISE À JOUR ✅ Voulez-vous programmer un moteur pour votre projet Arduino sans erreurs? ⭐ ENTREZ ICI ⭐ et apprenez tout de SCRATCH!»
Sachant que le moteur pas à pas a un mouvement de couple maximal , c’est-à-dire qu’à chaque étape il utilise 2 bobines, atteignant une consommation maximale; un couple plus faible , car vous pouvez choisir une bobine à la fois et obtenir une consommation modérée; et un mouvement d’un demi-pas , qui est la combinaison des deux situations. Il sera alors nécessaire d’affecter les bobines aux broches.
Pour cela, vous devrez utiliser:
- Broche 8 – BOBINE A
- Broche 9 – BOBINE B
- Broche 10 – BOBINE C
- Broche 11 – BOBINE D
Programmer le moteur
Vous devrez maintenant programmer manuellement le moteur .
Pour cela, vous devrez entrer dans la configuration et effectuer ces étapes pour un mouvement normal:
* / #define IN1 8 #define IN2 9 #define IN3 10 #define IN4 11 étape int [4] [4] = { {1100}, {0, 1, 1, 0}, {0, 0, 1, 1}, {1, 0, 0, 1} }; void setup () { pinMode (IN1, OUTPUT); pinMode (IN2, OUTPUT); pinMode (IN3, OUTPUT); pinMode (IN4, OUTPUT); } boucle vide () { pour (int i = 0; i <4; i ++) { DigitalWrite (IN1, étape [i] [0]); DigitalWrite (IN2, étape [i] [1]); DigitalWrite (IN3, étape [i] [2]); DigitalWrite (IN4, étape [i] [3]); retard (10); } }
Les codes pour programmer une paire mineure sont:
#define IN1 8 #define IN2 9 #define IN3 10 #define IN4 11 étape int [4] [4] = { {1, 0, 0, 0}, {0, 1, 0, 0}, {0, 0, 1, 0}, {0, 0, 0, 1} }; void setup () { pinMode (IN1, OUTPUT); pinMode (IN2, OUTPUT); pinMode (IN3, OUTPUT); pinMode (IN4, OUTPUT); } boucle vide () { pour (int i = 0; i <4; i ++) { DigitalWrite (IN1, étape [i] [0]); DigitalWrite (IN2, étape [i] [1]); DigitalWrite (IN3, étape [i] [2]); DigitalWrite (IN4, étape [i] [3]); retard (10); } }
Bien que vous deviez entrer ces codes pour que le moteur effectue le mouvement d’un demi-pas:
#define IN1 8 #define IN2 9 #define IN3 10 #define IN4 11 étape int [8] [4] = { {1, 0, 0, 0}, {1100}, {0, 1, 0, 0}, {0, 1, 1, 0}, {0, 0, 1, 0}, {0, 0, 1, 1}, {0, 0, 0, 1}, {1, 0, 0, 1} }; void setup () { pinMode (IN1, OUTPUT); pinMode (IN2, OUTPUT); pinMode (IN3, OUTPUT); pinMode (IN4, OUTPUT); } boucle vide () { pour (int i = 0; i <8; i ++) { DigitalWrite (IN1, étape [i] [0]); DigitalWrite (IN2, étape [i] [1]); DigitalWrite (IN3, étape [i] [2]); DigitalWrite (IN4, étape [i] [3]); retard (10); } }
Les meilleurs projets Arduino motorisés que vous pouvez bricoler à partir de zéro
Les meilleurs projets Arduino motorisés peuvent être trouvés dans cette liste:
Commande de moteur CC sans balais
Vous aurez besoin pour ce projet d’une carte Arduino Nano de type R3 , puis d’un moteur CC sans balais et d’ hélices pour rejoindre l’actionneur.
Les codes de l’émetteur sont:
# inclut <Servo.h> Servo esc; LogicielSérie hc12 (2, 3); // RX, TX int thr, ail, ele, rud; paramètre vide () { attacher (10); pinMode (A0, INPUT); En série. commencer (9600); commencer (9600); } boucle vide () { thr = map (analogRead (A0), 0, 1023, 0, 180); imprimer (thr); En série. imprimer (thr); retard (100); }
Vous devrez utiliser les codes de programmation suivants pour le récepteur:
# inclut <Servo.h> Servo esc; Entrée de chaîne; accélérateur int, th; paramètre vide () { attacher (10); En série. commencer (9600); commencer (9600); écrire (170); retard (2000); écrire (90); retard (2000); écrire (140); retard (2000); écrire (90); retard (2000); } boucle vide () { yes (String. available ()) { papillon = Série. readStringUntil ('\ n'); if (entrée. longueur ()> 0) { écrire (accélérateur); retard (10); } } }
Moteur avec potentiomètre
Pour ce projet, Arduino a besoin d’ un Arduino UNO, d’ un moteur, d’ un potentiomètre rotatif, d’ une plaque d’insertion , d’une résistance de 10K ohms, de LED et de câbles.
Une fois tous les composants joints, vous devrez saisir ces codes:
#define MOF_PIN 6 #define POT_PIN A1 pot int = 0; paramètre vide () { pinMode (MOF_PIN, SORTIE); pinMode (POT_PIN, INPUT); En série. commencer (9600); } boucle vide () { pot = analogRead (POT_PIN); En série. println (bateau); analogWrite (MOF_PIN, pot / 4); }
Contrôleur de moteur L293D