Jauh IR Web Dengan Esp8266 (NodeMCU): 4 Langkah
Jauh IR Web Dengan Esp8266 (NodeMCU): 4 Langkah
Anonim
Jauh IR Web Dengan Esp8266 (NodeMCU)
Jauh IR Web Dengan Esp8266 (NodeMCU)

Masalah

Terdapat tiga alat kawalan jauh di atas meja ruang tamu. Untuk menonton rancangan kegemaran anda, anda mesti mengikut urutan khas menekan butang sekurang-kurangnya dua daripadanya. Dan rakan sebilik anda, ibu, teman wanita tidak pernah mengingati mereka..

Penyelesaian

Anda membeli Logitech Harmony;-)

Tetapi jika anda tidak mahu membelanjakan wang ini, anda boleh membina sesuatu yang serupa dengan di bawah $ 10. Dengan menyambungkan LED inframerah ke ESP8266 (seperti Arduino tetapi dengan WiFi di atas kapal) kita dapat dengan mudah membina peranti yang dengannya kita boleh mengawal peranti dengan laman web kecil dari komputer atau telefon bimbit mana pun di WiFi anda.

Apa yang kamu perlu

  • Lembaga pengembangan NodeMCU (mereka menghantar dari Asia dengan harga <5 €)
  • Sensor IR (OS-1838B atau TSOP38238)
  • LED IR
  • Perintang 100Ω
  • Transistor NPN (iaitu 2N2222)
  • sekeping kecil prototaip PCB
  • penyambung empat pin yang sesuai pada NodeMCU (iaitu penyesuai kuasa cakera liut)

Sekiranya anda mempunyai alat kawalan jauh yang lama, anda mungkin boleh menggunakan LED IR dan transistor daripadanya.

Langkah 1: Menyusun Perkakasan

Memasang Perkakasan
Memasang Perkakasan
Memasang Perkakasan
Memasang Perkakasan
Memasang Perkakasan
Memasang Perkakasan
Memasang Perkakasan
Memasang Perkakasan

Pasang komponen pada sekeping kecil pada sekeping kecil papan litar prototaip dan sambungkan komponen seperti yang ditunjukkan dalam rajah.

Bergantung pada LED, perintang pelindung mungkin tidak diperlukan. Sekiranya anda mendapati bahawa anda harus menghalakan dengan betul atau berada sangat dekat dengan peranti, anda mungkin boleh mengeluarkannya.

Saya menyambungkan semuanya ke palam yang saya lepaskan dari penyesuai kuasa PC yang rosak (yang satu untuk cakera liut).

Langkah 2: Memasang Aplikasi di NodeMCU

Siapkan persekitaran anda untuk menyusun program untuk esp8266 dengan Arduino IDE: [https://github.com/espressif/arduino-esp32

Klon atau Muat turun kod sumber aplikasi dari repositori github

Di Arduino IDE, pasang perpustakaan IRremoteESP8266 (Menu: Sketch -> Manage Libraries). Salin fail config.h.contoh dan beri nama salinan config.h ini. Anda sekurang-kurangnya mesti menentukan SSID dan Kata Laluan WiFi anda di config.h untuk dapat menyambung ke Pelayan Web. Sketsa Arduino kini boleh disusun dan dimuat naik. Sambungkan papan pemecah yang anda buat ke 3V, Ground, D5, D6.

Sekiranya semuanya berfungsi dan anda menjalankan cip yang disambungkan ke Arduino IDE, anda harus memaparkan alamat IP yang dijalankan oleh pelayan di monitor bersiri.

Langkah 3: Menyesuaikan halaman HTML untuk Mengawal NodeMCU

Proses dalam langkah ini juga ditunjukkan dalam video.

Dalam direktori kod sumber juga terdapat 'ir.html'. Sekiranya dikonfigurasi dengan betul, ini akan 'bercakap' dengan NodeMCU.

Jadi langkah pertama adalah memberitahu fail di mana alamatnya dapat mencari NodeMCU. Buka fail ir.html dalam penyunting teks dan cari baris yang kelihatan seperti ini:

var host = '192.168.2.121';

Tukar nilai antara tanda centang agar sesuai dengan alamat yang dicetak oleh pelayan web pada monitor bersiri setelah memulakan.

Rakaman Tekan Butang RekodMenunjuk alat kawalan jauh pada sensor dan tekan butang yang dikehendaki pada alat kawalan jauhSetelah itu di bawah butang Rekod, senarai nombor yang panjang harus muncul. Ini adalah masa isyarat untuk butang yang anda tekan pada alat kawalan jauh.

Menetapkan Perintah

Sekarang kita mahukan cara untuk menghantar isyarat dengan jangka masa dari cip itu sendiri. Untuk itu kita mesti menambah masa yang baru kita rakam ke senarai isyarat yang diketahui. Salin nilai (termasuk tanda kurung siku) yang diberikan oleh proses rakaman kepada anda dan masukkan baris baru dengan nama dan nilai dalam fail ir.html setelah baris kelihatan seperti ini:

isyarat var = {

"pgr1 btn": [1, 2, 3], Ganti 1, 2, 3 dengan nilai yang direkodkan dan jangan lupa koma selepas tanda kurung di sekitarnya. Untuk benar-benar menambah butang, kita juga harus menambah perintah. Perintah boleh terdiri daripada banyak isyarat kerana kita mungkin harus 'menekan' banyak butang pada alat kawalan jauh, iaitu 1 dan 2 untuk mencapai saluran 12 di TV. Ini juga memungkinkan untuk mengawal beberapa peranti dengan satu arahan. Cari garis yang kelihatan seperti ini

"Suara hidup / mati": ["bisu"], Salin baris itu dan ubah teks "Sound on / off" agar sesuai dengan yang anda mahu paparkan pada butang baru. Tukar nama "bisu" ke nama tanda` yang anda tambahkan. Oleh itu, hasilnya boleh:

"HBO": ["prg 1 btn"], Sekiranya anda ingin melaksanakan beberapa isyarat, tambahkan seperti ini:

"HBO": ["prg 1 btn", "prg 2 btn"],

Langkah 4: Penggunaan

Setelah memasukkan urutan isyarat yang diinginkan ke dalam fail HTML, anda boleh menyalinnya ke komputer atau peranti mudah alih yang mempunyai penyemak imbas dan disambungkan ke WiFi yang sama dengan NodeMCU.

Disyorkan: