Lire mesure toute les 15sec avec PIC18F45K22
Répondre à la discussion
Affichage des résultats 1 à 13 sur 13

Lire mesure toute les 15sec avec PIC18F45K22



  1. #1
    invite0e0d6f65

    Lire mesure toute les 15sec avec PIC18F45K22


    ------

    Bonjour,

    Dans le cadre de mon projet, j'utilise un PIC18F45K22 (oscillateur interne positionner à 8MHz) pour piloter un système de contrôle d'atmosphère. L'un des contrôles primordiaux est de contrôler le taux de CO2 dans l'air. Pour ce faire, j'ai un capteur de taux de CO2 dont voici la référence : EE891. Ce capteur effectue une mesure toute les 15sec. Donc voici ma question :

    Est-il possible d'aller lire cette mesure toute les 15secondes sans pour autant affecter le reste du système ? Et si oui comment ?

    Par avance merci à vous pour votre aide.

    -----

  2. #2
    invitea613d208

    Re : Lire mesure toute les 15sec avec PIC18F45K22

    Bonjour, peut tu etre plus precis,

    sans pour autant affecter le reste du système ? Et si oui comment ?
    je ne saisis pas trop ce que tu ne veux pas affecter

  3. #3
    invite0e0d6f65

    Re : Lire mesure toute les 15sec avec PIC18F45K22

    Oui je vais essayer d'être plus précis.

    Concrètement, je souhaite aller lire ma mesure toute les 15 secs, quelque soit la tâche de mon PIC à ce moment là. Et je me demande si je ne risque pas d'affecter le pilotage de mes sorties, ma communication SPI avec un module externe etc... Et si cela est possible, comment mettre en oeuvre ce "sytème de mesure" (si je peux appeler ça comme ça).

    Je suis débutant dans la programmation de PIC donc veuillez m'excuser si mes hypothèses sont fausses.

  4. #4
    invitea613d208

    Re : Lire mesure toute les 15sec avec PIC18F45K22

    TOut d'abord, il est impossible de ne pas perturber le fonctionnement du PIC. Je m'explique :

    Lorsque l'on veut effectuer une operation toutes les X secondes peut importe ce que le programme fait, on utilise les interruptions et les Timers. En fait on programme une "Horloge" pour "sonner" toutes les X secondes. Lorsque "l'horloge sonne" on execute un petit bout de programme.

    Seulement, quand on est occupé a executer c petit bout de programme, on ne fait pas le reste.

    SI ton petit bout de programme dure une "fraction de seconde" Tu ne vera pas la difference, mais si il te faut 5 seconde pour executer ton bout de programme, alors tu ne pourra rien faire sur tes sorties pendant ces 5 secondes.

    Est-ce un projet de fin d'année ?

  5. A voir en vidéo sur Futura
  6. #5
    invite0e0d6f65

    Re : Lire mesure toute les 15sec avec PIC18F45K22

    Non c'est un projet pour mon stage de fin d'étude de master 2.

    Mais penses-tu qu'il soit réellement judicieux de fonctionner comme je le souhaite ou me conseilles-tu une autre méthode ? Est-il facile de gérer des tempo en C et d'ajuster le temps de temporisation souhaiter ?

  7. #6
    invitea613d208

    Re : Lire mesure toute les 15sec avec PIC18F45K22

    Cela ne pose pas de problème particulier.

    En premier lieu :

    - Sais tu combien de temps prend une acquisition ?
    - Regarde la datasheet de ton PIC pour comprendre comment fonctionnent les Timers. (Les interruptions on voit après) et surtout comment on les configurent.
    - Avec que languages comtpes tu programmer ?

  8. #7
    invite0e0d6f65

    Re : Lire mesure toute les 15sec avec PIC18F45K22

    D'après un document trouver sur le site de la marque du capteur : la mesure est fait entre 5sec (typical time) 10sec (maximum). L'acquisition de la valeur par le PIC est fait via un protocole à eux (E2 Interface) qui est quasi-similaire à l'I2C. La seule chose qui change réelle est la fréquence d'horloge admise par le protocole : entre 500 et 5000Hz.

    Je me suis déjà penché quelque peu sur l'utilisation et la configuration de Timer. J'ai loué des livre à la BU, lu la partie 1 du cours fait par BIGONOFF.

    Je compte coder en C. Car la bibliothèque, que j'ai dû écrire via des notes d'application (mais que je n'ai pas tester pour le moment) est codée en C.

  9. #8
    invitea613d208

    Re : Lire mesure toute les 15sec avec PIC18F45K22

    Effectivement le temps de lecture n'est pas negligeable.
    Je pense que l'on peut ruser un peu :

    1 - Lancer la lecture de la valeur
    2 - Continuer nos petites affaires
    3 - Lire la valeur

    Car après tout c'est le capteur qui prend 5 secondes, le pic peut faire autre chose.

    Moi je ferai ainsi :

    1 Timer tous les 15 secs
    Quand il sonne : Lancement de l'acquisition
    2e Timer de 5s
    Recuperer la valeur lorsque le deuxieme timer sonne
    Réinitialiser le TImer 1 et 2 ...

    Comprend tu le cheminement ?

    Sa c'est a mon avis tres faisable faisable

  10. #9
    invite0e0d6f65

    Re : Lire mesure toute les 15sec avec PIC18F45K22

    Désolé mais je ne comprends pas trop le cheminement...

    Pour moi l'acquisition et récupérer une valeur c'est la même chose. Du coup, pourquoi je ne mettrais pas un Timer à 20 secondes directement et aller récupérer la valeur via l'E2 Interface ?

  11. #10
    invitea613d208

    Re : Lire mesure toute les 15sec avec PIC18F45K22

    Ah! je comprend, c'est on composant qui mesure automatiquement toutes les 15 secondes c'est sa ?

    Si c'est le cas effectivement un seul Timer suffit et temps de la lecture et du traitement est negligeable, sa ne derangera pas ton programme

    Est ce bien sa ? ( Je pensai qu'il fallait d'abord demander la mesure et recuperer 5 secondes après )

  12. #11
    invite0e0d6f65

    Re : Lire mesure toute les 15sec avec PIC18F45K22

    Oui oui la mesure est faite toute les 15secondes automatiquement On pourrait apparenter cela à temps d'échantillonnage quoi.

    Par contre je ne comprends pas trop comment on gère le temps via timer. J'ai bien compris que grosso modo un timer compte le temps, et selon la manière dont il est configuré il compte sur front montant ou descendant les impulsions d'horloge.

    Moi avec mon PIC (configurer avec oscillateur interne à 8Mhz), soit une instruction toute les 0,5µs, quelle méthode dois-je utiliser pour configurer mon Timer de manière à obtenir un temps de temporisation d'environ 20secondes ?

  13. #12
    invitea613d208

    Re : Lire mesure toute les 15sec avec PIC18F45K22

    Il y a plusieurs Timers en fonction de la duree du temps a compter. En gros 15 secondes * le nb de cycles ( 0.5µs) après tu regarde comment on configure le timer pour ce temps la.

    De memoire dans les pics tu as un petit Timer et un Gros Timer.

    Après dans la configuration du choisis la manière dont le Timer se manifeste. Soit il le signale en changeant un bit de registre (emplacement memoire) ou alors il déclenche une interruption.

    Le pic vas ensuite IMMEDIATEMENT executer le code de l'interruption.

    Cela s'apparente effectivement a un temps d'échantillonage.

  14. #13
    RISC

    Re : Lire mesure toute les 15sec avec PIC18F45K22

    Salut DENVER,

    Si tu avais cherché un peu tu aurais trouvé cette page : http://www.epluse.com/en/products/co...-sensor/ee891/

    Pourquoi ne pas utiliser la note d'application faite pour le 8051 : http://www.epluse.com/fileadmin/data...2interface.pdf

    Le code est écrit en C et très facile à porter car il utilise des broches d'E/S en drain ouvert. Il te suffit de l'adapter au PIC18F45K22 ;=)

    a+

Discussions similaires

  1. Réponses: 6
    Dernier message: 13/06/2012, 16h41
  2. A lire avant toute demande d’identification
    Par invite6fc61363 dans le forum Archéologie
    Réponses: 0
    Dernier message: 19/05/2010, 20h35
  3. Faire une video avec Fluent et lire les .anm
    Par invite111cf9ee dans le forum Logiciel - Software - Open Source
    Réponses: 0
    Dernier message: 30/05/2008, 13h54
  4. lire les fichiers issue d'un appareil de mesure
    Par invite8e0a1231 dans le forum Logiciel - Software - Open Source
    Réponses: 0
    Dernier message: 21/02/2007, 09h50
  5. Comment lire les fichiers Hex Intel avec Borland C++ ?
    Par invitea684ecee dans le forum Logiciel - Software - Open Source
    Réponses: 4
    Dernier message: 12/01/2005, 10h53
Dans la rubrique Tech de Futura, découvrez nos comparatifs produits sur l'informatique et les technologies : imprimantes laser couleur, casques audio, chaises gamer...