Green Button Initiative GREEN BUTTON TECH STATUS 1/9/2013 Marty Burns and Dave Wollman Agenda 2 Green Button Organizationally Initiative Standards and Testing and Certification Information Model XML Tools – XSD, XSLT GBDMD GBCMD Utility Back End Infrastructure Tools SGIP PAP20, NAESB, UCAIug OpenADE Green Button Technology Nick, Chris, Monisha, Dave, Ian, Marty SDK OpenESPI www.greenbuttondata.org http://en.openei.org/apps/ Testing and Certification Green Button Test Plan Green Button Test Plan SW Tools 3 Green Button Organizationally Green Button 4 • Green Button is an industry-led effort to provide electricity customers with access to their energy usage data via a "Green Button" on electric utilities' websites. Green Button is A policy A brand Whitehouse initiative Green Button Logo implies specific capabilities Interoperability standards and testing and certification ensure those expectations are met A set of technologies and associated standards Green Button Download My Data (ESPI data file) Green Button Connect My Data (ESPI automated exchange) An overnight success … years in the making 5 OpenADE (Open Automated Data Exchange) NIST SGIP Priority Action Plan Early requirements effort for securely sharing energy information with third parties Accelerates issue resolution and consensus development OpenADE / SGIP inputs to NAESB standard REQ21 Energy Services Provider Interface (ESPI) Privacy: REQ22 Third Party Access to Smart-Meterbased Information Flexible file format basis for Green Button initial implementation use a subset of ESPI and energy usage information. Key US Government Roles in Smart Grid $ R&D (and ARRA – stimulus funding), National Labs Public Consultation, Utility Engagement, Agency Coordination Industry Coordination, R&D OSTP/CEQ & Smart Grid Task Force Interagency Coordination State Regulators NARUC – National Association of Regulatory Utility Commissioners Federal Energy Regulatory Commission Standards Developing Organizations 6 Regulatory Structure NERC – North American Electric Reliability Corporation NAESB – North American Energy Standards Board NIST Smart Grid Interoperability Panel 7 Public-private partnership created in Nov. 2009 Approx. 750 member organizations, 1900+ participants Open, public process with international participation Coordinates standards development Identifies Requirements Prioritizes standards development programs Works with over 20 SDOs including IEC, ISO, ITU, IEEE, … Significant international participation Web-based participation SGIP Twiki: http://collaborate.nist.gov/twikisggrid/bin/view/SmartGrid/SGIP Role of NAESB 8 Maintains the Energy Usage Information standard REQ18/WEQ19 Maintenance Update Maintains the Energy Services Provider Interface REQ21 Errata update Lessons learned enhancements Role of UCAIug 9 Establish Green Button brand Guard brand on behalf of certificate holders Pool marketing resources to promote brand Work with DOE/VA on Branding Organize interop tests and manage marketplace feedback Provide for certification of implementations Establish an ITCA (based on NIST’s SGIP IPRM V.2) Implement testing and certification processes Develop the test plan specifications and software tools to enable certification by authorized test labs 10 SGIP PAP20: Green Button ESPI Evolution Roadmap Going Forward … SGIP PAP Activities: PAP 20 Coordinates with Requirements for Green Button and ESPI Rollout CSWG Facilitate/Coordina te SGIP interactions Specification Deliverables: Standards (NAESB) T&C (UCAIug) Implementation (EnergyOS) Privacy assurance recommendations Cybersecurity recommendations for EUI exchanges SGTCC Test plan consistency ITCA assurances SGIMC Requirements for standards and test criteria Education on implementation strategies, standards, use cases and test criteria How to Reduce Barriers to Penetration Barriers Impede Penetration of New Technology NAESB Activation Energy Potential Energy Benefits Drive Penetration of New Technology UCAIug Users Groups •Implementation agreements •Labeling and Test Certifications •Issues resolution OpenESPI Reference Implementations •Open Source Running Code •Development projects •“golden unit” Green Button as Catalyst Speeds Penetration Green Button Technology Accurate but useful? 13 14 Indirect But Fascinating: Green Button spurs innovation in new areas Insight: entrepreneur-created web portals analyze energy usage and provide actionable tips; Heating and Cooling: customized heating and cooling activities for savings and comfort; Education: community and student energy efficiency competitions; Retrofits: improved decision-support tools to facilitate energy efficiency retrofits; Verification: measurement of energy efficiency investments; Real Estate: provide energy costs for tenants and/or new home purchasers; and Solar: optimize the size and cost-effectiveness of rooftop solar Composition and Atom Feed Syntactic Model Atom Feed View Information Model Profile View AtomFeed 0..1 LocalTime Parameters links entrys Entry:UsagePoint UsagePoint 1 ServiceCategory Entry:MeterReading 0..* MeterReading Entry:ReadingType Entry:IntervalBlock 0..* LocalTime Parameters IntervalBlock 0..* 0..* Entry:ElectricPowerUs ageSummary 0..* ElectricPower Usage Summary 1 IntervalReading ReadingType ElectricPower Quality Summary Note: This information is multidimensional. Many different reading types, summaries, and readings possible. i.e. not “flat” 0..* ReadingQuality Roles and Relationships in Green Button Connect My Data 16 Data Custodian Web Service Provider Web Portal Green Button Download My Data Green Button Connect My Data Automated Transfer One-time Authorization User (agent) Retail Customer Third Party Web Service Consumer Web Portal Download/Connect My Data and the Utility Enterprise Edge Utility Enterprise MDMA Has EUI Billing System Has Cost Green Button Data W/O Cost Green Button Data W/ Cost Web GUI Web Interface Web Portal RESTful Web Services Green Button Download My Data Green Button Connect My Data Tools 19 Web Technologies for Definition and Presentation of EUI File Format XML Schema (XSD) • Describes the rules of file format Standard EUI file Format XML • Contains customer EUI data in standard file format and references to XSD and XSLT XSLT • Defines how to transform for humans X Alternate paths to EUI – single format Sources of EUI Via: ESPI, SEP2, Web Portal Power Utility Single Data Format: all at once Acknowledgements to graphics owners Single Data Format: as sequence Uses of EUI SDK: Sample Data File Generator 21 Table Driven Data Simulated Data SDK: Green Button Data File Generator 22 Set the structure of the intervals and blocks Set weightings for weekdays and weekends Weighting and Profile Results Weighting Weekday Time of Day for reference profiles 12:00:00 AM 1:00:00 AM 2:00:00 AM 3:00:00 AM 4:00:00 AM 5:00:00 AM 6:00:00 AM 7:00:00 AM 8:00:00 AM 9:00:00 AM 10:00:00 AM 11:00:00 AM 12:00:00 PM 1:00:00 PM 2:00:00 PM 3:00:00 PM 4:00:00 PM 5:00:00 PM 6:00:00 PM 7:00:00 PM 8:00:00 PM 9:00:00 PM 10:00:00 PM 11:00:00 PM Total Weekend 1 1 1 1 1 3 5 5 5 5 3 3 3 3 3 3 3 4 5 5 5 5 3 1 77 1 1 1 1 1 3 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 3 96 Cost Weighting Weekday Weekend 1 1 1 1 1 1 2 2 2 2 2 2 2 2 4 6 8 10 10 8 6 4 2 1 81 1 1 1 1 1 1 2 2 2 2 2 2 2 2 3 4 5 5 5 4 3 2 1 1 55 SDK: Green Button Data from Table 23 SDK: VBA 24 Sample VBA code implementing Green Button File Generation SDK: Green Button Sample XSLT 25 XSLT XML <ElectricPowerUsageSummary xmlns="http://naesb.org/espi"> <billingPeriod> <duration>2592000</duration> <start>1314835200</start> </billingPeriod> <billLastPeriod>24820832</billLastPeriod> <billToDate>2060508</billToDate> <costAdditionalLastPeriod>1489250</costAdditionalLastPeriod> <currency>840</currency> <currentBillingPeriodOverAllConsumption> <powerOfTenMultiplier>3</powerOfTenMultiplier> <timeStamp>1317599999</timeStamp> <uom>72</uom> <value>157</value> </currentBillingPeriodOverAllConsumption> <qualityOfReading>14</qualityOfReading> <statusTimeStamp>1317599999</statusTimeStamp> </ElectricPowerUsageSummary> HTML Summary of Electric Power Usage Information* * Note: Quality of this summary and information is "raw: data that has n validation, editing and estimation process" Current billing period as of: 2011-10-02 23:59:59 Curency: US Dollar Cost of usage(US Dollar): 20.61 Consumption(Real energy (Watt-hours)) :157 Last billing period: 2011-09-01 00:00:00 to 2011-10-01 00:00:00 Bill last period(US Dollar): 248.21 Cost of usage last billing period (US Dollar): 233.32 Cost additional last period (taxes and other fixed charges) (US Dollar): SDK: GreenButtonDataStyleSheet.xslt 26 Parses XML File for components and renders: UsagePoint ElectricPowerUsageSummary MeterReading IntervalBlock IntervalReadings Green Button Data Test Site 27 http://greenbuttondata.org/greendevelop.aspx 15 minute load profile for 15 days. daily load profile for 45 days. hourly load profile for 32 days. Additional data sets Gas usage Water usage Daily Profile for one year Sequence of 12 months contiguous data files for same UsagePoint www.GreenButtonData.org See http://www.greenbuttondata.org/greendevelop.aspx Select Sample Data Set View Sample Data Download Sample Data https://github.com/energyos/OpenESPI Green Button SDK Golden Unit Implementations Test Tools http://en.openei.org/apps/?keyword=Green%2 0Button%20Apps 30 Testing and Certification Why We Need Certification 32 Testing and Certification affords implementers confidence that they will likely interoperate with other independently developed implementations Minimum agreed performance threshold gives interoperability value and therefore increases the value of the brand Dispersion of implementations costs implementers Exception handling code quickly exceeds implementation code Differences risk functionality apps depend on Dispersion of implementations costs Data Custodians Need to deal with Third Parties with different needs and expectations Unwanted support calls from consumers about difficulties with their apps due to inconsistent implementation Conformance Testing vs. Certification 33 Conformance testing evaluates all implemented features of the standard including implementation agreements Certification testing evaluates a subset of conformance tests based on one or more specific profiles using protocol implementation conformance statements (PICs) Interoperability Testing and Certification Authority (ITCA) 34 UCA International Users Group (UCAIug) is seeking Accreditation Bodies (AB), Certification Bodies (CB), and Conformity and Interoperability Test Laboratories (TL) to participate in implementing UCAIug’s Green Button product certification program. This program will include: Design and implementation of one or more UCAIug certification test programs based on the ESPI NAESB REQ.21 Standard and the UCAIug Quality Assurance Program (see Section 1.3 for reference) Collaboration with the UCAIug certification test tool partner to smoothly implement the certification test tools and promptly report any errors found during the process Advise UCAIug on program implementation How Testing And Certification Is to be Accomplished 35 OpenADE Task Force develops requirements and implementation agreements for ESPI and produces a test plan that encompasses Green Button Download My Data Green Button Connect My Data OpenADE Task moves test plan matrix (spreadsheet) forward to provide basis for test plan and tools EPRI Green Button Download and Automated Data Exchange Conformance Suite Builds out test plan to deliverable status Builds implementing test tools 36 Green Button Test Plan Requirements Hierarchy Applications Profiles •Section 3 GBTP Function Blocks •Section 5 GBTP Test Requirements •Rows of GBTC spreadsheet •From source documents •From experience Test Cases •Rows of GBTC spreadsheet GBTP – Green Button Test Plan Document GBTC – Green Button Test Cases Spreadsheet Green Button Test Plan 37 Application Profiles Green Button Download My Data Green Button Connect My Data Smart Device acquires Green Button Data from Data Custodian Third Party acquires large batches of Green Button Data from single Utility Original reads (Catch up data) Collecting Sub-metering Data Function Blocks Data Custodian Role [FB_1]Common [FB_2]Green Button Download My Data [FB_3]Green Button Connect My Data [FB_4] Interval Metering [FB_12] Cost of Interval Data [FB_13] Security and Privacy classes [FB_14] Authorization and Authentication [FB_15] Usage Summary [FB_16] Usage Summary with Cost [FB_17] Power Quality Summary [FB_18] Multiple UsagePoints [FB_19] Partial update data Third Party Role [FB_20]Green Button Download My Data [FB_21]Green Button Connect My Data [FB_22] Security and Privacy classes [FB_23] Authorization and Authentication – Third Party Role [FB_24] Request bulk of UsagePoints from DataCustodian [FB_25] Request of Partial Update Data What do we have 38 Green Button SDK Data set generator Simulated data sets Derived Schema(s) to define conformance profiles OpenESPI realization of Data Custodian and Third Party Test Plan So Far Test Plan Document (GreenButtonTestPlan.docx) Test Plan PICs Starter (GreenButtonProformaPICS.docx) Over 160 draft individual test case descriptions (GreenButtonTestCases.xlsm) Testing of Green Button 39 Green Button Download My Data Library of unit conformance tests for Data contents Internal reference consistency Self description of data file (e.g. units of measure included with measurements) Implementation Profiles Based on CA IOU implementation agreements plus lessons learned PICs for implementation assertion Green Button Connect My Data Green Button Download My Data for baseline Protocol tests for 12 Use Cases Composition of Test Plan 40 Test Plan Document Identifies standard and background Identifies profile definitions and implementation agreements Includes PICs statement proforma Describes the test library Has machine readable annex with test descriptions Test Plan Software (implements test descriptions) Schema Schematron Test Vectors (know good files) GreenButtonTestCases.xlsm 41 Each Row of spreadsheet (simplified) Test ID – unique id of test Test Requirement – identifies requirement for test Test Method – demonstration, test, analysis, inspection Test Procedure – how to conduct the test (script, steps, etc…) Test Results – how to interpret results Spreadsheet has macro to: Generate Test Cases part of Test Plan document Generate Test Requirements part of Test Plan Document (macro tbd) Testing Green Button Download My Data 42 Green Button Data is XML XSD Tests the structure and composition of a file (XML) against a data type description <UsagePoint xmlns=http://naesb.org/espi/> <ComplexType name=“UsagePoint”/> Schematron is based on XSLT and XPATH to allow for assertion based assessments of the contents of an XML file <sch:assert test="sum(Interval/value) = 100“/> Other Tests 43 Inspection View of web sites File names Inidicia icons notices Demonstration User Interface requirements as needed Analysis (if needed) Testing Green Button Connect My Data 44 Scenario testing Protocol evaluation Success scenarios “connect” establishment “connect” removal “connect” data exchange Push Pull Batch Failure scenarios Dropped tokens Lost messages state Green Button Connect My Data 45 uc ESPI Use Case Diagram Establish Relationships 2: Retail Customer Authorizes Authorized Third Party Resource Access v ia Data Custodian Terminate Relationships 3: Retail Customer Modifies Resource Authorization 4: Retail Customer Rev okes Resource Authorization 5: Data Custodian Rev okes Resource Authorization 1: Authorized Third Party Establishes Relationship With Data Custodian 6: Authorized Third Party Terminates Relationship RetailCustomer DataCustodian AuthorizedThirdParty 7: Authorized Third Party Establishes Subscription w ith Data Custodian Asynchronous 8: Authorized Third Party Requests EUI from Data Custodian - Asynchronous 12: Authorized Third Party Requests EUI from Data Custodian - Synchronous 9: Data Custodian Sends (Pushes) EUI to Authorized Third Party - Asynchronous 10: Data Custodian Notifies Authorized Third Party of EUI Av ailability - Asynchronous 11: Authorized Third Party Receiv es (Pulls) Requested EUI from Data Custodian Asynchronous Asynchronous Operational Activities Synchronous Test Environment: Example with ThirdParty under test 46 OpenESPI with Test Aspect Subproject of OpenESPI Test Stimulus Engine Proxy: DataCustodian UUT: ThirdParty There needs to be one “Proxy” for each role to use in testing the specific UUT role. These are expected virtual URL-links used to exercise/test the implementation remotely Instrumentation Test Harness 47 Green Button Download and Automated Data Exchange Conformance Suite EPRI Project Team Contributions UCAIug Link to EPRI project description OpenADE Task Force Requirements and Test Plan SW Development Test Implementation OpenESPI / Green Button Apache Licensed Open Source Development Project Commercial Products ESPI Implementations Commercial Products Certification Test Tools Commercial $$ Products and Services Open Source Apache 2.0 License UCAIug Certifications Tools Technical Activities 48 Smart Grid Interoperability Panel (SGIP) SGIP PAP20 Green Button ESPI evolution: http://collaborate.nist.gov/twikisggrid/bin/view/SmartGrid/GreenButtonESPIEvolution SGIP Green Button Initiative TWiki: https://collaborate.nist.gov/twiki-sggrid/bin/view/SmartGrid/GreenButtonInitiative SGIP Green Button FAQ: https://collaborate.nist.gov/twiki-sggrid/bin/view/SmartGrid/GreenButtonFAQ Standards: NAESB PAP10 Task Force Project Page : http://www.naesb.org/smart_grid_pap10.asp NAESB ESPI Task Force Project Page : http://www.naesb.org/espi_task_force.asp NAESB ESPI and PAP10 email lists: to subscribe contact Denise Rager at NAESB - drager@naesb.org NAESB Green Button Portal - http://www.naesb.org/ESPI_Standards.asp Users Group: UCAIug OpenADE Task Force Home Page: http://osgug.ucaiug.org/sgsystems/OpenADE/default.aspx UCAIug OpenADE Mail List: http://www.smartgridlistserv.org/cgi/wa.exe?A0=OPENSG-OPENADE UCAIug OpenADE Meetings: tuesdays at 3:00 EST - https://www2.gotomeeting.com/join/844935738, 415-363-0070 #844935-738 UCAIug OpenADE Green Button Issues List: http://osgug.ucaiug.org/HelpDesk/Lists/servicerequests/GreenButton.aspx Open Source Implementations and tools: EnergyOS OpenESPI Mail List: http://groups.google.com/group/energyos_espi/subscribe?hl=en EnergyOS OpenESPI Web Site: http://www.openespi.org/ EnergyOS OpenESPI Meetings: mondays at 12:00 EST - https://www2.gotomeeting.com/join/129392235, +1 (516) 4530010 #129-392-235 EnergyOS OpenESPI GitHub: https://github.com/energyos/OpenESPI EnergyOS OpenESPI GitHub Issues List: https://github.com/energyos/OpenESPI/issues General OpenESPI information: https://github.com/energyos/OpenESPI/wiki/ Energy OS home page: http://energyos.org/ Other: NREL OpenEnergyInfo Green Button Apps Repository: http://en.openei.org/wiki/Main_Page Green Button Data Sample/Developmental Web Site: http://www.greenbuttondata.org