Мазмуну:

Pi Home, Raspberry Powered Virtual Assistant: 11 кадам (сүрөттөр менен)
Pi Home, Raspberry Powered Virtual Assistant: 11 кадам (сүрөттөр менен)

Video: Pi Home, Raspberry Powered Virtual Assistant: 11 кадам (сүрөттөр менен)

Video: Pi Home, Raspberry Powered Virtual Assistant: 11 кадам (сүрөттөр менен)
Video: AMA record with community manager Oleg. PARALLEL FINANCE 2024, Июль
Anonim
Pi Home, Raspberry Powered Virtual Assistant
Pi Home, Raspberry Powered Virtual Assistant

Google Home үйдүн тегерегинде болууга пайдалуу. Ал Google камтылган кооз түзмөк - Google'дун санариптик жеке жардамчысы. Бул медианы ойното алат, эстеткичтериңизди жана эскертүүлөрүңүздү сактай алат, жол жүрүүңүздүн узактыгын айтып, үйдү автоматташтырат. Бул сиздин үйүңүздүн каалаган жерине жайгаштырылышы мүмкүн жана ал сиз үчүн укмуштуудай нерселерди жасайт, бирок, эгер сиз аны колдонооруңузга ишенбейм. Жакшы кабар, бирок сиз Raspberry Pi менен толук кандуу иштей аласыз.

Бул колдонмонун аягында, сиздин үн буйруктарыңызга жооп берген, толук кандуу иштеген Google Home болот. Болбосо, бул Google Homeдун бардык функциялары бар Жардамчы. Демек, ал бирдиктүү конверсияларды жасай алат, медианы ойнотот, упайларды текшерет, сизге аудио китептерди окуй алат, аба ырайын текшерет жана башка көптөгөн нерселерди. Ал ошондой эле акылдуу лампочкалар сыяктуу ар кандай үй автоматташтыруу түзмөктөрү менен иштейт, андыктан аларды үнүңүз менен башкара аласыз. Чыныгы Google Жардамчысы сыяктуу эле, сиздин DIY Google Home дагы функцияларды кошуу үчүн байланыштырылышы мүмкүн, мисалы, Evernoteко иштерди кошуу же таймер өчкөндө телефонуңузга эскертүү алуу.

1 -кадам: Сизге керектүү нерселер

Сиз керек
Сиз керек

Сизге керек болот:

  • Raspberry Pi 3 же 2 Raspbian орнотулган жана Wi-Fi орнотулган.
  • Power Supply жана MicroUSB Power Cable. (Минималдуу 5V, 2A)
  • MicroSD картасы. (Минималдуу 8 ГБ)
  • USB микрофону. (Сиз интернетте кантип орнотууну көп билесиз, бул жерде дагы …)
  • Баяндамачылар
  • Орнотуу үчүн клавиатура жана чычкан
  • LED жана туташтыруу үчүн бир нече зым

Бардык нерселер чогулду, туташты жана сайылды, Баштайлы.

2 -кадам: USB микрофонун орнотуу

USB микрофонун орнотуу
USB микрофонун орнотуу
  • Piде микрофондор жок. Эгер аудио жаздыргыңыз келсе, USB микрофонун тиркөөңүз керек.
  • USB микрофонуңузду Pi'ңиздин каалаган USB уячасына сайыңыз.
  • Терминалга төмөнкү буйрукту териңиз.

жазуу -l

Бул буйрук бардык жеткиликтүү аудио жазуучу түзмөктөрдү тизмелеп берет. Эгер USB микрофонуңуз туташып калса, бош калат. Сиз төмөнкү чыгууну алышыңыз керек

pi@raspberrypi: ~ $ arecord -l

**** CAPTURE Аппараттык Түзмөктөрүнүн тизмеси **** 1 -карта: Түзмөк [USB PnP Sound Device], 0 түзмөк: USB Audio [USB Audio] Көмөкчү түзүлүштөр: Subdevice #0: subdevice #0

Сиз USB түзмөгүңүз 1 картага тиркелгенин жана түзмөктүн идентификатору 0 экенин көрө аласыз. Raspberry Pi 0 картасын ички үн картасы, башкача айтканда, bcm2835 жана башка тышкы үн карталарын 1, 2 жана 2 деп аталган тышкы үн карталары катары тааныйт. төмөнкү…

Эми биз аудио конфигурацияларын өзгөртүүгө туура келет. Asound.conf файлын түзөтүү үчүн, төмөнкү буйрукту териңиз

sudo nano /etc/asound.conf

Файлга төмөнкү саптарды кошуңуз. Андан кийин файлды сактоо үчүн Ctrl+X жана Y баскычтарын басыңыз

pcm.! демейки {

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

Бул сиздин тышкы микрофонуңузду (pcm.mic) аудио тартуучу түзмөк (pcm!. Default), ал эми орнотулган үн картаңызды (0 -карта) динамик катары орнотот.

Төмөнкү буйрукту берүү менен (/home/pi) үй каталогуна.asonrc аттуу жаңы файл түзүңүз жана бул файлга /etc/asound.conf файлына кошулган

sudo nano.asoundrc.

3 -кадам: Динамиктин чыгышын орнотуу

Динамиктин чыгышын жөндөө
Динамиктин чыгышын жөндөө
  • Динамикти Raspberry Pi 3.5 мм гарнитура уячасына туташтырыңыз.
  • Пи конфигурациясынын экранын ачуу үчүн төмөнкү буйрукту аткарыңыз.

sudo raspi-config

Өркүндөтүлгөн опциялар> Аудиого өтүңүз жана чыгаруу түзүлүшүн тандаңыз. (3.5мм джек же HDMI)

4 -кадам: Микрофонду жана Динамиктерди сыноо

Микрофон менен Динамиктерди сынап көрүңүз
Микрофон менен Динамиктерди сынап көрүңүз

Динамигиңизди текшерүү үчүн терминалда төмөнкү буйрукту аткарыңыз. Бул сыноо үнүн ойнотот. Чыгуу үчүн Ctrl+C басыңыз. Эгерде сиз сыноо үнүн уга албасаңыз, динамиктин туташуусун жана кубаттуулугун текшериңиз. Тест окшойт-

Алдыңкы сол, алдыңкы оң

спикер -тест wt

Микрофонду текшерүү үчүн төмөнкү буйрукту аткарыңыз. Бул 5 секунддук кыска аудио клипти жаздырат. Эгер кандайдыр бир ката кетсе, мурунку кадамдарды кайра текшериңиз

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

Жазылган аудиону ойнотуу жана төмөнкү буйрукту терүү менен бардыгы туура иштээрин ырастоо

aplay --format = S16_LE -rate = 16k out.raw

Биздин аппаратура орнотулган

5 -кадам: Керектүү пакеттерди жүктөп алып, Python чөйрөсүн конфигурациялаңыз:

Керектүү пакеттерди жүктөп алып, Python чөйрөсүн конфигурациялаңыз
Керектүү пакеттерди жүктөп алып, Python чөйрөсүн конфигурациялаңыз

Биринчиден, операциялык тутумуңузду терминалда бирден командаларды иштетүү менен жаңыртыңыз

sudo apt-get update

sudo apt-get жогорулатуу

Терминалда буйруктарды бирден иштетүү Piңизде Python 3 чөйрөсүн (Google Assistant китепканасы Python 3 менен гана иштейт) түзүп, керектүү нерселерди орнотот

sudo apt-get python3-dev python3-venv орнотуңуз

$ python3 -m venv env $ env/bin/python -m pip орнотуу -pip setuptoolsду жаңыртуу

Питон чөйрөсүн жандырыңыз. Бул сиздин Pi командалык терминалынын алдына "(env)" текстин алып келет

env/bin/activate булагы

Пи боюнча Google Жардамчыны иштетүү үчүн керектүү бардык кодду камтыган Google Жардамчы SDK пакетин орнотуңуз. Ал Google Жардамчы китепканасын жана маанисин жүктөп алышы керек

python -m pip орнотуу-google-assistent-library жогорулатуу

6 -кадам: Google Assistant Cloud долбоорун иштетүү

Google Жардамчынын Булут Долбоорун иштетүү
Google Жардамчынын Булут Долбоорун иштетүү
Google Жардамчынын Булут Долбоорун иштетүү
Google Жардамчынын Булут Долбоорун иштетүү
Google Жардамчынын Булут Долбоорун иштетүү
Google Жардамчынын Булут Долбоорун иштетүү
Google Жардамчынын Булут Долбоорун иштетүү
Google Жардамчынын Булут Долбоорун иштетүү
  • Google Cloud Console ачып, жаңы долбоор түзүңүз. (Каалаган нерсеңизди атаңыз.) Сиз кирген каттоо эсеби Google Жардамчысына сурамдарды жөнөтүү жана жекече жооп алуу үчүн колдонулат.
  • API менеджерине өтүңүз жана Google Жардамчы APIсин иштетиңиз.
  • Аккаунт үчүн Аракетти көзөмөлдөөдө Желе жана колдонмо ишмердүүлүгүн, түзмөк маалыматын жана үн жана аудио ишмердүүлүгүн иштеткениңизди текшериңиз.
  • "Ишеним грамоталарына" барып, OAuth Мазмун экранын орнотуңуз.
  • "Ишеним грамоталары" өтмөгүнө өтүп, жаңы OAuth кардар IDсин түзүңүз
  • Колдонмонун түрүн "Башка" катары тандап, ачкычтын атын бериңиз.
  • OAuth ачкыч маалыматын сактаган JSON файлын жүктөп алып, аны сактап коюңуз.

7 -кадам: Raspberry Piнин аныктыгын текшерүү

Raspberry Pi аныктыгын текшерүү
Raspberry Pi аныктыгын текшерүү
Raspberry Pi аныктыгын текшерүү
Raspberry Pi аныктыгын текшерүү
Raspberry Pi аныктыгын текшерүү
Raspberry Pi аныктыгын текшерүү
Raspberry Pi аныктыгын текшерүү
Raspberry Pi аныктыгын текшерүү

Төмөнкү буйрукту иштетүү менен авторизация куралын орнотуңуз

(env) python -m pip орнотуу-google-auth-oauthlib [курал] жаңыртуу

Куралды төмөнкү буйрукту иштетүү менен иштетиңиз. 6 -кадамда жүктөлгөн JSON файлы үчүн туура жолду камсыздаганыңызды текшериңиз

(env) google-oauthlib-tool --client-secret "JSON_FILE_PATH"-скоп https://www.googleapis.com/auth/assistant-sdk-prototype --save --headless

Ал төмөндө көрсөтүлгөндөй көрсөтүлүшү керек. URL'ди көчүрүп, браузерге чаптаңыз. Эгерде анын ордуна, ал көрсөтөт:

InvalidGrantError

анда жараксыз код киргизилген. Кайра аракет кыл.

Сураныч, бул URLге өтүңүз:

Авторизация кодун киргизиңиз:

8 -кадам: LED индикаторун орнотуу

LED индикаторун орнотуу
LED индикаторун орнотуу
  • Жарыгыңызды GPIO pin 25 менен жерге туташтырыңыз.
  • Биз GPIO пин 25ти чыгаруу пини катары коймокчубуз.
  • Google Жардамчысы SDK, Google Жардамчы менен конверсия башталганда EventType. ON_CONVERSATION_TURN_STARTED кайра чалууну камсыз кылат. Ошол учурда, биз GPIO 25ти LEDди жаркыратып коюуга ниеттенип жатабыз.
  • Сүйлөшүү EventType. ON_CONVERSATION_TURN_FINISHED токтотулган сайын кайра чалуу кабыл алынат. Ошол учурда, биз LEDди өчүрүү үчүн GPIO 25ти баштапкы абалга келтиребиз.

9 -кадам: Жүктөө аяктаганда баштоо:

Жүктөө аяктаганда баштоо
Жүктөө аяктаганда баштоо
  • Пиңиз жүктөөнү бүтүргөндө, биз Google Жардамчыны жүктөөдө текшерип, киргизе турган питон скриптин иштетебиз.
  • Алгач төмөнкү буйрукту колдонуу менен GPIO колдоосун кошуу үчүн RPi. GPIO пакетин кошуңуз.

pip орнотуу RPi. GPIO

Кадамдарды бирден аткарыңыз. Колдонуучу каталогуна өтүңүз. Жаңы python файлын түзүү main.py

cd /home /pi

sudo nano main.py

Шилтемеленген скриптти жазыңыз жана файлды сактаңыз

Эми Google Жардамчыны баштай турган жана иштете турган бир кабык скриптин түзүңүз

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 Жардамчыны каалаган убакта иштетүү үчүн google-assistant-init.sh иштетсеңиз болот.

10 -кадам: жүктөө учурунда Google жардамчысын иштетүү

Жүктөө учурунда Google Жардамчыны иштетүү
Жүктөө учурунда Google Жардамчыны иштетүү

Google Жардамчыны жүктөөдө иштетүү үчүн эки жол бар. Келгиле, алардын ар бирин карап көрөлү

1. Жүктөөдө Pixel Desktop менен Autostart:

  • Бул Pixel рабочийи жүктөлгөндө Google Жардамчысын иштетет. Raspberry Pi конфигурациясында тандалган "Desktop" жүктөөчү экениңизди текшериңиз.
  • Төмөндөгү буйрукту териңиз.

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

@Xscreensaver -no -splashден кийин төмөнкүлөрдү кошуңуз

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

Сактоо жана чыгуу "Ctrl+X", андан кийин "Y"

2. Жүктөөдө CLI менен Autostart: (Мен муну жеке колдонгом, бирок autostart иштери жакшы иштебейт.)

  • Бул CLI жүктөөнү койгон болсоңуз, Google Жардамчысы башталат. Raspberry Pi конфигурациясында тандалган "CLI" жүктөөчү экениңизди текшериңиз.
  • Төмөндөгү буйрукту териңиз.

sudo nano /etc /profile

Файлдын аягына төмөнкү сапты кошуңуз

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

Сактоо жана чыгуу "Ctrl+X", андан кийин "Y"

11 -кадам: Жыйынтык

Жыйынтык
Жыйынтык

Бул Home Piден эмнеси менен айырмаланат? Чыгымдардан башка эч нерсе жок. Жыйынтык негизинен бирдей, сиз өзүңүздүн Google Google Үйүңүздү "Ok Google/ Hey Google" деген ойгонуу менен жандандырсаңыз болот жана түзмөк чыныгы Жардамчы сыяктуу иштейт. Сиз Google Home менен көптөгөн күнүмдүк иштерди жасай аласыз. Эгерде сиз жарыкты өчүрүү, эшикти текшерүү сыяктуу жеке тапшырмаларыңызды аткаргыңыз келсе, муну Google Actionsди Google Жардамчыңызга интеграциялоо менен кыла аласыз. Эгер Google Жардамчыны иштетүүдө кыйынчылыктар болсо, төмөндө комментарий калтырыңыз. Мен аларды колдон келишинче чечкенге аракет кылам.

Сунушталууда: