Manufaktur industri
Industri Internet of Things | bahan industri | Pemeliharaan dan Perbaikan Peralatan | Pemrograman industri |
home  MfgRobots >> Manufaktur industri >  >> Manufacturing Technology >> Proses manufaktur

Pohon Natal Bertenaga Alexa

Komponen dan persediaan

Amazon Alexa Amazon Echo
× 1
Arduino Yun
× 1
Kabel jumper (generik)
× 1
Strand LED WS2811
× 1

Tentang proyek ini

Di sini Anda dapat menemukan sumber keterampilan Alexa khusus yang mengontrol untaian LED di pohon Natal. Repo ini berisi:

  • Kode Java untuk fungsi AWS Lambda yang merupakan titik akhir untuk keterampilan Alexa
  • Sketsa Arduino yang berada di antara AWS IoT dan untaian LED WS2811. Sketsa dioptimalkan untuk dijalankan di Arduino Yun.

Pengaturan Perangkat Keras

Jika Anda ingin membangun pohon Natal Anda sendiri yang dikendalikan Alexa dengan bantuan sumber-sumber ini, Anda memerlukan perangkat keras khusus. Proyek ini menggunakan komponen berikut:

  • 1 x Arduino Yun dengan Linino OS
  • 2 x WS2811 untai LED dengan masing-masing 50 LED
  • 3 x Kabel jumper
  • 1 x Adaptor catu daya dan konektor DC 2,1 mm x 5,5 mm
  • 1 x kabel Micro-USB ke USB
  • 1 x Amazon Echo atau Amazon Dot atau Amazon Tap

Solusi Perangkat Lunak

Gambar berikut mengilustrasikan perjalanan pulang pergi untuk menangani permintaan pengguna suara.

Solusi ini memanfaatkan banyak layanan cloud AWS untuk berkomunikasi dengan backend perangkat keras - pohon Natal. Satu-satunya hal yang benar-benar perlu Anda siapkan adalah fungsi Lambda, bucket S3 yang berisi file MP3 dan peran IAM dengan izin AWS IoT dan Dynamo. Tabel di Dynamo serta bayangan benda di AWS IoT akan dibuat pada pemanggilan keterampilan pertama dengan cepat.

Pahami apa yang terjadi pada permintaan pengguna suara yang diberikan ke perangkat Alexa:

  • Pengguna berbicara dengan Alexa kepada " buka pohon natal " . Keajaiban ASR dan NLU terjadi di layanan cloud Alexa.
  • Intent diberikan ke kode keterampilan yang dihosting di AWS Lambda. Anda dapat menemukan kodenya di repo ini.
  • Jika pengguna hanya menginginkan tindakan seperti " nyalakan pohon " atau " mulai pertunjukan " tanpa memberikan keterampilan ini warna untuk pohon, ia akan mencari set warna terakhir di Dynamo DB. Jika ada warna yang diberikan, keterampilan akan bertahan informasi di tabel yang sama. Beginilah cara Alexa mengingat set terakhir warna pohon. Kedua, tindakan dan perintah warna ditulis ke bayangan benda di AWS IoT.
  • Jika bayangan diperbarui, pesan MQTT diekspos ke topik delta dari hal yang sesuai. Arduino Yun berlangganan topik itu. Catatan samping :Nama benda yang dibuat dengan kode keterampilan sama dengan id keterampilan yang masuk (semua titik diganti dengan tanda hubung). Ini mungkin membantu Anda jika Anda ingin membangun kembali proyek.
  • Arduino melakukan polling pada topik Delta sehingga menerima perintah sebagai pesan MQTT dalam format JSON. Informasi diekstraksi dan sketsa Arduino melakukan tindakan dengan untaian LED sesuai dengan apa yang diberikan dalam pesan (warna baru, acara Natal, hidup, mati).
  • Akhirnya, Arduino mengirimkan pesan MQTT ke topik Pembaruan dari hal AWS IoT untuk memberi tahu dunia bahwa tindakan tersebut telah dilakukan.
  • Pesan dikonsumsi oleh layanan AWS IoT dan informasi status yang terkandung ditulis kembali ke bayangan benda sebagai dilaporkan negara. Dimungkinkan juga untuk memiliki keterampilan membaca status pohon terakhir dari bayangan benda alih-alih mencarinya di Dynamo DB. Alasan untuk pendekatan mundur ini adalah MQTT tidak sinkron dan kami tidak dapat mengandalkan Arduino untuk memberikan tanggapan segera.
  • Sebenarnya langkah ini terjadi tepat setelah langkah 3) karena keterampilan dipisahkan dari bagian belakang perangkat keras dengan sengaja. Jadi segera setelah memperbarui bayangan benda di AWS IoT, kode keterampilan mengembalikan teks ucapan keluaran dan opsional SSML tag dengan konten audio. MP3 yang merupakan bagian dari pemutaran Alexa (suara Natal) disimpan dalam ember AWS S3.
  • Alexa membacakan teks yang dikembalikan oleh keterampilan dan memutar ulang audio sebagai tanggapan.

Indikasi Status

Saat Arduino melakukan tugasnya, Arduino memberi tahu Anda tentang statusnya saat ini melalui LED pertama di untai.

  • lampu berkedip merah satu kali menunjukkan kegagalan penyiapan koneksi AWS IoT
  • lampu berkedip merah dua kali menunjukkan upaya koneksi AWS IoT yang gagal
  • lampu berkedip merah tiga kali menunjukkan konfigurasi koneksi AWS IoT yang gagal
  • lampu senter hijau menunjukkan koneksi yang berhasil ke AWS IoT
  • lampu senter biru menunjukkan polling konstan ke topik AWS IoT
  • lampu senter kuning menunjukkan kesalahan saat melakukan polling topik AWS IoT

Saat startup Anda mungkin melihat senter merah untuk jangka waktu yang diperlukan Arduino untuk terhubung ke WiFi. Jika Wi-Fi terhubung, ada lampu senter hijau diikuti dengan lampu biru yang berkedip terus-menerus untuk menunjukkan bahwa pohon siap menerima perintah.

Jika kuning berkedip, topik AWS IoT tidak dapat dijangkau. Jika itu terjadi (mis. Arduino kehilangan koneksi WiFi), ia terus mencoba sembilan kali lagi hingga secara otomatis mencoba menyambung kembali. Konon, setelah sepuluh kali senter kuning harus ada senter merah/hijau untuk kemajuan penyambungan kembali. Setelah Arduino terhubung kembali ke WiFi dan AWS IoT tercapai lagi, lampu senter biru muncul.

Kode

Pohon Natal bertenaga Alexa
Di sini Anda dapat menemukan sumber keterampilan Alexa khusus yang mengontrol untaian LED di pohon Natal. Suntinghttps://github.com/KayLerch/alexa-xmas-tree

Skema


Proses manufaktur

  1. Kertas Pembungkus
  2. Santas New Helper:Peran Internet of Things di Natal
  3. Dev kit mempercepat integrasi Alexa
  4. Apakah 2017 tahun antarmuka suara?
  5. Amazon Alexa Mengontrol Chromecast
  6. MayorTom:Alexa Voice Controlled ARDrone 2.0
  7. Rumah Hias Natal dengan Pohon &Ornamen Kayu Natal
  8. Apa Itu Analisis Pohon Kesalahan Dan Bagaimana Cara Melakukannya
  9. Aktifkan Kontrol Alexa ke Kipas Angin Anda
  10. Semangat Natal di Kontrol Pasti