Sunteți pe pagina 1din 21

GridLAB-D: A Unique Tool to Design a Smarter Grid

Jason Fuller
Electricity Infrastructure Technical Group Manager
Pacific Northwest National Laboratory

April 12, 2018


2

GridLAB-D: A Unique Tool to Design a Smarter Grid


Unifies models of the key elements of a smart grid:
Loads & DERs Power Systems DSO Markets Over 80,000 downloads in over 150 countries
 Smart grid analyses
 field projects
 technologies
 control strategies
 cost/benefits
 Time scale: ms to years
 Open source (BSD-style)
 Contributions from
 government
 industry
 academia
 Vendors can add or extract own modules

 Open-source, time-series simulation of an operating smart grid, from the substation to individual end-use loads & distributed
energy resources, in unprecedented detail
1) power flow 2) control systems
 Simultaneously solves 3) retail markets 4) electromechanical dynamics
April 12, 2018 5) end-use load behavior in tens of thousands of buildings and devices
GridLAB-D Capabilities
Performs time-series simulations
 Seasonal effects (days to years)
 Midterm dynamic behavior (secs to hrs)
 System dynamics (milliseconds)
Simulates control system interactions
 Device- and system-level controls
 Market interactions

Typical Use Cases


Interconnection of distributed generation and storage
New and innovative retail market structures (e.g., DSOs)
Evaluation of demand response and energy efficiency
Volt-VAr optimization and conservation voltage reduction design
Sectionalizing, reconfiguration, automation, and restoration
Microgrids and resiliency

April 12, 2018


Definitions for this presentation
• What does agent-based mean?
– The changing states of individual devices/agents are modeled independently
– The interactions between individuals are captured
– The environment in which these evolve together is a combination of all these interactions

• Dynamic simulation can include time series (timestep greater than 1 second)

• For this presentation, quasi-steady state simulation is defined as having a timestep at 1 second or greater
– Sequence of powerflow states coupling other behaviors, such as multi-state load models
– Focused typically on 1-minute or longer range – behavioral and diurnal dynamics

• For this presentation, dynamic simulation is defined as having a timestep less than 1 second
– Sequence of powerflow states coupling differential equations
– Focused mainly on 0.5 ms to 50 ms range – electromechanical dynamics

April 12, 2018


GridLAB-D Studies (General)
• American Reinvestment and Recovery Act (ARRA) Smart
Grid Investment Grant (SGIG) evaluation
– Taxonomy-feeder based
– Several technologies examined
• Conservation Voltage Reduction/Volt-Var Control
evaluations Volt-Var Control evaluation
– Validated against actual system data
– Developed methods for estimating CVR/VVO impacts Peak
Demand
Peak Demand
Reduction
Existing Customers
Installed Cost per
New Customers
Installed Cost per
Customer Type N

• Business case for scalable demand response


Cost kW Cost kW
(kW) (%) (kW/ea.) ($/ea.) ($/kW) ($/ea.) ($/kW)
Residential 23,318 79,120 15.7% 0.53 $441 $825 $135 $253
– Evaluated cost reductions and help refine the SFg 10,532 36,280 15.6% 0.54 $415 $773 $135 $251
MHg
implementation MFe
3,511
2,358
9,762
6,189
11.5%
14.8%
0.32
0.39
$415
$480
$1,302
$1,237
$135
$135
$424
$348

• Evaluate solar carrying capacity and installation impacts Sfe


MHe
5,188
1,729
21,491
5,397
17.3%
11.4%
0.71
0.36
$480
$480
$672
$1,347
$135
$135
$189
$379

– Examined feeder-level impacts of solar deployments


Commercial 1,903 24,843 5.3% 0.69 $916 $1,329 $385 $559
COg 951 14,575 5.1% 0.78 $1,210 $1,542 $525 $669
CRg Compare951 the cost-to-benefits
10,268 5.1% 0.55 ratio
$622 of household
$1,123 $245 $442
All types or green- vs. brown-field growth.$178
25,221 103,963 13.9% 0.57 $477 $834 $311

April 12, 2018


Dynamic Simulation Usages
• Transients on distribution systems
– Tripping of IEEE 1547A devices
– Grid Friendly Appliance™ impacts

• Microgrid Analysis – Resiliency


– Inrush and line charging
• Overhead and underground lines being energized
• Transformer saturation WSU example for evaluating
“Microgrids as a Resiliency Resource”
• Motor starting surges
– Frequency and voltage impacts
• Acceptable ranges
• Secondary tripping of items
– Evaluate methods for improving resiliency

Transformer current in 8500-node system


during connection of primary transformer
April 12, 2018
7

How does GridLAB-D Work?


8

GridLAB-D Architecture
Core responsibilities
 Integrates models
Markets
 Manages memory & CPUs
Events
Communications  Coordinates time
Behavior  Handles stochastic requirements
GridLAB Buildings
Telemetry Core  Synchronizes updates (ranks)
Weather
 Coordinates variable sharing
Analysis Power System  Manages convergence
Controls Protection  Tracks numerical stability
 Measures system performance
 Debugs module behavior
9

Defining the System


Module Class Object
• Collects classes that are • Defines similar objects • Instances of classes
related • Properties are the same • Used to define the
• Groups common for all objects, but set different agents in the
parameters and solvers parametrically system
• May be proprietary or • Static classes are pre- • Each property is assigned
open-source compiled in distribution an individualized value
10

Example Instantiation of an Object


Set a house with default values

module residential; // module declaration


object house { // instantiation of an object of class house
name MyHouse;
}

Set a house with custom values

module residential; // module declaration


#include "CA-Los_angeles.glm“ // define weather conditions
object house {
floor_area random.normal(1500,300) sf; // set properties
heating_setpoint 70.0 degF;
cooling_setpoint 76.0 degF;
thermostat_deadband 1.0 degF;
}
11

Running a Simulation
12

Creating a GridLAB-D Model (GLM) file


clock {
timezone PST+8PDT;
• Instantiates the model to be starttime '2000-01-01 0:00:00'; //defines a 6-month
stoptime '2000-07-01 0:00:00'; //simulation length
loaded into the solver }

module powerflow;
• Defines the initial conditions of module residential;
module tape;
each agent object triplex_meter {
phases AS;
• Defines the relationships nominal_voltage 120 V;
name my_meter1;

between the agents }

object house {
• Sets the run-time parent my_meter1;
name my_house1;
floor_area random.normal(1500,300) sf;
• Defines which parameters to }
heating_setpoint 70.0 degF;

observe object recorder{


parent my_house1;
• Text-based! property air_temperature,heating_setpoint;
file theat_record.csv;
interval 60 s;
}
13

Running the Model


To execute, you get to
use a command
prompt!! (and the
equivalent in Linux
and MacOS)
14

Outputs
Note: I added a couple metering points and added a climate object.

• Must be defined
– Does NOT automatically record every
variable at every timestep
• Typically CSVs
– Most often a time series of data channels
– Some aggregation and reporting
– Can also be pushed to databases (or
external connections)
• XML “dump” can be used to pull the
entire system state simultaneously
• Collectors can aggregate similar
properties from across many agents
15

Input Parameters
• Fixed, static parameters
• Randomized over a population
• Driven by a time-series input
– Player
– Shape
– Schedule
– External Source
• Once properly randomized (and diversified), we can build a
load shape most of us are more familiar with…
Power (kW)
Power (kW)

0
2
4
6
8
10
12

0
5
10
15
20
25
30
35
40
45
50
0:00
0:00
1:00
1:00
2:00
2:00
3:00
3:00

1 Home
4:00

8 Homes
4:00
5:00
5:00

6:00 6:00

7:00 7:00

8:00 8:00

9:00 9:00

10:00 10:00

11:00 11:00

12:00 12:00

13:00 13:00

14:00 14:00

15:00 15:00

16:00 16:00

17:00 17:00

18:00 18:00

19:00 19:00

20:00 20:00

21:00 21:00

22:00 22:00

23:00 23:00

Power (kW)
Power (kW)
0
100
150
200
250
300
350
400
450

50
50

0
100
150
200
250
300
350
400
450

0:00
0:00
1:00
1:00
2:00
2:00
3:00
3:00
4:00
4:00
Loadshape

5:00
5:00
100 Homes

6:00
6:00
7:00
7:00
8:00
8:00
9:00
9:00
10:00
10:00
Example of Adding Agents

11:00 11:00
12:00 12:00
13:00 13:00
14:00 14:00
15:00 15:00
16:00 16:00

17:00 17:00

18:00 18:00

19:00 19:00

20:00 20:00

21:00 21:00

22:00 22:00

23:00 23:00
16
17

Why do we want to model as agents?


• Simple examples of interactions
– Resistive Heating
– Heat Pump HVACs

• The interactions of the


different agents (and
HVAC Apparent Power
particularly their controls) can 6000

often reveal unforeseen 5000


4000

behaviors

VA
3000
2000
1000
0
0:00 4:48 9:36 14:24 19:12 0:00
Time
18

Getting the Diversity can be Challenging


clock {
timezone PST+8PDT;
starttime '2000-01-01 0:00:00';
stoptime '2000-07-01 0:00:00';
}

module powerflow;
module residential;
module tape;

object triplex_meter {
phases AS;
nominal_voltage 120 V;
name my_meter1;
}

object house {
parent my_meter1;
name my_house1;
floor_area random.normal(1500,300);
heating_setpoint 70.0 degF;
}

object recorder{
parent my_house1;
property air_temperature;
file theat_record.csv;
interval 60 s;
}
19

We try to help…
• Model creation, conversion, and execution scripts are available
– A number are available on GridLAB-D repository (primarily Python)
– Some are located in other open-source tools (e.g., TESP, OMF, etc.)

• “Prototypical” and IEEE circuits are available


– 24 prototypical circuits are converted utility circuits that are
regionalized to North America
– These can act as starting points, rather than starting from scratch
20

Once we have a model, what are we looking for?


Transient Events Diurnal Cycles Seasonal/Annual Variations
Generator Frequency (Hz)
62
ZIP
61 2,000 kW
1,800 kW
1,500 kW
Freq (Hz)

60
1,200 kW
59

58

57
4 6 8 10
Time (sec)

Improving Controls
Population Distributions Time-Dependent Behaviors
Total Delta of Bill with RTP & Demand Response versus Fixed (Unintended Interactions)
50000 $200.00

40000
$150.00

30000
$100.00
Annual Energy Consumption (kWh)

20000

$50.00
10000

Annual Energy
0 $-
Delta Annual Bill
Poly. (Delta Annual Bill)
-10000
$(50.00)

-20000
$(100.00)
-30000

$(150.00)
-40000

-50000 $(200.00)
11
21
31
41
51
61
71
81
91
101
111
121
131
141
151
161
171
181
191
201
211
221
231
241
251
261
271
281
291
1
Further Information
Video Tutorials, Walkthrough, and Other Good Information
https://www.gridlabd.org/started.stm

GitHub Links
Contact: https://github.com/gridlab-d/gridlab-d
Jason Fuller
jason.fuller@pnnl.gov Wiki
Frank Tuffner http://gridlab-d.shoutwiki.com/wiki/Main_Page
francis.tuffner@pnnl.gov
SourceForge Forums (Help Questions)
https://sourceforge.net/p/gridlab-d/discussion

Users’ Publications
http://gridlab-d.shoutwiki.com/wiki/Publications

April 12, 2018

S-ar putea să vă placă și