ElectroBlog

ElectroBlog.jp

Electroblog.jp introduces convenience projects using smart home appliances and Raspberry Pi.

未来生活4:自宅の温度、湿度、明るさをリアルタイムで把握する方法(スマート家電リモコン、iPhoneを使用)

近未来の生活体験第4弾。

今回はiPhoneを使って屋外から自宅リビングの温度と湿度、明るさをリアルタイムで把握する方法を紹介します。

How to grasp the temperature, humidity and brightness at home in real time. (using iPhone)

 

夏場や冬場に屋外にいるときに自宅の暑さや寒さが気になるので実践してみました。

他にもペットを飼っている人の自宅の温度管理にはとても便利かと思っています。

(私は飼っていませんが、、、、)

 

また、即座に情報を確認するためにSiriで読み上げるバージョンを作ってみました。

 

作成したショートカットのイメージ動画はこちらからどうぞ(実際はSiriの音声がでます)

 

参考までに完成したショートカットを下記に共有します。

iCloudを有効にしないと見れません。

動作させるには、下記に記載するiPhoneにappをインストールしてから、ショートカット内のGoogleドライブのリンクURLを自分のアカウントのものに入れ直す必要があります。

https://www.icloud.com/shortcuts/a7892397c84d4cdb87ec5f4ebd59abf2

 

必要な機器は以前紹介しましたRatocのRS-WFIREX4とiPhoneの2つです。

 

まず最初にスマート家電リモコンとして、

ラトックシステムのRS-WFIREX4を購入します。

amazonでだいたい6900円前後でした。

   

これを壁に設置します。
f:id:ElectroBlog:20190908172327j:image

 

 

取説に従って、スマートフォンでRS-WFIREX4専用のapp「家電リモコン」をダウンロードします。

そして、基本設定を完了させます。

f:id:ElectroBlog:20190815093829j:image

 

 製品を選択します。今回はRS-WFIREX4。

f:id:ElectroBlog:20190815094002p:image

 

IFTTTの検索窓でratocと検索します。

Serviceタブを選択します。

f:id:ElectroBlog:20190922210921p:image

RATOC Remoconを選択します。
f:id:ElectroBlog:20190922210932p:image

ここでRatoc RS-WFIREX4の初期設定で作ったアカウント情報を入力します。
f:id:ElectroBlog:20190922210851p:image

 

Ratocが接続されますので画面下側の+を押下します。
f:id:ElectroBlog:20190922210908p:image

 

下にスクロールしていくと、

センサー情報をスプレッドシートへ記録

というレシピがあります。

f:id:ElectroBlog:20190922210857p:image

 

これをConnectします。
f:id:ElectroBlog:20190922210841p:image

 

スプレッドシートはGoogleのサービスですので、Googleのアカウントでログインする必要があります。

アカウントを持ってない方は別途Googleアカウントを作ってください。
f:id:ElectroBlog:20190922210925p:image

 

リクエストを承諾してGoogleとIFTTTをリンクさせます。
f:id:ElectroBlog:20190925095719j:image

 

レシピの設定をします。

基本そのままSaveで問題ありません。
f:id:ElectroBlog:20190922210918p:image

 

リモコン指定はなくても問題ないと思いますが、動かないようであれば、過去記事で記載しているようにRatocの家電リモコン appからリモコンの設定をしておくと安心です。

f:id:ElectroBlog:20190922210859p:image

 

Saveします。
f:id:ElectroBlog:20190922210836p:image

 

次に生成されるファイルを閲覧するためにGoogleスプレッドシートをインストールします。
f:id:ElectroBlog:20190922210828p:image

 

Saveして数分後のシートをみると定期的に部屋の温度、湿度、明るさが記載されています。

f:id:ElectroBlog:20190922210929p:image

 

設定の「共有とエクスポート」からシートの共有(リンクの共有)を有効にします。

これがないとショートカットアプリからデータを読み込めません。

f:id:ElectroBlog:20190927070904p:image    f:id:ElectroBlog:20190927070911p:image

 

これで下準備は完了です。

 

続いてSiriの読み上げに対応させます。

ここで、ちょっと面倒なことがあります。

スプレッドシートの内容はプロット開始から現在までのデータを含みます。

なのでシートの最後の行となる最新時間のデータだけを抜き取る必要があります。

 

また、Siriで読み上げる際にスラッシュ/など不要な記号や単位があると間違った読み方をすることがあります。

なので、その辺も最適化します。

 

まず最初に、ショーカットappをapp storeからダウンロードします。

f:id:ElectroBlog:20190928132932j:image

 

ショートカットappを開いて、新規プロジェクトを作成します。

 

まず、このショートカットの説明をSiriに読ませます。

データを読みこんでいる時間が少し長いので、その間にSiriでテキストを読み上げて紛らわすのが狙いです。

読み上げてる間は次の動作に遷移します。

音量の設定は好き好きで。

f:id:ElectroBlog:20190928085600j:image
f:id:ElectroBlog:20190928085558p:image

 

先程作成したスプレッドシートのリンクをコピーして、URLに貼り付けます。

そして、Webページの内容を取得をします。

この取得した内容は後で使います。
f:id:ElectroBlog:20190925232834j:image

 

ちなみにこの情報はそのままだと下記の内容です。

スプレットシートの内容が羅列されている状態です。

そのままでは使えません。

この生データの1番末尾が最新データです。

なので1番最後のブロックの2019以降を抜き出せば、最新データのみとなります。

f:id:ElectroBlog:20190927080649p:image 

 

 

現在の西暦の情報を抜き出すために、

日時から西暦だけを抜き出し、変数「year」として設定します。

f:id:ElectroBlog:20190925232909p:image

確認までに結果を表示を一時的に使って変数の値を確認してみます。

f:id:ElectroBlog:20190927075510p:image

 

ここで先程URLから読み込んだデータをテキストにおこします。

そして、

「リストから項目を取得」を使ってプロットされたデータ全体の中から最新のプロット分だけを抜き出します( year/以降を抜き出し)

この値を変数「info」として格納します。
f:id:ElectroBlog:20190925232824j:image

f:id:ElectroBlog:20190925232830j:image

 

ちなみに変数「info」にはこの情報が入ってます。

さっきの生データから最新データだけが抜き取られてることがわかります。

f:id:ElectroBlog:20190927081023p:image

 

この変数「info」に格納された情報をSiriに読み上げてもらうまで実践します。

この情報を使いやすくするために日付、時間、温度、湿度、明るさの値をそれぞれの変数に格納していきます。

 

まずは、変数「info」から最初の行となる日付を取り出し、変数「day」とします。
f:id:ElectroBlog:20190925232913p:image

確認までに結果を表示を一時的に使って変数の値を確認してみます。

f:id:ElectroBlog:20190927075822p:image

OKです。

 

同様の手順で時間を変数「time1」と設定します。

 

ただ、このままだと「スラッシュ」とSiriが読んでしまうので、

時間と分をそれぞれ別の変数として格納して、「 / 」を「 : 」に置き換えます。

f:id:ElectroBlog:20190925232815p:image f:id:ElectroBlog:20190928085632j:image

 

確認までに結果を表示を一時的に使ってそれぞれの変数の値を確認してみます。

hour                 minute

f:id:ElectroBlog:20190927075939p:image f:id:ElectroBlog:20190927080009p:image

 

/ を : に置き換えます。

f:id:ElectroBlog:20190928085709j:image

 

確認までに結果を表示を一時的に使って変数の値を確認してみます。

f:id:ElectroBlog:20190927075914p:image

 

次に温度情報を変数「temp」に格納します。

変数「info」の3行目を取り出し。

途中で温度値から2を引いていますが、

これは別の温度計の温度より2度ほど高い値だったので補正する係数となります。
f:id:ElectroBlog:20190925232925j:image
f:id:ElectroBlog:20190925232928j:image

 

確認までに結果を表示を一時的に使って変数の値を確認してみます。

f:id:ElectroBlog:20190927080031p:image

 

同様に湿度を変数「humid」とします。

変数「info」の4行目を取り出し。

補正係数は+10です。

湿度は少し低い値ででました。
f:id:ElectroBlog:20190925232840j:image
f:id:ElectroBlog:20190925232820j:image

 

確認までに結果を表示を一時的に使って変数の値を確認してみます。

f:id:ElectroBlog:20190927080108p:image

 

最後に部屋の明るさです。

変数「info」の5行目を取り出し。

一旦、変数「light」とします。

f:id:ElectroBlog:20190927080209p:image

生データだと0〜20くらいまでの数字の情報なので、

その数字がどういう意味か翻訳する必要があります。

今回は下記のようにしてみました。

データ < 3 → 暗い

3 ≦ データ < 5 → 明るい

5 ≦ データ → とても明るい

結果を変数「light2」に格納します。

式は下記の通りです。

f:id:ElectroBlog:20190925232836j:image
f:id:ElectroBlog:20190925232917p:image
f:id:ElectroBlog:20190925232845j:image
f:id:ElectroBlog:20190925232859j:image
f:id:ElectroBlog:20190925232923j:image

 

確認までに結果を表示を一時的に使って変数の値を確認してみます。

f:id:ElectroBlog:20190927080143p:image

 

これで必要な情報は揃いました。

今まで作った変数をSiriに読み上げてもらいます。

テキストを下記のように記載します。

変数はキーボード左上から選びます。

タイミングの都合でSiriを読み上げてくれないことがあったので、

待機1秒をいれたほうがいいです。
f:id:ElectroBlog:20190926234218j:image
f:id:ElectroBlog:20190928085736j:image

 

終わったらスピーカーの音量を最小にします。

この設定は自由です。

f:id:ElectroBlog:20190928085757j:image

 

Siriで読み上げるために

f:id:ElectroBlog:20190928090937p:plain

を押して設定画面を開きます。

Siriのフレーズを好きなワードで設定します。

f:id:ElectroBlog:20190928085853p:image

 

これで完了です。

早速、Siriで読み上げます。

f:id:ElectroBlog:20190928090006p:image

 

実行してくれます。

f:id:ElectroBlog:20190928085921p:image

 

取得中の読み上げはOKです。

ちょっと待ち時間が気になりますが、、、

f:id:ElectroBlog:20190928085939p:image

 

無事に温度、湿度、明るさを読み上げてくれました。

f:id:ElectroBlog:20190928091510j:image

 

できましたでしょうか?

これで屋外にいても自宅の温度、湿度、明るさを把握できて安心です。

 

ちなみにSiriが嫌な方は

ウィジェットからの実行も可能です。