{ "cells": [ { "cell_type": "markdown", "metadata": {}, "source": [ "# Short-Circuit Calculation Considering Renewable Energy Resources\n", "\n" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "In the 2016 revision of the standard, the contribution of full converter elements like wind parks of photovoltaic or wind power plants, which was previously neglected, has been integrated. \n", "\n", "In the paper [Short Circuit Calculation with Fullsize Converters According to IEC 60909](https://www.cepsi2016bangkok.org/pdf/FP_B.1_TUD-SHORT-CIRCUIT%20CALCULATION%20WITH%20FULLSIZE%20CONVERTERS%20ACCORDING%20TO%20IEC%2060909.pdf), the process is explained an example is given. This example is used here to validate the correct implementation of the 2016 revision of the standard in pandapower." ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## Example Network\n", "\n", "The following network is introduced as example in the paper:\n", " \n", "" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "This network can be modeled in pandapower with the line parameters given in the paper as:" ] }, { "cell_type": "code", "execution_count": 54, "metadata": { "collapsed": false }, "outputs": [], "source": [ "import pandapower as pp\n", "import pandapower.shortcircuit as sc\n", "import numpy as np\n", "\n", "net = pp.create_empty_network()\n", "for i in range(4):\n", " pp.create_bus(net, vn_kv=110., index=i+1)\n", "pp.create_ext_grid(net, 1, s_sc_max_mva=20*110*np.sqrt(3), rx_max=0.1)\n", "pp.create_std_type(net, {\"r_ohm_per_km\": 0.120, \"x_ohm_per_km\": 0.393, \"c_nf_per_km\": 0.19,\n", " \"max_i_ka\": 0.6}, \"example_type\")\n", "for fb, tb, length in [(1, 2, 100), (1, 3, 50), (2, 3, 50), (3, 4, 25)]:\n", " pp.create_line(net, from_bus=fb, to_bus=tb, length_km=length, std_type=\"example_type\")\n", "for b, p in [(2, 100e3), (3, 50e3), (4, 50e3)]:\n", " pp.create_sgen(net, b, p_kw=p, sn_kva=p, k=1.2)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## Short Circuits Without Windparks\n", "\n", "First, we disable the static generators that represent the wind parks and run a short circuit calculation without the wind park contribution:" ] }, { "cell_type": "code", "execution_count": 55, "metadata": { "collapsed": false }, "outputs": [], "source": [ "net.sgen.in_service = False\n", "sc.calc_sc(net, ip=True)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "The result given in the paper without wind park contribution for a fault at bus 2 is Ikss = 2.9133 kA and ip = 5.9746 kA. Checking the results table shows that pandapower gives the same results:" ] }, { "cell_type": "code", "execution_count": 56, "metadata": { "collapsed": false }, "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", "
ikss_kaip_ka
120.00000049.384390
22.9131185.974240
33.7066187.658568
42.3993754.897167
\n", "
" ], "text/plain": [ " ikss_ka ip_ka\n", "1 20.000000 49.384390\n", "2 2.913118 5.974240\n", "3 3.706618 7.658568\n", "4 2.399375 4.897167" ] }, "execution_count": 56, "metadata": {}, "output_type": "execute_result" } ], "source": [ "net.res_bus_sc" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Minor deviations in the results can be explained since the values in the paper are obtained from rounded intermediate results in the paper." ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## Short Circuits With Windparks\n", "\n", "We now activate the three wind parks and run the short circuit calculation again:" ] }, { "cell_type": "code", "execution_count": 57, "metadata": { "collapsed": true }, "outputs": [], "source": [ "net.sgen.in_service = True\n", "sc.calc_sc(net, ip=True)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "The result given in the paper with wind park contribution for a fault at bus 2 is Ikss = 3.9034 kA and ip = 7.3746 kA. Checking the results table shows that pandapower results yields the same result:" ] }, { "cell_type": "code", "execution_count": 59, "metadata": { "collapsed": false }, "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", "
ikss_kaip_ka
121.25967351.165837
23.9031267.374321
34.7947739.197452
43.2147906.050337
\n", "
" ], "text/plain": [ " ikss_ka ip_ka\n", "1 21.259673 51.165837\n", "2 3.903126 7.374321\n", "3 4.794773 9.197452\n", "4 3.214790 6.050337" ] }, "execution_count": 59, "metadata": {}, "output_type": "execute_result" } ], "source": [ "net.res_bus_sc" ] } ], "metadata": { "kernelspec": { "display_name": "Python [conda root]", "language": "python", "name": "conda-root-py" }, "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.5.2" } }, "nbformat": 4, "nbformat_minor": 2 }