このセクションでは、米国以外の地域の家庭に最適な太陽光発電構成を決定するための計算方法について説明します。推奨値を計算するには、Solar API レスポンスのデータを使用して、太陽光パネルの設置費用と節約される費用をモデル化する必要があります。
米国の地域の場合、Solar API は入力地域の電気料金の支払い規模ごとに FinancialAnalysis オブジェクトのインスタンスを返します。これらのインスタンスの情報を使用して、請求額、エネルギー消費量、そして最終的には各太陽光発電設備の規模に関する節約額を決定します。
米国以外のロケーションでは、API レスポンスに FinancialAnalysis インスタンスが含まれないため、最適な構成を推奨するには、各太陽光発電構成の費用と節約額を自分で計算する必要があります。計算を行うには、地域固有のデータを収集し、このドキュメントのガイダンスに従う必要があります。
Solar API が米国のロケーションに使用する計算に基づいて計算をモデル化できます。これらの計算の説明については、コスト削減の計算(米国)をご覧ください。
ソーラーパネルの構成
米国以外の地域の場合、財務分析に必要な各太陽光発電パネルの構成に関する情報は、SolarPanelConfig
フィールドで指定します。返される SolarPanelConfig
インスタンスの数は、入力された場所の屋根のサイズによって異なります。計算には、次の 2 つのフィールドの値が必要です。
panelsCount
: この設定で使用されるパネルの数。yearlyEnergyDcKwh
: この構成が 1 年間に生成する太陽光発電量(DC 電力 kWh 単位)。ただし、SolarPotential
オブジェクトの次のフィールドでパネルサイズが定義されているとします。panelHeightMeters
: パネルの高さ(メートル単位)。panelWidthMeters
: パネルの幅(メートル単位)。panelCapacityWatts
: パネルの電力定格(ワット単位)。
次の例は、リクエスト レスポンスの solarPanelConfigs
フィールドにある SolarPanelConfig
オブジェクトの 1 つのインスタンスを示しています。
"solarPanelConfigs": [ { "panelsCount": 4, "yearlyEnergyDcKwh": 1709.2424, "roofSegmentSummaries": [ { "pitchDegrees": 16.253168, "azimuthDegrees": 169.41516, "panelsCount": 4, "yearlyEnergyDcKwh": 1709.2424 } ] } ]
太陽光発電設備の場合、installationSize
は面積やパネル数ではなく、kW 出力を表し、次のように定義されます。
installationSize = panelsCount * panelCapacityWatts/1000 kW
さまざまなパネル評価に合わせて発電量の見積もりを調整する
yearlyEnergyDcKwh
値を計算するために、Solar API は panelCapacityWatts
フィールドの電力定格を使用します(現在は 250 W)。
計算に別のパネル電力定格を使用する必要があり、パネルの寸法が panelHeightMeters
フィールドと panelWidthMeters
フィールドの値とほぼ同等である場合は、yearlyEnergyDcKwh
フィールドで API によって返された値に、panelCapacityWatts
の値に対する電力定格の比率を掛けて計算を調整できます。
たとえば、パネルの電力定格が 400 W で panelCapacityWatts
が 250 W の場合は、API が panelCapacityWatts
を使用して計算した yearlyEnergyDcKwh
の値に 400÷250、つまり 1.6 を掛けます。パネルの電力定格が 200 W の場合は、yearlyEnergyDcKwh
に 200/250、つまり 0.8 を掛けます。
過剰なエネルギー生産
太陽光発電設備によって生成される可能性がある余剰エネルギーの考慮は、Solar API の計算の対象外です。実際、Solar API が特定の家庭に対して考えられる複数の SolarPanelConfig
インスタンスを返す場合、Solar API は FinancialAnalysis
で想定される米国の平均世帯消費電力よりも多くの電力を消費する結果や構成を考慮しません。
ただし、過剰な電力を生成する設備を推奨事項に含める場合もあります。たとえば、設置寿命の最初の段階で過剰な発電を許可することで、パネル効率(efficiencyDepreciationFactor)の段階的な低下を相殺できます。詳しくは、財務分析に必須の値をご覧ください。
理由が何であれ、過剰な電力を生み出す太陽光発電設備を計算に含める場合、ここで説明する計算はそのシナリオをカバーしていないことに注意してください。
米国以外の地域の財務分析に必要な値
API レスポンスの各 SolarPanelConfig
インスタンスから財務分析を行うには、次の 2 つの値が必要です。
panelsCount
: 設置場所の太陽光発電パネルの数。この値はinstallationSize
の計算に使用します。yearlyEnergyDcKwh
: 特定のpanelsCount
がある場合に、レイアウトが 1 年間に取り込む太陽光エネルギーの量(DC 電力の kWh 単位)。この値は、DC から AC への変換中のエネルギー損失を考慮して、各installationSize
の家庭で AC 電力として使用可能な太陽光エネルギー(initialAcKwhPerYear
)の計算に使用します。
また、計算で使用する次の変数について、地域固有の値も収集する必要があります。
- billCostModel(): 特定の kWh 使用に対して世帯が支払う費用を現地通貨で決定するためのモデル。電気代は、需要、時間帯、世帯の電力消費量などによって、日単位または時間単位で変動します。平均費用の見積もりが必要になる場合があります。
- costIncreaseFactor: 電気コストが毎年増加する係数。米国のロケーションの場合、Solar API は 1.022(年間 2.2% の増加)を使用します。この値は、お住まいの地域に応じて調整してください。
- dcToAcDerate: 太陽光パネルで発電された DC 電力をインバータが家庭で消費される AC に変換する効率。Solar API は、米国の地域に対して 85% を使用します。この値は、お住まいの地域に応じて調整してください。
- discountRate: Solar API は、米国のロケーションに対して 1.04(年間 4% の増加)を使用します。この値は、お住まいの地域に応じて調整してください。
- efficiencyDepreciationFactor: 太陽光発電パネルの効率が毎年どれほど低下しているか。Solar API は、米国のロケーションに対して 0.995(年間 0.5%)を使用します。この値は、領域に応じて必要に応じて調整します。
- incentives: お住まいの地域の行政機関が提供する太陽光発電パネルの設置に対する金銭的なインセンティブを含めます。
- installationCostModel(): 指定された
installationSize
で太陽光発電を設置する際の費用を現地通貨で見積もるメソッド。通常、コストモデルでは特定のinstallationSize
に関する現地の人件費と材料費が考慮されます。 - installationLifeSpan: 太陽光発電の設置の推定寿命。Solar API は 20 年を使用します。この値は、領域に応じて必要に応じて調整します。
- kWhConsumptionModel(): 毎月の請求に基づいて各世帯のエネルギー消費量を決定するモデル。最も簡単な形式では、請求額をその世帯の kWh の平均コストで割ります。
- monthlyBill: 対象の世帯の毎月の電気料金の平均額。
- monthlyKWhEnergyConsumption: 特定の場所の世帯が 1 か月間に消費する平均電力量の推定値(KWh 単位)。
これらの値と API レスポンスによって提供される情報を使用して、Solar API でカバーされていない場所に最適な installationSize
を推奨するために必要な計算を行うことができます。
計算ステップ
以下の手順は、Solar API の手法に基づいています。場合によっては、ロケーションで利用可能な情報に基づいて手法を調整する必要があります。
入力ロケーションにおける家庭の年間エネルギー消費量を計算します。
- ご家庭の毎月の請求額の見積もりまたはリクエストを行います。
- 毎月の請求額から monthlyKWhEnergyConsumption を計算します。(monthlyKWhEnergyConsumption がわかっている場合は、この手順をスキップできます)。次に例を示します。
monthlyKWhEnergyConsumption = kWhConsumptionModel(monthlyBill)
- monthlyKWhEnergyConsumption に 12 を掛けて、annualKWhEnergyConsumption を計算します。
annualKWhEnergyConsumption = monthlyKWhEnergyConsumption x 12
対象世帯の API レスポンスを取得します。
https://solar.googleapis.com/v1/buildingInsights:findClosest?location.latitude=lat-number&location.longitude=long-number&key=yourAPIKey
レスポンスには、使用可能な日光、使用可能な屋上スペース、1 つ以上のソーラーパネルの構成が含まれます。
API が提案する各
installationSize
の年間太陽光発電 AC 発電量を計算するには、各SolarPanelConfig
インスタンスの API から提供されるyearlyEnergyDcKwh
値に、ローカルの dcToAcDerate を掛けます。initialAcKwhPerYearinitialAcKwhPerYear =
yearlyEnergyDcKwh
x initialAcKwhPerYear必要に応じて、世帯の年間消費量よりも多くの電力を発電する
SolarPanelConfig
インスタンスを除外します(initialAcKwhPerYear > annualKWhEnergyConsumption)。返品された各 installationSize の (LifetimeProductionAcKwh)を計算:
- 太陽光発電設備の耐用年数の各年について、その設備が 1 年間に発電する電力量を計算し、初回以降の年に efficiencyDepreciationFactor を指数関数的に適用します。
- すべての年の合計を加算します。
次の表に、installationLifeSpan を 20 年と仮定して、全期間のエネルギー生産量を計算する例を示します。各行は本番環境の年を表します。1 年目を過ぎると、効率性の低下が指数関数的に適用されます。最後に、すべての行の合計が、太陽光発電設備の生涯発電量になります。
年 年間太陽光発電量(kWh) 1 initialAcKwhPerYear 2 + initialAcKwhPerYear x efficiencyDepreciationFactor : : 20 + initialAcKwhPerYear x efficiencyDepreciationFactor19 合計 LifetimeProductionAcKwh
ソーラーパネルの効率は一定の速度で減衰するため、基本的には a = initialAcKwhPerYear、r =efficiencyDepreciationFactor となる幾何学級数になります。幾何学的合計を使用して LifetimeProductionAcKwh
を計算できます。
LifetimeProductionAcKwh = (dcToAcDerate * initialAcKwhPerYear * (1 - pow(efficiencyDepreciationFactor, installationLifeSpan)) / (1 - efficiencyDepreciationFactor))
次の Python コードは、上記の幾何学的合計を計算します。
def LifetimeProductionAcKwh( dcToAcDerate, yearlyEnergyDcKwh, efficiencyDepreciationFactor, installationLifeSpan): return ( dcToAcDerate * yearlyEnergyDcKwh * (1 - pow( efficiencyDepreciationFactor, installationLifeSpan)) / (1 - efficiencyDepreciationFactor))
installationSize
がインストールされている場合は、返されたinstallationSize
ごとにエネルギー消費のライフタイム コストを計算します。- 太陽光発電設備の耐用年数ごとに、太陽光発電では対応できないエネルギー消費量をカバーするために家庭で年間購入する必要のある電力費用を計算します。以前に計算した annualKWhEnergyConsumption と initialAcKwhPerYear の値を使用します。最初の 1 年以降の年ごとに、efficiencyDepreciationFactor、costIncreaseFactor、discountRate を値に適用します。
- すべての年の合計を加算します。
次の表に、全期間の電気料金の計算方法の例を示します。各行は、太陽光発電設備の耐用年数における 1 年間の電気料金を表します。1 年目を過ぎると、電気代と割引率の両方が指数関数的に増加します。最後に、すべての行の合計が、太陽光発電設備のライフタイム コストです。
年 年間公共料金(現在の現地通貨額(USD)(annualUtilityBillEstimate) 1 annualUtilityBillEstimateYear1 = billCostModel(yearlyKWhEnergyConsumption - initialAcKwhPerYear) 2 annualUtilityBillEstimateYear2 = billCostModel(yearlyKWhEnergyConsumption - initialAcKwhPerYear x efficiencyDepreciationFactor)x costIncreaseFactor ÷ discountRate : : 20 annualUtilityBillEstimateYear20 = billCostModel(yearlyKWhEnergyConsumption - initialAcKwhPerYear x efficiencyDepreciationFactor19)x costIncreaseFactor19 / discountRate19 合計 remainingLifetimeUtilityBill
次の Python コードは、installationLifeSpan
の年ごとに annualUtilityBillEstimate
の配列を返します。
def annualUtilityBillEstimate( yearlyKWhEnergyConsumption, initialAcKwhPerYear, efficiencyDepreciationFactor, year, costIncreaseFactor, discountRate): return ( billCostModel( yearlyKWhEnergyConsumption - annualProduction( initialAcKwhPerYear, efficiencyDepreciationFactor, year)) * pow(costIncreaseFactor, year) / pow(discountRate, year)) def lifetimeUtilityBill( yearlyKWhEnergyConsumption, initialAcKwhPerYear, efficiencyDepreciationFactor, installationLifeSpan, costIncreaseFactor, discountRate): bill = [0] * installationLifeSpan for year in range(installationLifeSpan): bill[year] = annualUtilityBillEstimate( yearlyKWhEnergyConsumption, initialAcKwhPerYear, efficiencyDepreciationFactor, year, costIncreaseFactor, discountRate) return bill
太陽光発電設備がない場合の全期間の電気料金を計算する:
- 太陽光発電設備の耐用年数ごとに、太陽光発電設備がない場合に各家庭で年間購入する必要のある電力料金を計算します。monthlyBill の値を使用します。最初の 1 年以降の年ごとに、costIncreaseFactor と discountRate の値を monthlyBill に適用します。
- すべての年の合計を加算します。
次の表は、太陽光発電を使用しない場合の全期間電力費用の計算方法の例を示しています。各行は、太陽光発電システムの寿命と同じ年数での 1 年間の電気料金を表します。初年度が過ぎると、電気料金の増加と割引率の両方が指数関数的に適用されます。最後に、すべての行の合計が、太陽光発電設備を設置しない場合の全期間の電気料金です。
年 年間公共料金(現地通貨に換算) 1 annualBill = monthlyBill x 12 2 annualBill = monthlyBill x 12 x costIncreaseFactor / discountRate : : 20 annualBill = monthlyBill x 12 x costIncreaseFactor19 / discountRate19 合計 costOfElectricityWithoutSolar
次のコードは、上記の計算を行います。
lifetimeBill = ( monthlyBill * 12 * (1 - pow(costIncreaseFactor / discountRate, installationLifeSpan)) / (1 - costIncreaseFactor / discountRate))
設置サイズごとに設置費用を計算します。
installationCost = localInstallationCostModel(
installationSize
)居住地域で利用できる金銭的インセンティブを加算します。
設置規模ごとに、太陽光発電の設置に関連する合計費用を計算します。
totalCostWithSolar = installationCost + remainingLifetimeUtilityBill - インセンティブ
各設置規模ごとに、太陽光発電の設置に伴う削減の合計額を計算します。
費用削減 = costOfElectricityWithoutSolar - totalCostWithSolar
費用削減が最も大きいインストール サイズを選択します。
計算が完了したら
提供された情報、Solar API から返された情報、上記の計算を使用して、お住まいの地域の家庭で最大限の費用削減を実現する太陽光発電設置サイズを推奨できるはずです。
エンドユーザーに提供する推奨事項では、API から返される次の情報を solarPotential
フィールドの SolarPotential
オブジェクトに含めることもできます。
- 家が 1 年間に受け取る使用可能な日照量。これは、
SolarPotential
オブジェクトのmaxSunshineHoursPerYear
フィールドで返されます。 - 太陽光発電設備として使用できる屋根の平方フィート数。これは
SolarPotential
オブジェクトのwholeRoofStats
フィールドに返されます。 - 世帯の毎月の平均電気代です。