JOBSHEET PRAKTIK IoT KELAS XII TKJ
MONITORING SUHU MENGGUNAKAN ARDUINO UNO DAN SENSOR TMP36
Simulasi Tinkercad Circuits
A. IDENTITAS
Mata Pelajaran: Internet of Things (IoT)
Kelas/Fase: XII TKJ / Fase F
Materi: Sensor Suhu TMP36
Platform Simulasi: Tinkercad Circuits
Mikrokontroler: Arduino Uno
Alokasi Waktu: 4 JP
Bentuk Kegiatan: Praktik individu/kelompok
B. CAPAIAN PEMBELAJARAN
Peserta didik mampu memahami prinsip kerja perangkat IoT yang terdiri dari sensor, mikrokontroler, dan output serta mampu membuat program sederhana untuk membaca dan mengolah data sensor.
C. TUJUAN PEMBELAJARAN
Setelah melakukan praktik, peserta didik mampu:
Menjelaskan pengertian sensor suhu.
Menjelaskan fungsi sensor TMP36.
Menjelaskan perbedaan input analog dan digital.
Menjelaskan fungsi pin TMP36.
Membuat rangkaian TMP36 dengan Arduino Uno.
Membaca nilai analog dari sensor menggunakan Arduino.
Mengubah nilai ADC menjadi tegangan.
Mengubah tegangan menjadi nilai suhu °C.
Menampilkan hasil pembacaan pada Serial Monitor.
Membuat indikator suhu menggunakan LED.
Membuat sistem alarm suhu menggunakan buzzer.
Melakukan simulasi dan analisis hasil menggunakan Tinkercad.
D. PENGANTAR IoT
Internet of Things atau IoT adalah konsep menghubungkan perangkat fisik dengan sensor, mikrokontroler, jaringan, atau sistem komputer sehingga perangkat dapat mengumpulkan dan mengolah data.
Contoh:
Smart home
Smart greenhouse
Monitoring suhu ruangan
Monitoring ruang server
Sistem pendingin otomatis
Monitoring suhu mesin
Sistem alarm suhu
Dalam praktik ini digunakan konsep:
Sensor → Input → Proses → Output
TMP36
↓
INPUT ANALOG
↓
Arduino Uno
↓
PROSES DATA
↓
┌───────────────┐
│ Serial Monitor│
│ LED │
│ Buzzer │
└───────────────┘
OUTPUTE. MATERI AJAR
1. Sensor TMP36
TMP36 adalah sensor suhu yang menghasilkan tegangan analog yang berubah sesuai dengan suhu.
Semakin tinggi suhu, semakin besar tegangan keluaran sensor.
TMP36 dapat digunakan untuk:
Pengukur suhu ruangan
Monitoring suhu perangkat
Sistem kipas otomatis
Sistem alarm suhu
Monitoring mesin
Sistem IoT
2. Pin TMP36
TMP36 memiliki tiga kaki.
Jika sisi datar sensor menghadap kita dan kaki mengarah ke bawah:
TMP36
┌─────────┐
│ │
└─────────┘
│ │ │
│ │ │
+Vs Vout GND| Pin | Fungsi | Arduino |
|---|---|---|
| +Vs | Tegangan positif | 5V |
| Vout | Tegangan keluaran | A0 |
| GND | Ground | GND |
Perhatian: Pastikan orientasi sensor benar sebelum melakukan simulasi.
3. Input Analog
Berbeda dengan tombol yang umumnya menghasilkan kondisi:
0 atau 1
TMP36 menghasilkan nilai tegangan yang berubah-ubah.
Arduino Uno mempunyai ADC (Analog to Digital Converter) 10-bit.
Dengan ADC 10-bit:
Nilai ADC = 0 sampai 1023
Jika referensi tegangan Arduino adalah 5V:
ADC 0 ≈ 0 V
ADC 512 ≈ 2,5 V
ADC 1023 ≈ 5 VRumus tegangan:
Tegangan = nilai_ADC × 5 / 10234. Mengubah Tegangan Menjadi Suhu
TMP36 mempunyai karakteristik sekitar:
10 mV/°C
Dengan offset sekitar 500 mV pada 0°C.
Rumus:
Suhu (°C) = (Tegangan - 0,5) × 100Contoh:
Jika tegangan TMP36:
0,75 Vmaka:
Suhu = (0,75 - 0,5) × 100
Suhu = 25°CF. ALAT DAN BAHAN
Hardware simulasi
Arduino Uno R3
TMP36 Temperature Sensor
Breadboard
LED
Resistor 220 Ω
Buzzer
Kabel jumper
Software
Tinkercad Circuits
PRAKTIK 1
Membaca Nilai TMP36
A. Tujuan
Membuat program sederhana untuk membaca nilai analog sensor TMP36.
B. Rangkaian
Hubungkan:
| TMP36 | Arduino |
|---|---|
| +Vs | 5V |
| Vout | A0 |
| GND | GND |
Diagram:
TMP36
┌───────┐
5V ───┤ +Vs │
A0 ───┤ Vout │
GND ──┤ GND │
└───────┘C. Program
void setup() {
Serial.begin(9600);
}
void loop() {
int nilaiADC = analogRead(A0);
Serial.print("Nilai ADC = ");
Serial.println(nilaiADC);
delay(1000);
}D. Langkah Praktik
Buka Tinkercad Circuits.
Buat circuit baru.
Tambahkan Arduino Uno.
Tambahkan TMP36.
Hubungkan rangkaian sesuai tabel.
Masukkan program.
Klik Start Simulation.
Buka Serial Monitor.
Amati nilai ADC.
E. Tabel Pengamatan
| No | Nilai ADC | Keterangan |
|---|---|---|
| 1 | ||
| 2 | ||
| 3 | ||
| 4 | ||
| 5 |
PRAKTIK 2
Mengubah Nilai ADC Menjadi Tegangan
Program
void setup() {
Serial.begin(9600);
}
void loop() {
int nilaiADC = analogRead(A0);
float tegangan = nilaiADC * 5.0 / 1023.0;
Serial.print("ADC : ");
Serial.println(nilaiADC);
Serial.print("Tegangan : ");
Serial.print(tegangan);
Serial.println(" V");
Serial.println("----------------");
delay(1000);
}Tugas
Catat:
| No | ADC | Tegangan |
|---|---|---|
| 1 | ||
| 2 | ||
| 3 | ||
| 4 | ||
| 5 |
Pertanyaan
Apa fungsi
analogRead(A0)?Mengapa nilai ADC berada pada rentang 0–1023?
Apa yang terjadi terhadap tegangan ketika nilai ADC meningkat?
PRAKTIK 3
Monitoring Suhu TMP36
Program
void setup() {
Serial.begin(9600);
}
void loop() {
int nilaiADC = analogRead(A0);
float tegangan = nilaiADC * 5.0 / 1023.0;
float suhu = (tegangan - 0.5) * 100.0;
Serial.print("ADC : ");
Serial.println(nilaiADC);
Serial.print("Tegangan : ");
Serial.print(tegangan);
Serial.println(" V");
Serial.print("Suhu : ");
Serial.print(suhu);
Serial.println(" °C");
Serial.println("====================");
delay(1000);
}Contoh tampilan
ADC : 561
Tegangan : 2.74 V
Suhu : 224.00 °CCatatan: Angka contoh di atas hanya ilustrasi. Hasil simulasi bergantung pada pengaturan sensor di Tinkercad.
PRAKTIK 4
Membuat Indikator Suhu dengan LED
Ketentuan
Buat sistem:
| Suhu | LED |
|---|---|
| < 30°C | Mati |
| ≥ 30°C | Menyala |
Rangkaian
Arduino D8
│
↓
Resistor 220Ω
│
↓
LED
│
↓
GNDProgram
const int pinLED = 8;
void setup() {
Serial.begin(9600);
pinMode(pinLED, OUTPUT);
}
void loop() {
int nilaiADC = analogRead(A0);
float tegangan = nilaiADC * 5.0 / 1023.0;
float suhu = (tegangan - 0.5) * 100.0;
Serial.print("Suhu = ");
Serial.print(suhu);
Serial.println(" °C");
if (suhu >= 30) {
digitalWrite(pinLED, HIGH);
}
else {
digitalWrite(pinLED, LOW);
}
delay(1000);
}PRAKTIK 5
Membuat Alarm Suhu
Tambahkan buzzer.
Ketentuan:
| Suhu | Kondisi |
|---|---|
| < 30°C | Normal |
| 30–34°C | LED menyala |
| ≥ 35°C | LED + buzzer |
Rangkaian
┌── LED
│
TMP36 → Arduino
│
└── BuzzerLED:
D8 → resistor 220 Ω → LED → GND
Buzzer:
D9 → Buzzer → GND
Program
const int pinLED = 8;
const int pinBuzzer = 9;
void setup() {
Serial.begin(9600);
pinMode(pinLED, OUTPUT);
pinMode(pinBuzzer, OUTPUT);
}
void loop() {
int nilaiADC = analogRead(A0);
float tegangan = nilaiADC * 5.0 / 1023.0;
float suhu = (tegangan - 0.5) * 100.0;
Serial.print("Suhu = ");
Serial.print(suhu);
Serial.println(" °C");
if (suhu >= 35) {
digitalWrite(pinLED, HIGH);
digitalWrite(pinBuzzer, HIGH);
Serial.println("STATUS: PERINGATAN!");
}
else if (suhu >= 30) {
digitalWrite(pinLED, HIGH);
digitalWrite(pinBuzzer, LOW);
Serial.println("STATUS: SUHU TINGGI");
}
else {
digitalWrite(pinLED, LOW);
digitalWrite(pinBuzzer, LOW);
Serial.println("STATUS: NORMAL");
}
Serial.println("---------------------");
delay(1000);
}G. DIAGRAM ALUR PROGRAM
MULAI
↓
Baca TMP36
↓
Baca ADC
↓
Hitung Tegangan
↓
Hitung Suhu
↓
Suhu ≥ 35°C?
/ \
YA TIDAK
↓ ↓
LED + Buzzer Suhu ≥ 30°C?
/ \
YA TIDAK
↓ ↓
LED ON LED OFF
Buzzer OFF Buzzer OFF
\ /
\ /
↓
Tampilkan Data
↓
UlangiH. LKPD — LEMBAR KERJA PESERTA DIDIK
Tugas 1 — Identifikasi Komponen
Lengkapi tabel:
| No | Komponen | Fungsi |
|---|---|---|
| 1 | Arduino Uno | |
| 2 | TMP36 | |
| 3 | Breadboard | |
| 4 | LED | |
| 5 | Resistor | |
| 6 | Buzzer |
Tugas 2 — Analisis Program
Jelaskan fungsi kode berikut:
a.
analogRead(A0);Jawaban:
............................................................
b.
float tegangan = nilaiADC * 5.0 / 1023.0;Jawaban:
............................................................
c.
float suhu = (tegangan - 0.5) * 100.0;Jawaban:
............................................................
d.
if (suhu >= 35)Jawaban:
............................................................
I. TABEL PENGAMATAN
Lakukan minimal 5 kali pengamatan.
| No | ADC | Tegangan (V) | Suhu (°C) | LED | Buzzer | Status |
|---|---|---|---|---|---|---|
| 1 | ||||||
| 2 | ||||||
| 3 | ||||||
| 4 | ||||||
| 5 |
J. PERTANYAAN ANALISIS
Mengapa TMP36 termasuk sensor analog?
Apa fungsi ADC pada Arduino?
Mengapa nilai ADC berada pada rentang 0–1023?
Apa hubungan antara tegangan output TMP36 dengan suhu?
Apa yang terjadi jika suhu melewati 30°C?
Apa yang terjadi jika suhu mencapai 35°C?
Bagaimana cara mengubah batas alarm dari 35°C menjadi 40°C?
Apa fungsi
if,else if, danelsedalam program?Apa akibatnya jika pin TMP36 Vout dihubungkan ke pin digital?
Sebutkan minimal tiga penerapan sistem monitoring suhu dalam kehidupan nyata.
K. TUGAS HOTS / PENGEMBANGAN
Studi Kasus
Sebuah ruang server TKJ memiliki masalah suhu yang terlalu tinggi.
Buatlah sistem monitoring dengan ketentuan:
Suhu < 28°C
→ Status NORMAL
Suhu 28–32°C
→ LED menyala
Suhu > 32°C
→ LED berkedip
Suhu ≥ 35°C
→ Buzzer aktif
Tantangan
Modifikasi program sehingga sistem dapat memenuhi seluruh kondisi tersebut.
Siswa wajib mengumpulkan:
Screenshot rangkaian Tinkercad.
Screenshot program.
Screenshot Serial Monitor.
Hasil pengamatan.
Penjelasan cara kerja.
Kesimpulan.
L. PROJEK MINI
"Sistem Peringatan Suhu Ruangan"
Buat sistem menggunakan:
Arduino Uno
TMP36
LED
Buzzer
Sistem harus dapat:
1. Membaca suhu
2. Menampilkan suhu pada Serial Monitor
3. Menentukan kondisi suhu
4. Memberikan indikator LED
5. Memberikan alarm jika suhu terlalu tinggi
Pengembangan opsional
Siswa yang selesai lebih cepat dapat menambahkan:
LCD 16×2
Dua LED indikator
Kipas DC
Sistem monitoring otomatis
Tampilan status NORMAL/WASPADA/BAHAYA
M. KESIMPULAN
Tuliskan kesimpulan berdasarkan praktik yang telah dilakukan.
Contoh format:
Berdasarkan praktik yang telah dilakukan, sensor TMP36 dapat digunakan untuk ........................................................
Arduino Uno berfungsi sebagai ........................................................
Nilai analog dari TMP36 dibaca oleh Arduino menggunakan ........................................................
Sistem dapat memberikan peringatan ketika ........................................................
N. RUBRIK PENILAIAN
| Aspek | Bobot |
|---|---|
| Pemahaman sensor TMP36 | 15 |
| Ketepatan rangkaian | 20 |
| Program Arduino | 25 |
| Hasil simulasi | 15 |
| Analisis data | 10 |
| Dokumentasi | 5 |
| Presentasi | 10 |
| TOTAL | 100 |
Kriteria
86–100 = Sangat Baik
Mampu membuat sistem, memahami program, dan melakukan pengembangan.
76–85 = Baik
Sistem berjalan dengan sedikit kesalahan.
66–75 = Cukup
Sistem berjalan tetapi masih memerlukan bimbingan.
≤65 = Perlu Bimbingan
Belum mampu menyelesaikan rangkaian/program.
O. PEMBAGIAN WAKTU 4 JP
JP 1 — Konsep dan Dasar Sensor
15 menit
Apersepsi IoT
Pengenalan sensor
25 menit
TMP36
Input analog
ADC
Rumus tegangan dan suhu
JP 2 — Praktik Dasar
20 menit
Membuat rangkaian TMP36
25 menit
Program
analogRead()
20 menit
Membaca Serial Monitor
JP 3 — Pengembangan
20 menit
Konversi ADC → tegangan → suhu
25 menit
LED indikator
20 menit
Buzzer/alarm
JP 4 — Mini Project
30 menit
Menyelesaikan sistem
15 menit
Pengujian
15 menit
Dokumentasi
15 menit
Presentasi/refleksi
P. CHECKLIST PRAKTIK SISWA
☐ Membuka Tinkercad
☐ Membuat rangkaian Arduino + TMP36
☐ Menghubungkan Vout ke A0
☐ Membaca ADC
☐ Menghitung tegangan
☐ Menghitung suhu
☐ Menampilkan suhu pada Serial Monitor
☐ Menambahkan LED
☐ Menambahkan buzzer
☐ Membuat kondisi suhu
☐ Menguji sistem
☐ Mengambil screenshot
☐ Mengumpulkan laporan
TUGAS AKHIR
Buatlah "Sistem Monitoring dan Peringatan Suhu Ruangan Berbasis Arduino" menggunakan Tinkercad.
Ketentuan minimal:
TMP36 + Arduino Uno + LED + Buzzer
Program harus dapat:
Membaca → Menghitung → Menampilkan → Menganalisis → Memberikan peringatan.
Tidak ada komentar:
Posting Komentar