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

Aktifkan Kontrol Alexa ke Kipas Angin Anda

Komponen dan persediaan

Raspberry Pi 3 Model B
× 1
Arduino UNO
× 1
Relai (umum)
baik relai 5V sehingga Anda dapat langsung berinteraksi dengan Arduino atau papan antarmuka relai sudah cukup
× 1
Regulator Kipas
Anda dapat menggunakan jenis apa saja, selama Anda dapat menemukan terminal untuk memasok daya ke terminal yang sama. Saya akan menyarankan regulator tipe lama yang menggunakan blok resistif untuk mengurangi tegangan yang dipasok
× 1

Alat dan mesin yang diperlukan

Besi solder (generik)

Aplikasi dan layanan online

Arduino IDE
Perangkat Keterampilan Alexa Alexa Amazon
Ngrok

Tentang proyek ini

Saya akan merinci di sini tentang bagaimana saya membuat kipas langit-langit biasa saya menjadi cerdas dengan mengintegrasikan Amazon Alexa untuk kontrol kecepatan yang sama. Kami akan menggunakan amazon alexa skill set untuk memulai perubahan kecepatan, dan akan ngrok layanan tunneling untuk merutekan permintaan ke server RPi lokal kami, yang akan memberi tahu Arduino uno kami untuk mengaktifkan relai terkait.

Menyiapkan Server Raspberry Pi lokal kami

kami membutuhkan layanan berikut untuk digunakan di server kami.

  • Python PIP :untuk menginstal paket python, jika Anda menggunakan python 2.7 atau 3 pip akan diinstal secara default, maka Anda dapat menghindari langkah ini
sudo apt-get install python-pip  
  • Flask :Flask adalah paket server untuk python yang akan membantu Anda mengimplementasikan server python dengan mudah.
pip install flask  
  • flask ask :sebuah flask extension yang digunakan untuk membuat program alexa frendly dengan mudah.
pip install flask-ask  
  • pyserial :modul komunikasi serial untuk python
sudo apt-get install pyserial 
  • libpython2.7-dev
sudo apt-get intall libpython2.7-dev 

semua modul yang diperlukan diinstal waktunya untuk mengatur server berjalan. kita perlu memasukkan skrip python untuk hal yang sama

from flask import Flaskfrom flask_ask import Ask, statementimport requestimport jsonimport serial ser =serial.Serial("/dev/ttyAMA0",9600)app =Flask(__name__)ask =Ask(app, '/')@ [email protected]("FanOn")def on():ser.write(b'1') return statement("Ceiling Fan dihidupkan.")@ask.intent("FanOff")def off() :ser.write(b'0') return statement("Ceiling Fan dimatikan.")@ask.intent("FanLevelUp")def up():ser.write(b'+') return statement("Ceiling Fan mempercepat.")@ask.intent("FanLevelDown")def down():ser.write(b'-') return statement("Kecepatan Kipas Langit-langit.")if __name__ =="__main__":app.run (debug=Benar) 

Jalankan skrip python ini, dan daftarkan skrip ini ke daftar mulai otomatis RPi Anda.

3. Unduh Ngrok

Ngrok adalah platform tunneling yang aman untuk membuat perangkat Anda online. Dengan platform ini Anda dapat membuat aplikasi web atau aplikasi apa pun menjadi online dengan cara yang sangat sederhana. Untuk mengunduh, buka situs resmi dan unduh untuk ARM.

https://ngrok.com/

Buka zip dan buka direktori tempat Anda mengekstraknya. Jalankan menggunakan perintah

./ngrok http 5000  

Keterampilan Alexa

Buka halaman pengembang amazon dan daftar akun pengembang Anda

https://developer.amazon.com/

Masuk ke developer console setelah masuk dan sekarang masuk pilih "Alexa skill kit"

sekarang pilih "Tambahkan keterampilan baru"

Masukkan nama untuk keahlian Anda, dan masukkan nama panggilan,. pastikan nama panggilan Anda memenuhi persyaratan yang diperlukan

simpan dan lanjutkan ke langkah berikutnya

di sini masukkan maksud untuk pemanggilan keterampilan, dan contoh ucapan, yaitu kombinasi kata yang akan memulai setiap maksud.

maksud adalah sebagai berikut

{ "niat":[ { "niat":"FanOn" }, { "niat":"FanOff" }, { "niat":"FanLevelUp" }, { "niat":"FanLevelDown" }] } 

contoh ucapan

FanOn katakan fan aktifFanOn katakan aktifFanOff katakan matiFanOff katakan fan matiFanLevelUp katakan level penggemar naikFanLevelUp katakan tingkatkan kecepatan kipasFanLevelDown katakan level kipas turunFanLevelDown katakan kurangi kecepatan kipas 

Simpan dan lanjutkan ke tahap berikutnya. di sini Anda harus memasukkan lokasi tujuan pengiriman data setelah niat dipanggil.

karena kami menggunakan ngrok , pilih HTTPS, dan masukkan tautan aman yang dihasilkan di ngrok serve, simpan dan lanjutkan ke langkah berikutnya

pilih opsi kedua untuk Sertifikat SSL, dan lanjutkan

Untuk memeriksa apakah setup kita bekerja atau tidak. Pastikan server ngrok Anda berfungsi dan skrip Python juga berjalan jika tidak maka tidak akan berfungsi.

kita dapat melihat bahwa server menerima permintaan dan memperbaruinya.

Kode Arduino

unggah sketsa terlampir pada arduino Anda dan hubungkan ke raspberry pi seperti yang dijelaskan dalam skema.

int Fan[] ={13,12,11,10,9,8}; int n=0;void reset();void set(char);void setup() { // letakkan kode setup Anda di sini, untuk dijalankan sekali:for(int i=0;i<6;i++){ pinMode(Fan [i], KELUARAN); } Serial.begin (9600); } void loop() { char x;if (Serial.available()){ x=Serial.read(); mengatur ulang(); set(x);}}void reset(){ for(int i=0;i<6;i++) { digitalWrite(Fan[i], RENDAH); }}void set(char x){ switch (x) { case '1':n=1; merusak; kasus '+':n++; merusak; kasus '-':n--; merusak; kasus '0':n=0; merusak; } digitalWrite(Kipas[n],TINGGI);}  

Perangkat Keras

hubungkan perangkat keras seperti yang ditunjukkan pada skema

Selamat membuat. buat suara alat lain diaktifkan dengan cara yang sama :)

Kode

  • sketsa arduino
  • Kode Server Python
sketsa arduinoArduino
unggah kode ini ke arduino Anda dan hubungkan ke server raspberry pi Anda
int Fan[] ={13,12,11,10,9,8}; int n=0;void reset();void set(char);void setup() { // letakkan kode setup Anda di sini, untuk dijalankan sekali:for(int i=0;i<6;i++){ pinMode(Fan [i], KELUARAN); } Serial.begin (9600); } void loop() { char x;if (Serial.available()){ x=Serial.read(); mengatur ulang(); set(x);}} void reset(){ for(int i=0;i<6;i++) { digitalWrite(Fan[i], RENDAH); }}void set(char x){ switch (x) { case '1':n=1; merusak; kasus '+':n++; merusak; kasus '-':n--; merusak; kasus '0':n=0; merusak; } digitalWrite(Kipas[n],TINGGI);} 
Kode Server PythonPython
un kode ini di spython Anda setelah ngrok diatur untuk menerima data
dari flask import Flaskfrom flask_ask import Ask, statementimport requestimport jsonimport serial ser =serial.Serial("/dev/ttyAMA0",9600)app =Flask(__name__ )ask =Ask(app, '/')@[email protected]("FanOn")def on():ser.write(b'1') return statement("Ceiling Fan dihidupkan.")@ ask.intent("FanOff")def off():ser.write(b'0') return statement("Fan Ceiling dimatikan.")@ask.intent("FanLevelUp")def up():ser.write (b'+') return statement("Kipas Langit-langit mempercepat.")@ask.intent("FanLevelDown")def down():ser.write(b'-') return statement("Kecepatan Kipas Langit-langit turun." )jika __name__ =="__main__":app.run(debug=True)

Skema

ini adalah bagaimana Anda menghubungkan perangkat bersama-sama

Proses manufaktur

  1. Membangun Jaringan Sensor Nirkabel di Rumah Anda
  2. Kontrol Penerima Koin dengan Arduino
  3. Pusat Kontrol Arduino
  4. LED Terkendali Alexa Melalui Raspberry Pi
  5. Arduino dengan Bluetooth untuk Mengontrol LED!
  6. Kontrol Humidifier Arduino
  7. Arduino Nano:Kontrol 2 Motor Stepper Dengan Joystick
  8. Kontrol LED Anda dengan Cortana
  9. Kontrol Penuh TV Anda Menggunakan Alexa dan Arduino IoT Cloud
  10. 25 kHz 4 Pin Kontrol Kipas PWM dengan Arduino Uno