Cours:SaeCpld

De troyesGEII
Révision datée du 11 décembre 2023 à 13:28 par Gmillon (discussion | contributions) (génération des PWMs)
Aller à : navigation, rechercher

Modalité d'évaluation

Organisation des travaux

  • Le travail sera mené par trinôme. Vous devrez organiser vos travaux de manière à ce que chacun soit actif pour faire avancer le projet
  • Il y aura une partie individuelle
  • puis 1 travail de regroupement du travail


Calendrier indicatif

Présentation du projet

Vous allez réaliser la commande d'un moteur brushless (moteur synchrone à aimant permanent)

Tâches à réaliser

obtenir la position du rotor

interface utilisateur

génération des PWMs

On utilisera dans un 1er temps la carte de10-LIte exploitée lors des TPs XR3.16

module PWM

créer un module PWM qui aura :

  • en entrées:
    • clk : horloge à 50MHz
    • rcyclique : integer 0 à 1023
    • enable : bit
  • 2 sorties :
    • tH : bit qui pilotera le transistor du haut du 1/2 pont
    • tL : bit qui pilotera le transistor du bas du 1/2 pont
  • description du fonctionnement
    • les changements d'état des sorties se feront uniquement sur un front montant de l'horloge
    • un compteur modulo 1024 s'incrémente sur chaque front d'horloge
    • si enable=0 alors les sorties sont à 0
    • si enable=1 alors :
      • si compteur<rcylique tH=1 et tL=0
      • si compteur>rcyclique tH=0 et tL=1


Question.jpg vérifier le fonctionnement en utilisant des switch pour modifier le rapport cyclique

Incrémentation automatique du rapport cyclique

On ajoute un module qui incrémentera régulièrement la valeur du rapport cyclique.

créer un module :

  • avec 1 entrée horloge à 50MHz
  • 1 sortie de type entier entre 0 et 1023
  • incrémente le rapport cyclique tous les 50000 front d'horloge

Question.jpg ajouter un filtre passe bas sur votre/vos sorties et vérifier le bon fonctionnement

Liens/Ressources

Historique