このセクションでは、米国以外の地域の家庭に最適な太陽光発電システムの構成を決定するための計算方法について説明します。推奨事項を計算するには、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
パネルの評価に応じて発電量の推定値を調整する
Solar API は、yearlyEnergyDcKwh
値を計算するために、panelCapacityWatts
フィールドの定格電力を使用します。これは現在 250 W です。
計算で別のパネルの定格電力を使用する必要があり、パネルの寸法が panelHeightMeters
フィールドと panelWidthMeters
フィールドの値とほぼ同等である場合は、API から返された yearlyEnergyDcKwh
フィールドの値に、定格電力と panelCapacityWatts
の値の比率を掛けて計算を調整できます。
たとえば、パネルの定格出力が 400 W で、panelCapacityWatts
が 250 W の場合、yearlyEnergyDcKwh
の値(panelCapacityWatts
を使用して API によって計算された値)に 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)。この値は、各installationSize
の家庭で AC 電力として使用できる太陽光エネルギー(initialAcKwhPerYear
)の計算に使用します。この場合、DC から AC への変換時のエネルギー損失を考慮します。
また、計算で使用する次の変数について、地域固有の値を収集する必要があります。
- 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%)を使用します。この値は、地域に応じて調整してください。
- インセンティブ: 地域の政府機関がソーラーパネルの設置に対して提供している金銭的なインセンティブを記載します。
- installationCostModel(): 特定の
installationSize
の現地通貨で太陽光発電システムの設置費用を推定するメソッド。通常、費用モデルでは、特定のinstallationSize
の現地の人件費と材料費を考慮します。 - installationLifeSpan: 太陽光発電システムの想定耐用年数。Solar API では 20 年が使用されます。この値は、地域に応じて調整してください。
- kWhConsumptionModel(): 毎月の請求書に基づいて家が消費するエネルギー量を決定するモデル。最も簡単な方法は、請求額を世帯の居住地の 1 kWh あたりの平均費用で除算することです。
- monthlyBill: 対象世帯の 1 か月あたりの平均電気代。
- 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
の年間の太陽光発電量を計算します。各SolarPanelConfig
インスタンスで API から提供されるyearlyEnergyDcKwh
値に、ローカルの dcToAcDerate を乗算します。initialAcKwhPerYear =
yearlyEnergyDcKwh
x dcToAcDerate必要に応じて、家で年間に消費する電力よりも多くの電力を生成する
SolarPanelConfig
インスタンスを除外します(initialAcKwhPerYear > annualKWhEnergyConsumption)。返された各 installationSize の生涯の太陽光発電量(LifetimeProductionAcKwh)を計算します。
- 太陽光発電システムの耐用年数ごとに、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 年目以降は、電気料金の値上げと割引率の両方が指数関数的に適用されます。最後に、すべての行の合計が、太陽光発電システムを設置した場合の電力のライフタイム費用となります。
年 年間の公共料金(現地通貨の金額(米ドル))(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 年目以降は、電気料金の値上げと割引率の両方が指数関数的に適用されます。最後に、すべての行の合計が、太陽光発電システムを設置しない場合の電力のライフタイム費用です。
年 現地通貨での年間公共料金 1 年間請求額 = 月額請求額 x 12 2 年間請求額 = 月額請求額 × 12 × 費用増加率 ÷ 割引率 : : 20 年間請求額 = 月額請求額 x 12 x 費用増加率 2019 ÷ 割引率 2019 合計 costOfElectricityWithoutSolar
次のコードは上記の計算を実行します。
lifetimeBill = ( monthlyBill * 12 * (1 - pow(costIncreaseFactor / discountRate, installationLifeSpan)) / (1 - costIncreaseFactor / discountRate))
設置サイズごとに設置費用を計算します。
installationCost = localInstallationCostModel(
installationSize
)家計の所在地で利用できる金銭的なインセンティブを合計します。
太陽光発電の設置に関連する設置サイズごとに合計費用を計算します。
totalCostWithSolar = installationCost + remainingLifetimeUtilityBill - incentives
太陽光発電の設置に関連する設置サイズごとに合計の節約額を計算します。
savings = costOfElectricityWithoutSolar - totalCostWithSolar
最も費用対効果の高い設置サイズを選択します。
計算が完了したとき
ユーザーが提供する情報、Solar API から返された情報、上記の計算を使用して、地域の世帯で費用を最大限に削減できる太陽光発電システムの設置サイズをおすすめできます。
エンドユーザーに提供する推奨事項に、API から返された次の情報を solarPotential
フィールドの SolarPotential
オブジェクトに含めることもできます。
- 家屋に年間で当たる利用可能な日照量。
SolarPotential
オブジェクトのmaxSunshineHoursPerYear
フィールドで返されます。 - 太陽光発電システムの設置に使用できる屋根の面積(平方フィート)。
SolarPotential
オブジェクトのwholeRoofStats
フィールドに返されます。 - 世帯の平均月額電気代。