สารบัญ:

พูดคุยกับ Alexa และ Google Assistant ร่วมกันใน Raspberry Pi: 4 ขั้นตอน
พูดคุยกับ Alexa และ Google Assistant ร่วมกันใน Raspberry Pi: 4 ขั้นตอน

วีดีโอ: พูดคุยกับ Alexa และ Google Assistant ร่วมกันใน Raspberry Pi: 4 ขั้นตอน

วีดีโอ: พูดคุยกับ Alexa และ Google Assistant ร่วมกันใน Raspberry Pi: 4 ขั้นตอน
วีดีโอ: ใช้ Google Assistant, Alexa และ HomeKit กับ Home Assistant 2024, พฤศจิกายน
Anonim
พูดคุยกับ Alexa และ Google Assistant ร่วมกันใน Raspberry Pi
พูดคุยกับ Alexa และ Google Assistant ร่วมกันใน Raspberry Pi
พูดคุยกับ Alexa และ Google Assistant ร่วมกันใน Raspberry Pi
พูดคุยกับ Alexa และ Google Assistant ร่วมกันใน Raspberry Pi

เรียกใช้ Amazon Alexa และ Google Assistant พร้อมกันใน Raspberry Pi เรียกชื่อของพวกเขา พวกเขาเปิดไฟ LED ของตัวเองและเสียงเรียกเข้าสำหรับการตอบสนอง จากนั้นคุณขอคำขอและพวกเขาตอบคุณตามลำดับ คุณสามารถทราบลักษณะของพวกเขาได้ดี

[คุยกับ 2 Voice Navigators ด้วยกัน (เป็นภาษาญี่ปุ่น)]

การติดตั้งเครื่องนำทางด้วยเสียงสองตัวนี้ใน Raspberry Pi นั้นไม่ใช่เรื่องยาก คำแนะนำทีละขั้นตอนอย่างละเอียดมากมีให้ในเว็บสำหรับทั้งคู่ คุณต้องติดตั้ง “PulseAudio” เพิ่มเติมเพื่อพูดคุยกับพวกเขาด้วยกัน สนุก!

(*1) The Pi กับ 2 Navigators เข้าร่วมการแข่งขัน Voice Activated ถ้าชอบก็ Vote นะครับ ขอขอบคุณ.

(*2) ฉันขอขอบคุณ Dimeiza สำหรับบทความก่อนหน้าของเขาที่อธิบายเป็นภาษาญี่ปุ่น

ขั้นตอนที่ 1: สิ่งของ

สิ่งของ
สิ่งของ

รายการสิ่งของ:

  • Raspberry Pi 3
  • อะแดปเตอร์ไฟ: DC 5V, 2.5A
  • การ์ด Micro-SD: 16GB
  • ไมโครโฟน USB: ฉันใช้ไมโครโฟนในกล้อง USB ราคาถูก (Logitech C270)
  • ไฟ LED บางดวง
  • เขียงหั่นขนม
  • สายจัมเปอร์บางส่วน
  • ลำโพงหรือหูฟัง: สามารถใช้ทีวีผ่านพอร์ต HDMI ได้เช่นกัน

ฉันได้สัมผัส Raspberry Pi เป็นครั้งแรกเมื่อ 4 เดือนที่แล้ว ฉันจึงไม่ค่อยรู้ดีนัก ระบบปฏิบัติการที่ติดตั้งคือ Raspbian Stretch (NOOBS v.2.4.4) ฉันไม่สามารถให้การแก้ไขปัญหาสำหรับระบบปฏิบัติการหรือเวอร์ชันอื่น ๆ แก่คุณได้

ขั้นตอนที่ 2: ติดตั้ง Amazon Alexa Voice Service

ติดตั้ง Amazon Alexa Voice Service
ติดตั้ง Amazon Alexa Voice Service

มี "คำแนะนำทีละขั้นตอน" อย่างละเอียดถี่ถ้วนในเว็บ เพียงทำตามนี้ คุณสามารถติดตั้ง Alexa Voice Service SDK ใน Pi ของคุณและเรียกใช้โค้ดตัวอย่างในนั้น เรียก "อเล็กซ่า!"

หากต้องการทราบว่าการโทรของคุณไปถึง Pi หรือไม่ การเปิดไฟ LED และเสียงเรียกเข้าสั้น ๆ จะถูกเพิ่มในโค้ดตัวอย่าง "/home/pi/sdk-folder/sdk-source/avs-device-sdk/SampleApp/src/UIManager.cpp".

1) เพิ่ม 5 บรรทัดด้วย "system(…);" ใน "void UIManager::printState() {" ในโค้ด c++ ตัวอย่าง "UIManager.cpp" และบันทึก

*******

สวิตช์ (m_dialogState) {

กรณี DialogUXState::IDLE:

ระบบ ("โหมด gpio -g 24 ออก");

ระบบ ("gpio -g เขียน 24 0");

ConsolePrinter::prettyPrint("Alexa ไม่ได้ใช้งานในขณะนี้!");

กลับ;

กรณี DialogUXState::การฟัง:

ระบบ ("โหมด gpio -g 24 ออก");

ระบบ("gpio -g เขียน 24 1");

ระบบ ("aplay /home/pi/sdk-folder/application-necessities/sound-files/re.wav 1>/dev/null 2>/dev/null");

ConsolePrinter::prettyPrint("กำลังฟัง…");

กลับ;

********

2) กลับไปที่ "2. สร้าง SDK" ในคำแนะนำทีละขั้นตอนและดำเนินการอีกครั้งทุกขั้นตอนจนถึง "4. เรียกใช้แอปตัวอย่าง" ยกเว้น 3.1

3) คัดลอกไฟล์เสียงสั้น "re.wav" แล้ววางลงใน "/home/pi/sdk-folder/application-necessities/sound-files"

ขั้นตอนที่ 3: ติดตั้ง Google Assistant SDK

ติดตั้ง Google Assistant SDK
ติดตั้ง Google Assistant SDK

มีคำแนะนำทีละขั้นตอนอย่างละเอียดในเว็บ เพียงทำตามนี้ คุณสามารถติดตั้ง Google Assistant Library ใน Pi ของคุณและเรียกใช้โค้ดตัวอย่างในนั้น โทร "ตกลง Google!" หรือ "Ok Google!"

หากต้องการทราบว่าการโทรของคุณส่งถึง Pi หรือไม่ การเปิดไฟ LED และเสียงเรียกเข้าสั้น ๆ จะถูกเพิ่มในโค้ดตัวอย่าง "/home/pi/assistant-sdk-python/google-assistant-sdk/googlesamples/assistant/library/hotword.py".

(*) ตัวแก้ไขใน Instructables ไม่สามารถแสดงการเยื้องได้ จำเป็นต้องมีการเยื้องที่เพียงพอในแต่ละบรรทัดด้านล่างในโค้ดหลาม

1) เพิ่ม 3 บรรทัดหลัง "import json" ในโค้ดตัวอย่าง "hotword.py"

*******

นำเข้า RPi. GPIO เป็น GPIO

เวลานำเข้า

นำเข้ากระบวนการย่อย

********

2) เพิ่ม 2 บรรทัดหลัง "print()" ใน "def process_event(event, device_id):" ในโค้ดตัวอย่าง "hotword.py"

*******

ถ้า event.type == EventType. ON_CONVERSATION_TURN_STARTED:

print() # เพิ่ม 2 บรรทัดต่อไปนี้:

GPIO.output(23, 1)

subprocess.call("aplay /home/pi/sdk-folder/application-necessities/sound-files/re2.wav", shell=True)

พิมพ์ (เหตุการณ์)

*******

3) เพิ่ม 2 บรรทัดหลัง "'device_id:', assistant.device_id + '\n')" ใน "def main():" ในโค้ดตัวอย่าง "hotword.py" แล้วบันทึก

*******

พร้อมผู้ช่วย (ข้อมูลประจำตัว args.device_model_id) เป็นผู้ช่วย:

เหตุการณ์ = assistant.start()

พิมพ์ ('device_model_id:', args.device_model_id + '\n' +

'device_id:', assistant.device_id + '\n') # เพิ่ม 2 บรรทัดต่อไปนี้:

GPIO.setmode(GPIO. BCM)

GPIO.setup (23, GPIO. OUT, ค่าเริ่มต้น = GPIO. LOW)

*******

4) คัดลอกไฟล์เสียงสั้น "re2.wav" แล้ววางลงใน "/home/pi/sdk-folder/application-necessities/sound-files"

ขั้นตอนที่ 4: ติดตั้ง PulseAudio และเรียกใช้ 2 Navigators พร้อมกัน

ติดตั้ง PulseAudio และเรียกใช้ 2 Navigators ร่วมกัน
ติดตั้ง PulseAudio และเรียกใช้ 2 Navigators ร่วมกัน

เมื่อสิ้นสุดขั้นตอนก่อนหน้า คุณสามารถเรียกใช้ตัวนำทางเสียงแต่ละเครื่องตามลำดับ Alexa และ Google Assistant อย่างไรก็ตาม คุณไม่สามารถเรียกใช้เนวิเกเตอร์ทั้งสองนี้พร้อมกันได้ ดังนั้นติดตั้ง "PulseAudio" คุณสามารถเรียกใช้เนวิเกเตอร์สองตัวนี้ได้พร้อมกัน

********

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

********

[บันทึก]

คุณควรเรียกใช้ Alexa ในตอนแรก และโทรหา Google Assistant ในภายหลัง หากคุณต้องการเรียกใช้ Google Assistant เท่านั้น ให้หยุด PulseAudio ก่อนโทร

********

pulseaudio -k

********

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

แนะนำ: