Sommario:

Monitoraggio della temperatura e dell'umidità utilizzando SHT25 e Raspberry Pi: 5 passaggi
Monitoraggio della temperatura e dell'umidità utilizzando SHT25 e Raspberry Pi: 5 passaggi

Video: Monitoraggio della temperatura e dell'umidità utilizzando SHT25 e Raspberry Pi: 5 passaggi

Video: Monitoraggio della temperatura e dell'umidità utilizzando SHT25 e Raspberry Pi: 5 passaggi
Video: SONOFF THR320D Elite, Interruttore di monitoraggio intelligente della temperatura e dell'umidità. 2024, Dicembre
Anonim
Image
Image

Recentemente abbiamo lavorato su vari progetti che richiedevano il monitoraggio della temperatura e dell'umidità e poi ci siamo resi conto che questi due parametri giocano effettivamente un ruolo fondamentale nella stima dell'efficienza di funzionamento di un sistema. Sia a livello industriale che personale un livello ottimale di temperatura è il requisito per l'adeguato rendimento del sistema.

Questo è il motivo, in questo tutorial spiegheremo il funzionamento del sensore di umidità e temperatura SHT25 utilizzando raspberry pi. In questo particolare tutorial il suo funzionamento viene dimostrato utilizzando un codice java.

L'hardware di cui avrai bisogno per questo scopo è:

1. SHT25

2. Raspberry Pi

3. Cavo I2C

4. Scudo I2C per lampone pi

Passaggio 1: Panoramica di SHT25:

Quello di cui hai bisogno….!!
Quello di cui hai bisogno….!!

Innanzitutto partiamo dalla conoscenza di base del sensore e del protocollo su cui funziona.

SHT25 I2C Sensore di umidità e temperatura ±1,8%UR ±0,2°C Mini modulo I2C. Si tratta di un sensore di umidità e temperatura ad alta precisione che è diventato uno standard industriale in termini di fattore di forma e intelligenza, fornendo segnali del sensore calibrati e linearizzati in formato digitale I2C. Integrato con un circuito analogico e digitale specializzato, questo sensore è uno dei dispositivi più efficienti per misurare la temperatura e l'umidità.

Il protocollo di comunicazione su cui funziona il sensore è I2C. I2C sta per il circuito inter-integrato. È un protocollo di comunicazione in cui la comunicazione avviene tramite le linee SDA (dati seriali) e SCL (orologio seriale). Consente di collegare più dispositivi contemporaneamente. È uno dei protocolli di comunicazione più semplici ed efficienti.

Passaggio 2: cosa ti serve…

Quello di cui hai bisogno….!!
Quello di cui hai bisogno….!!
Quello di cui hai bisogno….!!
Quello di cui hai bisogno….!!
Quello di cui hai bisogno….!!
Quello di cui hai bisogno….!!

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

1. Sensore di umidità e temperatura SHT25

2. Lampone pi

3. Cavo I2C

4. Scudo I2C per Raspberry Pi

5. Cavo Ethernet

Passaggio 3: 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:

  • L'SHT25 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 4: monitoraggio della temperatura e dell'umidità Codice Java:

Monitoraggio della temperatura e dell'umidità Codice Java
Monitoraggio della temperatura e dell'umidità Codice Java
Monitoraggio della temperatura e dell'umidità Codice Java
Monitoraggio della temperatura e dell'umidità Codice Java

Il vantaggio dell'utilizzo di raspberry pi è che fornisce la flessibilità del linguaggio di programmazione in cui si desidera programmare la scheda per interfacciare il sensore con essa. Sfruttando questo vantaggio di questa scheda, dimostriamo qui la sua programmazione in Java. Il codice Java per SHT25 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 è necessario 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; public class SHT25 { public static void main(String args) genera un'eccezione { // Crea bus I2C I2CBus Bus = I2CFactory.getInstance(I2CBus. BUS_1); // Ottieni dispositivo I2C, l'indirizzo I2C SHT25 è 0x40(64) dispositivo I2CDevice = Bus.getDevice(0x40); // Invia il comando di misurazione della temperatura, NO HOLD master device.write((byte)0xF3); Thread.sleep(500); // Legge 2 byte di dati // temp msb, temp lsb byte data = new byte[2]; device.read(data, 0, 2); // Converti i dati double cTemp = (((((data[0] & 0xFF) * 256) + (data[1] & 0xFF)) * 175.72) / 65536.0) - 46.85; doppia fTemp = (cTemp * 1.8) + 32; // Invia comando misura umidità, NO HOLD master device.write((byte)0xF5); Thread.sleep(500); // Legge 2 byte di dati // umidità msb, umidità lsb device.read(data, 0, 2); // Converti i dati doppia umidità = (((((data[0] & 0xFF) * 256) + (data[1] & 0xFF)) * 125,0) / 65536.0) - 6; // Invia i dati allo schermo System.out.printf ("Umidità relativa: %.2f %% RH %n", umidità); System.out.printf("Temperatura in gradi Celsius: %.2f C %n", cTemp); System.out.printf("Temperatura in Farhenheit: %.2f F %n", fTemp); } }

L'output del codice è mostrato anche nell'immagine sopra.

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;

Questa parte del codice fa funzionare il sensore per la misurazione della temperatura e dell'umidità scrivendo i rispettivi comandi utilizzando la funzione write() e quindi i dati vengono letti utilizzando la funzione read().

device.write((byte)0xF3);

Thread.sleep(500);

// Legge 2 byte di dati

//temp msb, temp lsb

byte dati = nuovo byte[2];

device.read(data, 0, 2);

// Invia il comando di misurazione dell'umidità, NO HOLD master

device.write((byte)0xF5);

Thread.sleep(500);

// Legge 2 byte di dati

// umidità msb, umidità lsb

device.read(data, 0, 2);

Passaggio 5: applicazioni:

Il sensore di temperatura e umidità relativa SHT25 ha varie applicazioni industriali come il monitoraggio della temperatura, la protezione termica delle periferiche del computer. Abbiamo anche utilizzato questo sensore in applicazioni per stazioni meteorologiche e sistemi di monitoraggio delle serre.

Consigliato: