Daftar Isi:

Pengukuran Kelembaban dan Suhu Menggunakan HTS221 dan Raspberry Pi: 4 Langkah
Pengukuran Kelembaban dan Suhu Menggunakan HTS221 dan Raspberry Pi: 4 Langkah

Video: Pengukuran Kelembaban dan Suhu Menggunakan HTS221 dan Raspberry Pi: 4 Langkah

Video: Pengukuran Kelembaban dan Suhu Menggunakan HTS221 dan Raspberry Pi: 4 Langkah
Video: Chip Shortage: ST HTS221 Capacitive Humidity/Temperature sensor #ChipShortage @Adafruit 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.

Dalam tutorial ini antarmuka modul sensor HTS221 dengan raspberry pi ditunjukkan dan pemrogramannya menggunakan bahasa python juga telah diilustrasikan. Untuk membaca nilai kelembaban dan suhu, kami telah menggunakan raspberry pi dengan adaptor I2C. Adaptor I2C ini membuat koneksi ke modul sensor menjadi mudah dan lebih andal.

Langkah 1: Perangkat Keras Yang Dibutuhkan:

Perangkat Keras yang Dibutuhkan
Perangkat Keras yang Dibutuhkan
Perangkat Keras yang Dibutuhkan
Perangkat Keras yang Dibutuhkan
Perangkat Keras yang Dibutuhkan
Perangkat Keras yang Dibutuhkan

Bahan yang kami butuhkan untuk mencapai tujuan kami meliputi komponen perangkat keras berikut:

1. HTS221

2. Raspberry Pi

3. Kabel I2C

4. I2C Shield untuk raspberry pi

5. Kabel Ethernet

Langkah 2: Sambungan Perangkat Keras:

Sambungan Perangkat Keras
Sambungan Perangkat Keras
Sambungan Perangkat Keras
Sambungan Perangkat Keras

Bagian hookup perangkat keras pada dasarnya menjelaskan koneksi kabel yang diperlukan antara sensor dan raspberry pi. Memastikan koneksi yang benar adalah kebutuhan dasar saat bekerja pada sistem apa pun untuk output yang diinginkan. Jadi, koneksi yang diperlukan adalah sebagai berikut:

HTS221 akan bekerja melalui I2C. Berikut adalah contoh diagram pengkabelan, yang menunjukkan cara memasang setiap antarmuka sensor.

Out-of-the-box, papan dikonfigurasi untuk antarmuka I2C, karena itu kami sarankan menggunakan hookup ini jika Anda agnostik.

Yang Anda butuhkan hanyalah empat kabel! Hanya empat koneksi yang diperlukan pin Vcc, Gnd, SCL dan SDA dan ini terhubung dengan bantuan kabel I2C.

Koneksi ini ditunjukkan pada gambar di atas.

Langkah 3: Kode untuk Pengukuran Kelembaban dan Suhu:

Kode untuk Pengukuran Kelembaban dan Suhu
Kode untuk Pengukuran Kelembaban dan Suhu

Keuntungan menggunakan raspberry pi adalah, memberikan Anda fleksibilitas bahasa pemrograman di mana Anda ingin memprogram papan untuk menghubungkan sensor dengannya. Memanfaatkan keunggulan papan ini, kami mendemonstrasikan di sini pemrogramannya dengan python. Kode python untuk HTS221 dapat diunduh dari komunitas github kami yaitu Komunitas Kontrol Segalanya.

Selain untuk memudahkan pengguna, kami juga menjelaskan kodenya di sini:

Sebagai langkah pertama pengkodean, Anda perlu mengunduh pustaka smbus untuk python, karena pustaka ini mendukung fungsi yang digunakan dalam kode. Nah, untuk mendownload librarynya anda bisa mengunjungi link berikut ini:

pypi.python.org/pypi/smbus-cffi/0.5.1

Anda dapat menyalin kode python yang berfungsi untuk sensor ini dari sini juga:

impor smbus

waktu impor

# Dapatkan bus I2C

bus = smbus. SMBus(1)

# Alamat HTS221, 0x5F (95)

# Pilih register konfigurasi rata-rata, 0x10 (16)

# 0x1B(27) Sampel rata-rata suhu = 256, Sampel rata-rata kelembaban = 512

bus.write_byte_data(0x5F, 0x10, 0x1B)

# Alamat HTS221, 0x5F (95)

# Pilih register kontrol1, 0x20(32)

# 0x85 (133) Power ON, Pembaruan berkelanjutan, Kecepatan keluaran data = 1 Hz

bus.write_byte_data(0x5F, 0x20, 0x85)

waktu.tidur(0.5)

# Alamat HTS221, 0x5F (95)

# Baca nilai Kalibrasi dari memori perangkat yang tidak mudah menguap

# Nilai Kalibrasi Kelembaban

# Baca data kembali dari 0x30(48), 1 byte

val = bus.read_byte_data(0x5F, 0x30)

H0 = val / 2

# Baca data kembali dari 0x31(49), 1 byte

val = bus.read_byte_data(0x5F, 0x31)

H1 = nilai /2

# Baca data kembali dari 0x36(54), 2 byte

val0 = bus.read_byte_data(0x5F, 0x36)

val1 = bus.read_byte_data(0x5F, 0x37)

H2 = ((val1 & 0xFF) * 256) + (val0 & 0xFF)

# Baca data kembali dari 0x3A (58), 2 byte

val0 = bus.read_byte_data(0x5F, 0x3A)

val1 = bus.read_byte_data(0x5F, 0x3B)

H3 = ((val1 & 0xFF) * 256) + (val0 & 0xFF)

# Nilai Kalibrasi Suhu

# Baca data kembali dari 0x32(50), 1 byte

T0 = bus.read_byte_data(0x5F, 0x32)

T0 = (T0 & 0xFF)

# Baca data kembali dari 0x32(51), 1 byte

T1 = bus.read_byte_data(0x5F, 0x33)

T1 = (T1 & 0xFF)

# Baca data kembali dari 0x35(53), 1 byte

mentah = bus.read_byte_data (0x5F, 0x35)

mentah = (mentah & 0x0F)

# Ubah nilai Kalibrasi suhu menjadi 10-bit

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

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

# Baca data kembali dari 0x3C(60), 2 byte

val0 = bus.read_byte_data(0x5F, 0x3C)

val1 = bus.read_byte_data (0x5F, 0x3D)

T2 = ((val1 & 0xFF) * 256) + (val0 & 0xFF)

# Baca data kembali dari 0x3E(62), 2 byte

val0 = bus.read_byte_data(0x5F, 0x3E)

val1 = bus.read_byte_data(0x5F, 0x3F)

T3 = ((val1 & 0xFF) * 256) + (val0 & 0xFF)

# Baca data kembali dari 0x28(40) dengan register perintah 0x80(128), 4 byte

# kelembaban msb, kelembaban lsb, suhu msb, suhu lsb

data = bus.read_i2c_block_data(0x5F, 0x28 | 0x80, 4)

# Konversi data

kelembaban = (data[1] * 256) + data[0]

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

suhu = (data[3] * 256) + data[2]

jika suhu > 32767:

suhu -= 65536

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

fTemp = (cTemp * 1.8) + 32

# Keluarkan data ke layar

print "Kelembaban Relatif: %.2f %%" %kelembaban

print "Suhu dalam Celcius: %.2f C" %cTemp

print "Suhu dalam Fahrenheit: %.2f F" %fTemp

Bagian dari kode yang disebutkan di bawah ini mencakup perpustakaan yang diperlukan untuk eksekusi kode python yang benar.

impor smbus

waktu impor

Kode dapat dieksekusi dengan mengetikkan perintah yang disebutkan di bawah ini di command prompt.

$> python HTS221.py

Output dari sensor juga ditunjukkan pada gambar di atas untuk referensi pengguna.

Langkah 4: Aplikasi:

Aplikasi
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: