Daftar Isi:

Raspberry Pi HTS221 Kelembaban Relatif dan Sensor Suhu Tutorial Java: 4 Langkah
Raspberry Pi HTS221 Kelembaban Relatif dan Sensor Suhu Tutorial Java: 4 Langkah

Video: Raspberry Pi HTS221 Kelembaban Relatif dan Sensor Suhu Tutorial Java: 4 Langkah

Video: Raspberry Pi HTS221 Kelembaban Relatif dan Sensor Suhu Tutorial Java: 4 Langkah
Video: Arduino Nano - HTS221 Relative Humidity and Temperature Sensor Tutorial 2024, November
Anonim
Image
Image

HTS221 adalah sensor digital kapasitif ultra kompak untuk kelembaban dan suhu relatif. Ini mencakup elemen penginderaan dan sirkuit terintegrasi khusus aplikasi sinyal campuran (ASIC) untuk memberikan informasi pengukuran melalui antarmuka serial digital. Terintegrasi dengan begitu banyak fitur, ini adalah salah satu sensor yang paling tepat untuk pengukuran kelembaban dan suhu kritis. Berikut adalah demonstrasi dengan kode java menggunakan Raspberry Pi.

Langkah 1: Yang Anda Butuhkan.

Apa yang kau butuhkan..!!
Apa yang kau butuhkan..!!

1. Raspberry Pi

2. HTS221

3. Kabel I²C

4. Perisai I²C untuk Raspberry Pi

5. Kabel Ethernet

Langkah 2: Koneksi:

Koneksi
Koneksi
Koneksi
Koneksi
Koneksi
Koneksi
Koneksi
Koneksi

Ambil pelindung I2C untuk raspberry pi dan dorong perlahan ke atas pin gpio dari raspberry pi.

Kemudian sambungkan salah satu ujung kabel I2C ke sensor HTS221 dan ujung lainnya ke pelindung I2C.

Hubungkan juga kabel Ethernet ke pi atau Anda dapat menggunakan modul WiFi.

Koneksi ditunjukkan pada gambar di atas.

Langkah 3: Kode:

Kode
Kode

Kode python untuk HTS221 dapat diunduh dari repositori github-Dcube Store kami

Berikut ini tautan untuk hal yang sama:

github.com/DcubeTechVentures/HTS221/blob/master/Java/HTS221.java

Kami telah menggunakan pustaka pi4j untuk kode java, langkah-langkah untuk menginstal pi4j pada raspberry pi dijelaskan di sini:

pi4j.com/install.html

Anda juga dapat menyalin kode dari sini, diberikan sebagai berikut:

// Didistribusikan dengan lisensi kehendak bebas.

// Gunakan sesuka Anda, untung atau gratis, asalkan sesuai dengan lisensi karya terkait.

// HTS221

// Kode ini dirancang untuk bekerja dengan Modul Mini HTS221_I2CS I2C.

impor com.pi4j.io.i2c. I2CBus;

impor com.pi4j.io.i2c. I2CDevice;

impor com.pi4j.io.i2c. I2CFfactory;

impor java.io. IOException;

kelas publik HTS221{ public static void main(String args) melempar Pengecualian

{

// Buat I2CBus

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

// Dapatkan perangkat I2C, alamat I2C HTS221 adalah 0x5F (95)

Perangkat I2CDevice = bus.getDevice(0x5F);

// Pilih register konfigurasi rata-rata

// Sampel rata-rata suhu = 16, sampel rata-rata kelembaban = 32

device.write(0x10, (byte)0x1B);

// Pilih register kontrol1

// Hidupkan, blokir pembaruan data, kecepatan data o/p = 1 Hz

device.write(0x20, (byte)0x85);

Thread.sleep(500);

// Baca nilai Kalibrasi dari memori perangkat yang tidak mudah menguap

// Nilai Kalibrasi Kelembaban

byte val = byte baru[2];

// Baca 1 byte data dari alamat 0x30(48)

val[0] = (byte)device.read(0x30);

// Baca 1 byte data dari alamat 0x31(49)

val[1] = (byte)device.read(0x31);

int H0 = (val[0] & 0xFF) / 2;

int H1 = (val[1] & 0xFF) / 2;

// Baca 1 byte data dari alamat 0x36(54)

val[0] = (byte)device.read(0x36);

// Baca 1 byte data dari alamat 0x37(55)

val[1] = (byte)device.read(0x37);

int H2 = ((val[1] & 0xFF) * 256) + (val[0] & 0xFF);

// Baca 1 byte data dari alamat 0x3A(58)

val[0] = (byte)device.read(0x3A);

// Baca 1 byte data dari alamat 0x3B(59)

val[1] = (byte)device.read(0x3B);

int H3 = ((val[1] & 0xFF) * 256) + (val[0] & 0xFF);

// Nilai Kalibrasi Suhu

// Baca 1 byte data dari alamat 0x32(50)

int T0 = ((byte)device.read(0x32) & 0xFF);

// Membaca 1 byte data dari alamat 0x33(51)

int T1 = ((byte)device.read(0x33) & 0xFF);

// Baca 1 byte data dari alamat 0x35(53)

int mentah = ((byte)device.read(0x35) & 0x0F);

// Konversikan nilai Kalibrasi suhu ke 10-bit

T0 = ((mentah & 0x03) * 256) + T0;

T1 = ((mentah & 0x0C) * 64) + T1;

// Baca 1 byte data dari alamat 0x3C(60)

val[0] = (byte)device.read(0x3C);

// Membaca 1 byte data dari alamat 0x3D(61)

val[1] = (byte)device.read(0x3D);

int T2 = ((val[1] & 0xFF) * 256) + (val[0] & 0xFF);

// Membaca 1 byte data dari alamat 0x3E(62)

val[0] = (byte)device.read(0x3E);

// Baca 1 byte data dari alamat 0x3F(63)

val[1] = (byte)device.read(0x3F);

int T3 = ((val[1] & 0xFF) * 256) + (val[0] & 0xFF);

// Baca 4 byte data

// hum msb, hum lsb, suhu msb, suhu lsb

byte data = byte baru[4]; device.read(0x28 | 0x80, data, 0, 4);

// Konversi data

int hum = ((data[1] & 0xFF) * 256) + (data[0] & 0xFF);

int temp = ((data[3] & 0xFF) * 256) + (data[2] & 0xFF);

jika (suhu > 32767)

{

suhu -= 65536;

}

kelembaban ganda = ((1.0 * H1) - (1.0 * H0)) * (1.0 * hum - 1.0 * H2) / (1.0 * H3 - 1.0 * H2) + (1.0 * H0);

cTemp ganda = ((T1 - T0) / 8.0) * (temp - T2) / (T3 - T2) + (T0 / 8.0);

fTemp ganda = (cTemp * 1.8) + 32;

// Keluarkan data ke layar

System.out.printf("Kelembaban Relatif: %.2f %% RH %n", kelembapan);

System.out.printf("Suhu dalam Celcius: %.2f C %n", cTemp);

System.out.printf("Suhu dalam Fahrenheit: %.2f F %n", fTemp);

}

}

Langkah 4: Aplikasi:

HTS221 dapat digunakan di berbagai produk konsumen seperti pelembab udara dan lemari es dll. Sensor ini juga menemukan penerapannya di arena yang lebih luas termasuk otomatisasi rumah pintar, otomatisasi industri, peralatan pernapasan, pelacakan aset dan barang.

Direkomendasikan: