- Palam Pintar ESP untuk Automasi Rumah
- Bahan yang Diperlukan
- Program Palam Pintar untuk ESP8266
- Rajah Litar
- Sarung Bercetak 3D untuk Soket Palam Pintar
Sejak mula bekerja dengan Modul Wi-Fi ESP, saya selalu mahu membina soket Wi-Fi pintar yang membolehkan saya mengawal beban AC saya secara wayarles melalui telefon pintar. Walaupun produk seperti ini sudah tersedia di pasaran, seperti Moko WiFi Smart Plug atau Sonoff yang popular, mereka agak mahal dan di atasnya ia tidak memberi anda kegembiraan untuk membina produk anda sendiri. Oleh itu, dalam projek ini saya akan menunjukkan kepada anda bagaimana anda boleh membina Smart plug anda sendiri menggunakan modul Wi-Fi ESP8266. Peranti yang kami bina boleh dipasang dengan mudah ke soket AC yang keluar dan kemudian di hujung yang lain anda boleh menyambungkan muatan sebenar hanya dengan memasangkannya ke soket ini pada peranti kami. Selepas itu, pastikan suis utama soket anda sentiasa aktif, dan anda boleh mengawal Beban anda terus dari Telefon Pintar anda. Seronok kan? Oleh itu, mari masuk ke dalam projekā¦.
Palam Pintar ESP untuk Automasi Rumah
Kami telah membina sebilangan kecil projek automasi rumah, dari automasi Rumah berasaskan RF yang sederhana hingga automasi rumah yang dikendalikan oleh Pembantu Google kegemaran saya. Tetapi hari ini, keperluan projek ini sedikit berbeza.
Di sini, tujuannya adalah untuk menghidupkan / mematikan penghala Wi-Fi saya dengan hanya menggunakan Telefon Pintar langsung dari stesen kerja saya. Kerana kadang-kadang sambungan internet saya terputus dan ketika saya menghubungi pelanggan, jawapan standard yang saya dapat adalah "Tuan, saya minta maaf atas ketidakselesaan yang ditimbulkan. Mulakan semula penghala anda, dengan mematikannya dan kemudian menghidupkannya semula selepas beberapa saat. " Puffff! Bosan dengan berjalan ke router setiap kali, saya memutuskan untuk membina palam pintar wifi ini dan mengawal penghala saya menggunakannya.
Tetapi, tunggu sebentar! Saya tidak akan lagi mempunyai akses ke internet setelah mematikan penghala saya. Jadi bagaimana saya menghidupkannya kembali dari jauh? Nasib baik, ESP8266 kami dapat digunakan sebagai titik akses, yang bermaksud ia juga boleh bertindak seperti penghala dengan menghantar isyarat wi-fi sendiri. Isyarat Wi-Fi ini akan sentiasa ada selagi ESP8266 dihidupkan. Oleh itu, kami akan memprogramkan ESP8266 kami sebagai captive portal, dengan cara itu setelah kami menyambung ke isyarat Wi-Fi ESP, kami akan dibawa ke laman web dari mana kami dapat menghidupkan / mematikan muatan kami.
Bahan yang Diperlukan
1. Modul Wi-Fi ESP8266
2. Hi-Link AC ke DC Converter (3.3V)
3. Relay 3V
4. NPN Transistor BC547
5. Modul Pengaturcara FTDI
6. Perisai Wi-Fi Arduino
7. Menyambung wayar
Catatan: Kami menggunakan Perisai Wi-Fi Arduino ini yang kami bina lebih awal. Papan hanya digunakan untuk memuat naik kod Arduino ke dalam modul ESP8266. Sekiranya anda tidak mempunyai papan ini, anda boleh membuatnya menggunakan pautan penggunaan litar Programmer ESP8266 yang ringkas ini untuk memuat naik kod anda.
Program Palam Pintar untuk ESP8266
Sebelum kita melangkah lebih jauh, mari selami terus program ini untuk memahami bagaimana plug pintar DIY WiFi kita akan berfungsi. Seperti yang anda lihat di sini, kami memulakan program dengan memasukkan beberapa fail tajuk dan menyediakan pelayan rangkaian DNS
#sertakan
Kemudian kami menginisialisasi GPIO pin 2 ESP sebagai output yang akan digunakan untuk mengawal beban kami. Selepas itu kami mempunyai kod HTML yang panjang untuk laman web kami. Di sini kita mempunyai tiga skrin di laman web kita iaitu skrin Utama, skrin On dan layar Off.
String Home_Screen = "" // Halaman 1 - Kod HTML Skrin Utama "" " " + style_detials + "
""Selamat Datang - CircuitDigest
"" "; String ON_Screen =" "// Halaman 2 - Jika peranti dihidupkan" "" "+ style_detials +" ""Palam Pintar - Dihidupkan
"" "; String OFF_Screen =" "// Halaman 3 - Sekiranya peranti dimatikan " " " " + style_detials + " " "Palam Pintar - Dimatikan
" " ";Ketiga Laman Web ini apabila dibuka akan kelihatan seperti ini. Anda boleh memperibadikan laman web anda agar kelihatan seperti yang anda suka.
Kemudian kita mempunyai fungsi penyediaan kekosongan di mana kita menentukan ESP kita berfungsi sebagai titik Akses dan juga memberikan nama untuknya, di sini "ESP_Smart_Plug". Apabila ada pengguna yang tersambung ke Wi-Fi ini, mereka akan dibawa ke halaman utama yang telah kami tentukan sebelumnya.
pinMode (LED_BUILTIN, OUTPUT); // Pin LED sebagai output untuk pinMode petunjuk (GPIO_2, OUTPUT); // Pin GPIO sebagai output untuk kawalan Relay WiFi.mode (WIFI_AP); // Tetapkan ESP dalam mod AP WiFi.softAPConfig (apIP, apIP, IPAddress (255, 255, 255, 0)); WiFi.softAP ("ESP_Smart_Plug"); // Namakan rangkaian AP anda dnsServer.start (DNS_PORT, "*", apIP); webServer.onNotFound (() { webServer.sendHeader ("Lokasi", String ("http://www.circuitdigest-automation.com/home.html"), benar); // Buka Skrin Utama secara lalai webServer.send (302, "teks / biasa", ""); });
Di laman utama jika pengguna mengklik butang ON, halaman di layar akan dipaparkan dan pin GPIO 2 akan ditetapkan tinggi
// ON_Screen webServer.on ("/ relay_ON", () {// Jika menghidupkan Butang ditekan digitalWrite (LED_BUILTIN, LOW); // Matikan LED digitalWrite (GPIO_2, TINGGI); // Matikan Relay webServer.send (200, "text / html", ON_Screen); // Paparkan skrin ini });
Begitu juga jika pengguna mengklik butang mati, halaman skrin mati akan dipaparkan dan pin GPIO 2 akan ditetapkan RENDAH.
// OF_Screen webServer.on ("/ relay_OFF", () {// Jika mematikan Butang ditekan digitalWrite (LED_BUILTIN, TINGGI); // Hidupkan LED digitalWrite (GPIO_2, RENDAH); // Hidupkan Relay webServer.send (200, "text / html", OFF_Screen); // Paparkan skrin ini });
Kod lengkap bersama dengan fail perpustakaan boleh dimuat turun sebagai fail ZIP dari pautan yang diberikan di bawah. Sekarang kod kami sudah siap, kami boleh memuat naiknya ke modul ESP kami dengan hanya mengklik butang muat naik dan kemudian menunggu kod tersebut dimuat naik. Program lengkap bersama fail perpustakaan boleh dimuat turun dari pautan di bawah
ESP8266 Smart Plug - Muat turun Kod Arduino
Mereka yang mempunyai perisai Wi-Fi boleh memasukkan modul anda bersama-sama seperti yang ditunjukkan di atas dan menyambungkannya ke komputer anda untuk mula memprogram ESP8266 kami menggunakan Arduino IDE. Orang yang tidak mempunyai papan ini boleh menggunakan gambarajah litar seperti yang disebutkan sebelumnya.
Setelah kod diunggah, cari rangkaian Wi-Fi di telefon anda dan anda akan mendapat isyarat bernama "ESP_Smart_Plug". Sambungkan ke sana dan anda akan dibawa ke laman web yang baru kami reka. Di sini apabila anda menekan butang matikan, anda harus melihat LED di papan ESP kami mati dan apabila anda menekan butang hidupkan, LED akan menyala semula.
Setelah mengesahkan kod beberapa kali lagi, kami tidak lagi memerlukan papan pengaturcara untuk projek ini. Sekarang, kita harus membina litar untuk mengaktifkan modul ESP kita secara langsung dari voltan utama dan menggunakan pin GPIO untuk menukar relay. Untuk membina litar ini, saya menggunakan modul penukar AC-DC dari Hi-Link yang menukar voltan utama AC kepada 3.3V DC dengan arus keluaran 900mA yang cukup mencukupi untuk menghidupkan modul ESP melalui sesalur. Relay sisi keluaran adalah relay 3.3V yang dapat dikawal oleh pin GPIO ESP melalui transistor seperti BC547 ini. Kami juga memerlukan 1k Resistor untuk menghadkan arus asas transistor kami.
Rajah Litar
Gambarajah litar lengkap untuk palam pintar Wi-Fi akan kelihatan seperti ini.
Kekuatan AC untuk menggerakkan projek kami akan diperoleh melalui palam ini. Komponen lain adalah yang menjelaskan eariler. Perkara penting lain yang perlu ditumpukan adalah menjaga GPIO-0 dan GPIO-2 tinggi semasa boot. Jika tidak, modul ESP akan memasuki mod pengaturcaraan dan kod keluar tidak akan berfungsi. Oleh itu saya telah menggunakan perintang 10k (nilai antara 3.3k hingga 10k boleh digunakan) untuk menarik pin GPIO tinggi secara lalai. Sebagai alternatif anda juga boleh menggunakan transistor PNP sebagai pengganti BC547 dan menukar geganti dari sisi tinggi. Dengan rajah litar siap, saya merancang bagaimana menyolder komponen ini dengan menjaga ukuran papan sekecil mungkin sehingga sesuai dengan selongsong kecil dan disisipkan dengan pematerian papan.
Sarung Bercetak 3D untuk Soket Palam Pintar
Seterusnya saya mengukur dimensi papan menggunakan vernier saya dan juga mengukur dimensi palam dan soket untuk merancang selongsong untuk palam pintar saya. Reka bentuk saya kelihatan seperti ini di bawah ini setelah ia selesai.
Setelah saya berpuas hati dengan reka bentuk, saya mengeksportnya sebagai fail STL, memotongnya berdasarkan tetapan pencetak dan akhirnya mencetaknya. Sekali lagi fail STL juga tersedia untuk dimuat turun dari thingiverse dan anda boleh mencetak casing anda sendiri dengan menggunakannya.
Setelah cetakan selesai saya cukup berpuas hati dengan hasilnya. Kemudian saya meneruskan dengan menambahkan wayar ke papan saya dan juga memasukkannya ke terminal kuasa dan soket. Dengan sambungan yang lengkap, saya memasangkan litar ke dalam selongsong saya dan semuanya sesuai untuk anda lihat di sini.
Dengan palam pintar saya siap untuk bertindak, saya pergi ke penghala saya, mengesan wayarnya untuk mencari penyesuainya. Kemudian saya mengeluarkannya dari soket dan menyambungkan palam pintar ke soket yang sama dan menghidupkannya. Sekarang saya memasangkan penyesuai kembali ke palam pintar kami dan seperti itu saya selepas ini dapat mengawalnya dari telefon saya. Dengan cara yang sama anda dapat mengawal sebarang beban AC kuasa rendah di rumah anda dan bersenang-senang.
Kod lengkap boleh dimuat turun dari sini dan video yang berfungsi untuk soket kuasa pintar DIY ini terdapat di bahagian bawah halaman ini. Harap anda menikmati projek ini, beritahu saya di bahagian komen apa yang akan anda automatikkan dengan peranti ini. Sekiranya anda mempunyai sebarang pertanyaan, tinggalkan di forum dan saya akan berusaha sebaik mungkin untuk menjawabnya.