Combien de moteurs pas à pas peut contrôler Arduino

Combien de moteurs pas à pas peut contrôler Arduino

Stepper Motors est un type de moteurs synchrones DC qui divisent leur cycle de rotation en plusieurs petites étapes. Il existe de nombreuses applications pour eux, allant des imprimantes 3D aux machines CNC. Les moteurs pas à pas sont importants lorsque la précision et la précision des objets en mouvement sont nécessaires. En utilisant Arduino, nous pouvons contrôler très facilement le mouvement du moteur pas à pas, ce qui aide à créer plusieurs projets de robotique tels que les robots humains. Maintenant, discutons du nombre de moteurs pas à pas que nous pouvons intégrer avec une seule carte Arduino.

Moteurs pas à pas avec arduino

Les moteurs pas à pas peuvent être contrôlés avec un degré élevé de précision sans avoir besoin d'un système de rétroaction. Ces moteurs peuvent diviser leur cycle rotatoire complet en plusieurs petites étapes discrètes en fonction de l'entrée numérique reçue de la carte Arduino. Chaque impulsion numérique d'Arduino peut modifier le mouvement du moteur pas à pas dans le nombre d'étapes ou la fraction du cycle complet communément appelé "Micro Stepping".

Généralement, les moteurs pas à pas tombent en deux catégories:

  • Bipolaire
  • Unipolaire

La différence entre ces deux moteurs peut être informée en examinant le nombre de fils de sortie qu'ils ont. Unipolaire Stepper est livré avec 4 fils, et il est le plus utilisé, tandis que Bipolaire Les moteurs pas à pas ont 6 Fils Sortie.

Pour contrôler ces moteurs pas à pas, nous avons besoin d'un conducteur de moteur externe. Ces pilotes à moteur sont nécessaires car Arduino ne peut pas retenir le courant plus que 20 mA Et normalement, les moteurs pas à pas prennent le courant beaucoup plus que cela. Un autre problème est pistolet, Les moteurs pas à pas ont des composants magnétiques; Ils continueront à créer de l'électricité même lorsque l'alimentation est coupée, ce qui peut entraîner une tension négative suffisante qui peut endommager la carte Arduino. Ainsi, dans les moteurs courts, les conducteurs sont nécessaires pour contrôler les moteurs pas à pas. L'un des pilotes de moteur couramment utilisés est le Module A4988.

La figure montre qu'un moteur pas à pas unipolaire est connecté à Arduino à l'aide du module du conducteur du moteur A4988:

Pour en savoir plus sur la façon dont nous pouvons connecter un moteur pas à pas avec Arduino, cliquez ici.

Maintenant, nous allons nous diriger vers la partie principale pour savoir combien de steppers Motors Arduino peut prendre en charge.

Combien de moteurs pas à pas peut contrôler Arduino

Arduino peut contrôler autant de moteurs pas à pas que vous le souhaitez, tout dépend de la carte que nous utilisons et du nombre d'épingles de sortie d'entrée disponibles dans une carte Arduino. Arduino Uno a un total de 20 broches d'E / S disponibles dont 14 sont numériques et 6 broches analogiques. Cependant, nous pouvons également utiliser des broches analogiques pour conduire un moteur pas à pas à l'aide d'un conducteur de moteur.

En utilisant le module de conducteur du moteur A4988, il faut jusqu'à deux broches pour conduire un seul moteur pas à pas, ce qui signifie qu'Arduino Uno peut prendre en charge un total de 10 moteurs de steppers à la fois à la fois. Les 10 moteurs incluent également les broches TX et RX sur la carte Arduino, rappelez-vous tout en utilisant ces broches, nous ne pouvons plus télécharger ou déboguer les croquis Arduino. Pour éviter cela, les épingles de communication doivent rester gratuites afin que le transfert de données en série puisse être possible à tout moment.

Plusieurs moteurs pas à pas utilisant un conducteur de moteur externe

Un seul Arduino peut contrôler plusieurs moteurs pas à pas. Tout dépend du module de pilote moteur que nous utilisons avec Arduino. Les broches Arduino jouent un rôle important dans le contrôle de plusieurs moteurs pas à pas.

Comme mentionné précédemment, si nous utilisons le module de pilote moteur A4988 avec Arduino Uno, il a la capacité de contrôler jusqu'à 10 moteurs. Ces 10 moteurs pas à pas incluent également une connexion aux broches en série TX et RX. Tandis que ces deux broches sont utilisées, Arduino ne peut plus communiquer en série.

Le conducteur du moteur A4988 ne fait que deux broches et Dir. Ces broches sont suffisantes pour conduire facilement un seul moteur pas à pas. Si nous connectons plusieurs steppers à Arduino, chacun d'eux a besoin d'un module de pilote de moteur séparé.

Ici, dans le diagramme du circuit ci-dessous, nous avons connecté 9 moteurs pas à pas en utilisant le module A4988. Tous prenant deux épingles de contrôle d'Arduino.

L'utilisation d'un module de pilote de moteur séparé présente plusieurs avantages:

  • Le conducteur du moteur peut contrôler la logique de pas en soi, ce qui libère Arduino pour effectuer une autre tâche.
  • Réduction des connexions globales qui entraîne un contrôle de plus de moteurs sur un seul
  • Le pilote de moteur permet aux utilisateurs de contrôler les moteurs sans aucun microcontrôleur simplement en utilisant une seule vague carrée.

Plusieurs moteurs pas à pas en utilisant des protocoles I2C entre deux arduino

Une autre façon de contrôler plusieurs moteurs pas à pas est de connecter plusieurs tableaux Arduino en utilisant des protocoles de communication I2C. I2c a un avantage de Maître d'esclave Configuration qui permet à un appareil de contrôler beaucoup sans avoir besoin de périphériques et de fils externes. En utilisant I2C, nous pouvons augmenter le nombre de planches Arduino qui entraînent une fourniture de plus d'épingles. Toutes ces broches peuvent contrôler très facilement les moteurs pas à pas.

Diagramme ci-dessous illustrez comment les appareils maître-esclave sont connectés et en limitant le nombre de fils comment nous pouvons contrôler plusieurs moteurs pas à pas.

Deux cartes Arduino peuvent être connectées en utilisant SDA et SCL broches qui sont respectivement aux broches analogiques A4 et A5. De cette façon, deux cartes Arduino sont connectées en configuration maître-esclave. Maintenant, chacun de ces tableaux Arduino peut prendre en charge 8 moteurs pas à pas en éliminant deux paires de fils, une pour la communication en série et une que nous venons d'utiliser pour la communication I2C.

Broche analogique arduino Pin I2C
A4 SDA
A5 SCL

Conclusion

Stepper Motors joue un rôle essentiel dans la conception de projets de robotique. Certains projets peuvent exiger plusieurs moteurs pas à pas pour leur fonctionnalité. Le contrôle de plusieurs moteurs peut être possible de plusieurs manières, nous avons ici mis en évidence comment nous pouvons contrôler plusieurs moteurs pas à pas en utilisant le protocole I2C et le module de pilote moteur A4988.