Différences

Ci-dessous, les différences entre deux révisions de la page.

Lien vers cette vue comparative

Les deux révisions précédentes Révision précédente
Prochaine révision
Révision précédente
fr:informatics:piloter_les_moteurs [28/01/2025 14:56]
Keuronde [Code de démonstration]
fr:informatics:piloter_les_moteurs [29/01/2025 09:56] (Version actuelle)
Keuronde [Module PWM et Raspberry Pi Pico]
Ligne 32: Ligne 32:
 Initialisez les broches de sens en sortie, configurez la broche « Enable » en PWM. Initialisez les broches de sens en sortie, configurez la broche « Enable » en PWM.
  
-Configurez la fonction PWM à une fréquence de 40kHz. Pour cela, vous avez en général deux paramètres sur lesquels jouer :+Idéalement nous aimerions configurer notre fonction PWM à une fréquence comprise entre 20 kHz et 40 kHz, ce qui limite les sifflements du moteur. Seulement, notre pont en H est un peu vieux et le fabriquant conseille de ne pas dépasser 5 kHz. Configurez alors la fonction PWM à une fréquence de 5 kHz. Pour cela, vous avez en général deux paramètres sur lesquels jouer : 
   * Un diviseur de fréquence en entrée du bloc PWM   * Un diviseur de fréquence en entrée du bloc PWM
   * La valeur de rebouclage du module PWM   * La valeur de rebouclage du module PWM
Ligne 39: Ligne 40:
 Si votre valeur de rebouclage est plus grande que celle admise par votre microcontrôleur, alors vous devrez diviser votre fréquence en entrée du PWM. Si votre valeur de rebouclage est plus grande que celle admise par votre microcontrôleur, alors vous devrez diviser votre fréquence en entrée du PWM.
  
-Dans notre cas, F_microcontrôleur = 125 MHz, F_désirée = 40 kHz. Nous trouvons une valeur de rebouclage à 3 125. cette valeur est admissible par le module PWM qui est sur 16 bits (max 65 535).+Dans notre cas, F_microcontrôleur = 125 MHz, F_désirée = 5 kHz. Nous trouvons une valeur de rebouclage à 25 000. cette valeur est admissible par le module PWM qui est sur 16 bits (max 65 535).
 ==== Commande en vitesse ==== ==== Commande en vitesse ====
  
Ligne 46: Ligne 47:
 ^ Vitesse souhaitée ^ Commande ^ ^ Vitesse souhaitée ^ Commande ^
 | 0 % | 0 | | 0 % | 0 |
-| 10 % | 312 +| 10 % | 2500 
-| 50 % | 1562 +| 50 % | 12500 
-| 90 % | 2812 +| 90 % | 22500 
-| 100 % | 3125 |+| 100 % | 25000 |
 Voici qui est vrai pour le module PWM, mais pour notre fonction qui gère la commande de la vitesse du moteur, nous souhaitons gérer une subtilité supplémentaire : le sens du moteur. Voici qui est vrai pour le module PWM, mais pour notre fonction qui gère la commande de la vitesse du moteur, nous souhaitons gérer une subtilité supplémentaire : le sens du moteur.
 ===== Structure du code ===== ===== Structure du code =====
Ligne 66: Ligne 67:
 Attention, pour utiliser le module PWM, vous devez éditer votre fichier CMakeLists.txt pour ajouter hardware_pwm dans « target_ling_libraries », comme ceci : Attention, pour utiliser le module PWM, vous devez éditer votre fichier CMakeLists.txt pour ajouter hardware_pwm dans « target_ling_libraries », comme ceci :
   target_link_libraries(PAMI_Cours_Moteurs   target_link_libraries(PAMI_Cours_Moteurs
-  ... +      ... 
-  hardware_pwm  +      hardware_pwm  
-  ...+      ...
   )   )