Capteur de température et humidité SHT31

Ce tutoriel explique comment mettre en oeuvre module Grove capteur de température et humidité SHT31 sur bus I2C en MicroPython. La fiche technique du capteur SHT31 de Sensirion est disponible ici.

Matériel requis

  1. Une carte d’extension de base Grove
  2. La carte NUCLEO-WB55
  3. Un module Grove Temp and Humi Sensor (SHT31)

Le module Grove capteur de température et humidité SHT31 :

Grove sht31

Crédit image : Botland

Branchez le module sur l’un des connecteurs I2C du Grove base shield.

Le code MicroPython

Les scripts présentés ci-après sont disponibles dans la zone de téléchargement.

Il faut ajouter le fichier sht31.py dans le répertoire du périphérique PYBLASH.
Editez maintenant le script main.py et collez-y le code qui suit :

# Exemple adapté de https://github.com/kfricke/micropython-sht31/blob/master/
# Objet du script : Mise en oeuvre du module grove I2C capteur de température 
# et humidité basé sur le capteur SHT31

from time import sleep_ms
from machine import I2C, Pin
from sht31 import SHT31

# On utilise l'I2C n°1 de la carte NUCLEO-WB55 pour communiquer avec le capteur
i2c = I2C(1)

# Pause d'une seconde pour laisser à l'I2C le temps de s'initialiser
sleep_ms(1000)

# Liste des adresses I2C des périphériques présents
print("Adresses I2C utilisées : " + str(i2c.scan()))

# Instanciation du capteur
sht = SHT31(i2c=i2c)

while True:

	# Temporisation d'une seconde
	sleep_ms(1000)
	
	# Lecture des valeurs mesurées
	shtdata = sht.get_temp_humi()

	# Affichage formatté des mesures
	print('=' * 40) # Imprime une ligne de séparation
	
	# Affiche la température en degrés Celsius.
	print("Température : %.1f °C" %shtdata[0])
	
	# Affiche l'humidité en pourcents. 
	# Attention, le caractère '%' à la fin est dédoublé pour ne pas être interprété
	# comme une instruction de formattage !
	print("Humidité relative : %.1f %%" %shtdata[1])

Sortie sur le port série de l’USB USER

Appuyez sur CTRL+D dans le terminal PuTTY et observez les valeurs qui défilent :

Grove - SHT31 sortie