FMonitor
Source: MA-OpenDSS Version 1.3 User Manual
https://www.ece.ucf.edu/~qu/ma-opendss/
Fmonitor is the model of communication in distribution network that follows the OpenFMB design. To enable the cooperative control scheme, a standard and scalable communication structure is implemented as an upper layer design over physical systems in this platform. A standard interface (‘Cluster’ and ‘node’) is established in this structure which can be used to simulate both distributed or centralized communication topology. The buses in power systems can be arranged with clusters and nodes. Within a cluster, each node can communicate to others which DGs might be attached to. By this approach, the communication could be an independent part of the platform. To study the response time of the cooperative control, we improved the dynamic simulation of MA-OpenDSS.
FMonitor defines the clusters of a distribution system, which the multi-agent distributed control can be implemented upon. The properties of Fmonitor are the following.
Property |
Description |
Cluster_num |
The cluster number |
Element |
Name (Full Object name) of element to which is the virtual leader of this cluster. |
Terminal |
Number of the terminal of the circuit element to which the virtual leader is connected. 1 or 2, typically. |
Nodes |
Nodes connected to this FMonitor. Example:(Nodes=33) |
ElemTableLine |
Define each node within this cluster. The first entry of this vector is the number of node within cluster; The second is bus name; The third is the measured element name; The forth is terminal number; The fifth is voltage base; The last the control gain of network level control. . |
CommVector |
Define the communication vector of each node in this FMonitor. The first entry of this vector is the node number. |
T_intvl_smpl |
The time period that indicates the information of each agent will be sampled at each node. T_intvl_smpl is also the minimal communication time between neighbor nodes. If T_intvl_smpl=0.0, no delay for the communication is enabled in the simulation |
MaxLocalMem |
The max number of local memory size of each agent. No larger than 99. |
b_Curt_Ctrl |
Set P curtailment on/off; b_Curt_Ctrl=True: P curtailment will be implemented according to the system voltage (default); b_Curt_Ctrl=False: P curtailment will not be implemented.Set the time delay between agents in this FMonitor. The first entry of this vector is the number of the node. The example show node #2 can communicate to node #1 and #3 with time delay t1 and t2 seperately |
CommDelayVector |
Set the time delay between agents in this FMonitor. The first entry of this vector is the number of the node. The example show node #2 can communicate to node #1 and #3 with time delay t1 and t2 seperately |
up_dly |
Delay time to upper level. For example: "up_dly := 0.05" It can be used to simulate the time delay between clusters |
Volt_limits_pu |
Define the voltage limits of this cluster, will be used on the network level control. Exmaple "Volt_limits_pu={a0,a1, a2}" a0: the phase number, 0 means pos. seq; a1: upper voltage limit of this cluster, usually 1.05; a2: upper voltage limit of this cluster, usually 0.95 |
EGen |
{kVA_fm, M_fm, D_fm, Tau_fm, Ki_fm,init_time} where equations are: (1):delta''=omega (1):M_fm * omega''=puPm - puPe - D_fm*omega (1):Tau_fm*Pm ''=Ki_fm * omega puPm = Pm / kVA_fm, puPe = Pe/ kVAM_fm; everything is zero within init_time(default value is 0.5s); k_dltP is the coordinator for PV control input: u_i = k_dltP * pu_DltP + omg_fm. |
Examples
New "Fmonitor.FM3" Cluster_num=3 element=Line.LN5956470-1 terminal=1 Nodes=2 t_intvl_smpl=0.0 up_dly=0.0 MaxLocalMem =60 Volt_limits_pu={the 0,1.05, 0.96}
Fmonitor.FM3.ElemTableLine={1, M1069311, Line.LN5965099-2, 2, 7.2, 1.0}
Fmonitor.FM3.ElemTableLine={2, L3159448, Line.LN5965099-9, 2, 7.2, 1.0}
Fmonitor.FM3.CommVector={1,1,1}
Fmonitor.FM3.CommVector={2,1,1}
Fmonitor.FM3.CommDelayVector={1, 0, 0.1}
Fmonitor.FM3.CommDelayVector={2, 0.1, 0
Plot monitor object= dg_g2 channels=(31) !