スマートスピーカーとラズベリーパイ/ラズパイを連動させ遊んでみる

こんにちは、組み込みエンジニアのtomozoです。

 

今回は、ラズベリーパイ(以下ラズパイ)を利用して

スマートスピーカーと連動について紹介したいと思います。

 

この記事は

ラズベリーパイを使って遊んでみたい方

組み込みエンジニアを志望する方

向けの記事です。

 

今回の内容は直接組み込みと関係ないですが、

私はいいモノを作るには遊び心や心の余裕が必要だと思っています。

毎日忙しくて目の前の仕事に追われているような状態だと

新しいモノやいいモノを考える心の余裕がありません。

 

新しくて面白い商品や技術はどんどん生み出されているので

そういったものに関心や興味を持って

使ってみたり体験することで自分のアイデアが広がり

視野を広げることができるようになります。

 

新しいモノや技術を知らないエンジニアは

成長していけなず、いずれ取り残されてしまいます

 

そいう言ったことにならないように常に新しいモノに触れて

遊んでみるようにしましょう。

tomozo

遊ぶだけでなく周りの人やSNSなどで自分でアウトプットすることも大事ですよ

 

この記事を読めば

ラズベリーパイとスマートスピーカーを連動する考え方

が分かるようになります。

 

tomozo

今回は概要だけ説明するのでこういう技術でできるんだと気軽に読んで下さいね

 

それでは説明を始めます。

 

何をするか(目的)

ラズベリーパイとスマートスピーカーを連動って何ができるの?

エンジニア志望あん

ラズベリーパイはこちらの記事で紹介しているので参考にして下さい。

ラズベリーパイでLEDの制御(C言語利用)【組み込み志望者向け】

 

スマートスピーカーは話しかけると何かしてくれますが、

それだけでは普通の使い方です。

 

ラズパイに人感センサを付けて、センサがONしたら

スマートスピーカーに「おはようございます」と話させることができます。

これだけでは普通のスピーカーでもできることなのですが、

スマートスピーカーでやったほうがより勉強になります。

 

またセンサがONした時間のログデータをクラウドに残す方法も取り入れてみましょう。

 

tomozo

応用すれば組み込み機器の使用ログを残したりできそうですね

 

やりたいことを整理して簡単な図にすると以下の①~③のようになります。

準備

以下の必要なものを用意しましょう。

  • ラズベリーパイ
  • スマートスピーカー
  • 人感センサ
  • googleスプレッドシートを作成

スマートスピーカー

スマートスピーカーと一言で言っても

現在は非常にたくさんの種類があります。

久しぶりにどんなものがあるのか調べてみましたが、

多すぎて何を選べばいいかよく分からないくらいです。

 

メーカーとしてはAmazon、Google、Apple、Bose、Sonyといったことろが有名です。

Amazonプライムに契約しているならAlexaのように

契約しているサブスクリプションとの組み合わせで選んだり、

自分に合った用途・メーカー・価格で選ぶようにしましょう。

最近は液晶画面の付いたタイプもあるので、動画を視聴できたりします。

もし迷ったら、売れ筋のGoogleかAmazonで選んでおけば失敗はしないですね。


 

もし合わないなぁって思ったら、メルカリなどで売ることもできますし

安い物なら数千円で購入できるので悩むより早く買って使ってみることをお勧めします。

tomozo

私はgoogle home miniを持っているのでそちらを利用しました


 

利用する技術

実現するのに必要なこと箇条書きにすると以下のようになります。

  1. ラズパイに人感センサを取り付ける
  2. google-home-notifierを組み込む
  3. Google Apps Scriptを作成する

 

何事もそうですが、難しいことを一気にすべてをやろうとすると

難しく感じたり手間がかかりそうに思って挫折しまいます。

 

例えば今回のようにやることを3段階に分けて

一つずつやってみるようにすれば以外にできそうに思えてきてやる気が出ますよ。

 

ラズパイに人感センサを取り付け

ラズパイに人感センサを取りつけます。

人感センサは以下のようなものです。

 

センサーモジュールは電源, 出力, Groundとなっています。

ラズパイのDC5V(02or04)、GPIO、Groundに繋ぎましょう。

 

人が近づいたことをラズパイで検出できればハードウェアはOKです。

人感センサは感度調整できるので上手くいかない場合は調整してみてください。

google-home-notifier

スマートスピーカーに自発的に話させます。

 

スマートスピーカーはプッシュ発話できないので、

「google-home-notifier」というライブラリを使って

発話できるようにします。

プッシュ発話というのは製作者が意図したタイミングで

スマートスピーカーに発話させることです。

 

ラズパイ上でgoogle-home-notifierを実行して

google homeから発話させるというわけです。

 

ラズパイでやることは以下です。

  • node.jsとnpmの導入
  • google-home-notifierの依存パッケージをインストール
  • google-home-notifierをインストール

ラズパイからスマートスピーカーを発話できればOKです。

Google Apps Script

ラズパイからの情報をクラウド上のgoogleスプレッドシート記録します。

こちらのサイトに分かりやすく方法が紹介されているので

実際に作ってみようという方は参考にしてみてください。

 

やることは

  • スプレッドシートの作成
  • スクリプトを作成
  • ラズパイからURLに情報を載せてスプレッドシートにアクセスする

結合する

以上の3つの仕組みを組み合わせれば、

人感センサが反応したらスマートスピーカーを発話させ

その時の状態をスプレッドシートに記録できるようになるというわけです。

 

もちろんプログラミングは必要です。

C言語でもpythonでも実現可能です。

組み込みエンジニアならC言語でと行きたいところですが

pythonのほうが情報が多くて作りやすいかなと思います。

 

今回は身近なもので世の中にある既存の技術を組み合わせて利用すれば

こういったことができるという考え方と

簡単な紹介がメインなので詳しい方法は省略しています。

 

今回特に私がお伝えしたいことは

スマートスピーカーのような新しいガジェットを使って、

メーカーから与えられたことだけではなく

今まで使ったことのない技術を調べて面白そうだなと思ったら

自分で試してみることが重要ということです。

 

そうやって知識と経験を積んでいけば、

組み込みエンジニアとして幅広く活躍できるようになりますよ

 

まとめ

何をするか(目的)

  • 人感センサで人を検出
  • ラズパイで発話
  • クラウドに記録

準備

  • ラズパイとスマートスピーカー
  • googleスプレッドシートを作成

利用する技術

  • ラズパイのGPIOでセンサから信号を検出
  • google-home-notifier
  • Google Apps Script

 

今回は一例を紹介しましたが、他にどんなことがあるか

自分でも調べてみましょう。

 

参考になったとか、もっとここが知りたいなど一言でも

コメント、意見などいただけると励みになります。

 

こちらの記事で組み込みエンジニアが学ぶことをまとめています。

もしよければご覧ください。

組み込み系の勉強まとめ【必修】ソフトエンジニアとして学ぶべきこと

 

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

CAPTCHA