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 à créer des projets interactifs. Les arduinos sont des cartes de microcontrôleur qui contiennent tout ce dont vous avez besoin pour s'interfacer facilement avec le microcontrôleur. Un microcontrôleur est comme un mini-ordinateur pour les systèmes intégrés et le type de microcontrôleur inclus dépendra du style d'Arduino. Arduino va de la plus grande Arduino mega à la taille intermédiaire Arduino Uno au plus petit Arduino Pro Mini. Les différentes cartes de taille fourniront un nombre croissant d'épingles d'E / S et de fonctionnalités supplémentaires et la plus populaire de ces planches est l'UNO. Arduino fournit également une open source gratuite pour utiliser IDE 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 de cavalier aux capteurs aux relais et comprend Arduino Uno pour vous aider à démarrer.

Comment contrôlez-vous 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 plus grand contrôle sur votre actionneur linéaire. Les microcontrôleurs vous permettent d'utiliser des entrées plus complexes de capteurs ou d'autres appareils pour contrôler votre actionneur linéaire. Ils vous permettent de préformer les calculs en temps réel pour positionner votre actionneur dans la position idéale ou implémenter des minuteries pour automatiser les modifications de position de vos actionneurs. Les microcontrôleurs peuvent également prendre les commentaires de vos actionneurs pour fournir une position et un contrôle de vitesse plus précis ainsi que pour contrôler plus d'un actionneur à la fois. En termes simples, les microcontrôleurs vous offrent un plus grand contrôle et flexibilité et avec la conception facile à utiliser et la popularité des Arduino, le niveau de complexité supplémentaire est minime.

Contrôler un actionneur linéaire avec un arduino

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

Relais

Comme indiqué ici, relais sont des interrupteurs électromagnétiques qui sont contrôlés par le dynamisation et la désactivation d'une bobine pour ouvrir et fermer l'interrupteur. L'Arduino peut être utilisé pour contrôler le relais en dynamisant 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, mais l'interfaçage avec l'Arduino est assez simple, il suffit de dynamiser la bobine avec une broche d'E / S. Vous devrez vous assurer que la tension nominale de la bobine est autour de la tension de fonctionnement de l'Arduino (5V) ou de l'Arduino ne pourra pas dynamiser suffisamment la bobine pour fermer le commutateur.

Relais SPDT contrôlé avec un arduino

Ci-dessus est un exemple d'une interfaçage Arduino avec une configuration de relais SPDT. Dans cette configuration, qui est décrite ici, les deux relais sont utilisés pour retourner la polarité de la tension à l'actionneur linéaire et déconnecter la puissance à l'actionneur. Dans l'exemple de code est illustré ci-dessous, l'Arduino dynamisera le relais supérieur pour étendre l'actionneur pendant 2 secondes en réglant la broche 7 à faible, puis arrêtez l'actionneur pendant 2 secondes en désensant le relais supérieur en réglant les deux pins à haut. Pour retirer l'actionneur, l'Arduino dynamisera le deuxième relais pendant 2 secondes en réglant la broche 8 à bas, puis arrêtez l'actionneur pendant 2 secondes en réglant à nouveau toutes les broches à haut. Comme ce code se trouve dans la section Loop du programme, l'Arduino continuera de répéter ce code encore et encore. De toute évidence, vous pouvez implémenter une solution de codage plus élégante pour votre application, mais si vous recherchez encore plus de contrôle, vous voudrez utiliser un pilote de moteur.

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

Moteur

UN moteur est une conception de circuits intégrée spécifiquement pour contrôler les moteurs CC, qui entraînent des actionneurs linéaires CC. Les conducteurs de moteur utilisent généralement un pont H pour permettre à la fois la direction et le contrôle de la vitesse. Comment connecter exactement votre Arduino à votre pilote de moteur dépendra du pilote 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. La modulation PWM ou Impulse-largeth est une méthode pour varier un signal entre les valeurs ON et OFF pour fournir efficacement une tension inférieure à la fonction de fonctionnement. Le pilote du moteur peut ensuite utiliser ce signal pour régler la vitesse à laquelle le moteur fonctionne.

Arduino contrôlant un conducteur de moteur 

Ci-dessus est un exemple de notre Lecteur de moteur CC à courant élevé interfacé avec un arduino. Pour ce conducteur 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é comme un octet non signé, ce qui signifie qu'il varie 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é 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 le conducteur du moteur le 5V complet de la broche 10 à la broche LPWM sur le conducteur du moteur. Ensuite, l'Arduino arrête l'actionneur en n'envoyant aucun signal à l'une ou l'autre broche d'entrée du conducteur du moteur. L'Arduino rétracte ensuite l'actionneur à demi-vitesse en envoyant le signal du conducteur du moteur qui est à moitié allumé et à moitié de la broche 11 à la broche RPWM sur le conducteur du moteur. Arrête ensuite l'actionneur à nouveau. Comme ce code se trouve dans la section Loop du programme, l'Arduino continuera de répéter ce code encore et encore. Encore une fois, vous pouvez implémenter une solution de codage plus élégante qui convient à votre application, surtout 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 les entrées de l'Arduino pour une plus grande automatisation et contrôle. Ces entrées peuvent être interrupteurs, un large éventail de capteurs, ou même des commentaires de l'actionneur lui-même. Comme il existe un large éventail d'options pour les entrées, la façon de les implémenter variera, mais il y a quelques points généraux que vous devriez connaître. Si l'entrée fournit une entrée binaire, comme un commutateur, vous voudrez utiliser les broches numériques sur l'Arduino, qui sera étiquetée sur la carte ou dans la fiche technique, et utilisez la fonction DigitalRead () dans la fonction dans la fonction 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 ().


 

Share This Article
Tags: