Les instructions du microcontroleur 18F452

Fermé
zareh Messages postés 9 Date d'inscription samedi 21 novembre 2009 Statut Membre Dernière intervention 27 mars 2010 - 21 nov. 2009 à 20:07
Bonjour,

je suis en 5ieme telecommunication, et j'ai un question de microcontroleur que je souhaite que vous pouvez m'aider:

Implémentation d’un Analyseur de Réseaux 50Hz:

On se propose de réaliser un système de mesure de la fréquence et de l’amplitude du signal électrique 50 Hz du réseau électrique.

Partie A: Analyse de la fréquence

On suppose que la fréquence peut varier dans une limite de  2 % autour de la valeur 50 Hz. Si la fréquence du réseau électrique est en dehors de cette limite une led connectée à RA0 est allumée. On rappelle que la fréquence du signal est le nombre d’impulsions par seconde.

Le système est basé sur un microcontrôleur, un transformateur et un comparateur. Le rôle du transformateur est de fournir un signal sinusoïdal d’amplitude 5V et de même fréquence que le signal du secteur électrique.
Le rôle du comparateur est de fournir un signal carré comme représenté sur la figure 1. Prendre Fosc = 1MHz.

Procédure:

Timer1 est utilisé avec CCP1 en mode de comparaison pour générer une interruption chaque 1s. Le signal carré en sortie du comparateur est connecté à l’entrée d’horloge de Timer0. Quand une interruption est générée par Timer1 le processeur lit la valeur de Timer0 et le remet a zéro. Si la fréquence du réseau est en dehors de la limite admissible, une led est allumée. La valeur de la fréquence est sauvegardée à l’adresse FREQVALUE.


a) Donner le circuit hardware nécessaire.
b) Ecrire une routine d’initialisation du microcontrôleur.
c) Ecrire une routine de réponse à une interruption
d) Donner le programme principal.





Fig. 1 (transformateur 220v 50Hz-->5v 50Hz puis on met un comparateur et la sortie sera un signal carre)


Partie B : Analyse de l’amplitude

On désire effectuer une mesure de l’amplitude du signal. Pour ceci le signal sinusoïdal en sortie du transformateur est connecté à un détecteur de crête dont la sortie est reliée au canal analogique 7 du microcontrôleur.
On suppose que l’amplitude du signal peut varier dans une limite de -10 % (de 220V a 200V). La sortie du transformateur est de 5V lorsque la valeur efficace du signal du réseau est de 220V. Si l’amplitude du signal est en dessous de la limite admissible une led connectée à RD0 est allumée.

Procédure:

Timer2 est utilisé pour générer une interruption chaque 1.25 ms (fréquence d’échantillonnage de 800 Hz). Quand une interruption est générée une conversion analogique digitale est activée. Sur une période du signal du réseau 16 interruptions seront alors générées. Le processeur effectue la moyenne des 16 échantillons et le résultat de conversion est stocké en mémoire à l’adresse AMPLITUDE_SIGNAL.

a) Donner le circuit hardware nécessaire.
b) Donner une routine d’initialisation
c) Ecrire un programme qui lit 16 échantillons du signal et stocke la valeur moyenne en mémoire.
d) Ecrire le programme principal qui teste si la tension d’entrée est en dessous de 200V.