Table des matières:

Surveillance de la température à l'aide du MCP9808 et du Raspberry Pi : 4 étapes
Surveillance de la température à l'aide du MCP9808 et du Raspberry Pi : 4 étapes

Vidéo: Surveillance de la température à l'aide du MCP9808 et du Raspberry Pi : 4 étapes

Vidéo: Surveillance de la température à l'aide du MCP9808 et du Raspberry Pi : 4 étapes
Vidéo: Station de surveillance RASPBERRY PI - Caméra, température et relay 2024, Novembre
Anonim
Image
Image

Le MCP9808 est un mini module de capteur de température numérique de haute précision ± 0,5 ° C I2C. Ils sont dotés de registres programmables par l'utilisateur qui facilitent les applications de détection de température. Le capteur de température de haute précision MCP9808 est devenu un standard de l'industrie en termes de facteur de forme et d'intelligence, fournissant des signaux de capteur calibrés et linéarisés au format numérique I2C.

Dans ce tutoriel, l'interfaçage du module capteur MCP9808 avec raspberry pi est démontré et sa programmation à l'aide du langage python a également été illustrée. Pour lire les valeurs de température, nous avons utilisé raspberry pi avec un adaptateur I2c. Cet adaptateur I2C rend la connexion au module capteur facile et plus fiable.

Étape 1: Matériel requis:

Matériel requis
Matériel requis
Matériel requis
Matériel requis
Matériel requis
Matériel requis

Les matériaux dont nous avons besoin pour atteindre notre objectif comprennent les composants matériels suivants:

1. MCP9808

2. Framboise Pi

3. Câble I2C

4. Bouclier I2C pour raspberry pi

5. Câble Ethernet

Étape 2: connexion matérielle:

Raccordement matériel
Raccordement matériel
Raccordement matériel
Raccordement matériel

La section de raccordement matériel explique essentiellement les connexions de câblage requises entre le capteur et le raspberry pi. Assurer des connexions correctes est la nécessité de base tout en travaillant sur n'importe quel système pour la sortie souhaitée. Ainsi, les connexions requises sont les suivantes:

Le MCP9808 fonctionnera sur I2C. Voici l'exemple de schéma de câblage, montrant comment câbler chaque interface du capteur.

Prête à l'emploi, la carte est configurée pour une interface I2C, en tant que telle, nous vous recommandons d'utiliser cette connexion si vous êtes par ailleurs agnostique. Tout ce dont vous avez besoin, c'est de quatre fils !

Seules quatre connexions sont nécessaires pour les broches Vcc, Gnd, SCL et SDA et celles-ci sont connectées à l'aide d'un câble I2C.

Ces connexions sont illustrées dans les images ci-dessus.

Étape 3: Code pour la mesure de la température:

Code pour la mesure de la température
Code pour la mesure de la température

L'avantage d'utiliser raspberry pi est qu'il vous offre la flexibilité du langage de programmation dans lequel vous souhaitez programmer la carte afin d'interfacer le capteur avec elle. Exploitant cet avantage de cette carte, nous démontrons ici sa programmation en python. Python est l'un des langages de programmation les plus simples avec la syntaxe la plus simple. Le code python pour MCP9808 peut être téléchargé depuis notre communauté github qui est la communauté DCUBE Store.

En plus de la facilité des utilisateurs, nous expliquons le code ici également:

Comme première étape de codage, vous devez télécharger la bibliothèque SMBus dans le cas de python, car cette bibliothèque prend en charge les fonctions utilisées dans le code. Donc, pour télécharger la bibliothèque, vous pouvez visiter le lien suivant:

pypi.python.org/pypi/smbus-cffi/0.5.1

Vous pouvez également copier le code de travail à partir d'ici:

importer smbus

heure d'importation

# Obtenir le bus I2C = smbus. SMBus(1)

# Adresse MCP9808, 0x18(24)

# Sélectionnez le registre de configuration, 0x01(1)

# 0x0000(00) Mode de conversion continue, Défaut de mise sous tension

config = [0x00, 0x00]bus.write_i2c_block_data (0x18, 0x01, config)

# Adresse MCP9808, 0x18(24)

# Sélectionnez le registre de résolution, 0x08(8)

# 0x03(03) Résolution = +0,0625 / C

bus.write_byte_data (0x18, 0x08, 0x03)

temps.sommeil (0,5)

# Adresse MCP9808, 0x18(24)

# Lire les données de 0x05(5), 2 octets

# Temp MSB, TEMP LSB

données = bus.read_i2c_block_data (0x18, 0x05, 2)

# Convertir les données en 13 bits

ctemp = ((données[0] & 0x1F) * 256) + données[1]

si ctemp > 4095:

ctemp -= 8192

ctemp = ctemp * 0,0625

ftemp = ctemp * 1,8 + 32

# Données de sortie à l'écran

print "La température en Celsius est: %.2f C" %ctemp

print "La température en Fahrenheit est: %.2f F" %ftemp

Le code est exécuté à l'aide de la commande suivante:

$> python MCP9808.py gt; python MCP9808.py

gt; python MCP9808.py

La sortie du capteur est indiquée dans l'image ci-dessus pour la référence de l'utilisateur.

Étape 4: Candidatures:

Applications
Applications

Le capteur de température numérique MCP9808 a plusieurs applications au niveau de l'industrie qui intègrent des congélateurs et des réfrigérateurs industriels ainsi que divers robots culinaires. Ce capteur peut être utilisé pour divers ordinateurs personnels, serveurs ainsi que d'autres périphériques PC.

Conseillé: