สารบัญ:

Pi Home, ผู้ช่วยเสมือน Raspberry Powered: 11 ขั้นตอน (พร้อมรูปภาพ)
Pi Home, ผู้ช่วยเสมือน Raspberry Powered: 11 ขั้นตอน (พร้อมรูปภาพ)

วีดีโอ: Pi Home, ผู้ช่วยเสมือน Raspberry Powered: 11 ขั้นตอน (พร้อมรูปภาพ)

วีดีโอ: Pi Home, ผู้ช่วยเสมือน Raspberry Powered: 11 ขั้นตอน (พร้อมรูปภาพ)
วีดีโอ: ซื้ออะไรมารัน Home Assistant ดี ระหว่าง Intel NUC กับ Raspberry Pi 2024, พฤศจิกายน
Anonim
Pi Home ผู้ช่วยเสมือนที่ขับเคลื่อนด้วย Raspberry
Pi Home ผู้ช่วยเสมือนที่ขับเคลื่อนด้วย Raspberry

หน้าแรกของ Google มีประโยชน์ที่จะมีไว้รอบๆ บ้าน เป็นอุปกรณ์ที่สวยงามพร้อม Google Assistant ในตัว - ผู้ช่วยส่วนตัวดิจิทัลล้ำสมัยโดย Google มันสามารถเล่นสื่อ บันทึกการช่วยเตือนและบันทึกย่อของคุณ บอกระยะเวลาในการเดินทาง ทำระบบอัตโนมัติในบ้าน คุณสามารถวางไว้ที่ใดก็ได้ในบ้านของคุณและจะทำสิ่งที่น่าทึ่งให้คุณ แต่มันเป็นเรื่องที่มีราคาแพงหากคุณ' ไม่แน่ใจว่าคุณจะใช้มัน ข่าวดี คุณสามารถสร้างอุปกรณ์ที่ทำงานได้อย่างสมบูรณ์โดยใช้ Raspberry Pi

ในตอนท้ายของคู่มือนี้ คุณจะมีหน้าแรกของ Google ที่ทำงานได้อย่างสมบูรณ์ซึ่งตอบสนองต่อคำสั่งเสียงของคุณ มิเช่นนั้นจะเป็นผู้ช่วยที่มีคุณสมบัติทั้งหมดของ Google Home ซึ่งหมายความว่าสามารถแปลงหน่วย เล่นสื่อ ตรวจสอบคะแนน อ่านหนังสือเสียงให้คุณ ตรวจสอบสภาพอากาศ และอื่นๆ อีกมาก นอกจากนี้ยังสามารถทำงานร่วมกับอุปกรณ์อัตโนมัติในบ้านที่หลากหลาย เช่น หลอดไฟอัจฉริยะ คุณจึงควบคุมได้ด้วยเสียงของคุณ เช่นเดียวกับ Google Assistant ตัวจริง คุณสามารถเชื่อมโยง DIY Google Home ของคุณเพื่อเพิ่มคุณสมบัติเพิ่มเติม เช่น เพิ่มสิ่งที่ต้องทำใน Evernote หรือรับการแจ้งเตือนทางโทรศัพท์เมื่อตัวจับเวลาดับลง

ขั้นตอนที่ 1: สิ่งที่คุณต้องการ

สิ่งที่คุณต้องการ
สิ่งที่คุณต้องการ

คุณต้องการ:

  • Raspberry Pi 3 หรือ 2 ที่ติดตั้ง Raspbian และตั้งค่า Wi-Fi
  • แหล่งจ่ายไฟและสายไฟ MicroUSB (ขั้นต่ำ 5V, 2A)
  • การ์ดไมโครเอสดี (ขั้นต่ำ 8GB)
  • ไมโครโฟน USB (คุณจะได้รับวิธีการตั้งค่ามากมายผ่านทางอินเทอร์เน็ต ที่นี่…)
  • ลำโพง
  • แป้นพิมพ์และเมาส์สำหรับการตั้งค่า
  • LED และสายไฟคู่สำหรับเชื่อมต่อ

ทุกสิ่งที่รวบรวม เชื่อมต่อ และเสียบเข้า มาเริ่มกันเลย

ขั้นตอนที่ 2: การตั้งค่าไมโครโฟน USB

การตั้งค่าไมโครโฟน USB
การตั้งค่าไมโครโฟน USB
  • Pi ไม่มีไมโครโฟนในตัว คุณต้องแนบไมโครโฟน USB หากต้องการบันทึกเสียง
  • เสียบไมโครโฟน USB ของคุณเข้ากับช่องเสียบ USB ของ Pi
  • พิมพ์คำสั่งต่อไปนี้ในเทอร์มินัล

arecord -l

คำสั่งนี้จะแสดงรายการอุปกรณ์บันทึกเสียงที่มีอยู่ทั้งหมด จะว่างเปล่าหากเชื่อมต่อไมโครโฟน USB ของคุณ คุณควรได้รับผลลัพธ์ต่อไปนี้

pi@raspberrypi:~ $ arecord -l

**** รายการอุปกรณ์ฮาร์ดแวร์ CAPTURE **** การ์ด 1: อุปกรณ์ [อุปกรณ์เสียง USB PnP], อุปกรณ์ 0: เสียง USB [เสียง USB] อุปกรณ์ย่อย: อุปกรณ์ย่อย #0: อุปกรณ์ย่อย #0

คุณจะเห็นว่าอุปกรณ์ USB ของคุณต่ออยู่กับการ์ด 1 และรหัสอุปกรณ์คือ 0 Raspberry Pi รู้จักการ์ด 0 เป็นการ์ดเสียงภายใน กล่าวคือ bcm2835 และการ์ดเสียงภายนอกอื่นๆ เป็นการ์ดเสียงภายนอกที่ชื่อการ์ด 1 การ์ด 2 และ กำลังติดตาม…

ตอนนี้ เราจะต้องเปลี่ยนการกำหนดค่าเสียง ในการแก้ไขไฟล์ asound.conf ให้พิมพ์คำสั่งต่อไปนี้

sudo nano /etc/asound.conf

เพิ่มบรรทัดด้านล่างในไฟล์ จากนั้นกด Ctrl+X และหลังจากนั้น Y เพื่อบันทึกไฟล์

pcm.!default {

พิมพ์ asym capture.pcm "mic" playback.pcm "speaker" } pcm.mic { type plug slave { pcm "hw: 1, 0" } } pcm.speaker { พิมพ์ hw card 0 } ctl.!default { พิมพ์ hw card 0 }

การดำเนินการนี้จะตั้งค่าไมโครโฟนภายนอกของคุณ (pcm.mic) เป็นอุปกรณ์จับภาพเสียง (pcm!.default) และการ์ดเสียงในตัว (การ์ด 0) เป็นอุปกรณ์ลำโพง

สร้างไฟล์ใหม่ชื่อ.asoundrc ในโฮมไดเร็กทอรี (/home/pi) โดยออกคำสั่งต่อไปนี้และวางการกำหนดค่าด้านบน (ซึ่งถูกเพิ่มในไฟล์ /etc/asound.conf) ลงในไฟล์นี้

sudo nano.asoundrc.

ขั้นตอนที่ 3: การตั้งค่าเอาต์พุตลำโพงของคุณ

การตั้งค่าเอาต์พุตลำโพงของคุณ
การตั้งค่าเอาต์พุตลำโพงของคุณ
  • เชื่อมต่อลำโพงของคุณเข้ากับแจ็คหูฟังขนาด 3.5 มม. ของ Raspberry Pi
  • เรียกใช้คำสั่งด้านล่างเพื่อเปิดหน้าจอการกำหนดค่าของ pi

sudo raspi-config

ไปที่ ตัวเลือกขั้นสูง > เสียง และเลือกอุปกรณ์ส่งออก (แจ็ค 3.5 มม. หรือ HDMI)

ขั้นตอนที่ 4: ทดสอบไมโครโฟนและลำโพง

ทดสอบไมค์และลำโพง
ทดสอบไมค์และลำโพง

ในการทดสอบลำโพงของคุณ ให้รันคำสั่งต่อไปนี้ในเทอร์มินัล นี้จะเล่นเสียงทดสอบ กด Ctrl+C เพื่อออก หากคุณไม่ได้ยินเสียงทดสอบ ให้ตรวจสอบการเชื่อมต่อและกำลังไฟของลำโพง การทดสอบดูเหมือน -

ด้านหน้าซ้าย, ด้านหน้าขวา

ทดสอบลำโพง -t wav

หากต้องการทดสอบไมโครโฟน ให้รันคำสั่งต่อไปนี้ การดำเนินการนี้จะบันทึกคลิปเสียงสั้นๆ 5 วินาที หากคุณได้รับข้อผิดพลาดให้ตรวจสอบขั้นตอนก่อนหน้าอีกครั้ง

arecord --format=S16_LE --duration=5 --rate=16k --file-type=raw out.raw

เล่นเสียงที่บันทึกไว้และยืนยันว่าทุกอย่างทำงานอย่างถูกต้องโดยพิมพ์คำสั่งต่อไปนี้

เล่น --format=S16_LE --rate=16k out.raw

ฮาร์ดแวร์ของเราได้รับการตั้งค่า

ขั้นตอนที่ 5: ดาวน์โหลดแพ็คเกจที่จำเป็นและกำหนดค่าสภาพแวดล้อม Python:

ดาวน์โหลดแพ็คเกจที่จำเป็นและกำหนดค่าสภาพแวดล้อม Python
ดาวน์โหลดแพ็คเกจที่จำเป็นและกำหนดค่าสภาพแวดล้อม Python

ขั้นแรก อัปเดตระบบปฏิบัติการของคุณโดยเรียกใช้คำสั่งทีละคำสั่งในเทอร์มินัล

sudo apt-get update

sudo apt-get อัพเกรด

การรันคำสั่งทีละตัวในเทอร์มินัลจะสร้างสภาพแวดล้อม Python 3 (ไลบรารี Google Assistant ทำงานบน Python 3 เท่านั้น) ใน Pi ของคุณและติดตั้งรายการที่จำเป็น

sudo apt-get ติดตั้ง python3-dev python3-venv

$ python3 -m venv env $ env/bin/python -m pip install --upgrade pip setuptools

เปิดใช้งานสภาพแวดล้อมหลาม การดำเนินการนี้จะนำข้อความ " (env)" มาไว้หน้าเทอร์มินัลคำสั่งของ Pi

แหล่งที่มา env/bin/activate

ติดตั้งแพ็คเกจ Google Assistant SDK ซึ่งมีรหัสทั้งหมดที่จำเป็นในการเรียกใช้ Google Assistant บน Pi ควรดาวน์โหลด Google Assistant Library และความสำคัญ

python -m pip install --upgrade google-assistant-library

ขั้นตอนที่ 6: เปิดใช้งาน Google Assistant Cloud Project

