Le monde de l'électronique peut être passionnant, mais il peut aussi paraître intimidant lorsqu'on se retrouve face à un schéma de câblage sans savoir par où commencer. De plus, comprendre le code d'un microcontrôleur peut s'avérer complexe pour les débutants. Heureusement, nous sommes là pour vous fournir les informations nécessaires pour démarrer votre apprentissage !
Dans cet article, nous allons explorer le fonctionnement des microcontrôleurs en examinant leurs avantages et leurs caractéristiques. Nous vous proposerons ensuite un projet simple pour piloter un actionneur linéaire à l'aide d'un microcontrôleur, en commençant par son extension et sa rétraction. Que vous soyez novice en microcontrôleurs ou un amateur expérimenté souhaitant simplement rafraîchir vos connaissances, cet article est fait pour vous. Il s'agit du premier d'une série à venir, dans laquelle nous aborderons plus en détail les cartes d'extension pour microcontrôleurs, les modules de capteurs et les pilotes de moteurs. Mais commençons par les bases !
Qu'est-ce qu'un microcontrôleur : avantages et fonctionnalités ?

Regardez à gauche, puis à droite. Vous avez probablement déjà vu chez vous ou au bureau plusieurs objets contenant un circuit intégré (CI) : ces petites puces à base de silicium sont le cerveau de vos appareils électroniques. Les cartes microcontrôleurs intègrent un ou plusieurs de ces CI, ainsi que divers périphériques.
Les microcontrôleurs sont des dispositifs petits, polyvalents et peu coûteux qui peuvent être mis en œuvre et programmés avec succès non seulement par des ingénieurs électriciens expérimentés, mais aussi par des amateurs, des étudiants et des professionnels d'autres disciplines.
Un microcontrôleur comporte généralement les éléments suivants :
- Unité centrale de traitement (CPU) : effectue des opérations arithmétiques, gère le flux de données et génère des signaux de contrôle sur la base d'un ensemble d'instructions (c.-à-d. de code).
- Mémoire non volatile : stocke le programme du microcontrôleur qui indique précisément au processeur ce qu’il doit faire.
- Mémoire volatile (RAM) : utilisée pour le stockage temporaire de données. Ces données sont perdues lorsque le microcontrôleur est mis hors tension.
- Périphériques : modules matériels qui permettent à un microcontrôleur d’interagir avec le système externe.
- Convertisseurs de données (AC-DC, DC-AC et générateurs de tension de référence).
- Génération d'horloge.
- Timing.
- Entrées et sorties.
- Communication en série.
Un microcontrôleur est très économique car son coût de production est inférieur à celui de ses prédécesseurs électromécaniques. De plus, les cartes de développement, comme Arduino, permettent une programmation rapide et sont idéales pour le prototypage de systèmes. La majorité des circuits étant composée de circuits intégrés, la consommation énergétique d'un microcontrôleur est bien moindre que celle d'un circuit logique à relais utilisant des composants individuels. Enfin, la programmabilité d'un microcontrôleur permet sa réutilisation dans un autre projet.
Comment utiliser un microcontrôleur avec un actionneur linéaire pour étendre/rétracter

Il est temps de mettre à l'épreuve un actionneur linéaire Progressive Automations avec microcontrôleur et de le faire se déployer/rétracter ! Nous vous guiderons pas à pas à travers le câblage et le fonctionnement du code afin que vous puissiez personnaliser la commande de l'actionneur linéaire à votre guise.
Ce dont vous aurez besoin
Voici ce dont vous aurez besoin pour commencer à associer un microcontrôleur à un actionneur linéaire. Tous les composants peuvent être achetés sur le site web de Progressive Automations :
- Alimentation 12 Vcc
- Arduino Mega
- Écran LCD avec boutons
- Relais à 2 canaux
- Actionneur (12 Vcc avec un courant de consommation max. de 10 A)
- Câbles de connexion USB de type A/B
Téléchargement du câblage et du code
Heureusement, grâce aux shields, le câblage est très simple. Cette simplicité fait de ce projet le projet idéal pour les débutants souhaitant apprendre à utiliser un microcontrôleur. Une fois les composants nécessaires réunis, suivez les étapes de câblage ci-dessous. Utilisez le schéma de brochage Arduino comme référence.
- Écran LCD empilé sur la broche 26 de l'Arduino
- Relais IN1 vers broche 30 de l'Arduino
- Relais IN2 vers Arduino 5V
- Relais VCC vers GND Arduino
- Relais GND vers relais NO2
- 12 Vcc vers relais NC2
- 12 Vcc vers relais NC1
- Relais NC2 vers relais NO1
- Relais NO2 vers actionneur positif
- Relais COM1 vers actionneur négatif
- Relais COM2

Explication du code
Vous pouvez consulter le code complet de ce projet ici.
Le code interprété par la carte microcontrôleur Arduino est le C. De nombreuses bibliothèques ont été développées, contenant du code simplifiant l'ajout de divers périphériques, ici l'écran LCD (#include <Arduino.h>).
La première partie du code configure les broches. Leurs numéros correspondent aux connexions des relais sur la carte Arduino. Si vous utilisez une autre carte microcontrôleur Arduino, veillez à adapter ces numéros aux broches auxquelles vous connectez les relais.
La boucle d'initialisation configure les broches du relais en tant que sorties et les met à l'état bas. De plus, l'écran LCD reçoit quelques commandes pour afficher du texte et configurer les flèches du curseur. Dans la boucle principale, le code vérifie en permanence si l'un des boutons de la carte LCD a été enfoncé. Ici, les boutons sont connectés à la broche A0 de l'Arduino. Lorsqu'un bouton est enfoncé, la valeur lue par l'Arduino sera proche de 100 ou de 255, selon le bouton enfoncé. Ces valeurs ne sont pas toujours exactes, surtout si des circuits supplémentaires connectés à l'Arduino peuvent interférer avec le signal. C'est pourquoi une valeur seuil a été intégrée et peut être ajustée si les boutons sont trop sensibles aux interférences.
Si votre carte Arduino est connectée à votre ordinateur via USB, vous pouvez utiliser le moniteur série de l'IDE Arduino pour visualiser le signal de sortie de la broche A0. Il suffit d'ajouter la ligne de code suivante à la boucle principale :
Série.println(A0);
Un traitement logique du signal de lecture détermine si le bouton « haut » ou « bas » a été enfoncé. Si le bouton « haut » a été enfoncé, un relais est activé (niveau haut) et l'autre (niveau bas). Si le bouton « bas » a été enfoncé, le traitement est inversé. L'activation et la désactivation des relais entraînent l'extension ou la rétraction du vérin.
Maintenant que vous comprenez le fonctionnement du code, vous pouvez l'expérimenter en ajoutant des fonctionnalités supplémentaires, comme allumer une LED lorsque l'actionneur se déploie et l'éteindre lorsqu'il se rétracte. C'est assez simple : il vous suffit de configurer le numéro de broche, de l'assigner en sortie, puis de la mettre à l'état haut (commande digitalWrite) dans l'instruction if ou else if.
Conclusion
Travailler avec un microcontrôleur Arduino pour un actionneur, entre autres, peut être très amusant et enrichissant. Apprendre à programmer sur un microcontrôleur simple pour un actionneur, notamment en langage C, est un excellent moyen d'acquérir des connaissances et de potentiellement faire carrière dans la programmation. Commencez par les bases et progressez vers des projets plus complexes.
Dans les prochains articles, nous explorerons différentes cartes d'extension compatibles avec Arduino et vous présenterons des exemples de code un peu plus complexes. Nous étudierons également l'utilisation de capteurs pour contrôler des segments de votre code et piloter un actionneur linéaire. Pour toute question concernant les microcontrôleurs ou le branchement d'un actionneur linéaire à un microcontrôleur, n'hésitez pas à nous contacter !