{"id":1073,"date":"2021-03-30T06:37:48","date_gmt":"2021-03-30T06:37:48","guid":{"rendered":"https:\/\/imperix.com\/doc\/?p=1073"},"modified":"2026-01-19T14:45:51","modified_gmt":"2026-01-19T14:45:51","slug":"three-phase-voltage-source-inverter","status":"publish","type":"post","link":"https:\/\/imperix.com\/doc\/implementation\/three-phase-voltage-source-inverter","title":{"rendered":"Three-phase Voltage Source Inverter (VSI)"},"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\/three-phase-voltage-source-inverter\/#Downloads\" >Downloads<\/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\/three-phase-voltage-source-inverter\/#Working-principle-of-a-voltage-source-inverter\" >Working principle of a voltage source inverter<\/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\/three-phase-voltage-source-inverter\/#Modulation-signals-and-duty-cycles\" >Modulation signals and duty cycles<\/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\/three-phase-voltage-source-inverter\/#Phase-and-line-to-line-voltages\" >Phase and line-to-line voltages<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-5\" href=\"https:\/\/imperix.com\/doc\/implementation\/three-phase-voltage-source-inverter\/#Load-currents\" >Load currents<\/a><\/li><\/ul><\/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\/three-phase-voltage-source-inverter\/#Control-implementation-for-a-voltage-source-inverter\" >Control implementation for a voltage source inverter<\/a><ul class='ez-toc-list-level-3' ><li class='ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-7\" href=\"https:\/\/imperix.com\/doc\/implementation\/three-phase-voltage-source-inverter\/#Duty-cycle-generation\" >Duty cycle generation<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-8\" href=\"https:\/\/imperix.com\/doc\/implementation\/three-phase-voltage-source-inverter\/#Pulse-width-modulation-PWM\" >Pulse width modulation (PWM)<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-9\" href=\"https:\/\/imperix.com\/doc\/implementation\/three-phase-voltage-source-inverter\/#Analog-measurements\" >Analog measurements<\/a><\/li><\/ul><\/li><\/ul><\/nav><\/div>\n\n<p>This example introduces the working principles of a three-phase voltage source inverter and presents a simple technique to generate alternating currents in an open-loop manner, using the imperix <a href=\"https:\/\/imperix.ch\/software\/acg-sdk\">ACG SDK<\/a> on Simulink or PLECS.<\/p>\n\n\n\n<p>As such, this simple example can serve as an introduction to the imperix tools, but also as a reference model for performing the first set of tests on new equipment, or simply as a control code for grid-forming inverters or UPS inverters.<\/p>\n\n\n\n<div class=\"wp-block-image\"><figure class=\"aligncenter size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"547\" height=\"181\" src=\"https:\/\/cdn.imperix.com\/doc\/wp-content\/uploads\/2021\/03\/schematic_AN002.png\" alt=\"Three-phase voltage source inverter\" class=\"wp-image-10090\" srcset=\"https:\/\/imperix.com\/doc\/wp-content\/uploads\/2021\/03\/schematic_AN002.png 547w, https:\/\/imperix.com\/doc\/wp-content\/uploads\/2021\/03\/schematic_AN002-300x99.png 300w\" sizes=\"auto, (max-width: 547px) 100vw, 547px\" \/><figcaption>Topology overview of a three-phase voltage source inverter (VSI).<\/figcaption><\/figure><\/div>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"block-b38f361b-2b32-4f53-b447-269d190d186c\"><span class=\"ez-toc-section\" id=\"Downloads\"><\/span>Downloads<span class=\"ez-toc-section-end\"><\/span><\/h2>\n\n\n\n<p>The following files contain the implementation of this application in the MATLAB Simulink environment using the ACG SDK. As always, the same model can be used to simulate the behavior of the system in an offline simulation and generate code for real-time execution of the control algorithm on an imperix controller.<\/p>\n\n\n\n<div class=\"wp-block-file aligncenter\"><a href=\"https:\/\/imperix.com\/doc\/wp-content\/uploads\/2021\/03\/Three_Phase_Inverter_Simulink.zip\" class=\"wp-block-file__button\" download>Download <strong>Three_Phase_Inverter_Simulink<\/strong><\/a><\/div>\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<figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"547\" src=\"https:\/\/imperix.com\/doc\/wp-content\/uploads\/2021\/03\/image-215-1024x547.png\" alt=\"Three phase voltage source inverter Simulink control model\" class=\"wp-image-1106\" title=\"Application notes &gt; AN002: Three-phase voltage source inverter &gt; image2020-12-21_9-42-18.png\" srcset=\"https:\/\/imperix.com\/doc\/wp-content\/uploads\/2021\/03\/image-215-1024x547.png 1024w, https:\/\/imperix.com\/doc\/wp-content\/uploads\/2021\/03\/image-215-300x160.png 300w, https:\/\/imperix.com\/doc\/wp-content\/uploads\/2021\/03\/image-215-768x410.png 768w, https:\/\/imperix.com\/doc\/wp-content\/uploads\/2021\/03\/image-215.png 1389w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><figcaption>Control side of the VSI<\/figcaption><\/figure>\n<\/div>\n\n\n\n<div class=\"wp-block-column is-layout-flow wp-block-column-is-layout-flow\">\n<figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"547\" src=\"https:\/\/imperix.com\/doc\/wp-content\/uploads\/2021\/03\/image-216-1024x547.png\" alt=\"Three phase voltage source inverter Simulink plant model\" class=\"wp-image-1107\" title=\"Application notes &gt; AN002: Three-phase voltage source inverter &gt; image2020-12-21_9-42-58.png\" srcset=\"https:\/\/imperix.com\/doc\/wp-content\/uploads\/2021\/03\/image-216-1024x547.png 1024w, https:\/\/imperix.com\/doc\/wp-content\/uploads\/2021\/03\/image-216-300x160.png 300w, https:\/\/imperix.com\/doc\/wp-content\/uploads\/2021\/03\/image-216-768x410.png 768w, https:\/\/imperix.com\/doc\/wp-content\/uploads\/2021\/03\/image-216.png 1389w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><figcaption>Power side of the VSI<\/figcaption><\/figure>\n<\/div>\n<\/div>\n\n\n\n<h2 class=\"wp-block-heading\"><span class=\"ez-toc-section\" id=\"Working-principle-of-a-voltage-source-inverter\"><\/span>Working principle of a voltage source inverter<span class=\"ez-toc-section-end\"><\/span><\/h2>\n\n\n\n<p>This application considers a three-phase two-level voltage source inverter (VSI) connected to a passive RL load, as depicted above. The inverter produces three sinusoidal load currents with configurable amplitude.<\/p>\n\n\n\n<p>The variables highlighted in red are measured and sent to the controller for monitoring and protection purposes.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\"><span class=\"ez-toc-section\" id=\"Modulation-signals-and-duty-cycles\"><\/span>Modulation signals and duty cycles<span class=\"ez-toc-section-end\"><\/span><\/h3>\n\n\n\n<p>Three sinusoidal modulation signals \\(m_{abc}\\) are generated, with a frequency \\(f\\) and an amplitude \\(M\\). These modulation signals will produce fundamental phase voltages with an amplitude \\(V = M V_{dc}\/2\\), as developed later.<\/p>\n\n\n\n<p>$$\\left\\{\\begin{array}{l} m_a = M \\sin(2\\pi f t)\\\\ m_b = M \\sin\\left(2\\pi f t-2\\pi\/3\\right)\\\\ m_c = M \\sin\\left(2\\pi f t+2\\pi\/3\\right) \\end{array}\\right.$$<\/p>\n\n\n\n<p>As the <a href=\"https:\/\/imperix.com\/doc\/help\/software\/cb-pwm-carrier-based-pwm\">Carrier-Based PWM modulators<\/a> of the B-Box RCP controller use a PWM carrier varying between 0 and 1, the modulation signals have to be scaled to fit in the range [0, 1], as depicted below. The duty-cycles are computed as follows:<\/p>\n\n\n\n<p>$$d_i = \\cfrac{m_i}{2}+\\frac{1}{2} \\quad \\text{for } i=a,b,c$$<\/p>\n\n\n\n<figure class=\"wp-block-image size-large is-resized\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/imperix.com\/doc\/wp-content\/uploads\/2021\/03\/Modulation-and-dutycycle.png\" alt=\"Three phase modulation and duty cycle signals for a voltage source inverter\" class=\"wp-image-1111\" width=\"800\" height=\"300\" srcset=\"https:\/\/imperix.com\/doc\/wp-content\/uploads\/2021\/03\/Modulation-and-dutycycle.png 800w, https:\/\/imperix.com\/doc\/wp-content\/uploads\/2021\/03\/Modulation-and-dutycycle-300x113.png 300w, https:\/\/imperix.com\/doc\/wp-content\/uploads\/2021\/03\/Modulation-and-dutycycle-768x288.png 768w\" sizes=\"auto, (max-width: 800px) 100vw, 800px\" \/><\/figure>\n\n\n\n<div class=\"wp-block-simple-alerts-for-gutenberg-alert-boxes sab-alert sab-alert-info\" role=\"alert\">This is absolutely equivalent to comparing directly the modulated signals \\(m_i\\) to a carrier varying between -1 and 1.<\/div>\n\n\n\n<h3 class=\"wp-block-heading\"><span class=\"ez-toc-section\" id=\"Phase-and-line-to-line-voltages\"><\/span>Phase and line-to-line voltages<span class=\"ez-toc-section-end\"><\/span><\/h3>\n\n\n\n<p>Applying the duty-cycles&nbsp;\\(d_i\\) to each phase leg will produce the following fundamental leg voltages:<\/p>\n\n\n\n<p>$$\\left\\{\\begin{array}{l} \\langle v_{leg,a} \\rangle = V_{dc}\\cdot d_a=\\cfrac{V_{dc}}{2}M \\sin(2\\pi f t)+\\cfrac{V_{dc}}{2}\\\\ \\langle v_{leg,b} \\rangle = V_{dc}\\cdot d_b=\\cfrac{V_{dc}}{2}M \\sin(2\\pi f t-2\\pi\/3)+\\cfrac{V_{dc}}{2}\\\\ \\langle v_{leg,c} \\rangle = V_{dc}\\cdot d_c=\\cfrac{V_{dc}}{2}M \\sin(2\\pi f t+2\\pi\/3)+\\cfrac{V_{dc}}{2} \\end{array}\\right.$$<\/p>\n\n\n\n<div class=\"wp-block-simple-alerts-for-gutenberg-alert-boxes sab-alert sab-alert-info\" role=\"alert\">As we consider only the fundamental component of the switched voltages, the shape of the carrier has no impact here.<\/div>\n\n\n\n<p>The fundamental three-phase line-to-line voltages are hence:<\/p>\n\n\n\n<p>$$\\left\\{\\begin{array}{l} \\langle v_{ab}\\rangle= \\langle v_{leg,a}\\rangle &#8211; \\langle v_{leg,b}\\rangle = \\cfrac{\\sqrt{3}V_{dc}}{2}M\\cos\\left(2\\pi f t-\\pi\/3\\right)\\\\ \\langle v_{bc}\\rangle = \\langle v_{leg,b}\\rangle &#8211; \\langle v_{leg,c}\\rangle = \\cfrac{\\sqrt{3}V_{dc}}{2}M\\cos\\left(2\\pi f t-\\pi\\right)\\\\ \\langle v_{ca}\\rangle = \\langle v_{leg,c}\\rangle &#8211; \\langle v_{leg,a}\\rangle = \\cfrac{\\sqrt{3}V_{dc}}{2}M\\cos\\left(2\\pi f t+\\pi\/3\\right) \\end{array}\\right.$$<\/p>\n\n\n\n<p>From the last result, we can retrieve the expression of the fundamental phase voltages (i.e. line-to-neutral):<\/p>\n\n\n\n<p>$$\\left\\{\\begin{array}{l} \\langle v_a\\rangle = \\cfrac{V_{dc}}{2}M\\sin\\left(2\\pi f t\\right)\\\\ \\langle v_b\\rangle = \\cfrac{V_{dc}}{2}M\\sin\\left(2\\pi f t-2\\pi\/3\\right)\\\\ \\langle v_c\\rangle = \\cfrac{V_{dc}}{2}M\\sin\\left(2\\pi f t+2\\pi\/3\\right) \\end{array}\\right.$$<\/p>\n\n\n\n<p>This confirms that the generated \\(m_i\\) correspond to the phase voltages, normalized by&nbsp;\\(V_{dc}\/2\\).<\/p>\n\n\n\n<p>This can be illustrated by comparing the modulated signal \\(m_a\\) with the fundamental \\(\\langle v_a \\rangle\\), superimposed on the switched voltage \\(v_a\\).<\/p>\n\n\n\n<figure class=\"wp-block-image size-large is-resized\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/imperix.com\/doc\/wp-content\/uploads\/2021\/03\/Modulation-and-phase-voltages.png\" alt=\"Inverter modulation signal and phase voltage\" class=\"wp-image-1123\" width=\"800\" height=\"300\" srcset=\"https:\/\/imperix.com\/doc\/wp-content\/uploads\/2021\/03\/Modulation-and-phase-voltages.png 800w, https:\/\/imperix.com\/doc\/wp-content\/uploads\/2021\/03\/Modulation-and-phase-voltages-300x113.png 300w, https:\/\/imperix.com\/doc\/wp-content\/uploads\/2021\/03\/Modulation-and-phase-voltages-768x288.png 768w\" sizes=\"auto, (max-width: 800px) 100vw, 800px\" \/><\/figure>\n\n\n\n<p>As a side note, the switched voltage in the right figure takes the discrete values \\(2V_{dc}\/3\\), \\(V_{dc}\/3\\), \\(0\\), \\(-V_{dc}\/3\\), and \\(-2V_{dc}\/3\\), which are the 5 different phase voltage values that the 8 switching states of an inverter can produce.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\"><span class=\"ez-toc-section\" id=\"Load-currents\"><\/span>Load currents<span class=\"ez-toc-section-end\"><\/span><\/h3>\n\n\n\n<p>The phase (i.e. load) currents can be derived from the phase voltage equations. In particular, their RMS values can be controlled with the modulation index \\(M\\), since:<\/p>\n\n\n\n<p>$$I_{a,RMS} = I_{b,RMS} = I_{c,RMS} = \\cfrac{\\sqrt{2}}{4}\\cfrac{MV_{dc}}{\\sqrt{R^2+(2\\pi f L)^2}}$$<\/p>\n\n\n\n<div class=\"wp-block-simple-alerts-for-gutenberg-alert-boxes sab-alert sab-alert-info\" role=\"alert\">This equation can be used to select values of \\(V_{dc}\\) and\u00a0\\(M\\) that are appropriate to the load capabilities.<\/div>\n\n\n\n<h2 class=\"wp-block-heading\"><span class=\"ez-toc-section\" id=\"Control-implementation-for-a-voltage-source-inverter\"><\/span>Control implementation for a voltage source inverter<span class=\"ez-toc-section-end\"><\/span><\/h2>\n\n\n\n<h3 class=\"wp-block-heading\"><span class=\"ez-toc-section\" id=\"Duty-cycle-generation\"><\/span>Duty cycle generation<span class=\"ez-toc-section-end\"><\/span><\/h3>\n\n\n\n<p>The duty cycles are generated in an open-loop manner with the expressions of \\(m_i\\) and&nbsp;\\(d_i\\) presented above. A sinewave generator is implemented using an &#8220;angle&#8221; block from imperix library, which outputs directly the argument \\(2\\pi f t\\). The Simulink blocks used to compute the duty cycles are shown below.<\/p>\n\n\n\n<div class=\"wp-block-image\"><figure class=\"aligncenter size-large is-resized\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/imperix.com\/doc\/wp-content\/uploads\/2021\/03\/m_and_d_Simulink.png\" alt=\"Duty cycle generation for a three phase VSI\" class=\"wp-image-1125\" width=\"526\" height=\"174\" srcset=\"https:\/\/imperix.com\/doc\/wp-content\/uploads\/2021\/03\/m_and_d_Simulink.png 574w, https:\/\/imperix.com\/doc\/wp-content\/uploads\/2021\/03\/m_and_d_Simulink-300x99.png 300w\" sizes=\"auto, (max-width: 526px) 100vw, 526px\" \/><figcaption>Open-loop generation of the duty-cycles for a voltage source inverter<\/figcaption><\/figure><\/div>\n\n\n\n<h3 class=\"wp-block-heading\"><span class=\"ez-toc-section\" id=\"Pulse-width-modulation-PWM\"><\/span>Pulse width modulation (PWM)<span class=\"ez-toc-section-end\"><\/span><\/h3>\n\n\n\n<p>The present application uses <a href=\"https:\/\/imperix.com\/doc\/help\/software\/cb-pwm-carrier-based-pwm\">Carrier-based PWM<\/a> (CB-PWM) modulators to generate the gating signals of the six switches from the computed duty cycles \\(d_i\\) and uses a triangular carrier. Each CB-PWM block generates the high- and low-side gating signals for a specific phase leg.<\/p>\n\n\n\n<p>A dead time of 1 \u00b5s is added between the &#8216;on&#8217; states of each pair of complementary signals to avoid destructive shoot-through during the operation of the real inverter. In simulation, the dead time is also modeled and the slight waveform distortion that it brings can be observed in simulation results.<\/p>\n\n\n\n<p>The behavior of these blocks in simulation and code generation modes is further explained in <a href=\"https:\/\/imperix.com\/doc\/help\/software\/cb-pwm-carrier-based-pwm\">CB-PWM &#8211; Carrier-based PWM<\/a>.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\"><span class=\"ez-toc-section\" id=\"Analog-measurements\"><\/span>Analog measurements<span class=\"ez-toc-section-end\"><\/span><\/h3>\n\n\n\n<p>In this application, the phase currents and the DC bus voltage are measured and sent back to the controller&#8217;s analog inputs. As no closed-loop control is implemented, these measured quantities are used for monitoring purposes only. In most applications, however, these quantities are required by the control algorithm to compute the duty cycles in a closed-loop manner.<\/p>\n\n\n\n<p>The analog measurements are retrieved by the control code with ADC blocks. The behavior of these blocks in simulation and code generation modes is detailed in&nbsp;<a href=\"https:\/\/imperix.com\/doc\/help\/software\/adc-analog-data-acquisition\">ADC &#8211; Analog data acquisition<\/a>.<\/p>\n\n\n\n<p>The sampling phase can be configured in the <a href=\"https:\/\/imperix.com\/doc\/software\/config-control-task-configuration\">CONFIG block<\/a>. This application uses a phase of 0.5 and triangular PWM carriers, to ensure that the sampling is always done in the middle of the current ripples. This configuration gives naturally access to an averaged value of each measured currents, without the addition of any filter and its inevitable delay.<\/p>\n\n\n\n<p>The figure below shows a comparison between the actual phase current (computed by the simulation plant model) and its sampled value to illustrate that the sampled current corresponds to the average of the current ripples.<\/p>\n\n\n\n<figure class=\"wp-block-image size-large is-resized\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/imperix.com\/doc\/wp-content\/uploads\/2021\/03\/current_real_and_sampled_v2.png\" alt=\"Three phase inverter currents\" class=\"wp-image-1127\" width=\"800\" height=\"300\" srcset=\"https:\/\/imperix.com\/doc\/wp-content\/uploads\/2021\/03\/current_real_and_sampled_v2.png 800w, https:\/\/imperix.com\/doc\/wp-content\/uploads\/2021\/03\/current_real_and_sampled_v2-300x113.png 300w, https:\/\/imperix.com\/doc\/wp-content\/uploads\/2021\/03\/current_real_and_sampled_v2-768x288.png 768w\" sizes=\"auto, (max-width: 800px) 100vw, 800px\" \/><\/figure>\n\n\n\n<p>Further details on the offline simulation capabilities of ACG SDK are presented in the following pages:<\/p>\n\n\n\n<ul class=\"wp-block-list\"><li><a href=\"https:\/\/imperix.com\/doc\/help\/simulation-essentials-simulink\">Simulation essentials with Simulink (PN135)<\/a><\/li><li><a href=\"https:\/\/imperix.com\/doc\/help\/simulation-essentials-plecs\">Simulation essentials with PLECS (PN137)<\/a><\/li><\/ul>\n","protected":false},"excerpt":{"rendered":"<p>This example generates three phase alternating currents from a voltage source inverter in an open loop manner. It can be used in a grid-forming application.<\/p>\n","protected":false},"author":2,"featured_media":1131,"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],"provided-results":[108,107],"related-products":[50,32,92,166,112,111,110],"guidedreadings":[116],"tutorials":[122,152,132,125],"user-manuals":[],"coauthors":[63],"class_list":["post-1073","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-implementation","software-environments-matlab","provided-results-experimental","provided-results-simulation","related-products-acg-sdk","related-products-b-box-rcp","related-products-b-box-micro","related-products-b-box-rcp-3-0","related-products-peb","related-products-pm","related-products-tpi","guidedreadings-three-phase-pv-inverter-for-grid-tied-applications","tutorials-active-front-end-afe","tutorials-active-power-filter","tutorials-back-to-back-three-phase-converter-with-grid-tied-lcl-filter","tutorials-grid-following-inverter-gfli"],"acf":[],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v27.3 - https:\/\/yoast.com\/product\/yoast-seo-wordpress\/ -->\n<title>Voltage source inverter - control software example - imperix<\/title>\n<meta name=\"description\" content=\"This example generates AC currents from a three-phase voltage source inverter. It can be used to implement a grid-forming inverter.\" \/>\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\/three-phase-voltage-source-inverter\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Voltage source inverter - control software example - imperix\" \/>\n<meta property=\"og:description\" content=\"This example generates AC currents from a three-phase voltage source inverter. It can be used to implement a grid-forming inverter.\" \/>\n<meta property=\"og:url\" content=\"https:\/\/imperix.com\/doc\/implementation\/three-phase-voltage-source-inverter\" \/>\n<meta property=\"og:site_name\" content=\"imperix\" \/>\n<meta property=\"article:published_time\" content=\"2021-03-30T06:37:48+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2026-01-19T14:45:51+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/imperix.com\/doc\/wp-content\/uploads\/2021\/03\/ups-battery-e1749545101571.jpg\" \/>\n\t<meta property=\"og:image:width\" content=\"561\" \/>\n\t<meta property=\"og:image:height\" content=\"375\" \/>\n\t<meta property=\"og:image:type\" content=\"image\/jpeg\" \/>\n<meta name=\"author\" content=\"Julien Orsinger\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:label1\" content=\"Written by\" \/>\n\t<meta name=\"twitter:data1\" content=\"Julien Orsinger\" \/>\n\t<meta name=\"twitter:label2\" content=\"Est. reading time\" \/>\n\t<meta name=\"twitter:data2\" content=\"7 minutes\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\\\/\\\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\\\/\\\/imperix.com\\\/doc\\\/implementation\\\/three-phase-voltage-source-inverter#article\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/imperix.com\\\/doc\\\/implementation\\\/three-phase-voltage-source-inverter\"},\"author\":{\"name\":\"Julien Orsinger\",\"@id\":\"https:\\\/\\\/imperix.com\\\/doc\\\/#\\\/schema\\\/person\\\/65ef663818eab76f53cc627ab80e0a51\"},\"headline\":\"Three-phase Voltage Source Inverter (VSI)\",\"datePublished\":\"2021-03-30T06:37:48+00:00\",\"dateModified\":\"2026-01-19T14:45:51+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\\\/\\\/imperix.com\\\/doc\\\/implementation\\\/three-phase-voltage-source-inverter\"},\"wordCount\":1205,\"commentCount\":0,\"publisher\":{\"@id\":\"https:\\\/\\\/imperix.com\\\/doc\\\/#organization\"},\"image\":{\"@id\":\"https:\\\/\\\/imperix.com\\\/doc\\\/implementation\\\/three-phase-voltage-source-inverter#primaryimage\"},\"thumbnailUrl\":\"https:\\\/\\\/imperix.com\\\/doc\\\/wp-content\\\/uploads\\\/2021\\\/03\\\/ups-battery-e1749545101571.jpg\",\"articleSection\":[\"Technical notes\"],\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"CommentAction\",\"name\":\"Comment\",\"target\":[\"https:\\\/\\\/imperix.com\\\/doc\\\/implementation\\\/three-phase-voltage-source-inverter#respond\"]}]},{\"@type\":\"WebPage\",\"@id\":\"https:\\\/\\\/imperix.com\\\/doc\\\/implementation\\\/three-phase-voltage-source-inverter\",\"url\":\"https:\\\/\\\/imperix.com\\\/doc\\\/implementation\\\/three-phase-voltage-source-inverter\",\"name\":\"Voltage source inverter - control software example - imperix\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/imperix.com\\\/doc\\\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\\\/\\\/imperix.com\\\/doc\\\/implementation\\\/three-phase-voltage-source-inverter#primaryimage\"},\"image\":{\"@id\":\"https:\\\/\\\/imperix.com\\\/doc\\\/implementation\\\/three-phase-voltage-source-inverter#primaryimage\"},\"thumbnailUrl\":\"https:\\\/\\\/imperix.com\\\/doc\\\/wp-content\\\/uploads\\\/2021\\\/03\\\/ups-battery-e1749545101571.jpg\",\"datePublished\":\"2021-03-30T06:37:48+00:00\",\"dateModified\":\"2026-01-19T14:45:51+00:00\",\"description\":\"This example generates AC currents from a three-phase voltage source inverter. It can be used to implement a grid-forming inverter.\",\"breadcrumb\":{\"@id\":\"https:\\\/\\\/imperix.com\\\/doc\\\/implementation\\\/three-phase-voltage-source-inverter#breadcrumb\"},\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\\\/\\\/imperix.com\\\/doc\\\/implementation\\\/three-phase-voltage-source-inverter\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\\\/\\\/imperix.com\\\/doc\\\/implementation\\\/three-phase-voltage-source-inverter#primaryimage\",\"url\":\"https:\\\/\\\/imperix.com\\\/doc\\\/wp-content\\\/uploads\\\/2021\\\/03\\\/ups-battery-e1749545101571.jpg\",\"contentUrl\":\"https:\\\/\\\/imperix.com\\\/doc\\\/wp-content\\\/uploads\\\/2021\\\/03\\\/ups-battery-e1749545101571.jpg\",\"width\":561,\"height\":375,\"caption\":\"Battery room of UPS voltage source inverters\"},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\\\/\\\/imperix.com\\\/doc\\\/implementation\\\/three-phase-voltage-source-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\":\"Three-phase Voltage Source Inverter (VSI)\"}]},{\"@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\\\/65ef663818eab76f53cc627ab80e0a51\",\"name\":\"Julien Orsinger\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\\\/\\\/secure.gravatar.com\\\/avatar\\\/0a0328b09c6abe61fa1e263a1066dcb26ea8f3b9e8b1d78056047620947bb388?s=96&d=mm&r=g6545a7220411572e799ad58574cce259\",\"url\":\"https:\\\/\\\/secure.gravatar.com\\\/avatar\\\/0a0328b09c6abe61fa1e263a1066dcb26ea8f3b9e8b1d78056047620947bb388?s=96&d=mm&r=g\",\"contentUrl\":\"https:\\\/\\\/secure.gravatar.com\\\/avatar\\\/0a0328b09c6abe61fa1e263a1066dcb26ea8f3b9e8b1d78056047620947bb388?s=96&d=mm&r=g\",\"caption\":\"Julien Orsinger\"},\"description\":\"Julien is a senior power electronics engineer. On the knowledge base, he is acting as the editorial manager and is therefore the co-author of numerous articles on a broad variety of topics.\",\"sameAs\":[\"https:\\\/\\\/www.linkedin.com\\\/in\\\/julien-orsinger-640ab2129\\\/\"],\"url\":\"https:\\\/\\\/imperix.com\\\/doc\\\/author\\\/orsinger\"}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"Voltage source inverter - control software example - imperix","description":"This example generates AC currents from a three-phase voltage source inverter. It can be used to implement a grid-forming inverter.","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\/three-phase-voltage-source-inverter","og_locale":"en_US","og_type":"article","og_title":"Voltage source inverter - control software example - imperix","og_description":"This example generates AC currents from a three-phase voltage source inverter. It can be used to implement a grid-forming inverter.","og_url":"https:\/\/imperix.com\/doc\/implementation\/three-phase-voltage-source-inverter","og_site_name":"imperix","article_published_time":"2021-03-30T06:37:48+00:00","article_modified_time":"2026-01-19T14:45:51+00:00","og_image":[{"width":561,"height":375,"url":"https:\/\/imperix.com\/doc\/wp-content\/uploads\/2021\/03\/ups-battery-e1749545101571.jpg","type":"image\/jpeg"}],"author":"Julien Orsinger","twitter_card":"summary_large_image","twitter_misc":{"Written by":"Julien Orsinger","Est. reading time":"7 minutes"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/imperix.com\/doc\/implementation\/three-phase-voltage-source-inverter#article","isPartOf":{"@id":"https:\/\/imperix.com\/doc\/implementation\/three-phase-voltage-source-inverter"},"author":{"name":"Julien Orsinger","@id":"https:\/\/imperix.com\/doc\/#\/schema\/person\/65ef663818eab76f53cc627ab80e0a51"},"headline":"Three-phase Voltage Source Inverter (VSI)","datePublished":"2021-03-30T06:37:48+00:00","dateModified":"2026-01-19T14:45:51+00:00","mainEntityOfPage":{"@id":"https:\/\/imperix.com\/doc\/implementation\/three-phase-voltage-source-inverter"},"wordCount":1205,"commentCount":0,"publisher":{"@id":"https:\/\/imperix.com\/doc\/#organization"},"image":{"@id":"https:\/\/imperix.com\/doc\/implementation\/three-phase-voltage-source-inverter#primaryimage"},"thumbnailUrl":"https:\/\/imperix.com\/doc\/wp-content\/uploads\/2021\/03\/ups-battery-e1749545101571.jpg","articleSection":["Technical notes"],"inLanguage":"en-US","potentialAction":[{"@type":"CommentAction","name":"Comment","target":["https:\/\/imperix.com\/doc\/implementation\/three-phase-voltage-source-inverter#respond"]}]},{"@type":"WebPage","@id":"https:\/\/imperix.com\/doc\/implementation\/three-phase-voltage-source-inverter","url":"https:\/\/imperix.com\/doc\/implementation\/three-phase-voltage-source-inverter","name":"Voltage source inverter - control software example - imperix","isPartOf":{"@id":"https:\/\/imperix.com\/doc\/#website"},"primaryImageOfPage":{"@id":"https:\/\/imperix.com\/doc\/implementation\/three-phase-voltage-source-inverter#primaryimage"},"image":{"@id":"https:\/\/imperix.com\/doc\/implementation\/three-phase-voltage-source-inverter#primaryimage"},"thumbnailUrl":"https:\/\/imperix.com\/doc\/wp-content\/uploads\/2021\/03\/ups-battery-e1749545101571.jpg","datePublished":"2021-03-30T06:37:48+00:00","dateModified":"2026-01-19T14:45:51+00:00","description":"This example generates AC currents from a three-phase voltage source inverter. It can be used to implement a grid-forming inverter.","breadcrumb":{"@id":"https:\/\/imperix.com\/doc\/implementation\/three-phase-voltage-source-inverter#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/imperix.com\/doc\/implementation\/three-phase-voltage-source-inverter"]}]},{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/imperix.com\/doc\/implementation\/three-phase-voltage-source-inverter#primaryimage","url":"https:\/\/imperix.com\/doc\/wp-content\/uploads\/2021\/03\/ups-battery-e1749545101571.jpg","contentUrl":"https:\/\/imperix.com\/doc\/wp-content\/uploads\/2021\/03\/ups-battery-e1749545101571.jpg","width":561,"height":375,"caption":"Battery room of UPS voltage source inverters"},{"@type":"BreadcrumbList","@id":"https:\/\/imperix.com\/doc\/implementation\/three-phase-voltage-source-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":"Three-phase Voltage Source Inverter (VSI)"}]},{"@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\/65ef663818eab76f53cc627ab80e0a51","name":"Julien Orsinger","image":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/secure.gravatar.com\/avatar\/0a0328b09c6abe61fa1e263a1066dcb26ea8f3b9e8b1d78056047620947bb388?s=96&d=mm&r=g6545a7220411572e799ad58574cce259","url":"https:\/\/secure.gravatar.com\/avatar\/0a0328b09c6abe61fa1e263a1066dcb26ea8f3b9e8b1d78056047620947bb388?s=96&d=mm&r=g","contentUrl":"https:\/\/secure.gravatar.com\/avatar\/0a0328b09c6abe61fa1e263a1066dcb26ea8f3b9e8b1d78056047620947bb388?s=96&d=mm&r=g","caption":"Julien Orsinger"},"description":"Julien is a senior power electronics engineer. On the knowledge base, he is acting as the editorial manager and is therefore the co-author of numerous articles on a broad variety of topics.","sameAs":["https:\/\/www.linkedin.com\/in\/julien-orsinger-640ab2129\/"],"url":"https:\/\/imperix.com\/doc\/author\/orsinger"}]}},"_links":{"self":[{"href":"https:\/\/imperix.com\/doc\/wp-json\/wp\/v2\/posts\/1073","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\/2"}],"replies":[{"embeddable":true,"href":"https:\/\/imperix.com\/doc\/wp-json\/wp\/v2\/comments?post=1073"}],"version-history":[{"count":68,"href":"https:\/\/imperix.com\/doc\/wp-json\/wp\/v2\/posts\/1073\/revisions"}],"predecessor-version":[{"id":32534,"href":"https:\/\/imperix.com\/doc\/wp-json\/wp\/v2\/posts\/1073\/revisions\/32534"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/imperix.com\/doc\/wp-json\/wp\/v2\/media\/1131"}],"wp:attachment":[{"href":"https:\/\/imperix.com\/doc\/wp-json\/wp\/v2\/media?parent=1073"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/imperix.com\/doc\/wp-json\/wp\/v2\/categories?post=1073"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/imperix.com\/doc\/wp-json\/wp\/v2\/tags?post=1073"},{"taxonomy":"software-environments","embeddable":true,"href":"https:\/\/imperix.com\/doc\/wp-json\/wp\/v2\/software-environments?post=1073"},{"taxonomy":"provided-results","embeddable":true,"href":"https:\/\/imperix.com\/doc\/wp-json\/wp\/v2\/provided-results?post=1073"},{"taxonomy":"related-products","embeddable":true,"href":"https:\/\/imperix.com\/doc\/wp-json\/wp\/v2\/related-products?post=1073"},{"taxonomy":"guidedreadings","embeddable":true,"href":"https:\/\/imperix.com\/doc\/wp-json\/wp\/v2\/guidedreadings?post=1073"},{"taxonomy":"tutorials","embeddable":true,"href":"https:\/\/imperix.com\/doc\/wp-json\/wp\/v2\/tutorials?post=1073"},{"taxonomy":"user-manuals","embeddable":true,"href":"https:\/\/imperix.com\/doc\/wp-json\/wp\/v2\/user-manuals?post=1073"},{"taxonomy":"author","embeddable":true,"href":"https:\/\/imperix.com\/doc\/wp-json\/wp\/v2\/coauthors?post=1073"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}