Capteurs enfouis : Différence entre versions

De Wiki d'activités IMA
(Mardi 17 Avril 2012 :)
(Mardi 17 Avril 2012 :)
Ligne 161 : Ligne 161 :
 
<li> '''Test des interruptions et des modes basse consommation :''' </li>
 
<li> '''Test des interruptions et des modes basse consommation :''' </li>
 
<li> Avant de tester les interruptions on s'est documenté sur le fonctionnement des interruptions et sur les différents modes basse consommation (LPM). Il exsite cinq modes basse consommation LPM0-4. </li>
 
<li> Avant de tester les interruptions on s'est documenté sur le fonctionnement des interruptions et sur les différents modes basse consommation (LPM). Il exsite cinq modes basse consommation LPM0-4. </li>
<li> Pour tester l'interruption on a configuré le bouton poussoir comme entrée d'interruption. à chaque appui sur le bouton poussoir, le MSP430 sort du mode LPM (basse consommation) pour executer la routine d'interruption. En effet la routine d'interruption consiste à effectuer une mesure et de l'envoyer à l'Access Point. <li>
+
<li> Pour tester l'interruption on a configuré le bouton poussoir comme entrée d'interruption. à chaque appui sur le bouton poussoir, le MSP430 sort du mode LPM (basse consommation) pour executer la routine d'interruption. En effet la routine d'interruption consiste à effectuer une mesure et de l'envoyer à l'Access Point. </li>
  
 
</ul>
 
</ul>

Version du 4 mai 2012 à 14:16

Liste du matériel

Présent

  • Carte Arduino Uno
  • Capteur température Dallas
  • Capteur Vibration TI
  • RTC Maxim
  • Carte de développement TI eZ430-RF2500-SEH
  • Divers composant pour le réveil passif

A acheter

  • à remplir

Avancement du projet

8 février 2012 :

  • Lecture des documentations relatives au MSP340F2274, horloge temps réel DS1391 et au module de communication CC2200.
  • Installation des drivers et logiciels des composants utilisés
  • Lecture de quelques programmes d'exemples avec compréhension des différents algorithmes
  • Bug au niveau du chargement du programme sur la carte ( erreur d'initialisation de l'interface )

9 février 2012 :

  • Lecture plus approfondie de la datasheet des horloges temps réel:
  • Le fonctionnement de l'horloge temps réel et de son type de communication est à peu près compris. Mais je me suis rendu compte que le composant à notre disposition (DS1391) ne possède pas de broche d'interruption. En effet sur les autres composants du même type (DS1390,DS1394,DS1392 et DS1393) il y a cette broche et il sera alors plus simple par la suite de configurer une date précise qui activera la broche d'interruption. [Alex]En effet, il pourrait être intéressant d'obtenir des échantillons auprès de Maxim (http://www.maxim-ic.com). En attendant, on laisse *provisoirement* de coté le réveil par RTC[/Alex]

  • Choix des broches utilisés sur la carte eZ430... et analyse du mode de communication SPI(synchronous peripheral interface):
  • L'horloge temps réel fonctionne avec le mode de communication SPI. Il a fallu donc choisir sur quels broches spécifiques de la carte eZ430 il faut relier celles de l'horloge.

  • Résolution du Bug du logiciel de programmation
  • Choix du mode de communication entre les différents capteurs et le microP. D'après les Datasheet des différents capteurs, on peut utiliser directement une liaison série de type SPI supportée par le microP.
  • Compréhension du fonctionnement du mode SPI ainsi que le rôle des différents registres à initialiser
  • Réalisation d'un premier algo permettant de lire les données retournées par deux capteurs
  • Codage de ce cet algo (initialisation des différents registres + configuration de la liaison série etc ...)

Lundi 13 février 2012 :

  • compréhension du mode de communication RF ainsi que le fonctionnement du Timer A
  • modification du précédent algo en y rajoutant la partie qui géra la transmission des données via la com RF
  • début du codage de l'algo


mercredi 15 février 2012 :

  • câblage d'un capteur de température afin de tester le programme permettant la com en mode SPI
  • modification du programme et vérification des différents registres d'initialisation

jeudi 16 février 2012 :

  • n'ayant pas réussi à lire la température la séance précédente, on a continué nos testes (révision du programme, visualisation des sorties sur l'analyseur de signaux)
  • on a remarqué que le module MSP délivrait bien la bonne horloge et que les autres signaux de sortie sont correcte. le capteur quant à lui nous délivre des signaux incorrecte. je crains fort qu'il soit endommagé (peut être lors du câblage ?)

Entre temps :

  • Commande d'un nouveau composant RTC muni d'une interruption chez Maxim.

mardi 6 mars 2012 :

  • Réalisation de la carte RTC sur papier avec réflexion sur les signaux et sur la tension d'alimentation.
  • Recherches sur l'utilisation de Altium pour la création de typon.

mercredi 7 mars 2012 :

  • Acquisition de la température
    Le microcontrôleur MSP430 est équipé d’un capteur de température intégré. On choisira ce capteur pour effectuer nos premiers tests. Lors de cette scéance on a pu faire l'acquisition de la température à travers le CAN du MSP430. En effet la température ressentie est convertie en tension en utilisant l’équation : Vtemp= 0,00355*(Tempc) +0,986 La tension de sortie du capteur est numérisée à travers le CAN du MSP430 - ADC10 – et stockée dans le registre ADC10MEM du CAN. En lisant ce dernier, on peut récupérer la tension. La conversion de la tension lue dans le registre en température s’effectue à l’aide de l’équation : Temp_en_degC = ((tension - 673) * 4230) / 1024;
  • Réalisation du schéma et du typon de la carte RTC sur Altium
  • SCHEMA
  • Schema rtc.png


  • TYPON
  • Typon rtc.png

lundi 12 mars 2012 :

  • Architecure du réseau
  • Pendant cette scéance nous avons établi une architecture pour le réseau de capteur
  • Archi.png

    On aura deux algorithmes bien distincts celui de l’Access Point et celui de l’End Device.


  • Soudage de la carte RTC avec l'aide de Thierry Flamen
  • Test des alimentations
  • TOP (coté composants)
  • Photo 2.jpg

  • BOTTOM (coté soudure et composants CMS)
  • Photo1.jpg

Mercredi 14 mars 2012 :

  • Description des algorithmes
  • Dans ce projet on aura deux algorithmes :
  • L’algorithme de l’Access Point
  • Le rôle d’un Access Point et de récupérer les données transmises par les différents End Device (capteurs) et de les envoyer par liaison série a un PC qui s’occupera de la collecte des informations.

    Algo AP.png


  • L’algorithme du End Device
  • A la première mise sous tension l’End Device s’occupera de la configuration du réseau sans fil et de son horloge temps réel, ensuite l’MSP430 va s’endormir en attendant une interruption qui sera générée par l’alarme. En effet une fois l’interruption détectée la routine d’interruption va mesurer la température à travers le convertisseur analogique numérique, lire la date via une liaison SPI, mettre en forme la donnée, la stocker dans la mémoire flash et ensuite tester s’il a atteint le nombre de mesures maximum. Si le teste est vrai la mémoire flash sera scruter et son contenu sera envoyé à l’Access Point. Sinon le microcontrôleur se remettra en mode basse consommation et attendra un nouveau réveil.

    Algo ED.png

mercredi 4 Avril 2012 :

  • Liaison Sans fil
  • Lors de cette séance on a récupéré un programme de test fourni pas Texas Instrument permettant d'établir une communication entre un End Device et un Access Point. On a modifié ce programme afin d'envoyer les températures mesurées sur l'End device vers l'Access Point.
  • Une fois la communication établie, il a fallu stocker les données au niveau de l'access point. Pour cela on s'est documenté sur le mode de fonctionnement de la mémoire Flash du MSP430 et sur les différents registres à initialiser.
  • Création de deux fonctions write_flash() et read_flash permettants de lire et d'écrire dans un segment de la mémoire flash


Mardi 17 Avril 2012 :

  • Test des interruptions et des modes basse consommation :
  • Avant de tester les interruptions on s'est documenté sur le fonctionnement des interruptions et sur les différents modes basse consommation (LPM). Il exsite cinq modes basse consommation LPM0-4.
  • Pour tester l'interruption on a configuré le bouton poussoir comme entrée d'interruption. à chaque appui sur le bouton poussoir, le MSP430 sort du mode LPM (basse consommation) pour executer la routine d'interruption. En effet la routine d'interruption consiste à effectuer une mesure et de l'envoyer à l'Access Point.