なんでも作っちゃう、かも。

Arduino/Make/フィジカルコンピューティング/電子工作あたりで活動しています。スタバの空きカップを使ったスタバカップアンプなど製作。最近はもっぱらArduinoと3Dプリンタの自作に興味があります。

Arduino電力計 - Pachubeにデータをアップロードする

Posted by arms22 on 2011年05月18日 3  0

目次

  1. Arduino電力計 - プロトタイプ
  2. Arduino電力計 - 回路図とスケッチ
  3. Arduino電力計 - サージ対策
  4. Arduino電力計 - Pachubeにデータをアップロードする
  5. Arduino電力計 - ケースに組み込む
  6. Arduino電力計 - 2系統対応の回路図とスケッチ
  7. Arduino電力計 - 分電盤に接続

イントロダクション


2015/9/27 追記
PachubeはXivelyというIoTのクラウドサービスに変わったようだ。


Arduino電力計で計測したデータをPachube(パッチベイ)にアップロードしてみたよ。

Pachubeはインターネットを介して環境データやセンサデータなど共有可能にするウェブサービスだ。Pachubeに参加すると、アップロードしたデータを共有したり、共有されたデータを使って新しいウェブサービスやアプリケーションを作ったりすることができる。例えばJapan GeigermapはPachubeにアップロードされた放射線データを日本地図にマッピングし、情報を可視化している。

Japan Geigermap : At-a-glance
http://japan.failedrobot.com/

Pachubeにアップロードしたデータは専用のページで見る事ができ、データは数ヶ月に渡って保存される。これでいつ・どのくらい電気を使ったのか確認することができるようになった。実際のところ、電力計はまだ分電盤に取り付けておらず、テーブルタップに繋がった機器の消費電力を計測して、自宅にいる間だけアップロードしている。

environment_feed_arms22_labs.png
Environment Feeds from arms22's lab

今回、Pachubeのサインアップ・フィードの登録・データのアップロードの仕方などは「レシピ39:自分の生活環境の放射線量を計測したい」を参考にした。Pachubeのサインアップなどの詳しい手順はレシピ39を参照してほしい。


ハードウェアの準備


IMGP0980

Arduinoをインターネットに接続するにはイーサネットシールドが必要だ。イーサネットシールドは写真のようにArduinoのピンソケットに挿して使う。こんなふうに基板を挿すことで機能を拡張できるのがArduinoの良いところだね。こう言った拡張基板を「シールド」と呼んでいる。

スイッチサイエンス - Arduinoイーサネットシールド(microSDスロット付)
http://www.switch-science.com/products/detail.php?product_id=383


Pachubeのサインアップ


まずはPachubeのサインアップから。次のページからPachubeにサインアップしよう。

Pachube - Choose a plan and sign up below
https://www.pachube.com/plans

1ヶ月ほど前、Pachubeの料金プランが一新され、7つ(ぐらい)あったプランがBasic、Pro、Premiumの3つになった。ProとPremiumは有料、Basicは無料だ。とりあえず始めたい人はBasicプランを選ぶといい。3つのプランの比較表を作ったのでPro、Premiumを検討したい人は参考にしてほしい。Proは365日データが保存されるのでおすすめ。

Pachube BasicPachube ProPachube Premium
非公開可能?不可不可可能
データの保存期間30日365日無期限
データストリーム5 データストリーム40 データストリーム250 データストリーム
APIアクセス制限5 回/分40 回/分250 回/分
データインポート制限500 データポイント/日4000 データポイント/日無制限
価格無料1ヶ月 $ 2.99
1年 $23.88(1ヶ月 $1.99)
1ヶ月 $ 11.99
1年 $95.88(1ヶ月 $7.99)


サインアップが終ったらタイムゾーンを日本/東京に変更しておく。
my profile→Details [click here to edit your info + password]→Time zone→(GMT+09:00) Tokyo


フィードの登録


次に新しいフィードを登録しよう。

Pachube - INPUT・Register a Feed
http://www.pachube.com/feeds/new

最低限入力しなければならない項目はFeed typeとFeed titleだ。Feed typeはmanualを選択しておけば良い。それ以外の項目について簡単に説明すると、
  • Description: フィードの概要
  • Feed tags: フィードタグ、カンマで区切って入力する
  • Website: ウェブサイトのURL
  • Contact email: メールアドレス、公開されるので非公開にしたいアドレスを入力しないこと
  • Location name: 場所の名前
  • Elevation (m): 高さ
  • Exposure: indoor(屋内)かoutdoor(外)
  • Disposition: fixed(固定)かmobile(移動体)
  • Domain: physical(物理的)かvirtual(仮想)
  • Datastream: データストリーム(この後解説)


データストリームの追加


Basicプランでは最大5つのデータストリームを追加できる。ここでは電力(W)、電圧(V)、電流(A)、皮相電力、力率の5つを追加する。それぞれID、タグ、単位、シンボル、タイプを指定して追加する。

datastream_example.png

タイプはbasic SI・delived SI・delived unitsなど5種類あるが、それぞれどのような意味かはっきりしないので、分らなければ何も選択しなくても良い、と思う。SIは国際単位系のことでbasic SIはSI基本単位のことだと思われる。SI基本単位はm(メートル)・kg(キログラム)・s(秒)・A(アンペア)・K(ケルビン)・cd(カンデラ)・mol(モル)の7つが定められている。

Wikipedia - SI基本単位
http://ja.wikipedia.org/wiki/SI基本単位

データストリームを追加したらSave Feedをクリックして、フィードの登録を完了しよう。登録を完了するとフィード専用ページにジャンプする。フィード専用ページのURL末尾5桁の数字はフィードIDなのでメモしておこう。
http://www.pachube.com/feeds/22512


APIキーの追加


PachubeにデータをアップロードするにはAPIキーが必要だ。 サインアップ時、すべての機能にアクセス可能なマスターAPIキーと呼ばれるAPIキーが1つだけある。マスターAPIキーは第三者に渡ると困った事態になりかねないので、非公開にしておく。

代わりにいくつかの制限を加えたAPIキーを作成し、それを使う。my profile→API Keysと進み、Additional API Keys→New API Keyを選ぶ。Permissions(アクセス権)、Expires(期限)を設定し、Create New API Keyを押すと新しいAPIキーが作成される。このAPIキーはいつでも削除できる。もし不正に利用された場合、直ちに削除すれば良い。

pachube_add_api_key.png

Show KeyをクリックするとAPIキーを確認できる。この長ったらしいキーもメモしておこう。

show_api_key.png


サンプルスケッチ


スケッチは次のURLからをダウンロードしてほしい。このスケッチはEthernetDHCPライブラリを使用するので、EthernetDHCPライブラリもあわせてダウンロードしておく。EthernetDHCPライブラリはArduinoのライブラリフォルダにコピーする。

Download: Power meter /w Arduino
http://code.google.com/p/arms22/downloads/detail?name=watt_pachube-001.zip

gkaindl.com - Arduino Ethernet
http://gkaindl.com/software/arduino-ethernet/

watt_pachube.pdeを開いて、settings.hタブを選択し、次の変数の値を書き換えよう。
  • environmentId
    フィードID、フィードの登録でメモした5桁の番号。
  • apiKey
    APIキー
  • macAddress
    イーサネットシールドに貼られているシールの12桁の番号
値を書き換えたらArduinoにスケッチをアップロードだ。

簡単にスケッチの内容を解説すると、setupはEthernetライブラリの初期化、DHCPでIPアドレスの取得を行う。loopはcalcWatt(消費電力計算)の呼び出しと1分間隔でupdateDataStream(Pachubeへのデータアップロード処理)の呼び出しを行う。実際のデータのアップロードはupdateDataStreamで行う。データは次の様にデータストリームの追加で指定したIDとデータ(数値)をカンマで区切って送る。
0,32.340
1,105.970
2,0.567
3,60.056
4,53.849


次回予告


ここまででArduino電力計の基本システムは出来上がった。次回はケースの作成と分電盤への取り付けを行う予定。長々と続けて来たこの連載も次で最後、かも。


YAPAN.org - レシピ39:自分の生活環境の放射線量を計測したい
http://www.yapan.org/main/2011/03/measure_radiation_dose.html

Ondra on Tumblr - 測ることで続ける節電
http://tumblr.ondra.cc/post/4866024075/saving-electricity-by-measuring

菅工房 - ウェザーステーション観測データ
http://www.sugakoubou.com/doku/ウェザーステーション観測データ


Arduinoイーサネットシールド(microSDスロット付)
スイッチサイエンス
売り上げランキング: 9571

Ads by Google

3 Comments

says..."管理人のみ閲覧できます"
このコメントは管理人のみ閲覧できます
2011.05.23 19:24 | | # [edit]
says..."管理人のみ閲覧できます"
このコメントは管理人のみ閲覧できます
2012.01.22 22:23 | | # [edit]
arms22 says..."Re: PachubeへUP時エラー"
なるほどそれは見落としていました。
すみません。
IDの型をint型からunsinged long型にすると良いかと思いましたが、
char型(文字列)にするほうが良さそうですね。
私のほうのスケッチもそのように変更します。
2012.01.23 09:38 | URL | #- [edit]

Leave a reply






管理者にだけ表示を許可する

該当の記事は見つかりませんでした。