Isi kandungan:

Jauh TV Kawalan Suara Alexa ESP8266: 9 Langkah
Jauh TV Kawalan Suara Alexa ESP8266: 9 Langkah

Video: Jauh TV Kawalan Suara Alexa ESP8266: 9 Langkah

Video: Jauh TV Kawalan Suara Alexa ESP8266: 9 Langkah
Video: Guna Google home hidupkan lampu dan kipas di rumah, smart home, smart switch 2024, November
Anonim
Jauh TV Kawalan Suara Alexa ESP8266
Jauh TV Kawalan Suara Alexa ESP8266

Adakah seseorang di rumah anda kehilangan alat kawalan jauh, adakah anda berjalan ke bilik kosong untuk mendapati TV terbakar. Bateri mula gagal dan tiada kawalan dari bahagian belakang bilik. Kini anda dapat mengawal TV, DVR, apa sahaja dengan kawalan IR anda boleh menangkap isyarat IR. Saya membuat sistem ini untuk mengawal DVR SKY saya dengan antara muka suara yang sederhana.

Perkakasan yang diperlukan:

  1. Amazon Echo atau Dot
  2. Penghala wifi yang boleh dihantar ke hadapan (penyedia perkhidmatan saya melakukan ini untuk saya)
  3. Arduino NANO ditukar menjadi 3V3
  4. ESP8266 -01 atau yang serupa
  5. Modul atau litar pemancar IR
  6. Modul penerima IR jika anda ingin menangkap kod.

Perisian dan perkhidmatan yang diperlukan:

  1. Arduino IDE, saya menggunakan 1.6.11
  2. Akaun kemahiran Amazon Alexa (percuma)
  3. Akaun Amazon AWS (Tahap percuma tetapi memerlukan kad kredit untuk membuka akaun) atau pelayan alternatif.

Langkah 1: Persediaan Kemahiran Alexa

Persediaan Kemahiran Alexa
Persediaan Kemahiran Alexa
Persediaan Kemahiran Alexa
Persediaan Kemahiran Alexa
Persediaan Kemahiran Alexa
Persediaan Kemahiran Alexa

Kit kemahiran Alexas mengambil perintah suara dan menyaringnya menggunakan senarai 'nilai'

Setelah didaftarkan:

Di konsol Pembangun Amazon, pilih tab Alexa> Alexa Skills Kit [Bermula]

[Tambahkan Kemahiran baru]

Jenis kemahiran: Model Interaksi Khusus

Bahasa: pilih yang betul, apabila set ini ke Bahasa Inggeris (AS) ia tidak akan bertindak balas!

Nama: ini tidak penting sekarang kerana kami tidak menerbitkan.

Nama Pemohon:, pilih nama pendek, kata yang digunakan untuk membuka aplikasi.

[SETERUSNYA]

Skema Maksud, tampal dalam kod

Jenis Slot Tersuai {Tambah Jenis Slot], masukkan EFFECT_ON_TV

dalam nilai Slot, tampal dalam kod

Contoh ucapan, letakkan, TVCommandIntent tv {TVAction}

[SIMPAN], pada halaman kemahiran seterusnya, kita harus menambahkan pautan ke kod yang akan kita jalankan ketika "Niat" dipicu oleh kata permulaan aplikasi "clicker" atau selepas itu oleh "tv {nilai slot}".

Kami akan kembali ke Alexa setelah kami menyiapkan skrip python pelayan Lambda.

Langkah 2: Skrip Python Server AWS Lambda

Mendaftar untuk Tahap Percuma AWS, saya bimbang ini mungkin menelan belanja wang sebenar tetapi setelah menggunakannya seketika dan membaca forum, had penggunaannya sangat tinggi untuk penggunaan peribadi dan pembangunan, ia tidak akan pernah mencapai titik caj. Terdapat alternatif untuk menggunakan pelayan HTTPS anda sendiri dan mungkin ini adalah sesuatu yang boleh dilakukan oleh esp8266, satu lagi arahan!

Ini adalah kod yang dijalankan ketika Nama Peminta diucapkan (mis. "Alexa open clicker") dan menerima kata ajaib dari Alexa. Setelah aplikasi dimulakan, anda hanya perlu mengatakan "main tv, lompat tv lima" dan Alexa akan menghantar "main", "lompat 5" ke skrip python ini. Aplikasi akan habis jika tidak ada respons selepas beberapa ketika.

Dalam Perkhidmatan AWS, pilih lokasi anda terlebih dahulu, di kanan atas ada pilihan.

untuk AS pilih N Virginia, untuk EU pilih Ireland.

pilih Lambda dari tajuk Compute.

[Buat Fungsi Lambda]

[Fungsi Kosong]

Konfigurasikan pencetus: klik pada kotak putus-putus dan pilih Alexa Skills Kit

[SETERUSNYA]

Konfigurasi Fungsi

Namakan apa sahaja yang anda mahukan

Penerangan, terpulang kepada anda

Runtine: Python 2.7

tampal dalam kod python,

dalam kod itu alamat HTTP URL perlu ditukar menjadi alamat ip luaran anda sendiri kemudian

pautan = "https://185.255.255.255:777/text?data=" + favourite_warna

yang lebih rendah di layar adalah PERANAN, klik pada tab dan pilih Pilih Peranan tersuai

Ini akan membuka skrin baru dan klik izinkan., Ia kembali ke layar fungsi Konfigurasi dengan pelaksanaan dasar Lamda dipilih sebagai peranan yang ada.

[SETERUSNYA] ulasan, tekan [Buat Fungsi] dan semestinya menyusun dan memberi anda nombor ARN. COPY kod ini dan kami akan memasukkannya ke dalam kit kemahiran alexa.

Langkah 3:

Langkah 4: Tetapkan Pautan Kit Kemahiran Alexa ke AWS Lambda

Tetapkan Pautan Kit Kemahiran Alexa ke AWS Lambda
Tetapkan Pautan Kit Kemahiran Alexa ke AWS Lambda

Dalam kit kemahiran Alexa, pilih halaman Konfigurasi, menuju Global Fields dan pilih AWS Lambda dan wilayah anda dan tampal kod ARN ke dalam kotak, [SETERUSNYA], dalam ujian, periksa ENABLED dipilih.

KAMI selesai di sini buat masa ini, sekarang untuk beberapa perkakasan.

Langkah 5: Penukaran Arduino NANO 3V3

Penukaran Arduino NANO 3V3
Penukaran Arduino NANO 3V3
Penukaran Arduino NANO 3V3
Penukaran Arduino NANO 3V3

ESP8266 berjalan dari 3v3 jadi anda menjalankannya dari pengatur luaran atau menukar nano. Saya telah menggunakan klon nano dengan cip usb CH340. Saya mempunyai dua susun atur pcb berbeza yang saya tahu, tetapi semoga ini dapat merangkumi kebanyakan susun atur.

Kita perlu mengganti pengatur 5V dengan pin 3v3 yang serasi dengan pin, 1117-3. kemudian hala masuk 5V dari soket usb hanya ke pengatur dan sambungkan semua yang lain ke outputnya. mujurlah ini dapat dicapai dengan melepaskan dioda input menggantikan pengatur dan menambahkan satu wayar dari sisi input diod ke Vin pada papan nano.

periksa anda boleh memprogramkan nano selepas penukaran.

Langkah 6: Kod NANO

Kod NANO
Kod NANO
Kod NANO
Kod NANO

Ini menggunakan kod untuk remote SKY UK saya, mungkin model tertentu dan ada baiknya memeriksa kod anda berfungsi dalam lakaran berasingan yang tidak dikaitkan dengan esp8266.

Saya menggunakan perpustakaan IRremote oleh shirriff Versi 2.0.1

Gunakan contoh IRrecord untuk menangkap arahan jauh yang memerlukan modul penerima IR atau anda mungkin menemui kod anda di web? Saya tidak akan membahasnya di sini tetapi di sinilah anda boleh memilih apa yang anda kendalikan dan bagaimana.

Sambungkan pemancar IR yang tersedia di ebay atau bina. Anda harus menggunakan LED 850nm kerana ini adalah yang paling biasa pada penerima. Perpustakaan IR menggunakan D3 sebagai pin TX-nya

Perkataan alexa diteruskan ke nano, jadi dari sinilah nano dengan kawalan suara.

Langkah 7: ESP8266

ESP8266
ESP8266
ESP8266
ESP8266
ESP8266
ESP8266

Terdapat banyak modul ESP8266, saya menggunakan satu yang perlu saya kawat di bawah mikroskop, ESP8266-01 mempunyai header 2x4 dan semua pin yang anda perlukan dan harganya murah. Banyak contoh di web,. Perjalanan saya, GPIO_0 perlu disambungkan ke gnd semasa power up (kemudian boleh melayang) ketika memprogram, pin konfigurasi, ditarik tinggi secara dalaman. Setelah diprogram biarkan GPIO_0 terapung dan hidupkan semula. CHPD menyambung ke V + secara kekal.

Pengurus dewan di arduino 1.6.11 tidak mempunyai pautan esp8622, dalam Arduino IDEfile> pilihan> URL Pengurus Papan tambahan, tambahkan:

arduino.esp8266.com/stable/package_esp8266c…

kemudian goto pengurus papan dan cari pakej esp8266. ini sekarang akan memberi anda senarai besar papan esp8266, pilih Alat> Papan> Modul Generik ESP8266. Dengan menggunakan modul usb to uart, anda kini dapat memprogram bahagian esp dengan esp8266_server_text. Kuasa dengan 3V3, sambungkan TX-RX, RX-TX dan Gnd.

Anda perlu memasukkan SSID dan kata laluan rangkaian anda ke dalam skrip dan port yang akan anda tetapkan untuk meneruskan port, misalnya 777.

Anda boleh menjalankan kod dengan mengaktifkan semula esp semasa disambungkan ke penukar usb ke uart dan tetingkap bersiri arduino (9600 baud) harus memaparkan alamat ip tempatan modul esp. masukkan ini ke dalam kod dan atur semula program.

Langkah 8: Persediaan Rangkaian

Persediaan Rangkaian
Persediaan Rangkaian
Persediaan Rangkaian
Persediaan Rangkaian

Oleh itu, untuk membolehkan panggilan URL Lambda menyambung ke pelayan HTTP ESP, kami perlu menetapkan penghala anda ke pemajuan port. Saya mendapat alamat ip luaran saya dari https://www.whatsmyip.org/, saya menggunakan pautan gelombang mikro sehingga penyedia saya mempunyai penghala dan saya harus meminta pemajuan port dari mereka. Saya harus memberikan alamat IP ESP8266 di rangkaian dan port yang saya pilih, misalnya 777. Alamat IP luaran perlu dimasukkan ke dalam skrip lambda python dan alamat esp tempatan anda akan ditunjukkan semasa anda menjalankan kod esp8266 melalui pautan usb ke uart.

Modul ESP pada sambungan usb ke uart harus menunjukkan pada terminal perkataan masuk dari lambda.

Sambungkan ESP ke nano seperti ditunjukkan pada siri lembut 3v3, gnd dan TX ke nano D2. jika anda mempunyai nano di usb untuk paparan komersil bersiri pada epc ini, ia harus menunjukkan apa yang diterimanya dari esp.

Sekiranya ESP tidak tersambung ke rangkaian atau tidak menjawab panggilan URL dari lambda, lambda akan tamat masa dan Alexa melaporkan tindak balas kemahiran yang gagal

Langkah 9: Alexa Open Clicker Tv Jeda

Alexa Open Clicker Tv Jeda
Alexa Open Clicker Tv Jeda

Saya meletakkan modul di sebelah penerima tetapi dengan output IR kuasa yang lebih tinggi ia boleh berada di mana sahaja di dalam bilik. Saya menggunakan penyesuai kuasa jenama terkenal usb untuk menyalurkan kuasa melalui usb.

Duduk dan sebut "Alexa buka Clicker"

panduan TV

tv turun

pilih tv

main tv

lompat tv lima

untuk melonjak ke hadapan beberapa minit, makro akan menjadi 30x menunggu masa yang diminta dan kemudian bermain.

Iklan UK lebih kurang lima minit.

Untuk keluar dari aplikasi, katakan Alexa berhenti.

Nikmati.

Disyorkan: