Skip to Content

Contrôle de mouvement et actionnement pour Arduino

Contrôle de mouvement et actionnement pour Arduino

Dans cet article de blog, nous vous proposons un aperçu complet des moteurs et actionneurs les plus courants utilisés pour le contrôle du mouvement et l’actionnement dans les projets Arduino. Qu’il s’agisse de la simplicité d’un moteur DC, de la précision d’un moteur pas à pas ou du mouvement angulaire spécifique d’un servo, nous avons tout ce qu’il vous faut.

Au-delà de leur simple identification, nous expliquerons leur fonctionnement, leurs applications typiques, ainsi que des conseils pour choisir le bon moteur pour votre prochain projet. Si vous souhaitez ajouter du mouvement à votre création Arduino ou êtes simplement curieux des moteurs qui font vibrer vos gadgets, ce guide vous éclairera. Plongeons-y et mettons vos projets en mouvement !

Makerguides is a participant in affiliate advertising programs designed to provide a means for sites to earn advertising fees by linking to Amazon, AliExpress, Elecrow, and other sites. As an Affiliate we may earn from qualifying purchases.

Contrôle du mouvement et actionnement

Moteurs DC

Les moteurs DC sont sans doute les moteurs les plus simples et les plus répandus dans le domaine de l’électronique. Ils fonctionnent sur le principe de conversion de l’énergie électrique en courant continu (DC) en énergie mécanique, produisant une rotation continue. La différence principale avec d’autres moteurs réside dans leurs balais, qui fournissent le courant au rotor. Les moteurs DC sont faciles à utiliser et existent en différentes tailles, des petits modèles alimentés par pile bouton aux puissants utilisés dans les véhicules électriques.

Les moteurs DC sont utilisés dans de nombreux projets DIY, jouets, ventilateurs, et même certains appareils électroménagers. Leur rotation continue les rend particulièrement adaptés à tout ce qui doit tourner ou pivoter, comme les roues d’un robot ou les pales d’un ventilateur. Voici une photo d’un petit moteur DC souvent utilisé dans les projets Arduino :

Small DC motor for motion and actuation

Gikfun 1.5V-6V Type 130 Miniature DC Motors 

Vous ne pouvez généralement pas piloter un moteur DC directement depuis une broche de sortie Arduino. Vous aurez besoin d’un shield moteur pour fournir le courant nécessaire. Les choix courants sont le L298N ou le L293D shield moteur. Voici une photo et un lien pour le L298N :

L298N motor driver shield

HiLetgo 4pcs L298N Motor Driver Controller Board Module Stepper Motor DC Dual H-Bridge

Consultez notre tutoriel sur how to control a DC motor with an Arduino pour plus de détails.

Points clés à considérer

Les moteurs DC peuvent consommer beaucoup d’énergie, surtout au démarrage ou s’ils se bloquent. Cela peut surcharger l’alimentation de votre Arduino ou même l’endommager. Vérifiez toujours les besoins en puissance du moteur et assurez-vous que votre Arduino peut les supporter. Si le moteur nécessite plus de puissance que ce que l’Arduino peut fournir, utilisez une source d’alimentation externe.

Notez que les moteurs DC peuvent générer des parasites électriques qui risquent d’interférer avec d’autres parties de votre projet. Il est conseillé d’ajouter une diode ou un condensateur pour limiter cela.

Moteurs DC sans balais (BLDC)

Contrairement aux moteurs DC, les moteurs BLDC éliminent les balais, réduisant ainsi les frottements, l’usure et les besoins en maintenance. Ils utilisent un contrôleur pour inverser la direction du courant dans les bobinages du moteur, produisant la rotation. Cette caractéristique leur confère une meilleure efficacité et une durée de vie plus longue, ce qui en fait un meilleur choix pour les applications exigeant fiabilité et performance, mais à un coût plus élevé.

Couramment utilisés dans les drones, les outils haute performance et les ventilateurs d’ordinateur, les BLDC sont appréciés pour leur fonctionnement fluide, leur efficacité énergétique et leur couple élevé. Les drones, en particulier, bénéficient des BLDC grâce à leur légèreté et leur grande réactivité, essentielles pour la stabilité et la maniabilité.

Vous aurez besoin d’un contrôleur de vitesse électronique (ESC) pour piloter et contrôler un moteur DC sans balais. Voici une photo d’un kit typique pour drones, contenant le contrôleur et le BLDC :

BLDC with controller for motion and actuation

BGNing A2212 1400kv Brushless Outrunner Motor 10t+ 30a Speed Controller ESC,Rc Aircraft

Points clés à considérer

Les BLDC nécessitent des mécanismes de contrôle complexes et/ou un contrôleur de vitesse électronique (ESC). Ils peuvent aussi consommer un courant important, ce qui peut poser des problèmes d’alimentation et générer de la chaleur.

Les parasites électriques des BLDC peuvent interférer avec d’autres composants de votre projet, donc un bon câblage à la terre et un blindage sont nécessaires. Vérifiez toujours les tensions et courants du moteur pour éviter les dommages, et considérez les besoins en couple, surtout au démarrage.

Moteurs pas à pas

Les moteurs pas à pas, comme leur nom l’indique, se déplacent par étapes distinctes. Chaque rotation est divisée en un grand nombre de pas, et le moteur peut être commandé pour effectuer n’importe quel nombre de ces pas à la fois. Cela les rend exceptionnellement précis, avec la capacité de contrôler l’angle exact de rotation. Contrairement aux moteurs DC continus, les moteurs pas à pas peuvent se déplacer et maintenir une position spécifique, ce qui les rend indispensables dans les machines CNC et les imprimantes 3D.

Voici une photo du très courant NEMA 17 stepper motor:

NEMA 17 stepper motor for motion and actuation

Twotrees Nema17 Stepper Motor 17HS 4023 Stepper motor Bipolar 42 Motor 4-Lead Wire with 1m Cable 23mm 42BYGH 1.5A Motor

En général, vous ne contrôlez pas ou ne pilotez pas un moteur pas à pas directement depuis un MCU, mais utilisez un shield driver. Les drivers courants sont les puces A4988 ou DRV8825. Voici une photo d’un module driver A4988 avec un dissipateur thermique :

A4988 stepper motor driver

WWZMDiB A4988 Stepper Motor Drive modules with Heat Sink 

Nous avons de nombreux tutoriels sur how to control stepper motors avec différents drivers. Jetez un œil.

Points clés à considérer

Les moteurs pas à pas peuvent consommer beaucoup de courant, et s’ils sont alimentés directement par l’Arduino, cela peut l’endommager. Utilisez toujours une alimentation externe et un driver moteur.

Sachez que si un moteur pas à pas est sollicité trop fortement ou trop rapidement, il peut manquer des pas, ce qui entraîne un positionnement inexact.

Enfin, les moteurs pas à pas peuvent chauffer lors d’une utilisation prolongée. Assurez-vous qu’ils bénéficient d’une ventilation adéquate et envisagez d’ajouter un dissipateur thermique s’ils chauffent trop.

Servomoteurs

Les servomoteurs sont uniques en ce qu’ils fournissent un mouvement angulaire contrôlé, généralement de 0° à 180°. À l’intérieur, un mécanisme de rétroaction, souvent un potentiomètre, ajuste continuellement la position pour maintenir l’angle désiré. Cela rend les servos extrêmement précis pour les tâches basées sur l’angle, mais limite leur amplitude de rotation.

Ce mouvement restreint mais précis les rend particulièrement adaptés à des tâches comme ajuster les volets d’un avion jouet, orienter une caméra à un angle souhaité ou positionner les membres d’un robot.

La photo ci-dessous montre le très courant SG90 micro servomoteur :

Micro servo motor for motion and actuation

Hanaive SG90 9G Micro Servo

Nous avons plusieurs tutoriels sur how to control servo motors de différents types utilisant divers drivers.

Points clés à considérer

Les servos peuvent consommer plus de courant que ce que l’Arduino peut fournir, surtout les plus gros. Ne les alimentez pas directement depuis l’Arduino.

Les servos nécessitent des signaux à largeur d’impulsion spécifique pour définir leur position. Bien que l’Arduino puisse générer ces signaux, vérifiez toujours votre code pour vous assurer d’envoyer les bonnes commandes. Des signaux incorrects peuvent faire vibrer le servo ou le faire bouger de manière imprévisible. De plus, rappelez-vous que la plupart des servos ont une plage de rotation limitée. Ne les forcez pas au-delà de leurs limites, sous peine de les endommager.

Enfin, vérifiez toujours les spécifications du servo. Différents servos ont des exigences différentes en couple, vitesse et tension. Utiliser un type inadapté peut entraîner de mauvaises performances ou des dommages.

Solénoïdes

Les solénoïdes fonctionnent sur un principe simple : lorsque l’électricité circule dans leur bobine, un champ magnétique est généré, attirant un noyau métallique ou une tige vers le centre de la bobine. Cette action peut produire une force de poussée ou de traction. Lorsque l’alimentation est coupée, le noyau revient généralement à sa position initiale, soit par un ressort, soit par une autre force externe.

Ce mouvement linéaire est utilisé dans de nombreuses applications. Du simple mécanisme de sonnette à la bascule des flippers dans les machines à billes, voire les démarreurs automobiles, les solénoïdes sont partout.

La photo ci-dessous montre un solénoïde typique :

Solenoids for motion and actuation

uxcell a14092600ux0438 Open Frame Actuator Linear Mini Push Pull Solenoid Electromagnet, DC 4.5V, 40 g/2 mm

Points clés à considérer

Lors de l’utilisation de solénoïdes dans des projets Arduino, rappelez-vous qu’ils consomment beaucoup de courant, surtout lorsqu’ils sont activés. Ne les alimentez pas directement depuis l’Arduino, cela pourrait endommager la carte. Utilisez plutôt une source d’alimentation externe et un transistor ou relais pour contrôler le solénoïde en toute sécurité.

