温度,湿度,気圧をGoogleDriveに保存、スマホで見れるお手軽 IoT (4)
2015-11-12
最終回である今回は、前回 Raspberry Pi に送信したデータを GoogleDrive に保存する方法をご紹介します。
【Lazurite Sub-GHzでBME280のデータを受信する】
温度,湿度,気圧をGoogleDriveに保存、スマホで見れるお手軽 IoT (1)
【Raspberry piの設定】
温度,湿度,気圧をGoogleDriveに保存、スマホで見れるお手軽 IoT (2)
【BME280のデータをRaspberry Piで受信する】
温度,湿度,気圧をGoogleDriveに保存、スマホで見れるお手軽 IoT (3)
1 Googleドライブのアクセス権限を変更
Raspberry Piから、以下のURLにアクセスしてGoogleのアカウントでログイン します。
https://console.developers.google.com/
↓ブラウザーボタンをクリックしてURLを入力してください。
」
2.プロジェクトの作成
1)右上のプルダウンメニューから「プロジェクトの作成」を選択し、新しいプロジェクトを作成します。
2)任意のプロジェクト名を設定し、「作成」ボタンをクリックします。
3.Drive APIを有効にする
4.クライアントIDを取得する
1)①~⑤を順番にクリックするとクライアントIDを取得することができます。
2)クライアントIDの名前をクリックすると、クライアントIDとクライアントシー クレットを確認することができます。
↓↓↓
5.Rubyスクリプトをダウンロードする
1)次に、GoogleドライブにアクセスするためにRubyスクリプトを使用します。
使用するRubyスクリプトをGitHubからダウンロードしてください。
以下のURLを入力してアクセスし、「Download ZIP」をクリックします。
https://github.com/LAPIS-Lazurite/BME280_GoogleDrive
2)BME280_GoogleDrive-master.zipというファイル名で保存されますので
Zipファイルを解凍します。
6.アクセスコード(OAuth code)を生成するためのURLを取得する
1)まずは以下を入力してダウンロードしたファイルのプログラムが保存されているフォルダに移動します。
pi@raspberrypi ~ $ cd Downloads/BME280_GoogleDrive-master/raspberry_pi/
pi@raspberrypi ~/Downloads/BME280_GoogleDrive-master/raspberry_pi/$ sudo ruby1.9.3 gdrive_sample.rb
2)次に先ほど取得したクライアントIDとクライアントシークレットを入力しURLを取得します。
1を選択してURLを取得します。
7.アクセスコード(OAuth code)を取得する
上記で取得したURLをブラウザで開き、Googleドライブへのアクセスを許可をクリックするとアクセスコード(OAuth code)を取得することができます。
8.JSONコード(refresh token)を取得する
今度はターミナルで2番を選択し、JSONコード(refresh token)を取得します。先ほど取得したアクセスコードを入力すると、JSONコードを取得することができます。
上記で取得したアクセスコード(OAuth code)を入力するとJSONコード(refresh token)が取得できます。
9.Rubyスクリプトを編集する
先ほど解凍したZIPファイルの中のGoogleDriveMonitorを開き
テキストエディッタで編集してください。
Download > BME280_GoogleDriveMonitor.rb > raspberry_pi > GoogleDriveMonitor.rb
↓ 下記の箇所を取得したアクセス情報に書換えて保存します。
10.GoogleDriveMonitorを実行する
※予め温湿度/気圧センサーを送信しておきます。
1)「THP_logger」というファイル名のスプレットシートをgoogledriveで作成します。
2)RapsberryPiのターミナルで3番を選択し、スプレットシート名「THP_logger」を入れ、シートに書き込めるかテストします。(write date部分に書かれたものを送ります。)
write success!と出たら成功です。
6番を選択し、終了します。
3)以下を入力しGoogleDriveMonitorを実行します。
~ $ sudo insmod ~/driver/sub-ghz/DRV_802154.ko (←ドライバーを有効にします)
~ $ sudo ruby1.9.3 GoogleDriveMonitor.rb
↑ RaspberryPiの画面にセンサーの値が出てきます。
11.スプレットシートでセンサーデータを確認する
そして「THP_logger」を開いてみると・・・・
センサーデータが保存されていることが確認できました!! ↓↓↓
アイデア次第で、いろいろ活用できそうですね♪
■終了方法
Ctrl+c でRaspberryPiのアプリケーションを終了します。
■ドライバの無効化
Lazurite Sub-GHzから信号を出した状態のままアプリケーションを終了して放置すると、メモリーに受信データが保存され続けてしまい、システムが不安定になる可能性があります。
そのため、使用しない場合は以下を入力してドライバーをはずしてください。
$ sudo rmmod DRV_802154
以上、「温度,湿度,気圧をGoogleDriveに保存、スマホで見れるお手軽 IoT」をお届けしました。
次回は、「Twitterで温度・湿度・気圧をつぶやく」をお届けします。お楽しみに!