{ "cells": [ { "cell_type": "markdown", "metadata": {}, "source": [ "# Using ActiveClass interface" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "The interface described below requires the `extras` dependencies. Please see [installation instructions](https://dss-extensions.github.io/OpenDSSDirect.py/notebooks/Installation.html)." ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "The `OpenDSSDirect.py` interface may not support all classes or element by default, however you can access these values by using the `class_to_dataframe` interface." ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "An example is shown below for the `Storage` class." ] }, { "cell_type": "code", "execution_count": 1, "metadata": { "collapsed": true }, "outputs": [], "source": [ "from opendssdirect import dss\n", "\n", "dss('Redirect \"../../tests/data/13Bus/IEEE13Nodeckt.dss\"')\n", "\n", "dss.Circuit.AllBusNames()\n", "\n", "dss.Command(\n", " \"New Storage.{bus_name} Bus1={bus_name} phases=1 kV=2.2 kWRated={rating} kWhRated={kwh_rating} kWhStored={initial_state} %IdlingkW=0 %reserve=0 %EffCharge=100 %EffDischarge=100 State=CHARGING\".format(\n", " bus_name='675',\n", " rating=20,\n", " kwh_rating=20,\n", " initial_state=20\n", " ))\n", "\n", "\n", "dss.Command(\n", " \"New Storage.{bus_name} Bus1={bus_name} phases=1 kV=2.2 kWRated={rating} kWhRated={kwh_rating} kWhStored={initial_state} %IdlingkW=0 %reserve=0 %EffCharge=100 %EffDischarge=100 State=CHARGING\".format(\n", " bus_name='611',\n", " rating=20,\n", " kwh_rating=20,\n", " initial_state=20\n", " ))\n", "\n", "dss.Solution.Solve()\n" ] }, { "cell_type": "code", "execution_count": 3, "metadata": {}, "outputs": [ { "data": { "text/html": [ "
\n", "\n", "\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
Storage.675Storage.611
phases11
bus1675611
kv2.22.2
connwyewye
kW00
kvar00
pf11
kVA2020
%Cutin00
%Cutout00
EffCurve
VarFollowInverterNoNo
kvarMax2525
kvarMaxAbs2525
WattPriorityNoNo
PFPriorityNoNo
%PminNoVars-1-1
%PminkvarMax-1-1
kWrated2020
%kWrated100100
kWhrated2020
kWhstored2020
%stored100100
%reserve00
StateIdlingIdling
%Discharge100100
%Charge100100
%EffCharge100100
%EffDischarge100100
%IdlingkW00
%R00
%X5050
model11
Vminpu0.90.9
Vmaxpu1.11.1
BalancedNoNo
LimitCurrentNoNo
yearly
daily
duty
DispModeDefaultDefault
DischargeTrigger00
ChargeTrigger00
TimeChargeTrig22
class11
DynaDLL
DynaData
UserModel
UserData
debugtraceNoNo
spectrum
basefreq6060
enabledYesYes
like
\n", "
" ], "text/plain": [ " Storage.675 Storage.611\n", "phases 1 1\n", "bus1 675 611\n", "kv 2.2 2.2\n", "conn wye wye\n", "kW 0 0\n", "kvar 0 0\n", "pf 1 1\n", "kVA 20 20\n", "%Cutin 0 0\n", "%Cutout 0 0\n", "EffCurve \n", "VarFollowInverter No No\n", "kvarMax 25 25\n", "kvarMaxAbs 25 25\n", "WattPriority No No\n", "PFPriority No No\n", "%PminNoVars -1 -1\n", "%PminkvarMax -1 -1\n", "kWrated 20 20\n", "%kWrated 100 100\n", "kWhrated 20 20\n", "kWhstored 20 20\n", "%stored 100 100\n", "%reserve 0 0\n", "State Idling Idling\n", "%Discharge 100 100\n", "%Charge 100 100\n", "%EffCharge 100 100\n", "%EffDischarge 100 100\n", "%IdlingkW 0 0\n", "%R 0 0\n", "%X 50 50\n", "model 1 1\n", "Vminpu 0.9 0.9\n", "Vmaxpu 1.1 1.1\n", "Balanced No No\n", "LimitCurrent No No\n", "yearly \n", "daily \n", "duty \n", "DispMode Default Default\n", "DischargeTrigger 0 0\n", "ChargeTrigger 0 0\n", "TimeChargeTrig 2 2\n", "class 1 1\n", "DynaDLL \n", "DynaData \n", "UserModel \n", "UserData \n", "debugtrace No No\n", "spectrum \n", "basefreq 60 60\n", "enabled Yes Yes\n", "like " ] }, "execution_count": 3, "metadata": {}, "output_type": "execute_result" } ], "source": [ "dss.utils.class_to_dataframe('Storage').transpose()" ] } ], "metadata": { "kernelspec": { "display_name": "base", "language": "python", "name": "python3" }, "language_info": { "codemirror_mode": { "name": "ipython", "version": 3 }, "file_extension": ".py", "mimetype": "text/x-python", "name": "python", "nbconvert_exporter": "python", "pygments_lexer": "ipython3", "version": "3.8.12" }, "vscode": { "interpreter": { "hash": "baa8017c28995192956bc3ba1b5ff3daaf48c837d0d371b8fadc1e72c74d0599" } } }, "nbformat": 4, "nbformat_minor": 2 }