Daftar Isi:

Simulator Kehadiran Rumah dan Perangkat Kontrol Keamanan: 6 Langkah (dengan Gambar)
Simulator Kehadiran Rumah dan Perangkat Kontrol Keamanan: 6 Langkah (dengan Gambar)

Video: Simulator Kehadiran Rumah dan Perangkat Kontrol Keamanan: 6 Langkah (dengan Gambar)

Video: Simulator Kehadiran Rumah dan Perangkat Kontrol Keamanan: 6 Langkah (dengan Gambar)
Video: Cara G-Absen Menggunakan HP Android bagi ASN Tanpa Harus Berada Di Kantor | Trik Rahasia 2024, Juli
Anonim
Simulator Kehadiran Rumah dan Perangkat Kontrol Keamanan
Simulator Kehadiran Rumah dan Perangkat Kontrol Keamanan
Simulator Kehadiran Rumah dan Perangkat Kontrol Keamanan
Simulator Kehadiran Rumah dan Perangkat Kontrol Keamanan
Simulator Kehadiran Rumah dan Perangkat Kontrol Keamanan
Simulator Kehadiran Rumah dan Perangkat Kontrol Keamanan
Simulator Kehadiran Rumah dan Perangkat Kontrol Keamanan
Simulator Kehadiran Rumah dan Perangkat Kontrol Keamanan

Proyek ini memungkinkan kami untuk mensimulasikan kehadiran dan mendeteksi gerakan di rumah kami.

Kita dapat mengonfigurasi jaringan perangkat yang dipasang di berbagai ruangan di rumah kita, semuanya dikendalikan oleh perangkat utama.

Proyek ini menggabungkan fitur-fitur ini pada satu perangkat (GAMBAR 1):

  1. Ini adalah simulator kehadiran: perangkat menyalakan dan mematikan satu bola lampu (GAMBAR 1) dan menggunakan pemancar IR (GAMBAR 2) untuk mengirim kode kontrol IR 38 KHz ke perangkat yang dikendalikan IR (TV, VCR, lampu, …)
  2. Ini adalah detektor gerakan: perangkat memiliki sensor PIR untuk mendeteksi gerakan (GAMBAR 3)

Seluruh sistem dikendalikan oleh perangkat master yang mengirim sinyal ke perangkat slave lain yang ada di jaringan untuk menghidupkan dan mematikan lampu dan untuk mengaktifkan perangkat IR yang dikendalikan sesuai dengan simulasi kehadiran yang dijadwalkan.

Fitur utama dari perangkat master adalah sebagai berikut:

  • Ini menggunakan urutan perintah terjadwal untuk mengontrol setiap perangkat budak. Misalnya: lampu di stasiun slave 1 akan menyala setiap hari selama periode waktu yang acak atau stasiun slave 2 akan menyalakan TV dan akan berganti saluran setelah jangka waktu tertentu.
  • Ini menerima sinyal dari stasiun budak ketika gerakan terdeteksi dan mengirim kami dan e-mail
  • Ini mengonfigurasi Server Web untuk mengontrol dan memperbarui seluruh sistem dari jarak jauh dari Cloud

Saya harap Anda suka dan bermanfaat bagi seseorang.

Langkah 1: Membangun Perangkat Budak

Membangun Perangkat Budak
Membangun Perangkat Budak
Membangun Perangkat Budak
Membangun Perangkat Budak
Membangun Perangkat Budak
Membangun Perangkat Budak

Untuk membangun perangkat budak kita akan membutuhkan yang berikut:

  • Kotak listrik
  • ARDUINO NANO atau mikrokontroler ARDUINO NANO yang kompatibel
  • Protoboard 480
  • Menyampaikan
  • Pemancar IR 38 KHz
  • sensor PIR
  • nRF24L01 modul + antena
  • Adaptor untuk modul nRF24L01
  • Catu daya 5V, 0,6 A
  • Dudukan lampu
  • Bolam
  • Kabel
  • Blok terminal

Langkah-langkah untuk memasangnya adalah sebagai berikut (lihat gambar Fritzing untuk setiap sambungan pin):

  1. GAMBAR 1: buka lubang di kotak listrik untuk dudukan lampu
  2. GAMBAR 2: pasang protoboard 480 dengan mikrokontroler NANO, pemancar IR, dan catu daya
  3. GAMBAR 3: sambungkan konduktor fasa dudukan lampu ke terminal NC relai dan konduktor netral ke input netral di blok terminal. Setelah itu, sambungkan terminal umum relai ke konduktor fase input di blok terminal
  4. GAMBAR 4: hubungkan pemancar IR dan sensor PIR ke mikrokontroler NANO. Lihat langkah 3 untuk mengonfigurasi kode IR untuk perangkat yang ingin Anda kontrol
  5. GAMBAR 5: pasang adaptor nRF24L01 di luar kotak listrik dan hubungkan ke mikrokontroler NANO. Seperti yang dapat Anda lihat pada gambar ini kabel masuk ke kotak listrik melalui lubang yang juga digunakan untuk menghubungkan kabel pemrograman USB ke mikrokontroler NANO

Langkah 2: Membangun Perangkat Master

Membangun Perangkat Master
Membangun Perangkat Master
Membangun Perangkat Master
Membangun Perangkat Master
Membangun Perangkat Master
Membangun Perangkat Master

Untuk membangun perangkat master kita akan membutuhkan yang berikut:

  • Kotak listrik
  • ARDUINO MEGA 2560 R3 atau mikrokontroler ARDUINO MEGA 2560 R3 yang kompatibel
  • Modul WiFi NodeMCU Lua Amica V2 ESP8266
  • RTC DS3231
  • Protoboard 170
  • Menyampaikan
  • Pemancar IR 38 KHz
  • sensor PIR
  • nRF24L01 modul + antena
  • Adaptor untuk modul nRF24L01
  • Catu daya 5V, 0,6 A
  • Dudukan lampu
  • Bolam
  • Kabel
  • Blok terminal

Langkah-langkah untuk memasangnya sangat mirip dengan yang sebelumnya karena perangkat master pada dasarnya adalah perangkat budak dengan lebih banyak fitur (lihat gambar Fritzing untuk setiap sambungan pin):

  • GAMBAR 1: buka lubang di kotak listrik untuk dudukan lampu
  • GAMBAR 2, GAMBAR 3: Pasang modul ESP8266 di protoboard 170 dan letakkan di atas mikrokontroler MEGA 2560 seperti yang Anda lihat pada gambar
  • GAMBAR 4: tempelkan sepotong kayu di dalam kotak listrik. Di atas sepotong kayu, pasang mikrokontroler MEGA 2560 dengan ESP8266, modul jam DS3231, dan adaptor nRF24L01
  • GAMBAR 5: pasang power supply dan realnya. Hubungkan konduktor fase dudukan lampu ke terminal NC relai dan konduktor netral ke input netral di blok terminal. Setelah itu, sambungkan terminal umum relai ke konduktor fasa input di blok terminal.

Langkah 3: Mengonfigurasi Perangkat Master dan Slave

Mengonfigurasi Perangkat Master dan Slave
Mengonfigurasi Perangkat Master dan Slave

Untuk mengkonfigurasi perangkat Anda harus melakukan langkah-langkah berikut:

LANGKAH 3.1 (kedua perangkat)

Instal perpustakaan IRremote, RF24Network, RF24, DS3231 dan Time di ARDUINO IDE Anda

LANGKAH 3.2 (hanya untuk perangkat budak)

Konfigurasikan alamat di jaringan. Cari saja kode berikut di sketsa "presence_slave.ino" dan beri alamat dalam format oktal. Hanya gunakan alamat yang lebih besar dari 0 karena alamat 0 dicadangkan untuk perangkat utama

const uint16_t this_node = 01; // Alamat perangkat budak kami dalam format Oktal

Muat sketsa "presence_slave.ino" ke dalam mikrokontroler.

LANGKAH 3.3 (hanya untuk perangkat master) (PENGENALAN KODE KONTROL IR)

Jika Anda akan menggunakan perangkat yang dikendalikan oleh kode kontrol IR 38KHz untuk mensimulasikan kehadiran, Anda harus mengetahui beberapa di antaranya.

Jika tidak, Anda harus mendapatkan kode kontrol IR dari perangkat Anda.

Untuk melakukan itu, Anda memerlukan penerima IR 38KHz, muat dalam satu mikrokontroler NANO sketsa "ir_codes.ino" dan hubungkan semuanya seperti yang Anda lihat di GAMBAR 1

Kemudian, arahkan remote control Anda ke penerima IR, tekan tombol apa saja dan Anda akan melihat di monitor serial sesuatu yang mirip dengan:

(12 bit) Didekode SONY: A90 (HEX), 101010010000 (BIN) // tombol POWER

(12 bit) Dekode SONY: C10 (HEX), 110000010000 (BIN) // 4 tombol (12 bit) Dekode SONY: 210 (HEX), 1000010000 (BIN) // 5 tombol

Dalam hal ini remote control menggunakan protokol SONY IR dan ketika kita menekan tombol power pada remote control kita mendapatkan kode IR "0xA90" dengan panjang 12 bit atau ketika kita menekan tombol 4 pada remote control, kita mendapatkan IR kode "0xC10".

Saya sarankan setidaknya mencari kekuatan dan beberapa nomor tombol kode kontrol IR untuk mensimulasikan kehadiran.

Setelah Anda mendapatkan kode IR sebelumnya, Anda harus memperkenalkannya dengan cara berikut:

CARA PERTAMA

Jika Anda telah mengkonfigurasi jaringan wifi Anda dapat melakukannya menggunakan halaman web (Lihat langkahnya: Server Web)

CARA KEDUA

Jika tidak, Anda harus mencari kode berikutnya di file "ir_codes.ino" dan memperbarui informasinya. Dalam kode di bawah ini Anda dapat melihat bagaimana kami dapat memperkenalkan informasi yang diperoleh di atas hanya untuk perangkat master (alamat = 0)

/******************************************/

/******* Kode kontrol IR *****************/ /********************* **********************/ // protocol_id, number_of_bits, 10 kode kontrol IR untuk perangkat master (alamat = 0) SONY, 12, 0xA90, 0xC10, 0x210, 0, 0, 0, 0, 0, 0, 0, // protocol_id, number_of_bits, 10 kode kontrol IR untuk perangkat slave (alamat = 1) TIDAK DIKETAHUI, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, // protocol_id, number_of_bits, 10 kode kontrol IR untuk perangkat slave (alamat = 2) TIDAK DIKETAHUI, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, // protocol_id, number_of_bits, 10 kode kontrol IR untuk perangkat slave (alamat = 3) UNKNOWN, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, // protocol_id, number_of_bits, 10 kode kontrol IR untuk perangkat budak (alamat = 4) TIDAK DIKETAHUI, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 /************ *********************************/ /********* Akhiri kode kontrol IR ** ************/ /************************************ *********/

Sketsa dikonfigurasi untuk bekerja dengan protokol IR berikut:

  • NEC
  • SONY
  • RC5
  • RC6
  • LG
  • JVC
  • MENGAPA?
  • SAMSUNG
  • TAJAM
  • PIRING
  • DENON
  • LEGO_PF

Dalam file "ir_codes.ino" Anda dapat menemukan beberapa kode kontrol IR untuk protokol SAMSUNG dan SONY.

/***************************************************************************/

// BEBERAPA IR_PROTOCOLS DAN KODE // (SAMSUNG, number_of_bits, tombol POWER, tombol 1, 2, 3) // SAMSUNG, 32, 0xE0E010EF, 0xE0E020DF, 0xE0E0609F, 0xE0E0A05F // (SONY, number_of_bits, tombol 1, tombol POWER, 3, 4, 5, 6, 7, 8, 9, 0) // SONY, 12, 0xA90, 0x010, 0x810, 0x410, 0xC10, 0x210, 0xA10, 0x610, 0xE10, 0x110, 0x910 /**** ************************************************** **********************/

PENTING: kode kontrol IR pertama yang diperkenalkan harus kode kontrol IR untuk mematikan perangkat. Ini akan dikirim oleh master ke budak ketika tidak ada tindakan yang direncanakan untuk perangkat itu

Jika seseorang mengetahui atau seseorang telah memperoleh beberapa kode kontrol IR dari beberapa protokol yang tercantum di atas, silakan kirim komentar di instruksi ini dengan informasi berikut: id protokol, panjang protokol dan kode kontrol IR.

