- Version
- Télécharger 519
- Taille du fichier 3.82 KB
- Date de création 21 mars 2023
- Télécharger
TB6600, La création du train d’impulsion pour un moteur pas à pas avec Arduino.
Code n-1 : TB6600, La création du train d’impulsion pour un moteur pas à pas avec Arduino
Ce code est destiné à contrôler un moteur pas-à-pas à l'aide d'une carte Arduino. Il utilise les pins ENA, PULS et DIR pour contrôler la rotation du moteur.
La fonction setup() est exécutée une seule fois au démarrage de l'Arduino. Elle configure les pattes ENA, PULS et DIR en sortie.
La fonction loop() est exécutée en boucle sans fin après le démarrage de l'Arduino. Elle commence par récupérer le temps actuel en microsecondes. Cette fonction est basée sur le principe de génération d'impulsions qui permet de faire avancer le moteur d'un pas à chaque impulsion.
Si le temps écoulé depuis la dernière impulsion est supérieur ou égal à la valeur de la tempo stockée dans la variable TEMPO, la fonction inverse l'état de la broche PULS_PIN pour générer une impulsion et faire tourner le moteur pas-à-pas. La valeur de TEMPO contrôle la vitesse de rotation du moteur.
Ce code est un exemple de base pour contrôler un moteur pas-à-pas avec une carte Arduino. Il est possible de modifier le code pour ajouter des fonctionnalités supplémentaires, telles que le contrôle de la direction de rotation du moteur ou la gestion de la vitesse de rotation en fonction de l'entrée utilisateur.
Code n-2 : TB6600, personnaliser la fréquence de votre moteur pas-à-pas en temps réel
Le code présenté ici est un exemple de contrôle de la fréquence d'un moteur pas à pas à l'aide d'un driver TB6600 et d'une carte Arduino. Le principe est de générer des impulsions à une fréquence donnée pour faire tourner le moteur pas à pas.
Le code est organisé en trois parties principales : la déclaration des variables, le setup et son contenu, et enfin la fonction loop et son contenu. Nous allons les examiner chacune en détail.
Déclaration des variables
Le code commence par la déclaration des variables utilisées dans le programme. Les variables sont les suivantes :
- ENA_PIN, PULS_PIN et DIR_PIN : ces variables contiennent les numéros des broches utilisées pour le contrôle du moteur.
- TEMPO : cette variable contient la valeur de la tempo en microsecondes. Elle est initialisée à 250 µs.
- tempsPrecedent : cette variable stocke le temps précédent en microsecondes, utilisé pour calculer le temps écoulé depuis la dernière impulsion.
Setup et son contenu
La fonction setup() est exécutée une seule fois au démarrage de l'Arduino. Elle initialise la communication série, configure les pattes en sortie pour le contrôle du Driver, valide le driver et définit la direction du moteur. Enfin, elle affiche un message pour demander à l'utilisateur de saisir une nouvelle valeur de tempo (train d’impulsions).
Fonction loop et son contenu
La fonction loop() est exécutée en boucle sans fin après le démarrage de l'Arduino. Elle récupère le temps actuel en microsecondes, lit les données disponibles sur la communication série et vérifie si une nouvelle valeur de tempo a été saisie. Si c'est le cas, elle met à jour la variable TEMPO avec cette nouvelle valeur.
Ensuite, la fonction loop() vérifie si la valeur du temps écoulé depuis la dernière impulsion est supérieure ou égale à la valeur de la tempo. Si tel est le cas, elle met à jour la variable tempsPrecedent avec le temps actuel et génère une impulsion en inversant l'état de la broche de pulsation.