Thermopile Shield¶
Il Thermopile Shield offre alla OpenMV Cam un array di sensori termici 16x4 tramite I2C per imaging termico a bassa risoluzione e misura della temperatura per pixel.
Per il datasheet completo, le foto e l’acquisto consulta la pagina prodotto del Thermopile Shield.
Punti salienti¶
Array di sensori termici 16x4, campo visivo 60 gradi x 16 gradi
Temperature degli oggetti da -50 C a 300 C
Pinout¶
Riferimento dei pin¶
Pin |
Funzione |
|---|---|
P4 |
I²C SCL — clock verso l’array di termopile |
P5 |
I²C SDA — dati verso l’array di termopile |
Linea 3.3V |
Alimenta la termopila |
Linea GND |
Massa comune |
Utilizzo¶
Acquisisci una mappa di calore dall’array di termopile integrato tramite il modulo fir
import fir
import image
import time
fir.init()
clock = time.clock()
while True:
clock.tick()
try:
img = fir.snapshot(x_scale=10, y_scale=10,
color_palette=image.PALETTE_IRONBOW,
hint=image.BICUBIC,
copy_to_fb=True)
except OSError:
continue
print(clock.fps())
Leggi le temperature grezze per pixel come un ndarray 16×4 di float in gradi Celsius. fir.read_ir() restituisce anche la temperatura ambiente e i valori minimo/massimo rilevati nel frame:
import fir
import time
from ulab import numpy as np
fir.init()
w = fir.width()
h = fir.height()
while True:
try:
ta, ir, to_min, to_max = fir.read_ir()
except OSError:
continue
grid = np.array(ir).reshape((h, w))
print("Ambient: %.1f C, range: %.1f to %.1f C, mean: %.1f C"
% (ta, to_min, to_max, np.mean(grid)))
time.sleep(1)