Environnement Intelligent du groupe Domotique Arduino
Recherche de Documents : Environnement Intelligent du groupe Domotique Arduino. Recherche parmi 300 000+ dissertationsPar brenjany • 23 Février 2015 • 1 303 Mots (6 Pages) • 822 Vues
1
TP Environnement intelligent : réalisation d’un noeud capteur Horloge RTC et Mesure de
température – pression
1. Introduction
Le but de ce TP est de réaliser un noeud capteur qui embarquera les fonctionnalités suivantes :
- Mesure de température et de pression ;
- Gestion d’une horloge temps réel ;
- Remontée des informations de température et de pression, horodatées, par liaison sans fil en
utilisant le protocole de communication Zigbee.
Compétences acquises :
- Programmation sur microcontrôleur et la plateforme ARDUINO ;
- Gestion de capteurs avec sortie numérique ;
- Gestion du bus I2C ;
- Communication sans fil Zigbee.
2. Module RTC
a. Introduction
Le circuit DS1307 est un circuit horloge temps réel (Real Time Clock). Ses principales
fonctionnalités sont :
- Horloge temps réel ;
- Gestion secondes, minutes, heures, jour du mois, mois, année y compris bissextile ;
- Sauvegarde des données sur mémoire non volatile de 56 octets ;
- Conservation des données par batterie ;
- Communication sur bus I2C.
b. Schéma d’adressage des registres de données
Les différents champs de date et d’heure sont organisés selon le schéma mémoire suivant (cf. Figure
1). Chaque champ est codé sur 1 octet.
Figure 1 : adressage de base des registres circuit DS1307
2
L’organisation de chaque champ est définie selon la figure ci-dessous (cf. Figure 2).
Figure 2 : contenu des registres DS1307
Le contenu de la date et de l’heure est codé en « Decimal Codé Binaire ».
Le bit 7 du champ des secondes (CH) permet d’activer l’oscillateur du circuit d’horloge. Pour que
l’horloge s’incrémente, il est nécessaire que CH = 1.
c. Registre de contrôle
Contenu :
OUT : contrôle du niveau logique de la broche SQW/OUT lorsque la sortie SQW/OUT est
désactivé ;
SQWE (SQuare Wave Enable) : si valeur égale 1, sortie de l’oscillateur autorisée. La fréquence du
signal de sortie est définie par les 2 bits RS1 et RS0 (RS : Rate Select).
Remarque : par défaut, tous les bits seront mis à 0.
d. Configuration du bus I2C
La configuration matérielle du bus I2C est définie par la figure ci-dessous (cf. Figure 3).
3
Figure 3 : DS1307 – configuration bus I2C
3. Module température – pression
a. Préambule : notion de pression atmosphérique
La pression atmosphérique est la pression exercée par l’air sur la surface de la Terre. Elle représente
également le poids exercée par une colonne d’air sur une surface donnée.
Unité de mesure : le Pascal (Pa) qui représente 1Newton / m2.
Usuellement, la mesure de pression est exprimée en hectoPascal (hPa) et 1hPa = 100Pa.
Autre unité de mesure : mm de mercure
P(mm mercure) = P(hPa) * 760 / 1013.25
La mesure de pression doit être corrigée en fonction de la température.
b. Principales caractéristiques
Documentation de référence : BMP085 – Digital pressure sensor, Datasheet, Rev. 1.2, BOSCH,
octobre 2009
Capteur de pression et de température.
Calibration du capteur par un ensemble de paramètres stockés en EEPROM.
Sortie numérique des mesures et accès à ces mesures sur bus I2C.
- UP : pression (de 16 à 19 bits selon mode d’acquisition)
- UT : température (16 bits)
Mise en oeuvre matérielle : cf. schéma ci-dessous.
Attention alimentation électrique : 3.3V
4
c. Mesure de la température et de la pression
La mesure est provoquée par une demande du microcontrôleur (qui joue le rôle de Maître sur le bus
I2C)
Le cycle de mesure est défini ci-après :
Remarques : UT : mesure non compensée de la température
UP : mesure non compensée de la pression
Début séquence d’acquisition Température : t0
Fin séquence d’acquisition température : t0 + 4.5 ms
Lecture de UT
Début séquence d’acquisition pression : t1
Fin séquence d’acquisition pression : t1 + Tt2
Lecture de UP
Calcul de la température en °C (exprimée en 0.1°C) et de la pression en hPa (exprimée en
0.01hPa), en utilisant les paramètres de calibration du capteur.
5
Remarque : il est possible d’ajuster le paramètre «
...