Dans cet exemple, nous contrôlerons la vitesse d'un actionneur linéaire avec un Arduino et un pilote de moteur.
Remarque: Ce tutoriel suppose des connaissances préalables avec les principes électroniques de base, le matériel et les logiciels Arduino. Si c'est la première fois que vous utilisez Arduino, nous vous suggérons d'apprendre les bases de l'un des nombreux tutoriels pour débutants disponibles via les recherches Google et YouTube. Veuillez noter que nous ne disposons pas des ressources nécessaires pour fournir un support technique pour les applications personnalisées et que nous ne déboguerons pas, ne modifierons pas, ne fournirons pas de code ou de schémas de câblage en dehors de ces didacticiels accessibles au public.
Composants
- Actionneur linéaire 12V
- Alimentation 12V
- Arduino
- Pilote de moteur
- Potentiomètre (facultatif)
- Fils électriques pour réaliser des connexions et un outil de sertissage ou un fer à souder
Câblage
Présentation du matériel et des logiciels
Les moteurs à courant continu dans les actionneurs linéaires nécessitent un courant élevé (jusqu'à 5A), si nous devions connecter l'actionneur linéaire directement à l'Arduino, cette consommation de courant élevée détruirait les broches numériques Arduino car elles ne sont évaluées que pour 40 mA chacune. Par conséquent, nous utilisons un pilote de moteur qui peut prendre un signal PWM (modulation de largeur d'impulsion) à faible courant de la carte Arduino et fournir un signal PWM à courant élevé à l'actionneur linéaire.
Le pilote du moteur est connecté à deux broches numériques PWM (broches 10 et 11 sur l'Arduino Uno). En réglant l'une de ces broches sur LOW et l'autre sur HIGH (voir les lignes 18 et 19 dans le code ci-dessous), nous pouvons étendre l'actionneur à la vitesse maximale. Pour arrêter l'actionneur, nous réglons les deux broches sur LOW (voir les lignes 21 et 22 dans le code ci-dessous) et pour inverser le sens du mouvement, nous pouvons inverser l'ordre des broches HIGH et LOW (voir les lignes 24 et 25 dans le code ci-dessous). Nous pouvons également ajuster la vitesse en changeant la variable «Vitesse» à n'importe quelle valeur dans la plage [0, 255]; voir la ligne 17 dans le code ci-dessous.
Code
https://gist.github.com/Will-Firgelli/c0ef0871dc1946d75257e0c29dccae2a
Contrôle de vitesse variable avec un potentiomètre
Dans l'exemple ci-dessus, nous définissons manuellement la vitesse à la ligne 17 du code. Cependant, des situations peuvent survenir où l'on souhaite faire varier la vitesse de l'actionneur dans le temps. La méthode la plus simple pour y parvenir consiste à utiliser un potentiomètre. UNE le potentiomètre estune résistance variable à trois bornes qui peut agir comme un diviseur de tension. En tournant le bouton du potentiomètre, la tension de sortie variera et nous pouvons le connecter à la broche analogique d'un Arduino pour définir une vitesse variable.
Câblage
Présentation du matériel et des logiciels
Comme mentionné ci-dessus, un potentiomètre est un dispositif rotatif qui change la résistance lorsque le bouton est tourné. En connectant les deux broches externes du potentiomètre à 5V et GND, et la broche du milieu à la broche analogique Arduino, A0, un diviseur de tension est créé. Lorsque le bouton est tourné, l'Arduino lira des lectures analogiques allant de [0, 1023].
Pour les valeurs dans la plage [512, 1023], nous voulons que l'actionneur s'étende et pour les valeurs [0, 511], nous voulons que l'actionneur se rétracte, cela peut être réalisé avec une simple instruction if () / else aux lignes 22 et 28 en le code ci-dessous. Ensuite, en utilisant la fonction map () (lignes 23 et 29 dans le code ci-dessous), nous pouvons le convertir en un signal PWM qui contrôlera à la fois la vitesse et la direction de l'actionneur.
Code
https://gist.github.com/Will-Firgelli/d2cdf69edc829974885984b3fb8e4856