Comment contrôler un actionneur linéaire avec un Arduino?

Qu'est-ce qu'un Arduino?

Arduino est une plate-forme de prototypage électronique open source basée sur du matériel et des logiciels flexibles et faciles à utiliser. Il est destiné aux projets de bricolage, aux artistes, aux designers, aux amateurs et à toute personne intéressée par la création de projets interactifs. Les Arduinos sont des cartes de microcontrôleur qui contiennent tout ce dont vous avez besoin pour interfacer facilement avec le microcontrôleur. Un microcontrôleur est comme un mini-ordinateur pour les systèmes embarqués et le type de microcontrôleur inclus dépendra du style d'Arduino. Arduino va du plus grand Arduino Mega à la taille moyenne Arduino Uno au plus petit Arduino Pro Mini. Les cartes de différentes tailles fourniront un nombre croissant de broches d'E / S et des fonctionnalités supplémentaires et la plus populaire de ces cartes est l'Uno. Arduino fournit également un IDE open source gratuit pour programmer vos microcontrôleurs. L'IDE Arduino utilise un langage de programmation facile à comprendre et, en raison de la popularité d'Arduino, vous pouvez trouver de nombreux exemples utiles en ligne pour vous aider à coder pour votre application spécifique. S'il s'agit de votre premier projet Arduino, le Kit Arduino vous fournira tout ce dont vous avez besoin, des câbles volants aux capteurs en passant par les relais et comprend Arduino Uno pour vous aider à démarrer.

Comment contrôler un actionneur linéaire avec un Arduino?

Pourquoi utiliser un Arduino pour contrôler un actionneur linéaire?

L'un des plus grands avantages de l'utilisation d'un Arduino, ou de tout microcontrôleur d'ailleurs, pour contrôler un actionneur linéaire est que vous avez un meilleur contrôle sur votre actionneur linéaire. Les microcontrôleurs vous permettent d'utiliser des entrées plus complexes provenant de capteurs ou d'autres appareils pour contrôler votre actionneur linéaire. Ils vous permettent d'effectuer des calculs en temps réel pour positionner votre actionneur dans la position idéale ou de mettre en œuvre des minuteries pour automatiser les changements de position de vos actionneurs. Les microcontrôleurs peuvent également recevoir les commentaires de vos actionneurs pour fournir un contrôle plus précis de la position et de la vitesse, ainsi que pour contrôler plusieurs actionneurs à la fois. En termes simples, les microcontrôleurs vous offrent un meilleur contrôle et une plus grande flexibilité et avec la conception facile à utiliser d’Arduino et sa grande popularité, le niveau de complexité supplémentaire est minime.

Contrôle d'un actionneur linéaire avec un Arduino

Vous ne pourrez pas connecter directement votre actionneur linéaire à un Arduino comme vous le pouvez avec un interrupteur car la tension de fonctionnement de l'Arduino n'est que de 5V et a de très petites limites de courant. Vous devrez utiliser un composant intermédiaire pour contrôler l'actionneur linéaire, ce qui peut être fait à l'aide de relais ou d'un pilote de moteur.

Relais

Tel que discuté Ici, relais sont des interrupteurs électromagnétiques qui sont contrôlés en activant et en désactivant une bobine pour ouvrir et fermer l'interrupteur. L'Arduino peut être utilisé pour contrôler le relais en excitant et en désactivant la bobine à l'aide d'une broche d'E / S. Selon le type de relais que vous utilisez, le contrôle que vous avez sur votre actionneur linéaire changera, mais l'interfaçage avec l'Arduino est assez simple, il suffit d'alimenter la bobine avec une broche E / S. Vous devrez vous assurer que la tension nominale de la bobine est autour de la tension de fonctionnement de l'Arduino (5V), sinon l'Arduino ne pourra pas alimenter suffisamment la bobine pour provoquer la fermeture du commutateur.

Relais SPDT contrôlé avec un Arduino

Ci-dessus, un exemple d'interfaçage Arduino avec une configuration à deux relais SPDT. Dans cette configuration, qui est décrite ici, les deux relais sont utilisés pour inverser la polarité de la tension vers l'actionneur linéaire ainsi que pour couper l'alimentation de l'actionneur. Dans l'exemple de code ci-dessous, l'Arduino activera le relais supérieur pour étendre l'actionneur pendant 2 secondes en réglant la broche 7 sur bas, puis arrêter l'actionneur pendant 2 secondes en désactivant le relais supérieur en réglant les deux broches sur haut. Pour rétracter l'actionneur, l'Arduino activera le deuxième relais pendant 2 secondes en réglant la broche 8 sur bas, puis arrêtera l'actionneur pendant 2 secondes en réglant à nouveau toutes les broches sur haut. Comme ce code se trouve dans la section boucle du programme, l'Arduino continuera à répéter ce code encore et encore. Évidemment, vous pouvez implémenter une solution de codage plus élégante pour votre application, mais si vous recherchez encore plus de contrôle, vous souhaiterez utiliser un pilote de moteur.

https://gist.github.com/OMikeGray/6bf644b6cda85bfe8c898ccd44ec6d78

Pilote de moteur

UNE conducteur de moteur est une conception de circuit intégré spécifiquement pour contrôler les moteurs à courant continu, qui entraînent des actionneurs linéaires à courant continu. Les pilotes de moteur utilisent généralement un pont en H pour permettre à la fois le contrôle de la direction et de la vitesse. La façon de connecter exactement votre Arduino à votre pilote de moteur dépendra du pilote de moteur exact, mais nécessitera au moins deux broches d'E / S pour le faire et l'une d'entre elles sera un signal PWM. PWM ou modulation de largeur d'impulsion est une méthode de variation d'un signal entre des valeurs d'activation et de désactivation pour fournir efficacement une tension de fonctionnement inférieure à celle de fonctionnement. Le pilote du moteur peut alors utiliser ce signal pour régler la vitesse à laquelle le moteur tourne.

Arduino contrôle un pilote de moteur 

Ci-dessus est un exemple de notre Entraînement par moteur CC à courant élevé interfacé avec un Arduino. Pour ce pilote de moteur, vous devez envoyer deux signaux PWM, l'un pour étendre l'actionneur et l'autre pour se rétracter. Le PWM est donné sous forme d'octet non signé, ce qui signifie qu'il va de 0, pas de tension, à 255, tension maximale (5V), qui sera proportionnelle à la vitesse du moteur. Comme PWM n'est pas une valeur binaire, nous devons utiliser les broches PWM de l'Arduino et utiliser la fonction d'écriture analogique, comme le montre l'exemple ci-dessous. Les broches PWM seront indiquées sur l'Arduino avec un ~ ou simplement étiquetées comme des broches PWM.

https://gist.github.com/OMikeGray/c4e0196704a4d62db5507ad8297708f4

Dans l'exemple de code ci-dessus, l'Arduino étendra l'actionneur à pleine vitesse pendant deux secondes en envoyant au pilote du moteur le 5V complet de la broche 10 à la broche LPWM du pilote du moteur. Ensuite, l'Arduino arrête l'actionneur en n'envoyant aucun signal à l'une ou l'autre des broches d'entrée du pilote de moteur. L'Arduino rétracte ensuite l'actionneur à la moitié de la vitesse en envoyant le signal du pilote de moteur qui est à moitié allumé et à moitié éteint de la broche 11 à la broche RPWM sur le pilote de moteur. Arrête ensuite à nouveau l'actionneur. Comme ce code se trouve dans la section boucle du programme, l'Arduino continuera à répéter ce code encore et encore. Encore une fois, vous pouvez mettre en œuvre une solution de codage plus élégante qui convient à votre application, en particulier si vous ajoutez des entrées pour contrôler votre actionneur. 

Ajout d'entrées

Une fois que vous pouvez contrôler votre actionneur avec un Arduino, vous pouvez ensuite implémenter des entrées sur l'Arduino pour une plus grande automatisation et un meilleur contrôle. Ces entrées peuvent être interrupteurs, une large gamme de capteurs, ou même des retours de l'actionneur lui-même. Comme il existe un large éventail d'options pour les intrants, la façon de les mettre en œuvre varie, mais vous devez connaître quelques points généraux. Si l'entrée fournit une entrée binaire, comme un commutateur, vous voudrez utiliser les broches numériques de l'Arduino, qui seront étiquetées sur la carte ou dans la fiche technique, et utiliser la fonction digitalRead () dans le Arduino IDE. Si votre périphérique d'entrée fournit un signal analogique, vous devrez utiliser les broches analogiques, qui seront étiquetées sur la carte ou dans la fiche technique, et utiliser la fonction AnalogRead ().


 

Tags:

Share this article

Collections en vedette

Besoin d'aide pour trouver le bon actionneur?

Nous concevons et fabriquons nos produits de précision afin que vous obteniez les prix directs des fabricants. Nous offrons une livraison le jour même et un support client compétent. Essayez d'utiliser notre calculateur d'actionneurs pour obtenir de l'aide pour choisir l'actionneur adapté à votre application.