Amazon Web Services ブログ
TensorIoT と AWS 上で炭素会計ソリューションを構築する方法
炭素会計とは、組織の事業活動に関連する温室効果ガス (GHG) 排出量を、各種の排出源からのカーボンフットプリントを特定して、定量化、そして報告する方法を指します。 これらの排出源には、現場での活動からの直接排出 (スコープ 1)、購入したエネルギーからの間接排出 (スコープ 2)、サプライヤや顧客を含むバリューチェーンからの排出 (スコープ 3) が含まれます。
規制当局、投資家、消費者からの懸念が高まる中、組織は自社のカーボンフットプリントを報告および削減するプレッシャーにさらされています。チーフサステナビリティオフィサー (CSO) とそのチームは、正確なカーボンフットプリントの測定、会社全体での報告、サステナビリティ目標を達成するための脱炭素化について計画するために必要なデータを収集および分析する際に課題に直面することがよくあります。
データの収集、分析、報告に費される負担は、カーボンフットプリントの測定の正確性の低下や、脱炭素化のための実行可能な洞察の欠如につながる可能性があります。サステナビリティとテクノロジー両面で実績のある専門知識を備えた TensorIoT は、このような状況に変化をもたらします。
AWS スペシャライゼーションパートナー であり、北米地域の 2022 年 AWS サステナビリティパートナー・オブ・ザ・イヤー である TensorIoT は、サステナビリティソリューションをデジタル領域に統合する最前線にあります。同社の専門家チームは、炭素会計と脱炭素化に焦点を当てながら、ビジネスがサステナビリティの課題に取り組むのに役立つ最先端のツールを開発および実装することに特化しています。
TensorIoT は、Guidance for Carbon Accounting on AWS を活用することで、組織が自動化されたカーボンフットプリント測定システムの構築を加速できるようにします。そうすることで報告までの時間を短縮し、データの正確性を向上させ、そしてサステナビリティを推進する組織にとって重要かつ実行可能な洞察を提供します。
Carbon Accounting Solutions on AWS の活用方法
Guidance for Carbon Accounting on AWS は、適切に設計されたカーボンプリントを測定するアプリケーションを構築するための技術的アクセラレータのセットを提供する、Guidance for Sustainability Insights Framework on AWS をベースに構築されています。
このガイダンスは、次の利点を提供します:
- 適応性: 複数のソースからの排出係数を管理し、進化する方法や基準へ対応する排出量の計算を確立または適応する柔軟性を提供します。
- 透明性と監査能力: すべてのデータソースをバージョン管理し、計算の入出力を記録することで、トレーサビリティと再現性をサポートします。
- データセキュリティと整合性: 最小限の権限、データ暗号化、セキュアな鍵管理など、セキュリティのベストプラクティスに準拠しています。
- 効率性と正確性: データ収集と計算を自動化することで、手動データ処理の負担を軽減し、人為的なエラーのリスクを低減します。
スコープ 2 排出量のカーボンフットプリントを測定するアプリケーション
TensorIoT は、Guidance for Carbon Accounting on AWS を活用して、電力消費によるスコープ 2 排出に焦点を当てたカーボンフットプリント測定アプリケーションを作成しました。サステナビリティ管理者や施設の管理者向けに設計されたこのアプリケーションにより、ユーザーは米国の施設ポートフォリオ全体での電力消費によるスコープ 2 排出を追跡および比較できます。
ユーザーは施設の郵便番号と電力消費量 (kWh 単位) または施設の床面積を入力し、アプリケーションはその地域の電力グリッドミックスに基づいて、施設ごとのスコープ 2 排出量を計算します。
この例の概要では、排出係数と建物の消費データは、米国環境保護庁 (EPA) の排出量・発電資源統合データベース (eGRID) と米国エネルギー情報局 (EIA) の商業ビルエネルギー消費調査から取得しています。
次のセクションでは、TensorIoT の専門家がどのようにお客様独自の炭素会計ソリューションを AWS 上に構築することを支援できるかを示すために、ソリューションのデプロイとセットアッププロセスの技術的なウォークスルーを紹介します。
技術的なウォークスルー
以下の手順を使用すると、施設の電力消費からスコープ 2 のカーボンフットプリントを計算するのに役立つ、AWS の Guidance for Carbon Accounting on AWS を活用した React ベースのアプリケーションをデプロイできます。
ソリューションは、AWS Cloud Development Kit (AWS CDK)を使用して、シングルテナントかつシングル環境へのデプロイメントによって展開されます。 ソリューションのビルドとデプロイには複数のビルドステップとツールの要件に対応するため、ソリューションは AWS CodeBuild プロジェクトを作成します。 デプロイメントの手順に従うことで、ソリューションを手動でデプロイすることもできます。
前提条件
- AWS アカウント
- AWS CDK の知識
- AWS サービスと AWS 上のサステナビリティインサイトフレームワークのガイダンスの理解
- CDK bootstrap と CDK deploy を実行するための管理者権限
環境のセットアップ
- Node をインストールします。
- AWS Command Line Interface (CLI) をインストールします。
- AWS CDK をインストールします。
- 正しいアカウント情報で AWS プロファイル を設定します。
- リポジトリ をクローンします。
- リポジトリのルートフォルダで ターミナル を開きます。
- config.ts.template を元に config.ts というファイル名で設定ファイルを作成し、環境を設定します:
- Account – AWS のアカウント番号
- Region – AWS のデプロイリージョン
- TenantID – Sustainability Insights Framework のテナント ID として使用する文字列
- adminEmail – 管理者ユーザーのメールアドレスとパスワードの送信先
- environmentName – デプロイ環境の名前
npm install
を実行します。npm run build
を実行します。- frontend フォルダに移動します。
npm install
を実行します。npm run build
を実行します- リポジトリのルートフォルダに移動します。
cdk bootstrap aws://アカウント番号/リージョン
を実行します。- “SifBuildDeploy” という名前の CodeBuild プロジェクトを作成する
cdk deploy SifCodebuildStack [--profile="PROFILE_NAME"]
を実行してください。これはソリューションフレームワークのビルドとデプロイのために一度だけ実行する必要があります。 - ビルドプロジェクトを実行するために
aws codebuild start-build --project-name SifBuildDeploy
を実行します。 - 管理パスワードがメールで届きます。アプリケーションへのアクセスとソリューションのデプロイの設定の際に必要になります。
- ソリューションフレームワークがデプロイされたら、初期設定を行うスクリプトを実行してください。
cdk deploy CarbonAccountingPortalStackPipeline [--profile="PROFILE_NAME"]
を実行してください。
ステップ 19 で実行されるスクリプトは、ソリューションフレームワーク内に参照テーブル、計算ロジック、パイプラインを設定するために使用されます。検索テーブル、計算、React アプリから実行されるパイプラインを作成します。
方法論
このウォークスルーでは、特定の地理的境界と期間の平均的な排出データによって決定される、ロケーションベースのスコープ 2 排出量を計算するために、GHG プロトコルのスコープ 2 ガイダンスを使用します。正確な活動データは、MWh または kWh 単位で測定された電力消費量の計測値、または料金請求書から得られます。そのようなデータがない場合は、特定の施設タイプの平均データに基づいて電力消費を推定できます。正しい排出係数を割り当てるには、施設の郵便番号を収集する必要があります。
このユースケースをサポートするために、参照データセットと排出係数を特定します。EIA 商業ビルエネルギー消費調査 2018 から特定された参照データセットは、平方フィートあたりの年間推定電力消費量 (キロワット時 / 平方フィート・年) を提供します。 この参照データセット (図 1 を参照) は「BuildingToConsumption」として保存されており、セットアップスクリプトから次の呼び出しを使用してインポートされました。
{
"name": "BuildingToConsumption",
"description": "Lookup table for building type to consumption",
"datasetHeaders": [
"BuildingActivity",
"BuildingConsumptionKwhPerSqFtPerYear"
],
"data": "BuildingActivity,BuildingConsumptionKwhPerSqFtPerYear\nEducation,9.1\nFood service,40.575\nHealth care,23.375\nInpatient,28.1\nOutpatient,17.5\nLodging,14.225\nMercantile,16.375\nRetail (other than mall),13.075\nEnclosed and strip malls,19.275\nOffice,13.425\nPublic assembly,11.425\nReligious worship,4.725\nService,7.4\nWarehouse and storage,5.8\nOther,31.55"
}
計算に必要な追加の参照データセットをインポートするためにも、同様のステップが適用されます。全体の JSON ファイルは、GitHub リポジトリで確認できます。 ユーザーが平方フィート (sqft) または平方メートル (sqm) のいずれかで床面積を入力できるようにするために、「BuildingUnitConversion」という名前の参照データセットを作成する必要があります。
同様に、ユーザーは消費電力をキロワット時、メガワット時、またはメガジュール (MJ) で提供する可能性があるため、単位変換を可能にする参照データセットを作成する必要があります。この参照データセットは「ElectricityUnitConversion」として保存されます。
米国の電力グリッドの排出係数は、eGRID サブリージョンとして知られる地域に分けられています。 割り当てるべき正しい eGRID サブリージョンは、EPA Emissions & Generation Resource Integrated Database 2023 が提供する施設の米国の郵便番号に基づいています。 この参照データセットは「ZipCodeToEfactor」として保存されています。
前述の参照データセットに加えて、EPA の eGRID データベースから EPA 2023 総発電量排出係数 の排出係数を取り込む必要があります。これを実現するために、このソリューションでは排出係数をインポートするために、以下のようなリクエストコールを使用して排出係数ごとに指定する列ヘッダで補完されたデータを 1 行ずつ生成します。
各要因について、以下が送信されます:
{
"name": "InsertName",
"description": "Insert Description",
"impacts": {
"CO2eq": {
"name": "KG C02 eq per MWh",
"attributes": { "outUnit": "KG C02 eq per MWh" },
"components": {
"co2": { "key": "co2", "value": 1000, "type": "pollutant" },
"ch4": { "key": "ch4", "value": 1000, "type": "pollutant" },
"no2": { "key": "no2", "value": 1000, "type": "pollutant" }
}
}
}
}
ここで、Impact_Factor_Name
は排出係数の名前です。この場合は eGRID サブリージョンの頭文字です。Impact_unit
は排出係数の単位で、Ref_unit
はこの場合は電力消費量である活動データの参照単位を表します。 最後に、Total Co2e
、co2_co2e
、ch4_co2e
、n2o_co2e
は、総排出係数、ならびに二酸化炭素、メタン、亜酸化窒素成分 (二酸化炭素換算で表記) ごとの排出係数を示しています。
計算
計算には 2 つのユースケースがあります:
- 電力消費量が提供されている場合: 電力消費量と施設の郵便番号を使用して、対応する炭素排出量を計算します。
- 電力消費量が提供されていない場合: 施設の種類と床面積から電力消費量を推定します。推定したら、施設の郵便番号を使用して推定された炭素排出量を計算します。
LOOKUP(:BuildingUnit,'BuildingUnitConversion','BuildingAreaUnit','BuildingAreaConversionToSqFt',group='/')*:building_area
この LOOKUP 関数は、「BuildingAreaConversionToSqFt」から換算係数を取り出した値を「building_area」に乗じます。 次に、1 平方フィート当たりのエネルギー消費量を以下の式で求めます。
LOOKUP(:BuildingActivity,'BuildingToConsumption','BuildingActivity','BuildingConsumptionKwhPerSqFtPerYear',group='/')*:square_footage
この関数は、ユーザーの入力に基づいてエネルギー消費量を取得し、床面積と乗算して総エネルギー消費量を算出します。
次の式を使用して、このエネルギー消費量を MWh に変換します。
LOOKUP(:ElectricityUnit,'ElectricityUnitConversion','ElectricityUnit','ElectricityConversionToMwh',group='/')*:electrictity_value
ここでは、LOOKUP 関数が「electricity_value」に変換係数を乗じることで、電力単位を MWh に変換しています。
最後に、総電力消費量からの排出量を計算します。
IMPACT(LOOKUP(:zipCode,'ZipCodeToEfactor','ZipCode','EgridSubRegion',group='/'),'KG C02 eq per MWh',:impactType)*:electricityMwh
この式は正しい eGRID リージョンを特定し、IMPACT 関数を使用して特定の排出係数を返します。この排出係数は、総電力消費量と乗算されて、排出量が計算されます。
パイプライン
このパイプラインでは、電力使用量に基づくロケーションベースのスコープ 2 排出量の推定を含む、建物の活動データからの炭素排出量を計算します。 「if」句は、建物の面積から電力消費を計算するか、ユーザが提供する電力使用データを使用するかを選択します。全体のパイプラインは、GitHub リポジトリからアクセスできます。
結果
ユーザーは最大 5 つの施設について一度に排出量を計算できます。「Calculate」を選択した後、結果は月次比較のために個別または複数の施設全体の合計の両方で表示されます。
ユーザーは結果を .csv ファイルでダウンロードすることもできます。
結論
この投稿では、施設のスコープ 2 のカーボンフットプリントを計算するために、AWS の Guidance for Carbon Accounting on AWS を使用した React ベースの Web アプリケーションのデプロイしながら、ステップバイステップで技術的なソリューションを紹介しました。
TensorIoT は、AWS のサービスを利用することで、複雑な計算を自動化し、組織のユニークな要件に合わせた炭素会計アプリケーションを AWS 上で提供することに成功しました。
サステナビリティ目標を達成へ向けてAWS を活用したい場合、TensorIoT はあらゆる規模の企業と協力して、ユニークな課題と野心に対処するカスタマイズされたサステナビリティソリューションを計画および確立します。持続可能な未来に向けて一歩ずつ進む旅の中で、TensorIoT にご相談ください。
TensorIoT の詳細は、AWS Marketplace で確認できます。
TensorIoT – AWS パートナー スポットライト
TensorIoT は、IoT、AI/ML、データとアナリティクス、アプリのモダナイゼーションを通じて、お客様のデジタルトランスフォーメーションと持続可能性の向上を可能にする AWS スペシャライゼーションパートナーです。 TensorIoT にコンタクト | パートナー概要 | AWS Marketplace | ケーススタディ
この記事は 2024 年 1 月 26 日に Nicholas Burden, Wan Ping Chua, Adom Taylor, Herman Liu, Aditi Suresh, and Edmund Chute によって投稿された「Building Carbon Accounting Solutions with TensorIoT on AWS」をソリューションアーキテクト佐藤が翻訳したものです。
※本稿は英語版ブログの翻訳となります。翻訳版にご不明な点がある場合は英語版ブログの内容を正としてください。