Les solénoïdes créent un champ magnétique lorsqu’ils sont alimentés, ce qui peut provoquer des interférences avec l’électronique proche. Placez-les à distance des composants sensibles et envisagez d’ajouter une diode pour gérer les pics de tension.

Enfin, les solénoïdes peuvent chauffer s’ils restent activés longtemps. Il est essentiel de leur laisser des pauses ou de les utiliser par courtes impulsions.

Relais

Les relais fonctionnent comme des interrupteurs, mais ils sont commandés électriquement. Cela signifie qu’une petite tension et un faible courant, comme ceux d’un Arduino, peuvent contrôler des tensions et courants beaucoup plus élevés. À l’intérieur du relais, un électroaimant (essentiellement un solénoïde) attire un jeu de contacts pour les fermer (ou les ouvrir, selon le type) lorsqu’il est activé.

Leur principal avantage est l’isolation. Les appareils ou circuits haute tension peuvent être contrôlés en toute sécurité sans exposer les composants basse tension délicats (comme un Arduino) à la haute tension. Vous trouverez des relais dans de nombreuses applications, des systèmes domotiques aux équipements industriels, partout où un contrôle de puissance est nécessaire sans interaction directe.

Il existe des modules relais prêts à l’emploi adaptés à l’Arduino, de préférence avec optocoupleurs pour plus de sécurité, comme celui montré ci-dessous :

Relay module actuator

3v Relay Board Relay Module 1 Channel Opto-Isolate High Level Trigger for IOT

Consultez notre tutoriel sur how to use a relay module with an Arduino.

Points clés à considérer

Lors de l’utilisation de relais dans des projets Arduino, rappelez-vous qu’ils manipulent des hautes tensions. Ne touchez jamais les bornes d’un relais sous tension et assurez-vous que votre installation est protégée contre les contacts accidentels ou les courts-circuits.

Les relais peuvent générer des parasites électriques lors de la commutation, ce qui peut perturber d’autres parties de votre projet. Placez-les à distance des composants sensibles et envisagez d’ajouter un circuit snubber ou une diode pour gérer les pics de tension potentiels.

Enfin, vérifiez toujours les spécifications du relais. Assurez-vous qu’il peut supporter la tension et le courant de l’appareil que vous contrôlez.

Buzzers

Les buzzers sont, en essence, des transducteurs qui convertissent l’énergie électrique en son. Le mécanisme sous-jacent implique généralement un élément piézoélectrique, qui vibre lorsqu’une tension lui est appliquée, produisant un son. Les buzzers se divisent en deux catégories : actifs (qui produisent un son lorsqu’ils sont alimentés) et passifs (qui nécessitent un signal oscillant pour produire un son).

Les buzzers se retrouvent dans de nombreuses applications. Que ce soit le bip d’un four à micro-ondes, le signal d’alerte d’une montre-bracelet ou le bip d’avertissement d’un véhicule en marche arrière.

La photo ci-dessous montre un buzzer actif typique :

Piezoelectric buzzer as actuator

Cylewet 5V Active Buzzer Electronic Alarm Magnetic Long Continuous Beep CYT1036

Jetez un œil à notre tutoriel sur how to use a piezo buzzer with an Arduino.

Points clés à considérer

Lors de l’utilisation de buzzers dans des projets Arduino, vérifiez d’abord leurs exigences en tension. Certains buzzers peuvent nécessiter une tension plus élevée que celle que l’Arduino peut fournir. Si vous connectez un buzzer haute tension directement à l’Arduino, il pourrait ne pas fonctionner ou émettre un son très faible.

Les buzzers peuvent produire du bruit, non seulement le son désiré mais aussi des parasites électriques. Cela peut interférer avec d’autres parties de votre projet. Pour réduire cela, ajoutez un condensateur aux bornes du buzzer.

Enfin, soyez conscient du type de buzzer que vous utilisez. Les buzzers actifs émettent un son dès qu’ils sont alimentés, tandis que les buzzers passifs nécessitent un signal spécifique de l’Arduino pour produire un son. Assurez-vous d’envoyer les bonnes commandes depuis votre Arduino vers le buzzer.

Résumé

Dans cet article, nous avons exploré une gamme d’actionneurs et leurs usages. Nous avons commencé par les moteurs DC, parfaits pour faire tourner des objets comme des voitures jouets ou des ventilateurs. Ensuite, les moteurs DC sans balais, souvent utilisés dans les gadgets volants comme les drones. Nous avons vu les moteurs pas à pas, qui avancent par étapes et se retrouvent typiquement dans les imprimantes 3D. Les servomoteurs sont comme de petits robots, effectuant des rotations précises pour des tâches comme bouger le bras d’un jouet. Les solénoïdes sont spécialisés dans la poussée et la traction, alimentant des dispositifs comme les sonnettes. Nous avons aussi abordé les relais, qui permettent à nos petits projets de contrôler en toute sécurité des appareils plus puissants, comme des lampes. Et bien sûr, les buzzers, qui émettent des bips et des sons pour attirer notre attention. Chacun de ces actionneurs a son rôle spécifique, et les comprendre peut donner vie à vos projets Arduino de manière vraiment cool !