Dssim-Xx Communication Library For Labview®: Ntroduction

Download as pdf or txt
Download as pdf or txt
You are on page 1of 15

DSSim-XX communication library for

LabVIEW®
INTRODUCTION

The DSSim-XX system is a graphic Distribution network Simulator for PC and Real Time (RT)
systems [ 1 - 3 ] . This software is based in the EPRI’s OpenDSS software to solve the
electrical system and includes almost all the functionalities [4-6].

There are different versions of the DSSim-XX where the characters XX defines the functionality (it
can be RT, PC, MT and OP). But all of them include a TCP communications server to allow the
communication from an external client, this way the user can interact with this simulator no matter
the programming language that he is used to use as shown in Figure 1.

Figure 1. General functional schema of the DSSim-XX series

Davis Montenegro M. 2014


This manual presents the use of the LabVIEW® library developed to communicate the DSSim with
and custom external application coded in this language.

SET OF INSTRUCTIONS

For each instruction, the library will deliver a 2D array of strings with the answer for the query, so
if the data that you are expecting is a number, you have to make the conversion of the data. For
each instruction it is necessary to respect the use of capital and minuscule letters.

Function Connect
This function is used to initialize the communication between the external client and the DSSim; it
has to be used at the beginning of your application.

Function Read Simulation time


This function will return the current number of seconds of the simulation.

Function Close
This function will close the communication link between the DSSim and the external application, it
is necessary to include it in your when it finishes.

Davis Montenegro M. 2014


Function Read Simulation days
This function will return the current number of days of the simulation (in seconds).

Function Read node voltages p.u.


This function will return the voltages p.u. of all the buses present in the circuit

The data will be delivered by pairs defining the type of element, the name of the element,
magnitude and angle for each phase (if applies).

Function Read node voltages Mag


This function will return the voltages in magnitude of all the buses present in the circuit

The data will be delivered by pairs defining the type of element, the name of the element,
magnitude and angle for each phase (if applies).

Davis Montenegro M. 2014


Function Read capacitors currents
This function will return the currents of all the capacitors present in the circuit

The data will be delivered by pairs defining the type of element, the name of the element,
magnitude and angle for each phase (if applies).

Function Read capacitors voltages


This function will return the voltages of all the capacitors present in the circuit

The data will be delivered by pairs defining the type of element, the name of the element,
magnitude and angle for each phase (if applies).

Function Read capacitors losses


This function will return the losses of all the capacitors present in the circuit

The data will be delivered by pairs defining the type of element, the name of the element,
magnitude in kW and the magnitude in kVAr, the magnitudes are total.

Davis Montenegro M. 2014


Function Read capacitors powers
This function will return the powers of all the capacitors present in the circuit

The data will be delivered by pairs defining the type of element, the name of the element,
magnitude for each phase in kW and in kVAr.

Function Read Transformers currents


This function will return the currents of all the transformers present in the circuit

The data will be delivered by pairs defining the type of element, the name of the element,
magnitude and angle for each phase (if applies).

Function Read Transformers voltages


This function will return the voltages of all the transformers present in the circuit (terminal 1)

The data will be delivered by pairs defining the type of element, the name of the element,
magnitude and angle for each phase (if applies).

Davis Montenegro M. 2014


Function Read Transformers losses
This function will return the losses of all the transformers present in the circuit

The data will be delivered by pairs defining the type of element, the name of the element,
magnitude in kW and the magnitude in kVAr, the magnitudes are total.

Function Read Transformers powers


This function will return the powers of all the transformers present in the circuit

The data will be delivered by pairs defining the type of element, the name of the element,
magnitude for each phase in kW and in kVAr.

Function Read Loads currents


This function will return the currents of all the Loads present in the circuit

The data will be delivered by pairs defining the type of element, the name of the element,
magnitude and angle for each phase (if applies).

Davis Montenegro M. 2014


Function Read Loads powers
This function will return the powers of all the Loads present in the circuit

The data will be delivered by pairs defining the type of element, the name of the element,
magnitude for each phase in kW and in kVAr.

Function Read Line currents


This function will return the currents of all the Lines present in the circuit

The data will be delivered by pairs defining the type of element, the name of the element,
magnitude and angle for each phase (if applies).

Function Read Line powers


This function will return the powers of all the Lines present in the circuit

The data will be delivered by pairs defining the type of element, the name of the element,
magnitude for each phase in kW and in kVAr.

Davis Montenegro M. 2014


Function Read Line Losses
This function will return the losses of all the Lines present in the circuit

The data will be delivered by pairs defining the type of element, the name of the element,
magnitude in kW and the magnitude in kVAr, the magnitudes are total.

Function Write switches status


This function can be used to modify the current status of a specific switch, at difference of the
others functions, this one requires additional arguments.

If the operation is successful, the algorithm returns an ‘OK’ string.

Function Read switches names


This function delivers the name and current status of all the switches present in the circuit.

The information is delivered in pairs, where the first data is the current status and the second is
the name of the switch.

Davis Montenegro M. 2014


Function Fix Load Power
This function allows to the user to modify the current power of a load present in the circuit. It
requires additional arguments

The first argument is the name of the function and is a constant, the second argument is the name
of the load to be modified (p.e. Load_1), and the last argument is to specify the multiplier to affect
the nominal power consumed (or delivered) by the load. Use the character point (.) as decimal
separator. The example shows how to fix the power of the ‘Load_1’ to consume the half of his
nominal power (programmed in DSSim).

Function Modify element property


This function allows to the user to modify the current property of an element present in the
circuit. It requires additional arguments

The first argument is the name of the function and is a constant, the second argument is the name
of the element to be modified (the name must be a full name, this is, describing the type of
element also p.e. Load.Load_1), the third argument is the property to modify (refer to the
OpenDSS manual, p. e. QMult),and the last argument is to specify the value to affect the specified
property. Use the character point (.) as decimal separator. The example shows how to fix the
reactive power of the ‘Load_1’ to consume the half of his nominal reactive power (programmed in
DSSim).

With this function the user can modify any property of any object in the system (refer to the
OpenDSS manual).

Davis Montenegro M. 2014


Function Read Energy meters
This function delivers the name and current values of all the energy meters present in the circuit.

The information is delivered as follows: first the name of the element for which the meter is
connected, second the total active power measured (kWh), third the total active power measured
(kVAr) and finally the time (hours:minutes:seconds,miliseconds) of the sample.

Function Read Branch-Node incidence matrix of the system


This function delivers the branch-node incidence matrix of the compiled system.

Remember that if you want to obtain the adjacency matrix, you must multiply the transpose of
this incidence matrix by the non-transposed matrix. The first row of the matrix corresponds to the
names of the columns of the matrix (names of the nodes), and the first column of the matrix is the
name of the lines or elements that interconnect the nodes.

Function Read the list of EV & Storage elements


This function delivers the list of the Electric vehicles and storage elements within the circuit.

Davis Montenegro M. 2014


The sent message corresponds to a matrix of two columns with a number of rows equal to the
number of elements (EV and storage elements) present within the circuit. The first column is the
name of the element and the second one is the description of the element.

Function Read the EV & Storage status


This function delivers the list of the Electric vehicles and storage elements status within the
circuit., with this instruction the remote user can read the charging status of the battery of each
storage element within the circuit and his status (Charging, discharging or idling).

The sent message corresponds to a matrix of Four columns with a number of rows equal to the
number of elements (EV and storage elements) present within the circuit. The first column is the
name of the element and the second one is the amount of energy stored (%), the third one is the
amount of energy stored in kWh and the last one is the state of the charger (Charging, discharging
or idling).

Function Read all switches currents


With this function, the remote client demands to the TCP server the currents of all switches placed
in the circuit.

Davis Montenegro M. 2014


Function Read all switches losses
With this function, the remote client demands to the TCP server the losses of all switches placed in
the circuit.

Function Read all switches powers


With this function, the remote client demands to the TCP server the powers of all switches placed
in the circuit.

Davis Montenegro M. 2014


Function Step in Simulation
With this function, the remote client forces the simulation to step in when it is in the “Remote
controlled simulation” mode. It gives the control of the simulation progress to the user.

Function End Simulation


With this function, the remote client forces the simulation to terminate when it is in the “Remote
controlled simulation” mode.

Function Send OpenDSS Command


With this function, the remote client can interact directly with the OpenDSSEngine, it does not
matter in which mode the simulation is running.

Davis Montenegro M. 2014


Function request Monitor Names
With this function, the remote client demands to the TCP server the names of all harmonic or THD
meters placed in the circuit.

Function request Monitor Data


With this function, the remote client request to the TCP server the data gathered by a specific
harmonic or THD meter.

Davis Montenegro M. 2014


REFERENCES

[1] D. Montenegro, M. Hernandez, and G. A. Ramos, "Real time OpenDSS framework for
distribution systems simulation and analysis," in Transmission and Distribution: Latin
America Conference and Exposition (T&D-LA), 2012 Sixth IEEE/PES, 2012, pp. 1-5.
[2] D. Montenegro, A. Ovalle, and G. A. Ramos, "Real Time distribution system simulator
Based on OpenDSS," in Grid of the Future Symposium, Kansas City, MO, 2012.
[3] D. Montenegro. (2013, 01, 07). DSSim-PC, Electrical Distribution Network simulator for PC.
Available: http://sourceforge.net/projects/dssimpc/?source=navbar
[4] W. H. Kersting and R. C. Dugan, "Recommended Practices for Distribution System
Analysis," in Power Systems Conference and Exposition, 2006. PSCE '06. 2006 IEEE PES,
2006, pp. 499-504.
[5] R. C. Dugan and T. E. McDermott, "An open source platform for collaborating on smart
grid research," in 2011 IEEE Power and Energy Society General Meeting, , 2011, pp. 1-7.
[6] R. C. Dugan, R. F. Arritt, T. E. McDermott, S. M. Brahma, and K. Schneider, "Distribution
System Analysis to support the Smart Grid," in Power and Energy Society General Meeting,
2010 IEEE, 2010, pp. 1-8.

Davis Montenegro M. 2014

You might also like