{"id":22320,"date":"2024-01-30T12:18:50","date_gmt":"2024-01-30T12:18:50","guid":{"rendered":"https:\/\/imperix.com\/doc\/?p=22320"},"modified":"2025-10-15T14:13:28","modified_gmt":"2025-10-15T14:13:28","slug":"grid-forming-inverter","status":"publish","type":"post","link":"https:\/\/imperix.com\/doc\/implementation\/grid-forming-inverter","title":{"rendered":"Grid-Forming Inverter (GFMI)"},"content":{"rendered":"<div id=\"ez-toc-container\" class=\"ez-toc-v2_0_82_2 ez-toc-wrap-right-text counter-hierarchy ez-toc-counter ez-toc-grey ez-toc-container-direction\">\n<div class=\"ez-toc-title-container\">\n<p class=\"ez-toc-title\" style=\"cursor:inherit\">Table of Contents<\/p>\n<span class=\"ez-toc-title-toggle\"><\/span><\/div>\n<nav><ul class='ez-toc-list ez-toc-list-level-1 ' ><li class='ez-toc-page-1 ez-toc-heading-level-2'><a class=\"ez-toc-link ez-toc-heading-1\" href=\"https:\/\/imperix.com\/doc\/implementation\/grid-forming-inverter\/#Grid-Forming-Inverter-overview\" >Grid-Forming Inverter overview<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-2'><a class=\"ez-toc-link ez-toc-heading-2\" href=\"https:\/\/imperix.com\/doc\/implementation\/grid-forming-inverter\/#Control-of-grid-forming-inverters\" >Control of grid-forming inverters<\/a><ul class='ez-toc-list-level-3' ><li class='ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-3\" href=\"https:\/\/imperix.com\/doc\/implementation\/grid-forming-inverter\/#Plant-model-of-the-voltage-and-current-controllers\" >Plant model of the voltage and current controllers<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-4\" href=\"https:\/\/imperix.com\/doc\/implementation\/grid-forming-inverter\/#Grid-voltage-control\" >Grid voltage control<\/a><\/li><\/ul><\/li><li class='ez-toc-page-1 ez-toc-heading-level-2'><a class=\"ez-toc-link ez-toc-heading-5\" href=\"https:\/\/imperix.com\/doc\/implementation\/grid-forming-inverter\/#Software-resources-for-grid-forming-inverter\" >Software resources for grid-forming inverter<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-2'><a class=\"ez-toc-link ez-toc-heading-6\" href=\"https:\/\/imperix.com\/doc\/implementation\/grid-forming-inverter\/#Experimental-results\" >Experimental results<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-2'><a class=\"ez-toc-link ez-toc-heading-7\" href=\"https:\/\/imperix.com\/doc\/implementation\/grid-forming-inverter\/#To-go-further%E2%80%A6\" >To go further\u2026<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-2'><a class=\"ez-toc-link ez-toc-heading-8\" href=\"https:\/\/imperix.com\/doc\/implementation\/grid-forming-inverter\/#Academic-references\" >Academic references<\/a><\/li><\/ul><\/nav><\/div>\n\n<p>This technical note showcases an implementation example featuring the <a href=\"https:\/\/imperix.com\/products\/power\/programmable-inverter\/\" target=\"_blank\" rel=\"noreferrer noopener\">programmable inverter TPI 8032<\/a>, operated as a Grid-Forming Inverter (GFMI). It provides a concise overview of the GFMI&#8217;s working principle and offers a comprehensive guide to the tuning procedure for the cascaded AC voltage control system employed in this setup, typically used as the inner loop of a droop control algorithm.<\/p>\n\n\n\n<p>An overview of the hardware architecture and detailed instructions on how to program the device are addressed in <a href=\"https:\/\/imperix.com\/doc\/help\/tpi-quick-start-guide\" target=\"_blank\" rel=\"noreferrer noopener\">PN190<\/a>.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"h-grid-forming-inverter-overview\"><span class=\"ez-toc-section\" id=\"Grid-Forming-Inverter-overview\"><\/span>Grid-Forming Inverter overview<span class=\"ez-toc-section-end\"><\/span><\/h2>\n\n\n\n<div class=\"wp-block-columns is-layout-flex wp-container-core-columns-is-layout-9d6595d7 wp-block-columns-is-layout-flex\">\n<div class=\"wp-block-column is-layout-flow wp-block-column-is-layout-flow\"><div class=\"wp-block-image\">\n<figure class=\"aligncenter size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"374\" height=\"128\" src=\"https:\/\/imperix.com\/doc\/wp-content\/uploads\/2024\/03\/Schematic_P1.png\" alt=\"grid-forming inverter working principle. gird-forming inverter schematic. grid-forming inverter structure. grid-forming inverter operating principle\" class=\"wp-image-25440\" srcset=\"https:\/\/imperix.com\/doc\/wp-content\/uploads\/2024\/03\/Schematic_P1.png 374w, https:\/\/imperix.com\/doc\/wp-content\/uploads\/2024\/03\/Schematic_P1-300x103.png 300w\" sizes=\"auto, (max-width: 374px) 100vw, 374px\" \/><figcaption class=\"wp-element-caption\">Grid-forming inverter<\/figcaption><\/figure>\n<\/div><\/div>\n\n\n\n<div class=\"wp-block-column is-layout-flow wp-block-column-is-layout-flow\"><div class=\"wp-block-image\">\n<figure class=\"aligncenter size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"374\" height=\"128\" src=\"https:\/\/imperix.com\/doc\/wp-content\/uploads\/2024\/03\/Schematic_P2.png\" alt=\"grid-following inverter working principle. gird-following inverter schematic. grid-following inverter structure. grid-following inverter operating principle\" class=\"wp-image-25441\" srcset=\"https:\/\/imperix.com\/doc\/wp-content\/uploads\/2024\/03\/Schematic_P2.png 374w, https:\/\/imperix.com\/doc\/wp-content\/uploads\/2024\/03\/Schematic_P2-300x103.png 300w\" sizes=\"auto, (max-width: 374px) 100vw, 374px\" \/><figcaption class=\"wp-element-caption\">Grid-following inverter<\/figcaption><\/figure>\n<\/div><\/div>\n<\/div>\n\n\n\n<p>Grid-forming inverters (GFMI) and <a href=\"https:\/\/imperix.com\/doc\/implementation\/grid-following-inverter\">grid-following inverters (GFLI)<\/a> are two basic categories of grid-connected inverters. Essentially, a grid-forming inverter works as an ideal voltage source that sets the amplitude \\(V^{\\star}\\) and frequency \\(\\omega^{\\star}\\) of the grid. In contrast, a grid-following inverter works as a current source that synchronizes its output with the grid voltage and frequency and injects or absorbs active (\\(P^{\\star}\\)) or reactive (\\(Q^{\\star}\\)) power by controlling its output current [1]. <\/p>\n\n\n\n<p>Grid-forming inverters (GFMIs) are crucial in microgrid systems, particularly in islanded or isolated conditions. The concept of GFMIs originated from the need, in islanded mode, to have at least one inverter designed to autonomously establish and maintain grid-like conditions, even without a centralized grid connection formed by traditional synchronous generators. Unlike grid-following inverters, which synchronize with an existing grid, GFMIs act as the primary power source and create a self-sustainable grid environment. The voltage produced by a grid-forming inverter serves as a reference for the grid-following inverters connected to it [2].<\/p>\n\n\n\n<p>Nonetheless, the voltage quality of a microgrid is not exclusively dependent on grid-forming inverters. Loads connected to the microgrid distribution lines can impact, positively or negatively, the voltage profile along the line. To this end, several grid-forming inverters together with a droop control technique can be employed to enhance voltage quality while improving the system&#8217;s reliability.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"h-control-of-the-grid-forming-inverter\"><span class=\"ez-toc-section\" id=\"Control-of-grid-forming-inverters\"><\/span>Control of grid-forming inverters<span class=\"ez-toc-section-end\"><\/span><\/h2>\n\n\n\n<p>In this note, the control of the grid-forming inverter is introduced by taking a use case of the&nbsp;<a href=\"https:\/\/imperix.com\/products\/power\/programmable-inverter\/\">TPI 8032<\/a> as a programmable inverter. The schematic of the whole system is shown below together with the main plant parameters.<\/p>\n\n\n\n<figure class=\"wp-block-image size-full is-resized\"><img loading=\"lazy\" decoding=\"async\" width=\"781\" height=\"335\" src=\"https:\/\/imperix.com\/doc\/wp-content\/uploads\/2024\/03\/Simplified_schematic_TPI_with_load1-1.png\" alt=\"Schematic of TPI 8032 with connected load\" class=\"wp-image-25253\" srcset=\"https:\/\/imperix.com\/doc\/wp-content\/uploads\/2024\/03\/Simplified_schematic_TPI_with_load1-1.png 781w, https:\/\/imperix.com\/doc\/wp-content\/uploads\/2024\/03\/Simplified_schematic_TPI_with_load1-1-300x129.png 300w, https:\/\/imperix.com\/doc\/wp-content\/uploads\/2024\/03\/Simplified_schematic_TPI_with_load1-1-768x329.png 768w\" sizes=\"auto, (max-width: 781px) 100vw, 781px\" \/><figcaption class=\"wp-element-caption\">Schematic of TPI 8032 with connected load<\/figcaption><\/figure>\n\n\n\n<figure class=\"wp-block-table\"><table class=\"has-fixed-layout\"><thead><tr><th>Parameter<\/th><th>Value<\/th><th>Description<\/th><\/tr><\/thead><tbody><tr><td>Lg<\/td><td>1.0 mH<\/td><td>Main filter inductance<\/td><\/tr><tr><td>Rg<\/td><td>54 m\u03a9<\/td><td>Series equivalent resistance of Lg<\/td><\/tr><tr><td>Cf<\/td><td>12.9 \u00b5F<\/td><td>Filter capacitance<\/td><\/tr><\/tbody><\/table><figcaption class=\"wp-element-caption\">Plant parameters<\/figcaption><\/figure>\n\n\n\n<p>Proper control of a GFMI should guarantee stable frequency, voltage, and power delivery to a generic load connected at the point of common coupling. This is achieved through the so-called VF control [3]. The control can be realized through a single-loop control or a dual-loop control. The main difference between the two is that the dual-loop control also presents the current limiting capability. The presented GFMI control consists of a dual-loop control implemented with PI controllers working in the dq reference frame. The control diagram can be represented as follows [3]:<\/p>\n\n\n<div class=\"wp-block-image is-resized\">\n<figure class=\"aligncenter size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"760\" height=\"215\" src=\"https:\/\/imperix.com\/doc\/wp-content\/uploads\/2024\/03\/Control_diagram_GFMI-3.png\" alt=\"Grid-forming inverter's control diagram. Cascaded voltage and current control for grid-forming inverter. \" class=\"wp-image-25905\" srcset=\"https:\/\/imperix.com\/doc\/wp-content\/uploads\/2024\/03\/Control_diagram_GFMI-3.png 760w, https:\/\/imperix.com\/doc\/wp-content\/uploads\/2024\/03\/Control_diagram_GFMI-3-300x85.png 300w\" sizes=\"auto, (max-width: 760px) 100vw, 760px\" \/><figcaption class=\"wp-element-caption\">Grid-forming inverter&#8217;s control diagram<\/figcaption><\/figure>\n<\/div>\n\n\n<p>The system input is the amplitude \\(V^{\\star}\\) and the frequency \\(\\omega^{\\star}\\) of the voltage to be formed by the power converter at the AC output terminals. The frequency reference is implemented directly within the <em>angle generator<\/em> block contained in the <a href=\"https:\/\/imperix.com\/software\/acg-sdk\/\">ACG SDK<\/a> Simulink blockset, which is essentially a counter wrapped between 0 and 2\u03c0.<\/p>\n\n\n\n<p>The external loop controls the AC grid voltage to match its reference value. The error between the reference and the measured voltage is the input to the PI voltage controller, whose output establishes the current reference to be injected by the converter. The internal control loop regulates the current supplied by the converter by tracking the reference current provided by the outer voltage loop.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\"><span class=\"ez-toc-section\" id=\"Plant-model-of-the-voltage-and-current-controllers\"><\/span>Plant model of the voltage and current controllers<span class=\"ez-toc-section-end\"><\/span><\/h3>\n\n\n\n<p>The following equations present the transfer functions of the control loops. These transfer functions are based on the plant model of the system. They are necessary for the tuning process of the inner and outer loop of the cascade voltage control. This process will be discussed in detail in the following Section.<\/p>\n\n\n\n<div class=\"wp-block-columns is-layout-flex wp-container-core-columns-is-layout-9d6595d7 wp-block-columns-is-layout-flex\">\n<div class=\"wp-block-column is-layout-flow wp-block-column-is-layout-flow\">\n<p class=\"has-text-align-center\">The inner loop transfer function is: <\/p>\n\n\n\n<p>$$ \\frac{K}{1+sT_{d1}}\\cdot\\frac{1}{R_{b+}sL_{b}}$$<\/p>\n<\/div>\n\n\n\n<div class=\"wp-block-column is-layout-flow wp-block-column-is-layout-flow\">\n<p class=\"has-text-align-center\">The outer loop transfer function is: <\/p>\n\n\n\n<p>$$ \\frac{K}{1+sT_{d,eq}}\\cdot\\frac{1}{sC_{f}}$$<\/p>\n<\/div>\n<\/div>\n\n\n<div class=\"wp-block-image\">\n<figure class=\"aligncenter size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"641\" height=\"215\" src=\"https:\/\/imperix.com\/doc\/wp-content\/uploads\/2024\/03\/Plant-model-1.png\" alt=\"Plant model of the system. Inner and outer loop transfer functions.\" class=\"wp-image-25608\" srcset=\"https:\/\/imperix.com\/doc\/wp-content\/uploads\/2024\/03\/Plant-model-1.png 641w, https:\/\/imperix.com\/doc\/wp-content\/uploads\/2024\/03\/Plant-model-1-300x101.png 300w\" sizes=\"auto, (max-width: 641px) 100vw, 641px\" \/><figcaption class=\"wp-element-caption\">Plant model of the system<\/figcaption><\/figure>\n<\/div>\n\n\n<p>Once the different control loops have been properly identified, each state variable can be controlled separately. In this example, both control loops are proposed to be implemented using PI controllers in the rotating reference frame (dq). The design of the current control loop is detailed in&nbsp;<a href=\"https:\/\/imperix.com\/doc\/implementation\/grid-following-inverter\" target=\"_blank\" rel=\"noreferrer noopener\">TN167<\/a>, whereas voltage control is further detailed in the following section.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\" id=\"TN108:Cascadedvoltagecontrol-Digitalimplementationandtuning\"><span class=\"ez-toc-section\" id=\"Grid-voltage-control\"><\/span>Grid voltage control<span class=\"ez-toc-section-end\"><\/span><\/h3>\n\n\n\n<p>The adopted voltage control loop is represented in the following schematic. Since the d- and q-axes are naturally coupled, a decoupling term is added to the PI controllers&#8217; output. For a step of d-voltage, a variation of the q-voltage is still expected. However, the decoupling term reduces the voltage variation on the q-axis, thus providing more independent control over each axis.<\/p>\n\n\n<div class=\"wp-block-image\">\n<figure class=\"aligncenter size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"451\" height=\"221\" src=\"https:\/\/imperix.com\/doc\/wp-content\/uploads\/2024\/02\/Voltage-controller-diagram.png\" alt=\"Detailed schematic of voltage control in for a grid-forming inverter in DQ frame\" class=\"wp-image-22595\" srcset=\"https:\/\/imperix.com\/doc\/wp-content\/uploads\/2024\/02\/Voltage-controller-diagram.png 451w, https:\/\/imperix.com\/doc\/wp-content\/uploads\/2024\/02\/Voltage-controller-diagram-300x147.png 300w\" sizes=\"auto, (max-width: 451px) 100vw, 451px\" \/><figcaption class=\"wp-element-caption\">Detailed schematic of voltage control in DQ frame<\/figcaption><\/figure>\n<\/div>\n\n\n<p>For the design of the voltage control loop, different methods are used in the literature [4]. In this article, the voltage control loop design is based on the Symmetrical Optimum (SO) method, since it presents well-established tuning parameter design rules with an emphasis on stability. Indeed, as the objective of the voltage control loop here is rather perturbation rejection than tracking performance (setpoints are likely constant in dq frame), it is reasonable to optimize it for stability rather than bandwidth. The controller parameters are defined as follows:<\/p>\n\n\n\n<p>$$\\begin{array}{l}<br>T_{2} = C_{f} \\\\<br>T_{i2} = a^2 T_{d,eq}\\end{array}<br>\\qquad\\text{and}\\qquad<br>\\begin{array}{l}<br>K_{p,V} = T_{2} \/(a*T_{deq}) \\\\<br>K_{i,V} = K_{p,V} \/ T_{i2}<br>\\end{array}$$<\/p>\n\n\n\n<p>With&nbsp;\\(T_{d,eq}\\)&nbsp;the equivalent delay of the closed-loop current controller transfer function, defined as:<\/p>\n\n\n\n<p>$$T_{d,eq} = 10 T_{d1}$$<\/p>\n\n\n\n<p>In a voltage-current cascade control system, the voltage controller should be slower than the current controller. Therefore, the inner loop delay is included in the tuning of the outer loop. \\(T_{d1}\\) is multiplied by 10 to ensure that the voltage controller responds appropriately to changes in current, preventing overshoots or instability in the system.<\/p>\n\n\n\n<p>The parameter&nbsp;\\(T_{d1}\\)&nbsp;represents the sum of all the small delays in the system. In this example, the cycle delay is shorter than half a control period (\\(T_{cy}&lt;0.5T_{s}\\)), and a triangular carrier is used for PWM. Therefore, the following delays defined in <a href=\"https:\/\/imperix.com\/doc\/help\/discrete-control-delay\" target=\"_blank\" rel=\"noreferrer noopener\">PN142<\/a> are considered here:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Sensor delay: neglected, several tens of kHz of bandwidth<\/li>\n\n\n\n<li>Control delay:&nbsp;\\(T_{d,ctrl}=0.5T_{s}\\)<\/li>\n\n\n\n<li>Modulator delay: \\(T_{d,PWM}=T_{sw}\/2\\) (triangular carrier)<\/li>\n\n\n\n<li>Synchronous averaging delay: \\(T_{d,avg}=0.5T_{s}\\)<\/li>\n\n\n\n<li>Switching delay: neglected, sub-microsecond<\/li>\n<\/ul>\n\n\n\n<p>Corresponding total delay: \\(T_{d1} = T_{d,ctrl} + T_{d,PWM} + T_{d,avg} = 1.5T_{s}\\)<\/p>\n\n\n\n<p>The parameter&nbsp;\\(a\\)&nbsp;is used to change the pole placement of the control function. Low values of \\(a\\) result in a higher overshoot with a faster system response, whereas increasing the value of&nbsp;\\(a\\)&nbsp;may lead to better damping, but the system response becomes slower. \\(a=2\\) is usually kept between 2 and 4. For the design preferences of the example provided in this technical note, \\(a=2\\) results in a satisfactory trade-off between fast response and low overshoot. <\/p>\n\n\n\n<p>The results of the voltage control tuning are reported in the following table:<\/p>\n\n\n\n<div class=\"wp-block-columns is-layout-flex wp-container-core-columns-is-layout-9d6595d7 wp-block-columns-is-layout-flex\">\n<div class=\"wp-block-column is-layout-flow wp-block-column-is-layout-flow\"><\/div>\n\n\n\n<div class=\"wp-block-column is-layout-flow wp-block-column-is-layout-flow\">\n<figure class=\"wp-block-table\"><table><thead><tr><th>Parameter<\/th><th>Value<\/th><\/tr><\/thead><tbody><tr><td>\\(T_{2}\\)<\/td><td>12.9 e-6<\/td><\/tr><tr><td>\\(T_{d,eq}\\)<\/td><td>300 e-6<\/td><\/tr><tr><td>\\(T_{i2}\\)<\/td><td>1.2 e-3<\/td><\/tr><tr><td>\\(K_{p,V}\\)<\/td><td>0.0215<\/td><\/tr><tr><td>\\(K_{i,V}\\)<\/td><td>17.9167<\/td><\/tr><\/tbody><\/table><figcaption class=\"wp-element-caption\">Numerical values of the voltage controller parameters<\/figcaption><\/figure>\n<\/div>\n\n\n\n<div class=\"wp-block-column is-layout-flow wp-block-column-is-layout-flow\"><\/div>\n<\/div>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"h-software-resources\"><span class=\"ez-toc-section\" id=\"Software-resources-for-grid-forming-inverter\"><\/span>Software resources for grid-forming inverter<span class=\"ez-toc-section-end\"><\/span><\/h2>\n\n\n\n<p>The control models available here after are implemented in Simulink and PLECS using the imperix <a href=\"https:\/\/imperix.com\/software\/acg-sdk\/simulink\/\" target=\"_blank\" rel=\"noreferrer noopener\">ACG SDK<\/a> blockset. The models can both simulate the behavior of the system in an offline simulation and generate code for real-time execution on the controller of <a href=\"https:\/\/imperix.com\/products\/power\/programmable-inverter\/\">TPI 8032<\/a>. To run these models, the minimum requirements are:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Imperix ACG SDK 2024.2 or newer.<\/li>\n\n\n\n<li>MATLAB Simulink R2016a or newer.<\/li>\n\n\n\n<li>For simulation only: Simscape Electrical<\/li>\n\n\n\n<li>PLECS 4.5.9 or newer.<\/li>\n<\/ul>\n\n\n\n<div class=\"wp-block-columns is-layout-flex wp-container-core-columns-is-layout-9d6595d7 wp-block-columns-is-layout-flex\">\n<div class=\"wp-block-column is-layout-flow wp-block-column-is-layout-flow\">\n<div class=\"wp-block-file aligncenter\"><a id=\"wp-block-file--media-b5ad3fb8-79ff-4742-bbdc-bf6378d48b9b\" href=\"https:\/\/imperix.com\/doc\/wp-content\/uploads\/2025\/06\/TN168_Grid_Forming_Inverter_Simulink.zip\">TN168_Grid_Forming_Inverter_Simulink<\/a><a href=\"https:\/\/imperix.com\/doc\/wp-content\/uploads\/2025\/06\/TN168_Grid_Forming_Inverter_Simulink.zip\" class=\"wp-block-file__button wp-element-button\" download aria-describedby=\"wp-block-file--media-b5ad3fb8-79ff-4742-bbdc-bf6378d48b9b\">Download<\/a><\/div>\n\n\n\n<div class=\"wp-block-file aligncenter\"><a id=\"wp-block-file--media-0339e581-6998-4126-b654-7ab252d74b09\" href=\"https:\/\/imperix.com\/doc\/wp-content\/uploads\/2025\/06\/TN168_Grid_Forming_Inverter_PLECS.zip\">TN168_Grid_Forming_Inverter_PLECS<\/a><a href=\"https:\/\/imperix.com\/doc\/wp-content\/uploads\/2025\/06\/TN168_Grid_Forming_Inverter_PLECS.zip\" class=\"wp-block-file__button wp-element-button\" download aria-describedby=\"wp-block-file--media-0339e581-6998-4126-b654-7ab252d74b09\">Download<\/a><\/div>\n\n\n\n<ul class=\"wp-block-list\">\n<li><em>TN168_Grid_Forming_Inverter<\/em> includes the grid-forming inverter control with a single TPI connected to a passive load.<\/li>\n<\/ul>\n<\/div>\n\n\n\n<div class=\"wp-block-column is-layout-flow wp-block-column-is-layout-flow\">\n<div class=\"wp-block-file aligncenter\"><a id=\"wp-block-file--media-3e5ee1d5-b5ab-4532-9d8c-ab15e02dc3a9\" href=\"https:\/\/imperix.com\/doc\/wp-content\/uploads\/2025\/06\/TN168_GFMI_and_GFLI_Simulink.zip\">TN168_GFMI_and_GFLI_Simulink<\/a><a href=\"https:\/\/imperix.com\/doc\/wp-content\/uploads\/2025\/06\/TN168_GFMI_and_GFLI_Simulink.zip\" class=\"wp-block-file__button wp-element-button\" download aria-describedby=\"wp-block-file--media-3e5ee1d5-b5ab-4532-9d8c-ab15e02dc3a9\">Download<\/a><\/div>\n\n\n\n<div class=\"wp-block-file aligncenter\"><a id=\"wp-block-file--media-dce848e5-1b71-4d2a-93df-fd2180bc02ac\" href=\"https:\/\/imperix.com\/doc\/wp-content\/uploads\/2025\/06\/TN168_GFMI_and_GFLI_PLECS.zip\">TN168_GFMI_and_GFLI_PLECS<\/a><a href=\"https:\/\/imperix.com\/doc\/wp-content\/uploads\/2025\/06\/TN168_GFMI_and_GFLI_PLECS.zip\" class=\"wp-block-file__button wp-element-button\" download aria-describedby=\"wp-block-file--media-dce848e5-1b71-4d2a-93df-fd2180bc02ac\">Download<\/a><\/div>\n\n\n\n<ul class=\"wp-block-list\">\n<li><em>TN168_GFMI_and_GFLI<\/em> additionally includes a grid-following inverter connected to the AC terminals of the grid-forming inverter to perform load steps. This implementation requires two TPI 8032.<\/li>\n<\/ul>\n<\/div>\n<\/div>\n\n\n<div class=\"wp-block-image\">\n<figure class=\"aligncenter size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"2504\" height=\"1085\" src=\"https:\/\/imperix.com\/doc\/wp-content\/uploads\/2024\/03\/GFMI_model-2.png\" alt=\"Grid-forming inverter implementation in Simulink. Grid-forming inverter implementation in Simulink example download\" class=\"wp-image-25919\" srcset=\"https:\/\/imperix.com\/doc\/wp-content\/uploads\/2024\/03\/GFMI_model-2.png 2504w, https:\/\/imperix.com\/doc\/wp-content\/uploads\/2024\/03\/GFMI_model-2-300x130.png 300w, https:\/\/imperix.com\/doc\/wp-content\/uploads\/2024\/03\/GFMI_model-2-1024x444.png 1024w, https:\/\/imperix.com\/doc\/wp-content\/uploads\/2024\/03\/GFMI_model-2-768x333.png 768w, https:\/\/imperix.com\/doc\/wp-content\/uploads\/2024\/03\/GFMI_model-2-1536x666.png 1536w, https:\/\/imperix.com\/doc\/wp-content\/uploads\/2024\/03\/GFMI_model-2-2048x887.png 2048w\" sizes=\"auto, (max-width: 2504px) 100vw, 2504px\" \/><figcaption class=\"wp-element-caption\">Grid-forming inverter implementation in Simulink<\/figcaption><\/figure>\n<\/div>\n\n\n<figure class=\"wp-block-image size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"1411\" height=\"753\" src=\"https:\/\/imperix.com\/doc\/wp-content\/uploads\/2024\/01\/plecs_controller.png\" alt=\"\" class=\"wp-image-33632\" srcset=\"https:\/\/imperix.com\/doc\/wp-content\/uploads\/2024\/01\/plecs_controller.png 1411w, https:\/\/imperix.com\/doc\/wp-content\/uploads\/2024\/01\/plecs_controller-300x160.png 300w, https:\/\/imperix.com\/doc\/wp-content\/uploads\/2024\/01\/plecs_controller-1024x546.png 1024w, https:\/\/imperix.com\/doc\/wp-content\/uploads\/2024\/01\/plecs_controller-768x410.png 768w\" sizes=\"auto, (max-width: 1411px) 100vw, 1411px\" \/><figcaption class=\"wp-element-caption\">Grid-forming inverter implementation in PLECS<\/figcaption><\/figure>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"h-experimental-results\"><span class=\"ez-toc-section\" id=\"Experimental-results\"><\/span>Experimental results<span class=\"ez-toc-section-end\"><\/span><\/h2>\n\n\n\n<p>The experimental validation of the grid-forming control is carried out with two TPIs used in a master-slave configuration, meaning that they are programmed from the same Simulink\/PLECS model. The GFMI is implemented on the master unit, connected through an <a href=\"https:\/\/imperix.com\/products\/control\/accessories\/#cables\" target=\"_blank\" rel=\"noreferrer noopener\">SFP cable<\/a> to the slave GFLI unit acting as an active load. Therefore the required equipment is:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>2x <a href=\"https:\/\/imperix.com\/products\/power\/programmable-inverter\/\" target=\"_blank\" rel=\"noreferrer noopener\">TPI 8032<\/a> three-phase inverter<\/li>\n\n\n\n<li><a href=\"https:\/\/imperix.com\/software\/acg-sdk\" target=\"_blank\" rel=\"noreferrer noopener\">ACG SDK toolbox<\/a>\u00a0for automated generation of the controller code from Simulink or PLECS<\/li>\n\n\n\n<li>1x DC power supply (800V)<\/li>\n\n\n\n<li>All the necessary cables<\/li>\n<\/ul>\n\n\n\n<p id=\"h-the-validation-of-the-control-has-been-carried-out-with-two-tpis-with-a-shared-dc-source-the-wiring-scheme-and-the-experiment-setup-are-shown-below\">Experimental results are obtained with the following conditions:<\/p>\n\n\n\n<div class=\"wp-block-columns are-vertically-aligned-bottom is-layout-flex wp-container-core-columns-is-layout-9d6595d7 wp-block-columns-is-layout-flex\">\n<div class=\"wp-block-column is-vertically-aligned-bottom is-layout-flow wp-block-column-is-layout-flow\">\n<figure class=\"wp-block-table\"><table><tbody><tr><td>Control and switching frequency<\/td><td>50 kHz<\/td><\/tr><tr><td>DC bus voltage<\/td><td>800 V<\/td><\/tr><tr><td>Desired grid voltage (L to N)<\/td><td>230 V RMS<\/td><\/tr><\/tbody><\/table><figcaption class=\"wp-element-caption\">Experiment conditions<br><\/figcaption><\/figure>\n<\/div>\n\n\n\n<div class=\"wp-block-column is-vertically-aligned-bottom is-layout-flow wp-block-column-is-layout-flow\"><\/div>\n<\/div>\n\n\n\n<figure class=\"wp-block-image size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"780\" height=\"535\" src=\"https:\/\/imperix.com\/doc\/wp-content\/uploads\/2024\/03\/TN168_Setup_picture_annotated.png\" alt=\"Grid-forming inverter experimental setup\" class=\"wp-image-25906\" srcset=\"https:\/\/imperix.com\/doc\/wp-content\/uploads\/2024\/03\/TN168_Setup_picture_annotated.png 780w, https:\/\/imperix.com\/doc\/wp-content\/uploads\/2024\/03\/TN168_Setup_picture_annotated-300x206.png 300w, https:\/\/imperix.com\/doc\/wp-content\/uploads\/2024\/03\/TN168_Setup_picture_annotated-768x527.png 768w\" sizes=\"auto, (max-width: 780px) 100vw, 780px\" \/><figcaption class=\"wp-element-caption\">Grid-forming inverter experimental setup<\/figcaption><\/figure>\n\n\n\n<p>The dynamics of the GFMI are shown in the following figure. The GFLI applies different current steps:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>from 20 to 30A at t=50ms<\/li>\n\n\n\n<li>from 30 to 40A at t=100ms<\/li>\n<\/ul>\n\n\n\n<p>The GFMI maintains the desired grid voltage of \\(230V_{RMS}\\) (blue curves) and alignment with the theta angle, regardless of the current steps imposed by the GFLI (red curves). This demonstrates the GFMI&#8217;s effectiveness in maintaining grid voltage amplitude and phase across different load conditions.<\/p>\n\n\n\n<figure class=\"wp-block-image size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"780\" height=\"694\" src=\"https:\/\/imperix.com\/doc\/wp-content\/uploads\/2024\/03\/Final_test.png\" alt=\"Results of grid voltages, current and dynamics of the grid forming inverter in the abc frame. \" class=\"wp-image-25990\" srcset=\"https:\/\/imperix.com\/doc\/wp-content\/uploads\/2024\/03\/Final_test.png 780w, https:\/\/imperix.com\/doc\/wp-content\/uploads\/2024\/03\/Final_test-300x267.png 300w, https:\/\/imperix.com\/doc\/wp-content\/uploads\/2024\/03\/Final_test-768x683.png 768w\" sizes=\"auto, (max-width: 780px) 100vw, 780px\" \/><figcaption class=\"wp-element-caption\">Grid voltages and currents in abc frame<\/figcaption><\/figure>\n\n\n\n<p>The following figure shows the GFMI&#8217;s perturbation rejection capability in the dq-frame. To challenge the control, a steep load step of -30A is applied at t=100ms.<\/p>\n\n\n\n<figure class=\"wp-block-image size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"780\" height=\"300\" src=\"https:\/\/imperix.com\/doc\/wp-content\/uploads\/2024\/03\/Test_dq-2.png\" alt=\"Grid current and voltage in dq-frame for a load step of 30A\" class=\"wp-image-26059\" srcset=\"https:\/\/imperix.com\/doc\/wp-content\/uploads\/2024\/03\/Test_dq-2.png 780w, https:\/\/imperix.com\/doc\/wp-content\/uploads\/2024\/03\/Test_dq-2-300x115.png 300w, https:\/\/imperix.com\/doc\/wp-content\/uploads\/2024\/03\/Test_dq-2-768x295.png 768w\" sizes=\"auto, (max-width: 780px) 100vw, 780px\" \/><figcaption class=\"wp-element-caption\">Grid current and voltage in dq-frame for a load step of 30A<\/figcaption><\/figure>\n\n\n\n<p>The change on the d-axis does not affect the q component of the grid voltage, which is correctly decoupled from the d component. In this example, the perturbation rejection on the d-axis is such that the resulting perturbation for a current step of 30A is 20%, which corresponds to 391V. The voltage recovers from the load step in approximately 1ms. The requirements of the control will define if the resulting performance in terms of perturbance rejection on the d-axis is acceptable or not. The tuning of the voltage and control loops can be adapted accordingly.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"h-to-go-further\"><span class=\"ez-toc-section\" id=\"To-go-further%E2%80%A6\"><\/span>To go further\u2026<span class=\"ez-toc-section-end\"><\/span><\/h2>\n\n\n\n<p>The TPI 8032 is particularly&nbsp;suited for AC microgrid applications. The integrated AC precharge circuit simplifies the grid connection procedure.&nbsp;<a href=\"https:\/\/imperix.com\/doc\/implementation\/active-front-end\" target=\"_blank\" rel=\"noreferrer noopener\">TN166<\/a>&nbsp;is a basic example showing the principle of grid-connected operations and the precautions of the precharge circuit.&nbsp;It is recommended to read this page first before running the TPI with the grid.<\/p>\n\n\n\n<p>Furthermore, the <a href=\"https:\/\/imperix.com\/products\/power\/programmable-inverter\/\" target=\"_blank\" rel=\"noreferrer noopener\">TPI 8032<\/a> can be easily programmed to fit any purpose. More examples of TPI in microgrid applications are available in the knowledge base, such as:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li><a href=\"https:\/\/imperix.com\/doc\/implementation\/active-front-end\" target=\"_blank\" rel=\"noreferrer noopener\">TN166: Active front end<\/a><\/li>\n\n\n\n<li><a href=\"https:\/\/imperix.com\/doc\/implementation\/grid-following-inverter\" target=\"_blank\" rel=\"noreferrer noopener\">TN167: Grid-Following Inverter (GFLI)<\/a><\/li>\n\n\n\n<li><a href=\"https:\/\/imperix.com\/doc\/implementation\/proportional-droop-control\" target=\"_blank\" rel=\"noreferrer noopener\">TN169: Proportional droop control<\/a><\/li>\n\n\n\n<li><a href=\"https:\/\/imperix.com\/doc\/implementation\/virtual-synchronous-generator-for-droop-control\" target=\"_blank\" rel=\"noreferrer noopener\">TN170: Virtual synchronous generator for droop control <\/a><\/li>\n<\/ul>\n\n\n\n<p>Moreover, the control strategy proposed in this article for the grid-forming inverter can also be used in the context of modern flexible smart grid applications such as solid-state transformers (see <a href=\"https:\/\/imperix.com\/doc\/example\/solid-state-transformer\">AN015<\/a>).<\/p>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"h-academic-references\"><span class=\"ez-toc-section\" id=\"Academic-references\"><\/span>Academic references<span class=\"ez-toc-section-end\"><\/span><\/h2>\n\n\n\n<p><a href=\"https:\/\/ieeexplore.ieee.org\/document\/6200347\" target=\"_blank\" rel=\"noreferrer noopener\">[1]<\/a> J. Rocabert, A. Luna, F. Blaabjerg and P. Rodr\u00edguez, &#8220;Control of Power Converters in AC Microgrids,&#8221; in <em>IEEE Trans. on Power Electronics<\/em>, Nov. 2012.<\/p>\n\n\n\n<p><a href=\"https:\/\/ieeexplore.ieee.org\/abstract\/document\/9513281\" target=\"_blank\" rel=\"noreferrer noopener\">[2]<\/a>  D. B. Rathnayake et al., &#8220;Grid Forming Inverter Modeling, Control, and Applications,&#8221; in <em>IEEE Access<\/em>, Aug. 2021. <\/p>\n\n\n\n<p><a href=\"https:\/\/ieeexplore.ieee.org\/document\/9627884\" target=\"_blank\" rel=\"noreferrer noopener\">[3]<\/a> H. Zhang, W. Xiang, W. Lin and J. Wen, &#8220;Grid Forming Converters in Renewable Energy Sources Dominated Power Grid: Control Strategy, Stability, Application, and Challenges,&#8221; in <em>Journal of Modern Power Systems and Clean Energy<\/em>, Nov. 2021.<\/p>\n\n\n\n<p><a href=\"https:\/\/aiecp.files.wordpress.com\/2012\/07\/1-0-1-k-j-astrom-pid-controllers-theory-design-and-tuning-2ed.pdf\" target=\"_blank\" rel=\"noreferrer noopener\">[4]<\/a> K.J. \u00c5str\u00f6m and T. H\u00e4gglund,&nbsp;<em>&#8220;PID Controllers: Theory, Design, and Tuning<\/em>,&#8221; ISA, North Carolina, 1995.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>This technical note showcases an implementation example featuring the programmable inverter TPI 8032, operated as a Grid-Forming Inverter (GFMI). It provides a concise overview of&#8230;<\/p>\n","protected":false},"author":15,"featured_media":25596,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"_acf_changed":false,"_kad_post_transparent":"","_kad_post_title":"","_kad_post_layout":"","_kad_post_sidebar_id":"","_kad_post_content_style":"","_kad_post_vertical_padding":"","_kad_post_feature":"","_kad_post_feature_position":"","_kad_post_header":false,"_kad_post_footer":false,"_kad_post_classname":"","footnotes":""},"categories":[4],"tags":[],"software-environments":[103,104],"provided-results":[108],"related-products":[50,110],"guidedreadings":[121],"tutorials":[127],"user-manuals":[143],"coauthors":[81],"class_list":["post-22320","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-implementation","software-environments-matlab","software-environments-plecs","provided-results-experimental","related-products-acg-sdk","related-products-tpi","guidedreadings-solid-state-transformer-sst-for-mc-lv-smart-grid","tutorials-parallel-operation-of-grid-forming-inverters","user-manuals-tpi"],"acf":[],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v27.3 - https:\/\/yoast.com\/product\/yoast-seo-wordpress\/ -->\n<title>Grid-Forming Inverter (GFMI) - imperix Technical notes Technical notes<\/title>\n<meta name=\"description\" content=\"An overview of a grid-forming inverter, as well as a cascaded control of a GFMI using PI controllers with tuning procedure is addressed here.\" \/>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/imperix.com\/doc\/implementation\/grid-forming-inverter\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Grid-Forming Inverter (GFMI) - imperix Technical notes Technical notes\" \/>\n<meta property=\"og:description\" content=\"An overview of a grid-forming inverter, as well as a cascaded control of a GFMI using PI controllers with tuning procedure is addressed here.\" \/>\n<meta property=\"og:url\" content=\"https:\/\/imperix.com\/doc\/implementation\/grid-forming-inverter\" \/>\n<meta property=\"og:site_name\" content=\"imperix\" \/>\n<meta property=\"article:published_time\" content=\"2024-01-30T12:18:50+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2025-10-15T14:13:28+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/imperix.com\/doc\/wp-content\/uploads\/2024\/01\/3_2_ratio_TN168.png\" \/>\n\t<meta property=\"og:image:width\" content=\"450\" \/>\n\t<meta property=\"og:image:height\" content=\"300\" \/>\n\t<meta property=\"og:image:type\" content=\"image\/png\" \/>\n<meta name=\"author\" content=\"Daniel Blardone\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:label1\" content=\"Written by\" \/>\n\t<meta name=\"twitter:data1\" content=\"Daniel Blardone\" \/>\n\t<meta name=\"twitter:label2\" content=\"Est. reading time\" \/>\n\t<meta name=\"twitter:data2\" content=\"11 minutes\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\\\/\\\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\\\/\\\/imperix.com\\\/doc\\\/implementation\\\/grid-forming-inverter#article\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/imperix.com\\\/doc\\\/implementation\\\/grid-forming-inverter\"},\"author\":{\"name\":\"Daniel Blardone\",\"@id\":\"https:\\\/\\\/imperix.com\\\/doc\\\/#\\\/schema\\\/person\\\/d55a94f8204e165c4a29ae2431b59547\"},\"headline\":\"Grid-Forming Inverter (GFMI)\",\"datePublished\":\"2024-01-30T12:18:50+00:00\",\"dateModified\":\"2025-10-15T14:13:28+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\\\/\\\/imperix.com\\\/doc\\\/implementation\\\/grid-forming-inverter\"},\"wordCount\":1985,\"commentCount\":0,\"publisher\":{\"@id\":\"https:\\\/\\\/imperix.com\\\/doc\\\/#organization\"},\"image\":{\"@id\":\"https:\\\/\\\/imperix.com\\\/doc\\\/implementation\\\/grid-forming-inverter#primaryimage\"},\"thumbnailUrl\":\"https:\\\/\\\/imperix.com\\\/doc\\\/wp-content\\\/uploads\\\/2024\\\/01\\\/3_2_ratio_TN168.png\",\"articleSection\":[\"Technical notes\"],\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"CommentAction\",\"name\":\"Comment\",\"target\":[\"https:\\\/\\\/imperix.com\\\/doc\\\/implementation\\\/grid-forming-inverter#respond\"]}]},{\"@type\":\"WebPage\",\"@id\":\"https:\\\/\\\/imperix.com\\\/doc\\\/implementation\\\/grid-forming-inverter\",\"url\":\"https:\\\/\\\/imperix.com\\\/doc\\\/implementation\\\/grid-forming-inverter\",\"name\":\"Grid-Forming Inverter (GFMI) - imperix Technical notes Technical notes\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/imperix.com\\\/doc\\\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\\\/\\\/imperix.com\\\/doc\\\/implementation\\\/grid-forming-inverter#primaryimage\"},\"image\":{\"@id\":\"https:\\\/\\\/imperix.com\\\/doc\\\/implementation\\\/grid-forming-inverter#primaryimage\"},\"thumbnailUrl\":\"https:\\\/\\\/imperix.com\\\/doc\\\/wp-content\\\/uploads\\\/2024\\\/01\\\/3_2_ratio_TN168.png\",\"datePublished\":\"2024-01-30T12:18:50+00:00\",\"dateModified\":\"2025-10-15T14:13:28+00:00\",\"description\":\"An overview of a grid-forming inverter, as well as a cascaded control of a GFMI using PI controllers with tuning procedure is addressed here.\",\"breadcrumb\":{\"@id\":\"https:\\\/\\\/imperix.com\\\/doc\\\/implementation\\\/grid-forming-inverter#breadcrumb\"},\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\\\/\\\/imperix.com\\\/doc\\\/implementation\\\/grid-forming-inverter\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\\\/\\\/imperix.com\\\/doc\\\/implementation\\\/grid-forming-inverter#primaryimage\",\"url\":\"https:\\\/\\\/imperix.com\\\/doc\\\/wp-content\\\/uploads\\\/2024\\\/01\\\/3_2_ratio_TN168.png\",\"contentUrl\":\"https:\\\/\\\/imperix.com\\\/doc\\\/wp-content\\\/uploads\\\/2024\\\/01\\\/3_2_ratio_TN168.png\",\"width\":450,\"height\":300},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\\\/\\\/imperix.com\\\/doc\\\/implementation\\\/grid-forming-inverter#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Knowledge base\",\"item\":\"https:\\\/\\\/imperix.com\\\/doc\\\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Technical notes\",\"item\":\"https:\\\/\\\/imperix.com\\\/doc\\\/category\\\/implementation\"},{\"@type\":\"ListItem\",\"position\":3,\"name\":\"Grid-Forming Inverter (GFMI)\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\\\/\\\/imperix.com\\\/doc\\\/#website\",\"url\":\"https:\\\/\\\/imperix.com\\\/doc\\\/\",\"name\":\"imperix\",\"description\":\"power electronics\",\"publisher\":{\"@id\":\"https:\\\/\\\/imperix.com\\\/doc\\\/#organization\"},\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\\\/\\\/imperix.com\\\/doc\\\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"en-US\"},{\"@type\":\"Organization\",\"@id\":\"https:\\\/\\\/imperix.com\\\/doc\\\/#organization\",\"name\":\"imperix\",\"url\":\"https:\\\/\\\/imperix.com\\\/doc\\\/\",\"logo\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\\\/\\\/imperix.com\\\/doc\\\/#\\\/schema\\\/logo\\\/image\\\/\",\"url\":\"https:\\\/\\\/imperix.com\\\/doc\\\/wp-content\\\/uploads\\\/2021\\\/03\\\/imperix_logo.png\",\"contentUrl\":\"https:\\\/\\\/imperix.com\\\/doc\\\/wp-content\\\/uploads\\\/2021\\\/03\\\/imperix_logo.png\",\"width\":350,\"height\":120,\"caption\":\"imperix\"},\"image\":{\"@id\":\"https:\\\/\\\/imperix.com\\\/doc\\\/#\\\/schema\\\/logo\\\/image\\\/\"}},{\"@type\":\"Person\",\"@id\":\"https:\\\/\\\/imperix.com\\\/doc\\\/#\\\/schema\\\/person\\\/d55a94f8204e165c4a29ae2431b59547\",\"name\":\"Daniel Blardone\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\\\/\\\/secure.gravatar.com\\\/avatar\\\/5ac0dc566776678a96a004b7e872e641f15d4c15757d3d2d834057d79a3a0db8?s=96&d=mm&r=g6da555c6d30e7964882eee73b96b4c5d\",\"url\":\"https:\\\/\\\/secure.gravatar.com\\\/avatar\\\/5ac0dc566776678a96a004b7e872e641f15d4c15757d3d2d834057d79a3a0db8?s=96&d=mm&r=g\",\"contentUrl\":\"https:\\\/\\\/secure.gravatar.com\\\/avatar\\\/5ac0dc566776678a96a004b7e872e641f15d4c15757d3d2d834057d79a3a0db8?s=96&d=mm&r=g\",\"caption\":\"Daniel Blardone\"},\"description\":\"Daniel is a development engineer at imperix. He is regularly involved in writing articles for the knowledge base, especially on control-related topics.\",\"sameAs\":[\"https:\\\/\\\/www.linkedin.com\\\/in\\\/daniel-blardone\",\"nico@chrx.ch\"],\"url\":\"https:\\\/\\\/imperix.com\\\/doc\\\/author\\\/blardone\"}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"Grid-Forming Inverter (GFMI) - imperix Technical notes Technical notes","description":"An overview of a grid-forming inverter, as well as a cascaded control of a GFMI using PI controllers with tuning procedure is addressed here.","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/imperix.com\/doc\/implementation\/grid-forming-inverter","og_locale":"en_US","og_type":"article","og_title":"Grid-Forming Inverter (GFMI) - imperix Technical notes Technical notes","og_description":"An overview of a grid-forming inverter, as well as a cascaded control of a GFMI using PI controllers with tuning procedure is addressed here.","og_url":"https:\/\/imperix.com\/doc\/implementation\/grid-forming-inverter","og_site_name":"imperix","article_published_time":"2024-01-30T12:18:50+00:00","article_modified_time":"2025-10-15T14:13:28+00:00","og_image":[{"width":450,"height":300,"url":"https:\/\/imperix.com\/doc\/wp-content\/uploads\/2024\/01\/3_2_ratio_TN168.png","type":"image\/png"}],"author":"Daniel Blardone","twitter_card":"summary_large_image","twitter_misc":{"Written by":"Daniel Blardone","Est. reading time":"11 minutes"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/imperix.com\/doc\/implementation\/grid-forming-inverter#article","isPartOf":{"@id":"https:\/\/imperix.com\/doc\/implementation\/grid-forming-inverter"},"author":{"name":"Daniel Blardone","@id":"https:\/\/imperix.com\/doc\/#\/schema\/person\/d55a94f8204e165c4a29ae2431b59547"},"headline":"Grid-Forming Inverter (GFMI)","datePublished":"2024-01-30T12:18:50+00:00","dateModified":"2025-10-15T14:13:28+00:00","mainEntityOfPage":{"@id":"https:\/\/imperix.com\/doc\/implementation\/grid-forming-inverter"},"wordCount":1985,"commentCount":0,"publisher":{"@id":"https:\/\/imperix.com\/doc\/#organization"},"image":{"@id":"https:\/\/imperix.com\/doc\/implementation\/grid-forming-inverter#primaryimage"},"thumbnailUrl":"https:\/\/imperix.com\/doc\/wp-content\/uploads\/2024\/01\/3_2_ratio_TN168.png","articleSection":["Technical notes"],"inLanguage":"en-US","potentialAction":[{"@type":"CommentAction","name":"Comment","target":["https:\/\/imperix.com\/doc\/implementation\/grid-forming-inverter#respond"]}]},{"@type":"WebPage","@id":"https:\/\/imperix.com\/doc\/implementation\/grid-forming-inverter","url":"https:\/\/imperix.com\/doc\/implementation\/grid-forming-inverter","name":"Grid-Forming Inverter (GFMI) - imperix Technical notes Technical notes","isPartOf":{"@id":"https:\/\/imperix.com\/doc\/#website"},"primaryImageOfPage":{"@id":"https:\/\/imperix.com\/doc\/implementation\/grid-forming-inverter#primaryimage"},"image":{"@id":"https:\/\/imperix.com\/doc\/implementation\/grid-forming-inverter#primaryimage"},"thumbnailUrl":"https:\/\/imperix.com\/doc\/wp-content\/uploads\/2024\/01\/3_2_ratio_TN168.png","datePublished":"2024-01-30T12:18:50+00:00","dateModified":"2025-10-15T14:13:28+00:00","description":"An overview of a grid-forming inverter, as well as a cascaded control of a GFMI using PI controllers with tuning procedure is addressed here.","breadcrumb":{"@id":"https:\/\/imperix.com\/doc\/implementation\/grid-forming-inverter#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/imperix.com\/doc\/implementation\/grid-forming-inverter"]}]},{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/imperix.com\/doc\/implementation\/grid-forming-inverter#primaryimage","url":"https:\/\/imperix.com\/doc\/wp-content\/uploads\/2024\/01\/3_2_ratio_TN168.png","contentUrl":"https:\/\/imperix.com\/doc\/wp-content\/uploads\/2024\/01\/3_2_ratio_TN168.png","width":450,"height":300},{"@type":"BreadcrumbList","@id":"https:\/\/imperix.com\/doc\/implementation\/grid-forming-inverter#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Knowledge base","item":"https:\/\/imperix.com\/doc\/"},{"@type":"ListItem","position":2,"name":"Technical notes","item":"https:\/\/imperix.com\/doc\/category\/implementation"},{"@type":"ListItem","position":3,"name":"Grid-Forming Inverter (GFMI)"}]},{"@type":"WebSite","@id":"https:\/\/imperix.com\/doc\/#website","url":"https:\/\/imperix.com\/doc\/","name":"imperix","description":"power electronics","publisher":{"@id":"https:\/\/imperix.com\/doc\/#organization"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/imperix.com\/doc\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"en-US"},{"@type":"Organization","@id":"https:\/\/imperix.com\/doc\/#organization","name":"imperix","url":"https:\/\/imperix.com\/doc\/","logo":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/imperix.com\/doc\/#\/schema\/logo\/image\/","url":"https:\/\/imperix.com\/doc\/wp-content\/uploads\/2021\/03\/imperix_logo.png","contentUrl":"https:\/\/imperix.com\/doc\/wp-content\/uploads\/2021\/03\/imperix_logo.png","width":350,"height":120,"caption":"imperix"},"image":{"@id":"https:\/\/imperix.com\/doc\/#\/schema\/logo\/image\/"}},{"@type":"Person","@id":"https:\/\/imperix.com\/doc\/#\/schema\/person\/d55a94f8204e165c4a29ae2431b59547","name":"Daniel Blardone","image":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/secure.gravatar.com\/avatar\/5ac0dc566776678a96a004b7e872e641f15d4c15757d3d2d834057d79a3a0db8?s=96&d=mm&r=g6da555c6d30e7964882eee73b96b4c5d","url":"https:\/\/secure.gravatar.com\/avatar\/5ac0dc566776678a96a004b7e872e641f15d4c15757d3d2d834057d79a3a0db8?s=96&d=mm&r=g","contentUrl":"https:\/\/secure.gravatar.com\/avatar\/5ac0dc566776678a96a004b7e872e641f15d4c15757d3d2d834057d79a3a0db8?s=96&d=mm&r=g","caption":"Daniel Blardone"},"description":"Daniel is a development engineer at imperix. He is regularly involved in writing articles for the knowledge base, especially on control-related topics.","sameAs":["https:\/\/www.linkedin.com\/in\/daniel-blardone","nico@chrx.ch"],"url":"https:\/\/imperix.com\/doc\/author\/blardone"}]}},"_links":{"self":[{"href":"https:\/\/imperix.com\/doc\/wp-json\/wp\/v2\/posts\/22320","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/imperix.com\/doc\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/imperix.com\/doc\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/imperix.com\/doc\/wp-json\/wp\/v2\/users\/15"}],"replies":[{"embeddable":true,"href":"https:\/\/imperix.com\/doc\/wp-json\/wp\/v2\/comments?post=22320"}],"version-history":[{"count":156,"href":"https:\/\/imperix.com\/doc\/wp-json\/wp\/v2\/posts\/22320\/revisions"}],"predecessor-version":[{"id":35815,"href":"https:\/\/imperix.com\/doc\/wp-json\/wp\/v2\/posts\/22320\/revisions\/35815"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/imperix.com\/doc\/wp-json\/wp\/v2\/media\/25596"}],"wp:attachment":[{"href":"https:\/\/imperix.com\/doc\/wp-json\/wp\/v2\/media?parent=22320"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/imperix.com\/doc\/wp-json\/wp\/v2\/categories?post=22320"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/imperix.com\/doc\/wp-json\/wp\/v2\/tags?post=22320"},{"taxonomy":"software-environments","embeddable":true,"href":"https:\/\/imperix.com\/doc\/wp-json\/wp\/v2\/software-environments?post=22320"},{"taxonomy":"provided-results","embeddable":true,"href":"https:\/\/imperix.com\/doc\/wp-json\/wp\/v2\/provided-results?post=22320"},{"taxonomy":"related-products","embeddable":true,"href":"https:\/\/imperix.com\/doc\/wp-json\/wp\/v2\/related-products?post=22320"},{"taxonomy":"guidedreadings","embeddable":true,"href":"https:\/\/imperix.com\/doc\/wp-json\/wp\/v2\/guidedreadings?post=22320"},{"taxonomy":"tutorials","embeddable":true,"href":"https:\/\/imperix.com\/doc\/wp-json\/wp\/v2\/tutorials?post=22320"},{"taxonomy":"user-manuals","embeddable":true,"href":"https:\/\/imperix.com\/doc\/wp-json\/wp\/v2\/user-manuals?post=22320"},{"taxonomy":"author","embeddable":true,"href":"https:\/\/imperix.com\/doc\/wp-json\/wp\/v2\/coauthors?post=22320"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}