東京電力の電力メーター情報発信サービス(Bルートサービス)に申し込みました.
Bルートサービスはスマートメーターで計測したデータを HEMS 機器へ送信するサービスですが,Wi-SUN Bルートに対応した USB アダプターがあれば PC にデータを読み込めます.
今回は Wi-SUN 準拠のドングルである Wi-SUN USBアダプター RS-WSUHAシリーズ の RS-WSUHA-P を使います.
Bルートサービス申し込み
東京電力の場合,電力メーター情報発信サービスから申し込みができます.
スマートメーターが設置済みの場合は 1 週間程度で使えるようになるようです.
自分の場合は以下のようなスケジュールでした.
- 9 月 09 日:申し込み
- 9 月 11 日:パスワードがメールで届く
- 9 月 16 日:認証 ID が郵便で届く
Tera Term を使った接続確認
接続可能か確認するだけなら Tera Term を使うのが簡単です.
なお,後述の Python コードではライブラリが必要な設定と接続処理を行うため,Tera Term での手動操作は不要です.
1. COM ポートの確認
RS-WSUHA-P を PC に接続します.
Windows 11 の場合,デバイスマネージャーの ポート(COM と LPT) に出てきます.
アダプターを接続したときに追加された COM ポートを確認します.この環境では COM3 でした.

プロパティを開き,デバイスが正常に動作しているかを確認します.

2. Tera Term の設定
まず,シリアルポートと端末の設定をします.設定 → シリアルポート で,次のように設定します.
| |

設定 → その他の設定 → 端末 で,受信・送信の改行コードをともに CR,ローカルエコーを無効にしておきます.

Tera Term で RS-WSUHA-P に割り当てられた COM ポートを開きます.

3. RS-WSUHA-P との通信確認
次のコマンドを入力します.
| |
次のように EVER と OK が返れば,PC と RS-WSUHA-P 間の通信は正常です.
| |
4. 受信データを 16 進 ASCII で表示する設定
この設定は Bルートへの接続そのものには必須ではありませんが,Tera Term から EDATA を確認する場合に扱いやすくするため設定します.
なお,後述の Momonga は必要に応じてこの設定を自動的に行います.
まず,現在の設定を確認します.
| |
次のように OK 00 と返る場合は,受信した EDATA を 16 進 ASCII に変換する機能が無効です.
| |
次のコマンドで有効にします.
WOPT は書き込み回数に制限があるため,ROPT が 01 ならそのままで大丈夫です.
| |
設定後,もう一度 ROPT を実行します.
| |
次のように返れば設定完了です.
| |
5. Bルートのパスワードと認証 ID を設定
電力会社から通知された Bルート認証用のパスワードと認証 ID を設定します.
C は,パスワード長の 12(10進数)を 16 進数で表した値です.
| |
6. スマートメーターを探す
次のコマンドで Bルートのスマートメーターをスキャンします.
| |
しばらく待つと,例えば次のような結果が返ります.
| |
EVENT 22 はスキャンの終了を表します.
以降で使用するのは Channel,Pan ID,Addr の 3 つです.
7. Channel と Pan ID を設定
EPANDESC で取得した Channel を S2 レジスタ,Pan ID を S3 レジスタに設定します.
以下は Channel が 35,Pan ID が 1234 の場合の例です.
| |
8. スマートメーターの IPv6 アドレスを取得
EPANDESC の Addr を指定して,スマートメーターの IPv6 リンクローカルアドレスを取得します.
実行すると IPv6 アドレスが返るので,次の手順で使用します.
| |
9. スマートメーターへ接続
SKLL64 で取得した IPv6 アドレスを指定して接続します.
| |
しばらく待ち,次のように EVENT 25 が返れば,RS-WSUHA-P とスマートメーター間の Wi-SUN Bルート接続は成功です.
| |
Python を使ったデータ取得
Momonga というライブラリを使ってスマートメーターからデータを取得できます.
いくつかサンプルを試します.
Python は v3.13 で,Momonga は v0.7.0 を使用しています.
Tera Term を使った場合は切断か終了してから実行します.
瞬時電力の取得
現在の使用電力を取得します.
| |
以下のようなデータが取得できました.途中で急激に上がっているのは電気ケトルを使ったためです.
| |
特定の日付のデータを取得
スマートメーターには最大で 99 日前までのデータが保持されており,30 分ごとの積算電力量が取得できます.get_historical_cumulative_energy_1 で取得できます.対象日は相対的に指定します.前日なら day=1 です.
取得できるのは積算データなので,取得対象日の 0 時の値を引いて,0 時から各時刻までの累計使用量を表示します.
| |
以下のようなデータが取得できました.
| |