- yêu cầu phần cứng
- Thiết lập API Google cho Trợ lý Google Raspberry Pi
- Thiết lập Trợ lý Google cho Raspberry Pi Google Home
- Cấp phép Raspberry Pi cho Trợ lý Google
- Sử dụng Trợ lý Google trên Raspberry Pi
Bạn đã bao giờ nghĩ về một chiếc loa có thể điều khiển bằng giọng nói của bạn chưa !!! Đúng, Amazon Echo là một trong những Loa điều khiển bằng giọng nói phổ biến nhất, nhưng để cạnh tranh với nó, Google Home cũng đang trở nên phổ biến. Trợ lý giọng nói trở nên phổ biến hơn khi chúng ta đang hướng tới kỷ nguyên của các hệ thống dựa trên AI. Bạn đã nghe nói về Trợ lý Google, Apple Siri và Amazon Alexa. Tất cả đều là hệ thống AI dựa trên giọng nói, điều làm cho chúng khác biệt với nhau là hệ sinh thái của chúng và đây là nơi Trợ lý Google nổi bật nhất. Google, Apple và Amazon, tất cả những công ty này đều đã ra mắt loa thông minh của họ. Loa thông minh của Google cũng có sẵn trên thị trường. Chúng tôi đã giới thiệu Amazon Echo dựa trên Raspberry Pi, lần này chúng tôi sẽ biến Raspberry Pi thành Loa Google Home.
Google cung cấp API để sử dụng dịch vụ thoại của mình, dịch vụ này là mã nguồn mở và có sẵn trên Github. Sử dụng dịch vụ thoại của Google, chúng tôi có thể phát nhạc, nhận thông tin về thời tiết, đặt vé và nhiều hơn thế nữa. Tất cả bạn phải làm là yêu cầu. Trong hướng dẫn này, chúng ta hãy xem cách tạo loa thông minh được điều khiển bằng giọng nói bằng trợ lý Google và Raspberry Pi.
yêu cầu phần cứng
- Raspberry Pi 3 hoặc Raspberry Pi 2 Model B và thẻ SD (8GB trở lên)
- Loa ngoài với cáp AUX 3,5 mm
- Bất kỳ Webcam hoặc Micrô USB 2.0 nào
Chúng tôi cũng giả định rằng Raspberry pi của bạn đã được thiết lập với Hệ điều hành Raspbian và được kết nối với internet. Với những điều này, hãy tiếp tục với hướng dẫn. Nếu bạn chưa quen với Raspberry Pi thì trước tiên hãy xem phần Bắt đầu với Raspberry pi.
Lưu ý: Webcam có micrô có sẵn, vì vậy chúng tôi sẽ sử dụng micrô này thay cho micrô USB 2.0.
Bạn cũng cần có bàn phím, chuột và màn hình để kết nối pi raspberry bằng cáp HDMI.
Kiểm tra Mic của Webcam với Raspberry Pi:
1. Mở thiết bị đầu cuối Raspberry Pi và gõ lệnh arecord -l. Thao tác này sẽ hiển thị các thiết bị phần cứng được kết nối với Raspberry Pi như hình dưới đây:
Thẻ 1 là micrô trên webcam của bạn mà chúng tôi sẽ sử dụng. Nếu nó không được hiển thị, webcam của bạn có thể bị lỗi.
2. Bây giờ, hãy kiểm tra xem mic có hoạt động hay không bằng cách chạy lệnh ghi âm như:
arecord /home/pi/Desktop/test.wav -D sysdefault: CARD = 1
3. Để phát âm thanh đã ghi, hãy nhập lệnh này:
omxplayer -p -o local /home/pi/Desktop/test.wav
Nếu bạn đã kết nối Raspberry Pi với màn hình bằng cáp HDMI thì đầu ra âm thanh theo mặc định là qua loa của màn hình (nếu có loa tích hợp trong đó). Vì vậy, để thay đổi nó thành 3.5mm, bạn phải gõ lệnh sau:
sudo raspi-config và chuyển đến tùy chọn Advance.
Chọn Âm thanh từ danh sách -> chọn Buộc 3,5 mm -> chọn Ok và Khởi động lại bạn Raspberry Pi.
Bây giờ, bạn sẽ nghe thấy âm thanh từ giắc cắm 3,5 mm.
LƯU Ý: Nếu bạn muốn tăng hoặc giảm âm lượng giọng nói đầu vào cho micrô, hãy nhập alsamixer trong thiết bị đầu cuối. Chọn card âm thanh từ thiết bị đầu cuối bằng cách nhấn F6.
Nhấn F4 để thay đổi mức tăng dB của Mic và đặt nó như bạn muốn.
Nếu bạn có micrô USB 2.0 thì các bước tiếp theo cũng giống như vậy để kiểm tra micrô. Ở đây chúng tôi đã sử dụng Webcam cho microcphone USB.
Thiết lập API Google cho Trợ lý Google Raspberry Pi
1. Đầu tiên, chúng tôi phải đăng ký và thiết lập một dự án trên bảng điều khiển Google Console Actions.
2. Sau khi đăng nhập vào tài khoản Google, bạn sẽ thấy cửa sổ sau.
Nhấp vào Thêm / Nhập dự án .
3. Trên màn hình tiếp theo, bạn phải nhập Tên dự án và nhấp vào Tạo dự án .
4. Bây giờ, hãy chuyển đến bảng điều khiển dành cho nhà phát triển của Google trong tab mới và tìm kiếm API Trợ lý Google. Trước khi bạn tiếp tục và nhấn nút Bật, hãy đảm bảo rằng bạn đã chọn dự án của mình. Sau đó nhấp vào Bật.
5. Bây giờ, hãy mở tab trước của bảng điều khiển Google và cuộn xuống cuối màn hình.
Bạn sẽ tìm thấy một tùy chọn Đăng ký thiết bị , hãy nhấp vào nó.
6. Trên màn hình tiếp theo, nhấp vào Đăng ký Mô hình. Sau đó, bạn cần đặt Tên sản phẩm, tên Nhà sản xuất và đặt Loại thiết bị. Những tên này có thể là bất cứ thứ gì bạn muốn.
Ghi lại Id mẫu thiết bị, vì chúng tôi sẽ cần điều này sau này trong quá trình.
Bây giờ, nhấp vào Đăng ký Mô hình .
7. Màn hình tiếp theo sẽ dành cho Tải xuống Thông tin đăng nhập. Để nhận tệp thông tin xác thực này, hãy nhấp vào Tải xuống thông tin xác thực OAuth 2.0 . Tập tin này rất quan trọng vì vậy, hãy giữ nó ở nơi an toàn.
Bây giờ, nhấp vào Tiếp theo.
8. Bạn có thể chọn bất kỳ đặc điểm nào bạn cần, nhưng trong trường hợp của chúng tôi, chúng tôi không cần bất kỳ đặc điểm nào trong số này nên chúng tôi chỉ cần nhấp vào nút Bỏ qua như hình dưới đây .
9. Khi mọi thứ đã hoàn tất, bạn sẽ có màn hình sau.
10. Bây giờ, hãy truy cập trang Kiểm soát hoạt động. Tại đây, bạn phải kích hoạt các điều khiển hoạt động sau để đảm bảo rằng API Trợ lý Google hoạt động tốt.
Hoạt động web và ứng dụng, Lịch sử vị trí, Thông tin thiết bị, Hoạt động giọng nói và âm thanh
11. Một lần nữa, hãy chuyển đến bảng điều khiển dành cho nhà phát triển của Google. Nhấp vào Thông tin đăng nhập ở phía bên trái của trang tổng quan. Nhấp vào màn hình chấp thuận OAuth.
12. Điền id Gmail của bạn và bất kỳ tên nào vào Tên sản phẩm và Lưu nó.
Bây giờ, chúng tôi đã thực hiện xong thiết lập API Google.
Thiết lập Trợ lý Google cho Raspberry Pi Google Home
Xin lưu ý rằng từ phần này trở đi, bạn sẽ phải hoàn thành hướng dẫn trên máy tính Raspbian trực tiếp chứ không phải qua SSH, điều này là do bạn sẽ phải sử dụng trình duyệt web được tích hợp sẵn.
1. Đầu tiên, hãy cập nhật danh sách gói của Raspberry Pi bằng cách sử dụng lệnh sau
sudo apt-get cập nhật
2. Bây giờ, chúng tôi sẽ tạo một tệp nơi chúng tôi có thể lưu trữ thông tin đăng nhập mà chúng tôi đã tải xuống trước đó. Đối với điều này, hãy chạy hai lệnh sau
mkdir ~/googleassistant
nano ~/googleassistant/credentials.json
3. Trong tệp này, bạn phải sao chép nội dung của tệp thông tin xác thực mà chúng tôi đã tải xuống. Mở tệp.json trong trình soạn thảo văn bản yêu thích của bạn và nhấn ctrl + A rồi nhấn ctrl + C để sao chép nội dung.
Sau khi sao chép nội dung, lưu tệp bằng cách nhấn Ctrl + X rồi nhấn Y và cuối cùng nhấn Enter.
4. Sau khi lưu tệp thông tin xác thực, chúng tôi sẽ bắt đầu cài đặt một số phụ thuộc cần thiết để chạy trợ lý Google.
Chạy lệnh sau để cài đặt Python3 và Môi trường ảo Python 3 vào RPi của chúng tôi.
sudo apt-get install python3-dev python3-venv
5. Bây giờ kích hoạt python3 làm môi trường ảo của chúng tôi bằng cách sử dụng lệnh sau
python3 -m venv env
6. Cài đặt các phiên bản mới nhất của pip và setuptools. Chạy lệnh sau để nhận bản cập nhật
env/bin/python -m pip install --upgrade pip setuptools --upgrade
7. Để vào môi trường python, chúng ta phải chạy lệnh này
source env/bin/activate
8. Bây giờ chúng ta sẽ cài đặt Thư viện Trợ lý Google, hãy chạy lần lượt các lệnh sau để tải thư viện cập nhật
python -m pip install --upgrade google-assistant-library
python -m pip install --upgrade google-assistant-sdk
Bây giờ, chúng tôi đã hoàn tất cài đặt tất cả các thư viện và phụ thuộc cần thiết.
Cấp phép Raspberry Pi cho Trợ lý Google
1. Trước tiên, chúng tôi sẽ cài đặt công cụ ủy quyền của Google cho Raspberry pi của chúng tôi bằng cách thực hiện lệnh sau
python -m pip install - nâng cấp google-auth-oauthlib
2. Bây giờ, chúng ta cần chạy thư viện Google Authentication. Thực thi lệnh này để chạy thư viện.
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
Lệnh này sẽ tạo một URL, sao chép URL này và dán vào trình duyệt web của bạn.
3. Trong trình duyệt, đăng nhập vào tài khoản Google của bạn, nếu bạn có nhiều tài khoản, chỉ chọn tài khoản bạn đã thiết lập khóa API của mình.
Sau khi đăng nhập, bạn sẽ thấy một mã xác thực dài. Sao chép mã này và dán vào cửa sổ dòng lệnh của bạn và nhấn enter. Nếu xác thực được xác minh, bạn sẽ thấy dòng sau xuất hiện trên dòng lệnh như trong hình trên:
thông tin đăng nhập đã lưu: /home/pi/.config/google-oauthlib-tool/credentials.json
4. Thông tin xác thực của chúng tôi hiện đã được xác minh, nhưng Google vẫn muốn xác minh thông qua màn hình bật lên. Nhưng cửa sổ bật lên của chúng tôi bị chặn bởi CORS (Chia sẻ tài nguyên nguồn gốc chéo), vì vậy, trước tiên, hãy tắt tính năng này bằng lệnh dưới đây.
Để sử dụng lệnh này, hãy đảm bảo rằng trình duyệt chromium của bạn đã được đóng và bây giờ hãy mở cửa sổ dòng lệnh mới và nhập lệnh. Lệnh này sẽ khởi chạy trình duyệt chromium khi đã tắt bảo mật CORS, đừng duyệt Internet khi tắt tính năng này.
chromium-browser --disable-web-security --user-data-dir "/home/pi/
Sau khi mở trình duyệt, hãy chuyển đến cửa sổ đầu cuối trước đó mà bạn đã thiết lập mẫu trợ lý Google.
5. Bây giờ hãy chạy lệnh sau để khởi chạy lần đầu tiên trợ lý của Google. Trong lệnh này thay thế
Nếu bạn quên ID dự án, hãy chuyển đến Bảng điều khiển hành động trên Google, nhấp vào dự án bạn đã tạo, sau đó nhấp vào biểu tượng bánh răng ở góc trên cùng bên trái rồi nhấp vào Cài đặt dự án.
Ngoài ra, thay thế
googlesamples-Assistant-pushtotalk --project-id
Lệnh này sẽ khởi chạy một tab mới trong trình duyệt Chromium.
6. Bây giờ nhấn Enter trong cửa sổ đầu cuối để kích hoạt nó và đặt bất kỳ câu hỏi nào.
Khi bạn hỏi câu hỏi đầu tiên, màn hình bên dưới có thể xuất hiện trong trình duyệt. Nhấp vào Tiếp tục -> Tôi hiểu -> Cho phép.
Nếu màn hình Tiếp tục này không xuất hiện, không có vấn đề gì.
7. Giờ đây, chúng ta có thể sử dụng mẫu push to talk của Trợ lý Google và nhận phản hồi đầu ra.
Khi bạn nhấn Enter trong thiết bị đầu cuối và nói một hành động, bạn sẽ nghe thấy phản hồi bằng lời nói và một tab khác cũng sẽ mở ra hiển thị hành động bạn vừa gọi.
Bạn có thể tắt tính năng mở tab bằng cách xóa đối số –display khỏi lệnh. Chúng tôi cần điều này để có được màn hình ủy quyền.
Sử dụng Trợ lý Google trên Raspberry Pi
Chúng tôi đã ủy quyền cho Raspberry Pi của mình. Bất cứ khi nào bạn muốn khởi chạy trợ lý của Google, chỉ cần vào môi trường và làm theo các bước dưới đây.
1. Chạy lệnh sau khi nhận được trong môi trường
nguồn env / bin / active
Bạn sẽ thấy (env) xuất hiện ở đầu mỗi dòng.
2. Để bắt đầu mẫu push to talk, hãy chạy lệnh sau
googlesamples-assistant-pushtotalk
Lần này chúng tôi không cần id sản phẩm và id thiết bị.
3. Ngoài tính năng push to talk, bạn cũng có thể kích hoạt trợ lý Google bằng cách nói Ok Google. Đối với điều này, bạn phải nhập một id thiết bị không hợp lệ để nó hoạt động. Id thiết bị không chính xác có thể là bất kỳ thứ gì như aaaa, abcd.
Bây giờ, hãy chạy lệnh sau.
googlesamples-assistant-hotword --device-model-id
Giờ đây, bạn có thể hỏi bất cứ điều gì với trợ lý riêng của Google chỉ cần nói Ok Google.
Vì vậy, đây là cách chúng ta có thể cài đặt Trợ lý Google trên Raspberry Pi và có thể biến nó thành Google Home bằng cách kết nối Loa và micrô với nó.