スマートメーター

You are currently browsing articles tagged スマートメーター.

2011年頃からmbedマイクロコントローラーにはまって、それを使って気象情報収集や自宅消費電力測定等、いろいろなシステムを作り、このブログでも紹介してきました。その後世の中的には、IOTだなんだと騒がれ初めて、mbed以外にも様々なプラットフォームが出て来たのですが、その中で今最も勢いがあるのがRaspberry Piです。

当初Raspberry Piは、主に教育用を目的に開発されたためか、制御用のIOやそのソフトウェアサポートがあまり充実しておらず、当方は全く魅力を感じませんでした。ところが、IOの数を増やしてCPUパワーを上げた第二世代のmodel B-2が出てから開発が加速して、現在のmodel B-3ではwifi/bluetoothも標準装備され、さらに5$という驚きの低価格のmodel zeroが出て、とても無視出来なくなってきました。それで当方も半年くらい前から本格的にRaspberry piに取り組み始めました。

まず手始めにmbedで作った自宅の消費電力測定システムをRaspberry piを使用して組み替えてみました。

raspi-ep1

Raspberry piに変更したシステム

このシステムは、分電盤に付けた電流センサーのアナログ電圧値をmbedの内蔵A/Dコンバーターで読み取って、webサーバーに結果を送信していました。Raspberry piはA/Dコンバーターを内蔵していないので、MCP3002 2ch 10bit A/Dチップを取り付け、それで電圧を測定します。インターフェースはSPIでRaspberry piと接続します。このICチップは秋月電子で、一個180円(安い!)で売っています。

raspi-ep2

ケース内部 上部にModel A+

raspi-ep3

ブレッドボードにMCP3002 2ch A/D ICを追加

Raspberry piは、一番小型で低価格なmodel A+を使用しました。当方ソフトウェア開発には最新のmodel3を使用しているのですが、今回の用途ではIOとwifiだけで、それほどCPUパワーも必要としないので、A+を使いました。A+はUSBが1ポートあり、これに安価なUSB wifiアダプターを付けています。これを適当な延長ケーブルでケースの外に出して、電波が遮断されないようにしています。

電流センサーの電圧変換回路は前のシステムと同じで、そのまま流用しました。Raspberry pi上のソフトウェアはPythonを使用しています。
約1秒に1回、A/B2系統の電流値を測定して、内部で平均化した値を5分に1回WebサーバーにPOSTしています。Webサーバー側はPHPで書いたスクリプトがPOSTを受け取って、それをテキストファイルに保存しています。グラフ表示はhtml+PHPで作成し、インターネット経由でどこからでも参照できます。

mbedとRaspberry piの詳しい比較は、別のポストで書くつもりですが、このシステムの移行はあっけないくらい簡単に行えました。もうよほどハードウェア要件がシビアでないかぎりは、mbedを使う事は無いと思います。それほどRaspberry piにはまってしまいました。

pi-eplog-y2.php

Webサーバー上に保存された結果のグラフ表示

 

Tags: , ,

mbedによる消費電力測定システムを作成して使用していましたが、自宅の分電盤は「単相3線式」になっており、電流センサー一つでは片系の電力しか測定していない事がわかりました。

中部電力のサイトに、「単相3線式」を説明する図がありました。

100Vは赤と黒の2系統あるので、センサーをそれぞれに付けて電流を測定する必要があります。
さっそく、電流センサーと回路を増設しました。

分電盤とmbedによる測定システム

赤、黒それぞれに電流センサーを接続

ブレッドボード上に回路を増設

mbedをのせているブレッドボードは、まだ余裕があったので、同じ回路を増設し、アナログ入力ポートを追加しました。
測定データが増えるだけなので、ソフトウェアの変更も簡単に終わりました。

下は結果表示のグラフ例です。

2系統の消費電力グラフ表示

 冬になって、暖房や浴室乾燥機を使用するようになり、消費電力が増えてきました。
どの機器が消費電力が大きいか、視覚的にわかるので非常に便利です。

Tags: , ,

mbedを使用して、自宅の電力消費量を測定し、ロギングするシステムを作成しました。

分電盤の横に設置したシステム

分電盤に電流センサーを取り付け、出力をmbedのAnalog inで測定し、webサーバーに送信します。
電流センサーは、U_RDという会社のCTL-10-CLSクランプ型センサーを使用しました。クランプ部分が開くようになっていて、分電盤の電源ラインに容易に取り付け可能です。

センサーで測定した電流が電圧に変換されて出力されます。それを技術情報に掲載されている「平均値整流型電流変換回路」で直流電圧にして、mbedで測定します。センサーはブレーカーの入り口のケーブルに取り付けました。

ブレーカに取り付けた電流センサー

mbedは、ブレッドボードに載せて、適当なプラスチックケースに納めました。ブレッドボード上に上記技術情報にある変換回路を実装しています。

ブレッドボードに実装したmbedと平均値整流型電流変換回路

平均値整流型電流変換回路

RLは100Ωで、ブリッジのダイオードは指定通り電圧降下の低いショットキーバリアーを使用しています。
交流電流Ioと出力電圧Eoは以下の変換式で表されます。

出力電圧 Eo=0.9・K・Io・RL/n(VDC)

n(巻数)はこのセンサーでは3000になります。kはRL=100Ωの場合、1になります。(センサー特性より)
この式で交流電流Ioを算出し、電力に変換しています。

Etherインターフェースは、PLANEXのMZK-RP150Nをコンバーターモードで使用して、無線LANに変換しています。
マッチ箱程度の大きさで、非常に小型です。
電源は、AC100Vを近くまで延長し、小型の2ポートUSB電源を使用してmbedとMZK-RP150Nに供給しています。
ケース内に入れると電波到達や発熱が心配なので、両面テープでケースの前面に貼付けています。

ケースに貼付けたUSB電源と無線LANアダプター

電流を約2秒に1回測定し、Webサーバーに平均値を10分間隔で送信しています。
webサーバーには、mbedからデータを受け取ってテキストファイルに保存するPHPプログラムを置いています。

保存されたテキストファイルを読んで、グラフに表示するPHPプログラムも合わせて作成しました。

PHPによるグラフ表示

これで、どこからでも自宅の電力消費量を確認できるようになりました。
グラフ上部には消費電力の積算値をKWhで表示しています。
mbedとPHPのソースコード詳細は別途掲載できればと思います。

*このシステムの作成は、個人的に行っているもので、これを見て作成され何らかの不具合・故障・事故等が発生しても、当方は一切責任を負いません。あくまでも自己責任で行い下さい。

Tags: , , ,