2
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 5 years have passed since last update.

Amazon Pollyを使って温度をアナウンス

Last updated at Posted at 2018-12-13

先日、Slack Advent Calendar 2018
[温度データSlack投稿システムを「5分」で作ってみた!] (https://qiita.com/mikawan/items/8184cdcc64642aa3729e)を投稿したのですが、常にスマホを見ているわけでも無いので、通知を見逃してしまうことも有りました。そこで、音声を使ってみようと考えました。

作成したのは、ある温度を超えると、Amazon Pollyを利用して「〇〇℃です。暑いのでエアコンをつけましょう。」と話す仕組みです。

使うもの

■Windows 10 PC
Gravio(月額500円)
 -Gravio Studio Ver.2.0.2065
 -Gravio Server Ver.2.0.2153
 -無償貸出の温度センサー
■Amazon Polly(無料利用枠あり 詳細はこちら
12ヶ月間の無料利用枠があり、1ヶ月あたり500万文字まで利用できます。

設定

以下の流れで設定します。

  • 【事前準備】Amazon Pollyを使うために必要なアクセスキーを取得
  • 温度センサーの設定
  • Amazon Pollyの動作に関する設定
  • 動作タイミングの設定

Amazon Pollyを使うために必要なアクセスキーを取得

GravioでPollyを使用するためには、アクセスキーとシークレットアクセスキーが必要です。

AWSのコンソール画面よりPollyを使うためのアクセスキーを取得します。

AWSの登録は、ガイダンスに従ってクレジットカード情報など入力することで完了します。

アクセスキーの取得方法については、こちらの記事を参考にしています。
Amazon Pollyで投稿記事に音声を付けてみた

Gravioで温度センサーの設定 (再掲)

[前回の記事] (https://qiita.com/mikawan/items/8184cdcc64642aa3729e)でも同じ内容を書いているのですが、再掲しておきます。

センサーとペアリング

温度センサーとペアリングします。
センサーがチカチカっと光り、以下の画面が表示されれば、ペアリング完了です。
温度センサーペアリング
ペアリングについては、こちらをご参照ください。

センサーの登録

(1) エリア・レイヤーを登録する
画面右上の”+”ボタンをクリックし、エリアを作成します。
エリアを作成すると自動的にレイヤーが作成画面が表示されるので、SENSING DEVICE TYPEにAqara-Temperatureを選択します。

(2) レイヤーにデバイス(センサー)を登録する
一番右のデバイスウィンドウの”⊕”ボタンを選択し、デバイスを追加します。
デバイスのスライドボタンをONにすることで、データの収集が開始されます。

Amazon Pollyの動作に関する設定

今回は、Amazon Polly Speechコンポーネントを使用して、動作(アクション)を作成します。
アクション画面にて、Amazon Polly SpeechコンポーネントをSTEPに追加します。
コンポーネントのプロパティを選択し、下図のように設定します。

image.png

Text to speechは、動作タイミングのセンサーデータを可変数として使用することができます。データを使用する場合は、av.Dataを使用します。また、データと定型文を組み合わせる際は、データと定型文を”+”でつなぎます。

今回は
av.Data + "度です。暑いのでエアコンをつけましょう"
と設定します。

動作タイミングの設定

前項で設定した動作を実行するタイミングを設定します。
今回は、夏場にエアコンの推奨設定温度とされている「28℃」を超えたときに通知します。

トリガー画面から、"+”をクリックしトリガーを作成します。
トリガーの設定内容は以下のとおりです。

項目 設定値
エリア 温度データのエリア
レイヤー 温度データのレイヤー
アクション名 温度データ Polly(先程作成したアクションカード)
Interval 5(Default)
Classic/Threshold Triger Classic Trigger(Default)
温度 >=28
設定後の画面がこちら。
image.png

こちらを設定した後、トリガーのスライドボタンを有効にすると、温度が28℃を超えると音声で通知されます。

あとがき

今回はトリガーの数値を変えやすいよう、都度Amazon Pollyを利用する設定にしましたが、当然AWSの費用、および、ネットワーク費用が発生します。固定の音声メッセージの発出で充分な場合は、一度Pollyを利用して音声ファイルを作り、Gravio上で音声ファイル再生を行なえばコストダウンが可能ですし、ローカルで利用可能になります。
(Gravioは音声ファイルの再生もできます。)

変化するデータをもとに音声アナウンスする場面としては、カメラに写っている人数を通知するといったことも可能です!
様々な用途で使うことができるGravioをぜひご活用ください!

参考サイト

Gravioとは?

温度センサーのデータをエクセルで簡単に表示

温度データSlack投稿システムを「5分」で作ってみた!

Amazon Pollyで投稿記事に音声を付けてみた

2
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
2
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?