<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE article PUBLIC "-//NLM//DTD Journal Publishing DTD v2.3 20070202//EN" "journalpublishing.dtd">
<article article-type="research-article" dtd-version="2.3" xml:lang="EN" xmlns:mml="http://www.w3.org/1998/Math/MathML" xmlns:xlink="http://www.w3.org/1999/xlink">
<front>
<journal-meta>
<journal-id journal-id-type="publisher-id">Front. Energy Res.</journal-id>
<journal-title>Frontiers in Energy Research</journal-title>
<abbrev-journal-title abbrev-type="pubmed">Front. Energy Res.</abbrev-journal-title>
<issn pub-type="epub">2296-598X</issn>
<publisher>
<publisher-name>Frontiers Media S.A.</publisher-name>
</publisher>
</journal-meta>
<article-meta>
<article-id pub-id-type="publisher-id">1272329</article-id>
<article-id pub-id-type="doi">10.3389/fenrg.2023.1272329</article-id>
<article-categories>
<subj-group subj-group-type="heading">
<subject>Energy Research</subject>
<subj-group>
<subject>Original Research</subject>
</subj-group>
</subj-group>
</article-categories>
<title-group>
<article-title>Digital resonant control of power converters under variable grid frequency conditions</article-title>
<alt-title alt-title-type="left-running-head">Ijaz et al.</alt-title>
<alt-title alt-title-type="right-running-head">
<ext-link ext-link-type="uri" xlink:href="https://doi.org/10.3389/fenrg.2023.1272329">10.3389/fenrg.2023.1272329</ext-link>
</alt-title>
</title-group>
<contrib-group>
<contrib contrib-type="author">
<name>
<surname>Ijaz</surname>
<given-names>Muhammad</given-names>
</name>
<xref ref-type="aff" rid="aff1">
<sup>1</sup>
</xref>
<role content-type="https://credit.niso.org/contributor-roles/conceptualization/"/>
<role content-type="https://credit.niso.org/contributor-roles/writing-original-draft/"/>
<role content-type="https://credit.niso.org/contributor-roles/investigation/"/>
<role content-type="https://credit.niso.org/contributor-roles/methodology/"/>
<role content-type="https://credit.niso.org/contributor-roles/software/"/>
</contrib>
<contrib contrib-type="author">
<name>
<surname>Nazir</surname>
<given-names>Rabia</given-names>
</name>
<xref ref-type="aff" rid="aff2">
<sup>2</sup>
</xref>
<role content-type="https://credit.niso.org/contributor-roles/investigation/"/>
<role content-type="https://credit.niso.org/contributor-roles/methodology/"/>
<role content-type="https://credit.niso.org/contributor-roles/project-administration/"/>
<role content-type="https://credit.niso.org/contributor-roles/resources/"/>
<role content-type="https://credit.niso.org/contributor-roles/Writing - review &#x26; editing/"/>
</contrib>
<contrib contrib-type="author">
<name>
<surname>Alhussein</surname>
<given-names>Musaed</given-names>
</name>
<xref ref-type="aff" rid="aff3">
<sup>3</sup>
</xref>
<role content-type="https://credit.niso.org/contributor-roles/funding-acquisition/"/>
<role content-type="https://credit.niso.org/contributor-roles/resources/"/>
<role content-type="https://credit.niso.org/contributor-roles/supervision/"/>
<role content-type="https://credit.niso.org/contributor-roles/writing-original-draft/"/>
</contrib>
<contrib contrib-type="author">
<name>
<surname>Ahmad</surname>
<given-names>Jameel</given-names>
</name>
<xref ref-type="aff" rid="aff4">
<sup>4</sup>
</xref>
<uri xlink:href="https://loop.frontiersin.org/people/2398869/overview"/>
<role content-type="https://credit.niso.org/contributor-roles/conceptualization/"/>
<role content-type="https://credit.niso.org/contributor-roles/data-curation/"/>
<role content-type="https://credit.niso.org/contributor-roles/investigation/"/>
<role content-type="https://credit.niso.org/contributor-roles/project-administration/"/>
<role content-type="https://credit.niso.org/contributor-roles/Writing - review &#x26; editing/"/>
</contrib>
<contrib contrib-type="author" corresp="yes">
<name>
<surname>Aurangzeb</surname>
<given-names>Khursheed</given-names>
</name>
<xref ref-type="aff" rid="aff3">
<sup>3</sup>
</xref>
<xref ref-type="corresp" rid="c001">&#x2a;</xref>
<uri xlink:href="https://loop.frontiersin.org/people/1322190/overview"/>
<role content-type="https://credit.niso.org/contributor-roles/conceptualization/"/>
<role content-type="https://credit.niso.org/contributor-roles/data-curation/"/>
<role content-type="https://credit.niso.org/contributor-roles/formal-analysis/"/>
<role content-type="https://credit.niso.org/contributor-roles/funding-acquisition/"/>
<role content-type="https://credit.niso.org/contributor-roles/project-administration/"/>
<role content-type="https://credit.niso.org/contributor-roles/resources/"/>
<role content-type="https://credit.niso.org/contributor-roles/supervision/"/>
<role content-type="https://credit.niso.org/contributor-roles/Writing - review &#x26; editing/"/>
</contrib>
<contrib contrib-type="author">
<name>
<surname>Saleem</surname>
<given-names>Faisal</given-names>
</name>
<xref ref-type="aff" rid="aff5">
<sup>5</sup>
</xref>
<uri xlink:href="https://loop.frontiersin.org/people/2408995/overview"/>
<role content-type="https://credit.niso.org/contributor-roles/data-curation/"/>
<role content-type="https://credit.niso.org/contributor-roles/formal-analysis/"/>
<role content-type="https://credit.niso.org/contributor-roles/investigation/"/>
<role content-type="https://credit.niso.org/contributor-roles/validation/"/>
<role content-type="https://credit.niso.org/contributor-roles/visualization/"/>
<role content-type="https://credit.niso.org/contributor-roles/Writing - review &#x26; editing/"/>
</contrib>
</contrib-group>
<aff id="aff1">
<sup>1</sup>
<institution>Directorate of Works Electrical</institution>, <institution>Hazara University</institution>, <addr-line>Mansehra</addr-line>, <country>Pakistan</country>
</aff>
<aff id="aff2">
<sup>2</sup>
<institution>Department of Electrical Engineering</institution>, <institution>University of Engineering and Technology</institution>, <addr-line>Lahore</addr-line>, <country>Pakistan</country>
</aff>
<aff id="aff3">
<sup>3</sup>
<institution>Department of Computer Engineering</institution>, <institution>College of Computer and Information Sciences</institution>, <institution>King Saud University</institution>, <addr-line>Riyadh</addr-line>, <country>Saudi Arabia</country>
</aff>
<aff id="aff4">
<sup>4</sup>
<institution>Department of Computer Science</institution>, <institution>School of Systems and Technology (SST)</institution>, <institution>University of Management and Technology</institution>, <addr-line>Lahore</addr-line>, <country>Pakistan</country>
</aff>
<aff id="aff5">
<sup>5</sup>
<institution>Department of Measurements and Control Systems</institution>, <institution>Silesian University of Technology</institution>, <addr-line>Gliwice</addr-line>, <country>Poland</country>
</aff>
<author-notes>
<fn fn-type="edited-by">
<p>
<bold>Edited by:</bold> <ext-link ext-link-type="uri" xlink:href="https://loop.frontiersin.org/people/2338879/overview">Amjad Ali</ext-link>, King Fahd University of Petroleum and Minerals, Saudi Arabia</p>
</fn>
<fn fn-type="edited-by">
<p>
<bold>Reviewed by:</bold> <ext-link ext-link-type="uri" xlink:href="https://loop.frontiersin.org/people/2286699/overview">Muhammad Waseem</ext-link>, Zhejiang University, China</p>
<p>
<ext-link ext-link-type="uri" xlink:href="https://loop.frontiersin.org/people/2402113/overview">Ahmed Ab</ext-link>dalla, Huaiyin Institute of Technology, China</p>
</fn>
<corresp id="c001">&#x2a;Correspondence: Khursheed Aurangzeb, <email>kaurangzeb@ksu.edu.sa</email>
</corresp>
</author-notes>
<pub-date pub-type="epub">
<day>15</day>
<month>09</month>
<year>2023</year>
</pub-date>
<pub-date pub-type="collection">
<year>2023</year>
</pub-date>
<volume>11</volume>
<elocation-id>1272329</elocation-id>
<history>
<date date-type="received">
<day>03</day>
<month>08</month>
<year>2023</year>
</date>
<date date-type="accepted">
<day>29</day>
<month>08</month>
<year>2023</year>
</date>
</history>
<permissions>
<copyright-statement>Copyright &#xa9; 2023 Ijaz, Nazir, Alhussein, Ahmad, Aurangzeb and Saleem.</copyright-statement>
<copyright-year>2023</copyright-year>
<copyright-holder>Ijaz, Nazir, Alhussein, Ahmad, Aurangzeb and Saleem</copyright-holder>
<license xlink:href="http://creativecommons.org/licenses/by/4.0/">
<p>This is an open-access article distributed under the terms of the Creative Commons Attribution License (CC BY). The use, distribution or reproduction in other forums is permitted, provided the original author(s) and the copyright owner(s) are credited and that the original publication in this journal is cited, in accordance with accepted academic practice. No use, distribution or reproduction is permitted which does not comply with these terms.</p>
</license>
</permissions>
<abstract>
<p>
<bold>Introduction:</bold> The proportional resonant (PR) controller is known for its ability to effectively regulate sinusoidal current and voltage with low steady-state error. However, in the context of digital power systems, where operations are discrete in time, applying conventional PR controllers directly presents challenges. This study investigates the impact of various discretization methods on the performance of PR controllers, particularly under scenarios with varying reference frequencies.</p>
<p>
<bold>Methods:</bold> To assess the performance of digital PR controllers under varying reference frequency conditions, three discretization techniques are employed: zero-order hold (ZOH), impulse invariant (II), and zero pole matching (ZPM), in addition to the conventional deadbeat controller. These controllers are tested in conjunction with a single-phase pulse-width modulated (PWM) inverter, which is a crucial component in modern power systems.</p>
<p>
<bold>Results:</bold> Simulation results indicate the effectiveness of the different digital PR controllers in tracking both fixed and variable reference frequency signals while minimizing total harmonic distortion (THD) and steady-state error. When utilizing only the deadbeat controller, steady-state error and THD are measured at 4.9 V and 4.82%, respectively. However, the proposed ZPM-based digital PR controller significantly improves performance, reducing steady-state error to 0.12 V and THD to 0.45%, highlighting its superior performance.</p>
<p>
<bold>Discussion:</bold> The findings of this study emphasize the importance of choosing the appropriate discretization method when implementing PR controllers in digital power systems. The ZPM-based digital PR controller proves to be highly efficient in regulating power converters under varying grid frequency conditions. This research contributes to the understanding of digital PR controller behavior and its potential for improving power system performance, especially in scenarios with intermittent renewable energy resources and fluctuating grid frequencies.</p>
</abstract>
<kwd-group>
<kwd>PWM inverter</kwd>
<kwd>renewable energy</kwd>
<kwd>resonant control</kwd>
<kwd>steady state error</kwd>
<kwd>THD</kwd>
</kwd-group>
<custom-meta-wrap>
<custom-meta>
<meta-name>section-at-acceptance</meta-name>
<meta-value>Process and Energy Systems Engineering</meta-value>
</custom-meta>
</custom-meta-wrap>
</article-meta>
</front>
<body>
<sec id="s1">
<title>1 Introduction</title>
<p>In electrical power systems, the grid frequency typically remains relatively stable, but in systems like microgrids, isolated grids, or grids with high penetration of renewable energy sources, the frequency might deviate from the standard value. This can result from variations in generation, load, or the presence of intermittent renewable sources such as solar and wind. The concept of digital resonant control involves designing control algorithms that can detect and mitigate resonant conditions within the system. Resonance occurs when the natural frequency of the power converter circuit matches the frequency of the grid fluctuations. This can lead to amplified voltage or current oscillations, potentially causing instability, voltage distortion, and even damage to the converter and connected components. The control system continuously monitors the grid frequency, which might be non-constant due to variable generation and load conditions.</p>
<p>The control algorithm analyzes the system&#x2019;s response to the varying grid frequency to detect any signs of resonance. This involves monitoring the voltage and current waveforms and identifying harmonic components that might indicate resonance. Once resonance is detected, the control algorithm adjusts the converter&#x2019;s control parameters in real-time to counteract the effects of resonance. This might involve tuning the converter&#x2019;s output impedance or adjusting the control loop gains. The control strategy can incorporate damping techniques and filtering to reduce the impact of resonance on the system. This could include adding virtual resistors or filters to dampen oscillations and prevent them from increasing.</p>
<p>In addition to resonance control, the algorithm might include synchronization techniques to ensure that the converter output is synchronized with the variable grid frequency, maintaining stable operation and minimizing voltage and current distortions. Digital resonant control is particularly valuable in scenarios where traditional control methods might struggle to maintain stability under varying grid frequency conditions. Its adaptive nature allows power converters to respond in real-time to changes in the system dynamics, thereby improving overall system performance, efficiency, and reliability. This control strategy is crucial for the successful integration of renewable energy sources into the grid, as these sources often introduce variability in the grid frequency. Digital resonant control enhances the stability and robustness of power electronic systems by effectively managing resonant conditions, ensuring smooth operation even in challenging grid conditions.</p>
<p>Renewable energy has the ability to cope with ever-increasing energy needs. It supplies electric power directly to the consumer or connects to the main grid. Solar photovoltaic (PV) and wind energy-based power systems <xref ref-type="bibr" rid="B11">Dong et al. (2023)</xref>; <xref ref-type="bibr" rid="B10">Desalegn et al. (2023)</xref>; <xref ref-type="bibr" rid="B19">Khan et al. (2022)</xref> are inherently stochastic in nature due to changing weather conditions such as irradiance and temperature variations in the case of the solar PV system and wind speed variations in the case of the wind energy conversion system. PV systems and wind integrated systems directly supply energy to the consumers such as residential, commercial, or industrial loads or connect to the main grid using DC&#x2013;DC or DC&#x2013;AC converters. There are many associated challenges such as grid stability and bi-directional power flow control in hybrid energy systems (HESs) in electric vehicles that use multi-port bi-directional converters (<xref ref-type="bibr" rid="B29">Malik et al., 2023a</xref>; <xref ref-type="bibr" rid="B30">Malik et al., 2023b</xref>). With variable weather conditions, the PV system suffers low voltage at the output; in this scenario, the DC&#x2013;DC boost converter becomes a very necessary part to get high voltage gain <xref ref-type="bibr" rid="B28">Malik et al. (2017)</xref>. The frequency of the output voltages must also be tightly regulated before injecting the output power into the grid <xref ref-type="bibr" rid="B45">Yasmeena and Das (2015)</xref>-<xref ref-type="bibr" rid="B6">Chen et al. (2021)</xref> from these renewable systems.</p>
<p>Recently, concentrated photovoltaic (CPV) has been given preference over conventional photovoltaic due to its high efficiency. The solar cell area can be augmented with optical concentrators <xref ref-type="bibr" rid="B16">Iqbal et al. (2023)</xref>, thereby improving efficiency of renewable solar-powered systems. Short-term load forecasting technologies can also be integrated with modern photovoltaic-based energy conversion system to further improve in the planning of energy demand, smart and efficient economic dispatch, and energy management of electrical power <xref ref-type="bibr" rid="B18">Javed et al. (2021)</xref>-<xref ref-type="bibr" rid="B44">Wei et al. (2023)</xref>. However, without efficient grid synchronization <xref ref-type="bibr" rid="B25">Lin et al. (2023</xref>, <xref ref-type="bibr" rid="B24">2022)</xref> and load frequency control (LFC), it degrades power quality and increases total harmonic distortion (THD) in the power network <xref ref-type="bibr" rid="B1">Ahsan et al. (2021)</xref>; <xref ref-type="bibr" rid="B27">Liu et al. (2023)</xref> or drive systems coupled with it <xref ref-type="bibr" rid="B26">Liu and Liu (2021)</xref>. To solve this problem, various classical control system approaches, such as proportional integral (PI) controller, deadbeat controllers, hysteresis controllers, repetitive controllers, and current controllers based on resonant filters, are employed with certain limitations such as hardware complexity and non-zero steady-state error performance <xref ref-type="bibr" rid="B3">Bourguiba et al. (2016)</xref> - <xref ref-type="bibr" rid="B32">Nazir et al. (2020)</xref>.</p>
</sec>
<sec id="s2">
<title>2 Related work</title>
<p>A proportional resonant controller (PRC) is a control technique that combines the principles of proportional control with the ability to address resonant frequencies in a system. PRCs have garnered significant attention due to their effectiveness in dealing with resonance-related issues in various applications. This literature review provides an overview of key research findings, advancements, and applications related to PRCs. PRCs combine the features of proportional control with the capability to address resonant frequencies, making them well-suited for applications requiring precise control in the presence of resonant phenomena. Resonant controllers can be used to manage harmonic distortion in power electronics systems, demonstrating their ability to selectively attenuate specific frequency components in control signals while maintaining proportional control action. PRCs can be applied to grid-connected converters and voltage source inverters, aiming to enhance the power quality by suppressing current harmonics and damping resonances, thereby improving the dynamic response and stability of renewable energy systems.</p>
<p>In the realm of motor drives and motion control, PRCs have demonstrated their potential to mitigate mechanical resonances. Advancements in PRCs have focused on refining control strategies and tuning methodologies. Adaptive tuning techniques have been explored to optimize PRC parameters in real-time, adapting to changes in system dynamics and load conditions. Moreover, the integration of PRCs with advanced control algorithms, such as predictive control and sliding mode control, has been investigated to achieve higher accuracy and robustness.</p>
<p>The prevalence of digital control systems has led to extensive research on the digital implementation of PRCs. Zero-order hold and bilinear transformation techniques have been employed to adapt continuous-time PRC designs for digital platforms. Recent research has expanded the concept of PRCs to hybrid and multi-resonant control strategies. Researchers have integrated PRCs with other control techniques, such as repetitive control, to address multiple resonant frequencies in complex systems. These hybrid approaches aim to enhance control performance by effectively managing multiple resonance-related challenges.</p>
<p>The PRC is one of the most promising approaches that has recently gained considerable attention in regulating sinusoidal current and voltage signals in the case of grid-tied inverters <xref ref-type="bibr" rid="B21">Kuperman (2015)</xref>. The PR controller is based on the internal model principle (IMP), which has the capability of providing a high-quality sinusoidal signal in the case of grid-connected inverters <xref ref-type="bibr" rid="B37">Quan and Cai (2010)</xref>. In fact, the PR controller is the real alternative to conventional PI controllers that operate in positive and negative synchronous frame sequences <xref ref-type="bibr" rid="B43">Wang et al. (2018)</xref>; <xref ref-type="bibr" rid="B41">Tarraso et al. (2017)</xref>. Only the integration of the PR controller and PI controllers is different. The PR controller integrates at resonant frequency without producing phase shift and steady-state error.</p>
<p>In the synchronous frame of reference, PR controller performance and transient response are almost similar to those of traditional PI controller D. <xref ref-type="bibr" rid="B50">Zammit and Apap (2014)</xref>. However, the performance of the PR controller is much better when controlling sinusoidal signals. The PR controller overcomes the shortcomings of the PI controller, such as the poor and sluggish tracking of sinusoidal reference signals and disturbance rejection <xref ref-type="bibr" rid="B22">Lakshmi and Naik (2017)</xref>. Other advantages of the PR controller over the conventional PI controller are lower complexity and computational burden, direct connection to single-phase PWM inverters, and lower sensitivity <xref ref-type="bibr" rid="B12">Essaghir et al. (2018)</xref>.</p>
<p>PR controller applications are widely applied to photovoltaic inverters, wind turbines, power converters, and uninterrupted power supplies <xref ref-type="bibr" rid="B4">Buso and Mattavelli (2015)</xref>- <xref ref-type="bibr" rid="B15">Husev et al. (2020)</xref>. The PR controller is tuned to the fundamental frequency of the system to ideally provide infinite gain at the resonant frequency and almost no attenuation outside this frequency. Therefore, the PR controller can also be combined with a notch filter to compensate harmonics and to achieve good transient and steady-state objectives <xref ref-type="bibr" rid="B38">Rufa&#x2019;I et al. (2019)</xref>. <xref ref-type="bibr" rid="B35">Parvez et al. (2020)</xref> used the PR controller in the main control loop of an uninterrupted power supply inverter for low steady-state error, improved dynamic response, better output regulation, and lower THD. The dual integration method is commonly used to implement the PR controller due to the ease of frequency adaptation <xref ref-type="bibr" rid="B9">Das and Barai (2021)</xref>.</p>
<p>In <xref ref-type="bibr" rid="B31">Mohammed et al. (2017)</xref>, various control strategies are explored for integrating and managing renewable power injection into the grid. These strategies significantly contribute to enhancing power system stability, improving power quality, and overall system performance. Achievements include maintaining low total harmonic distortion (THD), achieving high-power factor, and demonstrating rapid dynamic responses. Additionally, the utilization of an algorithm for tracking the maximum power point (MPPT) in grid-connected photovoltaic inverters, along with the creation of a precise phase-locked loop (PLL) for phase angle detection, amplitude regulation, and voltage frequency control, plays a crucial role in ensuring accurate generation of reference signals.</p>
<p>The work presented by <xref ref-type="bibr" rid="B23">Li et al. (2021)</xref> introduces a sophisticated quasi-proportional integral resonant (QPIR) controller tailored for a three-phase LCL grid-connected inverter with integrated active damping. In contrast to conventional QPR controllers, this enhanced QPIR controller exhibits remarkable precision in its regulation of grid-connected voltages and currents. The innovative QPIR controller effectively attains autonomous control over both active and reactive power in the context of a three-phase grid-connected inverter. Notably, this controller excels in ensuring the simultaneous accuracy and swiftness of control over grid-connected currents, rendering it particularly pertinent for applications emphasizing high-power factors and aiming to optimize DC-side utilization efficiency. It is important to note, however, that while this controller demonstrates considerable promise, there are limitations preventing its direct applicability to practical systems.</p>
<p>In <xref ref-type="bibr" rid="B2">Alathamneh et al. (2022)</xref>, the focus is on enhancing the stability of a grid-connected inverter operating under weak grid conditions. The study reveals that problematic negative resistance areas arise due to interactions between the phase-locked loop (PLL) and the grid voltage feedforward (GVF) elements. To counter this instability originating from the PLL and GVF, the research introduces a customized stability control method for grid-connected inverters. This approach revolves around modifying the impedance in the q-axis. Specifically, the proposed method integrates q-axis voltage directly into the q-axis current regulator&#x2019;s output through a transfer link. This deliberate step effectively counteracts the adverse effects of both the PLL and GVF on the q-axis output impedance of the grid-connected inverter. However, it is important to note that this analysis is confined to a single inverter system.</p>
<p>In <xref ref-type="bibr" rid="B14">Gopinath and Vijayakumar (2022)</xref>, a multi-level inverter designed for grid-connected converters is presented. This inverter tackles issues such as leakage current reduction, voltage enhancement, self-voltage balancing, and minimizing capacitor voltage stress. The suggested design proves to be a strong candidate for applications involving grid-connected photovoltaic systems.</p>
</sec>
<sec id="s3">
<title>3 Contributions</title>
<p>Most of the prior research has focused on continuous-time design of the PR controller to achieve the desired performance, but these controllers cannot be applied directly to digital systems. Therefore, for the digital system, it is necessary to implement the PR controller digitally. Different discretization methods such as zero-order hold (ZOH), first-order hold (FOH), impulse invariant (II), and the zero pole matching (ZPM) method are used for digital implementation of the PR controller <xref ref-type="bibr" rid="B46">Yepes (2011)</xref>. However, discretization of PR is not an easy task, as it causes displacement of poles and zeros of the controller. The displacement of zeros poses problems of stability, whereas the displacement of poles causes a resonant frequency shift, leading to steady-state error. Since sinusoidal voltage is the basic electrical variable of the power system, the main goal of this work is to propose an efficient discretization method used for digital implementation of the PR controller that can effectively track the frequency of the desired signal with zero steady-state error.</p>
<p>The remainder of the paper is organized as follows. <xref ref-type="sec" rid="s4">Section 4</xref> presents modeling of the single-phase PWM inverter. <xref ref-type="sec" rid="s5">Section 5</xref> presents the digital control techniques for the single-phase PWM inverter. <xref ref-type="sec" rid="s6">Section 6</xref> discusses in detail the discretization methods used for digital implementation of the PR controller and its effects on poles and zeros of the controller. It also provides three efficient discretization methods that can be used for PR controllers. Simulation results and discussion are given in <xref ref-type="sec" rid="s7">Section 7</xref>. <xref ref-type="sec" rid="s8">Section 8</xref> concludes the paper.</p>
</sec>
<sec id="s4">
<title>4 Modeling of the single-phase PWM inverter</title>
<p>A single-phase PWM inverter with the control loop is shown in <xref ref-type="fig" rid="F1">Figure 1</xref>. It consists of DC input source, inverter bridge, low-pass LC filter, non-linear rectifier load, and PWM pulse generator. <italic>E</italic>
<sub>
<italic>n</italic>
</sub> represents the nominal value of the DC input source. The inverter bridge consists of four insulated gate bipolar transistor (IGBT) switches from <italic>S</italic>
<sub>1</sub> to <italic>S</italic>
<sub>4</sub> with protection diodes. The switches generate an alternating signal at the output, while the purpose of protection diodes is to provide a reverse path for current flow. The low-pass filter consists of an inductor <italic>L</italic>
<sub>
<italic>n</italic>
</sub> and a capacitor <italic>C</italic>
<sub>
<italic>n</italic>
</sub>, and the values of <italic>L</italic>
<sub>
<italic>n</italic>
</sub> and <italic>C</italic>
<sub>
<italic>n</italic>
</sub> are set to achieve the desired frequency response. The inverter may be standalone or grid-connected. In the standalone case, the generated AC power is supplied directly to consumers, while in the case of the grid-connected inverter, the AC output is delivered to the grid. The switching pattern of the inverter is decided by the PWM pulse generator. The PWM pulse generator is controlled by the controller circuit of the inverter. The desired voltage with nominal frequency is generated by efficiently controlling the PWM pulses to the input of the inverter <xref ref-type="bibr" rid="B33">Nazir et al. (2019)</xref>.State space equations of the PWM inverter are given by <xref ref-type="bibr" rid="B5">Cha et al. (2015)</xref>.<disp-formula id="e1">
<mml:math id="m1">
<mml:mfenced open="[" close="]">
<mml:mrow>
<mml:mtable class="matrix">
<mml:mtr>
<mml:mtd columnalign="center">
<mml:mi>v</mml:mi>
<mml:msub>
<mml:mrow>
<mml:mover accent="true">
<mml:mrow>
<mml:mspace width="0.17em"/>
<mml:mspace width="-0.17em"/>
</mml:mrow>
<mml:mo>&#x307;</mml:mo>
</mml:mover>
</mml:mrow>
<mml:mrow>
<mml:mi>c</mml:mi>
</mml:mrow>
</mml:msub>
</mml:mtd>
</mml:mtr>
<mml:mtr>
<mml:mtd columnalign="center">
<mml:mi>v</mml:mi>
<mml:msub>
<mml:mrow>
<mml:mover accent="true">
<mml:mrow>
<mml:mspace width="0.17em"/>
<mml:mspace width="-0.17em"/>
</mml:mrow>
<mml:mo>&#x308;</mml:mo>
</mml:mover>
</mml:mrow>
<mml:mrow>
<mml:mi>c</mml:mi>
</mml:mrow>
</mml:msub>
</mml:mtd>
</mml:mtr>
</mml:mtable>
</mml:mrow>
</mml:mfenced>
<mml:mo>&#x3d;</mml:mo>
<mml:mfenced open="[" close="]">
<mml:mrow>
<mml:mtable class="matrix">
<mml:mtr>
<mml:mtd columnalign="center">
<mml:mn>0</mml:mn>
</mml:mtd>
<mml:mtd columnalign="center">
<mml:mn>1</mml:mn>
</mml:mtd>
</mml:mtr>
<mml:mtr>
<mml:mtd columnalign="center">
<mml:mfrac>
<mml:mrow>
<mml:mo>&#x2212;</mml:mo>
<mml:mn>1</mml:mn>
</mml:mrow>
<mml:mrow>
<mml:msub>
<mml:mrow>
<mml:mi>L</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>n</mml:mi>
</mml:mrow>
</mml:msub>
<mml:msub>
<mml:mrow>
<mml:mi>C</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>n</mml:mi>
</mml:mrow>
</mml:msub>
</mml:mrow>
</mml:mfrac>
</mml:mtd>
<mml:mtd columnalign="center">
<mml:mfrac>
<mml:mrow>
<mml:mo>&#x2212;</mml:mo>
<mml:mn>1</mml:mn>
</mml:mrow>
<mml:mrow>
<mml:msub>
<mml:mrow>
<mml:mi>R</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>n</mml:mi>
</mml:mrow>
</mml:msub>
<mml:msub>
<mml:mrow>
<mml:mi>C</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>n</mml:mi>
</mml:mrow>
</mml:msub>
</mml:mrow>
</mml:mfrac>
</mml:mtd>
</mml:mtr>
</mml:mtable>
</mml:mrow>
</mml:mfenced>
<mml:mfenced open="[" close="]">
<mml:mrow>
<mml:mtable class="matrix">
<mml:mtr>
<mml:mtd columnalign="center">
<mml:msub>
<mml:mrow>
<mml:mi>v</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>c</mml:mi>
</mml:mrow>
</mml:msub>
</mml:mtd>
</mml:mtr>
<mml:mtr>
<mml:mtd columnalign="center">
<mml:mi>v</mml:mi>
<mml:msub>
<mml:mrow>
<mml:mover accent="true">
<mml:mrow>
<mml:mspace width="0.17em"/>
<mml:mspace width="-0.17em"/>
</mml:mrow>
<mml:mo>&#x307;</mml:mo>
</mml:mover>
</mml:mrow>
<mml:mrow>
<mml:mi>c</mml:mi>
</mml:mrow>
</mml:msub>
</mml:mtd>
</mml:mtr>
</mml:mtable>
</mml:mrow>
</mml:mfenced>
<mml:mo>&#x2b;</mml:mo>
<mml:mfenced open="[" close="]">
<mml:mrow>
<mml:mtable class="matrix">
<mml:mtr>
<mml:mtd columnalign="center">
<mml:mn>0</mml:mn>
</mml:mtd>
</mml:mtr>
<mml:mtr>
<mml:mtd columnalign="center">
<mml:mfrac>
<mml:mrow>
<mml:mn>1</mml:mn>
</mml:mrow>
<mml:mrow>
<mml:msub>
<mml:mrow>
<mml:mi>L</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>n</mml:mi>
</mml:mrow>
</mml:msub>
<mml:msub>
<mml:mrow>
<mml:mi>C</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>n</mml:mi>
</mml:mrow>
</mml:msub>
</mml:mrow>
</mml:mfrac>
</mml:mtd>
</mml:mtr>
</mml:mtable>
</mml:mrow>
</mml:mfenced>
<mml:msub>
<mml:mrow>
<mml:mi>v</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>i</mml:mi>
<mml:mi>n</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mo>,</mml:mo>
</mml:math>
<label>(1)</label>
</disp-formula>where <italic>E</italic>
<sub>
<italic>n</italic>
</sub>, <italic>v</italic>
<sub>
<italic>c</italic>
</sub>, <italic>C</italic>
<sub>
<italic>n</italic>
</sub>, <italic>L</italic>
<sub>
<italic>n</italic>
</sub>, and <italic>R</italic>
<sub>
<italic>n</italic>
</sub> represent the inverter input voltage, pulse width modulated output voltage, nominal values of inductor, capacitor, and load resistor, respectively. The state space equation <inline-formula id="inf1">
<mml:math id="m2">
<mml:mi>x</mml:mi>
<mml:mrow>
<mml:mover accent="true">
<mml:mrow>
<mml:mspace width="0.17em"/>
<mml:mspace width="-0.17em"/>
</mml:mrow>
<mml:mo>&#x307;</mml:mo>
</mml:mover>
</mml:mrow>
<mml:mo>&#x3d;</mml:mo>
<mml:mi>A</mml:mi>
<mml:mi>x</mml:mi>
<mml:mo>&#x2b;</mml:mo>
<mml:mi>B</mml:mi>
<mml:mi>u</mml:mi>
</mml:math>
</inline-formula> can be written in the sampled form as<disp-formula id="e2">
<mml:math id="m3">
<mml:mi>x</mml:mi>
<mml:mfenced open="(" close=")">
<mml:mrow>
<mml:mi>k</mml:mi>
<mml:mo>&#x2b;</mml:mo>
<mml:mn>1</mml:mn>
</mml:mrow>
</mml:mfenced>
<mml:mo>&#x3d;</mml:mo>
<mml:msup>
<mml:mrow>
<mml:mi>e</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>A</mml:mi>
<mml:mi>&#x3c4;</mml:mi>
</mml:mrow>
</mml:msup>
<mml:mi>x</mml:mi>
<mml:mfenced open="(" close=")">
<mml:mrow>
<mml:mi>k</mml:mi>
</mml:mrow>
</mml:mfenced>
<mml:mo>&#x2b;</mml:mo>
<mml:msubsup>
<mml:mrow>
<mml:mo>&#x222b;</mml:mo>
</mml:mrow>
<mml:mrow>
<mml:mn>0</mml:mn>
</mml:mrow>
<mml:mrow>
<mml:mi>&#x3c4;</mml:mi>
</mml:mrow>
</mml:msubsup>
<mml:msup>
<mml:mrow>
<mml:mi>e</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>A</mml:mi>
<mml:mfenced open="(" close=")">
<mml:mrow>
<mml:mi>T</mml:mi>
<mml:mo>&#x2212;</mml:mo>
<mml:mi>&#x3c4;</mml:mi>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
</mml:msup>
<mml:mi>B</mml:mi>
<mml:mi>u</mml:mi>
<mml:mfenced open="(" close=")">
<mml:mrow>
<mml:mi>&#x3c4;</mml:mi>
</mml:mrow>
</mml:mfenced>
<mml:mi>d</mml:mi>
<mml:mi>&#x3c4;</mml:mi>
<mml:mo>.</mml:mo>
</mml:math>
<label>(2)</label>
</disp-formula>Therefore, the discrete time version of Eq. <xref ref-type="disp-formula" rid="e1">1</xref> is given by <xref ref-type="bibr" rid="B36">Phillips et al. (2015)</xref>.<disp-formula id="e3">
<mml:math id="m4">
<mml:mfenced open="[" close="]">
<mml:mrow>
<mml:mtable class="matrix">
<mml:mtr>
<mml:mtd columnalign="center">
<mml:msub>
<mml:mrow>
<mml:mi>v</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>c</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mfenced open="(" close=")">
<mml:mrow>
<mml:mi>k</mml:mi>
<mml:mo>&#x2b;</mml:mo>
<mml:mn>1</mml:mn>
</mml:mrow>
</mml:mfenced>
</mml:mtd>
</mml:mtr>
<mml:mtr>
<mml:mtd columnalign="center">
<mml:mi>v</mml:mi>
<mml:msub>
<mml:mrow>
<mml:mover accent="true">
<mml:mrow>
<mml:mspace width="0.17em"/>
<mml:mspace width="-0.17em"/>
</mml:mrow>
<mml:mo>&#x307;</mml:mo>
</mml:mover>
</mml:mrow>
<mml:mrow>
<mml:mi>c</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mfenced open="(" close=")">
<mml:mrow>
<mml:mi>k</mml:mi>
<mml:mo>&#x2b;</mml:mo>
<mml:mn>1</mml:mn>
</mml:mrow>
</mml:mfenced>
</mml:mtd>
</mml:mtr>
</mml:mtable>
</mml:mrow>
</mml:mfenced>
<mml:mo>&#x3d;</mml:mo>
<mml:mfenced open="[" close="]">
<mml:mrow>
<mml:mtable class="matrix">
<mml:mtr>
<mml:mtd columnalign="center">
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="normal">&#x3a6;</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mn>11</mml:mn>
</mml:mrow>
</mml:msub>
</mml:mtd>
<mml:mtd columnalign="center">
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="normal">&#x3a6;</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mn>12</mml:mn>
</mml:mrow>
</mml:msub>
</mml:mtd>
</mml:mtr>
<mml:mtr>
<mml:mtd columnalign="center">
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="normal">&#x3a6;</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mn>21</mml:mn>
</mml:mrow>
</mml:msub>
</mml:mtd>
<mml:mtd columnalign="center">
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="normal">&#x3a6;</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mn>22</mml:mn>
</mml:mrow>
</mml:msub>
</mml:mtd>
</mml:mtr>
</mml:mtable>
</mml:mrow>
</mml:mfenced>
<mml:mfenced open="[" close="]">
<mml:mrow>
<mml:mtable class="matrix">
<mml:mtr>
<mml:mtd columnalign="center">
<mml:msub>
<mml:mrow>
<mml:mi>v</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>c</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mfenced open="(" close=")">
<mml:mrow>
<mml:mi>k</mml:mi>
</mml:mrow>
</mml:mfenced>
</mml:mtd>
</mml:mtr>
<mml:mtr>
<mml:mtd columnalign="center">
<mml:mi>v</mml:mi>
<mml:msub>
<mml:mrow>
<mml:mover accent="true">
<mml:mrow>
<mml:mspace width="0.17em"/>
<mml:mspace width="-0.17em"/>
</mml:mrow>
<mml:mo>&#x307;</mml:mo>
</mml:mover>
</mml:mrow>
<mml:mrow>
<mml:mi>c</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mfenced open="(" close=")">
<mml:mrow>
<mml:mi>k</mml:mi>
</mml:mrow>
</mml:mfenced>
</mml:mtd>
</mml:mtr>
</mml:mtable>
</mml:mrow>
</mml:mfenced>
<mml:mo>&#x2b;</mml:mo>
<mml:mfenced open="[" close="]">
<mml:mrow>
<mml:mtable class="matrix">
<mml:mtr>
<mml:mtd columnalign="center">
<mml:msub>
<mml:mrow>
<mml:mi>g</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mn>1</mml:mn>
</mml:mrow>
</mml:msub>
</mml:mtd>
</mml:mtr>
<mml:mtr>
<mml:mtd columnalign="center">
<mml:msub>
<mml:mrow>
<mml:mi>g</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mn>2</mml:mn>
</mml:mrow>
</mml:msub>
</mml:mtd>
</mml:mtr>
</mml:mtable>
</mml:mrow>
</mml:mfenced>
<mml:mi mathvariant="normal">&#x394;</mml:mi>
<mml:mi>T</mml:mi>
<mml:mo>,</mml:mo>
</mml:math>
<label>(3)</label>
</disp-formula>where <italic>g</italic>
<sub>1</sub> &#x3d; <italic>E</italic>
<sub>
<italic>n</italic>
</sub>
<italic>T</italic>/2<italic>L</italic>
<sub>
<italic>n</italic>
</sub>
<italic>C</italic>
<sub>
<italic>n</italic>
</sub>, <inline-formula id="inf2">
<mml:math id="m5">
<mml:msub>
<mml:mrow>
<mml:mi>g</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mn>2</mml:mn>
</mml:mrow>
</mml:msub>
<mml:mo>&#x3d;</mml:mo>
<mml:msub>
<mml:mrow>
<mml:mi>E</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>n</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mo>/</mml:mo>
<mml:msub>
<mml:mrow>
<mml:mi>L</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>n</mml:mi>
</mml:mrow>
</mml:msub>
<mml:msub>
<mml:mrow>
<mml:mi>C</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>n</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mo>&#x2212;</mml:mo>
<mml:msub>
<mml:mrow>
<mml:mi>E</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>n</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mo>/</mml:mo>
<mml:mn>2</mml:mn>
<mml:msub>
<mml:mrow>
<mml:mi>L</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>n</mml:mi>
</mml:mrow>
</mml:msub>
<mml:msubsup>
<mml:mrow>
<mml:mi>C</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>n</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mn>2</mml:mn>
</mml:mrow>
</mml:msubsup>
<mml:msub>
<mml:mrow>
<mml:mi>R</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>n</mml:mi>
</mml:mrow>
</mml:msub>
</mml:math>
</inline-formula>, &#x3a6;<sub>11</sub> &#x3d; 1 &#x2212; <italic>T</italic>
<sup>2</sup>/2<italic>L</italic>
<sub>
<italic>n</italic>
</sub>
<italic>C</italic>
<sub>
<italic>n</italic>
</sub>, &#x3a6;<sub>12</sub> &#x3d; &#x2212;<italic>T</italic>/<italic>L</italic>
<sub>
<italic>n</italic>
</sub>
<italic>C</italic>
<sub>
<italic>n</italic>
</sub> &#x2b; <italic>T</italic>
<sup>2</sup>/2<italic>L</italic>
<sub>
<italic>n</italic>
</sub>
<italic>C</italic>
<sub>
<italic>n</italic>
</sub>
<italic>R</italic>
<sub>
<italic>n</italic>
</sub>, &#x3a6;<sub>21</sub> &#x3d; &#x2212;<italic>T</italic>/<italic>L</italic>
<sub>
<italic>n</italic>
</sub>
<italic>C</italic>
<sub>
<italic>n</italic>
</sub> &#x2b; <italic>T</italic>
<sup>2</sup>/2<italic>L</italic>
<sub>
<italic>n</italic>
</sub>
<italic>C</italic>
<sub>
<italic>n</italic>
</sub>
<italic>R</italic>
<sub>
<italic>n</italic>
</sub>, and <inline-formula id="inf3">
<mml:math id="m6">
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="normal">&#x3a6;</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mn>22</mml:mn>
</mml:mrow>
</mml:msub>
<mml:mo>&#x3d;</mml:mo>
<mml:mn>1</mml:mn>
<mml:mo>&#x2212;</mml:mo>
<mml:mi>T</mml:mi>
<mml:mo>/</mml:mo>
<mml:msub>
<mml:mrow>
<mml:mi>R</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>n</mml:mi>
</mml:mrow>
</mml:msub>
<mml:msub>
<mml:mrow>
<mml:mi>C</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>n</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mo>&#x2212;</mml:mo>
<mml:msup>
<mml:mrow>
<mml:mi>T</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mn>2</mml:mn>
</mml:mrow>
</mml:msup>
<mml:mo>/</mml:mo>
<mml:mn>2</mml:mn>
<mml:mi>L</mml:mi>
<mml:mi>C</mml:mi>
<mml:mo>&#x2b;</mml:mo>
<mml:msup>
<mml:mrow>
<mml:mi>T</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mn>2</mml:mn>
</mml:mrow>
</mml:msup>
<mml:mo>/</mml:mo>
<mml:mn>2</mml:mn>
<mml:msubsup>
<mml:mrow>
<mml:mi>R</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>n</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mn>2</mml:mn>
</mml:mrow>
</mml:msubsup>
<mml:msubsup>
<mml:mrow>
<mml:mi>C</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>n</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mn>2</mml:mn>
</mml:mrow>
</mml:msubsup>
</mml:math>
</inline-formula>
</p>
<fig id="F1" position="float">
<label>FIGURE 1</label>
<caption>
<p>Schematic of the single-phase PWM inverter with control loop.</p>
</caption>
<graphic xlink:href="fenrg-11-1272329-g001.tif"/>
</fig>
<p>The PWM generator block, which is the built-in block of Simulink/MATLAB, is used to generate PWM pulses. The triangular carrier signal of the specified carrier frequency is compared with the sinusoidal modulating signal. The modulating signal is shown in <xref ref-type="fig" rid="F2">Figure 2A</xref>. When the modulating signal is greater than the carrier pulse, 1 is high and 0 is low, otherwise. The PWM pulse for the other switch in the same leg is exactly the inverse of pulse 1, as can be seen in the first and second waveform of <xref ref-type="fig" rid="F2">Figure 2B</xref>. For the switches of the second leg of the inverter, the PWM signals are generated by the comparison of the same triangular waveform with the negative of the modulating signal used for arm 1 (180 degrees phase shift).</p>
<fig id="F2" position="float">
<label>FIGURE 2</label>
<caption>
<p>Pulse width-modulated control signal generation. <bold>(A)</bold> Modulating signal <bold>(B)</bold> and control pulses for transistors in the inverter.</p>
</caption>
<graphic xlink:href="fenrg-11-1272329-g002.tif"/>
</fig>
</sec>
<sec id="s5">
<title>5 Digital control techniques for the single-phase inverter</title>
<sec id="s5-1">
<title>5.1 Conventional deadbeat control</title>
<p>The deadbeat controller is used as a feedback controller for an inverter to stabilize the plant. It is a digital controller and also has the ability to track the reference signal by generating suitable PWM pulses for switching of IGBTs. Among all digital controllers, the deadbeat controller has very fast transient response <xref ref-type="bibr" rid="B17">Iskhakov et al. (2013)</xref>. Generally, the deadbeat controller is combined with other periodic digital controllers such as repetitive and resonant controllers to improve their transient response. Due to fast transient response, deadbeat control applications have been applied to power electronics since the 1980s <xref ref-type="bibr" rid="B20">Kukrer and Komurcugil (1999)</xref>. The deadbeat control law is developed from the inverter plant Eq. <xref ref-type="disp-formula" rid="e3">3</xref>. Suppose <italic>y</italic>(<italic>k</italic>) &#x3d; <italic>v</italic>
<sub>
<italic>c</italic>
</sub>(<italic>k</italic>) represents the output signal of the inverter and <italic>y</italic>
<sub>
<italic>ref</italic>
</sub>(<italic>k</italic>) the reference signal. So, the objective is to track the reference signal with zero steady-state error. After taking the z-transform of Eq. <xref ref-type="disp-formula" rid="e3">3</xref>, the output <italic>y</italic>(<italic>k</italic>)becomes<disp-formula id="e4">
<mml:math id="m7">
<mml:mi>y</mml:mi>
<mml:mfenced open="(" close=")">
<mml:mrow>
<mml:mi>k</mml:mi>
</mml:mrow>
</mml:mfenced>
<mml:mo>&#x3d;</mml:mo>
<mml:msub>
<mml:mrow>
<mml:mi>v</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>c</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mfenced open="(" close=")">
<mml:mrow>
<mml:mi>z</mml:mi>
</mml:mrow>
</mml:mfenced>
<mml:mo>&#x3d;</mml:mo>
<mml:mfrac>
<mml:mrow>
<mml:msub>
<mml:mrow>
<mml:mi>g</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mn>1</mml:mn>
</mml:mrow>
</mml:msub>
<mml:mi>z</mml:mi>
<mml:mo>&#x2b;</mml:mo>
<mml:mfenced open="(" close=")">
<mml:mrow>
<mml:msub>
<mml:mrow>
<mml:mi>g</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mn>2</mml:mn>
</mml:mrow>
</mml:msub>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="normal">&#x3a6;</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mn>12</mml:mn>
</mml:mrow>
</mml:msub>
<mml:mo>&#x2212;</mml:mo>
<mml:msub>
<mml:mrow>
<mml:mi>g</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mn>1</mml:mn>
</mml:mrow>
</mml:msub>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="normal">&#x3a6;</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mn>22</mml:mn>
</mml:mrow>
</mml:msub>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:mrow>
<mml:msup>
<mml:mrow>
<mml:mi>z</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mn>2</mml:mn>
</mml:mrow>
</mml:msup>
<mml:mo>&#x2212;</mml:mo>
<mml:mfenced open="(" close=")">
<mml:mrow>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="normal">&#x3a6;</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mn>11</mml:mn>
</mml:mrow>
</mml:msub>
<mml:mo>&#x2b;</mml:mo>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="normal">&#x3a6;</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mn>22</mml:mn>
</mml:mrow>
</mml:msub>
</mml:mrow>
</mml:mfenced>
<mml:mi>z</mml:mi>
<mml:mo>&#x2b;</mml:mo>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="normal">&#x3a6;</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mn>11</mml:mn>
</mml:mrow>
</mml:msub>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="normal">&#x3a6;</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mn>22</mml:mn>
</mml:mrow>
</mml:msub>
<mml:mo>&#x2212;</mml:mo>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="normal">&#x3a6;</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mn>21</mml:mn>
</mml:mrow>
</mml:msub>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="normal">&#x3a6;</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mn>12</mml:mn>
</mml:mrow>
</mml:msub>
</mml:mrow>
</mml:mfrac>
<mml:mi mathvariant="normal">&#x394;</mml:mi>
<mml:mi>T</mml:mi>
<mml:mfenced open="(" close=")">
<mml:mrow>
<mml:mi>z</mml:mi>
</mml:mrow>
</mml:mfenced>
<mml:mo>,</mml:mo>
</mml:math>
<label>(4)</label>
</disp-formula>and the difference equation is given by<disp-formula id="e5">
<mml:math id="m8">
<mml:mi>y</mml:mi>
<mml:mfenced open="(" close=")">
<mml:mrow>
<mml:mi>k</mml:mi>
</mml:mrow>
</mml:mfenced>
<mml:mo>&#x2b;</mml:mo>
<mml:msub>
<mml:mrow>
<mml:mi>a</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mn>1</mml:mn>
</mml:mrow>
</mml:msub>
<mml:mi>y</mml:mi>
<mml:mfenced open="(" close=")">
<mml:mrow>
<mml:mi>k</mml:mi>
<mml:mo>&#x2212;</mml:mo>
<mml:mn>1</mml:mn>
</mml:mrow>
</mml:mfenced>
<mml:mo>&#x2b;</mml:mo>
<mml:msub>
<mml:mrow>
<mml:mi>a</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mn>2</mml:mn>
</mml:mrow>
</mml:msub>
<mml:mi>y</mml:mi>
<mml:mfenced open="(" close=")">
<mml:mrow>
<mml:mi>k</mml:mi>
<mml:mo>&#x2212;</mml:mo>
<mml:mn>2</mml:mn>
</mml:mrow>
</mml:mfenced>
<mml:mo>&#x3d;</mml:mo>
<mml:msub>
<mml:mrow>
<mml:mi>b</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mn>1</mml:mn>
</mml:mrow>
</mml:msub>
<mml:mi>u</mml:mi>
<mml:mfenced open="(" close=")">
<mml:mrow>
<mml:mi>k</mml:mi>
<mml:mo>&#x2212;</mml:mo>
<mml:mn>1</mml:mn>
</mml:mrow>
</mml:mfenced>
<mml:mo>&#x2b;</mml:mo>
<mml:msub>
<mml:mrow>
<mml:mi>b</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mn>2</mml:mn>
</mml:mrow>
</mml:msub>
<mml:mi>u</mml:mi>
<mml:mfenced open="(" close=")">
<mml:mrow>
<mml:mi>k</mml:mi>
<mml:mo>&#x2212;</mml:mo>
<mml:mn>2</mml:mn>
</mml:mrow>
</mml:mfenced>
<mml:mo>,</mml:mo>
</mml:math>
<label>(5)</label>
</disp-formula>where <italic>u</italic>(<italic>k</italic>) &#x3d; &#x394;<italic>T</italic>(<italic>k</italic>)/<italic>T</italic>, <italic>a</italic>
<sub>1</sub> &#x3d; &#x2212;(&#x3a6;<sub>11</sub> &#x2b; &#x3a6;<sub>22</sub>), <italic>a</italic>
<sub>2</sub> &#x3d; &#x3a6;<sub>11</sub>&#x3a6;<sub>22</sub> &#x2212; &#x3a6;<sub>12</sub>&#x3a6;<sub>21</sub>, <italic>b</italic>
<sub>1</sub> &#x3d; <italic>g</italic>
<sub>1</sub>
<italic>T</italic>/<italic>E</italic>, and <italic>b</italic>
<sub>2</sub> &#x3d; (<italic>g</italic>
<sub>2</sub>&#x3a6;<sub>12</sub> &#x2212; <italic>g</italic>
<sub>1</sub>&#x3a6;<sub>22</sub>)<italic>T</italic>/<italic>E</italic>.</p>
<p>Deadbeat or the one sample ahead preview equation is obtained by increasing the value of <italic>k</italic> in Eq. <xref ref-type="disp-formula" rid="e5">5</xref> by 1 and replace <italic>y</italic> (<italic>k</italic> &#x2b; 1) by <italic>y</italic>
<sub>
<italic>ref</italic>
</sub>(<italic>k</italic>). Equation <xref ref-type="disp-formula" rid="e6">6</xref> describes the one sample ahead preview controller, and the deadbeat response with transfer function <italic>H</italic>(<italic>z</italic>) &#x3d; <italic>z</italic>
<sup>&#x2212;1</sup>is achieved;<disp-formula id="e6">
<mml:math id="m9">
<mml:mi>u</mml:mi>
<mml:mfenced open="(" close=")">
<mml:mrow>
<mml:mi>k</mml:mi>
</mml:mrow>
</mml:mfenced>
<mml:mo>&#x3d;</mml:mo>
<mml:mo>&#x2212;</mml:mo>
<mml:mfrac>
<mml:mrow>
<mml:msub>
<mml:mrow>
<mml:mi>b</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mn>2</mml:mn>
</mml:mrow>
</mml:msub>
</mml:mrow>
<mml:mrow>
<mml:msub>
<mml:mrow>
<mml:mi>b</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mn>1</mml:mn>
</mml:mrow>
</mml:msub>
</mml:mrow>
</mml:mfrac>
<mml:mi>u</mml:mi>
<mml:mfenced open="(" close=")">
<mml:mrow>
<mml:mi>k</mml:mi>
<mml:mo>&#x2212;</mml:mo>
<mml:mn>1</mml:mn>
</mml:mrow>
</mml:mfenced>
<mml:mo>&#x2b;</mml:mo>
<mml:mfrac>
<mml:mrow>
<mml:msub>
<mml:mrow>
<mml:mi>a</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mn>1</mml:mn>
</mml:mrow>
</mml:msub>
</mml:mrow>
<mml:mrow>
<mml:msub>
<mml:mrow>
<mml:mi>b</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mn>1</mml:mn>
</mml:mrow>
</mml:msub>
</mml:mrow>
</mml:mfrac>
<mml:mi>y</mml:mi>
<mml:mfenced open="(" close=")">
<mml:mrow>
<mml:mi>k</mml:mi>
</mml:mrow>
</mml:mfenced>
<mml:mo>&#x2b;</mml:mo>
<mml:mfrac>
<mml:mrow>
<mml:msub>
<mml:mrow>
<mml:mi>a</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mn>2</mml:mn>
</mml:mrow>
</mml:msub>
</mml:mrow>
<mml:mrow>
<mml:msub>
<mml:mrow>
<mml:mi>b</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mn>1</mml:mn>
</mml:mrow>
</mml:msub>
</mml:mrow>
</mml:mfrac>
<mml:mi>y</mml:mi>
<mml:mfenced open="(" close=")">
<mml:mrow>
<mml:mi>k</mml:mi>
<mml:mo>&#x2212;</mml:mo>
<mml:mn>1</mml:mn>
</mml:mrow>
</mml:mfenced>
<mml:mo>&#x2b;</mml:mo>
<mml:mfrac>
<mml:mrow>
<mml:mn>1</mml:mn>
</mml:mrow>
<mml:mrow>
<mml:msub>
<mml:mrow>
<mml:mi>b</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mn>1</mml:mn>
</mml:mrow>
</mml:msub>
</mml:mrow>
</mml:mfrac>
<mml:msub>
<mml:mrow>
<mml:mi>y</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi mathvariant="italic">ref</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mfenced open="(" close=")">
<mml:mrow>
<mml:mi>k</mml:mi>
</mml:mrow>
</mml:mfenced>
<mml:mo>,</mml:mo>
</mml:math>
<label>(6)</label>
</disp-formula>
</p>
<p>Thus, from Eq. <xref ref-type="disp-formula" rid="e6">6</xref>, it is clear that the signal <italic>u</italic>(<italic>k</italic>) for generating the PWM pulse depends on the output signal at present and previous samples, the pulse signal of the previous sample, and the reference signal at the present sample. If all these coefficients <italic>a</italic>
<sub>
<italic>i</italic>
</sub> and <italic>b</italic>
<sub>
<italic>i</italic>
</sub> are calculated accurately, then the deadbeat controller is able to generate the output signal nearly equal to the reference signal. However, the deadbeat controller is more sensitive to measurement noise and parameter uncertainties, which may cause plant stability issues <xref ref-type="bibr" rid="B42">Wang et al. (2015)</xref>.</p>
</sec>
<sec id="s5-2">
<title>5.2 Resonant control of the single-phase inverter</title>
<p>Voltage and current distortions are the most critical issues in the case of the grid-tied inverter <xref ref-type="bibr" rid="B7">Choi et al. (2018)</xref>. Therefore, an accurate control scheme is required for achieving low THD in output current and voltage. Inverters use the applications of the PR controller to generate a sinusoidal voltage and current waveforms with lower THD. Therefore, the PR controller can be adapted as an efficient current/voltage regulator for high-quality sinusoid of grid-tied inverter systems <xref ref-type="bibr" rid="B39">Silwal and Karimi-Ghartemani (2016)</xref>. The block diagram of the controller in <xref ref-type="fig" rid="F1">Figure 1</xref> depicts a PR controller with a combination of the feedback controller for the single-phase PWM inverter. It yields an efficient signal <italic>u</italic>(<italic>k</italic>) to generate the PWM pulse for switching of IGBTs to provide the desired frequency output signal.</p>
<p>In this work, discrete time resonant controllers are applied to the inverter for achieving the desired results. The transfer function of the discrete time PR controller can be written as<disp-formula id="e7">
<mml:math id="m10">
<mml:mi>G</mml:mi>
<mml:mfenced open="(" close=")">
<mml:mrow>
<mml:mi>z</mml:mi>
</mml:mrow>
</mml:mfenced>
<mml:mo>&#x3d;</mml:mo>
<mml:msub>
<mml:mrow>
<mml:mi>k</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>p</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mo>&#x2b;</mml:mo>
<mml:msub>
<mml:mrow>
<mml:mi>k</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>i</mml:mi>
</mml:mrow>
</mml:msub>
<mml:msub>
<mml:mrow>
<mml:mi>R</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>h</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mfenced open="(" close=")">
<mml:mrow>
<mml:mi>z</mml:mi>
</mml:mrow>
</mml:mfenced>
<mml:mo>.</mml:mo>
</mml:math>
<label>(7)</label>
</disp-formula>
</p>
</sec>
</sec>
<sec id="s6">
<title>6 Efficient digital PR controller for the PWM inverter</title>
<p>The transfer function of the continuous time PR controller is given by<disp-formula id="e8">
<mml:math id="m11">
<mml:mi>G</mml:mi>
<mml:mfenced open="(" close=")">
<mml:mrow>
<mml:mi>s</mml:mi>
</mml:mrow>
</mml:mfenced>
<mml:mo>&#x3d;</mml:mo>
<mml:msub>
<mml:mrow>
<mml:mi>K</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>p</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mo>&#x2b;</mml:mo>
<mml:msub>
<mml:mrow>
<mml:mi>K</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>i</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mfrac>
<mml:mrow>
<mml:mi>s</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:msup>
<mml:mrow>
<mml:mi>s</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mn>2</mml:mn>
</mml:mrow>
</mml:msup>
<mml:mo>&#x2b;</mml:mo>
<mml:msup>
<mml:mrow>
<mml:mi>h</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mn>2</mml:mn>
</mml:mrow>
</mml:msup>
<mml:msubsup>
<mml:mrow>
<mml:mi>w</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mn>1</mml:mn>
</mml:mrow>
<mml:mrow>
<mml:mn>2</mml:mn>
</mml:mrow>
</mml:msubsup>
</mml:mrow>
</mml:mfrac>
<mml:mo>,</mml:mo>
</mml:math>
<label>(8)</label>
</disp-formula>where <italic>K</italic>
<sub>
<italic>p</italic>
</sub>, <italic>K</italic>
<sub>
<italic>i</italic>
</sub>, and <italic>h</italic> represent proportional gain, integral gain, and harmonics order, respectively. The double integration-based controller, due to the ease of frequency adaptation, is used for implementation of the PR controller <xref ref-type="bibr" rid="B9">Das and Barai (2021)</xref>. <xref ref-type="fig" rid="F3">Figure 3</xref> presents the dual integration-based implementation of the continuous time resonant controller, where the input <italic>hw</italic>
<sub>1</sub> represents the desired resonant frequency to be tracked <xref ref-type="bibr" rid="B34">Parvez et al. (2016)</xref>. However, if various frequencies need to be tracked simultaneously, several resonant controllers can be implemented in parallel, and the transfer function of multiple resonant controllers is<disp-formula id="e9">
<mml:math id="m12">
<mml:msub>
<mml:mrow>
<mml:mi>G</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>c</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mfenced open="(" close=")">
<mml:mrow>
<mml:mi>s</mml:mi>
</mml:mrow>
</mml:mfenced>
<mml:mo>&#x3d;</mml:mo>
<mml:msub>
<mml:mrow>
<mml:mi>K</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>p</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mo>&#x2b;</mml:mo>
<mml:munderover accentunder="false" accent="true">
<mml:mrow>
<mml:mo>&#x2211;</mml:mo>
</mml:mrow>
<mml:mrow>
<mml:mi>h</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:msub>
<mml:mrow>
<mml:mi>n</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>h</mml:mi>
</mml:mrow>
</mml:msub>
</mml:mrow>
</mml:munderover>
<mml:msub>
<mml:mrow>
<mml:mi>K</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>h</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mfrac>
<mml:mrow>
<mml:mi>s</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:msup>
<mml:mrow>
<mml:mi>s</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mn>2</mml:mn>
</mml:mrow>
</mml:msup>
<mml:mo>&#x2b;</mml:mo>
<mml:msup>
<mml:mrow>
<mml:mi>h</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mn>2</mml:mn>
</mml:mrow>
</mml:msup>
<mml:msubsup>
<mml:mrow>
<mml:mi>w</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mn>1</mml:mn>
</mml:mrow>
<mml:mrow>
<mml:mn>2</mml:mn>
</mml:mrow>
</mml:msubsup>
</mml:mrow>
</mml:mfrac>
<mml:mo>,</mml:mo>
</mml:math>
<label>(9)</label>
</disp-formula>where <italic>n</italic>
<sub>
<italic>h</italic>
</sub> is the highest harmonic order and <italic>K</italic>
<sub>
<italic>h</italic>
</sub> is the integral gain at <italic>h</italic>
<sup>
<italic>th</italic>
</sup> harmonic.</p>
<fig id="F3" position="float">
<label>FIGURE 3</label>
<caption>
<p>Block diagram of the double integration method-based PR controller.</p>
</caption>
<graphic xlink:href="fenrg-11-1272329-g003.tif"/>
</fig>
<p>The phase and magnitude response of a PR controller (314.16 rad/sec&#x3d; 50 Hz) is presented in <xref ref-type="fig" rid="F4">Figure 4</xref>. It can be observed that the PR controller ideally provides very high gain at the resonant frequency, i.e., 50 Hz only.</p>
<fig id="F4" position="float">
<label>FIGURE 4</label>
<caption>
<p>Bode plot of an ideal resonant controller, at <italic>w</italic> &#x3d;314.16 rad/s and f &#x3d; 50 Hz.</p>
</caption>
<graphic xlink:href="fenrg-11-1272329-g004.tif"/>
</fig>
<p>The transfer function of the PR controller, given by <xref ref-type="disp-formula" rid="e9">(9)</xref>, can be discretized using various methods, such as ZOH, FOH, II, ZPM, forward Euler (FE), backward Euler (BE), Tustin (T), and Tustin with pre-warping (TP) <xref ref-type="bibr" rid="B48">Yepes et al. (2009)</xref>. The PR controller is very sensitive to the discretization process due to its narrow band at resonance frequency <xref ref-type="bibr" rid="B47">Yepes et al. (2010)</xref>. The two integrators in <xref ref-type="fig" rid="F3">Figure 3</xref>, the forward and backward, are commonly discretized by using the Euler forward and backward discretization method <xref ref-type="bibr" rid="B13">Ghoshal and John (2017)</xref>. Djordje in <xref ref-type="bibr" rid="B40">Stojic (2016)</xref> also suggested using modified Tustin or backward Euler simultaneously for discretization of both integrators. However, ZOH, FOH, II, and ZPM methods are simultaneously applied to both integrators. <xref ref-type="table" rid="T1">Table 1</xref> shows different discretization methods and their corresponding transfer function used for digital implementation of the forward integrator. The integral part of the PR controller can be designated by <italic>R</italic>
<sub>
<italic>h</italic>
</sub>(<italic>s</italic>).</p>
<table-wrap id="T1" position="float">
<label>TABLE 1</label>
<caption>
<p>Discretization of the integrator in the forward path <xref ref-type="bibr" rid="B48">Yepes et al. (2009)</xref>.</p>
</caption>
<table>
<thead valign="top">
<tr>
<th align="center">S.No</th>
<th align="center">Discretized <italic>R</italic>
<sub>
<italic>h</italic>
</sub>
</th>
</tr>
</thead>
<tbody valign="top">
<tr>
<td align="center">1</td>
<td align="center">
<inline-formula id="inf4">
<mml:math id="m13">
<mml:msubsup>
<mml:mrow>
<mml:mi>R</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>h</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi mathvariant="italic">zoh</mml:mi>
</mml:mrow>
</mml:msubsup>
<mml:mrow>
<mml:mo stretchy="false">(</mml:mo>
<mml:mrow>
<mml:mi>z</mml:mi>
</mml:mrow>
<mml:mo stretchy="false">)</mml:mo>
</mml:mrow>
<mml:mo>&#x3d;</mml:mo>
<mml:mfrac>
<mml:mrow>
<mml:mi>sin</mml:mi>
<mml:mrow>
<mml:mo stretchy="false">(</mml:mo>
<mml:mrow>
<mml:mi>h</mml:mi>
<mml:msub>
<mml:mrow>
<mml:mi>w</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mn>1</mml:mn>
</mml:mrow>
</mml:msub>
<mml:msub>
<mml:mrow>
<mml:mi>T</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>s</mml:mi>
</mml:mrow>
</mml:msub>
</mml:mrow>
<mml:mo stretchy="false">)</mml:mo>
</mml:mrow>
</mml:mrow>
<mml:mrow>
<mml:mi>h</mml:mi>
<mml:msub>
<mml:mrow>
<mml:mi>w</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mn>1</mml:mn>
</mml:mrow>
</mml:msub>
</mml:mrow>
</mml:mfrac>
<mml:mfrac>
<mml:mrow>
<mml:msup>
<mml:mrow>
<mml:mi>z</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mo>&#x2212;</mml:mo>
<mml:mn>1</mml:mn>
</mml:mrow>
</mml:msup>
<mml:mo>&#x2212;</mml:mo>
<mml:msup>
<mml:mrow>
<mml:mi>z</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mo>&#x2212;</mml:mo>
<mml:mn>2</mml:mn>
</mml:mrow>
</mml:msup>
</mml:mrow>
<mml:mrow>
<mml:mn>1</mml:mn>
<mml:mo>&#x2212;</mml:mo>
<mml:mn>2</mml:mn>
<mml:msup>
<mml:mrow>
<mml:mi>z</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mo>&#x2212;</mml:mo>
<mml:mn>1</mml:mn>
</mml:mrow>
</mml:msup>
<mml:mo>&#x2061;</mml:mo>
<mml:mi>cos</mml:mi>
<mml:mo stretchy="false">(</mml:mo>
<mml:mrow>
<mml:mi>h</mml:mi>
<mml:msub>
<mml:mrow>
<mml:mi>w</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mn>1</mml:mn>
</mml:mrow>
</mml:msub>
</mml:mrow>
<mml:msub>
<mml:mrow>
<mml:mi>T</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>s</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mo>&#x2b;</mml:mo>
<mml:msup>
<mml:mrow>
<mml:mi>z</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mrow>
<mml:mo>&#x2212;</mml:mo>
<mml:mn>2</mml:mn>
</mml:mrow>
</mml:mrow>
</mml:msup>
<mml:mo stretchy="false">)</mml:mo>
</mml:mrow>
</mml:mfrac>
</mml:math>
</inline-formula>
</td>
</tr>
<tr>
<td align="center">2</td>
<td align="center">
<inline-formula id="inf5">
<mml:math id="m14">
<mml:msubsup>
<mml:mrow>
<mml:mi>R</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>h</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi mathvariant="italic">foh</mml:mi>
</mml:mrow>
</mml:msubsup>
<mml:mrow>
<mml:mo stretchy="false">(</mml:mo>
<mml:mrow>
<mml:mi>z</mml:mi>
</mml:mrow>
<mml:mo stretchy="false">)</mml:mo>
</mml:mrow>
<mml:mo>&#x3d;</mml:mo>
<mml:mfrac>
<mml:mrow>
<mml:mn>1</mml:mn>
<mml:mo>&#x2212;</mml:mo>
<mml:mi>cos</mml:mi>
<mml:mrow>
<mml:mo stretchy="false">(</mml:mo>
<mml:mrow>
<mml:mi>h</mml:mi>
<mml:msub>
<mml:mrow>
<mml:mi>w</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mn>1</mml:mn>
</mml:mrow>
</mml:msub>
<mml:msub>
<mml:mrow>
<mml:mi>T</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>s</mml:mi>
</mml:mrow>
</mml:msub>
</mml:mrow>
<mml:mo stretchy="false">)</mml:mo>
</mml:mrow>
</mml:mrow>
<mml:mrow>
<mml:msup>
<mml:mrow>
<mml:mi>h</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mn>2</mml:mn>
</mml:mrow>
</mml:msup>
<mml:msub>
<mml:mrow>
<mml:mi>w</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mn>1</mml:mn>
</mml:mrow>
</mml:msub>
<mml:msub>
<mml:mrow>
<mml:mi>T</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>s</mml:mi>
</mml:mrow>
</mml:msub>
</mml:mrow>
</mml:mfrac>
<mml:mfrac>
<mml:mrow>
<mml:mn>1</mml:mn>
<mml:mo>&#x2212;</mml:mo>
<mml:msup>
<mml:mrow>
<mml:mi>z</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mo>&#x2212;</mml:mo>
<mml:mn>2</mml:mn>
</mml:mrow>
</mml:msup>
</mml:mrow>
<mml:mrow>
<mml:mn>1</mml:mn>
<mml:mo>&#x2212;</mml:mo>
<mml:mn>2</mml:mn>
<mml:msup>
<mml:mrow>
<mml:mi>z</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mo>&#x2212;</mml:mo>
<mml:mn>1</mml:mn>
</mml:mrow>
</mml:msup>
<mml:mo>&#x2061;</mml:mo>
<mml:mi>cos</mml:mi>
<mml:mrow>
<mml:mo stretchy="false">(</mml:mo>
<mml:mrow>
<mml:mi>h</mml:mi>
<mml:msub>
<mml:mrow>
<mml:mi>w</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mn>1</mml:mn>
</mml:mrow>
</mml:msub>
<mml:msub>
<mml:mrow>
<mml:mi>T</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>s</mml:mi>
</mml:mrow>
</mml:msub>
</mml:mrow>
<mml:mo stretchy="false">)</mml:mo>
</mml:mrow>
<mml:mo>&#x2b;</mml:mo>
<mml:msup>
<mml:mrow>
<mml:mi>z</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mo>&#x2212;</mml:mo>
<mml:mn>2</mml:mn>
</mml:mrow>
</mml:msup>
</mml:mrow>
</mml:mfrac>
</mml:math>
</inline-formula>
</td>
</tr>
<tr>
<td align="center">3</td>
<td align="center">
<inline-formula id="inf6">
<mml:math id="m15">
<mml:msubsup>
<mml:mrow>
<mml:mi>R</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>h</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>f</mml:mi>
</mml:mrow>
</mml:msubsup>
<mml:mrow>
<mml:mo stretchy="false">(</mml:mo>
<mml:mrow>
<mml:mi>z</mml:mi>
</mml:mrow>
<mml:mo stretchy="false">)</mml:mo>
</mml:mrow>
<mml:mo>&#x3d;</mml:mo>
<mml:msub>
<mml:mrow>
<mml:mi>T</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>s</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mfrac>
<mml:mrow>
<mml:msup>
<mml:mrow>
<mml:mi>z</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mo>&#x2212;</mml:mo>
<mml:mn>1</mml:mn>
</mml:mrow>
</mml:msup>
<mml:mo>&#x2212;</mml:mo>
<mml:msup>
<mml:mrow>
<mml:mi>z</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mo>&#x2212;</mml:mo>
<mml:mn>2</mml:mn>
</mml:mrow>
</mml:msup>
</mml:mrow>
<mml:mrow>
<mml:mn>1</mml:mn>
<mml:mo>&#x2212;</mml:mo>
<mml:mn>2</mml:mn>
<mml:msup>
<mml:mrow>
<mml:mi>z</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mo>&#x2212;</mml:mo>
<mml:mn>1</mml:mn>
</mml:mrow>
</mml:msup>
<mml:mo>&#x2b;</mml:mo>
<mml:msup>
<mml:mrow>
<mml:mi>z</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mo>&#x2212;</mml:mo>
<mml:mn>2</mml:mn>
</mml:mrow>
</mml:msup>
<mml:mrow>
<mml:mo stretchy="false">(</mml:mo>
<mml:mrow>
<mml:msup>
<mml:mrow>
<mml:mi>h</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mn>2</mml:mn>
</mml:mrow>
</mml:msup>
<mml:msubsup>
<mml:mrow>
<mml:mi>w</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mn>1</mml:mn>
</mml:mrow>
<mml:mrow>
<mml:mn>2</mml:mn>
</mml:mrow>
</mml:msubsup>
<mml:msubsup>
<mml:mrow>
<mml:mi>T</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>s</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mn>2</mml:mn>
</mml:mrow>
</mml:msubsup>
<mml:mo>&#x2b;</mml:mo>
<mml:mn>1</mml:mn>
</mml:mrow>
<mml:mo stretchy="false">)</mml:mo>
</mml:mrow>
</mml:mrow>
</mml:mfrac>
</mml:math>
</inline-formula>
</td>
</tr>
<tr>
<td align="center">4</td>
<td align="center">
<inline-formula id="inf7">
<mml:math id="m16">
<mml:msubsup>
<mml:mrow>
<mml:mi>R</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>h</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>b</mml:mi>
</mml:mrow>
</mml:msubsup>
<mml:mrow>
<mml:mo stretchy="false">(</mml:mo>
<mml:mrow>
<mml:mi>z</mml:mi>
</mml:mrow>
<mml:mo stretchy="false">)</mml:mo>
</mml:mrow>
<mml:mo>&#x3d;</mml:mo>
<mml:msub>
<mml:mrow>
<mml:mi>T</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>s</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mfrac>
<mml:mrow>
<mml:mn>1</mml:mn>
<mml:mo>&#x2212;</mml:mo>
<mml:msup>
<mml:mrow>
<mml:mi>z</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mo>&#x2212;</mml:mo>
<mml:mn>1</mml:mn>
</mml:mrow>
</mml:msup>
</mml:mrow>
<mml:mrow>
<mml:mrow>
<mml:mo stretchy="false">(</mml:mo>
<mml:mrow>
<mml:msup>
<mml:mrow>
<mml:mi>h</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mn>2</mml:mn>
</mml:mrow>
</mml:msup>
<mml:msubsup>
<mml:mrow>
<mml:mi>w</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mn>1</mml:mn>
</mml:mrow>
<mml:mrow>
<mml:mn>2</mml:mn>
</mml:mrow>
</mml:msubsup>
<mml:msubsup>
<mml:mrow>
<mml:mi>T</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>s</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mn>2</mml:mn>
</mml:mrow>
</mml:msubsup>
<mml:mo>&#x2b;</mml:mo>
<mml:mn>1</mml:mn>
</mml:mrow>
<mml:mo stretchy="false">)</mml:mo>
</mml:mrow>
<mml:mo>&#x2212;</mml:mo>
<mml:mn>2</mml:mn>
<mml:msup>
<mml:mrow>
<mml:mi>z</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mo>&#x2212;</mml:mo>
<mml:mn>1</mml:mn>
</mml:mrow>
</mml:msup>
<mml:mo>&#x2b;</mml:mo>
<mml:msup>
<mml:mrow>
<mml:mi>z</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mo>&#x2212;</mml:mo>
</mml:mrow>
</mml:msup>
<mml:mn>2</mml:mn>
</mml:mrow>
</mml:mfrac>
</mml:math>
</inline-formula>
</td>
</tr>
<tr>
<td align="center">5</td>
<td align="center">
<inline-formula id="inf8">
<mml:math id="m17">
<mml:msubsup>
<mml:mrow>
<mml:mi>R</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>h</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>t</mml:mi>
</mml:mrow>
</mml:msubsup>
<mml:mrow>
<mml:mo stretchy="false">(</mml:mo>
<mml:mrow>
<mml:mi>z</mml:mi>
</mml:mrow>
<mml:mo stretchy="false">)</mml:mo>
</mml:mrow>
<mml:mo>&#x3d;</mml:mo>
<mml:mn>2</mml:mn>
<mml:msub>
<mml:mrow>
<mml:mi>T</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>s</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mfrac>
<mml:mrow>
<mml:mn>1</mml:mn>
<mml:mo>&#x2212;</mml:mo>
<mml:msup>
<mml:mrow>
<mml:mi>z</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mo>&#x2212;</mml:mo>
<mml:mn>2</mml:mn>
</mml:mrow>
</mml:msup>
</mml:mrow>
<mml:mrow>
<mml:mrow>
<mml:mo stretchy="false">(</mml:mo>
<mml:mrow>
<mml:msup>
<mml:mrow>
<mml:mi>h</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mn>2</mml:mn>
</mml:mrow>
</mml:msup>
<mml:msubsup>
<mml:mrow>
<mml:mi>w</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mn>1</mml:mn>
</mml:mrow>
<mml:mrow>
<mml:mn>2</mml:mn>
</mml:mrow>
</mml:msubsup>
<mml:msubsup>
<mml:mrow>
<mml:mi>T</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>s</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mn>2</mml:mn>
</mml:mrow>
</mml:msubsup>
</mml:mrow>
<mml:mo stretchy="false">)</mml:mo>
</mml:mrow>
<mml:mo>&#x2b;</mml:mo>
<mml:msup>
<mml:mrow>
<mml:mi>z</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mo>&#x2212;</mml:mo>
<mml:mn>1</mml:mn>
</mml:mrow>
</mml:msup>
<mml:mrow>
<mml:mo stretchy="false">(</mml:mo>
<mml:mrow>
<mml:mn>2</mml:mn>
<mml:msup>
<mml:mrow>
<mml:mi>h</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mn>2</mml:mn>
</mml:mrow>
</mml:msup>
<mml:msubsup>
<mml:mrow>
<mml:mi>w</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mn>1</mml:mn>
</mml:mrow>
<mml:mrow>
<mml:mn>2</mml:mn>
</mml:mrow>
</mml:msubsup>
<mml:msubsup>
<mml:mrow>
<mml:mi>T</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>s</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mn>2</mml:mn>
</mml:mrow>
</mml:msubsup>
<mml:mo>&#x2212;</mml:mo>
<mml:mn>8</mml:mn>
</mml:mrow>
<mml:mo stretchy="false">)</mml:mo>
</mml:mrow>
<mml:mo>&#x2b;</mml:mo>
<mml:msup>
<mml:mrow>
<mml:mi>z</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mo>&#x2212;</mml:mo>
<mml:mn>2</mml:mn>
</mml:mrow>
</mml:msup>
<mml:mrow>
<mml:mo stretchy="false">(</mml:mo>
<mml:mrow>
<mml:msup>
<mml:mrow>
<mml:mi>h</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mn>2</mml:mn>
</mml:mrow>
</mml:msup>
<mml:msubsup>
<mml:mrow>
<mml:mi>w</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mn>1</mml:mn>
</mml:mrow>
<mml:mrow>
<mml:mn>2</mml:mn>
</mml:mrow>
</mml:msubsup>
<mml:msubsup>
<mml:mrow>
<mml:mi>T</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>s</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mn>2</mml:mn>
</mml:mrow>
</mml:msubsup>
<mml:mo>&#x2b;</mml:mo>
<mml:mn>4</mml:mn>
</mml:mrow>
<mml:mo stretchy="false">)</mml:mo>
</mml:mrow>
</mml:mrow>
</mml:mfrac>
</mml:math>
</inline-formula>
</td>
</tr>
<tr>
<td align="center">6</td>
<td align="center">
<inline-formula id="inf9">
<mml:math id="m18">
<mml:msubsup>
<mml:mrow>
<mml:mi>R</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>h</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi mathvariant="italic">zpm</mml:mi>
</mml:mrow>
</mml:msubsup>
<mml:mrow>
<mml:mo stretchy="false">(</mml:mo>
<mml:mrow>
<mml:mi>z</mml:mi>
</mml:mrow>
<mml:mo stretchy="false">)</mml:mo>
</mml:mrow>
<mml:mo>&#x3d;</mml:mo>
<mml:msub>
<mml:mrow>
<mml:mi>K</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>d</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mfrac>
<mml:mrow>
<mml:msup>
<mml:mrow>
<mml:mi>z</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mo>&#x2212;</mml:mo>
<mml:mn>1</mml:mn>
</mml:mrow>
</mml:msup>
<mml:mo>&#x2212;</mml:mo>
<mml:msup>
<mml:mrow>
<mml:mi>z</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mo>&#x2212;</mml:mo>
<mml:mn>2</mml:mn>
</mml:mrow>
</mml:msup>
</mml:mrow>
<mml:mrow>
<mml:mn>1</mml:mn>
<mml:mo>&#x2212;</mml:mo>
<mml:mn>2</mml:mn>
<mml:msup>
<mml:mrow>
<mml:mi>z</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mo>&#x2212;</mml:mo>
<mml:mn>1</mml:mn>
</mml:mrow>
</mml:msup>
<mml:mo>&#x2061;</mml:mo>
<mml:mi>cos</mml:mi>
<mml:mrow>
<mml:mo stretchy="false">(</mml:mo>
<mml:mrow>
<mml:mi>h</mml:mi>
<mml:msub>
<mml:mrow>
<mml:mi>w</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mn>1</mml:mn>
</mml:mrow>
</mml:msub>
<mml:msub>
<mml:mrow>
<mml:mi>T</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>s</mml:mi>
</mml:mrow>
</mml:msub>
</mml:mrow>
<mml:mo stretchy="false">)</mml:mo>
</mml:mrow>
<mml:mo>&#x2b;</mml:mo>
<mml:msup>
<mml:mrow>
<mml:mi>z</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mo>&#x2212;</mml:mo>
<mml:mn>2</mml:mn>
</mml:mrow>
</mml:msup>
</mml:mrow>
</mml:mfrac>
</mml:math>
</inline-formula>
</td>
</tr>
<tr>
<td align="center">7</td>
<td align="center">
<inline-formula id="inf10">
<mml:math id="m19">
<mml:msubsup>
<mml:mrow>
<mml:mi>R</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>h</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi mathvariant="italic">imp</mml:mi>
</mml:mrow>
</mml:msubsup>
<mml:mrow>
<mml:mo stretchy="false">(</mml:mo>
<mml:mrow>
<mml:mi>z</mml:mi>
</mml:mrow>
<mml:mo stretchy="false">)</mml:mo>
</mml:mrow>
<mml:mo>&#x3d;</mml:mo>
<mml:msub>
<mml:mrow>
<mml:mi>T</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>s</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mfrac>
<mml:mrow>
<mml:mn>1</mml:mn>
<mml:mo>&#x2212;</mml:mo>
<mml:msup>
<mml:mrow>
<mml:mi>z</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mo>&#x2212;</mml:mo>
<mml:mn>1</mml:mn>
</mml:mrow>
</mml:msup>
<mml:mo>&#x2061;</mml:mo>
<mml:mi>cos</mml:mi>
<mml:mrow>
<mml:mo stretchy="false">(</mml:mo>
<mml:mrow>
<mml:mi>h</mml:mi>
<mml:msub>
<mml:mrow>
<mml:mi>w</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mn>1</mml:mn>
</mml:mrow>
</mml:msub>
<mml:msub>
<mml:mrow>
<mml:mi>T</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>s</mml:mi>
</mml:mrow>
</mml:msub>
</mml:mrow>
<mml:mo stretchy="false">)</mml:mo>
</mml:mrow>
</mml:mrow>
<mml:mrow>
<mml:mn>1</mml:mn>
<mml:mo>&#x2212;</mml:mo>
<mml:mn>2</mml:mn>
<mml:msup>
<mml:mrow>
<mml:mi>z</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mo>&#x2212;</mml:mo>
<mml:mn>1</mml:mn>
</mml:mrow>
</mml:msup>
<mml:mo>&#x2061;</mml:mo>
<mml:mi>cos</mml:mi>
<mml:mrow>
<mml:mo stretchy="false">(</mml:mo>
<mml:mrow>
<mml:mi>h</mml:mi>
<mml:msub>
<mml:mrow>
<mml:mi>w</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mn>1</mml:mn>
</mml:mrow>
</mml:msub>
<mml:msub>
<mml:mrow>
<mml:mi>T</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>s</mml:mi>
</mml:mrow>
</mml:msub>
</mml:mrow>
<mml:mo stretchy="false">)</mml:mo>
</mml:mrow>
<mml:mo>&#x2b;</mml:mo>
<mml:msup>
<mml:mrow>
<mml:mi>z</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mo>&#x2212;</mml:mo>
<mml:mn>2</mml:mn>
</mml:mrow>
</mml:msup>
</mml:mrow>
</mml:mfrac>
</mml:math>
</inline-formula>
</td>
</tr>
</tbody>
</table>
</table-wrap>
<p>As some of the discretization methods given in <xref ref-type="table" rid="T1">Table 1</xref> have same denominators and only the numerators are different, therefore, based on the denominator, the transfer functions used for digital implementation of PR controllers can be classified into five groups given in <xref ref-type="table" rid="T2">Table 2</xref> <xref ref-type="bibr" rid="B49">Yepes et al. (2011)</xref>.</p>
<table-wrap id="T2" position="float">
<label>TABLE 2</label>
<caption>
<p>Grouping of the digital resonant controller.</p>
</caption>
<table>
<thead valign="top">
<tr>
<th align="center">Group</th>
<th align="center">Expression</th>
<th align="center">Denominator</th>
</tr>
</thead>
<tbody valign="top">
<tr>
<td align="center">A</td>
<td align="center">
<inline-formula id="inf11">
<mml:math id="m20">
<mml:msubsup>
<mml:mrow>
<mml:mi>R</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>h</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>f</mml:mi>
</mml:mrow>
</mml:msubsup>
<mml:mrow>
<mml:mo stretchy="false">(</mml:mo>
<mml:mrow>
<mml:mi>z</mml:mi>
</mml:mrow>
<mml:mo stretchy="false">)</mml:mo>
</mml:mrow>
</mml:math>
</inline-formula>
</td>
<td align="center">
<inline-formula id="inf12">
<mml:math id="m21">
<mml:mn>1</mml:mn>
<mml:mo>&#x2212;</mml:mo>
<mml:mn>2</mml:mn>
<mml:msup>
<mml:mrow>
<mml:mi>z</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mo>&#x2212;</mml:mo>
</mml:mrow>
</mml:msup>
<mml:mn>1</mml:mn>
<mml:mo>&#x2b;</mml:mo>
<mml:msup>
<mml:mrow>
<mml:mi>z</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mo>&#x2212;</mml:mo>
</mml:mrow>
</mml:msup>
<mml:mn>2</mml:mn>
<mml:mrow>
<mml:mo stretchy="false">(</mml:mo>
<mml:mrow>
<mml:msup>
<mml:mrow>
<mml:mi>h</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mn>2</mml:mn>
</mml:mrow>
</mml:msup>
<mml:msubsup>
<mml:mrow>
<mml:mi>w</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mn>1</mml:mn>
</mml:mrow>
<mml:mrow>
<mml:mn>2</mml:mn>
</mml:mrow>
</mml:msubsup>
<mml:msubsup>
<mml:mrow>
<mml:mi>T</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>s</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mn>2</mml:mn>
</mml:mrow>
</mml:msubsup>
<mml:mo>&#x2b;</mml:mo>
<mml:mn>1</mml:mn>
</mml:mrow>
<mml:mo stretchy="false">)</mml:mo>
</mml:mrow>
</mml:math>
</inline-formula>
</td>
</tr>
<tr>
<td align="center">B</td>
<td align="center">
<inline-formula id="inf13">
<mml:math id="m22">
<mml:msubsup>
<mml:mrow>
<mml:mi>R</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>h</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>b</mml:mi>
</mml:mrow>
</mml:msubsup>
<mml:mrow>
<mml:mo stretchy="false">(</mml:mo>
<mml:mrow>
<mml:mi>z</mml:mi>
</mml:mrow>
<mml:mo stretchy="false">)</mml:mo>
</mml:mrow>
</mml:math>
</inline-formula>
</td>
<td align="center">
<inline-formula id="inf14">
<mml:math id="m23">
<mml:mrow>
<mml:mo stretchy="false">(</mml:mo>
<mml:mrow>
<mml:msup>
<mml:mrow>
<mml:mi>h</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mn>2</mml:mn>
</mml:mrow>
</mml:msup>
<mml:msubsup>
<mml:mrow>
<mml:mi>w</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mn>1</mml:mn>
</mml:mrow>
<mml:mrow>
<mml:mn>2</mml:mn>
</mml:mrow>
</mml:msubsup>
<mml:msubsup>
<mml:mrow>
<mml:mi>T</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>s</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mn>2</mml:mn>
</mml:mrow>
</mml:msubsup>
<mml:mo>&#x2b;</mml:mo>
<mml:mn>1</mml:mn>
</mml:mrow>
<mml:mo stretchy="false">)</mml:mo>
</mml:mrow>
<mml:mo>&#x2212;</mml:mo>
<mml:mn>2</mml:mn>
<mml:msup>
<mml:mrow>
<mml:mi>z</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mo>&#x2212;</mml:mo>
</mml:mrow>
</mml:msup>
<mml:mn>1</mml:mn>
<mml:mo>&#x2b;</mml:mo>
<mml:msup>
<mml:mrow>
<mml:mi>z</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mo>&#x2212;</mml:mo>
</mml:mrow>
</mml:msup>
<mml:mn>2</mml:mn>
</mml:math>
</inline-formula>
</td>
</tr>
<tr>
<td align="center">C</td>
<td align="center">
<inline-formula id="inf15">
<mml:math id="m24">
<mml:msubsup>
<mml:mrow>
<mml:mi>R</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>h</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>t</mml:mi>
</mml:mrow>
</mml:msubsup>
<mml:mrow>
<mml:mo stretchy="false">(</mml:mo>
<mml:mrow>
<mml:mi>z</mml:mi>
</mml:mrow>
<mml:mo stretchy="false">)</mml:mo>
</mml:mrow>
</mml:math>
</inline-formula>
</td>
<td align="center">
<inline-formula id="inf16">
<mml:math id="m25">
<mml:mrow>
<mml:mo stretchy="false">(</mml:mo>
<mml:mrow>
<mml:msup>
<mml:mrow>
<mml:mi>h</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mn>2</mml:mn>
</mml:mrow>
</mml:msup>
<mml:msubsup>
<mml:mrow>
<mml:mi>w</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mn>1</mml:mn>
</mml:mrow>
<mml:mrow>
<mml:mn>2</mml:mn>
</mml:mrow>
</mml:msubsup>
<mml:msubsup>
<mml:mrow>
<mml:mi>T</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>s</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mn>2</mml:mn>
</mml:mrow>
</mml:msubsup>
</mml:mrow>
<mml:mo stretchy="false">)</mml:mo>
</mml:mrow>
<mml:mo>&#x2b;</mml:mo>
<mml:msup>
<mml:mrow>
<mml:mi>z</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mo>&#x2212;</mml:mo>
<mml:mn>1</mml:mn>
</mml:mrow>
</mml:msup>
<mml:mrow>
<mml:mo stretchy="false">(</mml:mo>
<mml:mrow>
<mml:mn>2</mml:mn>
<mml:msup>
<mml:mrow>
<mml:mi>h</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mn>2</mml:mn>
</mml:mrow>
</mml:msup>
<mml:msubsup>
<mml:mrow>
<mml:mi>w</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mn>1</mml:mn>
</mml:mrow>
<mml:mrow>
<mml:mn>2</mml:mn>
</mml:mrow>
</mml:msubsup>
<mml:msubsup>
<mml:mrow>
<mml:mi>T</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>s</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mn>2</mml:mn>
</mml:mrow>
</mml:msubsup>
<mml:mo>&#x2212;</mml:mo>
<mml:mn>8</mml:mn>
</mml:mrow>
<mml:mo stretchy="false">)</mml:mo>
</mml:mrow>
<mml:mo>&#x2b;</mml:mo>
<mml:msup>
<mml:mrow>
<mml:mi>z</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mo>&#x2212;</mml:mo>
<mml:mn>2</mml:mn>
</mml:mrow>
</mml:msup>
<mml:mrow>
<mml:mo stretchy="false">(</mml:mo>
<mml:mrow>
<mml:msup>
<mml:mrow>
<mml:mi>h</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mn>2</mml:mn>
</mml:mrow>
</mml:msup>
<mml:msubsup>
<mml:mrow>
<mml:mi>w</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mn>1</mml:mn>
</mml:mrow>
<mml:mrow>
<mml:mn>2</mml:mn>
</mml:mrow>
</mml:msubsup>
<mml:msubsup>
<mml:mrow>
<mml:mi>T</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>s</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mn>2</mml:mn>
</mml:mrow>
</mml:msubsup>
<mml:mo>&#x2b;</mml:mo>
<mml:mn>4</mml:mn>
</mml:mrow>
<mml:mo stretchy="false">)</mml:mo>
</mml:mrow>
</mml:math>
</inline-formula>
</td>
</tr>
<tr>
<td align="center">D</td>
<td align="center">
<inline-formula id="inf17">
<mml:math id="m26">
<mml:msubsup>
<mml:mrow>
<mml:mi>R</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>h</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>f</mml:mi>
<mml:mi>&#x26;</mml:mi>
<mml:mi>f</mml:mi>
</mml:mrow>
</mml:msubsup>
<mml:mrow>
<mml:mo stretchy="false">(</mml:mo>
<mml:mrow>
<mml:mi>z</mml:mi>
</mml:mrow>
<mml:mo stretchy="false">)</mml:mo>
</mml:mrow>
<mml:msubsup>
<mml:mrow>
<mml:mi>R</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>h</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>b</mml:mi>
<mml:mi>&#x26;</mml:mi>
<mml:mi>b</mml:mi>
</mml:mrow>
</mml:msubsup>
</mml:math>
</inline-formula>
</td>
<td align="center">
<inline-formula id="inf18">
<mml:math id="m27">
<mml:mn>1</mml:mn>
<mml:mo>&#x2b;</mml:mo>
<mml:msup>
<mml:mrow>
<mml:mi>z</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mo>&#x2212;</mml:mo>
<mml:mn>1</mml:mn>
</mml:mrow>
</mml:msup>
<mml:mrow>
<mml:mo stretchy="false">(</mml:mo>
<mml:mrow>
<mml:msup>
<mml:mrow>
<mml:mi>h</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mn>2</mml:mn>
</mml:mrow>
</mml:msup>
<mml:msubsup>
<mml:mrow>
<mml:mi>w</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mn>1</mml:mn>
</mml:mrow>
<mml:mrow>
<mml:mn>2</mml:mn>
</mml:mrow>
</mml:msubsup>
<mml:msubsup>
<mml:mrow>
<mml:mi>T</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>s</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mn>2</mml:mn>
</mml:mrow>
</mml:msubsup>
<mml:mo>&#x2212;</mml:mo>
<mml:mn>2</mml:mn>
</mml:mrow>
<mml:mo stretchy="false">)</mml:mo>
</mml:mrow>
<mml:mo>&#x2b;</mml:mo>
<mml:msup>
<mml:mrow>
<mml:mi>z</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mo>&#x2212;</mml:mo>
<mml:mn>2</mml:mn>
</mml:mrow>
</mml:msup>
</mml:math>
</inline-formula>
</td>
</tr>
<tr>
<td align="center">E</td>
<td align="center">
<inline-formula id="inf19">
<mml:math id="m28">
<mml:msubsup>
<mml:mrow>
<mml:mi>R</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>h</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi mathvariant="italic">zoh</mml:mi>
</mml:mrow>
</mml:msubsup>
<mml:mrow>
<mml:mo stretchy="false">(</mml:mo>
<mml:mrow>
<mml:mi>z</mml:mi>
</mml:mrow>
<mml:mo stretchy="false">)</mml:mo>
</mml:mrow>
<mml:msubsup>
<mml:mrow>
<mml:mi>R</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>h</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi mathvariant="italic">foh</mml:mi>
</mml:mrow>
</mml:msubsup>
<mml:mrow>
<mml:mo stretchy="false">(</mml:mo>
<mml:mrow>
<mml:mi>z</mml:mi>
</mml:mrow>
<mml:mo stretchy="false">)</mml:mo>
</mml:mrow>
<mml:msubsup>
<mml:mrow>
<mml:mi>R</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>h</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi mathvariant="italic">imp</mml:mi>
</mml:mrow>
</mml:msubsup>
<mml:mrow>
<mml:mo stretchy="false">(</mml:mo>
<mml:mrow>
<mml:mi>z</mml:mi>
</mml:mrow>
<mml:mo stretchy="false">)</mml:mo>
</mml:mrow>
<mml:msubsup>
<mml:mrow>
<mml:mi>R</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>h</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi mathvariant="italic">zpm</mml:mi>
</mml:mrow>
</mml:msubsup>
<mml:mrow>
<mml:mo stretchy="false">(</mml:mo>
<mml:mrow>
<mml:mi>z</mml:mi>
</mml:mrow>
<mml:mo stretchy="false">)</mml:mo>
</mml:mrow>
</mml:math>
</inline-formula>
</td>
<td align="center">1 &#x2212; 2<italic>z</italic>
<sup>&#x2212;1</sup> cos (<italic>hw</italic>
<sub>1</sub>
<italic>T</italic>
<sub>
<italic>s</italic>
</sub>) &#x2b; <italic>z</italic>
<sup>&#x2212;2</sup>
</td>
</tr>
</tbody>
</table>
</table-wrap>
<sec id="s6-1">
<title>6.1 Effect of the discretization process on the PR controller</title>
<p>As the PR controller is very sensitive to the discretization process, it disturbs both poles and zero of the controller. Therefore, the effect of the discretization process must be considered and taken into account in application.</p>
<sec id="s6-1-1">
<title>6.1.1 Effect on poles of the controller</title>
<p>
<xref ref-type="fig" rid="F5">Figure 5</xref> shows the pole plot of the digital controller transfer function presented in <xref ref-type="table" rid="T2">Table 2</xref>. Since group A and group B have no damping factor, which causes the poles of these groups cross the unit circle, therefore these groups should be avoided <xref ref-type="bibr" rid="B36">Phillips et al. (2015)</xref>, where all other groups can move poles inside the unit circle because of the non-zero damping factor. Although groups C and D have infinite gain for the same value of <italic>hw</italic>
<sub>1</sub>, but their poles are located at different position in z-plan, which may cause change in the location of the resonant frequency to be tracked. Enlarged portions of <xref ref-type="fig" rid="F6">Figure 6</xref> represent that C, D, and E groups result in different frequencies, and this difference is much higher for larger values of h. It can be seen in <xref ref-type="fig" rid="F6">Figure 6</xref> that 21st harmonic having frequency 1,050 Hz is better tracked by group E as compared to groups C and D, which results in an error of 36 Hz and 20 Hz, respectively. The error at the 5th harmonic was 0.4 Hz and 0.2 Hz for groups C and D, respectively. From <xref ref-type="fig" rid="F5">Figure 5</xref>, it is clear that group E places poles of the controller inside the unit circle in z-plane. So, the digital controllers based on the group E discretization method are considered the best in terms of pole placement. However, it cannot be concluded at this point that which discretization technique among group E is the most efficient one in terms of zero mapping.</p>
<fig id="F5" position="float">
<label>FIGURE 5</label>
<caption>
<p>Pole plot of the digital resonant controller, at <italic>f</italic>
<sub>
<italic>s</italic>
</sub> &#x3d; 10 kHz.</p>
</caption>
<graphic xlink:href="fenrg-11-1272329-g005.tif"/>
</fig>
<fig id="F6" position="float">
<label>FIGURE 6</label>
<caption>
<p>Pole plot of various groups of digital resonant controllers at <italic>f</italic>
<sub>
<italic>s</italic>
</sub> &#x3d; 10 kHz (odd harmonic components ranging from fundamental component to 21st harmonic). <italic>f</italic>
<sub>
<italic>s</italic>
</sub> &#x3d; 10 kHz.</p>
</caption>
<graphic xlink:href="fenrg-11-1272329-g006.tif"/>
</fig>
</sec>
<sec id="s6-1-2">
<title>6.1.2 Effect on zeros of the controller</title>
<p>The discretization process also has an effect on zeros of the controller and must not be ignored because it has a direct impact on the transient response and stability of the controller. However, if the transfer function of the controller is the Laplace transform of cosine function instead of sine function, then the effect on zero would be minimized and stability could be improved <xref ref-type="bibr" rid="B8">Chou and Liaw (2009)</xref>. It has been observed in the previous section that group E discretization techniques mapped poles of the PR controller efficiently and provided infinite gain at resonance frequency. However, group E methods have different numerators and hence different zeros leading to different stability criteria. Therefore, it is required to point out the best discretization technique both in terms of accurate placement of poles and zeros of the controller.</p>
<p>
<xref ref-type="fig" rid="F7">Figure 7</xref> depicts bode plot comparison of continuous time and group E-based discrete time PR controllers. It is clear from <xref ref-type="fig" rid="F7">Figure 7</xref> that among group E discretization techniques, the II method has the bode plot significantly different from the continuous time ideal PR controller at low frequencies; therefore, this method may not eliminate low-order harmonics effectively. Thus, the II discretization method must be avoided. The other two methods ZPM and ZOH perfectly follow the continuous time version of the PR controller; therefore, these methods result in superior performance in terms of stability and steady-state error. However, all three methods are capable of producing very high gain at the required frequency. In this case, the required frequency was non-integer (50.1 <italic>Hz</italic>), resulting in non-integer ratio between sampling and reference frequency, and all the considered digital PR controller effectively produced very high gain at the required frequency and low gain outside a nearly symmetric narrow band around that frequency.</p>
<fig id="F7" position="float">
<label>FIGURE 7</label>
<caption>
<p>Frequency response of continuous time and group E-based digital PR controllers (<italic>f</italic> &#x3d; 50.1 Hz).</p>
</caption>
<graphic xlink:href="fenrg-11-1272329-g007.tif"/>
</fig>
<p>It was clear previously that the poles and zero mapping efficiency of group E discretization (ZOH, II, and ZPM) methods were found satisfactory among the techniques given in the literature. Therefore, these three methods are used for digital implementation of the PR controller.</p>
</sec>
</sec>
<sec id="s6-2">
<title>6.2 PR controller based on the ZOH method</title>
<p>The transfer function of the digital PR controller based on the ZOH technique is given by <xref ref-type="bibr" rid="B48">Yepes et al. (2009)</xref>
<disp-formula id="e10">
<mml:math id="m29">
<mml:msubsup>
<mml:mrow>
<mml:mi>R</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>h</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi mathvariant="italic">zoh</mml:mi>
</mml:mrow>
</mml:msubsup>
<mml:mfenced open="(" close=")">
<mml:mrow>
<mml:mi>z</mml:mi>
</mml:mrow>
</mml:mfenced>
<mml:mo>&#x3d;</mml:mo>
<mml:mfrac>
<mml:mrow>
<mml:mi>sin</mml:mi>
<mml:mfenced open="(" close=")">
<mml:mrow>
<mml:mi>h</mml:mi>
<mml:msub>
<mml:mrow>
<mml:mi>w</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mn>1</mml:mn>
</mml:mrow>
</mml:msub>
<mml:msub>
<mml:mrow>
<mml:mi>T</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>s</mml:mi>
</mml:mrow>
</mml:msub>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:mrow>
<mml:mi>h</mml:mi>
<mml:msub>
<mml:mrow>
<mml:mi>w</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mn>1</mml:mn>
</mml:mrow>
</mml:msub>
</mml:mrow>
</mml:mfrac>
<mml:mfrac>
<mml:mrow>
<mml:msup>
<mml:mrow>
<mml:mi>z</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mo>&#x2212;</mml:mo>
<mml:mn>1</mml:mn>
</mml:mrow>
</mml:msup>
<mml:mo>&#x2212;</mml:mo>
<mml:msup>
<mml:mrow>
<mml:mi>z</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mo>&#x2212;</mml:mo>
<mml:mn>2</mml:mn>
</mml:mrow>
</mml:msup>
</mml:mrow>
<mml:mrow>
<mml:mn>1</mml:mn>
<mml:mo>&#x2212;</mml:mo>
<mml:mn>2</mml:mn>
<mml:msup>
<mml:mrow>
<mml:mi>z</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mo>&#x2212;</mml:mo>
<mml:mn>1</mml:mn>
</mml:mrow>
</mml:msup>
<mml:mo>&#x2061;</mml:mo>
<mml:mi>cos</mml:mi>
<mml:mfenced open="(" close=")">
<mml:mrow>
<mml:mi>h</mml:mi>
<mml:msub>
<mml:mrow>
<mml:mi>w</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mn>1</mml:mn>
</mml:mrow>
</mml:msub>
<mml:msub>
<mml:mrow>
<mml:mi>T</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>s</mml:mi>
</mml:mrow>
</mml:msub>
</mml:mrow>
</mml:mfenced>
<mml:mo>&#x2b;</mml:mo>
<mml:msup>
<mml:mrow>
<mml:mi>z</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mo>&#x2212;</mml:mo>
<mml:mn>2</mml:mn>
</mml:mrow>
</mml:msup>
</mml:mrow>
</mml:mfrac>
<mml:mo>.</mml:mo>
</mml:math>
<label>(10)</label>
</disp-formula>The ZOH technique has both sine and cosine functions which may lead to complexity, and again there is a compromise between performance and complexity. <xref ref-type="fig" rid="F8">Figure 8</xref> depicts the ZOH-based discrete time resonant controller.</p>
<fig id="F8" position="float">
<label>FIGURE 8</label>
<caption>
<p>ZOH-based digital PR controller.</p>
</caption>
<graphic xlink:href="fenrg-11-1272329-g008.tif"/>
</fig>
</sec>
<sec id="s6-3">
<title>6.3 PR controller based on the II method</title>
<p>This technique is also used for discretization of the PR controller. It has good stability criteria and accurate pole placement qualities. In the double integration-based resonant controller, the impulse invariant method is applied separately to both integrators for discretization <xref ref-type="bibr" rid="B39">Silwal and Karimi-Ghartemani (2016)</xref>. The transfer function of the discrete time resonant controller, by using the impulse invariant method, is given by <xref ref-type="bibr" rid="B48">Yepes et al. (2009)</xref>
<disp-formula id="e11">
<mml:math id="m30">
<mml:msubsup>
<mml:mrow>
<mml:mi>R</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>h</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi mathvariant="italic">imp</mml:mi>
</mml:mrow>
</mml:msubsup>
<mml:mfenced open="(" close=")">
<mml:mrow>
<mml:mi>z</mml:mi>
</mml:mrow>
</mml:mfenced>
<mml:mo>&#x3d;</mml:mo>
<mml:msub>
<mml:mrow>
<mml:mi>T</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>s</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mfrac>
<mml:mrow>
<mml:mn>1</mml:mn>
<mml:mo>&#x2212;</mml:mo>
<mml:msup>
<mml:mrow>
<mml:mi>z</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mo>&#x2212;</mml:mo>
<mml:mn>1</mml:mn>
</mml:mrow>
</mml:msup>
<mml:mo>&#x2061;</mml:mo>
<mml:mi>cos</mml:mi>
<mml:mfenced open="(" close=")">
<mml:mrow>
<mml:mi>h</mml:mi>
<mml:msub>
<mml:mrow>
<mml:mi>w</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mn>1</mml:mn>
</mml:mrow>
</mml:msub>
<mml:msub>
<mml:mrow>
<mml:mi>T</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>s</mml:mi>
</mml:mrow>
</mml:msub>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:mrow>
<mml:mn>1</mml:mn>
<mml:mo>&#x2212;</mml:mo>
<mml:mn>2</mml:mn>
<mml:msup>
<mml:mrow>
<mml:mi>z</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mo>&#x2212;</mml:mo>
<mml:mn>1</mml:mn>
</mml:mrow>
</mml:msup>
<mml:mo>&#x2061;</mml:mo>
<mml:mi>cos</mml:mi>
<mml:mfenced open="(" close=")">
<mml:mrow>
<mml:mi>h</mml:mi>
<mml:msub>
<mml:mrow>
<mml:mi>w</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mn>1</mml:mn>
</mml:mrow>
</mml:msub>
<mml:msub>
<mml:mrow>
<mml:mi>T</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>s</mml:mi>
</mml:mrow>
</mml:msub>
</mml:mrow>
</mml:mfenced>
<mml:mo>&#x2b;</mml:mo>
<mml:msup>
<mml:mrow>
<mml:mi>z</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mo>&#x2212;</mml:mo>
<mml:mn>2</mml:mn>
</mml:mrow>
</mml:msup>
</mml:mrow>
</mml:mfrac>
<mml:mo>,</mml:mo>
</mml:math>
<label>(11)</label>
</disp-formula>where <italic>Ts</italic> is the sampling time, <italic>h</italic> harmonic order, and <italic>w</italic>
<sub>1</sub> is the desired resonant frequency at which we want, ideally, infinite gain. One drawback of this method is the presence of cosine functions in both the numerator and denominator, which causes computational burden, and hence need extra resources. So, there should be a compromise between the performance and complexity. <xref ref-type="fig" rid="F9">Figure 9</xref> shows the impulse invariant discretization method-based block diagram of the digital resonant controller.</p>
<fig id="F9" position="float">
<label>FIGURE 9</label>
<caption>
<p>II-based digital PR controller.</p>
</caption>
<graphic xlink:href="fenrg-11-1272329-g009.tif"/>
</fig>
</sec>
<sec id="s6-4">
<title>6.4 PR controller based on the ZPM method</title>
<p>The efficiency of the ZPM technique in terms of poles and zero mapping of the controller is much better than that of the other two methods discussed previously. This technique does not disturb the poles and zeros of the controller as when changing the transfer function from continuous time to discrete time. It has been observed previously that the frequency response of continuous time and discrete time PR controller is mostly similar. Therefore, there is a great motivation to use this method for discretizing the resonant controller. The transfer function of the digital PR controller based on the ZPM method is given by <xref ref-type="bibr" rid="B48">Yepes et al. (2009)</xref>
<disp-formula id="e12">
<mml:math id="m31">
<mml:msubsup>
<mml:mrow>
<mml:mi>R</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>h</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi mathvariant="italic">zpm</mml:mi>
</mml:mrow>
</mml:msubsup>
<mml:mfenced open="(" close=")">
<mml:mrow>
<mml:mi>z</mml:mi>
</mml:mrow>
</mml:mfenced>
<mml:mo>&#x3d;</mml:mo>
<mml:msub>
<mml:mrow>
<mml:mi>k</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>d</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mfrac>
<mml:mrow>
<mml:msup>
<mml:mrow>
<mml:mi>z</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mo>&#x2212;</mml:mo>
<mml:mn>1</mml:mn>
</mml:mrow>
</mml:msup>
<mml:mo>&#x2212;</mml:mo>
<mml:msup>
<mml:mrow>
<mml:mi>z</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mo>&#x2212;</mml:mo>
<mml:mn>2</mml:mn>
</mml:mrow>
</mml:msup>
</mml:mrow>
<mml:mrow>
<mml:mn>1</mml:mn>
<mml:mo>&#x2212;</mml:mo>
<mml:mn>2</mml:mn>
<mml:msup>
<mml:mrow>
<mml:mi>z</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mo>&#x2212;</mml:mo>
<mml:mn>1</mml:mn>
</mml:mrow>
</mml:msup>
<mml:mo>&#x2061;</mml:mo>
<mml:mi>cos</mml:mi>
<mml:mfenced open="(" close=")">
<mml:mrow>
<mml:mi>h</mml:mi>
<mml:msub>
<mml:mrow>
<mml:mi>w</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mn>1</mml:mn>
</mml:mrow>
</mml:msub>
<mml:msub>
<mml:mrow>
<mml:mi>T</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>s</mml:mi>
</mml:mrow>
</mml:msub>
</mml:mrow>
</mml:mfenced>
<mml:mo>&#x2b;</mml:mo>
<mml:msup>
<mml:mrow>
<mml:mi>z</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mo>&#x2212;</mml:mo>
</mml:mrow>
</mml:msup>
<mml:mn>2</mml:mn>
</mml:mrow>
</mml:mfrac>
<mml:mo>.</mml:mo>
</mml:math>
<label>(12)</label>
</disp-formula>
</p>
<p>
<xref ref-type="fig" rid="F10">Figure 10</xref> presents the schematic of the obtained digital PR controller.</p>
<fig id="F10" position="float">
<label>FIGURE 10</label>
<caption>
<p>ZPM-based digital PR controller.</p>
</caption>
<graphic xlink:href="fenrg-11-1272329-g010.tif"/>
</fig>
<p>
<xref ref-type="fig" rid="F11">Figure 11</xref> represents the overall block diagram of the single-phase PWM inverter including resonant and feedback controllers, where <italic>G</italic>
<sub>
<italic>RC</italic>
</sub>(<italic>z</italic>), <italic>G</italic>
<sub>
<italic>d</italic>
</sub>(<italic>z</italic>), <italic>G</italic>
<sub>
<italic>p</italic>
</sub>(<italic>z</italic>), and <italic>d</italic>(<italic>z</italic>) represent the transfer function of the resonant controller, feedback controller, plant, and disturbance, respectively.</p>
<fig id="F11" position="float">
<label>FIGURE 11</label>
<caption>
<p>Control loop diagram of the PR controller with the deadbeat controller.</p>
</caption>
<graphic xlink:href="fenrg-11-1272329-g011.tif"/>
</fig>
</sec>
</sec>
<sec sec-type="results|discussion" id="s7">
<title>7 Results and discussion</title>
<p>The system described by <xref ref-type="fig" rid="F1">Figure 1</xref> has been simulated using MATLAB Simulink<sup>
<italic>TM</italic>
</sup>. The simulation parameters are given in <xref ref-type="table" rid="T3">Table 3</xref>. The variable frequency reference signal needs to be measured and provided to the controller in practical implementations. However, in this work, the variable frequency reference signal is directly generated and provided to the controller. Steady-state error and THD of output voltage for non-linear rectifier load are the parameters to be observed. The tracking capability of the conventional deadbeat controller alone and in combination with three types of digital PR controllers is examined in the presence of the variable frequency reference signal.</p>
<table-wrap id="T3" position="float">
<label>TABLE 3</label>
<caption>
<p>Simulation parameters.</p>
</caption>
<table>
<thead valign="top">
<tr>
<th align="center">Nominal value</th>
<th align="center">Rectifier load</th>
<th align="center">Others</th>
</tr>
</thead>
<tbody valign="top">
<tr>
<td align="center">
<italic>E</italic>
<sub>
<italic>n</italic>
</sub> &#x3d; 100 V</td>
<td align="center">
<italic>R</italic>
<sub>
<italic>r</italic>
</sub> &#x3d; 180 &#x3a9;</td>
<td align="center">
<italic>f</italic>
<sub>
<italic>tune</italic>
</sub> &#x3d; 50 Hz</td>
</tr>
<tr>
<td align="center">
<italic>C</italic>
<sub>
<italic>n</italic>
</sub> &#x3d; 30 <italic>&#x3bc;</italic>F</td>
<td align="center">
<italic>C</italic>
<sub>
<italic>r</italic>
</sub> &#x3d; 500 <italic>&#x3bc;</italic>F</td>
<td align="center">
<italic>V</italic>
<sub>
<italic>ref</italic>
</sub> &#x3d; 50 sin (2<italic>&#x3c0;ft</italic>)</td>
</tr>
<tr>
<td align="center">
<italic>L</italic>
<sub>
<italic>n</italic>
</sub> &#x3d; 5 mH</td>
<td align="center">
<italic>L</italic>
<sub>
<italic>r</italic>
</sub> &#x3d; 1 mH</td>
<td align="center">
<italic>f</italic>
<sub>
<italic>s</italic>
</sub> &#x3d; <italic>f</italic>
<sub>
<italic>sw</italic>
</sub> &#x3d; 10 kHz</td>
</tr>
</tbody>
</table>
</table-wrap>
<p>First of all, steady-state error and THD of the deadbeat controlled single-phase inverter are examined by continuously updating the delay element to the nearest integer value, and then these parameters are investigated for three types of digital PR controllers plugged into the deadbeat controlled inverter. Controllers are initially tuned at 50 Hz nominal frequency, while the frequency of the reference signal is varying between 49 Hz and 51 Hz with a step size of 0.1 Hz. It is observed from <xref ref-type="fig" rid="F12">Figure 12</xref> and <xref ref-type="fig" rid="F13">Figure 13</xref> that the deadbeat controller is unable to track the reference signal efficiently because the corresponding error and THD of output voltage are approximately 5 V and 5%, respectively. This is not acceptable for hardware implementation as practical implementation incurs much higher error than simulated work. Other three types of digital PR controllers track the reference signal with lesser THD and relatively small steady-state error. However, the performance of the ZPM-based digital PR controller is more satisfactory (nearly constant) among the three types of digital PR controllers.</p>
<fig id="F12" position="float">
<label>FIGURE 12</label>
<caption>
<p>THD performance of the deadbeat controller compared with the ZOH-, II-, and ZPM-based PR controller.</p>
</caption>
<graphic xlink:href="fenrg-11-1272329-g012.tif"/>
</fig>
<fig id="F13" position="float">
<label>FIGURE 13</label>
<caption>
<p>Error performance of the deadbeat controller compared with the ZOH-, II-, and ZPM-based PR controller.</p>
</caption>
<graphic xlink:href="fenrg-11-1272329-g013.tif"/>
</fig>
<p>The tracking efficiency of the controllers is checked for three selected frequencies of the reference signal.</p>
<sec id="s7-1">
<title>7.1 Performance of the deadbeat controller</title>
<p>
<xref ref-type="fig" rid="F14">Figure 14</xref> describes the performance of a single-phase PWM inverter controlled by the deadbeat controller compared with other three types of digital PR controllers under a variable frequency. The result of the simulation shows that the ordinary digital PR controller fails to effectively track the reference signal because, at a certain reference signal frequency, the corresponding THD and the steady-state error of the output voltage are approximately equal to 5% and 5 V, respectively, which exceeds the limits of the international standard, although in simulation all things are taken into account ideally. Therefore, in practical systems, using only the deadbeat controller should be avoided for tracking/rejection of periodic signals. Three different frequencies of the reference signal, i.e., 49.7 Hz, 50 Hz, and 50.9 Hz, are considered to show the comparison of output and reference voltage signals, where 50 Hz is the frequency at which the controller is tuned and minimum THD was recorded among the observed results, while other two are the reference signal frequencies at which maximum THDs in output voltage were recorded. <xref ref-type="fig" rid="F14">Figure 14</xref> shows the tracking response of the deadbeat controller at three selected reference signal frequencies, where red signals represent the reference signal, while the green signals are the corresponding output signal. From the figures it is concluded that the output signal is more distorted at certain instants of time, which is due to the instability of the plant caused by the ordinary digital PR controller at that particular time. Therefore, more THDs and steady-state errors were recorded for the deadbeat controller.</p>
<fig id="F14" position="float">
<label>FIGURE 14</label>
<caption>
<p>Response of the deadbeat controller at <bold>(A)</bold> <italic>f</italic>
<sub>
<italic>ref</italic>
</sub> &#x3d; 49.7 <italic>Hz</italic>, <bold>(B)</bold> <italic>f</italic>
<sub>
<italic>ref</italic>
</sub> &#x3d; 50<italic>Hz</italic>, and <bold>(C)</bold> <italic>f</italic>
<sub>
<italic>ref</italic>
</sub> &#x3d; 50.9 <italic>Hz</italic> reference signal frequency.</p>
</caption>
<graphic xlink:href="fenrg-11-1272329-g014.tif"/>
</fig>
</sec>
<sec id="s7-2">
<title>7.2 Performance of the ZOH-based digital PR controller</title>
<p>
<xref ref-type="fig" rid="F15">Figure 15</xref> illustrates the tracking performance of a ZOH-based digital PR controller for three selected frequencies of the reference signal. It also illustrates the tracking performance of a ZOH-based digital PR controller in terms of error and THD of the output voltage. It is clear from the figures (<xref ref-type="fig" rid="F14">Figures 14</xref>&#x2013;<xref ref-type="fig" rid="F17">17</xref>) that even though the frequency of the reference signal varies, but the error and THD are almost constant, it means that the performance of the ZOH-based digital PR controller is lightly affected by the fluctuation of frequency. However, at some frequencies, the THD and error in the output is more than 2% and 2 V, respectively, which may limit the practical use of the ZOH-based digital PR controller, where low THD and zero steady-state error in output voltage are required. <xref ref-type="fig" rid="F15">Figure 15</xref> shows the response of the ZOH-based digital PR controller for three different frequencies of the reference signal, in order to highlight the comparison between the reference and output voltage signal. The selected frequencies include the frequency at which the controller is tuned, i.e., 50 Hz, and other two are the frequencies at which the highest THDs and steady-state error were recorded among the observed values. It is clear from the figures that the tracking capability of the ZOH-based digital PR controller is much better than that of an ordinary digital PR controller. The controller takes some time before starting to work properly. An abrupt change in the output signal nearly at t &#x3d; 4 msec is due to the transient time of the controller.</p>
<fig id="F15" position="float">
<label>FIGURE 15</label>
<caption>
<p>Response of the ZOH-based digital PR controller at <bold>(A)</bold> <italic>f</italic>
<sub>
<italic>ref</italic>
</sub> &#x3d; 49.8 <italic>Hz</italic>, <bold>(B)</bold> <italic>f</italic>
<sub>
<italic>ref</italic>
</sub> &#x3d; 50<italic>Hz</italic>, and <bold>(C)</bold> <italic>f</italic>
<sub>
<italic>ref</italic>
</sub> &#x3d; 51<italic>Hz</italic> reference signal frequency.</p>
</caption>
<graphic xlink:href="fenrg-11-1272329-g015.tif"/>
</fig>
<fig id="F16" position="float">
<label>FIGURE 16</label>
<caption>
<p>Response of the II-based digital PR controller at <bold>(A)</bold> <italic>f</italic>
<sub>
<italic>ref</italic>
</sub> &#x3d; 49.4 <italic>Hz</italic>, <bold>(B)</bold> <italic>f</italic>
<sub>
<italic>ref</italic>
</sub> &#x3d; 50<italic>Hz</italic>, and <bold>(C)</bold> <italic>f</italic>
<sub>
<italic>ref</italic>
</sub> &#x3d; 51<italic>Hz</italic> reference signal frequency.</p>
</caption>
<graphic xlink:href="fenrg-11-1272329-g016.tif"/>
</fig>
<fig id="F17" position="float">
<label>FIGURE 17</label>
<caption>
<p>Response of the ZPM-based digital PR controller at <bold>(A)</bold> <italic>f</italic>
<sub>
<italic>ref</italic>
</sub> &#x3d; 49<italic>Hz</italic>, <bold>(B)</bold> <italic>f</italic>
<sub>
<italic>ref</italic>
</sub> &#x3d; 50<italic>Hz</italic>, and <bold>(C)</bold> <italic>f</italic>
<sub>
<italic>ref</italic>
</sub> &#x3d; 50.9 <italic>Hz</italic> reference signal frequency.</p>
</caption>
<graphic xlink:href="fenrg-11-1272329-g017.tif"/>
</fig>
</sec>
<sec id="s7-3">
<title>7.3 Performance of the II discretization-based digital PR controller</title>
<p>One of the investigated efficient digital PR controllers is based on the II discretization method. The performance of the II discretization-based controlled inverter under varying frequency is summarized in <xref ref-type="fig" rid="F12">Figure 12</xref> and <xref ref-type="fig" rid="F13">Figure 13</xref>. The frequency of the controller is fixed, i.e., 50 Hz, while the THD and error of output voltage are observed when the frequency of the reference signal is varying. It is clear from the figures that the error and THD of the output voltage are only slightly changed as the reference signal frequency deviates from the controller tuned frequency. Therefore, the performance of the II discretization-based controller is better than that of the deadbeat and ZOH-based digital PR controller under varying frequency. As the controller is tuned at 50 Hz frequency, therefore the performance of the II discretization-based digital PR controller is plotted when the reference signal frequency is 50 Hz. In addition, for comparison, two other frequencies, one above and one below the tuning frequency, are selected. <xref ref-type="fig" rid="F16">Figure 16</xref> describes the response of the controller to the selected frequencies. The zoomed portion in <xref ref-type="fig" rid="F16">Figure 16</xref> clearly indicates that the output signal effectively tracks the reference signal. However, the THD and steady-state error other than the tuned frequency are slightly increased. Therefore, the tracking capability of the controller is only slightly affected by the fluctuation of the frequency of the reference signal. Again, the sag in output signal nearly at 4 msec is due to the transient time of the controller, as the controller takes some time to operate.</p>
</sec>
<sec id="s7-4">
<title>7.4 Performance of the ZPM-based digital PR controller</title>
<p>Finally, the performance of the ZPM-based digital PR controller is illustrated in <xref ref-type="fig" rid="F17">Figure 17</xref>. Again, the controller is tuned at 50 Hz, while frequency of the reference signal varies. It is clear that the ZPM-based digital PR controller works well in a variable-frequency environment. <xref ref-type="fig" rid="F12">Figure 12</xref> and <xref ref-type="fig" rid="F13">Figure 13</xref> show that the ZPM-based digital PR controller offers the best performance among the other three types of digital PR controllers. Three different frequencies of the reference signal are selected to show the comparison between the output and reference signal. Of the frequencies selected, one frequency is 50 Hz, same as the tuning frequency of the controller, and the other two are the frequencies at which the maximum THD and the errors in the output signal are recorded. <xref ref-type="fig" rid="F17">Figure 17</xref> represents the performance of the ZPM-based digital PR controller at three selected frequencies. The output voltage is presented by a red signal, while the reference signal is presented by a green signal. It is observed that the output signal almost tracks the reference signal exactly with lower THDs and minimum steady-state error. The distortion at the beginning of the output signal is due to the transient time of the controller.</p>
</sec>
</sec>
<sec sec-type="conclusion" id="s8">
<title>8 Conclusion</title>
<p>The PR controller offers the advantage of effective regulation of sinusoidal current and voltage, achieving minimal steady-state errors. However, its direct application to digital systems is not straightforward due to power systems primarily functioning in discrete time. Conventional PR controllers cannot be directly transposed to digital setups. Various discretization methods are available for the digital implementation of PR controllers. Nevertheless, the impact of these methods on the desired controller gain when dealing with varying reference frequencies is not extensively researched. Considering factors such as renewable energy intermittency, distributed generation, and source&#x2013;load imbalances, the grid frequency slightly deviates around its nominal value. Evaluating how these frequency variations influence the performance of resonant-controlled power converters is essential. This study involves the digital discretization of PR controllers using techniques such as ZOH, II method, ZPM, and deadbeat control. The investigation assesses the performance of these PR controllers under the influence of a variable frequency reference signal, simulating real-world grid conditions. The study focuses on a single-phase PWM inverter, a crucial component of modern power systems.</p>
<p>The primary goal in this research was to identify an efficient digital PR controller capable of accurately tracking both constant and variable reference frequency signals while minimizing THD and achieving near-zero steady-state errors. Simulation results demonstrate that employing only the deadbeat controller yields a steady-state error of 4.9 V and a THD of 4.82%. However, the proposed ZPM-based digital PR controller significantly improves these metrics, reducing the steady-state error to 0.12 V and THD to 0.45%. This outcome highlights the superiority of the proposed method.</p>
<p>The challenge of regulating current and voltage in a variable-frequency inverter is effectively addressed using the PR controller. Notably, the discretization process directly impacts the controller&#x2019;s poles and zeros. Pole displacement alters the resonant frequency position where extremely high gain is required, while controller zeros impact the stability. Based on the denominator of the controller&#x2019;s transfer function, discretization methods for digital PR implementation fall into five groups: A, B, C, D, and E. Group E, encompassing ZOH, II, and ZPM techniques, demonstrates satisfactory pole and zero mapping, even with non-integer reference frequencies. Simulation outcomes highlight that the three digital PR controllers from group E perform well, maintaining THD and error below 5%. Among these, the ZPM-based digital PR controller exhibits superior performance. Consequently, the ZPM-based digital PR controller is recommended for practical applications under variable frequency conditions.</p>
<p>The literature shows that the PR controller is capable of tracking sinusoidal signals of known frequency and rejecting disturbances with low steady-state error. Variable frequency reference signals are considered for this research work, and results have shown that the digital PR controllers of group E accurately track the variable frequency reference signal. Rejection of disturbance using PR shows good results as well. However, the disturbance rejection performance is same in the fixed frequency and variable frequency environment. Simulations were carried out on a stand-alone converter with non-linear loads instead of grid-connected converters for safety and other reasons. Due to limited funds and available resources, practical implementation was not possible, and we prepared this manuscript based on stand-alone converter&#x2019;s simulations. Moreover, the reference frequency variation and range (49 Hz&#x2013;51 Hz) was kept the same as for the grid-tied converter case to closely match the two systems. Results have not been included in this manuscript to avoid duplication. For implementing a prototype in future work, we need a specialized laboratory setup that uses a controller kit from dSpace for real-time implementation, which is not available due to limited funds. However, we plan to implement it in our future research work by looking at its alternatives.</p>
</sec>
</body>
<back>
<sec sec-type="data-availability" id="s9">
<title>Data availability statement</title>
<p>The original contributions presented in the study are included in the article/Supplementary material; further inquiries can be directed to the corresponding author.</p>
</sec>
<sec id="s10">
<title>Author contributions</title>
<p>MI: conceptualization, writing&#x2010;original draft, investigation, methodology, and software. RN: investigation, methodology, project administration, resources, and writing&#x2010;review and editing. MA: funding, acquisition, resources, supervision, and writing&#x2010;original draft. JA: conceptualization, data curation, investigation, project administration, and writing&#x2010;review and editing. KA: conceptualization, data curation, formal analysis, funding acquisition, project administration, resources, supervision, and writing&#x2010;review and editing. FS: data curation, formal analysis, investigation, validation, visualization, and writing&#x2010;review and editing.</p>
</sec>
<sec id="s11">
<title>Funding</title>
<p>The author(s) declare that financial support was received for the research, authorship, and/or publication of this article. This Research is funded by Research Supporting Project Number (RSPD2023R553), King Saud University, Riyadh, Saudi Arabia.</p>
</sec>
<ack>
<p>The authors thank the Department of Electrical Engineering, University of Engineering and Technology Lahore, Pakistan, for providing the resources to conduct this research.</p>
</ack>
<sec sec-type="COI-statement" id="s12">
<title>Conflict of interest</title>
<p>The authors declare that the research was conducted in the absence of any commercial or financial relationships that could be construed as a potential conflict of interest.</p>
</sec>
<sec sec-type="disclaimer" id="s13">
<title>Publisher&#x2019;s note</title>
<p>All claims expressed in this article are solely those of the authors and do not necessarily represent those of their affiliated organizations, or those of the publisher, the editors, and the reviewers. Any product that may be evaluated in this article, or claim that may be made by its manufacturer, is not guaranteed or endorsed by the publisher.</p>
</sec>
<ref-list>
<title>References</title>
<ref id="B1">
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>Ahsan</surname>
<given-names>S. M.</given-names>
</name>
<name>
<surname>Khan</surname>
<given-names>H. A.</given-names>
</name>
<name>
<surname>Hussain</surname>
<given-names>A.</given-names>
</name>
<name>
<surname>Tariq</surname>
<given-names>S.</given-names>
</name>
<name>
<surname>Zaffar</surname>
<given-names>N. A.</given-names>
</name>
</person-group> (<year>2021</year>). <article-title>Harmonic analysis of grid-connected solar pv systems with nonlinear household loads in low-voltage distribution networks</article-title>. <source>Sustainability</source> <volume>13</volume>, <fpage>3709</fpage>. <pub-id pub-id-type="doi">10.3390/su13073709</pub-id>
</citation>
</ref>
<ref id="B2">
<citation citation-type="confproc">
<person-group person-group-type="author">
<name>
<surname>Alathamneh</surname>
<given-names>M.</given-names>
</name>
<name>
<surname>Ghanayem</surname>
<given-names>H.</given-names>
</name>
<name>
<surname>Yang</surname>
<given-names>X.</given-names>
</name>
<name>
<surname>Nelms</surname>
<given-names>R. M.</given-names>
</name>
</person-group> (<year>2022</year>). &#x201c;<article-title>Pr controller for a three-phase grid-connected inverter in an unbalanced system using a time-domain symmetrical components extraction method</article-title>,&#x201d; in <conf-name>Proceedings of the 2022 IEEE 31st International Symposium on Industrial Electronics (ISIE)</conf-name>, <conf-loc>Anchorage, AK, USA</conf-loc>, <conf-date>June 2022</conf-date>, <fpage>18</fpage>&#x2013;<lpage>23</lpage>. <pub-id pub-id-type="doi">10.1109/ISIE51582.2022.9831618</pub-id>
</citation>
</ref>
<ref id="B3">
<citation citation-type="confproc">
<person-group person-group-type="author">
<name>
<surname>Bourguiba</surname>
<given-names>I.</given-names>
</name>
<name>
<surname>Houari</surname>
<given-names>A.</given-names>
</name>
<name>
<surname>Belloumi</surname>
<given-names>H.</given-names>
</name>
<name>
<surname>Kourda</surname>
<given-names>F.</given-names>
</name>
</person-group> (<year>2016</year>). &#x201c;<article-title>Control of single-phase grid connected photovoltaic inverter</article-title>,&#x201d; in <conf-name>Proceedings of the 2016 4th International Conference on Control Engineering Information Technology (CEIT)</conf-name>, <conf-loc>Hammamet, Tunisia</conf-loc>, <conf-date>December 2016</conf-date>, <fpage>1</fpage>&#x2013;<lpage>6</lpage>. <pub-id pub-id-type="doi">10.1109/CEIT.2016.7929116</pub-id>
</citation>
</ref>
<ref id="B4">
<citation citation-type="book">
<person-group person-group-type="author">
<name>
<surname>Buso</surname>
<given-names>S.</given-names>
</name>
<name>
<surname>Mattavelli</surname>
<given-names>P.</given-names>
</name>
</person-group> (<year>2015</year>). &#x201c;<article-title>Digital control in power electronics</article-title>,&#x201d; in <source>Jerry hudgins, university of Nebraska&#x2013;lincoln</source> (<publisher-loc>Berlin, Germany</publisher-loc>: <publisher-name>Springer</publisher-name>).</citation>
</ref>
<ref id="B5">
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>Cha</surname>
<given-names>W.</given-names>
</name>
<name>
<surname>Cho</surname>
<given-names>Y.</given-names>
</name>
<name>
<surname>Kwon</surname>
<given-names>J.</given-names>
</name>
<name>
<surname>Kwon</surname>
<given-names>B.</given-names>
</name>
</person-group> (<year>2015</year>). <article-title>High efficient micro-inverter with soft-switching step-up converter and single-switch-modulation inverter</article-title>. <source>IEEE Trans. Industrial Electron.</source> <volume>62</volume>, <fpage>1</fpage>&#x2013;<lpage>3523</lpage>. <pub-id pub-id-type="doi">10.1109/TIE.2014.2366718</pub-id>
</citation>
</ref>
<ref id="B6">
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>Chen</surname>
<given-names>C.-Y.</given-names>
</name>
<name>
<surname>Liu</surname>
<given-names>F.</given-names>
</name>
<name>
<surname>Wu</surname>
<given-names>L.</given-names>
</name>
<name>
<surname>Yan</surname>
<given-names>H.</given-names>
</name>
<name>
<surname>Gui</surname>
<given-names>W.</given-names>
</name>
<name>
<surname>Stanley</surname>
<given-names>H. E.</given-names>
</name>
</person-group> (<year>2021</year>). <article-title>Tracking performance limitations of networked control systems with repeated zeros and poles</article-title>. <source>IEEE Trans. Automatic Control</source> <volume>66</volume>, <fpage>1902</fpage>&#x2013;<lpage>1909</lpage>. <pub-id pub-id-type="doi">10.1109/TAC.2020.2999444</pub-id>
</citation>
</ref>
<ref id="B7">
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>Choi</surname>
<given-names>W.</given-names>
</name>
<name>
<surname>Lee</surname>
<given-names>W.</given-names>
</name>
<name>
<surname>Han</surname>
<given-names>D.</given-names>
</name>
<name>
<surname>Sarlioglu</surname>
<given-names>B.</given-names>
</name>
</person-group> (<year>2018</year>). <article-title>New configuration of multifunctional grid-connected inverter to improve both current-based and voltage-based power quality</article-title>. <source>IEEE Trans. Industry Appl.</source> <volume>54</volume>, <fpage>6374</fpage>&#x2013;<lpage>6382</lpage>. <pub-id pub-id-type="doi">10.1109/TIA.2018.2861737</pub-id>
</citation>
</ref>
<ref id="B8">
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>Chou</surname>
<given-names>M.</given-names>
</name>
<name>
<surname>Liaw</surname>
<given-names>C.</given-names>
</name>
</person-group> (<year>2009</year>). <article-title>Development of robust current 2-DOF controllers for a permanent magnet synchronous motor drive with reaction wheel load</article-title>. <source>IEE Proceedings-Electric Power Appl.</source> <volume>24</volume>, <fpage>1304</fpage>&#x2013;<lpage>1320</lpage>. <pub-id pub-id-type="doi">10.1109/tpel.2009.2012713</pub-id>
</citation>
</ref>
<ref id="B9">
<citation citation-type="confproc">
<person-group person-group-type="author">
<name>
<surname>Das</surname>
<given-names>D.</given-names>
</name>
<name>
<surname>Barai</surname>
<given-names>M.</given-names>
</name>
</person-group> (<year>2021</year>). &#x201c;<article-title>Design and implementation of a dual loop controller for a single-phase 5-level cascaded h-bridge inverter with reduced thd</article-title>,&#x201d; in <conf-name>Proceedings of the 2021 2nd International Conference for Emerging Technology (INCET)</conf-name>, <conf-loc>Belagavi, India</conf-loc>, <conf-date>May 2021</conf-date>, <fpage>1</fpage>&#x2013;<lpage>6</lpage>. <pub-id pub-id-type="doi">10.1109/INCET51464.2021.9456434</pub-id>
</citation>
</ref>
<ref id="B10">
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>Desalegn</surname>
<given-names>B.</given-names>
</name>
<name>
<surname>Gebeyehu</surname>
<given-names>D.</given-names>
</name>
<name>
<surname>Tamrat</surname>
<given-names>B.</given-names>
</name>
<name>
<surname>Tadiwose</surname>
<given-names>T.</given-names>
</name>
</person-group> (<year>2023</year>). <article-title>Wind energy-harvesting technologies and recent research progresses in wind farm control models</article-title>. <source>Front. Energy Res.</source> <volume>11</volume>, <fpage>1124203</fpage>. <pub-id pub-id-type="doi">10.3389/fenrg.2023.1124203</pub-id>
</citation>
</ref>
<ref id="B11">
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>Dong</surname>
<given-names>F.</given-names>
</name>
<name>
<surname>Pan</surname>
<given-names>S.</given-names>
</name>
<name>
<surname>Gong</surname>
<given-names>J.</given-names>
</name>
<name>
<surname>Cai</surname>
<given-names>Y.</given-names>
</name>
</person-group> (<year>2023</year>). <article-title>Maximum power point tracking control strategy based on frequency and amplitude control for the wave energy conversion system</article-title>. <source>Renew. Energy</source> <volume>215</volume>, <fpage>118973</fpage>. <pub-id pub-id-type="doi">10.1016/j.renene.2023.118973</pub-id>
</citation>
</ref>
<ref id="B12">
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>Essaghir</surname>
<given-names>S.</given-names>
</name>
<name>
<surname>Benchagra</surname>
<given-names>M.</given-names>
</name>
<name>
<surname>Noureddine</surname>
<given-names>E. B.</given-names>
</name>
</person-group> (<year>2018</year>). <article-title>Comparison between pi and pr current controllers of a grid-connected photovoltaic system supplying nonlineare load</article-title>. <source>Int. J. Power Electron. Drive Syst.</source> <volume>9</volume> (<issue>3</issue>). <pub-id pub-id-type="doi">10.11591/ijpeds.v9.i3.pp1311-1320</pub-id>
</citation>
</ref>
<ref id="B13">
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>Ghoshal</surname>
<given-names>A.</given-names>
</name>
<name>
<surname>John</surname>
<given-names>V.</given-names>
</name>
</person-group> (<year>2017</year>). <article-title>High-accuracy multi-rate implementation of resonant integrator using fpga</article-title>. <source>IET Power Electron.</source> <volume>10</volume>, <fpage>348</fpage>&#x2013;<lpage>356</lpage>. <pub-id pub-id-type="doi">10.1049/iet-pel.2015.0702</pub-id>
</citation>
</ref>
<ref id="B14">
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>Gopinath</surname>
<given-names>N. P.</given-names>
</name>
<name>
<surname>Vijayakumar</surname>
<given-names>K.</given-names>
</name>
</person-group> (<year>2022</year>). <article-title>Common ground nine-level boost inverter for grid-connected pv applications</article-title>. <source>Front. Energy Res.</source> <volume>10</volume>, <fpage>922786</fpage>. <pub-id pub-id-type="doi">10.3389/fenrg.2022.922786</pub-id>
</citation>
</ref>
<ref id="B15">
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>Husev</surname>
<given-names>O.</given-names>
</name>
<name>
<surname>Roncero-Clemente</surname>
<given-names>C.</given-names>
</name>
<name>
<surname>Makovenko</surname>
<given-names>E.</given-names>
</name>
<name>
<surname>Pimentel</surname>
<given-names>S. P.</given-names>
</name>
<name>
<surname>Vinnikov</surname>
<given-names>D.</given-names>
</name>
<name>
<surname>Martins</surname>
<given-names>J.</given-names>
</name>
</person-group> (<year>2020</year>). <article-title>Optimization and implementation of the proportional-resonant controller for grid-connected inverter with significant computation delay</article-title>. <source>IEEE Trans. Industrial Electron.</source> <volume>67</volume>, <fpage>1201</fpage>&#x2013;<lpage>1211</lpage>. <pub-id pub-id-type="doi">10.1109/TIE.2019.2898616</pub-id>
</citation>
</ref>
<ref id="B16">
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>Iqbal</surname>
<given-names>W.</given-names>
</name>
<name>
<surname>Ullah</surname>
<given-names>I.</given-names>
</name>
<name>
<surname>Shin</surname>
<given-names>S.</given-names>
</name>
</person-group> (<year>2023</year>). <article-title>Nonimaging high concentrating photovoltaic system using trough</article-title>. <source>Energies</source> <volume>16</volume>, <fpage>1336</fpage>. <pub-id pub-id-type="doi">10.3390/en16031336</pub-id>
</citation>
</ref>
<ref id="B17">
<citation citation-type="confproc">
<person-group person-group-type="author">
<name>
<surname>Iskhakov</surname>
<given-names>A.</given-names>
</name>
<name>
<surname>Kobylyansky</surname>
<given-names>V.</given-names>
</name>
<name>
<surname>Bekishev</surname>
<given-names>A.</given-names>
</name>
<name>
<surname>Pospelov</surname>
<given-names>V.</given-names>
</name>
<name>
<surname>Skovpen</surname>
<given-names>S.</given-names>
</name>
</person-group> (<year>2013</year>). &#x201c;<article-title>A direct deadbeat control of a pwm single-phase voltage source inverter</article-title>,&#x201d; in <conf-name>Proceedings of the 2013 15th European Conference on Power Electronics and Applications (EPE)</conf-name>, <conf-loc>Lille, France</conf-loc>, <conf-date>September 2013</conf-date>.</citation>
</ref>
<ref id="B18">
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>Javed</surname>
<given-names>U.</given-names>
</name>
<name>
<surname>Ijaz</surname>
<given-names>K.</given-names>
</name>
<name>
<surname>Jawad</surname>
<given-names>M.</given-names>
</name>
<name>
<surname>Ansari</surname>
<given-names>E. A.</given-names>
</name>
<name>
<surname>Shabbir</surname>
<given-names>N.</given-names>
</name>
<name>
<surname>K&#xfc;tt</surname>
<given-names>L.</given-names>
</name>
<etal/>
</person-group> (<year>2021</year>). <article-title>Exploratory data analysis based short-term electrical load forecasting: A comprehensive analysis</article-title>. <source>Energies</source> <volume>14</volume>, <fpage>5510</fpage>. <pub-id pub-id-type="doi">10.3390/en14175510</pub-id>
</citation>
</ref>
<ref id="B19">
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>Khan</surname>
<given-names>Z. A.</given-names>
</name>
<name>
<surname>Imran</surname>
<given-names>M.</given-names>
</name>
<name>
<surname>Altamimi</surname>
<given-names>A.</given-names>
</name>
<name>
<surname>Diemuodeke</surname>
<given-names>O. E.</given-names>
</name>
<name>
<surname>Abdelatif</surname>
<given-names>A. O.</given-names>
</name>
</person-group> (<year>2022</year>). <article-title>Assessment of wind and solar hybrid energy for agricultural applications in Sudan</article-title>. <source>Energies</source> <volume>15</volume>, <fpage>5</fpage>. <pub-id pub-id-type="doi">10.3390/en15010005</pub-id>
</citation>
</ref>
<ref id="B20">
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>Kukrer</surname>
<given-names>O.</given-names>
</name>
<name>
<surname>Komurcugil</surname>
<given-names>H.</given-names>
</name>
</person-group> (<year>1999</year>). <article-title>Deadbeat control method for single-phase ups inverters with compensation of computation delay</article-title>. <source>IEE Proc. - Electr. Power Appl.</source> <volume>146</volume>, <fpage>123</fpage>&#x2013;<lpage>128</lpage>. <pub-id pub-id-type="doi">10.1049/ip-epa:19990215</pub-id>
</citation>
</ref>
<ref id="B21">
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>Kuperman</surname>
<given-names>A</given-names>
</name>
</person-group> (<year>2015</year>). <article-title>Proportional-resonant current controllers design based on desired transient performance</article-title>. <source>IEEE Trans. Power Electron.</source> <volume>30</volume>, <fpage>5341</fpage>&#x2013;<lpage>5345</lpage>. <pub-id pub-id-type="doi">10.1109/TPEL.2015.2408053</pub-id>
</citation>
</ref>
<ref id="B22">
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>Lakshmi</surname>
<given-names>T. L.</given-names>
</name>
<name>
<surname>Naik</surname>
<given-names>M. G.</given-names>
</name>
</person-group> (<year>2017</year>). <article-title>Modelling of pr controller for a grid connected single phase inverter</article-title>. <source>CICED Proc.</source> <volume>5</volume>, <fpage>201</fpage>&#x2013;<lpage>207</lpage>.</citation>
</ref>
<ref id="B23">
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>Li</surname>
<given-names>Y.</given-names>
</name>
<name>
<surname>Zhang</surname>
<given-names>J.</given-names>
</name>
<name>
<surname>Hao</surname>
<given-names>Z.</given-names>
</name>
<name>
<surname>Tian</surname>
<given-names>P.</given-names>
</name>
</person-group> (<year>2021</year>). <article-title>Improved pr control strategy for an lcl three-phase grid-connected inverter based on active damping</article-title>. <source>Appl. Sci.</source> <volume>11</volume>, <fpage>3170</fpage>. <pub-id pub-id-type="doi">10.3390/app11073170</pub-id>
</citation>
</ref>
<ref id="B24">
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>Lin</surname>
<given-names>X.</given-names>
</name>
<name>
<surname>Wen</surname>
<given-names>Y.</given-names>
</name>
<name>
<surname>Yu</surname>
<given-names>R.</given-names>
</name>
<name>
<surname>Yu</surname>
<given-names>J.</given-names>
</name>
<name>
<surname>Wen</surname>
<given-names>H.</given-names>
</name>
</person-group> (<year>2022</year>). <article-title>Improved weak grids synchronization unit for passivity enhancement of grid-connected inverter</article-title>. <source>IEEE J. Emerg. Sel. Top. Power Electron.</source> <volume>10</volume>, <fpage>7084</fpage>&#x2013;<lpage>7097</lpage>. <pub-id pub-id-type="doi">10.1109/JESTPE.2022.3168655</pub-id>
</citation>
</ref>
<ref id="B25">
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>Lin</surname>
<given-names>X.</given-names>
</name>
<name>
<surname>Yu</surname>
<given-names>R.</given-names>
</name>
<name>
<surname>Yu</surname>
<given-names>J.</given-names>
</name>
<name>
<surname>Wen</surname>
<given-names>H.</given-names>
</name>
</person-group> (<year>2023</year>). <article-title>Constant-coupling-effect-based pll for synchronization stability enhancement of grid-connected converter under weak grids</article-title>. <source>IEEE Trans. Industrial Electron.</source> <volume>70</volume>, <fpage>11310</fpage>&#x2013;<lpage>11323</lpage>. <pub-id pub-id-type="doi">10.1109/TIE.2022.3227268</pub-id>
</citation>
</ref>
<ref id="B26">
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>Liu</surname>
<given-names>S.</given-names>
</name>
<name>
<surname>Liu</surname>
<given-names>C.</given-names>
</name>
</person-group> (<year>2021</year>). <article-title>Direct harmonic current control scheme for dual three-phase pmsm drive system</article-title>. <source>IEEE Trans. Power Electron.</source> <volume>36</volume>, <fpage>11647</fpage>&#x2013;<lpage>11657</lpage>. <pub-id pub-id-type="doi">10.1109/TPEL.2021.3069862</pub-id>
</citation>
</ref>
<ref id="B27">
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>Liu</surname>
<given-names>X.</given-names>
</name>
<name>
<surname>Qiao</surname>
<given-names>S.</given-names>
</name>
<name>
<surname>Liu</surname>
<given-names>Z.</given-names>
</name>
</person-group> (<year>2023</year>). <article-title>A survey on load frequency control of multi-area power systems: recent challenges and strategies</article-title>. <source>Energies</source> <volume>16</volume>, <fpage>2323</fpage>. <pub-id pub-id-type="doi">10.3390/en16052323</pub-id>
</citation>
</ref>
<ref id="B28">
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>Malik</surname>
<given-names>M. Z.</given-names>
</name>
<name>
<surname>Ali</surname>
<given-names>A.</given-names>
</name>
<name>
<surname>Kumar</surname>
<given-names>D.</given-names>
</name>
</person-group> (<year>2017</year>). <article-title>A two cascaded boost converter with high voltage gain module</article-title>. <source>Int. J. Comput. Electr. Eng.</source> <volume>9</volume>, <fpage>476</fpage>&#x2013;<lpage>483</lpage>. <pub-id pub-id-type="doi">10.17706/ijcee.2017.9.2.476-483</pub-id>
</citation>
</ref>
<ref id="B29">
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>Malik</surname>
<given-names>M. Z.</given-names>
</name>
<name>
<surname>Zhang</surname>
<given-names>S.</given-names>
</name>
<name>
<surname>Ali</surname>
<given-names>A.</given-names>
</name>
<name>
<surname>Farooq</surname>
<given-names>A.</given-names>
</name>
</person-group> (<year>2023a</year>). <article-title>Design and implementation of a multi-port bidirectional converter for electric vehicle applications</article-title>. <source>Int. J. Circuit Theory Appl</source>. <pub-id pub-id-type="doi">10.1002/cta.3649</pub-id>
</citation>
</ref>
<ref id="B30">
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>Malik</surname>
<given-names>M. Z.</given-names>
</name>
<name>
<surname>Zhang</surname>
<given-names>S.</given-names>
</name>
<name>
<surname>Hong</surname>
<given-names>Y.</given-names>
</name>
<name>
<surname>Alwahkyan</surname>
<given-names>A. R. A.</given-names>
</name>
<name>
<surname>Ali</surname>
<given-names>A.</given-names>
</name>
<name>
<surname>Farooq</surname>
<given-names>A.</given-names>
</name>
<etal/>
</person-group> (<year>2023b</year>). <article-title>A coupled inductor-based bidirectional dc-dc converter with step-up step-down operation for electric vehicle applications</article-title>. <source>Int. Trans. Electr. Energy Syst.</source> <volume>2023</volume>, <fpage>1</fpage>&#x2013;<lpage>19</lpage>. <pub-id pub-id-type="doi">10.1155/2023/9277881</pub-id>
</citation>
</ref>
<ref id="B31">
<citation citation-type="confproc">
<person-group person-group-type="author">
<name>
<surname>Mohammed</surname>
<given-names>A. Y.</given-names>
</name>
<name>
<surname>Mohammed</surname>
<given-names>F. I.</given-names>
</name>
<name>
<surname>Ibrahim</surname>
<given-names>M. Y.</given-names>
</name>
</person-group> (<year>2017</year>). &#x201c;<article-title>Grid connected photovoltaic system</article-title>,&#x201d; in <conf-name>Proceedings of the 2017 international conference on communication, control, computing and electronics engineering (ICCCCEE)</conf-name>, <conf-loc>Khartoum, Sudan</conf-loc>, <conf-date>January 2017</conf-date>, <fpage>1</fpage>&#x2013;<lpage>5</lpage>.</citation>
</ref>
<ref id="B32">
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>Nazir</surname>
<given-names>R.</given-names>
</name>
<name>
<surname>Shabbir</surname>
<given-names>A.</given-names>
</name>
<name>
<surname>Nazir</surname>
<given-names>A.</given-names>
</name>
<name>
<surname>Fahad</surname>
<given-names>A. K.</given-names>
</name>
<name>
<surname>Kazim</surname>
<given-names>A. H.</given-names>
</name>
</person-group> (<year>2020</year>). <article-title>Digital control of grid-tied photovoltaic micro-inverters</article-title>. <source>Electr. Power Components Syst.</source> <volume>48</volume>, <fpage>1272</fpage>&#x2013;<lpage>1281</lpage>. <pub-id pub-id-type="doi">10.1080/15325008.2020.1854381</pub-id>
</citation>
</ref>
<ref id="B33">
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>Nazir</surname>
<given-names>R.</given-names>
</name>
<name>
<surname>Wood</surname>
<given-names>A. R.</given-names>
</name>
<name>
<surname>Shabbir</surname>
<given-names>A.</given-names>
</name>
</person-group> (<year>2019</year>). <article-title>Low thd grid connected converter under variable frequency environment</article-title>. <source>IEEE Access</source> <volume>7</volume>, <fpage>33528</fpage>&#x2013;<lpage>33536</lpage>. <pub-id pub-id-type="doi">10.1109/ACCESS.2019.2904141</pub-id>
</citation>
</ref>
<ref id="B34">
<citation citation-type="confproc">
<person-group person-group-type="author">
<name>
<surname>Parvez</surname>
<given-names>M.</given-names>
</name>
<name>
<surname>Elias</surname>
<given-names>M. F. M.</given-names>
</name>
<name>
<surname>Rahim</surname>
<given-names>N. A.</given-names>
</name>
</person-group> (<year>2016</year>). &#x201c;<article-title>Performance analysis of pr current controller for single-phase inverters</article-title>,&#x201d; in <conf-name>Proceedings of the 4th IET Clean Energy and Technology Conference (CEAT 2016)</conf-name>, <conf-loc>Kuala Lumpur, Malaysia</conf-loc>, <conf-date>November 2016</conf-date>, <fpage>1</fpage>&#x2013;<lpage>8</lpage>. <pub-id pub-id-type="doi">10.1049/cp.2016.1311</pub-id>
</citation>
</ref>
<ref id="B35">
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>Parvez</surname>
<given-names>M.</given-names>
</name>
<name>
<surname>Elias Mohamad</surname>
<given-names>M. F.</given-names>
</name>
<name>
<surname>Rahim Abd</surname>
<given-names>N.</given-names>
</name>
<name>
<surname>Blaabjerg</surname>
<given-names>F.</given-names>
</name>
<name>
<surname>Abbott</surname>
<given-names>D.</given-names>
</name>
<name>
<surname>Al-Sarawi</surname>
<given-names>S. F.</given-names>
</name>
</person-group> (<year>2020</year>). <article-title>Comparative study of discrete pi and pr controls for single-phase ups inverter</article-title>. <source>IEEE Access</source> <volume>8</volume>, <fpage>45584</fpage>&#x2013;<lpage>45595</lpage>. <pub-id pub-id-type="doi">10.1109/ACCESS.2020.2964603</pub-id>
</citation>
</ref>
<ref id="B36">
<citation citation-type="book">
<person-group person-group-type="author">
<name>
<surname>Phillips</surname>
<given-names>C. L.</given-names>
</name>
<name>
<surname>Nagle</surname>
<given-names>H. T.</given-names>
</name>
<name>
<surname>Chakrabortty</surname>
<given-names>A.</given-names>
</name>
</person-group> (<year>2015</year>). &#x201c;<article-title>Discrete-time systems and the z-transform</article-title>,&#x201d; in <source>Digital control system analysis and design</source> (<publisher-loc>London, UK</publisher-loc>: <publisher-name>Pearson</publisher-name>), <fpage>35</fpage>&#x2013;<lpage>90</lpage>.</citation>
</ref>
<ref id="B37">
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>Quan</surname>
<given-names>Q.</given-names>
</name>
<name>
<surname>Cai</surname>
<given-names>K.-Y.</given-names>
</name>
</person-group> (<year>2010</year>). <article-title>A new viewpoint on the internal model principle and its application to periodic signal tracking</article-title>. <source>2010 8th World Congr. Intelligent Control Automation</source>, <fpage>1162</fpage>&#x2013;<lpage>1167</lpage>. <pub-id pub-id-type="doi">10.1109/WCICA.2010.5554679</pub-id>
</citation>
</ref>
<ref id="B38">
<citation citation-type="confproc">
<person-group person-group-type="author">
<name>
<surname>Rufa&#x2019;I Ahmed</surname>
<given-names>N.</given-names>
</name>
<name>
<surname>Zhang</surname>
<given-names>L.</given-names>
</name>
<name>
<surname>Benjamin</surname>
<given-names>C.</given-names>
</name>
</person-group> (<year>2019</year>). &#x201c;<article-title>Comparison of pi and pr controllers with adaptive notch filter for lcl filtered grid-tie converters under weak grid</article-title>,&#x201d; in <conf-name>Proceedings of the 2019 IEEE PES/IAS PowerAfrica</conf-name>, <conf-loc>Abuja, Nigeria</conf-loc>, <conf-date>August 2019</conf-date>, <fpage>650</fpage>&#x2013;<lpage>655</lpage>. <pub-id pub-id-type="doi">10.1109/PowerAfrica.2019.8928912</pub-id>
</citation>
</ref>
<ref id="B39">
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>Silwal</surname>
<given-names>S.</given-names>
</name>
<name>
<surname>Karimi-Ghartemani</surname>
<given-names>M.</given-names>
</name>
</person-group> (<year>2016</year>). <article-title>On the design of proportional resonant controllers for single-phase grid-connected inverters</article-title>. <source>IEEE Int. Conf. Control Autom. ICCA.</source> <volume>5</volume>, <fpage>797</fpage>&#x2013;<lpage>803</lpage>.</citation>
</ref>
<ref id="B40">
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>Stojic</surname>
<given-names>D.</given-names>
</name>
</person-group> (<year>2016</year>). <article-title>Digital resonant controller based on modified tustin discretization method</article-title>. <source>Adv. Electr. Comput. Eng.</source> <volume>16</volume>, <fpage>83</fpage>&#x2013;<lpage>88</lpage>. <pub-id pub-id-type="doi">10.4316/aece.2016.04013</pub-id>
</citation>
</ref>
<ref id="B41">
<citation citation-type="confproc">
<person-group person-group-type="author">
<name>
<surname>Tarraso</surname>
<given-names>A.</given-names>
</name>
<name>
<surname>Candela</surname>
<given-names>J. I.</given-names>
</name>
<name>
<surname>Rocabert</surname>
<given-names>J.</given-names>
</name>
<name>
<surname>Rodriguez</surname>
<given-names>P.</given-names>
</name>
</person-group> (<year>2017</year>). &#x201c;<article-title>Proportional-resonant current controller with orthogonal decoupling on the <italic>&#x3b1;&#x3b2;</italic>-reference frame</article-title>,&#x201d; in <conf-name>Proceedings of the 43rd Annual Conference of the IEEE Industrial Electronics Society</conf-name>, <conf-loc>Beijing, China</conf-loc>, <conf-date>November 2017</conf-date>, <fpage>1453</fpage>&#x2013;<lpage>1458</lpage>. <pub-id pub-id-type="doi">10.1109/IECON.2017.8216247</pub-id>
</citation>
</ref>
<ref id="B42">
<citation citation-type="confproc">
<person-group person-group-type="author">
<name>
<surname>Wang</surname>
<given-names>J.</given-names>
</name>
<name>
<surname>Song</surname>
<given-names>Y.</given-names>
</name>
<name>
<surname>Monti</surname>
<given-names>A.</given-names>
</name>
</person-group> (<year>2015</year>). &#x201c;<article-title>Design of a high performance deadbeat-type current controller for lcl-filtered grid-parallel inverters</article-title>,&#x201d; in <conf-name>Proceedings of the 2015 IEEE 6th International Symposium on Power Electronics for Distributed Generation Systems (PEDG)</conf-name>, <conf-loc>Aachen, Germany</conf-loc>, <conf-date>June 2015</conf-date>, <fpage>1</fpage>&#x2013;<lpage>8</lpage>. <pub-id pub-id-type="doi">10.1109/PEDG.2015.7223112</pub-id>
</citation>
</ref>
<ref id="B43">
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>Wang</surname>
<given-names>Y.</given-names>
</name>
<name>
<surname>Huang</surname>
<given-names>L.</given-names>
</name>
<name>
<surname>Cao</surname>
<given-names>Y.</given-names>
</name>
<name>
<surname>Xie</surname>
<given-names>X.</given-names>
</name>
<name>
<surname>Chen</surname>
<given-names>Z.</given-names>
</name>
<name>
<surname>Xiao</surname>
<given-names>Z.</given-names>
</name>
<etal/>
</person-group> (<year>2018</year>). <article-title>The equivalent model of controller in synchronous frame to stationary frame</article-title>. <source>Glob. Energy Interconnect.</source> <volume>1</volume>, <fpage>122</fpage>&#x2013;<lpage>129</lpage>.</citation>
</ref>
<ref id="B44">
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>Wei</surname>
<given-names>G.</given-names>
</name>
<name>
<surname>Chi</surname>
<given-names>M.</given-names>
</name>
<name>
<surname>Liu</surname>
<given-names>Z.-W.</given-names>
</name>
<name>
<surname>Ge</surname>
<given-names>M.</given-names>
</name>
<name>
<surname>Li</surname>
<given-names>C.</given-names>
</name>
<name>
<surname>Liu</surname>
<given-names>X.</given-names>
</name>
</person-group> (<year>2023</year>). <article-title>Deep reinforcement learning for real-time energy management in smart home</article-title>. <source>IEEE Syst. J.</source> <volume>1</volume>, <fpage>2489</fpage>&#x2013;<lpage>2499</lpage>. <pub-id pub-id-type="doi">10.1109/JSYST.2023.3247592</pub-id>
</citation>
</ref>
<ref id="B45">
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>Yasmeena</surname>
<given-names>S.</given-names>
</name>
<name>
<surname>Das</surname>
<given-names>G. T.</given-names>
</name>
</person-group> (<year>2015</year>). <article-title>A review of technical issues for grid connected renewable energy sources</article-title>. <source>Int. J. Energy Power Eng.</source> <volume>4</volume>, <fpage>22</fpage>&#x2013;<lpage>32</lpage>. <pub-id pub-id-type="doi">10.11648/j.ijepe.s.2015040501.14</pub-id>
</citation>
</ref>
<ref id="B46">
<citation citation-type="book">
<person-group person-group-type="author">
<name>
<surname>Yepes</surname>
<given-names>A. G.</given-names>
</name>
</person-group> (<year>2011</year>). <source>Digital resonant current controllers for voltage source converters</source>.</citation>
</ref>
<ref id="B47">
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>Yepes</surname>
<given-names>A. G.</given-names>
</name>
<name>
<surname>Freijedo</surname>
<given-names>D.</given-names>
</name>
<name>
<surname>Doval-Gandoy</surname>
<given-names>J.</given-names>
</name>
<name>
<surname>opez</surname>
<given-names>O. L.</given-names>
</name>
<name>
<surname>Malvar</surname>
<given-names>J.</given-names>
</name>
<name>
<surname>Fernandez-Comesana</surname>
<given-names>P.</given-names>
</name>
</person-group> (<year>2010</year>). <article-title>Effects of discretization methods on the performance of resonant controllers</article-title>. <source>IEEE Trans. Power Electron.</source> <volume>25</volume>, <fpage>1692</fpage>&#x2013;<lpage>1712</lpage>. <pub-id pub-id-type="doi">10.1109/tpel.2010.2041256</pub-id>
</citation>
</ref>
<ref id="B48">
<citation citation-type="confproc">
<person-group person-group-type="author">
<name>
<surname>Yepes</surname>
<given-names>A. G.</given-names>
</name>
<name>
<surname>Freijedo</surname>
<given-names>F. D.</given-names>
</name>
<name>
<surname>Doval-Gandoy</surname>
<given-names>J.</given-names>
</name>
<name>
<surname>Lopez</surname>
<given-names>O.</given-names>
</name>
<name>
<surname>Malvar</surname>
<given-names>J.</given-names>
</name>
<name>
<surname>Fernandez-Comesana</surname>
<given-names>P.</given-names>
</name>
</person-group> (<year>2009</year>). &#x201c;<article-title>On the discrete-time implementation of resonant controllers for active power filters</article-title>,&#x201d; in <conf-name>Proceedings of the 2009 35th Annual Conference of IEEE Industrial Electronics</conf-name>, <conf-loc>Porto, Portugal</conf-loc>, <conf-date>November 2009</conf-date>.</citation>
</ref>
<ref id="B49">
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>Yepes</surname>
<given-names>A. G.</given-names>
</name>
<name>
<surname>Freijedo</surname>
<given-names>F. D.</given-names>
</name>
<name>
<surname>Lopez</surname>
<given-names>O.</given-names>
</name>
<name>
<surname>Doval-Gandoy</surname>
<given-names>J.</given-names>
</name>
</person-group> (<year>2011</year>). <article-title>High-performance digital resonant controllers implemented with two integrators</article-title>. <source>IEEE Trans. Power Electron.</source> <volume>26</volume>, <fpage>563</fpage>&#x2013;<lpage>576</lpage>. <pub-id pub-id-type="doi">10.1109/tpel.2010.2066290</pub-id>
</citation>
</ref>
<ref id="B50">
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>Zammit</surname>
<given-names>D.</given-names>
</name>
<name>
<surname>Apap</surname>
<given-names>M.</given-names>
</name>
</person-group> (<year>2014</year>). <article-title>Comparison between pi and pr current controllers in grid connected pv inverters</article-title>. <source>Int. J. Electr. Comput. Energetic, Electron. Commun. Eng.</source> <volume>8</volume>.</citation>
</ref>
</ref-list>
</back>
</article>