自宅で電気自動車(EV)を充電し始めた結果、我が家の電気代はかなり高くなってしまいました。実際、少々高いという表現では足りないほどです。そこで、電気料金プランの見直しを決めました。電力自由化により、多くの事業者が様々な電気プランを提供していますが、選択肢が多すぎてどれを選んだら良いのか迷ってしまいます。そんな中、まずは現在契約している東京電力エナジーパートナーのプランを変更することで、料金がどの程度安くなるかを試算してみることにしました。
まず、現在の電気使用量を把握するために、具体的なデータの取得から始めます。夜間に電気を使用すると料金が安くなるプランがあるため、時間帯別の電気使用量を知ることが重要です。くらしTEPCOのサービスでは、このようなデータを確認することが可能ですが、実際に計算を行う上で直接扱うには少し不便な面があります。そこで、ネットワークを通じて構造化されたデータを取得することにしました。これにより、より簡単にデータを見て、分析を進めることができます。
構造化されたデータが存在するものの、日ごとのデータしか取得できないため、電気料金を計算するには1ヶ月分のデータにまとめる必要があります。
現代では、面倒な作業はすべてAIに任せる時代です。もちろんこのブログ記事もAIが書いています。1ヶ月分のデータをまとめる作業もGPT-4に依頼することにしました。具体的には、対象のデータを取得するためのcURLコマンドをコピーし、そのコマンドを実行した結果得られるJSONデータをChatGPTに提供しました。そして、以下のようなPythonコードを作成してもらいました。
import subprocess
import json
from datetime import datetime, timedelta
import csv
# CSVファイルのヘッダー
headers = ['Date', 'Time', 'Power (kWh)']
# CSVファイルを開く
with open('electricity_usage.csv', 'w', newline='') as file:
writer = csv.writer(file)
writer.writerow(headers)
# Define the start and end dates for January 2024
start_date = datetime(2024, 1, 1)
end_date = datetime(2024, 1, 31)
# Function to call curl command for each day and return JSON data
def fetch_data_for_day(date):
formatted_date = date.strftime('%Y%m%d')
curl_command = f"curl 'https://kcx-api.tepco-z.com/kcx/billing/hourly?contractNum=[yourContractNum]&usedDay={formatted_date}&contractClass=02&accountId=[YourAccountId]' -H 'x-kcx-tracking-id: [YourTruckingId]' -H 'X-API-Request-Id: [YourRequestId]' -H 'Authorization: Bearer [YourToken]' -H 'Content-Type: application/json'"
result = subprocess.run(curl_command, shell=True, capture_output=True, text=True)
return json.loads(result.stdout)
# Iterate over each day of January and fetch data
current_date = start_date
while current_date <= end_date:
data = fetch_data_for_day(current_date)
date_str = current_date.strftime('%Y-%m-%d')
# Parse the JSON data and write to CSV
for info in data['billInfos']:
time = info['usedTime'] # Format as needed
power = info['usedInfo']['power']
writer.writerow([date_str, time, power])
current_date += timedelta(days=1)
cURLコマンドを使用してデータを取得する部分は、ヘッダー部分には個人ごとに異なる情報が含まれるため、実行前に適宜編集が必要です。このプロセスを経て、Pythonコードを実行すると、時間帯ごとに分けられた1ヶ月分のデータをCSVファイルとして出力することができます。このCSVファイルを利用することで、電気使用量の詳細な分析や、最適な電気料金プランの選定が可能になります。
ChatGPT 4 はCSVファイルを受け取ることができますので、まずは簡単なサマリーを聞いてみましょう。
「在宅勤務や趣味で電力を多く使用している人」という正しい推測が得られました。それでは、以下のプロンプトから最適な電気料金を計算してもらいましょう。
添付ファイルは30分ごとの電気使用量データです。以下にいくつかの電気プランの料金を記載しました。まずこのプランを電気使用量ごとの料金表にしてください。それから、この電気使用量データの場合のそれぞれの1ヶ月の料金を計算してください。
# スタンダードS
~120kWh 1kWh 30円00銭
121kWh〜300kWh 36円60銭
301kWh〜 40円69銭
# スタンダードL
~120kWh 1kWh 30円00銭
121kWh〜300kWh 36円60銭
301kWh〜 40円69銭
# プレミアムS
定額料金 ~400kWh 1契約 13927円63銭
従量料金 401kWh~ 1kWh 39円70銭
# プレミアムL
定額料金 ~400kWh 1契約 13927円63銭
従量料金 401kWh~ 1kWh 39円70銭
# 夜トク8
7時〜23時 1kWh 42円80銭
23時〜翌7時 1kWh 31円84銭
# 夜トク12
9:00〜21:00 1kWh 44円36銭
21:00〜翌9:00 1kWh 33円53銭
# スマートライフS
昼間(6時〜翌1時) 1kWh 35円96銭
夜間(1時〜6時) 1kWh 28円06銭
# スマートライフL
昼間(6時〜翌1時) 1kWh 35円96銭
夜間(1時〜6時) 1kWh 28円06銭
すると、料金表と同時に、以下の結果が得られます。
1ヶ月の総電力使用量は2,111.7kWhでした。以下は、各電気料金プランに基づいた1ヶ月の料金です。
スタンダードS & L: 83,906円07銭
プレミアムS & L: 81,882円12銭
夜トク8: 81,910円87銭
夜トク12: 80,800円31銭
スマートライフS & L: 59,254円30銭
これらの計算によると、スマートライフS & Lプランが最も経済的な選択肢であることがわかります。
一応スタンダードプランで検算をしたところ正しい金額が出力されているようです。
スマートライフというやつが一番安いようですね。しかしスマートライフプランは “総容量(入力)が1kVA以上の夜間蓄熱式機器または オフピーク蓄熱式電気温水器を使っているご家庭” 専用のプランです。我が家は該当しません。そのため夜トク12に加入するのが一番安く、1月の実績であれば3000円ほど節約できるということが分かりました。それにしても電気代高いですね。