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.

Thermopile Shield

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#

Thermopile Shield 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)