Cuprins:
Video: Raspberry Pi HTS221 Senzor de umiditate relativă și temperatură Tutorial Java: 4 pași
2024 Autor: John Day | [email protected]. Modificat ultima dată: 2024-01-30 11:43
HTS221 este un senzor digital capacitiv ultra compact pentru umiditate relativă și temperatură. Acesta include un element de detectare și un circuit integrat specific aplicației de semnal mixt (ASIC) pentru a furniza informațiile de măsurare prin interfețe seriale digitale. Integrat cu atât de multe caracteristici, acesta este unul dintre cei mai adecvați senzori pentru măsurători critice de umiditate și temperatură. Iată demonstrația cu un cod Java folosind Raspberry Pi.
Pasul 1: De ce ai nevoie..
1. Raspberry Pi
2. HTS221
3. Cablu I²C
4. Scut I²C pentru Raspberry Pi
5. Cablu Ethernet
Pasul 2: Conexiuni:
Luați un scut I2C pentru raspberry pi și împingeți-l ușor peste pinii gpio ai raspberry pi.
Apoi conectați capătul cablului I2C la senzorul HTS221 și celălalt capăt la ecranul I2C.
De asemenea, conectați cablul Ethernet la pi sau puteți utiliza un modul WiFi.
Conexiunile sunt afișate în imaginea de mai sus.
Pasul 3: Cod:
Codul python pentru HTS221 poate fi descărcat din depozitul nostru github-Magazinul Dcube
Iată linkul pentru același lucru:
github.com/DcubeTechVentures/HTS221/blob/master/Java/HTS221.java
Am folosit biblioteca pi4j pentru cod java, pașii pentru instalarea pi4j pe raspberry pi sunt descriși aici:
pi4j.com/install.html
De asemenea, puteți copia codul de aici, acesta este dat după cum urmează:
// Distribuit cu o licență de liberă voință.
// Folosiți-l în orice mod doriți, profit sau gratuit, cu condiția să se încadreze în licențele lucrărilor sale asociate.
// HTS221
// Acest cod este conceput pentru a funcționa cu Mini-modulul HTS221_I2CS I2C.
import com.pi4j.io.i2c. I2CBus;
import com.pi4j.io.i2c. I2CDevice;
import com.pi4j.io.i2c. I2CFactory;
import java.io. IOException;
public class HTS221 {public static void main (String args ) throws Exception
{
// Creați I2CBus
I2CBus bus = I2CFactory.getInstance (I2CBus. BUS_1);
// Obțineți dispozitiv I2C, adresa HTS221 I2C este 0x5F (95)
I2CDevice device = bus.getDevice (0x5F);
// Selectați registrul mediu de configurare
// Probele medii de temperatură = 16, probele medii de umiditate = 32
device.write (0x10, (octet) 0x1B);
// Selectați control register1
// Porniți, blocați actualizarea datelor, rata de date o / p = 1 Hz
device.write (0x20, (octet) 0x85);
Thread.sleep (500);
// Citiți valorile de calibrare din memoria nevolatilă a dispozitivului
// Valori de calibrare a umidității
octet val = octet nou [2];
// Citiți 1 octet de date de la adresa 0x30 (48)
val [0] = (octet) device.read (0x30);
// Citiți 1 octet de date de la adresa 0x31 (49)
val [1] = (octet) device.read (0x31);
int H0 = (val [0] & 0xFF) / 2;
int H1 = (val [1] & 0xFF) / 2;
// Citiți 1 octet de date de la adresa 0x36 (54)
val [0] = (octet) device.read (0x36);
// Citiți 1 octet de date de la adresa 0x37 (55)
val [1] = (octet) device.read (0x37);
int H2 = ((val [1] & 0xFF) * 256) + (val [0] & 0xFF);
// Citiți 1 octet de date de la adresa 0x3A (58)
val [0] = (octet) device.read (0x3A);
// Citiți 1 octet de date de la adresa 0x3B (59)
val [1] = (octet) device.read (0x3B);
int H3 = ((val [1] & 0xFF) * 256) + (val [0] & 0xFF);
// Valori de calibrare a temperaturii
// Citiți 1 octet de date de la adresa 0x32 (50)
int T0 = ((octet) device.read (0x32) & 0xFF);
// Citiți 1 octet de date de la adresa 0x33 (51)
int T1 = ((octet) device.read (0x33) & 0xFF);
// Citiți 1 octet de date de la adresa 0x35 (53)
int raw = ((octet) device.read (0x35) & 0x0F);
// Conversia valorilor de calibrare a temperaturii la 10 biți
T0 = ((brut & 0x03) * 256) + T0;
T1 = ((brut & 0x0C) * 64) + T1;
// Citiți 1 octet de date de la adresa 0x3C (60)
val [0] = (octet) device.read (0x3C);
// Citiți 1 octet de date de la adresa 0x3D (61)
val [1] = (octet) device.read (0x3D);
int T2 = ((val [1] & 0xFF) * 256) + (val [0] & 0xFF);
// Citiți 1 octet de date de la adresa 0x3E (62)
val [0] = (octet) device.read (0x3E);
// Citiți 1 octet de date de la adresa 0x3F (63)
val [1] = (octet) device.read (0x3F);
int T3 = ((val [1] & 0xFF) * 256) + (val [0] & 0xFF);
// Citiți 4 octeți de date
// hum msb, hum lsb, temp msb, temp lsb
octet date = octet nou [4]; device.read (0x28 | 0x80, date, 0, 4);
// Conversia datelor
int hum = ((date [1] & 0xFF) * 256) + (date [0] & 0xFF);
int temp = ((date [3] & 0xFF) * 256) + (date [2] & 0xFF);
dacă (temp> 32767)
{
temp - = 65536;
}
umiditate dublă = ((1.0 * H1) - (1.0 * H0)) * (1.0 * hum - 1.0 * H2) / (1.0 * H3 - 1.0 * H2) + (1.0 * H0);
cTemp dublu = ((T1 - T0) / 8.0) * (temp - T2) / (T3 - T2) + (T0 / 8.0);
fTemp dublu = (cTemp * 1,8) + 32;
// Ieșire date pe ecran
System.out.printf ("Umiditate relativă:%.2f %% RH% n", umiditate);
System.out.printf ("Temperatura în grade Celsius:%.2f C% n", cTemp);
System.out.printf ("Temperatura în Fahrenheit:%.2f F% n", fTemp);
}
}
Pasul 4: Aplicații:
HTS221 poate fi utilizat în diverse produse de consum, cum ar fi umidificatoare de aer și frigidere etc. Acest senzor își găsește și aplicația într-o arenă mai largă, inclusiv automatizarea inteligentă a casei, automatizarea industrială, echipamentele respiratorii, urmărirea activelor și a mărfurilor.
Recomandat:
Raspberry Pi SHT25 Senzor de umiditate și temperatură Tutorial Python: 4 pași
Raspberry Pi SHT25 Senzor de umiditate și temperatură Tutorial Python: SHT25 Senzor de umiditate și temperatură I2C ± 1,8% RH ± 0,2 ° C Mini modul I2C. Senzorul de umiditate și temperatură de înaltă precizie SHT25 a devenit un standard industrial în ceea ce privește factorul de formă și inteligența, oferind semnale senzorului calibrate, linearizate
Arduino Nano - Tutorial senzor de umiditate relativă și temperatură HTS221: 4 pași
Arduino Nano - Tutorial senzor de umiditate relativă și temperatură HTS221: HTS221 este un senzor digital capacitiv ultra compact pentru umiditate relativă și temperatură. Include un element de detectare și un circuit integrat specific aplicației de semnal mixt (ASIC) pentru a furniza informațiile de măsurare prin serial digital
Raspberry Pi - Senzor de umiditate și temperatură HIH6130 I2C Tutorial Java: 4 pași
Raspberry Pi - Senzor de umiditate și temperatură HIH6130 I2C Java Tutorial: HIH6130 este un senzor de umiditate și temperatură cu ieșire digitală. Acești senzori oferă un nivel de precizie de ± 4% HR. Cu stabilitate pe termen lung lider în industrie, I2C digital cu adevărat compensat de temperatură, fiabilitate lider în industrie, eficiență energetică
Monitor de umiditate fără fir (ESP8266 + senzor de umiditate): 5 pași
Monitor de umiditate fără fir (ESP8266 + senzor de umiditate): Cumpăr pătrunjel în oală, iar cea mai mare parte a zilei, solul era uscat. Deci, decid să fac acest proiect, despre detectarea umezelii solului în oală cu pătrunjel, pentru a verifica, când am nevoie să turn sol cu apă. Cred că acest senzor (senzor capacitiv de umiditate v1.2) este bun pentru că
Temperatură, umiditate relativă, jurnal de presiune atmosferică utilizând conectivitatea Raspberry Pi și TE MS8607-02BA01: 22 pași (cu imagini)
Temperatură, umiditate relativă, jurnal de presiune atmosferică utilizând conectivitatea Raspberry Pi și TE MS8607-02BA01: Introducere: În acest proiect vă voi arăta cum să construiți configurarea pas cu pas a unui sistem de înregistrare pentru umiditatea temperaturii și presiunea atmosferică. Acest proiect se bazează pe senzorul de mediu Raspberry Pi 3 Model B și TE Connectivity MS8607-02BA