Isi kandungan:

ESP8266-01 IoT Smart Timer untuk Automasi Rumah: 9 Langkah (dengan Gambar)
ESP8266-01 IoT Smart Timer untuk Automasi Rumah: 9 Langkah (dengan Gambar)

Video: ESP8266-01 IoT Smart Timer untuk Automasi Rumah: 9 Langkah (dengan Gambar)

Video: ESP8266-01 IoT Smart Timer untuk Automasi Rumah: 9 Langkah (dengan Gambar)
Video: How to make smart switch 16CH Relay ESP8266 | Only use 2 pins ESP-01 | Project Blynk IOT @herukentofficial 2024, Julai
Anonim
ESP8266-01 IoT Smart Timer untuk Automasi Rumah
ESP8266-01 IoT Smart Timer untuk Automasi Rumah
ESP8266-01 IoT Smart Timer untuk Automasi Rumah
ESP8266-01 IoT Smart Timer untuk Automasi Rumah
ESP8266-01 IoT Smart Timer untuk Automasi Rumah
ESP8266-01 IoT Smart Timer untuk Automasi Rumah

KEMASKINI

2018-09-30: Firmware Dikemas kini ke Ver 1.09. Kini dengan Sokongan Asas Sonoff

2018-10-01: Percubaan Firmware Versi 1.10 tersedia untuk ujian pada ESP8266-01 dengan masalah

Dengan kata kunci baru iaitu Internet Of Things (IoT) dan Automasi Rumah, saya memutuskan untuk melihat item semasa di dalam dan di sekitar rumah saya yang dikendalikan melalui beberapa jenis peranti. Item yang menonjol adalah seperti berikut:

  • Pam kolam renang
  • Pengisi air kolam renang
  • Kolam renang dan lampu di sekitarnya
  • Lampu kabinet sistem TV / Hiburan

Item yang biasa digunakan untuk mengawal peranti ini adalah pemasa palam dinding standard. Setiap peranti dilengkapi dengan pemasa sendiri, dan semuanya terletak di lokasi yang berbeza. Oleh itu, mengapa saya memilih item ini untuk bermula dengan projek Internet of Things atau Automasi Rumah, anda mungkin bertanya?

Nah, tinggal di Afrika Selatan, bermaksud kegagalan kuasa adalah kejadian biasa. Dengan statistik rumah saya, saya mengalami 35 kegagalan kuasa pada tahun lalu, berjumlah 40 jam. Ini biasanya tidak menjadi masalah, kerana semua pemasa yang dipasang saat ini dilengkapi dengan bateri sandaran untuk penyimpanan masa semasa kegagalan kuasa. Tetapi ada beberapa masalah:

  • Bateri sandaran ini hanya bertahan satu atau dua tahun, maka pemasa harus diganti. Pemasa dibina sedemikian rupa sehingga pemasa perlu dihancurkan untuk mendapatkan akses ke bateri Ni-Cad dalaman.
  • Setiap kali kuasa mati, pemasa dengan bateri yang rosak perlu diprogramkan semula, dan masa yang ditetapkan.
  • Lokasi fizikal pemasa, apabila dipasang ke soket dinding, menjadikannya hampir mustahil untuk membaca paparan lcd melihat pemasa dari atas. Ini bermaksud bahawa pemasa perlu dicabut, atau saya harus berbaring di lantai untuk mengatur atau menyesuaikan pemasa selepas gangguan kuasa.

Kerana alasan di atas, saya memutuskan untuk menguji kemungkinan untuk mengganti pemasa dengan IoT Smart Timer, yang disambungkan ke rangkaian rumah tempatan saya.

Ideanya adalah untuk merancang pemasa yang berdiri sendiri, yang dapat:

  • Selaraskan waktu semasa secara automatik menggunakan internet (IoT)
  • Dikendalikan tanpa tindakan pengguna (Pintar)
  • Hidupkan / Matikan output mengikut masa yang ditetapkan (Pemasa)
  • Dapat diprogram dan dikendalikan melalui rangkaian (Automasi Rumah)

Langkah 1: Reka Bentuk ESP8266-01

Reka Bentuk ESP8266-01
Reka Bentuk ESP8266-01
Reka Bentuk ESP8266-01
Reka Bentuk ESP8266-01

Reka bentuknya dibuat menggunakan modul WiFi ESP8266-01, kerana inilah yang saya ada. Dalam bentuk termudah, ESP8266-01 mempunyai empat pin I / O:

  • GPIO0
  • GPIO2
  • TX
  • RX

Mod Power -up ESP8266-01

Keadaan logik pin I / O digunakan untuk menentukan mod mana ESP8266-01 akan dimulakan. Langkah pertama adalah menentukan pin I / O mana yang dapat digunakan untuk menggerakkan relay output.

  • Untuk pengaktifan normal, GPIO0 dan GPIO2 mesti diatur ke logik TINGGI. Oleh itu jelas bahawa kedua-dua pin ini tidak dapat digunakan sebagai output digital.
  • Pin Tx ditetapkan sebagai output semasa power up, dan output ditetapkan tinggi. Pin Tx ini juga menghantar beberapa data bersiri semasa power up. Oleh itu, pin ini juga tidak dapat digunakan sebagai output.

Satu-satunya pin yang tinggal adalah pin Rx. Pin ini ditetapkan sebagai input semasa power up, dan tidak harus ditarik tinggi semasa power up. Pin ini adalah yang paling sesuai digunakan sebagai pin output.

Boot-up

Untuk memastikan mod boot-up ESP8266-01 yang betul semasa power up, pin berikut ditarik tinggi menggunakan perintang 10K:

  • GPIO0
  • GPIO2
  • RST
  • CH_PD

Ini memastikan bahawa unit boot dengan betul setiap kali.

Relay Keluaran

RX adalah satu-satunya pin yang sesuai digunakan sebagai output. Pin ini digunakan untuk menggerakkan relay output melalui transistor NPN. Diod roda gila dan perintang asas transistor telah ditambah.

Butang MODE / SET

Butang disambungkan ke GPIO2, dan dengan butang dilepaskan, perintang 10K akan menarik tinggi GPIO2. Dengan butang yang ditekan, GPIO2 ditarik ke 0V.

Butang ini digunakan untuk dua fungsi:

  • Penyediaan awal untuk menyambungkan unit ke rangkaian WiFi tempatan
  • Untuk mengawal output secara manual semasa operasi biasa

LED Petunjuk

LED disambungkan ke GPIO0, dan menunjukkan yang berikut:

  • Semasa menghidupkan awal, berkedip CEPAT untuk menunjukkan mod Penyediaan WiFi
  • Berkelip perlahan apabila masa unit tidak ditetapkan
  • menunjukkan status Hidup / Mati relay output

Langkah 2: Bekalan Kuasa

Bekalan Kuasa
Bekalan Kuasa
Bekalan Kuasa
Bekalan Kuasa
Bekalan Kuasa
Bekalan Kuasa

Saya akan menggunakan IoT Smart Timer pada tahap voltan yang berbeza, oleh itu terdapat dua pilihan bekalan kuasa:

12 - 24V DC

Penukar DC-DC yang digunakan sesuai untuk bekalan sehingga 28V DC. Keluaran penukar boleh disesuaikan, dan diatur ke 5V. Ini perlu dilakukan sebelum modul ESP8266 disambungkan.

Dioda ditambahkan untuk melindungi dari kekutuban terbalik pada input bekalan.

220V ACUntuk pilihan ini, saya dapat memperoleh bekalan kuasa mod suis 220V / 5V kecil di eBay.

Tanpa mengira voltan input, IoT Smart Timer memerlukan dua bekalan kuasa:

Rel 5V

Dengan kedua pilihan tersebut, DC 5V diperoleh dari bekalan kuasa mod suis, dan bukan pengatur linier. Ini bermaksud bahawa terdapat sedikit haba yang dihasilkan oleh bekalan kuasa. 5V digunakan untuk menggerakkan relay output

Rel 3.3V

3.3V untuk ESP8266-01 diperoleh dari pengatur ASM1117 3.3. ASM1117 3.3 adalah pengatur linier, dan dapat menangani hingga 500mA. Walau bagaimanapun, haba yang dihasilkan akan ditentukan oleh voltan masukan ke ASM1117. Untuk mengurangkan haba, ASM1117 digerakkan dari rel 5V.

Penapisan Bunyi

Untuk mengurangkan riak voltan ke ESP8266-01, rel 3.3V dilengkapi dengan kapasitor 100 - 1000uf. Kedua-dua rel 5V dan 3.3V juga dilindungi dari gangguan frekuensi tinggi oleh kapasitor 0.1uf.

Langkah 3: Memasang PC Board

Memasang PC Board
Memasang PC Board
Memasang PC Board
Memasang PC Board
Memasang PC Board
Memasang PC Board

Papan PC dirancang dengan menggunakan Eagle versi perisian percuma. Ini adalah papan satu sisi, yang boleh dibuat dengan mudah di rumah menggunakan kaedah pemindahan toner.

Setelah Papan PC dibuat, pasang Papan PC dengan urutan berikut:

  • Pateri pengatur ASM1117 dan tiga komponen 0.1D SMD ke bahagian solder papan
  • Tambahkan pelompat tunggal ke bahagian komponen papan
  • Pateri perintang dan diod di tempatnya
  • Tambahkan tajuk untuk modul ESP8266-01
  • Tambahkan pin header untuk LED dan butang
  • Tambahkan terminal skru
  • Dengan menggunakan pin pengepala, sambungkan penukar DC / DC ke papan.
  • Pateri geganti ke tempatnya
  • Lengkapkan papan dengan memateri transistor dan kapasitor 100uf.

