ระบบอัตโนมัติภายในบ้านโดยใช้ Raspberry Pi Matrix Voice และ Snips (ตอนที่ 2): 8 ขั้นตอน
ระบบอัตโนมัติภายในบ้านโดยใช้ Raspberry Pi Matrix Voice และ Snips (ตอนที่ 2): 8 ขั้นตอน
Anonim
ระบบอัตโนมัติภายในบ้านโดยใช้ Raspberry Pi Matrix Voice และ Snips (ตอนที่ 2)
ระบบอัตโนมัติภายในบ้านโดยใช้ Raspberry Pi Matrix Voice และ Snips (ตอนที่ 2)

อัปเดตระบบอัตโนมัติภายในบ้านโดยใช้ Raspberry Pi Matrix Voice และ Snips ใน PWM นี้ใช้สำหรับควบคุม LED ภายนอกและเซอร์โวมอเตอร์

รายละเอียดทั้งหมดให้ไว้ในส่วนที่ 1

www.instructables.com/id/Controlling-Light…

ขั้นตอนที่ 1: การติดตั้ง Matrix Core & Matrix HAL บน RPi

1. เพิ่มที่เก็บเมทริกซ์และคีย์

curl https://apt.matrix.one/doc/apt-key.gpg | sudo apt-key เพิ่ม -

echo "deb https://apt.matrix.one/doc/apt-key.gpg $(lsb_release -sc) main" | sudo tee /etc/apt/sources.list.d/matrixlabs.list

ที่เก็บเมทริกซ์สำหรับเมทริกซ์ HAL

curl https://apt.matrix.one/doc/apt-key.gpg | sudo apt-key add -echo "deb https://apt.matrix.one/doc/apt-key.gpg $(lsb_release -sc) main" | sudo tee /etc/apt/sources.list.d/matrixlabs.list

sudo apt-get update

sudo apt-get อัพเกรด

2. ติดตั้งแพ็คเกจ Matrix Core

sudo apt-get ติดตั้ง matrixio-malos

sudo รีบูต

ติดตั้งแพ็คเกจ MATRIX HAL

sudo apt-get ติดตั้ง matrixio-creator-init libmatrixio-creator-hal libmatrixio-creator-hal-dev

รีบูตอุปกรณ์ของคุณ

sudo รีบูต

3. การติดตั้ง ZeroMQ

echo "deb https://download.opensuse.org/repositories/network…./" | sudo tee /etc/apt/sources.list.d/zeromq.list

wget https://download.opensuse.org/repositories/networ… -O- | sudo apt-key เพิ่ม

4. JavaScript setupสร้างโฟลเดอร์โปรเจ็กต์โหนดในโฮมไดเร็กทอรีของ RPi

cd ~/mkdir js-matrix-core-app (ชื่ออะไรก็ได้ที่คุณต้องการ)

cd js-matrix-core-app

npm init

5. การติดตั้ง npm Packages สำหรับ ZMQ และ Protocol Buffers

ในการติดตั้งแพ็คเกจ ZMQ และ MATRIX Protocol Buffers npm ตรวจสอบให้แน่ใจว่าคุณอยู่ในไดเร็กทอรีที่คุณสร้างไว้ด้านบน (ชื่อที่คุณให้) ที่นี่ฉันให้มัน js-matrix-core-app สิ่งนี้ทำให้คุณสามารถโต้ตอบกับ Matrix Core ผ่าน Node.js

npm ติดตั้ง zeromq --save

npm ติดตั้ง matrix-protos --save

ขณะที่ฉันใช้ JavaScript ดังนั้นในการใช้ PWM สำหรับ LED ภายนอก ฉันจึงใช้ไลบรารี Matrix lite ในการติดตั้งให้ใช้คำสั่งที่แสดงด้านล่างตรวจสอบให้แน่ใจว่าคุณอยู่ในไดเร็กทอรีเดียวกันกับที่เราสร้างขึ้นขณะติดตั้ง Matrix core

npm ติดตั้ง @matrix-io/matrix-lite --save

ขั้นตอนที่ 2: Snips App (อัปเดต)

แอป Snips (อัปเดต)
แอป Snips (อัปเดต)
แอป Snips (อัปเดต)
แอป Snips (อัปเดต)
แอป Snips (อัปเดต)
แอป Snips (อัปเดต)

1. สร้างช่องใหม่และตั้งชื่อตามที่คุณต้องการ ที่นี่ฉันใช้สี่ช่อง

  • สวิตซ์สำหรับเปิด ปิด เปิด และปิดสถานะ
  • ห้องสำหรับห้องต่างๆ เช่น ห้องนอน ห้องน้ำ เป็นต้น
  • อุปกรณ์สำหรับอุปกรณ์ต่างๆ เช่น ไฟ พัดลม ประตู ฯลฯ
  • ความสว่างสำหรับการตั้งค่าความสว่างของแสงในห้องต่างๆ

2. จากนั้นให้ชื่อประเภทสล็อต ที่นี่ฉันกำลังสร้างประเภทสล็อตแบบกำหนดเอง

ช่องห้อง

ให้ชื่ออะไรก็ได้ที่คุณต้องการ หลังจากนั้นเพิ่มค่าช่อง "ห้องน้ำ", "ห้องนอน", "ห้องครัว" และ "ห้องโถงใหญ่" เป็นต้น

สำหรับช่องสวิตซ์ ตั้งชื่ออะไรก็ได้ตามต้องการ

หลังจากนั้นเพิ่มค่าสล็อต "เปิด", "ปิด", "เปิด" และ "ปิด"

ช่องเสียบอุปกรณ์

ให้ชื่ออะไรก็ได้ที่คุณต้องการ หลังจากนั้นเพิ่มค่าสล็อต "light", "fan" และ "door"

ช่องความสว่าง

ให้ชื่ออะไรก็ได้ที่คุณต้องการ หลังจากนั้นเพิ่มค่าสล็อต 75, 50, 25, 0

3. ปิดแอพเพื่อบอกตัวอย่างการฝึกว่าช่องไหนใช้

  • ดับเบิลคลิกที่ Off และ On และเลือกชื่อสล็อต (สวิตช์)
  • ดับเบิลคลิกที่ชื่อห้องและเลือกชื่อช่อง (ห้อง)
  • ดับเบิ้ลคลิกที่ไฟ พัดลม และเลือกชื่อสล็อต (อุปกรณ์)
  • ดับเบิลคลิกที่ค่า (0, 25, 50) และเลือกชื่อช่อง (ความสว่าง)

จากนั้นบันทึกและคุณสามารถทดสอบได้ในหน้าต่างที่ให้ไว้ทางด้านขวามือของหน้า

4. จากนั้นปรับใช้

ขั้นตอนที่ 3: แพ็คเกจ Npm ที่จำเป็น

สำหรับส่งเมลติดตั้งโหนดแพ็คเกจ

npm ติดตั้ง nodemailer

แพ็คเกจ Npm สำหรับการสื่อสารแบบสองทิศทางตามเหตุการณ์

npm ติดตั้ง socket.io

แพ็คเกจ Npm สำหรับ express

npm ติดตั้ง express

หากคุณต้องการที่จะได้ยินคำพูด คุณสามารถดาวน์โหลดแพ็คเกจโหนดนี้ได้

npm ติดตั้งพูดว่า

เพิ่มบรรทัดเหล่านี้ในโปรแกรม (ตัวอย่าง)

const พูด = ต้องการ ('พูด')

say.speak('ตั้งค่าความสว่างไว้ที่ 75');

ขั้นตอนที่ 4: หน้าเว็บ

ฉันสร้างเพจสำหรับแสดงบันทึก (ห้อง อุปกรณ์ สถานะของอุปกรณ์ ค่าความเข้มและวันที่) และมาตรวัดที่แสดงค่าความเข้มปัจจุบัน เพื่อให้ฉันทราบว่าคำสั่งใดที่ฉันใช้ขณะพูดคุยกับสนิป ทำตามขั้นตอนด้านล่างเพื่อสร้างหน้าเว็บ

หมายเหตุ - คุณสามารถใช้เซิร์ฟเวอร์ Node หรือเซิร์ฟเวอร์ Apache

ในโครงการนี้ ฉันใช้เซิร์ฟเวอร์โหนดเนื่องจากเซิร์ฟเวอร์ Apache ทำงานช้าและไม่สามารถอัปเดตข้อมูลได้อย่างถูกต้อง

หมายเหตุ - หากคุณใช้รหัสที่ได้รับในโครงการนี้ ตรวจสอบให้แน่ใจว่าข้อมูลทั้งหมดของคุณอยู่ในไดเร็กทอรี cd /var/www/html หรือคุณสามารถเปลี่ยนตำแหน่งในโปรแกรมได้

ขั้นแรกให้ติดตั้งเซิร์ฟเวอร์ Apache โดยใช้คำสั่ง (ไม่จำเป็น)

sudo apt-get ติดตั้ง apache2

ไม่จำเป็นต้องใช้เซิร์ฟเวอร์ Apache หากคุณมีโหนดเซิร์ฟเวอร์หรือเซิร์ฟเวอร์โหนด สร้างชื่อไฟล์ว่าง server.js เพิ่มโปรแกรมที่ระบุในขั้นตอนของโปรแกรมและบันทึก

ในการรันเซิร์ฟเวอร์ให้ใช้คำสั่ง

โหนดเซิร์ฟเวอร์ js

จากนั้นไปที่ไดเร็กทอรี cd /var/www/html และสร้างสองโฟลเดอร์

1. สร้างชื่อโฟลเดอร์ js โดยใช้คำสั่ง

mkdir js

cd js // ไปที่ไดเร็กทอรี

ในไดเร็กทอรี /var/www/html/js ให้ตั้งชื่อไฟล์ angular.min.js และวางข้อมูลจากลิงค์

ในไดเร็กทอรีเดียวกันสร้างชื่อไฟล์อื่น gauge.min.js และวางข้อมูลจากลิงค์ลิงค์

ไฟล์ที่จำเป็น

2. สร้างชื่อโฟลเดอร์ jsonpage โดยใช้คำสั่ง

mkdir jsonpage

cd jsonpage

ในไดเร็กทอรี jsonpage สร้างชื่อไฟล์ info.js ว่างๆ

หมายเหตุ: - ไฟล์ Json จะถูกล้างหลังจาก 50 คำสั่งเสียง

ขั้นตอนที่ 5: หน้าเข้าสู่ระบบ

สำหรับการทำหน้าเข้าสู่ระบบให้ไปที่ไดเร็กทอรี cd /var/www/html และสร้างชื่อไฟล์ว่าง index.html เพิ่มโปรแกรมที่ระบุด้านล่าง

ขั้นตอนที่ 6: หน้าหลัก

สำหรับการสร้างหน้าหลักให้ไปที่ไดเร็กทอรี cd /var/www/html และสร้างชื่อไฟล์ว่าง HA.html (ใด ๆ) เพิ่มโปรแกรมที่ระบุด้านล่าง

สำหรับการทำเกจ ให้ตั้งชื่อไฟล์ว่าง index.js ในไดเร็กทอรี cd /var/www/html โปรแกรมได้รับด้านล่าง

ขั้นตอนที่ 7: ผู้ช่วย

Assistant.js สำหรับหน้าเว็บได้รับด้านล่าง

เมื่อตั้งค่าเสร็จแล้วทั้งหมด ถัดไป เปิดเชลล์และเรียกใช้

cd js-matrix-core-app

node assistant.js

เปิดเปลือกอื่นแล้วเรียกใช้

cd /var/www/html

โหนดเซิร์ฟเวอร์ js

เปิดเบราว์เซอร์

localhost:8080/index.html