Reading Temperature and Humidity DHT11 Using Raspberry Pi Pico W and MicroPython (Visual Studio Code)

Tujuan:
Mampu memahami cara membaca data suhu dan kelembaban dari sensor DHT11 menggunakan Raspberry Pi Pico W dengan bahasa pemrograman MicroPython melalui Visual Studio Code.
Dasar Teori:
- Raspberry Pi Pico W:
Raspberry Pi Pico W adalah mikrokontroler berbasis chip RP2040 yang dilengkapi dengan kemampuan Wi-Fi. Pico W mendukung penggunaan MicroPython, yaitu versi Python yang dirancang untuk perangkat dengan sumber daya terbatas. Pico W adalah pilihan yang cocok untuk aplikasi IoT karena integrasi Wi-Fi yang memudahkan dalam pengiriman data ke server atau antarmuka web.
- Sensor DHT11:
DHT11 adalah sensor suhu dan kelembaban yang mudah digunakan dan hemat biaya. Sensor ini memiliki keluaran digital yang memberikan data suhu (dalam derajat Celcius) dan kelembaban relatif (dalam persentase).
- Range suhu: 0°C – 50°C dengan akurasi ±2°C.
- Range kelembaban: 20% – 90% RH dengan akurasi ±5%.
- Protokol Komunikasi:
DHT11 menggunakan protokol satu kabel (single-wire) untuk mentransfer data. Raspberry Pi Pico W akan membaca data dari sensor DHT11 menggunakan salah satu pin GPIO yang terhubung ke pin data DHT11.
- MicroPython:
MicroPython adalah implementasi Python 3 yang efisien untuk mikrokontroler. Raspberry Pi Pico W mendukung MicroPython yang memudahkan pengembangan aplikasi berbasis sensor, seperti membaca data suhu dan kelembaban dari sensor DHT11.
Alat dan Bahan:
- Raspberry Pi Pico W
- Sensor DHT11
- Breadboard
- Kabel jumper
- Resistor 10kΩ (opsional, untuk pull-up pada pin data DHT11)
- Kabel micro USB (untuk koneksi ke PC)
Langkah-Langkah Praktikum:
- Persiapan Hardware
- Rangkaian DHT11 dengan Raspberry Pi Pico W:
DHT11 Pin | Pico W Pin |
VCC | 3.3V |
GND | GND |
DATA | GPIO 20 |
- Hubungkan kabel jumper dari sensor DHT11 ke Raspberry Pi Pico W sesuai dengan tabel di atas. Jika diperlukan, tambahkan resistor 10kΩ antara VCC dan pin data sensor.
- Instalasi Perangkat Lunak
- Install Visual Studio Code (VS Code):
- Unduh dan instal Visual Studio Code dari VS Code.
- Instal Python Extension di VS Code:
- Buka VS Code, klik pada Extensions (ikon persegi di kiri bawah).
- Cari “Python” dan instal ekstensi Python.
- Menyambungkan VS Code dengan Pico W
- Setelah menginstal MicroPython pada Pico W, kita dapat menggunakan pySerial untuk berinteraksi dengan Pico W melalui VS Code.
- Buka terminal di VS Code dan jalankan:
pip install pyserial
- Install Pico-Go Extension:
- Buka Extensions di VS Code.
- Cari “Pico-Go” dan instal ekstensi ini, yang memungkinkan Anda untuk memprogram Raspberry Pi Pico W langsung dari VS Code.
- Membaca Data dari DHT11
- Buat file baru main.py di VS Code dengan kode berikut untuk membaca suhu dan kelembaban:
from machine import Pin
from time import sleep
import dht
#sensor = dht.DHT22(Pin(22))
sensor = dht.DHT11(Pin(20))
while True:
try:
sleep(2)
sensor.measure()
temp = sensor.temperature()
hum = sensor.humidity()
temp_f = temp * (9/5) + 32.0
print('Temperature: %3.1f C' %temp)
print('Temperature: %3.1f F' %temp_f)
print('Humidity: %3.1f %%' %hum)
except OSError as e:
print('Failed to read sensor.')
- Simpan dan upload main.py ke Raspberry Pi Pico W melalui VS Code (Pico-Go).
- Uji Program
- Buka terminal Pico di VS Code.
- Jalankan file main.py dengan mengetikkan:
run main.py
- Di terminal, Anda akan melihat data suhu dan kelembaban yang diperbarui setiap 2 detik.
Tugas Akhir:
- Modifikasi Program:
- Ubah interval pengambilan data menjadi 5 detik.
- Tambahkan fitur untuk mengirimkan data suhu dan kelembaban melalui jaringan Wi-Fi menggunakan protokol HTTP atau MQTT (opsional).
- Laporan:
- Buat laporan praktikum yang mencakup gambar rangkaian, kode program, serta hasil pembacaan suhu dan kelembaban dari sensor DHT11.
Troubleshooting
- Jika di visual studio code raspberry pico w.bisa dilakukan dengan cara flashing
- Raspberry Pi Pico
- Raspberry Pi Pico W with Wi-Fi support
- Raspberry Pi Pico W with Wi-Fi and BLE (Bluetooth Low Energy) support
- Cara Upload File program ke hardware picow