Sommario:

Misurazione della temperatura utilizzando TMP112 e Raspberry Pi: 4 passaggi
Misurazione della temperatura utilizzando TMP112 e Raspberry Pi: 4 passaggi

Video: Misurazione della temperatura utilizzando TMP112 e Raspberry Pi: 4 passaggi

Video: Misurazione della temperatura utilizzando TMP112 e Raspberry Pi: 4 passaggi
Video: Демонстрация продукта: Высокоточный датчик температуры SparkFun 2024, Dicembre
Anonim
Image
Image

TMP112 Modulo I2C MINI con sensore di temperatura digitale ad alta precisione e bassa potenza. Il TMP112 è ideale per la misurazione della temperatura estesa. Questo dispositivo offre una precisione di ±0,5°C senza richiedere calibrazione o condizionamento del segnale di componenti esterni.

In questo tutorial viene dimostrata l'interfacciamento del modulo sensore TMP112 con raspberry pi ed è stata illustrata anche la sua programmazione in linguaggio Java. Per leggere i valori di temperatura, abbiamo utilizzato raspberry pi con un adattatore I2c. Questo adattatore I2C rende la connessione al modulo sensore facile e più affidabile.

Passaggio 1: hardware richiesto:

Hardware richiesto
Hardware richiesto
Hardware richiesto
Hardware richiesto
Hardware richiesto
Hardware richiesto

I materiali di cui abbiamo bisogno per raggiungere il nostro obiettivo includono i seguenti componenti hardware:

1. TMP112

2. Raspberry Pi

3. Cavo I2C

4. Scudo I2C per lampone pi

Passaggio 2: collegamento hardware:

Collegamento hardware
Collegamento hardware
Collegamento hardware
Collegamento hardware

La sezione relativa ai collegamenti hardware spiega sostanzialmente le connessioni di cablaggio necessarie tra il sensore e il Raspberry Pi. Garantire connessioni corrette è la necessità di base mentre si lavora su qualsiasi sistema per l'output desiderato. Quindi, i collegamenti necessari sono i seguenti:

Il TMP112 funzionerà su I2C. Ecco lo schema elettrico di esempio, che mostra come cablare ciascuna interfaccia del sensore.

Di default, la scheda è configurata per un'interfaccia I2C, quindi consigliamo di utilizzare questo collegamento se sei altrimenti agnostico. Tutto ciò di cui hai bisogno sono quattro fili!

Sono necessarie solo quattro connessioni pin Vcc, Gnd, SCL e SDA e questi sono collegati con l'aiuto del cavo I2C.

Queste connessioni sono mostrate nelle immagini sopra.

Passaggio 3: codice Java per la misurazione della temperatura:

Codice Java per la misurazione della temperatura
Codice Java per la misurazione della temperatura

Il vantaggio di utilizzare raspberry pi è che ti offre la flessibilità del linguaggio di programmazione in cui desideri programmare la scheda per interfacciare il sensore con essa. Sfruttando questo vantaggio di questa scheda, stiamo dimostrando qui che è la programmazione in Java. Il codice java per TMP112 può essere scaricato dalla nostra comunità GitHub che è Dcube Store.

Oltre che per la facilità degli utenti, spieghiamo anche qui il codice:

Come primo passo della codifica, devi scaricare la libreria pi4j in caso di java, perché questa libreria supporta le funzioni utilizzate nel codice. Quindi, per scaricare la libreria puoi visitare il seguente link:

pi4j.com/install.html

Puoi copiare il codice Java funzionante per questo sensore anche da qui:

import com.pi4j.io.i2c. I2CBus;

import com.pi4j.io.i2c. I2CDevice;

import com.pi4j.io.i2c. I2CFactory;

import java.io. IOException;

classe pubblica TMP112

{

public static void main(String args) genera un'eccezione

{

// Crea bus I2C

I2CBus bus = I2CFactory.getInstance(I2CBus. BUS_1);

// Ottieni il dispositivo I2C, l'indirizzo I2C di TMP112 è 0x48(72)

I2CDevice device = bus.getDevice(0x48);

byte config = nuovo byte[2];

// Modalità di conversione continua, risoluzione a 12 bit, coda di errore è 1

config[0] = (byte)0x60;

// Polarità bassa, termostato in modalità comparatore, disabilita la modalità di spegnimento

config[1] = (byte)0xA0;

// Scrivi config per registrare 0x01 (1)

device.write(0x01, config, 0, 2);

Thread.sleep(500);

// Legge 2 byte di dati dall'indirizzo 0x00(0), prima msb

byte dati = nuovo byte[2];

device.read(0x00, data, 0, 2);

// Converti dati

int temp = (((data[0] & 0xFF) * 256) + (data[1] & 0xFF))/16;

if(temp > 2047)

{

temperatura -= 4096;

}

doppio cTemp = temperatura * 0,0625;

doppia fTemp = cTemp * 1,8 + 32;

// Uscita sullo schermo

System.out.printf("La temperatura in gradi Celsius è: %.2f C %n", cTemp);

System.out.printf("La temperatura in Fahrenheit è: %.2f F %n", fTemp);

}

}

La libreria che facilita la comunicazione i2c tra il sensore e la scheda è pi4j, i suoi vari pacchetti I2CBus, I2CDevice e I2CFactory aiutano a stabilire la connessione.

import com.pi4j.io.i2c. I2CBus;import com.pi4j.io.i2c. I2CDevice; import com.pi4j.io.i2c. I2CFactory; import java.io. IOException;

Le funzioni write() e read() vengono utilizzate per scrivere alcuni comandi particolari sul sensore per farlo funzionare in una modalità particolare e leggere rispettivamente l'output del sensore.

L'uscita del sensore è mostrata anche nell'immagine sopra.

Passaggio 4: applicazioni:

Applicazioni
Applicazioni

Varie applicazioni che incorporano il sensore di temperatura digitale TMP112 a bassa potenza e alta precisione includono il monitoraggio della temperatura dell'alimentatore, la protezione termica delle periferiche del computer, la gestione della batteria e le macchine da ufficio.

Consigliato: