Isi kandungan:
- Langkah 1: Kumpulkan Bahan
- Langkah 2: Menyiapkan Papan Roti
- Langkah 3: Menyiapkan Paparan LCD
- Langkah 4: Menyiapkan Piezo Buzzer
- Langkah 5: Menyiapkan Sensor Suhu DHT
- Langkah 6: Menyiapkan RGB
- Langkah 7: Perumahan Cetakan 3D Pilihan
- Langkah 8: Kod dan Fail
- Langkah 9: Kod Arduino
Video: Sistem Amaran Keselamatan Kebakaran LCD Arduino: 9 Langkah
2024 Pengarang: John Day | [email protected]. Diubah suai terakhir: 2024-01-30 11:10
Ini adalah projek buatan pelajar yang menggabungkan fungsi Layar LCD, buzzer, RGB dan sensor suhu DHT.
Suhu sekitarnya dipaparkan dan diperbaharui pada skrin LCD.
Mesej yang dicetak di layar LCD memberitahu pengguna mengenai tahap "bahaya kebakaran".
Skrin redup dan berkelip untuk memberi amaran kepada pengguna tentang bahaya.
Pengeras suara menjadi lebih kuat dan lebih pantas untuk memberi amaran kepada pengguna mengenai bahaya bergantung pada tahap risiko semasa.
RGB berubah hijau, kuning, oren dan merah bergantung pada tahap risiko semasa.
Boleh dimasukkan ke dalam cetakan 3D untuk penampilan yang lebih profesional.
Ini menyelesaikan masalah dunia nyata orang yang tidak mengetahui bila ada risiko kebakaran sehingga terlambat
Langkah 1: Kumpulkan Bahan
Bahan yang digunakan dalam Projek ini:
Paparan LCD 1x
Sensor Suhu 1x DHT_11
1x RGB
1x Piezo Passive Buzzer 1.0v
Papan Roti Kecil 2x
Perintang standard 3x
1x Papan Roti Berukuran Biasa
1x Arduino UNO
Bluetack untuk mengunci wayar di tempat.
Berbagai jenis wayar berakhir, kedua-duanya terbuka dan tunggal.
Peranti untuk menjalankan kod
Akses ke pencetak 3D jika anda mahukan kulit luar dan rupa yang lebih digilap
Langkah 2: Menyiapkan Papan Roti
1. Sambungkan wayar oren dari pin berlabel "GND" pada papan Arduino dan sambungkan ke sisi negatif (biru) papan roti. Mulai sekarang, jika kita perlu menggunakan GND untuk peranti luaran, kita hanya akan meletakkannya di lajur yang sama seperti ini di papan roti.
2. Sambungkan wayar merah dari pin berlabel "5V" pada papan Arduino dan sambungkan ke sisi positif (merah) papan roti. Mulai sekarang, jika kita perlu menggunakan 5V untuk mana-mana peranti luaran, kita hanya akan meletakkannya di ruangan yang sama seperti ini di papan roti.
Langkah 3: Menyiapkan Paparan LCD
1. Balikkan papan sehingga menghadap terbalik dengan semua pin di sebelah kiri.
2. Sambungkan wayar 5 dari kiri atas pada baris pin paling atas dan sambungkan ke pin nombor 4 di Arduino UNO.
3. Sambungkan wayar 6 dari kiri atas pada baris pin paling atas dan sambungkan ke pin nombor 5 di Arduino UNO.
4. Sambungkan wayar 7 dari kiri atas pada baris pin paling atas dan sambungkan ke pin nombor 6 di Arduino UNO.
5. Sambungkan wayar 8 dari kiri atas pada baris pin paling atas dan sambungkan ke pin nombor 7 di Arduino UNO.
6. Sambungkan wayar 9 dari kiri atas pada baris pin paling atas dan sambungkan ke pin nombor 8 di Arduino UNO.
7. Sambungkan wayar 10 dari kiri atas pada baris pin paling atas dan sambungkan ke pin nombor 9 di Arduino UNO.
8. Sambungkan wayar 3 dari kanan bawah dan sambungkannya ke Baris 5V di papan roti
9. Sambungkan wayar 4 dari kanan bawah dan sambungkannya ke GND Row di papan roti
LIHAT GAMBAR SEBAGAI DIAGRAM PEKELILING MENUNJUKKAN LCD BERBEZA
Langkah 4: Menyiapkan Piezo Buzzer
1. Sambungkan wayar dari pin GND pada buzzer ke lajur GND (Biru) di papan roti
2. Sambungkan wayar dari pin VCC pada buzzer ke lajur 5V (Merah) di papan roti
3. Sambungkan wayar dari pin SIG pada buzzer ke pin bernombor "10" pada papan UNO arduino
LIHAT GAMBAR DI ATAS SEBAGAI DIAGRAM PEKELILING MENUNJUKKAN BUZZER BERBEZA
Langkah 5: Menyiapkan Sensor Suhu DHT
1. Sediakan sensor DHT di papan roti seperti gambar di atas
2. Sambungkan pin pertama di sebelah kiri sensor DHT (berlabel VCC dalam rajah bahagian) ke lajur 5V (Merah) di papan roti
3. Sambungkan pin kedua di sebelah kiri sensor DHT (DATA berlabel dalam rajah bahagian) ke port A0 di Arduino UNO
4. Sambungkan pin pertama di sebelah kanan sensor DHT (Berlabel GND dalam rajah bahagian) ke lajur GND (Biru) di papan roti
5. Tonton tutorial dan tambahkan Perpustakaan dht.h yang terdapat di hujung arahan kepada Arduino. (Ini wajib)
Langkah 6: Menyiapkan RGB
1. Letakkan RGB di papan roti kecil seperti gambar di atas, penekanan pada kaki kedua dari kiri RGB menjadi satu slot lebih dekat daripada tiga yang lain
2. Letakkan perintang Standard pada pin pertama, ketiga dan keempat. Meninggalkan ruang untuk sekurang-kurangnya satu wayar lagi (seperti gambar di atas).
3. Sambungkan wayar dari belakang perintang pada pin kiri RGB ke pin berlabel 2 pada Arduino UNO
4. Sambungkan wayar dari belakang kedua keluar dari pin kiri RGB ke lajur GND (biru) papan roti.
5. Sambungkan wayar dari belakang perintang pada kedua dari pin kanan RGB ke pin Berlabel 1 pada Arduino UNO
6. Sambungkan wayar dari belakang perintang pada pin kanan RGB ke pin berlabel 3 pada Arduino UNO
Langkah 7: Perumahan Cetakan 3D Pilihan
1. Cari tutorial bagaimana mencetak 3D.
2. Cetak reka bentuk terlampir yang dibuat di Autodesk Fusion 360 (fail.stl)
3. Mengikis lebihan bahan 3D dan melicinkan permukaannya
4. Lihat gambar di atas untuk panduan mengenai tempat meletakkan bahagian Arduino.
Langkah 8: Kod dan Fail
-Pustaka DHT.h dilampirkan. (UNZIP)
-Kod dengan komen terperinci dilampirkan tetapi juga pada langkah seterusnya.
- Fail.stl untuk perumahan 3D dilampirkan
-Rajah Litar dilampirkan sekali lagi. Pastikan untuk merujuk kepada langkah-langkah sebenar untuk layar LCD dan piezo buzzer kerana komponen yang berbeza telah digunakan.
Langkah 9: Kod Arduino
// SISTEM PERINGATAN KEBAKARAN LCD // Membaca input dari Pin Suhu DHT dan bergantung pada jika panas atau tidak, menukar rgb dan pembesar suara untuk menunjukkan kepada pengguna jika mereka bahaya kebakaran. // Juga memaparkan suhu pada skrin LCD.
// PENYEDIAAN DHT
#include // Sertakan perpustakaan DHT
#define dht_dpin A0 // Memberitahu papan bahawa pin DHT berada dalam input analog 0
dht DHT; // dht = DHT
// PENYEDIAAN KRISTAL LIQUID
#include // Sertakan perpustakaan Liquid Crystal
LiquidCrystal lcd (8, 9, 4, 5, 6, 7); // Memendekkan ke LCD / memberitahu arduino port mana yang diduduki lcd
// MENENTUKAN RGB + BUZZER
#define redpin 1 // Mentakrifkan redpin RGB di port 1
#define greenpin 2 // Mendefinisikan greenpin RGB di port 2
#definisi bluepin 3 // Mendefinisikan bluepin RGB di port 3
#define buzzerpin 10 // Mendefinisikan buzzerpin di port 10
// BERBAGAI / S
int temp = analogRead (DHT.temperature); // Menetapkan "temp" Integer yang merupakan nilai dari perintah DHT.temperature
batal persediaan () {
// OUTPUT / INPUT
analogWrite (redpin, OUTPUT); // Menyatakan / menentukan redpin sebagai Output
analogWrite (greenpin, OUTPUT); // Menyatakan / menentukan greenpin sebagai Output
analogWrite (bluepin, OUTPUT); // Menyatakan / menentukan bluepin sebagai Output
pinMode (buzzerpin, OUTPUT); // Menyatakan / menentukan buzzerpin sebagai Output
// LAYAR LCD
lcd.begin (16, 2); // Tentukan skrin LCD sebagai 16 lajur dan 2 baris}
gelung kosong () {
// KOD LCD TANPA VARIABILITI
DHT.read11 (dht_dpin); // Baca input dari dht_dpin juga (A0)
lcd.setCursor (0, 0); // Tetapkan kursor ke Lajur 0, Baris 0
lcd.print ("Ini"); // Menulis "Ini" di skrin LCD
lcd.print (DHT.temperature); // Mencetak nilai suhu DHT dari pin DHT pada lajur 0, Baris 0
lcd.print (""); // Mencetak ruang selepas suhu
lcd.print ((char) 223); // mencetak Tanda darjah selepas suhu
lcd.print ("C"); // Mencetak "c" selepas tanda darjah untuk melambangkan celsius
// LAMPU LCD
lcd.setCursor (0, 1); // Tetapkan kursor ke Lajur 0, Baris 1
lcd.noDisplay ();
lcd.print ("Tiada Bahaya Kebakaran"); // Cetakan "Tidak Peluang Api"
lcd.noDisplay (); // Mematikan paparan LCD (bahagian lampu kilat)
kelewatan (1000); // Dihentikan selama 1 saat
lcd.display (); // Menghidupkan semula paparan LCD
kelewatan (1000); // Kekal selama 1 saat
// KOD RGB + BUZZER
analogWrite (redpin, 0); // Tidak ada output dari pin merah
analogWrite (greenpin, 255); // 255 output dari greenpin (Menjadikan RGB hijau)
analogWrite (bluepin, 0); // Tidak ada output dari pin biru
nada (buzzerpin, 20, 20); // // Memancarkan Frekuensi 20 hertz selama 0.02 Detik dari buzzer
// JIKA TEMP ADALAH 25-30
jika ((int (suhu DHT)> = 25.00) && (int (suhu DHT) <= 30.00)) {
lcd.clear (); // Membersihkan Skrin LCD
lcd.setCursor (0, 1); // Tetapkan kursor ke Lajur 0, Baris 1
lcd.print ("Makluman Kecil"); // Mencetak "Makluman Kecil" pada Lajur 0, Baris 1
lcd.noDisplay (); // Mematikan paparan LCD (bahagian lampu kilat)
kelewatan (1000); // Dihentikan selama 1 saat
lcd.display (); // Menghidupkan semula paparan LCD
kelewatan (1000); // Kekal selama 1 saat
analogWrite (redpin, 255); // 255 output dari redpin (Menjadikan RGB kuning)
analogWrite (greenpin, 255); // 255 output dari greenpin (Menjadikan RGB kuning)
analogWrite (bluepin, 0); // Tidak ada output dari pin biru
nada (buzzerpin, 200, 100); // Memancarkan Frekuensi 200 hertz selama 0.1 Detik dari buzzer
kelewatan (300); //.3 Kelewatan kedua
} // JIKA TEMP ADALAH 31-37 yang lain jika ((int (suhu DHT) = 37.00)) {
lcd.clear (); // Membersihkan Skrin LCD
lcd.setCursor (0, 1); // Tetapkan kursor ke Lajur 0, Baris 1
lcd.print ("Makluman Medium"); // Mencetak "Makluman Medium" pada Lajur 0, Baris 1
lcd.noDisplay (); // Mematikan paparan LCD (bahagian lampu kilat)
kelewatan (500); // Dihentikan selama 0.5 saat
lcd.display (); // Menghidupkan semula paparan LCD
kelewatan (500); // Kekal selama 0.5 saat
analogWrite (redpin, 255); // 255 output dari redpin (Menjadikan RGB oren)
analogWrite (greenpin, 165); // 165 output dari greenpin (Menjadikan RGB oren)
analogWrite (bluepin, 0); // Tiada output dari bluepin
nada (buzzerpin, 500, 900); // Memancarkan Frekuensi 500 hertz selama 0.9 Detik dari buzzer
kelewatan (300); //.3 Kelewatan kedua
} // JIKA TEMP ADALAH 38-100
lain jika ((int (suhu DHT) = 100.00)) {
lcd.clear (); // Membersihkan Skrin LCD
lcd.setCursor (0, 1); // Tetapkan kursor ke Lajur 0, Baris 1
lcd.print ("Panggil 000"); // Mencetak "Panggil 000" pada Lajur 0, Baris 1
lcd.noDisplay (); // Mematikan paparan LCD (bahagian lampu kilat)
kelewatan (250); // Menunggu selama 0.25 saat
lcd.display (); // Menghidupkan semula paparan LCD
kelewatan (250); // Kekal selama 0.25 saat
analogWrite (redpin, 255); // 255 output dari redpin (Menjadikan RGB merah)
analogWrite (greenpin, 0); // Tiada output dari greenpin
analogWrite (bluepin, 0); // Tiada output dari bluepin
nada (buzzerpin, 1000, 900); // Memancarkan Frekuensi 1000 hertz selama 0.9 Detik dari buzzer
kelewatan (300); //.3 Kelewatan kedua
}}
Disyorkan:
Sistem Lampu Amaran Cuaca: 6 Langkah
Sistem Cahaya Peringatan Cuaca: Sistem pencahayaan amaran cuaca mengubah pencahayaan untuk menunjukkan amaran cuaca atau jam tangan yang berbeza. Sistem ini memanfaatkan data cuaca yang dapat diakses secara bebas untuk membuat perubahan pencahayaan untuk menunjukkan status cuaca. Raspberry pi (melalui simpul-merah) memeriksa
Butang Keselamatan Tanpa Wayar untuk Keselamatan PLC: 6 Langkah (dengan Gambar)
Butang Keselamatan Tanpa Wayar untuk Keselamatan PLC: Projek ini adalah bukti konsep saya untuk menggunakan robotik IoT dan (akhirnya) untuk membuat lapisan keselamatan tambahan untuk kemudahan pembuatan berbahaya. Butang ini boleh digunakan untuk memulakan atau menghentikan beberapa proses, termasuk kawalan isyarat
Litar Penggera Keselamatan Kebakaran Tanpa Transistor: 5 Langkah
Litar Penggera Kebakaran Tanpa Transistor: Hai kawan, Hari ini saya akan membuat litar penggera kebakaran tanpa menggunakan transistor. Mari bermula
Sistem Keselamatan Keselamatan Wanita Satu Sentuhan: 3 Langkah
Sistem Keselamatan Keselamatan Wanita Satu Sentuhan: Penggera satu sentuhan Sistem keselamatan wanita menggunakan pengawal mikro 8051 Dalam Keselamatan Wanita Dunia Hari Ini adalah Isu Paling Penting Di Negara Ini. Hari Ini Wanita Dilecehkan Dan Bermasalah Dan Kadang-kadang Apabila Bantuan Mendesak Diperlukan. Tidak ada Locati yang Diperlukan
Permainan Sistem "Sistem Keselamatan": 15 Langkah
Permainan Video "Sistem Keselamatan": Ini adalah cara membuat platformer sederhana di flowlab.io Permainan yang digunakan sebagai contoh dalam tutorial ini dapat dimainkan dan pengaturcaraannya dilihat dan diedit (tetapi tidak disimpan) di pautan ini: https: // flowlab.io/game/play/1130006