Menu
Microbots
0
  • Faire
    • Commencer
    • Constructions de créateurs
    • Éducation
  • Boutique
    • Modules Maker
    • Packs de création
    • Outils et engrenages
    • Robots et écrans
  • À propos
    • Notre histoire
    • Tendez la main
    • FAQ
  • français
  • Votre panier est vide
Microbots
  • Faire
    • Commencer
    • Constructions de créateurs
    • Éducation
  • Boutique
    • Modules Maker
    • Packs de création
    • Outils et engrenages
    • Robots et écrans
  • À propos
    • Notre histoire
    • Tendez la main
    • FAQ
  • Langue

  • 0 0

MotorCell - Contrôle du régime moteur à grande vitesse

MotorCell utilise le contrôleur triphasé contre-électromotrice BD67173NUX avec un système d'entraînement sans capteur, permettant le contrôle de la vitesse via un rapport cyclique du signal d'entrée PWM. La broche IN est par défaut à l'état bas, ce qui fait tourner le moteur à pleine vitesse lorsqu'elle est tirée à l'état haut (2,5 V–5 V). Vous pouvez régler la vitesse par paliers de 1 000 tr/min via le rapport cyclique ou utiliser directement les fonctions de la bibliothèque MotorCell.

Remarques importantes et informations de sécurité

  • Charge : MotorCell est conçu pour entraîner de faibles charges. La vitesse diminue à mesure que la charge/traînée augmente. La charge maximale en rotation est de 12 g pour un rayon de 18 mm. Pour un rayon supérieur, consultez les spécifications pour le graphique complet du couple en fonction de la vitesse.
  • Attention à grande vitesse : gardez les mains éloignées des pièces mobiles et portez des lunettes de protection.
  • Résistance de rappel de la broche OUT : La bibliothèque MotorCell active automatiquement une résistance de rappel interne sur la broche OUT pour la mesure de la vitesse. Si vous utilisez un logiciel personnalisé, assurez-vous que la résistance de rappel reste activée ou ajoutez-en une externe.
  • Détection de calage : si le moteur est forcé à s'arrêter, il entre en mode de protection de verrouillage pendant 5 secondes. Ce blocage peut être réinitialisé en réglant l'entrée PWM à 0 %, puis en la réactivant. Ce processus est géré automatiquement par la fonction Spin de la bibliothèque MotorCell.

Configuration de votre MotorCell


Connexion de votre MotorCell

  • DANS: Entrée PWM 10 kHz-50 kHz pour le contrôle de la vitesse (ou connexion au VDD pour la pleine vitesse)
  • DEHORS: Rétroaction de fréquence de vitesse (nécessite une résistance de rappel si elle n'est pas implémentée via un logiciel)
  • FR: Contrôle de direction optionnel (connexion à VDD, GND ou contrôle avec GPIO)
  • GND : Connexion à la terre
  • VDD : Entrée d'alimentation (2,5 V–5 V)

Installation de la bibliothèque MotorCell

Pour commencer, installez la bibliothèque MotorCell à partir du gestionnaire de bibliothèque Arduino :

  1. Ouvrez l' IDE Arduino .
  2. Accédez à Sketch > Inclure la bibliothèque > Gérer les bibliothèques .
  3. Recherchez « MotorCell » et installez-le.

La bibliothèque comprend des exemples pour vous aider à démarrer rapidement avec le contrôle MotorCell.

Exemple de contrôle de vitesse

Nous allons commencer par contrôler la vitesse à l'aide de la fonction Spin. Cette fonction ajuste la vitesse du moteur au pourcentage souhaité de sa capacité maximale et renvoie la valeur actuelle du régime. Cette valeur est également automatiquement affichée sur le moniteur série, pour faciliter le débogage. Si le moteur cale, il tente automatiquement de redémarrer.

 #include <MotorCell.h>

 #define IN_pin1 2
 #define OUT_pin2 3
 #define FR_pin2 1

 MotorCell myMotorCell(IN_pin1, OUT_pin2, FR_pin2); /* Configure the MotorCell pins */

 void setup() {
 Serial.begin(115200); /* Set up serial - Ensure Tools/USB_CDC_On_Boot is enabled */

 myMotorCell.Init(); /* Initialize the MotorCell */
 }

 void loop() { 
uint16_t MotorRPM = myMotorCell.Spin(25); /* Définir la vitesse à 25 % de la vitesse maximale */
 }

⚠ Remarque : Pour cette fonction, nous recommandons d'utiliser un périphérique ESP32 comme le CodeCell pour éviter les retards lors de la lecture du RPM

Exemple d'inversion du sens du moteur

L'exemple suivant montre comment inverser le sens de rotation du moteur toutes les 5 secondes à pleine vitesse. La fonction MaxSpin règle le moteur à sa vitesse maximale, tandis que la fonction ReverseSpin modifie son sens de rotation. Cette fonction alterne entre rotation horaire et antihoraire avec un délai de 5 secondes entre chaque changement de sens.

 #include <MotorCell.h>

 #define IN_pin1 2
 #define OUT_pin2 3
 #define FR_pin2 1

 MotorCell myMotorCell(IN_pin1, OUT_pin2, FR_pin2); /* Configure the MotorCell pins */

 void setup() {
 Serial.begin(115200); /* Set up serial - Ensure Tools/USB_CDC_On_Boot is enabled */
 
myMotorCell.Init(); /* Initialiser la MotorCell */
 }

 boucle vide() {
 myMotorCell.MaxSpin(); /* Régler le moteur à la vitesse maximale */
 myMotorCell.ReverseSpin(); /* Inverse le sens de rotation du moteur */
 delay(5000); /* Attendre 5 secondes */

 myMotorCell.MaxSpin(); /* Maintenir la vitesse maximale */
 myMotorCell.ReverseSpin(); /* Inverser à nouveau la direction */
 delay(5000); /* Attendez encore 5 secondes */
 }

Exemple de contrôle de vitesse PID

Ce dernier exemple implémente un contrôleur PID pour réguler la vitesse du moteur à la vitesse souhaitée grâce à la fonction SpinPID. Le contrôleur PID compense dynamiquement les perturbations et les variations de charge, assurant ainsi un fonctionnement fluide. Si le moteur cale, la fonction le redémarre automatiquement et vous avertit si la vitesse cible ne peut être atteinte. Ces informations sont également automatiquement affichées sur le moniteur série, facilitant ainsi le débogage.

 #include <MotorCell.h>

 #define IN_pin1 2
 #define OUT_pin2 3
 #define FR_pin2 1
 
MotorCell myMotorCell(IN_pin1, OUT_pin2, FR_pin2); /* Configurer les broches MotorCell */

 void setup() {
 Serial.begin(115200); /* Configurer le port série - S'assurer que Tools/USB_CDC_On_Boot est activé */

 myMotorCell.Init(); /* Initialiser la MotorCell */
 }

 boucle vide() {
 uint16_t MotorRPM = myMotorCell.SpinPID(15000); /* Définir le régime cible à 15 000 à l'aide du PID */
 }

⚠ Remarque : la fonction SpinPID () utilise un Minuterie PWM haute vitesse, la rendant compatible uniquement avec les appareils basés sur CodeCell et ESP32.

Conclusion

Avec la bibliothèque MotorCell installée, vous pouvez facilement contrôler la vitesse, la direction et surveiller son régime !

Prêt à expérimenter ? Procurez-vous un MotorCell dès aujourd'hui et consultez le dépôt GitHub MotorCell pour plus d'exemples de code et de documentation technique !

  • Partager:

Partage

Github

  • À propos
  • Logiciel
  • Éducation
  • Contact
  • FAQ
  • Termes
  • Politique de remboursement
  • politique de confidentialité

Soyez le premier informé des nouveaux projets et bénéficiez d'offres intéressantes !

© 2025 Microbots.