BPK-ex7 : Alexaに指示を出すロボット

スマート電灯の操作

Raspberry PiでAlexaを動かす。

ALSA lib pcm_dmix.c:1022:(snd_pcm_dmix_open) unable to open slave
Expression 'paInvalidSampleRate' failed in 'src/hostapi/alsa/pa_linux_alsa.c', line: 2043
Expression 'PaAlsaStreamComponent_InitialConfigure( &self->capture, inParams, self->primeBuffers, hwParamsCapture, &realSr )' failed in 'src/hostapi/alsa/pa_linux_alsa.c', line: 2714
Expression 'PaAlsaStream_Configure( stream, inputParameters, outputParameters, sampleRate, framesPerBuffer, &inputLatency, &outputLatency, &hostBufferSizeMode )' failed in 'src/hostapi/alsa/pa_linux_alsa.c', line: 2838
ERROR:Failed to open PortAudio stream.Invalid sample rate
ERROR:KittAiSnowboyWakeWordEngine: Initialization error:Failed to open PortAudio stream.
ERROR:WakeWordAgent: exception in constructor: Failed to open PortAudio stream.
ERROR:main: Exception happened: Failed to open PortAudio stream.
INFO:Shutting down Wake Word Agent

1.ミニジャックに接続されているスピーカーのカード番号とデバイス番号を調べる。

**** List of PLAYBACK Hardware Devices ****
card 1: ALSA [bcm2835 ALSA], device 0: bcm2835 ALSA [bcm2835 ALSA]
Subdevices: 8/8
Subdevice #0: subdevice #0
Subdevice #1: subdevice #1
Subdevice #2: subdevice #2
Subdevice #3: subdevice #3
Subdevice #4: subdevice #4
Subdevice #5: subdevice #5
Subdevice #6: subdevice #6
Subdevice #7: subdevice #7
card 1: ALSA [bcm2835 ALSA], device 1: bcm2835 ALSA [bcm2835 IEC958/HDMI]
Subdevices: 1/1
Subdevice #0: subdevice #0

2.USB端子に接続されたマイクのカード番号とデバイス番号を調べる。

**** List of CAPTURE Hardware Devices ****
card 0: Device [USB PnP Audio Device], device 0: USB Audio [USB Audio]
Subdevices: 1/1
Subdevice #0: subdevice #0

3./home/pi にある隠しファイル「.asoundrc」を編集する。

$ cd
$ sudo nano .asoundrc
pcm.!default {
type asym
playback.pcm {
type plug
slave.pcm "hw:0,0"
}
capture.pcm {
type plug
slave.pcm "hw:1,0"
}
}

pcm.!default {
type hw
card 1
}

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

筐体を作る


日本語の音声コマンドを聞いたらAlexaに英語で指示を出すロボットを作る

点灯,Turn on the living light!
消灯,Turn off the living light!
時間,What time is it in Tokyo?
天気,What's the weather in Tokyo?
おはよう,Good Morning.
こんにちは,Good Afternoon.
こんばんは,Good Night.
感謝,Thank You!
元気,How are you?
タイマー,Set the timer for 3 minutes
停止,Stop the timer
不一致,well
sudo apt-get install flite
flite -t ”Hello World!”
subprocess.call('flite -voice "kal16" -t "Alexa"', shell=True)

時間

天気

タイマー

元気?

おはよう


用語解説

Alexa Voice Service(AVS)

npm

Maven

snowboy