การเปิดใช้งานโครงการ Google Assistant Cloud
การเปิดใช้งานโครงการ Google Assistant Cloud
การเปิดใช้งานโครงการ Google Assistant Cloud
การเปิดใช้งานโครงการ Google Assistant Cloud
การเปิดใช้งานโครงการ Google Assistant Cloud
การเปิดใช้งานโครงการ Google Assistant Cloud
การเปิดใช้งานโครงการ Google Assistant Cloud
การเปิดใช้งานโครงการ Google Assistant Cloud
  • เปิด Google Cloud Console และสร้างโครงการใหม่ (ตั้งชื่ออะไรก็ได้) บัญชีที่คุณลงชื่อเข้าใช้จะใช้ในการส่งคำถามไปยัง Google Assistant และรับคำตอบในแบบของคุณ
  • ตรงไปที่ตัวจัดการ API และเปิดใช้งาน Google Assistant API
  • ตรวจสอบให้แน่ใจว่าคุณได้เปิดใช้งานกิจกรรมบนเว็บและแอป ข้อมูลอุปกรณ์ และกิจกรรมเสียงพูดและเสียงในการควบคุมกิจกรรมสำหรับบัญชี
  • ไปที่ "ข้อมูลประจำตัว" และตั้งค่าหน้าจอเนื้อหา OAuth
  • ไปที่แท็บ "ข้อมูลประจำตัว" และสร้าง ID ไคลเอ็นต์ OAuth ใหม่
  • เลือกประเภทแอปพลิเคชันเป็น "อื่นๆ" และตั้งชื่อคีย์
  • ดาวน์โหลดไฟล์ JSON ที่เก็บข้อมูลคีย์ OAuth และเก็บไว้

ขั้นตอนที่ 7: ตรวจสอบสิทธิ์ Raspberry Pi

การตรวจสอบสิทธิ์ Raspberry Pi
การตรวจสอบสิทธิ์ Raspberry Pi
การตรวจสอบสิทธิ์ Raspberry Pi
การตรวจสอบสิทธิ์ Raspberry Pi
การตรวจสอบสิทธิ์ Raspberry Pi
การตรวจสอบสิทธิ์ Raspberry Pi
การตรวจสอบสิทธิ์ Raspberry Pi
การตรวจสอบสิทธิ์ Raspberry Pi

ติดตั้งเครื่องมือการอนุญาตโดยเรียกใช้คำสั่งด้านล่าง

(env) python -m pip install --upgrade google-auth-oauthlib[เครื่องมือ]

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

(env) google-oauthlib-tool --client-secrets "JSON_FILE_PATH" --scope https://www.googleapis.com/auth/assistant-sdk-prototype --save --headless

ควรแสดงดังที่แสดงด้านล่าง คัดลอก URL และวางลงในเบราว์เซอร์ หากแทน จะแสดง:

InvalidGrantError

จากนั้นป้อนรหัสที่ไม่ถูกต้อง ลองอีกครั้ง.

กรุณาไปที่ URL นี้:

ป้อนรหัสอนุญาต:

ขั้นตอนที่ 8: การตั้งค่าไฟ LED แสดงสถานะ

การตั้งค่าไฟ LED แสดงสถานะ
การตั้งค่าไฟ LED แสดงสถานะ
  • เชื่อมต่อ LED ของคุณระหว่างพิน GPIO 25 และกราวด์
  • เราจะตั้งค่าพิน GPIO 25 เป็นพินเอาต์พุต
  • Google Assistant SDK จัดเตรียมการเรียกกลับ EventType. ON_CONVERSATION_TURN_STARTED เมื่อการแปลงด้วย Google Assistant เริ่มต้นขึ้น เมื่อถึงจุดนั้น เราจะตั้งค่า GPIO 25 ให้เรืองแสง LED
  • เมื่อใดก็ตามที่การสนทนายุติลง EventType. ON_CONVERSATION_TURN_FINISHED จะได้รับการติดต่อกลับ เมื่อถึงจุดนั้น เราจะรีเซ็ต GPIO 25 เพื่อปิด LED

ขั้นตอนที่ 9: เริ่มต้นเมื่อบูตเสร็จสมบูรณ์:

เริ่มต้นเมื่อบูตเสร็จสมบูรณ์
เริ่มต้นเมื่อบูตเสร็จสมบูรณ์
  • เมื่อใดก็ตามที่ Pi ของคุณบูทเสร็จสิ้น เราจะเรียกใช้สคริปต์หลามที่จะตรวจสอบและแนะนำ Google Assistant ในการบู๊ต
  • ขั้นแรกให้เพิ่มแพ็คเกจ RPi. GPIO เพื่อเพิ่มการรองรับ GPIO โดยใช้คำสั่งต่อไปนี้

pip ติดตั้ง RPi. GPIO

ดำเนินการทีละขั้นตอน ไปที่ไดเร็กทอรีผู้ใช้ สร้างไฟล์ python ใหม่ main.py

cd /home/pi

sudo nano main.py

เขียนสคริปต์ที่เชื่อมโยงและบันทึกไฟล์

ตอนนี้สร้างเชลล์สคริปต์ที่จะเริ่มต้นและเรียกใช้ Google Assistant

sudo nano google-assistant-init.sh

วางบรรทัดด้านล่างลงในไฟล์และบันทึกไฟล์

#!/bin/sh

/home/pi/env/bin/python3 -u /home/pi/main.py

ให้สิทธิ์ดำเนินการ

sudo chmod +x google-assistant-init.sh

คุณสามารถเรียกใช้ google-assistant-init.sh เพื่อเริ่มต้น Google Assistant ได้ทุกเมื่อ

ขั้นตอนที่ 10: เริ่มต้น Google Assistant ขณะบู๊ต

การเริ่มต้น Google Assistant ขณะบู๊ต
การเริ่มต้น Google Assistant ขณะบู๊ต

ในการเปิดใช้งาน Google Assistant on Boot มีสองวิธี มาดูกันเลยละกัน

1. เริ่มต้นอัตโนมัติด้วย Pixel Desktop เมื่อบูต:

  • การดำเนินการนี้จะเริ่ม Google Assistant ทันทีที่เดสก์ท็อป Pixel เริ่มทำงาน ตรวจสอบให้แน่ใจว่าคุณได้เลือกบูต "เดสก์ท็อป" ในการกำหนดค่า Raspberry Pi
  • พิมพ์คำสั่งด้านล่าง

sudo nano /home/pi/.config/lxsession/LXDE-pi/autostart

เพิ่มสิ่งต่อไปนี้หลังจาก @xscreensaver -no-splash

@lxterminal -e "/home/pi/google-assistant-init.sh"

บันทึกและออกโดยกด “Ctrl+X” แล้วกด “Y

2. Autostart ด้วย CLI on Boot:(โดยส่วนตัวฉันใช้สิ่งนี้แม้ว่าการเริ่มอัตโนมัติจะทำงานได้ดี)

  • การดำเนินการนี้จะเริ่ม Google Assistant หากคุณตั้งค่าการบูต CLI ตรวจสอบให้แน่ใจว่าคุณได้เลือกบูต "CLI" ในการกำหนดค่า Raspberry Pi
  • พิมพ์คำสั่งด้านล่าง

sudo nano /etc/profile

เพิ่มบรรทัดด้านล่างที่ส่วนท้ายของไฟล์

sudo /home/pi/google-assistant-init.sh

บันทึกและออกโดยกด "Ctrl+X" จากนั้นกด "Y"

ขั้นตอนที่ 11: บทสรุป

บทสรุป
บทสรุป

Home Pi นี้มีความแตกต่างกันอย่างไร ไม่มีอะไรนอกจากค่าใช้จ่าย ผลลัพธ์ที่ได้ก็เหมือนกัน โดยพื้นฐานแล้ว คุณสามารถเปิดใช้งาน DIY Google Home ได้โดยพูดคำว่า "Ok Google/ สวัสดี Google" และอุปกรณ์ทำงานเหมือนกับผู้ช่วยจริงๆ คุณสามารถทำกิจกรรมประจำวันต่างๆ มากมายด้วย Google Home ของคุณ หากคุณต้องการทำงานที่กำหนดเอง เช่น ปิดไฟ ตรวจสอบประตู คุณสามารถทำได้ด้วยการผสานรวม Google Actions ใน Google Assistant หากคุณมีปัญหาในการเริ่ม Google Assistant โปรดแสดงความคิดเห็นด้านล่าง ฉันจะพยายามแก้ไขให้มากที่สุด

แนะนำ: