Cours:SaeCpld : Différence entre versions
Ligne 46 : | Ligne 46 : | ||
{{Question|vérifier le fonctionnement en utilisant des switch pour modifier le rapport cyclique}} | {{Question|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|ajouter un filtre passe bas sur votre/vos sorties et vérifier le bon fonctionnement}} | ||
+ | |||
Version du 1 décembre 2023 à 15:35
Sommaire
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 une carte de10
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
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
ajouter un filtre passe bas sur votre/vos sorties et vérifier le bon fonctionnement