LANGKAH 3.4 (hanya untuk perangkat master) (PENGENALAN PERENCANAAN SIMULASI KEHADIRAN)

Anda dapat memperkenalkan perencanaan simulasi kehadiran dengan cara berikut:

CARA PERTAMA

Jika Anda telah mengkonfigurasi jaringan wifi Anda dapat melakukannya menggunakan halaman web (Lihat langkahnya: Server Web)

CARA KEDUA

Anda harus mencari kode berikutnya di file "ir_codes.ino" dan memperbarui informasinya.

Format perencanaan simulasi kehadiran adalah sebagai berikut:

(jam_init_interval1), (interval_akhir_jam1), (interval_init_jam2), (interval_akhir_jam2), (min_delay_ir), (max_delay_ir), (min_delay_light), (max_delay_light)

/************ PERENCANAAN SIMULASI KEHADIRAN ************/

7, 8, 17, 3, 5, 60, 10, 40, // perangkat master (alamat = 0) 0, 0, 17, 23, 3, 30, 5, 10, // perangkat budak (alamat = 1) 0, 0, 0, 0, 0, 0, 0, 0, // perangkat budak (alamat = 2) 0, 0, 0, 0, 0, 0, 0, 0, // perangkat budak (alamat = 3) 0, 0, 0, 0, 0, 0, 0, 0 // perangkat budak (alamat = 4) /************ SIMULATOR KEHADIRAN AKHIR ********** **********/

Pada contoh di atas perencanaan simulasi kehadiran untuk perangkat master adalah sebagai berikut:

  • (hour_init_interval1 = 7) Simulasi interval pertama akan dimulai pada pukul 7:00 setiap hari
  • (hour_end_interval1 = 8) Simulasi interval pertama akan berakhir pada pukul 8:00 pada hari yang sama
  • (hour_init_interval2 = 17) Simulasi interval kedua akan dimulai pada pukul 17.00 WIB. setiap hari
  • (hour_end_interval2 = 3) Simulasi interval kedua akan berakhir pada pukul 3:00 pagi hari berikutnya
  • (min_delay_ir = 5) (max_delay_ir = 60) Waktu tunda dalam menit antara pengiriman acak kode kontrol IR adalah angka acak antara 5 dan 60
  • (min_delay_light = 10) (max_delay_light = 40) Waktu tunda dalam menit antara sakelar lampu hidup dan mati adalah angka acak antara 10 dan 40

dan perencanaan simulasi kehadiran untuk perangkat slave dengan alamat 2 adalah sebagai berikut:

  • (jam_init_interval1

    = 0) Tidak ada simulasi interval pertama yang ditentukan

  • (hour_end_interval1 = 0) Tidak ada simulasi interval pertama yang ditentukan
  • (hour_init_interval2 = 17) Simulasi akan dimulai pada pukul 17.00 WIB. setiap hari
  • (hour_end_interval2 = 23) Simulasi akan berakhir pada pukul 23.00 WIB. di hari yang sama
  • (min_delay_ir = 3)

    (max_delay_ir

    = 30) Waktu tunda dalam menit antara pengiriman acak kode kontrol IR adalah angka acak antara 3 dan 30

    (min_delay_light = 5)

    (max_delay_light

    = 10) Waktu tunda dalam menit antara sakelar hidup dan mati adalah angka acak antara 5 dan 10

LANGKAH 3.5 (hanya untuk perangkat master) (KONFIGURASI JAM WAKTU NYATA)

Salah satu kunci dari proyek ini adalah waktu. Kita perlu mengatur waktu ARDUINO ketika sketsa mulai berjalan. Untuk melakukan itu kita membutuhkan modul jam waktu nyata. Salah satu modul clock adalah DS3231 yang mendukung sebagai trickle charger baterai cadangan, yang dapat digunakan kecuali jika dihubungkan ke mikrokontroler dengan tiga kabel data menggunakan protokol I2C.

Sebelumnya untuk menggunakan DS3231 Anda harus mengatur waktu di modul ini. Untuk melakukan itu, Anda harus menjalankan sketsa "DS3231_set.ino" di perangkat master.

LANGKAH 3.6 (hanya untuk perangkat master) (KONFIGURASI MODUL ESP8266)

Sketsa yang berjalan dalam modul ini mencoba menyambungkan ke jaringan wifi lokal Anda dan mengonfigurasi server web.

Jadi kita perlu memperbarui informasi berikut dalam sketsa "presence_web.ino" untuk mengakses jaringan wifi lokal Anda dan untuk mengkonfigurasi alamat email Gmail dari mana ESP8266 akan mengirim gerakan yang terdeteksi oleh semua perangkat di jaringan dan alamat email tempat Anda ingin menerima pemberitahuan (Pengirim Gmail ESP8266 dapat diinstruksikan)

const char* ssid = "ssid jaringan wifi lokal Anda";

const char* password = "kata sandi jaringan wifi lokal Anda"; const char* to_email = "email tempat Anda ingin menerima pemberitahuan deteksi gerakan"; Server WiFiServer (80); // port yang digunakan untuk mendengarkan

dan informasi berikut dalam sketsa "Gsender.h".

const char* EMAILBASE64_LOGIN = "*** kode login Gmail Anda di BASE64 ***";

const char* EMAILBASE64_PASSWORD = "*** sandi Gmail Anda dikodekan di BASE64 ***"; const char* FROM = "*** alamat gmail anda ***";

PENTING: kode ini tidak bekerja dengan inti ESP8266 untuk Arduino versi 2.5.0. Untuk solusi sementara gunakan versi inti 2.4.2

LANGKAH 3.7 (hanya untuk perangkat master)

Setelah melakukan langkah sebelumnya 3.3, 3.4, 3.5 dan 3.6 memuat sketsa “presence_master.ino” pada mikrokontroler NANO dan sketsa “presence_web.ino” pada modul ESP8266

Langkah 4: Menguji Sistem

Untuk menguji apakah semuanya berfungsi seperti yang kita inginkan, sketsa "presence_master.ino" dapat dijalankan dalam mode uji.

Anda dapat menguji perangkat tertentu dengan dua cara:

CARA PERTAMA: jika Anda tidak menggunakan jaringan wifi, Anda harus mencari kode berikutnya di file "presence_master.ino", ubah menjadi "true" nilai awal untuk variabel "bool_test_activated" dan perbarui alamat salah satu perangkat untuk menguji di baris kode berikutnya dan memuat sketsa ke mikrokontroler ARDUINO di perangkat master.

boolean bool_test_activated = salah; // ubah ke true ke mode uji init

int device_to_test = 0; // alamat perangkat budak untuk diuji

Jangan lupa untuk mengubah nilainya menjadi false ketika Anda ingin keluar dari mode uji dan memuat ulang sketsa

CARA KEDUA: Jika Anda menggunakan jaringan wifi, Anda dapat menggunakan halaman web untuk mengaktifkan mode uji. Lihat langkah "Server Web"

Jika perangkat yang akan diuji akan mengirim kode kontrol IR, letakkan perangkat master atau slave di depan perangkat yang dikontrol IR (TV, radio …).

Mode ini bekerja dengan cara berikut:

  • MENGUJI CAHAYA. Lampu perangkat tertentu harus hidup dan mati setiap 10 detik.
  • MENGUJI KODE IR. Sketsa akan memilih secara acak kode IR yang sebelumnya diperkenalkan dan akan dikirim ke perangkat yang dikontrol IR setiap 10 detik. Jadi, Anda harus menguji apakah perangkat itu melakukan tindakan yang sesuai dengan kode IR yang diterima
  • MENGUJI DETEKTOR GERAKAN. Jika perangkat mendeteksi gerakan di depan sensor PIR-nya, perangkat akan mengirimkan sinyal ke perangkat master dan lampunya harus mulai berkedip beberapa kali.

Dalam video di akhir instruksi ini Anda dapat melihat mode uji berjalan.

Langkah 5: Server Web

Server Web
Server Web
Server Web
Server Web
Server Web
Server Web

Untuk mengontrol sistem dan menguji apakah semuanya berfungsi dengan baik, modul ESP8266 dikonfigurasi sebagai Server Web. Anda tidak memerlukan perangkat lunak tambahan lainnya untuk mengakses jaringan dari jarak jauh, cukup ketikkan IP router Anda di browser web. Di router Anda, Anda sebelumnya telah mengonfigurasi penerusan port untuk mengakses modul ESP8266 menggunakan IP lokal statis yang dikonfigurasi oleh Anda.

Modul ini terhubung ke mikrokontroler ARDUINO menggunakan protokol I2C.

Anda dapat melihat halaman web awal pada GAMBAR 1:

  • Bagian SISTEM NEGARA menunjukkan kepada kita informasi tentang sistem:

    • Tanggal dan waktu sistem. Sangat penting bahwa tanggal dan waktu tepat waktu
    • Keadaan simulator kehadiran (diaktifkan atau dinonaktifkan), tanggal dan waktu tindakan kehadiran terakhir dan alamat perangkat yang telah menjalankan tindakan (GAMBAR 2)
    • Keadaan pendeteksi gerakan (diaktifkan atau dinonaktifkan) dan riwayat deteksi gerakan oleh perangkat: penghitung dan tanggal dan waktu deteksi gerakan terakhir (GAMBAR 3) Pada gambar ini kita dapat melihat bahwa pada perangkat dengan alamat 1 telah terdeteksi 1 gerakan dan yang terakhir adalah pada 16:50:34
  • Bagian COMMANDS memungkinkan kita untuk melakukan hal berikut:

    • Untuk mengaktifkan simulator kehadiran
    • Untuk mengaktifkan detektor gerakan
    • Untuk memilih perangkat untuk memulai dan menghentikan pengujian (GAMBAR 4)
  • Bagian PRESENCE COMMAND memungkinkan kita untuk melakukan hal berikut:

    Untuk memperkenalkan atau memperbarui perencanaan simulasi kehadiran untuk perangkat tertentu. Pada GAMBAR 5 Anda dapat melihat cara memperbarui perencanaan simulasi kehadiran untuk perangkat alamat 1. Format string adalah sebagai berikut: (addr_device), (hour_init1), (end_init1), (hour_init2), (end_init2), (min_delay_ir), (max_delay_ir), (min_delay_light), (max_delay_light). Semua bilangan adalah bilangan bulat. Jika Anda telah memperkenalkan string yang valid, Anda akan melihat perencanaan simulasi kehadiran baru sebelum teks "LAST", jika tidak, Anda akan melihat pesan "LAST: NOT VALID"

  • Bagian PERINTAH KODE IR memungkinkan kami melakukan hal berikut:

    Untuk memperkenalkan atau memperbarui kode kontrol IR untuk perangkat tertentu. Pada GAMBAR 6 Anda dapat melihat cara memperbarui atau memperkenalkan kode kontrol IR baru untuk perangkat alamat 1. Format string adalah sebagai berikut: (addr_device), (IR_protocol), (protocol_bits_length), (index_IR_control_code), (IR_control_code). (IR_protocol) adalah string peka huruf besar/kecil yang hanya menerima nilai berikutnya (SONY, NEC, RC5, RC6, LG, JVC, WHYNTER, SAMSUNG, DISH, DENON, SHARP, LEGO_PF) dan (IR_control_code) adalah angka heksadesimal. Karena sistem dikonfigurasi untuk menyimpan 10 kode kontrol IR, (index_IR_control_code) adalah bilangan bulat antara 1 dan 10. Seperti sebelumnya, jika Anda telah memperkenalkan format string yang valid, Anda akan melihat kode kontrol IR baru sebelum teks "LAST", jika tidak, Anda akan melihat pesan "LAST: NOT VALID"

Untuk mengakses halaman web ini dari jaringan wifi lokal Anda, cukup ketikkan IP yang telah ditetapkan router Anda ke ESP8266 di browser web. Di semua gambar Anda dapat melihat bahwa IP yang diberikan oleh router saya adalah 192.168.43.120.

Untuk mengakses dari jarak jauh di luar jaringan wifi lokal Anda, Anda harus mengkonfigurasi di router Anda port yang akan Anda gunakan untuk mendengarkan data masuk dan mengarahkannya ke ESP8266 di jaringan lokal Anda. Setelah itu cukup ketik IP router Anda di browser web.

Langkah 6: Sebuah Contoh untuk Mengklarifikasi Semua

Image
Image
Sebuah Contoh untuk Memperjelas Semua
Sebuah Contoh untuk Memperjelas Semua

Saya telah merancang contoh spesifik untuk mengklarifikasi semuanya

Saya telah membuat perangkat berikut (GAMBAR 2)

  • Satu perangkat yang dikendalikan IR menggunakan mikrokontroler NANO, LED RGB di dalam bola pingpong dan satu modul penerima IR (GAMBAR 1). Saat kami menekan tombol kontrol dari 1 hingga 7 remote IR, bola pingpong berubah warna.
  • Perangkat utama (alamat 0)
  • Satu perangkat budak (alamat 1)

Dengan semua di atas kita akan menguji semua fitur proyek. Perencanaan simulasi kehadiran dapat berupa:

  1. Bola yang dikendalikan oleh perangkat budak akan berubah warna mulai pukul 17.00. sampai pukul 23.00 dan di pagi hari dari pukul 07.00 hingga 08.00 setiap interval acak menit antara 1 dan 1.
  2. Lampu yang dikendalikan oleh perangkat slave akan menyala dan mati mulai pukul 17.00. sampai pukul 23.00 dan di pagi hari dari pukul 7:00 hingga 8:00 setiap interval acak menit antara 1 dan 2
  3. Lampu yang dikendalikan oleh perangkat utama akan menyala dan mati mulai pukul 16:00 sore. hingga 1:00 pagi hari berikutnya setiap interval acak menit antara 1 dan 2

Setelah menjalankan sketsa "ir_codes.ino" kami memperoleh bahwa protokol IR yang digunakan oleh remote IR adalah "NEC", panjang kode IR adalah 32 bit dan kode kontrol IR untuk tombol antara 1 hingga 7 dalam format heksadesimal adalah:

TOMBOL 1 = FF30CF

TOMBOL 2 = FF18E7

TOMBOL 3 = FF7A85

TOMBOL 4 = FF10EF

TOMBOL 5 = FF38C7

TOMBOL 6 = FF5AA5

TOMBOL 7 = FF42BD

Anda dapat mengkonfigurasi sistem dengan dua cara:

CARA PERTAMA: menggunakan halaman web (lihat video di akhir instruksi ini)

CARA KEDUA: memperbarui file "ir_codes.ino" dan mengunggahnya setelah:

/******************************************/

/******* Kode kontrol IR *****************/ /********************* **********************/ // protocol_id, number_of_bits, 10 kode kontrol IR untuk perangkat master (alamat = 0) NEC, 32, 0xFF30CF, 0xFF18E7, 0xFF7A85, 0xFF10EF, 0xFF38C7, 0xFF5AA5, 0xFF42BD, 0, 0, 0, // protocol_id, number_of_bits, 10 kode kontrol IR untuk perangkat slave (alamat = 1) TIDAK DIKETAHUI, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, // protocol_id, number_of_bits, 10 kode kontrol IR untuk perangkat slave (alamat = 2) TIDAK DIKETAHUI, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, // protocol_id, number_of_bits, 10 kode kontrol IR untuk perangkat slave (alamat = 3) UNKNOWN, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, // protocol_id, number_of_bits, 10 kode kontrol IR untuk perangkat budak (alamat = 4) TIDAK DIKETAHUI, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 /************ *********************************/ /********* Akhiri kode kontrol IR ** ************/ /************************************ *********/

/************ PERENCANAAN SIMULASI KEHADIRAN ************/

0, 0, 16, 1, 0, 0, 1, 2, // perangkat master (alamat = 0) 7, 8, 17, 23, 1, 1, 1, 2, // perangkat budak (alamat = 1) Bola RGB 0, 0, 0, 0, 0, 0, 0, 0, // perangkat budak (alamat = 2) 0, 0, 0, 0, 0, 0, 0, 0, // perangkat budak (alamat = 3) 0, 0, 0, 0, 0, 0, 0, 0 // perangkat budak (alamat = 4) /************ SIMULATOR KEHADIRAN AKHIR ******** ************/

Direkomendasikan: