- ข้อกำหนดฮาร์ดแวร์
- การตั้งค่า Google API สำหรับ Raspberry Pi Google Assistant
- การตั้งค่า Google Assistant สำหรับ Raspberry Pi Google Home
- การอนุญาต Raspberry Pi สำหรับ Google Assistant
- ใช้ Google Assistant บน Raspberry Pi
คุณเคยคิดเกี่ยวกับลำโพงที่สามารถควบคุมได้ด้วยเสียงของคุณ !!! ใช่ Amazon Echo เป็นหนึ่งในลำโพงที่ควบคุมด้วยเสียงที่ได้รับความนิยมมากที่สุด แต่ในการแข่งขันกับGoogle Homeก็กำลังได้รับความนิยมเช่นกัน ผู้ช่วยเสียงได้รับความนิยมมากขึ้นในขณะที่เรากำลังมุ่งหน้าสู่ยุคของระบบที่ใช้ AI คุณเคยได้ยินเกี่ยวกับ Google Assistant, Apple Siri และ Amazon Alexa ทั้งหมดนี้เป็นระบบ AI ที่ใช้เสียงสิ่งที่ทำให้สิ่งเหล่านี้แตกต่างกันคือระบบนิเวศของพวกเขาและนี่คือที่ที่ Google Assistant โดดเด่นที่สุด Google, Apple และ Amazon บริษัท เหล่านี้เปิดตัวลำโพงอัจฉริยะของพวกเขาแล้ว ลำโพงอัจฉริยะของ Google ยังมีจำหน่ายในตลาด เรารู้อยู่แล้วครอบคลุมราสเบอร์รี่ Pi ตาม Amazon ก้องครั้งนี้เราจะเปิด Raspberry Pi เป็นลำโพงหน้าแรกของ
Google มี API สำหรับใช้บริการเสียงซึ่งเป็นโอเพ่นซอร์สและพร้อมใช้งานบน Github เมื่อใช้บริการเสียงของ Google เราสามารถเล่นเพลงรับข้อมูลเกี่ยวกับสภาพอากาศจองตั๋วและอื่น ๆ อีกมากมาย สิ่งที่คุณต้องทำคือถาม ในการกวดวิชานี้เรามาดูวิธีการสร้างเสียงลำโพงสมาร์ทควบคุมโดยใช้ Google ช่วยและราสเบอร์รี่ Pi
ข้อกำหนดฮาร์ดแวร์
- Raspberry Pi 3 หรือ Raspberry Pi 2 Model B และการ์ด SD (8GB หรือมากกว่า)
- ลำโพงภายนอกพร้อมสาย AUX 3.5 มม
- ไมโครโฟนเว็บแคมหรือ USB 2.0 ใด ๆ
นอกจากนี้เรายังสมมติว่า Raspberry pi ของคุณได้รับการตั้งค่ากับ Raspbian OS แล้วและเชื่อมต่อกับอินเทอร์เน็ต ด้วยสิ่งเหล่านี้เรามาดูบทช่วยสอนกัน หากคุณยังใหม่กับ Raspberry Pi ให้ไปที่การเริ่มต้นใช้งาน Raspberry pi ก่อน
หมายเหตุ: เว็บแคมมีไมโครโฟนในตัวดังนั้นเราจะใช้สิ่งนี้แทนไมโครโฟน USB 2.0
คุณต้องมีแป้นพิมพ์เมาส์และจอภาพเพื่อเชื่อมต่อ raspberry pi โดยใช้สาย HDMI
การตรวจสอบไมค์เว็บแคมด้วย Raspberry Pi:
1. เปิดเทอร์มินัล Raspberry Pi แล้วพิมพ์คำสั่งarecord -l สิ่งนี้จะแสดงอุปกรณ์ฮาร์ดแวร์ที่เชื่อมต่อกับ Raspberry Pi ดังที่แสดงด้านล่าง:
การ์ด 1 คือไมค์ของเว็บแคมของคุณที่เราจะใช้ หากไม่ปรากฏแสดงว่าเว็บแคมของคุณอาจมีปัญหา
2. ตอนนี้ตรวจสอบว่าไมค์ทำงานหรือไม่โดยเรียกใช้คำสั่งบันทึกเสียงเป็น:
arecord /home/pi/Desktop/test.wav -D sysdefault: CARD = 1
3. ในการเล่นเสียงที่บันทึกไว้ให้พิมพ์คำสั่งนี้:
omxplayer -p -o local /home/pi/Desktop/test.wav
หากคุณเชื่อมต่อ Raspberry Pi กับจอภาพโดยใช้สาย HDMI โดยค่าเริ่มต้นเอาต์พุตเสียงจะผ่านลำโพงของจอภาพของคุณ (หากมีลำโพงในตัว) ดังนั้นในการเปลี่ยนเป็น 3.5 มม. คุณต้องพิมพ์คำสั่งต่อไปนี้:
sudo raspi-config และไปที่ Advance option
เลือกเสียงจากรายการ -> เลือกบังคับ 3.5 มม. -> เลือกตกลงและรีสตาร์ท Raspberry Pi
ตอนนี้คุณควรได้ยินเสียงจากแจ็ค 3.5 มม.
หมายเหตุ:หากคุณต้องการเพิ่มหรือลดความดังของเสียงอินพุตสำหรับไมโครโฟนให้พิมพ์ alsamixer ในเทอร์มินัล เลือกการ์ดเสียงจากเทอร์มินัลโดยกด F6
กด F4 เพื่อเปลี่ยน Mic dB gain และตั้งค่าตามที่คุณต้องการ
หากคุณมีไมโครโฟน USB 2.0 ขั้นตอนในการตรวจสอบไมโครโฟนจะเหมือนกัน ที่นี่เราใช้เว็บแคมสำหรับไมโครโทรศัพท์ USB
การตั้งค่า Google API สำหรับ Raspberry Pi Google Assistant
1. ขั้นแรกเราต้องลงทะเบียนและตั้งค่าโครงการบนแดชบอร์ด Google Console Actions
2. หลังจากเข้าสู่บัญชี Google ของคุณคุณจะเห็นหน้าต่างต่อไปนี้
คลิกที่ Add / โครงการนำเข้า
3. ในหน้าจอถัดไปคุณจะต้องป้อน ชื่อโครงการ และคลิกที่ สร้างโครงการ
4. ตอนนี้ไปที่คอนโซลนักพัฒนาของ Google ในแท็บใหม่แล้วค้นหา Google Assistant API ก่อนที่คุณจะดำเนินการต่อและกดปุ่มเปิดใช้งานตรวจสอบให้แน่ใจว่าคุณได้เลือกโครงการของคุณแล้ว จากนั้นคลิกที่เปิดใช้งาน
5. ตอนนี้เปิดแท็บก่อนหน้าของคอนโซล Google แล้วเลื่อนลงไปที่ด้านล่างของหน้าจอ
คุณจะพบตัวเลือกการ ลงทะเบียนอุปกรณ์ คลิกที่มัน
6. ในหน้าจอถัดไปคลิกที่สมัครสมาชิกรุ่นหลังจากนี้คุณต้องตั้งชื่อสินค้า, ชื่อผู้ผลิตและกำหนดประเภทอุปกรณ์ชื่อเหล่านี้สามารถเป็นอะไรก็ได้ตามที่คุณต้องการ
จดรหัสรุ่นอุปกรณ์ตามที่เราต้องการในภายหลังในกระบวนการ
ตอนนี้คลิกที่สมัครสมาชิกรุ่น
7. หน้าจอถัดไปจะให้ดาวน์โหลดข้อมูลประจำตัวที่จะได้รับนี้ไฟล์ข้อมูลประจำตัวคลิกดาวน์โหลดข้อมูลประจำตัว OAuth 2.0 ไฟล์นี้สำคัญมากดังนั้นโปรดเก็บไว้ในที่ปลอดภัย
ตอนนี้คลิกที่ถัดไป
8. คุณสามารถเลือกลักษณะใด ๆ ที่คุณต้องการ แต่ในกรณีที่เราไม่จำเป็นต้องใด ๆ เหล่านี้เพื่อให้เราเพียงแค่คลิก ข้าม ปุ่มที่แสดงด้านล่าง
9. เมื่อทุกอย่างเสร็จสิ้นคุณจะมีหน้าจอต่อไปนี้
10. ตอนนี้ไปที่หน้าการควบคุมกิจกรรม ที่นี่คุณต้องเปิดใช้งานการควบคุมกิจกรรมต่อไปนี้เพื่อให้แน่ใจว่า Google Assistant API ทำงานได้ดี
กิจกรรมบนเว็บและแอปประวัติตำแหน่งข้อมูลอุปกรณ์กิจกรรมเสียงพูดและเสียง
11. ไปที่คอนโซลนักพัฒนาของ Google อีกครั้ง คลิกที่ข้อมูลรับรองทางด้านซ้ายของแดชบอร์ด คลิกที่หน้าจอได้รับความยินยอม OAuth
12. กรอกรหัส Gmail ของคุณและชื่อใด ๆ ลงในชื่อผลิตภัณฑ์และบันทึก
ตอนนี้เราได้ทำการตั้งค่า Google API เรียบร้อยแล้ว
การตั้งค่า Google Assistant สำหรับ Raspberry Pi Google Home
โปรดทราบตั้งแต่ส่วนนี้เป็นต้นไปคุณจะต้องทำบทช่วยสอนบนเดสก์ท็อป Raspbian โดยตรงและไม่เกิน SSH เนื่องจากคุณจะต้องใช้เว็บเบราว์เซอร์ในตัว
1. ขั้นแรกให้อัปเดตรายการแพ็คเกจของ Raspberry Pi โดยใช้คำสั่งต่อไปนี้
อัปเดต sudo apt-get
2. ตอนนี้เราจะสร้างไฟล์ที่เราสามารถจัดเก็บข้อมูลประจำตัวที่เราดาวน์โหลดมาก่อนหน้านี้ สำหรับสิ่งนี้ให้เรียกใช้สองคำสั่งต่อไปนี้
mkdir ~/googleassistant
nano ~/googleassistant/credentials.json
3. ในไฟล์นี้คุณต้องคัดลอกเนื้อหาของไฟล์ข้อมูลรับรองที่เราดาวน์โหลดมา เปิดไฟล์. json ในโปรแกรมแก้ไขข้อความที่คุณชื่นชอบแล้วกด ctrl + A จากนั้น ctrl + C เพื่อคัดลอกเนื้อหา
หลังจากคัดลอกเนื้อหาที่บันทึกไฟล์โดยการกด Ctrl + X แล้ว Y และแล้วในที่สุดกด Enter
4. หลังจากบันทึกไฟล์ข้อมูลรับรองแล้วเราจะเริ่มติดตั้งการอ้างอิงบางอย่างที่จำเป็นในการเรียกใช้ Google Assistant
เรียกใช้คำสั่งต่อไปนี้เพื่อติดตั้ง Python3 และ Python 3 Virtual Environment ใน RPi ของเรา
sudo apt-get install python3-dev python3-venv
5. ตอนนี้เปิดใช้งาน python3 เป็นสภาพแวดล้อมเสมือนของเราโดยใช้คำสั่งต่อไปนี้
python3 -m venv env
6. ติดตั้งรุ่นล่าสุดของ pip และ setuptoolsรันคำสั่งต่อไปนี้เพื่อรับการอัพเดต
env/bin/python -m pip install --upgrade pip setuptools --upgrade
7. ในการเข้าสู่สภาพแวดล้อม python เราต้องรันคำสั่งนี้
source env/bin/activate
8. ตอนนี้เราจะติดตั้ง Google Assistant Library เรียกใช้คำสั่งต่อไปนี้ทีละคำสั่งเพื่อรับไลบรารีที่อัปเดต
python -m pip install --upgrade google-assistant-library
python -m pip install --upgrade google-assistant-sdk
ตอนนี้เราติดตั้งการอ้างอิงและไลบรารีที่จำเป็นทั้งหมดเสร็จแล้ว
การอนุญาต Raspberry Pi สำหรับ Google Assistant
1. อันดับแรกเราจะติดตั้งเครื่องมือการอนุญาตของ Google ลงใน Raspberry pi ของเราโดยดำเนินการคำสั่งต่อไปนี้
python -m pip install - อัปเกรด google-auth-oauthlib
2. ตอนนี้เราต้องเรียกใช้ไลบรารี Google Authentication ดำเนินการคำสั่งนี้เพื่อรันไลบรารี
google-oauthlib-tool --client-secret ~ / googleassistant / credentials.json \ --scope https://www.googleapis.com/auth/assistant-sdk-prototype \ --scope https: //www.googleapis. com / auth / gcm \ --save - headless
คำสั่งนี้จะสร้าง URL คัดลอก URL นี้และวางในเว็บเบราว์เซอร์ของคุณ
3. ในเบราว์เซอร์ให้ลงชื่อเข้าใช้บัญชี Google ของคุณหากคุณมีหลายบัญชีให้เลือกเฉพาะบัญชีที่คุณตั้งค่าคีย์ API ด้วย
หลังจากเข้าสู่ระบบคุณจะเห็นรหัสการตรวจสอบสิทธิ์แบบยาว คัดลอกรหัสนี้และวางลงในหน้าต่างเทอร์มินัลของคุณแล้วกด Enter หากการตรวจสอบความถูกต้องคุณจะเห็นบรรทัดต่อไปนี้ปรากฏบนบรรทัดคำสั่งดังที่แสดงในภาพด้านบน:
บันทึกข้อมูลรับรอง: /home/pi/.config/google-oauthlib-tool/credentials.json
4. ข้อมูลรับรองการตรวจสอบสิทธิ์ของเราได้รับการยืนยันแล้ว แต่ Google ยังคงต้องการยืนยันผ่านการแสดงผลแบบป๊อปอัป แต่ป๊อปอัปของเราถูกบล็อกโดย CORS (การแบ่งปันทรัพยากรข้ามแหล่งกำเนิด) ดังนั้นก่อนอื่นให้ปิดการใช้งานสิ่งนี้โดยใช้คำสั่งด้านล่าง
ในการใช้คำสั่งนี้ตรวจสอบให้แน่ใจว่าเบราว์เซอร์โครเมียมของคุณปิดอยู่และตอนนี้เปิดหน้าต่างเทอร์มินัลใหม่แล้วพิมพ์คำสั่ง คำสั่งนี้จะเปิดเบราว์เซอร์โครเมียมโดยปิดใช้งานการรักษาความปลอดภัย CORS อย่าท่องอินเทอร์เน็ตโดยปิดการใช้งานนี้
chromium-browser --disable-web-security --user-data-dir "/home/pi/
หลังจากเปิดเบราว์เซอร์ไปที่หน้าต่างเทอร์มินัลก่อนหน้าซึ่งคุณได้ตั้งค่าตัวอย่าง Google Assistant
5. ตอนนี้เรียกใช้คำสั่งต่อไปนี้เพื่อเปิด Google Assistant เป็นครั้งแรก ในคำสั่งนี้แทนที่
ถ้าคุณลืมรหัสโครงการไปที่การกระทำคอนโซลบน Google คลิกโครงการที่คุณสร้างขึ้นจากนั้นคลิกไอคอนรูปเฟืองที่ด้านบนมุมซ้ายมือจากนั้นตั้งค่าโครงการ
แทนที่ด้วย
googlesamples-assistant-pushtotalk --project-id
คำสั่งนี้จะเปิดแท็บใหม่ในเบราว์เซอร์ Chromium
6. ตอนนี้กดEnterในหน้าต่างเทอร์มินัลเพื่อเรียกใช้และถามคำถามใด ๆ
เมื่อคุณถามคำถามแรกหน้าจอด้านล่างอาจปรากฏในเบราว์เซอร์ คลิกที่ดำเนินการต่อ -> ฉันเข้าใจ -> อนุญาต
หากหน้าจอ Continue นี้ไม่ปรากฏขึ้นก็ไม่มีปัญหา
7. ตอนนี้เราสามารถใช้ push to talk Google Assistant ตัวอย่างและรับการตอบสนองเอาต์พุต
เมื่อคุณกดEnterในเทอร์มินัลและพูดการกระทำคุณควรได้ยินการตอบกลับด้วยวาจาและแท็บอื่นจะเปิดขึ้นเพื่อแสดงการกระทำที่คุณเพิ่งเรียก
คุณสามารถปิดใช้งานการเปิดแท็บโดยลบ อาร์กิวเมนต์–displayออกจากคำสั่ง เราต้องการสิ่งนี้เพื่อรับหน้าจอการอนุญาต
ใช้ Google Assistant บน Raspberry Pi
เราได้อนุญาต Raspberry Pi ของเราแล้ว เมื่อใดก็ตามที่คุณต้องการเปิดตัว Google Assistant เพียงแค่เข้าไปอยู่ในสภาพแวดล้อมและทำตามขั้นตอนด้านล่าง
1. รันคำสั่งต่อไปนี้เพื่อรับในสภาพแวดล้อม
แหล่งที่มา env / bin / เปิดใช้งาน
คุณจะเห็น (env) ปรากฏที่ด้านหน้าของแต่ละบรรทัด
2. ในการเริ่มต้นตัวอย่าง push to talk ให้รันคำสั่งต่อไปนี้
googlesamples-assistant-pushtotalk
คราวนี้เราไม่ต้องการรหัสผลิตภัณฑ์และรหัสอุปกรณ์
3. นอกจากการผลักดันในลักษณะการพูดคุยคุณยังสามารถเรียกผู้ช่วยของ Google ด้วยการพูดว่าOk Google สำหรับสิ่งนี้คุณต้องป้อนรหัสอุปกรณ์ที่ไม่ถูกต้องเพื่อให้ใช้งานได้ รหัสอุปกรณ์ที่ไม่ถูกต้องสามารถเป็นอะไรก็ได้เช่นAAAA, ABCD
ตอนนี้เรียกใช้คำสั่งต่อไปนี้
googlesamples-assistant-hotword --device-model-id
ตอนนี้คุณสามารถขอให้อะไรกับผู้ช่วยของ Google เองมากเพียงแค่พูดว่าOk Google
ดังนั้นนี่คือวิธีการที่เราสามารถติดตั้ง Google ช่วยบน Raspberry Pi และสามารถทำให้มันกลายเป็นหน้าแรกของ Google โดยการเชื่อมต่อลำโพงและไมโครโฟนกับมัน