ESP8266 - Actionneur

Ce tutoriel vous explique comment utiliser l'ESP8266 pour contrôler un actionneur linéaire. En détail, nous allons apprendre :

Il existe deux types d'actionneurs linéaires :

Ce tutoriel est destiné aux actionneurs linéaires sans retour d'information. Si vous souhaitez en savoir plus sur les actionneurs linéaires avec retour d'information, veuillez consulter le tutoriel ESP8266 - Actionneur avec retour d'information.

Préparation du matériel

1×ESP8266 NodeMCU
1×Micro USB Cable
1×Linear Actuator
1×L298N Motor Driver Module
1×12V Power Adapter
1×DC Power Jack
1×Jumper Wires
1×(Optional) 5V Power Adapter for ESP8266
1×(Optional) ESP8266 Screw Terminal Adapter

Or you can buy the following sensor kits:

1×DIYables Sensor Kit (30 sensors/displays)
1×DIYables Sensor Kit (18 sensors/displays)
Divulgation : Certains des liens fournis dans cette section sont des liens affiliés Amazon. Nous pouvons recevoir une commission pour tout achat effectué via ces liens, sans coût supplémentaire pour vous. Nous vous remercions de votre soutien.

À propos de l'actionneur linéaire

Actionneur linéaire étendre rétracter

Brochage de l'actionneur linéaire

Un actionneur linéaire possède deux fils :

  • Le fil positif est généralement rouge.
  • Le fil négatif est généralement noir.
Brochage de l'actionneur linéaire

Comment ça fonctionne

Lors de l'achat d'un actionneur linéaire, il est essentiel de connaître la tension nécessaire à son fonctionnement. Prenons par exemple un actionneur linéaire de 12V.

Lorsque vous alimentez l'actionneur linéaire 12V par une source d'alimentation 12V :

  • Connectez 12V et GND au fil positif et au fil négatif, respectivement : l'actionneur linéaire s'étendra à pleine vitesse jusqu'à ce qu'il atteigne la limite.
  • Connectez 12V et GND au fil négatif et au fil positif, respectivement : l'actionneur linéaire se rétractera à pleine vitesse jusqu'à ce qu'il atteigne la limite.

Si l'alimentation de l'actionneur est coupée, le processus d'extension ou de rétraction s'arrêtera.

※ NOTE THAT:

Pour un moteur à courant continu, un moteur servo et un moteur pas à pas sans engrenage, lorsqu'une charge est présente, s'ils sont privés de courant, ils ne maintiendront pas leur position. En revanche, un actionneur peut conserver sa position même lorsque l'alimentation est coupée tout en supportant une charge.

Si la tension de l'alimentation électrique pour les actionneurs linéaires est inférieure à 12V, l'actionneur linéaire s'étendra/se rétractera toujours, mais pas à sa vitesse maximale. Cela signifie que modifier la tension de la source d'alimentation peut affecter la vitesse de l'actionneur linéaire. Cependant, cette approche n'est pas couramment utilisée en raison de la difficulté à contrôler la tension de la source d'alimentation. Par conséquent, la tension de la source d'alimentation est maintenue constante, et la vitesse de l'actionneur linéaire est régulée par un signal PWM. Plus le cycle de travail du PWM est élevé, plus l'actionneur linéaire s'étend/se rétracte rapidement.

Comment contrôler un actionneur linéaire

Comment contrôler un actionneur linéaire à l'aide de l'ESP8266

La gestion d'un actionneur linéaire implique :

  • Étendre l'actionneur linéaire à sa vitesse maximale.
  • Rétracter l'actionneur linéaire à sa vitesse maximale.
  • (Optionnel) Ajuster la vitesse d'extension et de rétraction.

L'ESP8266 peut générer un signal qui peut être utilisé pour contrôler un actionneur linéaire, cependant, la tension et le courant de ce signal sont trop faibles pour être utilisés tels quels. Par conséquent, un pilote matériel doit être utilisé pour faire le lien entre l'ESP8266 et l'actionneur linéaire. Le pilote a deux fonctions :

  • Amplifier le signal de commande de l'ESP8266 (concernant à la fois la tension et le courant)
  • Recevoir un autre signal de commande de l'ESP8266 pour inverser la polarité de l'alimentation électrique, permettant ainsi le contrôle de la direction.

※ NOTE THAT:

  • Ce tutoriel peut être utilisé pour tous les actionneurs linéaires, le vérin linéaire 12V n'étant qu'un exemple.
  • Lors du contrôle d'un actionneur linéaire 5V, même si la broche ESP8266 délivre 5V (qui est la même tension que l'actionneur linéaire), vous avez toujours besoin d'un pilote entre l'ESP8266 et l'actionneur linéaire car la broche ESP8266 ne fournit pas assez de courant pour l'actionneur linéaire.

Il existe de nombreux types de puces et de modules disponibles pour les pilotes d'actionneurs linéaires. Pour ce tutoriel, nous utiliserons le pilote L298N.

À propos du pilote L298N

Le pilote L298N peut être utilisé pour contrôler un actionneur linéaire, un moteur à courant continu et un moteur pas à pas. Ce tutoriel vous explique comment l'utiliser pour réguler l'actionneur linéaire.

Brochage du pilote L298N

Brochage du pilote L298N

Le pilote L298N dispose de deux canaux, étiquetés A et B. Cela signifie qu'il peut contrôler indépendamment deux actionneurs linéaires en même temps. Supposons que l'actionneur linéaire A soit connecté au canal A et l'actionneur linéaire B soit connecté au canal B. Le pilote L298N possède treize broches.

Les broches communes pour les deux canaux :

  • Broche VCC : Cette broche fournit de l'énergie à l'actionneur linéaire et peut varier de 5 à 35V.
  • Broche GND : C'est une broche de masse qui doit être connectée à 0V (GND).
  • Broche 5V : Cette broche alimente le module L298N et peut être alimentée par la sortie 5V d'un ESP8266.

Broches du canal A :

  • Broches ENA : Ces broches sont utilisées pour contrôler la vitesse de l'actionneur linéaire A. En retirant le cavalier et en connectant cette broche à une entrée PWM, nous pouvons contrôler la vitesse à laquelle l'actionneur linéaire se déploie et se rétracte.
  • Broches IN1 & IN2 : Ces broches sont utilisées pour contrôler la direction d'un actionneur linéaire. Lorsque l'une d'elles est définie sur HIGH et l'autre sur LOW, l'actionneur linéaire s'étendra ou se rétractera. Si les deux entrées sont soit HIGH soit LOW, l'actionneur linéaire s'arrêtera.
  • Broches OUT1 & OUT2 : Ces broches sont connectées à l'actionneur linéaire A.

Broches du canal B :

  • Broches ENB : sont utilisées pour réguler la vitesse de l'actionneur linéaire B. En retirant le cavalier et en connectant cette broche à l'entrée PWM, nous pourrons contrôler la vitesse d'extension/de rétraction de l'actionneur linéaire B.
  • Broches IN3 & IN4 : sont utilisées pour contrôler la direction de mouvement d'un actionneur linéaire. Lorsque l'une d'elles est à HIGH et l'autre à LOW, l'actionneur linéaire s'étendra ou se rétractera. Si les deux entrées sont soit HIGH soit LOW, l'actionneur linéaire s'arrêtera.
  • Broches OUT3 & OUT4 : sont connectées à un actionneur linéaire.

Le pilote L298N possède deux alimentations d'entrée :

  • Un pour l'actionneur linéaire avec une plage de tension de 5 à 35V, connecté aux broches VCC et GND.
  • Un pour le fonctionnement interne du module L298N, avec une plage de tension de 5 à 7V, connecté aux broches 5V et GND.

Retirez tous les cavaliers du pilote L298N pour simplifier.

Nous pouvons gérer deux actionneurs linéaires indépendamment et simultanément à l'aide d'un ESP8266 et d'un pilote L298N. Seulement trois broches de l'ESP8266 sont nécessaires pour contrôler chaque actionneur linéaire.

※ NOTE THAT:

Le reste de ce tutoriel se concentrera sur le contrôle d'un actionneur linéaire via le canal A. Le processus pour contrôler l'autre actionneur linéaire est similaire.

Comment contrôler un actionneur linéaire

Nous étudierons la technique de gestion d'un actionneur linéaire à l'aide d'un pilote L298N.

Schéma de câblage

Retirez les trois cavaliers du module L298N avant de le connecter.

Schéma de câblage du pilote L298N pour actionneur linéaire ESP8266 NodeMCU

This image is created using Fritzing. Click to enlarge image

Voir plus dans l'agencement des broches de l'ESP8266 et comment alimenter l'ESP8266 et d'autres composants.

Comment faire pour étendre/rétracter un vérin électrique linéaire

La direction de déplacement de l'actionneur linéaire peut être gérée en fournissant un niveau logique HAUT ou BAS aux broches IN1 et IN2. Le tableau ci-dessous montre comment gérer la direction dans les deux canaux.

IN1 pin IN2 pin Direction
LOW LOW Linear Actuator A stops
HIGH HIGH Linear Actuator A stops
HIGH LOW Linear Actuator A extends
LOW HIGH Linear Actuator A retracts
  • Étend l'actionneur linéaire A.
digitalWrite(IN1_PIN, HIGH); digitalWrite(IN2_PIN, LOW);
  • Rétracte l'actionneur linéaire A
digitalWrite(IN1_PIN, LOW); digitalWrite(IN2_PIN, HIGH);

※ NOTE THAT:

L'orientation de l'actionneur linéaire peut être modifiée en connectant les broches OUT1 et OUT2 dans un ordre différent. Pour ce faire, il est nécessaire de permuter les broches OUT1 et OUT2 ou de modifier le signal de commande sur les broches IN1 et IN2 dans le code.

Comment empêcher un actionneur linéaire de s'étendre ou de se rétracter

L'actionneur linéaire cessera de s'étendre/se rétracter lorsqu'il atteindra la limite. De plus, nous pouvons le programmer pour qu'il cesse de s'étendre/se rétracter avant qu'il n'atteigne la limite.

Il existe deux méthodes pour arrêter un actionneur linéaire :

  • Réduisez la vitesse à 0
  • Déconnectez la source d'alimentation
analogWrite(ENA_PIN, 0);
  • Définit les broches IN1 et IN2 à la même valeur, soit BASSE soit HAUTE.
digitalWrite(IN1_PIN, LOW); digitalWrite(IN2_PIN, LOW);
  • Ou
digitalWrite(IN1_PIN, HIGH); digitalWrite(IN2_PIN, HIGH);

Comment contrôler la vitesse d'un actionneur linéaire via un pilote L298N

Il est facile de réguler la vitesse de l'actionneur linéaire. Au lieu de régler la broche ENA à HIGH, nous pouvons produire un signal PWM vers la broche ENA. Cela peut être fait en :

  • Connecter une broche ESP8266 à l'ENA du L298N
  • Générer un signal PWM vers la broche ENA en utilisant la fonction analogWrite(). Le pilote L298N amplifie le signal PWM vers l'actionneur linéaire.
analogWrite(ENA_PIN, speed); // la vitesse est une valeur de 0 à 255

La vitesse est une valeur variant de 0 à 255. Lorsque la vitesse est de 0, l'actionneur linéaire s'arrêtera. À une vitesse de 255, l'actionneur linéaire se déploiera/se rétractera à sa vitesse maximale.

Exemple de code ESP8266

Le code ci-dessous :

  • Augmente la vitesse maximale de l'actionneur linéaire
  • Arrête l'actionneur linéaire
  • Diminue la vitesse de l'actionneur linéaire au maximum
  • Arrête à nouveau l'actionneur linéaire
/* * Ce code ESP8266 NodeMCU a été développé par newbiely.fr * Ce code ESP8266 NodeMCU est mis à disposition du public sans aucune restriction. * Pour des instructions complètes et des schémas de câblage, veuillez visiter: * https://newbiely.fr/tutorials/esp8266/esp8266-actuator */ #define ENA_PIN 7 // The ESP8266 pin connected to the EN1 pin L298N #define IN1_PIN 6 // The ESP8266 pin connected to the IN1 pin L298N #define IN2_PIN 5 // The ESP8266 pin connected to the IN2 pin L298N // The setup function runs once on reset or power-up void setup() { // initialize digital pins as outputs. pinMode(ENA_PIN, OUTPUT); pinMode(IN1_PIN, OUTPUT); pinMode(IN2_PIN, OUTPUT); digitalWrite(ENA_PIN, HIGH); } // The loop function repeats indefinitely void loop() { // extend the actuator digitalWrite(IN1_PIN, HIGH); digitalWrite(IN2_PIN, LOW); delay(20000); // actuator will stop extending automatically when reaching the limit // retracts the actuator digitalWrite(IN1_PIN, LOW); digitalWrite(IN2_PIN, HIGH); delay(20000); // actuator will stop retracting automatically when reaching the limit }

Étapes rapides

Pour commencer avec l'ESP8266 sur l'IDE Arduino, suivez ces étapes :

  • Consultez le tutoriel comment configurer l'environnement pour ESP8266 sur Arduino IDE si c'est la première fois que vous utilisez un ESP8266.
  • Câblez les composants comme indiqué dans le schéma.
  • Connectez la carte ESP8266 à votre ordinateur à l'aide d'un câble USB.
  • Ouvrez Arduino IDE sur votre ordinateur.
  • Choisissez la bonne carte ESP8266, par exemple (e.g. NodeMCU 1.0 (Module ESP-12E)), et son port COM respectif.

Retirez les trois cavaliers du module L298N.

Copiez le code ci-dessus et ouvrez-le dans l'IDE Arduino.

Cliquez sur le bouton Upload dans l'IDE Arduino pour téléverser le code sur l'ESP8266.

Vous observerez :

  • L'actionneur linéaire s'étendra jusqu'à atteindre la limite, puis il s'arrêtera.
  • L'actionneur linéaire restera dans cette position pendant un certain temps.
  • L'actionneur linéaire se rétractera jusqu'à atteindre la limite, puis il s'arrêtera.
  • L'actionneur linéaire restera dans cette position pendant un certain temps.
  • Ce processus sera répété en continu.

Vidéo

Références de Fonction

Tutoriels connexes

※ OUR MESSAGES

  • Please feel free to share the link of this tutorial. However, Please do not use our content on any other websites. We invested a lot of effort and time to create the content, please respect our work!