Setelah semua komponen disolder ke papan, sahkan semua titik solder, dan pastikan tidak ada litar pintas antara pad.

! ! ! NOTA PENTING ! ! ! Untuk memastikan bahawa Papan PC dapat menangani arus besar pada kenalan output, gunakan pemateri yang banyak pada trek antara kenalan geganti dan terminal skru

Langkah 4: Pengujian Papan PC

Pengujian Papan PC
Pengujian Papan PC

! ! ! Sebelum menggunakan kuasa! ! !

Keluarkan modul ESP8266-01 dari unit. Ini untuk mengelakkan pemanasan berlebihan pengatur ASM1117 sebelum bekalan 5V diselaraskan.

Tidak banyak ujian yang dapat dilakukan selepas pemasangan. Langkah yang paling penting adalah memastikan tahap voltan yang betul.

  • Sapukan 12 - 24V DC ke unit.
  • Ukur voltan keluaran penukar DC / DC
  • Laraskan output penukar antara 5.0 dan 5.5V.
  • Seterusnya, ukur bekalan 3.3V.
  • Sekiranya bekalan OK, keluarkan kuasa dari unit

Anda kini boleh memasukkan modul ESP8266-01 ke dalam tajuk yang disediakan.

! ! ! Catatan !

Setelah anda menguji Pemasa IoT dan berfungsi, gunakan pernis yang jelas untuk menutup bahagian pateri pada Papan PC. Ini akan mengelakkan pengoksidaan trek, dan memberikan penebat tambahan antara kenalan geganti dan litar lain

Langkah 5: Kandang

Pagar
Pagar
Pagar
Pagar
Pagar
Pagar

Kandang tidak begitu penting, selagi papan PC dan semua pendawaian dipasang dengan kemas dan selamat di dalamnya.

Untuk membuat pembinaan lebih mudah, saya telah membuat kabel dengan butang LED dan MODE / SETUP disambungkan kepadanya. Ini memberi saya lebih banyak kelonggaran dalam memasang LED dan butang ke kandang. Kabel ini kemudian dipasang ke header pada PC Board.

Foto menunjukkan salah satu unit 12V yang digunakan untuk lampu LED.

Langkah 6: Pengaturcaraan ESP8266-01 / NodeMCU

Mengaturcara ESP8266-01 / NodeMCU
Mengaturcara ESP8266-01 / NodeMCU
Mengaturcara ESP8266-01 / NodeMCU
Mengaturcara ESP8266-01 / NodeMCU
Mengaturcara ESP8266-01 / NodeMCU
Mengaturcara ESP8266-01 / NodeMCU

Untuk memprogram ESP8266-01, anda perlu menyediakan Arduino IDE terlebih dahulu. Saya tidak membahas butiran ini, kerana terdapat banyak Instruksional hebat yang tersedia dalam topik ini. Saya telah memilih pautan berikut di Instructables untuk rujukan, tanpa pesanan khusus kepada pengarang. Terima kasih atas arahan mereka masing-masing.

Ikuti ESP8266 dan Arduino IDE ini untuk menyediakan Arduino IDE untuk modul ESP8266..

Seterusnya, anda memerlukan programmer untuk memprogram ESP8266. Berikut adalah dua pautan:

Menggunakan Arduino Uno

Papan Pengaturcaraan DIY

Perpustakaan

Anda perlu memasang perpustakaan tambahan untuk dapat menyusun kod. Sekali lagi, rujuk Instruktif ini:

Pasang dan Gunakan Perpustakaan Arduino

Saya tidak ingat perpustakaan mana yang harus saya pasang, tetapi saya tahu WiFiManager mesti dimuat turun secara berasingan.. Saya telah memasukkannya ke dalam fail Libraries.zip.

Langkah 7: Persediaan Kali Pertama

Persediaan Kali Pertama
Persediaan Kali Pertama
Persediaan Kali Pertama
Persediaan Kali Pertama
Persediaan Kali Pertama
Persediaan Kali Pertama

Semasa digunakan untuk pertama kalinya, IoT Smart Timer perlu disambungkan ke rangkaian WiFi. Tugas ini dilakukan dengan menggunakan perpustakaan WiFiManager, jadi tidak ada SSID atau kata laluan yang perlu ditaip ke dalam kod.

Ikuti beberapa langkah berikut:

  • Hidupkan unit
  • LED akan mula berkelip dengan cepat
  • Tekan butang MODE / SETUP
  • Apabila LED mati, lepaskan butang
  • Tunggu beberapa saat, kemudian buka sambungan WiFi telefon pintar atau peranti anda
  • Kata kunci WiFi baru yang dipanggil IoT Timer akan kelihatan
  • Pilih pusat akses ini
  • Log masuk ke Pemasa IoT (kata laluan tidak diperlukan)
  • Tunggu sehingga peranti anda disambungkan ke rangkaian Pemasa IoT
  • Buka mana-mana penyemak imbas internet
  • Di bar alamat, taipkan alamat IP berikut - 192.168.4.1
  • Konsol WiFiManager akan dibuka
  • Pilih Konfigurasi WiFi
  • Senarai dengan titik rangkaian WiFi yang tersedia akan dipaparkan
  • Pilih rangkaian WiFi yang diperlukan, dan taip kata laluan
  • Seterusnya, masukkan alamat IP yang ingin anda gunakan untuk menyambung ke Pemasa IoT
  • Masukkan alamat IP Gerbang Lalai, diikuti dengan topeng
  • Setelah semua tetapan selesai, klik pada butang Simpan
  • Tetingkap baru akan dibuka untuk mengesahkan kelayakan baru disimpan
  • Tutup penyemak imbas anda

Setelah disimpan, rangkaian Pemasa IoT akan ditutup, dan unit akan cuba menyambung ke rangkaian WiFi anda.

  • Sambungkan Telefon Pintar atau peranti anda ke rangkaian WiFi yang sama dengan yang digunakan untuk Pemasa IoT.
  • Buka penyemak imbas anda
  • Di bar alamat, taipkan alamat IP Pemasa IoT anda
  • Halaman konfigurasi Pemasa IoT akan dibuka

Pemasa IoT anda kini siap digunakan

Langkah 8: Penyediaan Pemasa IoT

Penyediaan Pemasa IoT
Penyediaan Pemasa IoT
Penyediaan Pemasa IoT
Penyediaan Pemasa IoT
Penyediaan Pemasa IoT
Penyediaan Pemasa IoT
Penyediaan Pemasa IoT
Penyediaan Pemasa IoT

Halaman web bina dalam IoT Timer terdiri daripada lima bahagian:

Status

Ini menunjukkan nama peranti, serta masa dan status output pemasa

Selain itu, mod operasi pemasa ditetapkan dalam bahagian ini. Terdapat tiga mod:

  • Auto - Output akan dikendalikan oleh program pemasa yang berbeza
  • Hidup - Keluaran dipaksa AKTIF, dan akan tetap hidup sehingga mod diubah
  • Mati - Keluaran dipaksa MATI, dan akan berhenti sehingga mod diubah.

Program

Bahagian ini mengandungi masa Hidup dan MATI pemasa. Terdapat tujuh program yang tersedia, dan setiap program dapat disusun secara individu.

Sebelum menukar program seterusnya, tekan butang SIMPAN untuk menyimpan sebarang perubahan yang dibuat pada program semasa.

Fungsi Butang

Butang MODE / SETUP boleh digunakan untuk mengawal relay output semasa operasi normal. Di sini, pilih apa yang mesti dilakukan butang apabila ditekan.

Tandakan kotak "Fungsi Butang Kemas Kini" sebelum menekan butang Simpan untuk menyimpan tetapan baru.

Konfigurasi

Di sini, anda boleh menukar nama Pemasa IoT. Ini memudahkan untuk mengenal pasti antara beberapa pemasa.

Waktu pada unit diperoleh dari internet melalui pelayan masa NTP. Untuk menunjukkan waktu yang betul, harap kemas kini Zon Waktu ke wilayah Anda.

Sekiranya anda ingin menggunakan pelayan masa NTP yang lain, masukkan alamat IP baru di tempat yang disediakan.

Centang kotak "Update Configuration" sebelum menekan butang Simpan untuk menyimpan tetapan baru.

CATATAN

Semasa menukar Zon Waktu, waktu baru hanya akan ditetapkan dengan betul semasa pertanyaan waktu berikutnya. Unit ini diatur untuk mengemas kini waktu setiap 5 minit.

Selaraskan Masa

Kadang kala, pelayan masa NTP tidak bertindak balas pada setiap pertanyaan masa. Sekiranya masa terlalu lama untuk ditetapkan melalui pelayan NTP, anda boleh memasukkan waktu dan tarikh secara manual.

Tandakan kotak "Kemas kini Masa" sebelum menekan butang Simpan untuk menyimpan masa dan tarikh baru.

Penyegerakan Masa

Bahagian terakhir halaman menunjukkan waktu dan tarikh ketika terakhir waktu disegerakkan melalui pelayan masa NTP.

Disyorkan: