Isi kandungan:

Pengukuran Kelembapan Menggunakan HYT939 dan Raspberry Pi: 4 Langkah
Pengukuran Kelembapan Menggunakan HYT939 dan Raspberry Pi: 4 Langkah

Video: Pengukuran Kelembapan Menggunakan HYT939 dan Raspberry Pi: 4 Langkah

Video: Pengukuran Kelembapan Menggunakan HYT939 dan Raspberry Pi: 4 Langkah
Video: Arduino Nano HYT939 I2C Humidity and Temperature Sensor Tutorial 2024, November
Anonim
Image
Image

HYT939 adalah sensor kelembapan digital yang berfungsi pada protokol komunikasi I2C. Kelembapan adalah parameter penting dalam sistem perubatan dan makmal. Oleh itu, untuk mencapai tujuan ini, kami berusaha untuk menghubungkan HYT939 dengan raspberry pi. Dalam tutorial ini ditunjukkan antara muka modul sensor HYT939 dengan raspberry pi dan pengaturcaraannya menggunakan bahasa Java juga telah digambarkan.

Untuk membaca nilai kelembapan, kami telah menggunakan raspberry pi dengan penyesuai I2c. Penyesuai I2C ini menjadikan sambungan ke modul sensor mudah dan lebih dipercayai.

Langkah 1: Perkakasan Diperlukan:

Perkakasan Diperlukan
Perkakasan Diperlukan
Perkakasan Diperlukan
Perkakasan Diperlukan
Perkakasan Diperlukan
Perkakasan Diperlukan

Perkakasan yang diperlukan untuk menyelesaikan tugas adalah seperti berikut:

1. HYT939

2. Raspberry Pi

3. Kabel I2C

4. Perisai I2C Untuk Raspberry Pi

5. Kabel Ethernet

-

Langkah 2: Penyambungan Perkakasan:

Penyambungan Perkakasan
Penyambungan Perkakasan
Penyambungan Perkakasan
Penyambungan Perkakasan

Bahagian penyambungan perkakasan pada dasarnya menerangkan sambungan pendawaian yang diperlukan antara sensor dan raspberry pi. Memastikan sambungan yang betul adalah keperluan asas semasa mengerjakan sistem apa pun untuk output yang diinginkan. Jadi, sambungan yang diperlukan adalah seperti berikut:

HYT939 akan berfungsi menggunakan I2C. Berikut adalah contoh rajah pendawaian, yang menunjukkan cara memasang setiap antara muka sensor.

Di luar kotak, papan dikonfigurasikan untuk antara muka I2C, oleh itu kami mengesyorkan menggunakan penyambungan ini jika anda tidak agnostik. Yang anda perlukan hanyalah empat wayar!

Hanya diperlukan empat sambungan pin Vcc, Gnd, SCL dan SDA dan ini disambungkan dengan bantuan kabel I2C.

Sambungan ini ditunjukkan dalam gambar di atas.

Langkah 3: Kod Java untuk Pengukuran Kelembapan:

Kod Java untuk Pengukuran Kelembapan
Kod Java untuk Pengukuran Kelembapan
Kod Java untuk Pengukuran Kelembapan
Kod Java untuk Pengukuran Kelembapan

Kelebihan menggunakan raspberry pi adalah, yang memberi anda fleksibiliti bahasa pengaturcaraan di mana anda ingin memprogram papan untuk menghubungkan antara sensor dengannya. Dengan memanfaatkan kelebihan papan ini, kami menunjukkan di sini pengaturcaraannya di Java. Kod java untuk HYT939 boleh dimuat turun dari komuniti github kami iaitu Dcube Store.

Serta untuk kemudahan pengguna, kami menerangkan kodnya di sini juga:

Sebagai langkah pertama pengekodan, anda perlu memuat turun pustaka pi4j sekiranya terdapat java, kerana perpustakaan ini menyokong fungsi yang digunakan dalam kod. Oleh itu, untuk memuat turun perpustakaan anda boleh melayari pautan berikut:

pi4j.com/install.html

Anda boleh menyalin kod java yang berfungsi untuk sensor ini dari sini juga:

import com.pi4j.io.i2c. I2CBus;

import com.pi4j.io.i2c. I2CDevice;

import com.pi4j.io.i2c. I2CFactory;

import java.io. IOException;

kelas awam HYT939

{

utama kekosongan statik awam (String args ) melontarkan Pengecualian

{

// Buat I2CBus

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

// Dapatkan peranti I2C, alamat HYT939 I2C adalah 0x28 (40)

Peranti I2CDevice = bus.getDevice (0x28);

// Hantar arahan mod biasa

device.write ((byte) 0x80);

Thread.sleep (500);

// Baca 4 bait data

// kelembapan msb, kelembapan lsb, temp msb, temp lsb

bait data = bait baru [4];

device.read (data, 0, 4);

// Tukarkan data menjadi 14-bit

kelembapan berganda = (((data [0] & 0x3F) * 256) + (data [1] & 0xFF)) * (100.0 / 16383.0);

double cTemp = ((((data [2] & 0xFF) * 256) + (data [3] & 0xFC)) / 4) * (165.0 / 16383.0) - 40;

double fTemp = (cTemp * 1.8) + 32;

// Keluarkan data ke skrin

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

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

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

}

}

Perpustakaan yang memudahkan komunikasi i2c antara sensor dan papan adalah pi4j, pelbagai paket I2CBus, I2CDevice dan I2CFactory membantu mewujudkan sambungan.

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

fungsi tulis () dan baca () digunakan untuk menulis beberapa perintah tertentu kepada sensor untuk membuatnya berfungsi dalam mod tertentu dan masing-masing membaca output sensor. Berikut bahagian kod menggambarkan penggunaan fungsi-fungsi ini.

// Hantar peranti arahan mod normal.write ((byte) 0x80); Thread.sleep (500); // Baca 4 bait data // kelembapan msb, kelembapan lsb, temp msb, temp lsb bait data = bait baru [4]; device.read (data, 0, 4);

Keluaran sensor juga ditunjukkan dalam gambar di atas.

Langkah 4: Aplikasi:

Permohonan
Permohonan

HYT939 menjadi sensor kelembapan digital yang cekap digunakan dalam sistem Perubatan, Autoklaf. Pengukuran titik embun tekanan dan sistem Pengeringan juga menemui penggunaan modul sensor ini. Di pelbagai Makmal di mana tahap kelembapan yang sesuai adalah parameter penting untuk menjalankan eksperimen, sensor ini dapat digunakan di sana untuk pengukuran kelembapan.

Disyorkan: