MicroPython - Module Voltmètre avec interface Grove

Dans les petites avancées de ces derniers temps, nous avons publiés un nouveau pilote MicroPython... cette fois, nous avons eu l'opportunité de nous pencher sur le module Voltmètre U087 de M5Stack.

module Voltmètre U087 de M5Stack

Disposant d'une prise grove (très répandue), ce module utilise le bus I2C pour communiquer avec l'hôte (en logique 3.3v).

Il s'agit d'un module de grande qualité clairement orienté vers les mesures de précision. De prime abord difficile a croire pour un produit orienté Maker, nous avons eu l'occasion de nous rendre compte que c'est pourtant le cas! 

Comme le révèle notre documentation du pilote MicroPython, une tension de test de -3.7 V fût mesurée à -3.716844 V par le module Voltmètre Grove.
Cette tension fût ensuite confirmée à -3.7157 V par un Siglent DSM3045x (SIGLENT.eu).

Le développement du pilote étant un peu retords, le module a été ouvert pour relever la tension directement sur l'entrée différentielle de l'ADS1115 (convertisseur analogique 16 bits).

Intérieur du module Voltmètre U087 de M5Stack

Comme l'indique la documentation, ce module voltmètre contient en effet un alimentation isolée, l'EEPROM avec les données de calibration et isolateur (minimiser l'impact du bruit). Tout ce qu'il faut pour augmenter la fiabilité des mesures.

Brancher

Comme il s'agit d'un connecteur Grove, ce module est assez facile à raccorder sur un microcontrôleur. Dans cet exemple, nous avons utilisé un Raspberry-Pi Pico.


Du code MicroPython

Le dépôt esp8266-upy/m5stack-u087 contient la bibliothèque vmeter.py permettant d'utiliser le module de M5Stack.

Une fois copié sur votre carte MicroPython, obtenir la tension appliquée sur le module Voltmètre est un véritable jeu d'enfant comme le démontre le code ci-dessous.

from machine import I2C
from vmeter import *
from time import sleep

# Pico - I2C(1) - sda=GP6, scl=GP7
i2c = I2C(1, freq=10000)

vmeter = Voltmeter(i2c)
while True:
	print( 'Voltage: %5.3f Volts' % vmeter.voltage )
	sleep( 0.3 )

Plus d'information

Liste d'achat

Aucun commentaire