<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE article PUBLIC "-//NLM//DTD JATS (Z39.96) Journal Publishing DTD v1.3 20210610//EN" "JATS-journalpublishing1-3-mathml3.dtd">
<article article-type="research-article" dtd-version="1.3" xml:lang="EN" xmlns:mml="http://www.w3.org/1998/Math/MathML" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:ali="http://www.niso.org/schemas/ali/1.0/" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<front>
<journal-meta>
<journal-id journal-id-type="publisher-id">Front. Energy Res.</journal-id>
<journal-title-group>
<journal-title>Frontiers in Energy Research</journal-title>
<abbrev-journal-title abbrev-type="pubmed">Front. Energy Res.</abbrev-journal-title>
</journal-title-group>
<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">1731457</article-id>
<article-id pub-id-type="doi">10.3389/fenrg.2026.1731457</article-id>
<article-version article-version-type="Version of Record" vocab="NISO-RP-8-2008"/>
<article-categories>
<subj-group subj-group-type="heading">
<subject>Original Research</subject>
</subj-group>
</article-categories>
<title-group>
<article-title>Design and application of enhanced extended state observer for improving bus voltage stability during EIS testing of multi-stack proton exchange membrane fuel cells</article-title>
<alt-title alt-title-type="left-running-head">Zhao 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.2026.1731457">10.3389/fenrg.2026.1731457</ext-link>
</alt-title>
</title-group>
<contrib-group>
<contrib contrib-type="author">
<name>
<surname>Zhao</surname>
<given-names>Kai</given-names>
</name>
<xref ref-type="aff" rid="aff1">
<sup>1</sup>
</xref>
<role vocab="credit" vocab-identifier="https://credit.niso.org/" vocab-term="Conceptualization" vocab-term-identifier="https://credit.niso.org/contributor-roles/conceptualization/">Conceptualization</role>
<role vocab="credit" vocab-identifier="https://credit.niso.org/" vocab-term="Data curation" vocab-term-identifier="https://credit.niso.org/contributor-roles/data-curation/">Data curation</role>
<role vocab="credit" vocab-identifier="https://credit.niso.org/" vocab-term="Formal analysis" vocab-term-identifier="https://credit.niso.org/contributor-roles/formal-analysis/">Formal Analysis</role>
<role vocab="credit" vocab-identifier="https://credit.niso.org/" vocab-term="Investigation" vocab-term-identifier="https://credit.niso.org/contributor-roles/investigation/">Investigation</role>
<role vocab="credit" vocab-identifier="https://credit.niso.org/" vocab-term="Methodology" vocab-term-identifier="https://credit.niso.org/contributor-roles/methodology/">Methodology</role>
<role vocab="credit" vocab-identifier="https://credit.niso.org/" vocab-term="Validation" vocab-term-identifier="https://credit.niso.org/contributor-roles/validation/">Validation</role>
<role vocab="credit" vocab-identifier="https://credit.niso.org/" vocab-term="Visualization" vocab-term-identifier="https://credit.niso.org/contributor-roles/visualization/">Visualization</role>
<role vocab="credit" vocab-identifier="https://credit.niso.org/" vocab-term="Writing &#x2013; original draft" vocab-term-identifier="https://credit.niso.org/contributor-roles/writing-original-draft/">Writing &#x2013; original draft</role>
<role vocab="credit" vocab-identifier="https://credit.niso.org/" vocab-term="Writing &#x2013; review &#x26; editing" vocab-term-identifier="https://credit.niso.org/contributor-roles/Writing - review &#x26; editing/">Writing &#x2013; review and editing</role>
</contrib>
<contrib contrib-type="author">
<name>
<surname>Song</surname>
<given-names>Zhihao</given-names>
</name>
<xref ref-type="aff" rid="aff2">
<sup>2</sup>
</xref>
<role vocab="credit" vocab-identifier="https://credit.niso.org/" vocab-term="Data curation" vocab-term-identifier="https://credit.niso.org/contributor-roles/data-curation/">Data curation</role>
<role vocab="credit" vocab-identifier="https://credit.niso.org/" vocab-term="Software" vocab-term-identifier="https://credit.niso.org/contributor-roles/software/">Software</role>
<role vocab="credit" vocab-identifier="https://credit.niso.org/" vocab-term="Visualization" vocab-term-identifier="https://credit.niso.org/contributor-roles/visualization/">Visualization</role>
<role vocab="credit" vocab-identifier="https://credit.niso.org/" vocab-term="Writing &#x2013; review &#x26; editing" vocab-term-identifier="https://credit.niso.org/contributor-roles/Writing - review &#x26; editing/">Writing &#x2013; review and editing</role>
</contrib>
<contrib contrib-type="author">
<name>
<surname>Xu</surname>
<given-names>Shuming</given-names>
</name>
<xref ref-type="aff" rid="aff3">
<sup>3</sup>
</xref>
<role vocab="credit" vocab-identifier="https://credit.niso.org/" vocab-term="Formal analysis" vocab-term-identifier="https://credit.niso.org/contributor-roles/formal-analysis/">Formal Analysis</role>
<role vocab="credit" vocab-identifier="https://credit.niso.org/" vocab-term="Methodology" vocab-term-identifier="https://credit.niso.org/contributor-roles/methodology/">Methodology</role>
<role vocab="credit" vocab-identifier="https://credit.niso.org/" vocab-term="Resources" vocab-term-identifier="https://credit.niso.org/contributor-roles/resources/">Resources</role>
<role vocab="credit" vocab-identifier="https://credit.niso.org/" vocab-term="Software" vocab-term-identifier="https://credit.niso.org/contributor-roles/software/">Software</role>
<role vocab="credit" vocab-identifier="https://credit.niso.org/" vocab-term="Writing &#x2013; original draft" vocab-term-identifier="https://credit.niso.org/contributor-roles/writing-original-draft/">Writing &#x2013; original draft</role>
<role vocab="credit" vocab-identifier="https://credit.niso.org/" vocab-term="Writing &#x2013; review &#x26; editing" vocab-term-identifier="https://credit.niso.org/contributor-roles/Writing - review &#x26; editing/">Writing &#x2013; review and editing</role>
</contrib>
<contrib contrib-type="author">
<name>
<surname>Fan</surname>
<given-names>Fuhua</given-names>
</name>
<xref ref-type="aff" rid="aff1">
<sup>1</sup>
</xref>
<xref ref-type="aff" rid="aff4">
<sup>4</sup>
</xref>
<role vocab="credit" vocab-identifier="https://credit.niso.org/" vocab-term="Data curation" vocab-term-identifier="https://credit.niso.org/contributor-roles/data-curation/">Data curation</role>
<role vocab="credit" vocab-identifier="https://credit.niso.org/" vocab-term="Visualization" vocab-term-identifier="https://credit.niso.org/contributor-roles/visualization/">Visualization</role>
<role vocab="credit" vocab-identifier="https://credit.niso.org/" vocab-term="Writing &#x2013; review &#x26; editing" vocab-term-identifier="https://credit.niso.org/contributor-roles/Writing - review &#x26; editing/">Writing &#x2013; review and editing</role>
</contrib>
<contrib contrib-type="author" corresp="yes">
<name>
<surname>Mei</surname>
<given-names>Jian</given-names>
</name>
<xref ref-type="aff" rid="aff1">
<sup>1</sup>
</xref>
<xref ref-type="corresp" rid="c001">&#x2a;</xref>
<uri xlink:href="https://loop.frontiersin.org/people/3253916"/>
<role vocab="credit" vocab-identifier="https://credit.niso.org/" vocab-term="Conceptualization" vocab-term-identifier="https://credit.niso.org/contributor-roles/conceptualization/">Conceptualization</role>
<role vocab="credit" vocab-identifier="https://credit.niso.org/" vocab-term="Investigation" vocab-term-identifier="https://credit.niso.org/contributor-roles/investigation/">Investigation</role>
<role vocab="credit" vocab-identifier="https://credit.niso.org/" vocab-term="Methodology" vocab-term-identifier="https://credit.niso.org/contributor-roles/methodology/">Methodology</role>
<role vocab="credit" vocab-identifier="https://credit.niso.org/" vocab-term="Resources" vocab-term-identifier="https://credit.niso.org/contributor-roles/resources/">Resources</role>
<role vocab="credit" vocab-identifier="https://credit.niso.org/" vocab-term="Visualization" vocab-term-identifier="https://credit.niso.org/contributor-roles/visualization/">Visualization</role>
<role vocab="credit" vocab-identifier="https://credit.niso.org/" vocab-term="Writing &#x2013; original draft" vocab-term-identifier="https://credit.niso.org/contributor-roles/writing-original-draft/">Writing &#x2013; original draft</role>
<role vocab="credit" vocab-identifier="https://credit.niso.org/" vocab-term="Writing &#x2013; review &#x26; editing" vocab-term-identifier="https://credit.niso.org/contributor-roles/Writing - review &#x26; editing/">Writing &#x2013; review and editing</role>
</contrib>
<contrib contrib-type="author" corresp="yes">
<name>
<surname>Sun</surname>
<given-names>Chuanyu</given-names>
</name>
<xref ref-type="aff" rid="aff1">
<sup>1</sup>
</xref>
<xref ref-type="aff" rid="aff4">
<sup>4</sup>
</xref>
<xref ref-type="corresp" rid="c001">&#x2a;</xref>
<uri xlink:href="https://loop.frontiersin.org/people/1379901"/>
<role vocab="credit" vocab-identifier="https://credit.niso.org/" vocab-term="Funding acquisition" vocab-term-identifier="https://credit.niso.org/contributor-roles/funding-acquisition/">Funding acquisition</role>
<role vocab="credit" vocab-identifier="https://credit.niso.org/" vocab-term="Project administration" vocab-term-identifier="https://credit.niso.org/contributor-roles/project-administration/">Project administration</role>
<role vocab="credit" vocab-identifier="https://credit.niso.org/" vocab-term="Resources" vocab-term-identifier="https://credit.niso.org/contributor-roles/resources/">Resources</role>
<role vocab="credit" vocab-identifier="https://credit.niso.org/" vocab-term="Supervision" vocab-term-identifier="https://credit.niso.org/contributor-roles/supervision/">Supervision</role>
<role vocab="credit" vocab-identifier="https://credit.niso.org/" vocab-term="Writing &#x2013; original draft" vocab-term-identifier="https://credit.niso.org/contributor-roles/writing-original-draft/">Writing &#x2013; original draft</role>
<role vocab="credit" vocab-identifier="https://credit.niso.org/" vocab-term="Writing &#x2013; review &#x26; editing" vocab-term-identifier="https://credit.niso.org/contributor-roles/Writing - review &#x26; editing/">Writing &#x2013; review and editing</role>
</contrib>
</contrib-group>
<aff id="aff1">
<label>1</label>
<institution>School of Electrical Engineering and Automation, Harbin Institute of Technology</institution>, <city>Harbin</city>, <country country="CN">China</country>
</aff>
<aff id="aff2">
<label>2</label>
<institution>School of Metallurgy, Northeastern University</institution>, <city>Shenyang</city>, <country country="CN">China</country>
</aff>
<aff id="aff3">
<label>3</label>
<institution>School of Control Engineering, Hangzhou International Innovation Institute of Beihang University</institution>, <city>Hangzhou</city>, <country country="CN">China</country>
</aff>
<aff id="aff4">
<label>4</label>
<institution>Suzhou Research Institute, Harbin Institute of Technology</institution>, <city>Suzhou</city>, <country country="CN">China</country>
</aff>
<author-notes>
<corresp id="c001">
<label>&#x2a;</label>Correspondence: Chuanyu Sun, <email xlink:href="mailto:chuanyu.sun@hit.edu.cn">chuanyu.sun@hit.edu.cn</email>; Jian Mei, <email xlink:href="mailto:hitmeijian@stu.hit.edu.cn">hitmeijian@stu.hit.edu.cn</email>
</corresp>
</author-notes>
<pub-date publication-format="electronic" date-type="pub" iso-8601-date="2026-03-03">
<day>03</day>
<month>03</month>
<year>2026</year>
</pub-date>
<pub-date publication-format="electronic" date-type="collection">
<year>2026</year>
</pub-date>
<volume>14</volume>
<elocation-id>1731457</elocation-id>
<history>
<date date-type="received">
<day>24</day>
<month>10</month>
<year>2025</year>
</date>
<date date-type="rev-recd">
<day>14</day>
<month>01</month>
<year>2026</year>
</date>
<date date-type="accepted">
<day>10</day>
<month>02</month>
<year>2026</year>
</date>
</history>
<permissions>
<copyright-statement>Copyright &#xa9; 2026 Zhao, Song, Xu, Fan, Mei and Sun.</copyright-statement>
<copyright-year>2026</copyright-year>
<copyright-holder>Zhao, Song, Xu, Fan, Mei and Sun</copyright-holder>
<license>
<ali:license_ref start_date="2026-03-03">https://creativecommons.org/licenses/by/4.0/</ali:license_ref>
<license-p>This is an open-access article distributed under the terms of the <ext-link ext-link-type="uri" xlink:href="https://creativecommons.org/licenses/by/4.0/">Creative Commons Attribution License (CC BY)</ext-link>. 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.</license-p>
</license>
</permissions>
<abstract>
<sec>
<title>Introduction</title>
<p>Proton exchange membrane fuel cells (PEMFCs) are highly efficient and environmentally friendly energy conversion devices. Their modular multi-stack FC (MSFC) provides enhanced operational stability and power output. However, during online electrochemical impedance spectroscopy (EIS) testing, multi-frequency sinusoidal current disturbances injected by the DC/DC converter can cause periodic fluctuations in the common DC bus voltage, threatening system stability and measurement accuracy. Existing approaches, such as hardware filtering or improved topology, suffer from high cost and complexity. While the traditional extended state observer (ESO) can estimate the disturbance, it struggles to suppress the fluctuations during multi-frequency co-detection.</p>
</sec>
<sec>
<title>Methods</title>
<p>This paper proposes an enhanced ESO design, namely the multi-resonant ESO (MRESO), for MSFC hybrid systems. By embedding multiple resonant units, the MRESO accurately tracks the EIS disturbance frequency and combines feedforward compensation with battery-assisted control to achieve robust bus voltage stability. The system modeling is based on the principle of energy conservation, and the control scheme adopts a dual-loop structure consisting of an inner current loop and an outer voltage loop. The voltage loop integrates the MRESO to improve interference rejection capability.</p>
</sec>
<sec>
<title>Results</title>
<p>Simulation results show that under load current disturbances and EIS measurement interference, MRESO can reduce voltage fluctuations by over 70% and achieve stability within 0.08 s, outperforming both PI control and traditional ESO, validating its effectiveness in suppressing multi-frequency disturbances.</p>
</sec>
<sec>
<title>Discussion</title>
<p>This study provides a feasible voltage stabilization solution for online EIS monitoring of MSFC, contributing to improve the power quality and reliability of the hybrid system.</p>
</sec>
</abstract>
<kwd-group>
<kwd>active disturbance rejection control</kwd>
<kwd>bus voltage stability</kwd>
<kwd>DC/DC disturbance</kwd>
<kwd>electrochemical impedance spectroscopy</kwd>
<kwd>hydrogen energy system</kwd>
<kwd>multi-resonant extended state observer (MRESO)</kwd>
<kwd>multi-stack fuel cell hybrid system</kwd>
<kwd>proton exchange membrane fuel cell (PEMFC)</kwd>
</kwd-group>
<funding-group>
<award-group id="gs1">
<funding-source id="sp1">
<institution-wrap>
<institution>National Natural Science Foundation of China</institution>
<institution-id institution-id-type="doi" vocab="open-funder-registry" vocab-identifier="10.13039/open_funder_registry">10.13039/501100001809</institution-id>
</institution-wrap>
</funding-source>
<award-id rid="sp1">52407239</award-id>
</award-group>
<funding-statement>The author(s) declared that financial support was received for this work and/or its publication. This research was funded by the National Natural Science Foundation of China (Grant No. 52407239).</funding-statement>
</funding-group>
<counts>
<fig-count count="16"/>
<table-count count="3"/>
<equation-count count="25"/>
<ref-count count="56"/>
<page-count count="00"/>
</counts>
<custom-meta-group>
<custom-meta>
<meta-name>section-at-acceptance</meta-name>
<meta-value>Fuel Cells, Electrolyzers and Membrane Reactors</meta-value>
</custom-meta>
</custom-meta-group>
</article-meta>
</front>
<body>
<sec sec-type="intro" id="s1">
<label>1</label>
<title>Introduction</title>
<p>Fuel cells convert the chemical energy of hydrogen directly into electrical energy through electrochemical reactions, with an energy conversion efficiency of 40%&#x2013;60%, and the reaction process only produces water and heat as by-products (<xref ref-type="bibr" rid="B27">Mekhilef et al., 2012</xref>). This feature gives it a significant advantage in promoting the large-scale application of clean energy, and it is widely regarded as a green energy conversion device with broad prospects (<xref ref-type="bibr" rid="B49">Yue M. et al., 2021</xref>; <xref ref-type="bibr" rid="B20">Hua et al., 2022</xref>; <xref ref-type="bibr" rid="B37">Tero et al., 2023</xref>). In particular, the multi-stack fuel cell (MSFC) system, with its modular combination structure and parameter identification methods, can accurately estimate the operating parameters of the fuel cell stack, further improving its overall efficiency performance based on improving the operating reliability and output power of the hybrid system (<xref ref-type="bibr" rid="B26">Mei et al., 2024</xref>; <xref ref-type="bibr" rid="B7">Chakraborty et al., 2012</xref>; <xref ref-type="bibr" rid="B15">Hamid et al., 2021</xref>; <xref ref-type="bibr" rid="B39">Wang et al., 2019</xref>).</p>
<p>However, the actual performance of fuel cells is affected by various factors, including humidity, temperature, air pressure, electrolyte properties, electrodes, and membrane materials (<xref ref-type="bibr" rid="B23">Liu et al., 2025</xref>; <xref ref-type="bibr" rid="B13">Fili et al., 2025</xref>; <xref ref-type="bibr" rid="B46">Xuan et al., 2025a</xref>; <xref ref-type="bibr" rid="B47">Xuan et al., 2025b</xref>). Performance degradation and typical faults, such as water flooding, membrane drying, and air starvation, are inevitable during long-term operation (<xref ref-type="bibr" rid="B8">Chen et al., 2021</xref>; <xref ref-type="bibr" rid="B38">Trogisch et al., 2025</xref>; <xref ref-type="bibr" rid="B9">Chen et al., 2023</xref>). Therefore, online and accurate state monitoring and health management of MSFC are key to ensuring its long-term stable and efficient operation (<xref ref-type="bibr" rid="B45">Xuan et al., 2024</xref>). Electrochemical impedance spectroscopy (EIS) is an online and non-destructive diagnostic method that can effectively analyze the complex electrochemical reaction kinetics process inside the fuel cell stack (<xref ref-type="bibr" rid="B48">Yu et al., 2025</xref>; <xref ref-type="bibr" rid="B31">P&#xe9;rez-Page and P&#xe9;rez-Herranz, 2014</xref>). In addition, using an EIS-based approach can avoid complex mechanism modelling or reliance on a large amount of actual operational data, making it a powerful tool for fault diagnosis, condition monitoring and evaluation of activation processes (<xref ref-type="bibr" rid="B52">Zhang X. et al., 2025</xref>; <xref ref-type="bibr" rid="B34">Shen et al., 2025</xref>). In industrial applications, fuel cells are usually directly connected to DC/DC converters. During the EIS detection process, multi-frequency sinusoidal current disturbances are injected into the fuel cell stack through the converter as the excitation signal. The response voltage and current signals are then collected synchronously to calculate the impedance frequency response characteristics. Then, key state parameters such as water content, air flow, and catalyst activity are correlated and analyzed (<xref ref-type="bibr" rid="B18">Hossein Haji and Shahin, 2022</xref>; <xref ref-type="bibr" rid="B40">Wu et al., 2008</xref>). The EIS detection principle of FC based on DC/DC converters is shown in <xref ref-type="fig" rid="F1">Figure 1</xref>.</p>
<fig id="F1" position="float">
<label>FIGURE 1</label>
<caption>
<p>EIS detection principle of the fuel cell stack based on a DC/DC converter.</p>
</caption>
<graphic xlink:href="fenrg-14-1731457-g001.tif">
<alt-text content-type="machine-generated">Block diagram illustrating a fuel cell stack connected to a boost converter, with current and voltage measurement feeding a controller. Output signals lead to a load and to FFT analysis, impedance calculation, and impedance spectrum generation.</alt-text>
</graphic>
</fig>
<p>Due to the low output voltage and slow dynamic response of fuel cells, a DC/DC power converter with high step-up ratio is usually required to achieve the voltage boost (<xref ref-type="bibr" rid="B25">Marx et al., 2014</xref>), and the complete EIS detection process often takes several minutes (<xref ref-type="bibr" rid="B1">Andrej et al., 2015</xref>). In particular, in a multi-stack parallel FC system, multiple excitation signals are amplified and injected into the common DC bus, causing the bus voltage to be affected by the superposition of amplified multi-frequency disturbances for a long time (<xref ref-type="bibr" rid="B32">Shen and Wang, 2020a</xref>). This type of disturbance not only endangers the normal operation of other electrical equipment in the system, but the electromagnetic interference it causes will also further affect the EIS measurement accuracy, forming a negative feedback loop.</p>
<p>To cope with the DC bus voltage fluctuations caused by EIS detection, existing research has mainly explored two directions: hardware design optimization and control strategy improvement (<xref ref-type="bibr" rid="B44">Xinze et al., 2022</xref>; <xref ref-type="bibr" rid="B55">Zhu et al., 2025</xref>). At the hardware level, the most direct way is to increase the capacitance or introduce an LC filter to suppress voltage fluctuations (<xref ref-type="bibr" rid="B3">Arne and Roberto, 2023</xref>). However, such methods typically lead to an increase in system volume and cost. The suppression effect on specific frequency disturbances is limited, and the overall cost-effectiveness is quite low. In addition, the literature proposed a variety of improved topologies, including isolated converters with primary energy storage, TAB converters, and bidirectional energy buffers (<xref ref-type="bibr" rid="B33">Shen and Wang, 2020b</xref>; <xref ref-type="bibr" rid="B54">Zhou et al., 2024</xref>; <xref ref-type="bibr" rid="B5">Behnam et al., 2020</xref>). Although these approaches can enhance the bus voltage stability to a certain extent, their structural complexity is too high, which limits their universality in practical engineering applications.</p>
<p>Since fuel cells have slow dynamic response and unidirectional power flow, they are difficult to cope with rapid power fluctuations independently. Therefore, they are often combined with batteries or supercapacitors to form a hybrid system, and MSFC systems are no exception. In this system, fuel cells are responsible for providing steady-state power, while batteries or supercapacitors are responsible for transient power compensation (<xref ref-type="bibr" rid="B28">Mohammed et al., 2025</xref>; <xref ref-type="bibr" rid="B11">Chung-Hsing and Jenn-Jong, 2012</xref>). The construction of such a hybrid system provides a new idea for bus voltage control, that is, by regulating the energy storage unit to achieve active stabilization of the bus voltage during the EIS detection process. <xref ref-type="bibr" rid="B53">Zhang W. et al. (2025)</xref> designs a voltage-power self-coordination control system using sliding mode control (SMC), which reduces the average output voltage harmonic. <xref ref-type="bibr" rid="B21">Hussein et al. (2022)</xref> combines integral sliding mode control (ISMC) with passive-based control (PBC) to suppress voltage fluctuations caused by load mutations. <xref ref-type="bibr" rid="B30">Pachauri et al. (2023)</xref> designs a cascading NPID/PI scheme for regulating the stack voltage of proton exchange membrane fuel cells, achieving setpoint tracking, disturbance rejection, and noise suppression. However, they are not clear whether these methods have good suppression capabilities for periodic disturbances. <xref ref-type="bibr" rid="B51">Zahra Amatoul and Er-raki (2023)</xref> designs a closed-loop PI controller for a PEM fuel cell boost converter, using a PI compensator in the feedback path to stabilize the voltage during load changes. However, this method has a large overshoot, and the effectiveness in actual work still needs to be verified. <xref ref-type="bibr" rid="B50">Yue Z. et al. (2021)</xref> proposes an inner and outer loop cascade control structure to enhance system robustness, but its high gain can easily cause vibration problems in actual systems.</p>
<p>Active disturbance rejection control (ADRC) has shown good applicability in bus voltage control and instantaneous power regulation due to its strong robustness to system parameter changes, external disturbances, and model uncertainties (<xref ref-type="bibr" rid="B41">Wu et al., 2018</xref>; <xref ref-type="bibr" rid="B35">Shulong et al., 2016</xref>; <xref ref-type="bibr" rid="B17">Heran et al., 2024</xref>; <xref ref-type="bibr" rid="B19">Hu et al., 2023</xref>). Among them, the ESO, as the core of ADRC, often adopts a high-gain design to promote the convergence speed and disturbance estimation ability. However, excessive gain can easily lead to problems such as noise sensitivity, difficulty in discrete implementation, and decreased control quality (<xref ref-type="bibr" rid="B22">Krzysztof et al., 2022</xref>). To this end, the literature (<xref ref-type="bibr" rid="B56">Zhuo et al., 2024</xref>) proposed a resonant ESO to achieve bus voltage stability in a single-stack fuel cell system. Moreover, the literature (<xref ref-type="bibr" rid="B36">Sun et al., 2022</xref>) combined the ESO with the Kalman filter to improve the estimation efficiency of state and disturbance. However, the above methods are still difficult to effectively suppress the composite disturbance during multi-frequency EIS co-detection in a MSFC system.</p>
<p>To address the issue of bus voltage fluctuations during online EIS monitoring in Multi-Source Fuel Cell systems, this paper proposes an improved architecture. The main contributions of this paper are as follows:<list list-type="order">
<list-item>
<p>A Multi-Resonant ESO (MRESO) is designed. Integrated with a feedforward compensation mechanism and coordinated with the battery as the energy storage device, it achieves robust control of the bus voltage during online EIS detection in the MSFC system.</p>
</list-item>
<list-item>
<p>Based on simulation data, a comprehensive comparison is conducted between the MRESO and voltage stabilization schemes with various control protocols such as PI control and traditional ESO control. The results confirm that the MRESO possesses significant advantages in suppressing both load current disturbances and multi-frequency EIS disturbances.</p>
</list-item>
</list>
</p>
<p>The structure of the paper is organized as follows: <xref ref-type="sec" rid="s2">Section 2</xref> introduces the modeling of the MSFC hybrid power system; <xref ref-type="sec" rid="s3">Section 3</xref> elaborates on the design principles and operational scheme of the MRESO; <xref ref-type="sec" rid="s4">Section 4</xref> presents the performance evaluation of the controllers based on a three-stack hybrid power system; <xref ref-type="sec" rid="s5">Section 5</xref> compares the control performance of the MRESO, PI controller, and traditional ESO under load current disturbances and EIS disturbances through simulations, and provides conclusions along with suggestions for further research.</p>
</sec>
<sec id="s2">
<label>2</label>
<title>The modeling of MSFC hybrid power system</title>
<sec id="s2-1">
<label>2.1</label>
<title>MSFC hybrid system model</title>
<p>In high-power and high-reliability applications such as aerospace and industrial megawatt-level power output, MSFC hybrid systems have become an important energy solution for long-term, high-power, and highly stable operation due to their superior overall performance (<xref ref-type="bibr" rid="B12">Eddine Halledj et al., 2025</xref>; <xref ref-type="bibr" rid="B10">Chen et al., 2026</xref>). Through a multi-energy architecture and intelligent energy management, this system significantly improves power output capability, system lifespan, and operational reliability.</p>
<p>As shown in <xref ref-type="fig" rid="F2">Figure 2</xref>, the system utilizes a multi-module parallel architecture for power coordination and redundant control. Each fuel cell stack is connected to the DC bus via an independent unidirectional DC/DC converter, primarily responsible for providing continuous baseload power, thereby ensuring the basic operating time and endurance of the system. The battery pack, connected to the same bus via a bidirectional DC/DC converter, provides power regulation and dynamic support. It can rapidly absorb or release energy during load changes, startup, fault conditions, and EIS detection, maintaining bus voltage stability.</p>
<fig id="F2" position="float">
<label>FIGURE 2</label>
<caption>
<p>The structure of the MSFC hybrid system.</p>
</caption>
<graphic xlink:href="fenrg-14-1731457-g002.tif">
<alt-text content-type="machine-generated">Block diagram illustrating a hybrid energy system with three multi-stack fuel cells labeled FC1, FC2, and FC3 connected in parallel to a DC bus, supplying power to a load and a lithium battery module, which is detailed with switches, diodes, inductors, and capacitors representing battery management components.</alt-text>
</graphic>
</fig>
<p>This hybrid system is highly modular and scalable, meeting the stringent weight, efficiency, and reliability requirements of aerospace applications as well as industrial-grade high-power applications exceeding megawatts, demonstrating excellent engineering applicability and control flexibility.</p>
<p>According to <xref ref-type="fig" rid="F2">Figure 2</xref>, the bidirectional DC/DC converter of the lithium battery module can be modelled according to <xref ref-type="disp-formula" rid="e1">Formula 1</xref>:<disp-formula id="e1">
<mml:math id="m1">
<mml:mrow>
<mml:mfenced open="{" close="" separators="&#x7c;">
<mml:mrow>
<mml:mtable columnalign="left">
<mml:mtr>
<mml:mtd>
<mml:mrow>
<mml:msub>
<mml:mi>L</mml:mi>
<mml:mi mathvariant="normal">b</mml:mi>
</mml:msub>
<mml:mfrac>
<mml:mrow>
<mml:mi mathvariant="normal">d</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mtext>dt</mml:mtext>
</mml:mrow>
</mml:mfrac>
<mml:msub>
<mml:mi>i</mml:mi>
<mml:mrow>
<mml:mi mathvariant="normal">L</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi mathvariant="normal">b</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mo>&#x3d;</mml:mo>
<mml:msub>
<mml:mi>v</mml:mi>
<mml:mi mathvariant="normal">b</mml:mi>
</mml:msub>
<mml:mo>&#x2212;</mml:mo>
<mml:msub>
<mml:mi>i</mml:mi>
<mml:mrow>
<mml:mi mathvariant="normal">L</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi mathvariant="normal">b</mml:mi>
</mml:mrow>
</mml:msub>
<mml:msub>
<mml:mi>r</mml:mi>
<mml:mi mathvariant="normal">b</mml:mi>
</mml:msub>
<mml:mo>&#x2212;</mml:mo>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="&#x7c;">
<mml:mrow>
<mml:mn>1</mml:mn>
<mml:mo>&#x2212;</mml:mo>
<mml:msub>
<mml:mi>d</mml:mi>
<mml:mrow>
<mml:mi mathvariant="normal">b</mml:mi>
<mml:mo>,</mml:mo>
<mml:mn>2</mml:mn>
</mml:mrow>
</mml:msub>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:mtext> </mml:mtext>
<mml:msub>
<mml:mi>v</mml:mi>
<mml:mtext>cb</mml:mtext>
</mml:msub>
</mml:mrow>
</mml:mtd>
</mml:mtr>
<mml:mtr>
<mml:mtd>
<mml:mrow>
<mml:msub>
<mml:mi>C</mml:mi>
<mml:mi mathvariant="normal">b</mml:mi>
</mml:msub>
<mml:mfrac>
<mml:mrow>
<mml:mi mathvariant="normal">d</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mtext>dt</mml:mtext>
</mml:mrow>
</mml:mfrac>
<mml:msub>
<mml:mi>v</mml:mi>
<mml:mtext>cb</mml:mtext>
</mml:msub>
<mml:mo>&#x3d;</mml:mo>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="&#x7c;">
<mml:mrow>
<mml:mn>1</mml:mn>
<mml:mo>&#x2212;</mml:mo>
<mml:msub>
<mml:mi>d</mml:mi>
<mml:mrow>
<mml:mi mathvariant="normal">b</mml:mi>
<mml:mo>,</mml:mo>
<mml:mn>2</mml:mn>
</mml:mrow>
</mml:msub>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:mtext> </mml:mtext>
<mml:msub>
<mml:mi>i</mml:mi>
<mml:mrow>
<mml:mi mathvariant="normal">L</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi mathvariant="normal">b</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mo>&#x2212;</mml:mo>
<mml:msub>
<mml:mi>i</mml:mi>
<mml:mrow>
<mml:mtext>bus</mml:mtext>
<mml:mo>,</mml:mo>
<mml:mi mathvariant="normal">b</mml:mi>
</mml:mrow>
</mml:msub>
</mml:mrow>
</mml:mtd>
</mml:mtr>
</mml:mtable>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
</mml:math>
<label>(1)</label>
</disp-formula>where <inline-formula id="inf1">
<mml:math id="m2">
<mml:mrow>
<mml:msub>
<mml:mi>L</mml:mi>
<mml:mi mathvariant="normal">b</mml:mi>
</mml:msub>
</mml:mrow>
</mml:math>
</inline-formula> is the inductor value. <inline-formula id="inf2">
<mml:math id="m3">
<mml:mrow>
<mml:msub>
<mml:mi>i</mml:mi>
<mml:mrow>
<mml:mi mathvariant="normal">L</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi mathvariant="normal">b</mml:mi>
</mml:mrow>
</mml:msub>
</mml:mrow>
</mml:math>
</inline-formula> is the inductor current, which is also the output current of the battery. <inline-formula id="inf3">
<mml:math id="m4">
<mml:mrow>
<mml:msub>
<mml:mi>v</mml:mi>
<mml:mi mathvariant="normal">b</mml:mi>
</mml:msub>
</mml:mrow>
</mml:math>
</inline-formula> is the output voltage of the battery. <inline-formula id="inf4">
<mml:math id="m5">
<mml:mrow>
<mml:msub>
<mml:mi>r</mml:mi>
<mml:mi mathvariant="normal">b</mml:mi>
</mml:msub>
</mml:mrow>
</mml:math>
</inline-formula> is the lumped parasitic resistance value, including the switch resistance and the inductor resistance. <inline-formula id="inf5">
<mml:math id="m6">
<mml:mrow>
<mml:msub>
<mml:mi>d</mml:mi>
<mml:mrow>
<mml:mi mathvariant="normal">b</mml:mi>
<mml:mo>,</mml:mo>
<mml:mn>2</mml:mn>
</mml:mrow>
</mml:msub>
</mml:mrow>
</mml:math>
</inline-formula> is the duty cycle value of the switch <inline-formula id="inf6">
<mml:math id="m7">
<mml:mrow>
<mml:msub>
<mml:mi>S</mml:mi>
<mml:mrow>
<mml:mi mathvariant="normal">b</mml:mi>
<mml:mo>,</mml:mo>
<mml:mn>2</mml:mn>
</mml:mrow>
</mml:msub>
</mml:mrow>
</mml:math>
</inline-formula>, <inline-formula id="inf7">
<mml:math id="m8">
<mml:mrow>
<mml:msub>
<mml:mi>v</mml:mi>
<mml:mtext>cb</mml:mtext>
</mml:msub>
</mml:mrow>
</mml:math>
</inline-formula> is the voltage value at the capacitor <inline-formula id="inf8">
<mml:math id="m9">
<mml:mrow>
<mml:msub>
<mml:mi>C</mml:mi>
<mml:mi mathvariant="normal">b</mml:mi>
</mml:msub>
</mml:mrow>
</mml:math>
</inline-formula> terminal, <inline-formula id="inf9">
<mml:math id="m10">
<mml:mrow>
<mml:msub>
<mml:mi>C</mml:mi>
<mml:mi mathvariant="normal">b</mml:mi>
</mml:msub>
</mml:mrow>
</mml:math>
</inline-formula> is the capacitance value, and <inline-formula id="inf10">
<mml:math id="m11">
<mml:mrow>
<mml:msub>
<mml:mi>i</mml:mi>
<mml:mrow>
<mml:mtext>bus</mml:mtext>
<mml:mo>,</mml:mo>
<mml:mi mathvariant="normal">b</mml:mi>
</mml:mrow>
</mml:msub>
</mml:mrow>
</mml:math>
</inline-formula> is the current value of the battery input bus.</p>
<p>The unidirectional boost converter of the MSFC module is modelled according to <xref ref-type="disp-formula" rid="e2">Formula 2</xref>:<disp-formula id="e2">
<mml:math id="m12">
<mml:mrow>
<mml:mfenced open="{" close="" separators="&#x7c;">
<mml:mrow>
<mml:mtable columnalign="left">
<mml:mtr>
<mml:mtd>
<mml:mrow>
<mml:msub>
<mml:mi>L</mml:mi>
<mml:mrow>
<mml:mtext>fc</mml:mtext>
<mml:mo>,</mml:mo>
<mml:mi>m</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mfrac>
<mml:mrow>
<mml:mi mathvariant="normal">d</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mtext>dt</mml:mtext>
</mml:mrow>
</mml:mfrac>
<mml:msub>
<mml:mi>i</mml:mi>
<mml:mrow>
<mml:mtext>fc</mml:mtext>
<mml:mo>,</mml:mo>
<mml:mi>m</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mo>&#x3d;</mml:mo>
<mml:msub>
<mml:mi>v</mml:mi>
<mml:mrow>
<mml:mtext>fc</mml:mtext>
<mml:mo>,</mml:mo>
<mml:mi>m</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mo>&#x2212;</mml:mo>
<mml:msub>
<mml:mi>i</mml:mi>
<mml:mrow>
<mml:mtext>fc</mml:mtext>
<mml:mo>,</mml:mo>
<mml:mi>m</mml:mi>
</mml:mrow>
</mml:msub>
<mml:msub>
<mml:mi>r</mml:mi>
<mml:mrow>
<mml:mtext>fc</mml:mtext>
<mml:mo>,</mml:mo>
<mml:mi>m</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mo>&#x2212;</mml:mo>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="&#x7c;">
<mml:mrow>
<mml:mn>1</mml:mn>
<mml:mo>&#x2212;</mml:mo>
<mml:msub>
<mml:mi>d</mml:mi>
<mml:mrow>
<mml:mtext>fc</mml:mtext>
<mml:mo>,</mml:mo>
<mml:mi>m</mml:mi>
</mml:mrow>
</mml:msub>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:mtext> </mml:mtext>
<mml:msub>
<mml:mi>v</mml:mi>
<mml:mtext>bus</mml:mtext>
</mml:msub>
<mml:mo>,</mml:mo>
<mml:mi>m</mml:mi>
<mml:mo>&#x3d;</mml:mo>
<mml:mn>1</mml:mn>
<mml:mo>,</mml:mo>
<mml:mn>2</mml:mn>
<mml:mo>,</mml:mo>
<mml:mn>3</mml:mn>
<mml:mo>,</mml:mo>
<mml:mo>.</mml:mo>
<mml:mo>.</mml:mo>
<mml:mo>.</mml:mo>
<mml:mo>,</mml:mo>
<mml:mi>N</mml:mi>
</mml:mrow>
</mml:mtd>
</mml:mtr>
<mml:mtr>
<mml:mtd>
<mml:mrow>
<mml:mstyle displaystyle="true">
<mml:munderover>
<mml:mo>&#x2211;</mml:mo>
<mml:mrow>
<mml:mi>m</mml:mi>
<mml:mo>&#x3d;</mml:mo>
<mml:mn>1</mml:mn>
</mml:mrow>
<mml:mi>N</mml:mi>
</mml:munderover>
</mml:mstyle>
<mml:msub>
<mml:mi>C</mml:mi>
<mml:mrow>
<mml:mtext>fc</mml:mtext>
<mml:mo>,</mml:mo>
<mml:mi>m</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mfrac>
<mml:mrow>
<mml:mi mathvariant="normal">d</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mtext>dt</mml:mtext>
</mml:mrow>
</mml:mfrac>
<mml:msub>
<mml:mi>v</mml:mi>
<mml:msub>
<mml:mi mathvariant="normal">C</mml:mi>
<mml:mrow>
<mml:mtext>fc</mml:mtext>
<mml:mo>,</mml:mo>
<mml:mi>m</mml:mi>
</mml:mrow>
</mml:msub>
</mml:msub>
<mml:mo>&#x3d;</mml:mo>
<mml:mstyle displaystyle="true">
<mml:munderover>
<mml:mo>&#x2211;</mml:mo>
<mml:mrow>
<mml:mi>m</mml:mi>
<mml:mo>&#x3d;</mml:mo>
<mml:mn>1</mml:mn>
</mml:mrow>
<mml:mi>N</mml:mi>
</mml:munderover>
</mml:mstyle>
<mml:mrow>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="&#x7c;">
<mml:mrow>
<mml:mn>1</mml:mn>
<mml:mo>&#x2212;</mml:mo>
<mml:msub>
<mml:mi>d</mml:mi>
<mml:mrow>
<mml:mtext>fc</mml:mtext>
<mml:mo>,</mml:mo>
<mml:mi>m</mml:mi>
</mml:mrow>
</mml:msub>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:mtext> </mml:mtext>
<mml:msub>
<mml:mi>i</mml:mi>
<mml:mrow>
<mml:mtext>fc</mml:mtext>
<mml:mo>,</mml:mo>
<mml:mi>m</mml:mi>
</mml:mrow>
</mml:msub>
</mml:mrow>
<mml:mo>&#x2212;</mml:mo>
<mml:msub>
<mml:mi>i</mml:mi>
<mml:mrow>
<mml:mtext>bus</mml:mtext>
<mml:mo>,</mml:mo>
<mml:mtext>fc</mml:mtext>
</mml:mrow>
</mml:msub>
<mml:mo>,</mml:mo>
<mml:mi>m</mml:mi>
<mml:mo>&#x3d;</mml:mo>
<mml:mn>1</mml:mn>
<mml:mo>,</mml:mo>
<mml:mn>2</mml:mn>
<mml:mo>,</mml:mo>
<mml:mn>3</mml:mn>
<mml:mo>,</mml:mo>
<mml:mo>.</mml:mo>
<mml:mo>.</mml:mo>
<mml:mo>.</mml:mo>
<mml:mo>,</mml:mo>
<mml:mi>N</mml:mi>
</mml:mrow>
</mml:mtd>
</mml:mtr>
</mml:mtable>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
</mml:math>
<label>(2)</label>
</disp-formula>where <inline-formula id="inf11">
<mml:math id="m13">
<mml:mrow>
<mml:msub>
<mml:mi>L</mml:mi>
<mml:mrow>
<mml:mtext>fc</mml:mtext>
<mml:mo>,</mml:mo>
<mml:mi>m</mml:mi>
</mml:mrow>
</mml:msub>
</mml:mrow>
</mml:math>
</inline-formula> is the inductance of the converter corresponding to the <italic>m</italic>th FC, <inline-formula id="inf12">
<mml:math id="m14">
<mml:mrow>
<mml:msub>
<mml:mi>i</mml:mi>
<mml:mrow>
<mml:mtext>fc</mml:mtext>
<mml:mo>,</mml:mo>
<mml:mi>m</mml:mi>
</mml:mrow>
</mml:msub>
</mml:mrow>
</mml:math>
</inline-formula> is the <italic>m</italic>th inductor current of the converter corresponding to the <italic>m</italic>th FC (also the output current of the <italic>m</italic>th FC), <inline-formula id="inf13">
<mml:math id="m15">
<mml:mrow>
<mml:msub>
<mml:mi>v</mml:mi>
<mml:mrow>
<mml:mtext>fc</mml:mtext>
<mml:mo>,</mml:mo>
<mml:mi>m</mml:mi>
</mml:mrow>
</mml:msub>
</mml:mrow>
</mml:math>
</inline-formula> is the output voltage of the <italic>m</italic>th FC, <inline-formula id="inf14">
<mml:math id="m16">
<mml:mrow>
<mml:msub>
<mml:mi>r</mml:mi>
<mml:mrow>
<mml:mtext>fc</mml:mtext>
<mml:mo>,</mml:mo>
<mml:mi>m</mml:mi>
</mml:mrow>
</mml:msub>
</mml:mrow>
</mml:math>
</inline-formula> is the equivalent lumped parasitic resistance of the converter corresponding to the <italic>m</italic>th FC (including switch resistances and inductor resistances), <inline-formula id="inf15">
<mml:math id="m17">
<mml:mrow>
<mml:msub>
<mml:mi>d</mml:mi>
<mml:mrow>
<mml:mtext>fc</mml:mtext>
<mml:mo>,</mml:mo>
<mml:mi>m</mml:mi>
</mml:mrow>
</mml:msub>
</mml:mrow>
</mml:math>
</inline-formula> is the duty cycle of switch <inline-formula id="inf16">
<mml:math id="m18">
<mml:mrow>
<mml:msub>
<mml:mi>S</mml:mi>
<mml:mrow>
<mml:mtext>fc</mml:mtext>
<mml:mo>,</mml:mo>
<mml:mi>m</mml:mi>
</mml:mrow>
</mml:msub>
</mml:mrow>
</mml:math>
</inline-formula>, <inline-formula id="inf17">
<mml:math id="m19">
<mml:mrow>
<mml:msub>
<mml:mi>v</mml:mi>
<mml:msub>
<mml:mi mathvariant="normal">C</mml:mi>
<mml:mrow>
<mml:mtext>fc</mml:mtext>
<mml:mo>,</mml:mo>
<mml:mi>m</mml:mi>
</mml:mrow>
</mml:msub>
</mml:msub>
</mml:mrow>
</mml:math>
</inline-formula> is the voltage across capacitor <inline-formula id="inf18">
<mml:math id="m20">
<mml:mrow>
<mml:msub>
<mml:mi>C</mml:mi>
<mml:mrow>
<mml:mtext>fc</mml:mtext>
<mml:mo>,</mml:mo>
<mml:mi>m</mml:mi>
</mml:mrow>
</mml:msub>
</mml:mrow>
</mml:math>
</inline-formula>, <inline-formula id="inf19">
<mml:math id="m21">
<mml:mrow>
<mml:msub>
<mml:mi>C</mml:mi>
<mml:mrow>
<mml:mtext>fc</mml:mtext>
<mml:mo>,</mml:mo>
<mml:mi>m</mml:mi>
</mml:mrow>
</mml:msub>
</mml:mrow>
</mml:math>
</inline-formula> is the capacitance of the converter corresponding to the <italic>m</italic>th FC, and <inline-formula id="inf20">
<mml:math id="m22">
<mml:mrow>
<mml:msub>
<mml:mi>i</mml:mi>
<mml:mrow>
<mml:mtext>bus</mml:mtext>
<mml:mo>,</mml:mo>
<mml:mtext>fc</mml:mtext>
</mml:mrow>
</mml:msub>
</mml:mrow>
</mml:math>
</inline-formula> is the total current injected into the bus by the FCs.</p>
<p>For the MSFC hybrid system, according to the law of conservation of energy, <xref ref-type="disp-formula" rid="e3">Formula 3</xref> can be obtained:<disp-formula id="e3">
<mml:math id="m23">
<mml:mrow>
<mml:mfenced open="{" close="" separators="&#x7c;">
<mml:mrow>
<mml:mtable columnalign="left">
<mml:mtr>
<mml:mtd>
<mml:mrow>
<mml:msub>
<mml:mi>P</mml:mi>
<mml:mrow>
<mml:mtext>bus</mml:mtext>
<mml:mo>,</mml:mo>
<mml:mi mathvariant="normal">b</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mo>&#x2b;</mml:mo>
<mml:mstyle displaystyle="true">
<mml:munderover>
<mml:mo>&#x2211;</mml:mo>
<mml:mrow>
<mml:mi>m</mml:mi>
<mml:mo>&#x3d;</mml:mo>
<mml:mn>1</mml:mn>
</mml:mrow>
<mml:mi>N</mml:mi>
</mml:munderover>
</mml:mstyle>
<mml:msub>
<mml:mi>P</mml:mi>
<mml:mrow>
<mml:mtext>bus</mml:mtext>
<mml:mo>,</mml:mo>
<mml:mtext>fc</mml:mtext>
<mml:mo>,</mml:mo>
<mml:mi>m</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mo>&#x3d;</mml:mo>
<mml:msub>
<mml:mi>P</mml:mi>
<mml:mtext>bus</mml:mtext>
</mml:msub>
<mml:mo>,</mml:mo>
<mml:mi>m</mml:mi>
<mml:mo>&#x3d;</mml:mo>
<mml:mn>1</mml:mn>
<mml:mo>,</mml:mo>
<mml:mn>2</mml:mn>
<mml:mo>,</mml:mo>
<mml:mn>3</mml:mn>
<mml:mo>,</mml:mo>
<mml:mo>.</mml:mo>
<mml:mo>.</mml:mo>
<mml:mo>.</mml:mo>
<mml:mo>,</mml:mo>
<mml:mi>N</mml:mi>
</mml:mrow>
</mml:mtd>
</mml:mtr>
<mml:mtr>
<mml:mtd>
<mml:mrow>
<mml:mstyle displaystyle="true">
<mml:munderover>
<mml:mo>&#x2211;</mml:mo>
<mml:mrow>
<mml:mi>m</mml:mi>
<mml:mo>&#x3d;</mml:mo>
<mml:mn>1</mml:mn>
</mml:mrow>
<mml:mi>N</mml:mi>
</mml:munderover>
</mml:mstyle>
<mml:msub>
<mml:mi>i</mml:mi>
<mml:mrow>
<mml:mtext>bus</mml:mtext>
<mml:mo>,</mml:mo>
<mml:mtext>fc</mml:mtext>
<mml:mo>,</mml:mo>
<mml:mi>m</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mo>&#x3d;</mml:mo>
<mml:msub>
<mml:mi>i</mml:mi>
<mml:mrow>
<mml:mtext>bus</mml:mtext>
<mml:mo>,</mml:mo>
<mml:mtext>fc</mml:mtext>
</mml:mrow>
</mml:msub>
<mml:mo>,</mml:mo>
<mml:mi>m</mml:mi>
<mml:mo>&#x3d;</mml:mo>
<mml:mn>1</mml:mn>
<mml:mo>,</mml:mo>
<mml:mn>2</mml:mn>
<mml:mo>,</mml:mo>
<mml:mn>3</mml:mn>
<mml:mo>,</mml:mo>
<mml:mo>.</mml:mo>
<mml:mo>.</mml:mo>
<mml:mo>.</mml:mo>
<mml:mo>,</mml:mo>
<mml:mi>N</mml:mi>
</mml:mrow>
</mml:mtd>
</mml:mtr>
<mml:mtr>
<mml:mtd>
<mml:mrow>
<mml:msub>
<mml:mi>i</mml:mi>
<mml:mrow>
<mml:mtext>bus</mml:mtext>
<mml:mo>,</mml:mo>
<mml:mtext>fc</mml:mtext>
</mml:mrow>
</mml:msub>
<mml:mo>&#x2b;</mml:mo>
<mml:msub>
<mml:mi>i</mml:mi>
<mml:mrow>
<mml:mtext>bus</mml:mtext>
<mml:mo>,</mml:mo>
<mml:mi mathvariant="normal">b</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mo>&#x3d;</mml:mo>
<mml:msub>
<mml:mi>i</mml:mi>
<mml:mtext>bus</mml:mtext>
</mml:msub>
<mml:mo>,</mml:mo>
<mml:mi>m</mml:mi>
<mml:mo>&#x3d;</mml:mo>
<mml:mn>1</mml:mn>
<mml:mo>,</mml:mo>
<mml:mn>2</mml:mn>
<mml:mo>,</mml:mo>
<mml:mn>3</mml:mn>
<mml:mo>,</mml:mo>
<mml:mo>.</mml:mo>
<mml:mo>.</mml:mo>
<mml:mo>.</mml:mo>
<mml:mo>,</mml:mo>
<mml:mi>N</mml:mi>
</mml:mrow>
</mml:mtd>
</mml:mtr>
</mml:mtable>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
</mml:math>
<label>(3)</label>
</disp-formula>where <inline-formula id="inf21">
<mml:math id="m24">
<mml:mrow>
<mml:msub>
<mml:mi>P</mml:mi>
<mml:mrow>
<mml:mtext>bus</mml:mtext>
<mml:mo>,</mml:mo>
<mml:mi mathvariant="normal">b</mml:mi>
</mml:mrow>
</mml:msub>
</mml:mrow>
</mml:math>
</inline-formula> is the output power of the converter corresponding to the lithium battery, <inline-formula id="inf22">
<mml:math id="m25">
<mml:mrow>
<mml:msub>
<mml:mi>P</mml:mi>
<mml:mrow>
<mml:mtext>bus</mml:mtext>
<mml:mo>,</mml:mo>
<mml:mtext>fc</mml:mtext>
<mml:mo>,</mml:mo>
<mml:mi>m</mml:mi>
</mml:mrow>
</mml:msub>
</mml:mrow>
</mml:math>
</inline-formula> is the output power of the converter corresponding to the <italic>m</italic>th FC, <inline-formula id="inf23">
<mml:math id="m26">
<mml:mrow>
<mml:msub>
<mml:mi>P</mml:mi>
<mml:mtext>bus</mml:mtext>
</mml:msub>
</mml:mrow>
</mml:math>
</inline-formula> is the load power on the bus, <inline-formula id="inf24">
<mml:math id="m27">
<mml:mrow>
<mml:msub>
<mml:mi>i</mml:mi>
<mml:mrow>
<mml:mtext>bus</mml:mtext>
<mml:mo>,</mml:mo>
<mml:mtext>fc</mml:mtext>
<mml:mo>,</mml:mo>
<mml:mi>m</mml:mi>
</mml:mrow>
</mml:msub>
</mml:mrow>
</mml:math>
</inline-formula> is the current value of the <italic>m</italic>th FC, that is input to the bus, <inline-formula id="inf25">
<mml:math id="m28">
<mml:mrow>
<mml:msub>
<mml:mi>i</mml:mi>
<mml:mrow>
<mml:mtext>bus</mml:mtext>
<mml:mo>,</mml:mo>
<mml:mtext>fc</mml:mtext>
</mml:mrow>
</mml:msub>
</mml:mrow>
</mml:math>
</inline-formula> is the total current value of m FCs input to the bus, and <inline-formula id="inf26">
<mml:math id="m29">
<mml:mrow>
<mml:msub>
<mml:mi>i</mml:mi>
<mml:mtext>bus</mml:mtext>
</mml:msub>
</mml:mrow>
</mml:math>
</inline-formula> is the current value of the bus.</p>
<p>Since the MSFC and lithium battery are connected in parallel to form a hybrid power system, the voltage relations of each fuel cell, lithium battery, and the bus can be described with the following formula:<disp-formula id="e4">
<mml:math id="m30">
<mml:mrow>
<mml:msub>
<mml:mi>v</mml:mi>
<mml:msub>
<mml:mi mathvariant="normal">C</mml:mi>
<mml:mrow>
<mml:mtext>fc</mml:mtext>
<mml:mo>,</mml:mo>
<mml:mi mathvariant="normal">m</mml:mi>
</mml:mrow>
</mml:msub>
</mml:msub>
<mml:mo>&#x3d;</mml:mo>
<mml:msub>
<mml:mi>v</mml:mi>
<mml:mtext>Cb</mml:mtext>
</mml:msub>
<mml:mo>&#x3d;</mml:mo>
<mml:msub>
<mml:mi>v</mml:mi>
<mml:mtext>bus</mml:mtext>
</mml:msub>
</mml:mrow>
</mml:math>
<label>(4)</label>
</disp-formula>
</p>
<p>From the perspective of the bidirectional converter for the battery, the MSFC hybrid system satisfies the following energy conservation requirements:<disp-formula id="e5">
<mml:math id="m31">
<mml:mrow>
<mml:mfrac>
<mml:mrow>
<mml:mi mathvariant="normal">d</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mtext>dt</mml:mtext>
</mml:mrow>
</mml:mfrac>
<mml:msub>
<mml:mi>E</mml:mi>
<mml:mtext>Cb</mml:mtext>
</mml:msub>
<mml:mo>&#x3d;</mml:mo>
<mml:msub>
<mml:mi>P</mml:mi>
<mml:mi mathvariant="normal">b</mml:mi>
</mml:msub>
<mml:mo>&#x2b;</mml:mo>
<mml:mstyle displaystyle="true">
<mml:munderover>
<mml:mo>&#x2211;</mml:mo>
<mml:mrow>
<mml:mi>m</mml:mi>
<mml:mo>&#x3d;</mml:mo>
<mml:mn>1</mml:mn>
</mml:mrow>
<mml:mi>N</mml:mi>
</mml:munderover>
</mml:mstyle>
<mml:msub>
<mml:mi>P</mml:mi>
<mml:mrow>
<mml:mtext>fb</mml:mtext>
<mml:mo>,</mml:mo>
<mml:mi>m</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mo>&#x2212;</mml:mo>
<mml:msub>
<mml:mi>P</mml:mi>
<mml:mi mathvariant="normal">r</mml:mi>
</mml:msub>
<mml:mo>&#x2212;</mml:mo>
<mml:msub>
<mml:mi>P</mml:mi>
<mml:mrow>
<mml:mtext>bus</mml:mtext>
<mml:mo>,</mml:mo>
<mml:mi mathvariant="normal">b</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mo>&#x2212;</mml:mo>
<mml:msub>
<mml:mi>P</mml:mi>
<mml:mtext>loss</mml:mtext>
</mml:msub>
</mml:mrow>
</mml:math>
<label>(5)</label>
</disp-formula>where <inline-formula id="inf27">
<mml:math id="m32">
<mml:mrow>
<mml:msub>
<mml:mi>E</mml:mi>
<mml:mtext>cb</mml:mtext>
</mml:msub>
</mml:mrow>
</mml:math>
</inline-formula> is the energy stored in the capacitor <inline-formula id="inf28">
<mml:math id="m33">
<mml:mrow>
<mml:msub>
<mml:mi>C</mml:mi>
<mml:mi mathvariant="normal">b</mml:mi>
</mml:msub>
</mml:mrow>
</mml:math>
</inline-formula> of the battery converter, satisfying <inline-formula id="inf29">
<mml:math id="m34">
<mml:mrow>
<mml:msub>
<mml:mi>E</mml:mi>
<mml:mtext>Cb</mml:mtext>
</mml:msub>
<mml:mo>&#x3d;</mml:mo>
<mml:mfrac>
<mml:mrow>
<mml:mn>1</mml:mn>
</mml:mrow>
<mml:mrow>
<mml:mn>2</mml:mn>
</mml:mrow>
</mml:mfrac>
<mml:msub>
<mml:mi mathvariant="normal">C</mml:mi>
<mml:mi mathvariant="normal">b</mml:mi>
</mml:msub>
<mml:msubsup>
<mml:mi>v</mml:mi>
<mml:mtext>Cb</mml:mtext>
<mml:mn>2</mml:mn>
</mml:msubsup>
</mml:mrow>
</mml:math>
</inline-formula>. According to <xref ref-type="disp-formula" rid="e4">Formula 4</xref>, to stabilize <inline-formula id="inf30">
<mml:math id="m35">
<mml:mrow>
<mml:msub>
<mml:mi>v</mml:mi>
<mml:mtext>bus</mml:mtext>
</mml:msub>
</mml:mrow>
</mml:math>
</inline-formula>, it is only necessary to ensure the stability of <inline-formula id="inf31">
<mml:math id="m36">
<mml:mrow>
<mml:msub>
<mml:mi>v</mml:mi>
<mml:mtext>Cb</mml:mtext>
</mml:msub>
</mml:mrow>
</mml:math>
</inline-formula>. <inline-formula id="inf32">
<mml:math id="m37">
<mml:mrow>
<mml:msub>
<mml:mi>P</mml:mi>
<mml:mi mathvariant="normal">b</mml:mi>
</mml:msub>
</mml:mrow>
</mml:math>
</inline-formula> is the power provided by the lithium battery, satisfying <inline-formula id="inf33">
<mml:math id="m38">
<mml:mrow>
<mml:msub>
<mml:mi>P</mml:mi>
<mml:mi mathvariant="normal">b</mml:mi>
</mml:msub>
<mml:mo>&#x3d;</mml:mo>
<mml:msub>
<mml:msub>
<mml:mi>i</mml:mi>
<mml:mrow>
<mml:mi mathvariant="normal">L</mml:mi>
<mml:mo>,</mml:mo>
</mml:mrow>
</mml:msub>
<mml:mi mathvariant="normal">b</mml:mi>
</mml:msub>
<mml:msub>
<mml:mi>v</mml:mi>
<mml:mi mathvariant="normal">b</mml:mi>
</mml:msub>
</mml:mrow>
</mml:math>
</inline-formula>. <inline-formula id="inf34">
<mml:math id="m39">
<mml:mrow>
<mml:msub>
<mml:mi>P</mml:mi>
<mml:mrow>
<mml:mtext>fb</mml:mtext>
<mml:mo>,</mml:mo>
<mml:mi>m</mml:mi>
</mml:mrow>
</mml:msub>
</mml:mrow>
</mml:math>
</inline-formula> is the power from the <inline-formula id="inf35">
<mml:math id="m40">
<mml:mrow>
<mml:msup>
<mml:mi>m</mml:mi>
<mml:mrow>
<mml:mi>t</mml:mi>
<mml:mi>h</mml:mi>
</mml:mrow>
</mml:msup>
</mml:mrow>
</mml:math>
</inline-formula> FC in the MSFC that enters the battery terminal via the bus. <inline-formula id="inf36">
<mml:math id="m41">
<mml:mrow>
<mml:msub>
<mml:mi>P</mml:mi>
<mml:mi mathvariant="normal">r</mml:mi>
</mml:msub>
</mml:mrow>
</mml:math>
</inline-formula> is the energy loss due to the lumped parasitic resistance in the bidirectional converter, satisfying <inline-formula id="inf37">
<mml:math id="m42">
<mml:mrow>
<mml:msub>
<mml:mi>P</mml:mi>
<mml:mi mathvariant="normal">r</mml:mi>
</mml:msub>
<mml:mo>&#x3d;</mml:mo>
<mml:msub>
<mml:mi>r</mml:mi>
<mml:mi mathvariant="normal">b</mml:mi>
</mml:msub>
<mml:msubsup>
<mml:mi>i</mml:mi>
<mml:mi mathvariant="normal">b</mml:mi>
<mml:mn>2</mml:mn>
</mml:msubsup>
</mml:mrow>
</mml:math>
</inline-formula>. <inline-formula id="inf38">
<mml:math id="m43">
<mml:mrow>
<mml:msub>
<mml:mi>P</mml:mi>
<mml:mtext>loss</mml:mtext>
</mml:msub>
</mml:mrow>
</mml:math>
</inline-formula> represents other power losses.</p>
</sec>
<sec id="s2-2">
<label>2.2</label>
<title>System control scheme</title>
<p>In the MSFC hybrid system, to realize online EIS detection of MSFC systems and maintain DC bus voltage stability, this paper designs a control scheme as shown in <xref ref-type="fig" rid="F3">Figure 3</xref>. Considering that the fuel cell itself has a slow response characteristic due to the electrochemical process, it is not suitable for performing frequent and rapid power compensation tasks. However, as the main energy source of the system, it is suitable as the power source to receive the EIS excitation signal. To ensure that the injected excitation current signal can track the specific frequency sinusoidal reference signal given by the EIS algorithm with high precision and low static error, a proportional resonant (PR) controller is used in the current loop of the DC/DC converter on the fuel cell side.</p>
<fig id="F3" position="float">
<label>FIGURE 3</label>
<caption>
<p>The control scheme of the MSFC hybrid system.</p>
</caption>
<graphic xlink:href="fenrg-14-1731457-g003.tif">
<alt-text content-type="machine-generated">Block diagram illustrating a power converter control system with a voltage controller, multiple current controllers, pulse width modulation (PWM) modules, and DC-DC converters for both bidirectional and unidirectional energy conversion. An excitation signal diagram is included.</alt-text>
</graphic>
</fig>
<p>The bus voltage fluctuation caused by EIS excitation is regarded as an observable and compensable deterministic disturbance. Lithium batteries are suitable for this type of disturbance suppression task due to their high power density and fast dynamic response characteristics. To this end, a dual-loop control structure consisting of an inner loop of inductor current and an outer loop of bus voltage is adopted in the converter of the lithium battery side. The voltage outer loop is designed as an active disturbance rejection controller based on the MRESO, and its output serves as the reference signal for the current inner loop. The current inner loop adopts a PI controller to achieve fast tracking of the inductor current. The controller generates a duty cycle signal based on the inductor current feedback, which is then modulated through the PWM module to ultimately generate the corresponding switching signal to drive the converter.</p>
</sec>
</sec>
<sec id="s3">
<label>3</label>
<title>The design of MRESO</title>
<p>The ESO can treat the nonlinear, uncertain, and internal/external disturbances of the controlled object as a total disturbance as the extended state output. By introducing the ESO into the capacitor energy conservation equation described by <xref ref-type="disp-formula" rid="e5">Formula 5</xref> and taking the battery inductor current as the control input of the system, we can obtain:<disp-formula id="e6">
<mml:math id="m44">
<mml:mrow>
<mml:mfrac>
<mml:mi>d</mml:mi>
<mml:mrow>
<mml:mi>d</mml:mi>
<mml:mi mathvariant="normal">t</mml:mi>
</mml:mrow>
</mml:mfrac>
<mml:mtext> </mml:mtext>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="&#x7c;">
<mml:mrow>
<mml:mfrac>
<mml:mrow>
<mml:mn>1</mml:mn>
</mml:mrow>
<mml:mrow>
<mml:mn>2</mml:mn>
</mml:mrow>
</mml:mfrac>
<mml:msub>
<mml:mi>C</mml:mi>
<mml:mtext>cb</mml:mtext>
</mml:msub>
<mml:msubsup>
<mml:mi>v</mml:mi>
<mml:mtext>bus</mml:mtext>
<mml:mn>2</mml:mn>
</mml:msubsup>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:mo>&#x3d;</mml:mo>
<mml:msub>
<mml:mi>v</mml:mi>
<mml:mi mathvariant="normal">b</mml:mi>
</mml:msub>
<mml:msub>
<mml:mi>i</mml:mi>
<mml:mrow>
<mml:mi mathvariant="normal">L</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi mathvariant="normal">b</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mo>&#x2212;</mml:mo>
<mml:msub>
<mml:mi>r</mml:mi>
<mml:mi mathvariant="normal">b</mml:mi>
</mml:msub>
<mml:msubsup>
<mml:mi>i</mml:mi>
<mml:mi mathvariant="normal">b</mml:mi>
<mml:mn>2</mml:mn>
</mml:msubsup>
<mml:mo>&#x2b;</mml:mo>
<mml:mstyle displaystyle="true">
<mml:munderover>
<mml:mo>&#x2211;</mml:mo>
<mml:mrow>
<mml:mi>m</mml:mi>
<mml:mo>&#x3d;</mml:mo>
<mml:mn>1</mml:mn>
</mml:mrow>
<mml:mi>N</mml:mi>
</mml:munderover>
</mml:mstyle>
<mml:msub>
<mml:mi>P</mml:mi>
<mml:mrow>
<mml:mtext>fb</mml:mtext>
<mml:mo>,</mml:mo>
<mml:mi>m</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mo>&#x2212;</mml:mo>
<mml:msub>
<mml:mi>P</mml:mi>
<mml:mrow>
<mml:mtext>bus</mml:mtext>
<mml:mo>,</mml:mo>
<mml:mi mathvariant="normal">b</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mo>&#x2212;</mml:mo>
<mml:msub>
<mml:mi>P</mml:mi>
<mml:mtext>loss</mml:mtext>
</mml:msub>
<mml:mo>&#x3d;</mml:mo>
<mml:msub>
<mml:mi>v</mml:mi>
<mml:mi mathvariant="normal">b</mml:mi>
</mml:msub>
<mml:msub>
<mml:mi>i</mml:mi>
<mml:mrow>
<mml:mi mathvariant="normal">L</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi mathvariant="normal">b</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mo>&#x2b;</mml:mo>
<mml:msub>
<mml:mi>h</mml:mi>
<mml:mn>0</mml:mn>
</mml:msub>
</mml:mrow>
</mml:math>
<label>(6)</label>
</disp-formula>where <inline-formula id="inf39">
<mml:math id="m45">
<mml:mrow>
<mml:msub>
<mml:mi>h</mml:mi>
<mml:mn>0</mml:mn>
</mml:msub>
<mml:mo>&#x3d;</mml:mo>
<mml:mstyle displaystyle="true">
<mml:munderover>
<mml:mo>&#x2211;</mml:mo>
<mml:mrow>
<mml:mi>m</mml:mi>
<mml:mo>&#x3d;</mml:mo>
<mml:mn>1</mml:mn>
</mml:mrow>
<mml:mi>N</mml:mi>
</mml:munderover>
</mml:mstyle>
<mml:msub>
<mml:mi>P</mml:mi>
<mml:mrow>
<mml:mtext>fb</mml:mtext>
<mml:mo>,</mml:mo>
<mml:mi>m</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mo>&#x2212;</mml:mo>
<mml:msub>
<mml:mi>r</mml:mi>
<mml:mi mathvariant="normal">b</mml:mi>
</mml:msub>
<mml:msubsup>
<mml:mi>i</mml:mi>
<mml:mi mathvariant="normal">b</mml:mi>
<mml:mn>2</mml:mn>
</mml:msubsup>
<mml:mo>&#x2212;</mml:mo>
<mml:msub>
<mml:mi>P</mml:mi>
<mml:mrow>
<mml:mtext>bus</mml:mtext>
<mml:mo>,</mml:mo>
<mml:mi mathvariant="normal">b</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mo>&#x2212;</mml:mo>
<mml:msub>
<mml:mi>P</mml:mi>
<mml:mtext>loss</mml:mtext>
</mml:msub>
</mml:mrow>
</mml:math>
</inline-formula>, it can be called the unknown disturbance of the system. Take <inline-formula id="inf40">
<mml:math id="m46">
<mml:mrow>
<mml:mi>y</mml:mi>
<mml:mo>&#x3d;</mml:mo>
<mml:mfrac>
<mml:mrow>
<mml:mn>1</mml:mn>
</mml:mrow>
<mml:mrow>
<mml:mn>2</mml:mn>
</mml:mrow>
</mml:mfrac>
<mml:msub>
<mml:mi>C</mml:mi>
<mml:mtext>cb</mml:mtext>
</mml:msub>
<mml:msubsup>
<mml:mi>v</mml:mi>
<mml:mi mathvariant="normal">b</mml:mi>
<mml:mn>2</mml:mn>
</mml:msubsup>
</mml:mrow>
</mml:math>
</inline-formula>, <inline-formula id="inf41">
<mml:math id="m47">
<mml:mrow>
<mml:mi>u</mml:mi>
<mml:mo>&#x3d;</mml:mo>
<mml:msub>
<mml:mi>I</mml:mi>
<mml:mrow>
<mml:mi mathvariant="normal">L</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi mathvariant="normal">b</mml:mi>
<mml:mo>_</mml:mo>
<mml:mtext>ref</mml:mtext>
</mml:mrow>
</mml:msub>
</mml:mrow>
</mml:math>
</inline-formula>, <xref ref-type="disp-formula" rid="e6">Formula 6</xref> can be rearranged as:<disp-formula id="e7">
<mml:math id="m48">
<mml:mrow>
<mml:mover accent="true">
<mml:mi>y</mml:mi>
<mml:mo>&#x2d9;</mml:mo>
</mml:mover>
<mml:mo>&#x3d;</mml:mo>
<mml:msub>
<mml:mi>v</mml:mi>
<mml:mi mathvariant="normal">b</mml:mi>
</mml:msub>
<mml:msub>
<mml:mi>I</mml:mi>
<mml:mrow>
<mml:mi mathvariant="normal">L</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi mathvariant="normal">b</mml:mi>
<mml:mo>_</mml:mo>
<mml:mtext>ref</mml:mtext>
</mml:mrow>
</mml:msub>
<mml:mo>&#x2b;</mml:mo>
<mml:msub>
<mml:mi>h</mml:mi>
<mml:mn>0</mml:mn>
</mml:msub>
<mml:mo>&#x3d;</mml:mo>
<mml:msub>
<mml:mi>b</mml:mi>
<mml:mn>0</mml:mn>
</mml:msub>
<mml:mi>u</mml:mi>
<mml:mo>&#x2b;</mml:mo>
<mml:mi>h</mml:mi>
</mml:mrow>
</mml:math>
<label>(7)</label>
</disp-formula>where <inline-formula id="inf42">
<mml:math id="m49">
<mml:mrow>
<mml:msub>
<mml:mi>I</mml:mi>
<mml:mrow>
<mml:mi mathvariant="normal">L</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi mathvariant="normal">b</mml:mi>
<mml:mo>_</mml:mo>
<mml:mtext>ref</mml:mtext>
</mml:mrow>
</mml:msub>
</mml:mrow>
</mml:math>
</inline-formula> is the reference value of the battery inductor current, <inline-formula id="inf43">
<mml:math id="m50">
<mml:mrow>
<mml:msub>
<mml:mi>b</mml:mi>
<mml:mn>0</mml:mn>
</mml:msub>
</mml:mrow>
</mml:math>
</inline-formula> is the control parameter to be adjusted. To avoid adding voltage sampling and measurement devices, it can be taken as the nominal value of the battery voltage, but this will generate new error interference. Therefore, the total disturbance of the system is <inline-formula id="inf44">
<mml:math id="m51">
<mml:mrow>
<mml:mi>h</mml:mi>
<mml:mo>&#x3d;</mml:mo>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="&#x7c;">
<mml:mrow>
<mml:msub>
<mml:mi>v</mml:mi>
<mml:mi mathvariant="normal">b</mml:mi>
</mml:msub>
<mml:mo>&#x2212;</mml:mo>
<mml:msub>
<mml:mi>b</mml:mi>
<mml:mn>0</mml:mn>
</mml:msub>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:msub>
<mml:mi>I</mml:mi>
<mml:mrow>
<mml:mi mathvariant="normal">L</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi mathvariant="normal">b</mml:mi>
<mml:mo>_</mml:mo>
<mml:mtext>ref</mml:mtext>
</mml:mrow>
</mml:msub>
<mml:mo>&#x2b;</mml:mo>
<mml:msub>
<mml:mi>h</mml:mi>
<mml:mn>0</mml:mn>
</mml:msub>
</mml:mrow>
</mml:math>
</inline-formula>.</p>
<p>Assume <inline-formula id="inf45">
<mml:math id="m52">
<mml:mrow>
<mml:msup>
<mml:mrow>
<mml:mfenced open="[" close="]" separators="&#x7c;">
<mml:mrow>
<mml:mtable columnalign="center">
<mml:mtr>
<mml:mtd>
<mml:msub>
<mml:mi>x</mml:mi>
<mml:mn>1</mml:mn>
</mml:msub>
</mml:mtd>
<mml:mtd>
<mml:msub>
<mml:mi>x</mml:mi>
<mml:mn>2</mml:mn>
</mml:msub>
</mml:mtd>
</mml:mtr>
</mml:mtable>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:mi mathvariant="normal">T</mml:mi>
</mml:msup>
<mml:mo>&#x3d;</mml:mo>
<mml:msup>
<mml:mrow>
<mml:mfenced open="[" close="]" separators="&#x7c;">
<mml:mrow>
<mml:mtable columnalign="center">
<mml:mtr>
<mml:mtd>
<mml:mi>y</mml:mi>
</mml:mtd>
<mml:mtd>
<mml:mi>h</mml:mi>
</mml:mtd>
</mml:mtr>
</mml:mtable>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:mi mathvariant="normal">T</mml:mi>
</mml:msup>
</mml:mrow>
</mml:math>
</inline-formula>, the state space expression of <xref ref-type="disp-formula" rid="e7">Formula 7</xref> is:<disp-formula id="e8">
<mml:math id="m53">
<mml:mrow>
<mml:mrow>
<mml:mfenced open="[" close="]" separators="&#x7c;">
<mml:mrow>
<mml:mtable columnalign="left">
<mml:mtr>
<mml:mtd>
<mml:msub>
<mml:mover accent="true">
<mml:mi>x</mml:mi>
<mml:mo>&#x2d9;</mml:mo>
</mml:mover>
<mml:mn>1</mml:mn>
</mml:msub>
</mml:mtd>
</mml:mtr>
<mml:mtr>
<mml:mtd>
<mml:msub>
<mml:mover accent="true">
<mml:mi>x</mml:mi>
<mml:mo>&#x2d9;</mml:mo>
</mml:mover>
<mml:mn>2</mml:mn>
</mml:msub>
</mml:mtd>
</mml:mtr>
</mml:mtable>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:mo>&#x3d;</mml:mo>
<mml:mrow>
<mml:mfenced open="[" close="]" separators="&#x7c;">
<mml:mrow>
<mml:mtable columnalign="center">
<mml:mtr>
<mml:mtd>
<mml:mn>0</mml:mn>
</mml:mtd>
<mml:mtd>
<mml:mn>1</mml:mn>
</mml:mtd>
</mml:mtr>
<mml:mtr>
<mml:mtd>
<mml:mn>0</mml:mn>
</mml:mtd>
<mml:mtd>
<mml:mn>0</mml:mn>
</mml:mtd>
</mml:mtr>
</mml:mtable>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:mrow>
<mml:mfenced open="[" close="]" separators="&#x7c;">
<mml:mrow>
<mml:mtable columnalign="left">
<mml:mtr>
<mml:mtd>
<mml:msub>
<mml:mi>x</mml:mi>
<mml:mn>1</mml:mn>
</mml:msub>
</mml:mtd>
</mml:mtr>
<mml:mtr>
<mml:mtd>
<mml:msub>
<mml:mi>x</mml:mi>
<mml:mn>2</mml:mn>
</mml:msub>
</mml:mtd>
</mml:mtr>
</mml:mtable>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:mo>&#x2b;</mml:mo>
<mml:mrow>
<mml:mfenced open="[" close="]" separators="&#x7c;">
<mml:mrow>
<mml:mtable columnalign="left">
<mml:mtr>
<mml:mtd>
<mml:msub>
<mml:mi>b</mml:mi>
<mml:mn>0</mml:mn>
</mml:msub>
</mml:mtd>
</mml:mtr>
<mml:mtr>
<mml:mtd>
<mml:mn>0</mml:mn>
</mml:mtd>
</mml:mtr>
</mml:mtable>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:mi>u</mml:mi>
<mml:mo>&#x2b;</mml:mo>
<mml:mrow>
<mml:mfenced open="[" close="]" separators="&#x7c;">
<mml:mrow>
<mml:mtable columnalign="left">
<mml:mtr>
<mml:mtd>
<mml:mn>0</mml:mn>
</mml:mtd>
</mml:mtr>
<mml:mtr>
<mml:mtd>
<mml:mn>1</mml:mn>
</mml:mtd>
</mml:mtr>
</mml:mtable>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:mover accent="true">
<mml:mi>h</mml:mi>
<mml:mo>&#x2d9;</mml:mo>
</mml:mover>
</mml:mrow>
</mml:math>
<label>(8)</label>
</disp-formula>
</p>
<p>Let <inline-formula id="inf46">
<mml:math id="m54">
<mml:mrow>
<mml:msub>
<mml:mi>z</mml:mi>
<mml:mn>1</mml:mn>
</mml:msub>
</mml:mrow>
</mml:math>
</inline-formula> be the estimated value of <inline-formula id="inf47">
<mml:math id="m55">
<mml:mrow>
<mml:msub>
<mml:mi>x</mml:mi>
<mml:mn>1</mml:mn>
</mml:msub>
</mml:mrow>
</mml:math>
</inline-formula>, <inline-formula id="inf48">
<mml:math id="m56">
<mml:mrow>
<mml:msub>
<mml:mi>z</mml:mi>
<mml:mn>2</mml:mn>
</mml:msub>
</mml:mrow>
</mml:math>
</inline-formula> be the estimated value of <inline-formula id="inf49">
<mml:math id="m57">
<mml:mrow>
<mml:msub>
<mml:mi>x</mml:mi>
<mml:mn>2</mml:mn>
</mml:msub>
</mml:mrow>
</mml:math>
</inline-formula>. Then, take <inline-formula id="inf50">
<mml:math id="m58">
<mml:mrow>
<mml:msub>
<mml:mi>z</mml:mi>
<mml:mn>1</mml:mn>
</mml:msub>
</mml:mrow>
</mml:math>
</inline-formula> and <inline-formula id="inf51">
<mml:math id="m59">
<mml:mrow>
<mml:msub>
<mml:mi>z</mml:mi>
<mml:mn>2</mml:mn>
</mml:msub>
</mml:mrow>
</mml:math>
</inline-formula> as the state variable of ESO. The ESO expression corresponding to <xref ref-type="disp-formula" rid="e7">Formula 7</xref> can be described as following:<disp-formula id="e9">
<mml:math id="m60">
<mml:mrow>
<mml:mrow>
<mml:mfenced open="[" close="]" separators="&#x7c;">
<mml:mrow>
<mml:mtable columnalign="left">
<mml:mtr>
<mml:mtd>
<mml:msub>
<mml:mover accent="true">
<mml:mi>z</mml:mi>
<mml:mo>&#x2d9;</mml:mo>
</mml:mover>
<mml:mn>1</mml:mn>
</mml:msub>
</mml:mtd>
</mml:mtr>
<mml:mtr>
<mml:mtd>
<mml:msub>
<mml:mover accent="true">
<mml:mi>z</mml:mi>
<mml:mo>&#x2d9;</mml:mo>
</mml:mover>
<mml:mn>2</mml:mn>
</mml:msub>
</mml:mtd>
</mml:mtr>
</mml:mtable>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:mo>&#x3d;</mml:mo>
<mml:mrow>
<mml:mfenced open="[" close="]" separators="&#x7c;">
<mml:mrow>
<mml:mtable columnalign="center">
<mml:mtr>
<mml:mtd>
<mml:mn>0</mml:mn>
</mml:mtd>
<mml:mtd>
<mml:mn>1</mml:mn>
</mml:mtd>
</mml:mtr>
<mml:mtr>
<mml:mtd>
<mml:mn>0</mml:mn>
</mml:mtd>
<mml:mtd>
<mml:mn>0</mml:mn>
</mml:mtd>
</mml:mtr>
</mml:mtable>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:mrow>
<mml:mfenced open="[" close="]" separators="&#x7c;">
<mml:mrow>
<mml:mtable columnalign="left">
<mml:mtr>
<mml:mtd>
<mml:msub>
<mml:mi>z</mml:mi>
<mml:mn>1</mml:mn>
</mml:msub>
</mml:mtd>
</mml:mtr>
<mml:mtr>
<mml:mtd>
<mml:msub>
<mml:mi>z</mml:mi>
<mml:mn>2</mml:mn>
</mml:msub>
</mml:mtd>
</mml:mtr>
</mml:mtable>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:mo>&#x2b;</mml:mo>
<mml:mrow>
<mml:mfenced open="[" close="]" separators="&#x7c;">
<mml:mrow>
<mml:mtable columnalign="left">
<mml:mtr>
<mml:mtd>
<mml:msub>
<mml:mi>b</mml:mi>
<mml:mn>0</mml:mn>
</mml:msub>
</mml:mtd>
</mml:mtr>
<mml:mtr>
<mml:mtd>
<mml:mn>0</mml:mn>
</mml:mtd>
</mml:mtr>
</mml:mtable>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:mi>u</mml:mi>
<mml:mo>&#x2b;</mml:mo>
<mml:mrow>
<mml:mfenced open="[" close="]" separators="&#x7c;">
<mml:mrow>
<mml:mtable columnalign="left">
<mml:mtr>
<mml:mtd>
<mml:msub>
<mml:mi>&#x3b2;</mml:mi>
<mml:mn>1</mml:mn>
</mml:msub>
</mml:mtd>
</mml:mtr>
<mml:mtr>
<mml:mtd>
<mml:msub>
<mml:mi>&#x3b2;</mml:mi>
<mml:mn>2</mml:mn>
</mml:msub>
</mml:mtd>
</mml:mtr>
</mml:mtable>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:mrow>
<mml:mfenced open="[" close="]" separators="&#x7c;">
<mml:mrow>
<mml:msub>
<mml:mi>x</mml:mi>
<mml:mn>1</mml:mn>
</mml:msub>
<mml:mo>&#x2212;</mml:mo>
<mml:msub>
<mml:mi>z</mml:mi>
<mml:mn>1</mml:mn>
</mml:msub>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
</mml:mrow>
</mml:math>
<label>(9)</label>
</disp-formula>where <inline-formula id="inf52">
<mml:math id="m61">
<mml:mrow>
<mml:msub>
<mml:mi>&#x3b2;</mml:mi>
<mml:mn>1</mml:mn>
</mml:msub>
</mml:mrow>
</mml:math>
</inline-formula> and <inline-formula id="inf53">
<mml:math id="m62">
<mml:mrow>
<mml:msub>
<mml:mi>&#x3b2;</mml:mi>
<mml:mn>2</mml:mn>
</mml:msub>
</mml:mrow>
</mml:math>
</inline-formula> are the observer gains to be determined. According to the Hurwitz stability criterion, the relationship between the observer bandwidth and the observer gain is (<xref ref-type="bibr" rid="B4">Baol et al., 2021</xref>):<disp-formula id="e10">
<mml:math id="m63">
<mml:mrow>
<mml:msub>
<mml:mi>s</mml:mi>
<mml:mn>2</mml:mn>
</mml:msub>
<mml:mo>&#x2b;</mml:mo>
<mml:msub>
<mml:mi>&#x3b2;</mml:mi>
<mml:mn>1</mml:mn>
</mml:msub>
<mml:mi>s</mml:mi>
<mml:mo>&#x2b;</mml:mo>
<mml:msub>
<mml:mi>&#x3b2;</mml:mi>
<mml:mn>2</mml:mn>
</mml:msub>
<mml:mo>&#x3d;</mml:mo>
<mml:msup>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="&#x7c;">
<mml:mrow>
<mml:mi>s</mml:mi>
<mml:mo>&#x2b;</mml:mo>
<mml:msub>
<mml:mi>&#x3c9;</mml:mi>
<mml:mi mathvariant="normal">o</mml:mi>
</mml:msub>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:mn>2</mml:mn>
</mml:msup>
<mml:mo>,</mml:mo>
<mml:msub>
<mml:mi>&#x3b2;</mml:mi>
<mml:mn>1</mml:mn>
</mml:msub>
<mml:mo>&#x3d;</mml:mo>
<mml:mn>2</mml:mn>
<mml:msub>
<mml:mi>&#x3c9;</mml:mi>
<mml:mi mathvariant="normal">o</mml:mi>
</mml:msub>
<mml:mo>,</mml:mo>
<mml:msub>
<mml:mrow>
<mml:mtext>&#x2009;</mml:mtext>
<mml:mi>&#x3b2;</mml:mi>
</mml:mrow>
<mml:mn>2</mml:mn>
</mml:msub>
<mml:mo>&#x3d;</mml:mo>
<mml:msubsup>
<mml:mi>&#x3c9;</mml:mi>
<mml:mi mathvariant="normal">o</mml:mi>
<mml:mn>2</mml:mn>
</mml:msubsup>
</mml:mrow>
</mml:math>
<label>(10)</label>
</disp-formula>where <italic>s</italic> is the complex frequency domain variable and <inline-formula id="inf54">
<mml:math id="m64">
<mml:mrow>
<mml:msub>
<mml:mi>&#x3c9;</mml:mi>
<mml:mi mathvariant="normal">o</mml:mi>
</mml:msub>
</mml:mrow>
</mml:math>
</inline-formula> is the observer bandwidth. By selecting a suitable observer bandwidth, the observer can track each state variable, that is, <inline-formula id="inf55">
<mml:math id="m65">
<mml:mrow>
<mml:munder>
<mml:mi>lim</mml:mi>
<mml:mrow>
<mml:mi>t</mml:mi>
<mml:mo>&#x2192;</mml:mo>
<mml:mi>&#x221e;</mml:mi>
</mml:mrow>
</mml:munder>
<mml:mrow>
<mml:mfenced open="|" close="|" separators="&#x7c;">
<mml:mrow>
<mml:msub>
<mml:mi>x</mml:mi>
<mml:mn>1</mml:mn>
</mml:msub>
<mml:mo>&#x2212;</mml:mo>
<mml:msub>
<mml:mi>z</mml:mi>
<mml:mn>1</mml:mn>
</mml:msub>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:mo>&#x3d;</mml:mo>
<mml:mn>0</mml:mn>
</mml:mrow>
</mml:math>
</inline-formula>, <inline-formula id="inf56">
<mml:math id="m66">
<mml:mrow>
<mml:munder>
<mml:mi>lim</mml:mi>
<mml:mrow>
<mml:mi>t</mml:mi>
<mml:mo>&#x2192;</mml:mo>
<mml:mi>&#x221e;</mml:mi>
</mml:mrow>
</mml:munder>
<mml:mrow>
<mml:mfenced open="|" close="|" separators="&#x7c;">
<mml:mrow>
<mml:msub>
<mml:mi>x</mml:mi>
<mml:mn>2</mml:mn>
</mml:msub>
<mml:mo>&#x2212;</mml:mo>
<mml:msub>
<mml:mi>z</mml:mi>
<mml:mn>2</mml:mn>
</mml:msub>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:mo>&#x3d;</mml:mo>
<mml:mn>0</mml:mn>
</mml:mrow>
</mml:math>
</inline-formula>.</p>
<p>To suppress EIS detection of multiple FCs simultaneously performing different frequencies in an MSFC system, the traditional ESO is improved by adding multiple PR links to form an MRESO. The structure is shown in <xref ref-type="fig" rid="F4">Figure 4</xref>. Based on the total disturbance signal <inline-formula id="inf57">
<mml:math id="m67">
<mml:mrow>
<mml:msub>
<mml:mi>z</mml:mi>
<mml:mn>2</mml:mn>
</mml:msub>
</mml:mrow>
</mml:math>
</inline-formula>, m quasi-resonant controllers are introduced to track the frequency of the excitation disturbance during the corresponding FC detection, thereby enhancing its suppression performance against EIS interference. The quasi-resonant controller is designed as follows:<disp-formula id="e11">
<mml:math id="m68">
<mml:mrow>
<mml:msub>
<mml:mi>G</mml:mi>
<mml:mrow>
<mml:mi mathvariant="italic">PR</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>m</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="&#x7c;">
<mml:mrow>
<mml:mi>s</mml:mi>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:mo>&#x3d;</mml:mo>
<mml:mfrac>
<mml:mrow>
<mml:mn>2</mml:mn>
<mml:msub>
<mml:mi>k</mml:mi>
<mml:mrow>
<mml:mi>r</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>m</mml:mi>
</mml:mrow>
</mml:msub>
<mml:msub>
<mml:mi>&#x3c9;</mml:mi>
<mml:mrow>
<mml:mi>c</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>m</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mi>s</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:msup>
<mml:mi>s</mml:mi>
<mml:mn>2</mml:mn>
</mml:msup>
<mml:mo>&#x2b;</mml:mo>
<mml:mn>2</mml:mn>
<mml:msub>
<mml:mi>&#x3c9;</mml:mi>
<mml:mrow>
<mml:mi>c</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>m</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mi>s</mml:mi>
<mml:mo>&#x2b;</mml:mo>
<mml:msubsup>
<mml:mi>&#x3c9;</mml:mi>
<mml:mrow>
<mml:mi>r</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>m</mml:mi>
</mml:mrow>
<mml:mn>2</mml:mn>
</mml:msubsup>
</mml:mrow>
</mml:mfrac>
</mml:mrow>
</mml:math>
<label>(11)</label>
</disp-formula>where <inline-formula id="inf58">
<mml:math id="m69">
<mml:mrow>
<mml:msub>
<mml:mi>k</mml:mi>
<mml:mrow>
<mml:mi>r</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>m</mml:mi>
</mml:mrow>
</mml:msub>
</mml:mrow>
</mml:math>
</inline-formula> (<italic>m</italic> &#x3d; 1, 2, &#x2026;, <italic>N</italic>) is the resonance gain coefficient of the <italic>m</italic>th resonance unit, <inline-formula id="inf59">
<mml:math id="m70">
<mml:mrow>
<mml:msub>
<mml:mi>&#x3c9;</mml:mi>
<mml:mrow>
<mml:mi>c</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>m</mml:mi>
</mml:mrow>
</mml:msub>
</mml:mrow>
</mml:math>
</inline-formula> is the cutoff frequency of the <italic>mth</italic> resonance unit, and <inline-formula id="inf60">
<mml:math id="m71">
<mml:mrow>
<mml:msub>
<mml:mi>&#x3c9;</mml:mi>
<mml:mrow>
<mml:mi>r</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>m</mml:mi>
</mml:mrow>
</mml:msub>
</mml:mrow>
</mml:math>
</inline-formula> is the resonance frequency, which corresponds to the excitation frequency of the <italic>m</italic>th FC for EIS detection. Substituting <xref ref-type="disp-formula" rid="e11">Formula 11</xref> into <xref ref-type="disp-formula" rid="e9">Formula 9</xref>, the state space expression of the enhanced MRESO is obtained:<disp-formula id="e12">
<mml:math id="m72">
<mml:mrow>
<mml:mrow>
<mml:mfenced open="[" close="]" separators="&#x7c;">
<mml:mrow>
<mml:mtable columnalign="left">
<mml:mtr>
<mml:mtd>
<mml:msub>
<mml:mover accent="true">
<mml:mi>z</mml:mi>
<mml:mo>&#x2d9;</mml:mo>
</mml:mover>
<mml:mn>1</mml:mn>
</mml:msub>
</mml:mtd>
</mml:mtr>
<mml:mtr>
<mml:mtd>
<mml:msub>
<mml:mover accent="true">
<mml:mi>z</mml:mi>
<mml:mo>&#x2d9;</mml:mo>
</mml:mover>
<mml:mrow>
<mml:mn>2</mml:mn>
<mml:mi>M</mml:mi>
<mml:mi>R</mml:mi>
</mml:mrow>
</mml:msub>
</mml:mtd>
</mml:mtr>
</mml:mtable>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:mo>&#x3d;</mml:mo>
<mml:mrow>
<mml:mfenced open="[" close="]" separators="&#x7c;">
<mml:mrow>
<mml:mtable columnalign="center">
<mml:mtr>
<mml:mtd>
<mml:mn>0</mml:mn>
</mml:mtd>
<mml:mtd>
<mml:mn>1</mml:mn>
</mml:mtd>
</mml:mtr>
<mml:mtr>
<mml:mtd>
<mml:mn>0</mml:mn>
</mml:mtd>
<mml:mtd>
<mml:mn>0</mml:mn>
</mml:mtd>
</mml:mtr>
</mml:mtable>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:mrow>
<mml:mfenced open="[" close="]" separators="&#x7c;">
<mml:mrow>
<mml:mtable columnalign="left">
<mml:mtr>
<mml:mtd>
<mml:msub>
<mml:mi>z</mml:mi>
<mml:mn>1</mml:mn>
</mml:msub>
</mml:mtd>
</mml:mtr>
<mml:mtr>
<mml:mtd>
<mml:msub>
<mml:mi>z</mml:mi>
<mml:mrow>
<mml:mn>2</mml:mn>
<mml:mi>M</mml:mi>
<mml:mi>R</mml:mi>
</mml:mrow>
</mml:msub>
</mml:mtd>
</mml:mtr>
</mml:mtable>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:mo>&#x2b;</mml:mo>
<mml:mrow>
<mml:mfenced open="[" close="]" separators="&#x7c;">
<mml:mrow>
<mml:mtable columnalign="left">
<mml:mtr>
<mml:mtd>
<mml:msub>
<mml:mi>b</mml:mi>
<mml:mn>0</mml:mn>
</mml:msub>
</mml:mtd>
</mml:mtr>
<mml:mtr>
<mml:mtd>
<mml:mn>0</mml:mn>
</mml:mtd>
</mml:mtr>
</mml:mtable>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:mi>u</mml:mi>
<mml:mo>&#x2b;</mml:mo>
<mml:mrow>
<mml:mfenced open="[" close="]" separators="&#x7c;">
<mml:mrow>
<mml:mtable columnalign="center">
<mml:mtr>
<mml:mtd>
<mml:msub>
<mml:mi>&#x3b2;</mml:mi>
<mml:mn>1</mml:mn>
</mml:msub>
</mml:mtd>
</mml:mtr>
<mml:mtr>
<mml:mtd>
<mml:mrow>
<mml:msub>
<mml:mi>&#x3b2;</mml:mi>
<mml:mn>2</mml:mn>
</mml:msub>
<mml:mrow>
<mml:mfenced open="[" close="]" separators="&#x7c;">
<mml:mrow>
<mml:mn>1</mml:mn>
<mml:mo>&#x2b;</mml:mo>
<mml:mi>s</mml:mi>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="&#x7c;">
<mml:mrow>
<mml:mstyle displaystyle="true">
<mml:munderover>
<mml:mo>&#x2211;</mml:mo>
<mml:mrow>
<mml:mi>m</mml:mi>
<mml:mo>&#x3d;</mml:mo>
<mml:mn>1</mml:mn>
</mml:mrow>
<mml:mi>N</mml:mi>
</mml:munderover>
</mml:mstyle>
<mml:mrow>
<mml:msub>
<mml:mi>G</mml:mi>
<mml:mrow>
<mml:mi mathvariant="italic">PR</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>m</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="&#x7c;">
<mml:mrow>
<mml:mi>s</mml:mi>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
</mml:mrow>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
</mml:mrow>
</mml:mtd>
</mml:mtr>
</mml:mtable>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:mrow>
<mml:mfenced open="[" close="]" separators="&#x7c;">
<mml:mrow>
<mml:msub>
<mml:mi>x</mml:mi>
<mml:mn>1</mml:mn>
</mml:msub>
<mml:mo>&#x2212;</mml:mo>
<mml:msub>
<mml:mi>z</mml:mi>
<mml:mn>1</mml:mn>
</mml:msub>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
</mml:mrow>
</mml:math>
<label>(12)</label>
</disp-formula>
</p>
<fig id="F4" position="float">
<label>FIGURE 4</label>
<caption>
<p>The designed structure of MRESO.</p>
</caption>
<graphic xlink:href="fenrg-14-1731457-g004.tif">
<alt-text content-type="machine-generated">Block diagram illustrating a control system with summing junctions, integrators labeled one over s, gain blocks beta one and beta two, and parallel controllers GPR one through m, with feedback and feedforward paths connecting the elements.</alt-text>
</graphic>
</fig>
<p>According to <xref ref-type="disp-formula" rid="e9">Formulas 9</xref>, <xref ref-type="disp-formula" rid="e12">12</xref>, performing the Laplace transform on the MRESO equation yields:<disp-formula id="e13">
<mml:math id="m73">
<mml:mrow>
<mml:mfenced open="{" close="" separators="&#x7c;">
<mml:mrow>
<mml:mtable columnalign="left">
<mml:mtr>
<mml:mtd>
<mml:mrow>
<mml:msub>
<mml:mi>Z</mml:mi>
<mml:mn>1</mml:mn>
</mml:msub>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="&#x7c;">
<mml:mrow>
<mml:mi>s</mml:mi>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:mo>&#x3d;</mml:mo>
<mml:mfrac>
<mml:mrow>
<mml:msub>
<mml:mi>&#x3b2;</mml:mi>
<mml:mn>1</mml:mn>
</mml:msub>
<mml:mi>s</mml:mi>
<mml:mo>&#x2b;</mml:mo>
<mml:msub>
<mml:mi>&#x3b2;</mml:mi>
<mml:mn>2</mml:mn>
</mml:msub>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="&#x7c;">
<mml:mrow>
<mml:mn>1</mml:mn>
<mml:mo>&#x2b;</mml:mo>
<mml:mi>s</mml:mi>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="&#x7c;">
<mml:mrow>
<mml:mstyle displaystyle="true">
<mml:msubsup>
<mml:mo>&#x2211;</mml:mo>
<mml:mrow>
<mml:mi>m</mml:mi>
<mml:mo>&#x3d;</mml:mo>
<mml:mn>1</mml:mn>
</mml:mrow>
<mml:mi>N</mml:mi>
</mml:msubsup>
</mml:mstyle>
<mml:mrow>
<mml:msub>
<mml:mi>G</mml:mi>
<mml:mrow>
<mml:mi mathvariant="italic">PR</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>m</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="&#x7c;">
<mml:mrow>
<mml:mi>s</mml:mi>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
</mml:mrow>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
</mml:mrow>
<mml:mrow>
<mml:mi>s</mml:mi>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="&#x7c;">
<mml:mrow>
<mml:mi>s</mml:mi>
<mml:mo>&#x2b;</mml:mo>
<mml:msub>
<mml:mi>&#x3b2;</mml:mi>
<mml:mn>1</mml:mn>
</mml:msub>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:mo>&#x2b;</mml:mo>
<mml:msub>
<mml:mi>&#x3b2;</mml:mi>
<mml:mn>2</mml:mn>
</mml:msub>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="&#x7c;">
<mml:mrow>
<mml:mn>1</mml:mn>
<mml:mo>&#x2b;</mml:mo>
<mml:mi>s</mml:mi>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="&#x7c;">
<mml:mrow>
<mml:mstyle displaystyle="true">
<mml:msubsup>
<mml:mo>&#x2211;</mml:mo>
<mml:mrow>
<mml:mi>m</mml:mi>
<mml:mo>&#x3d;</mml:mo>
<mml:mn>1</mml:mn>
</mml:mrow>
<mml:mi>N</mml:mi>
</mml:msubsup>
</mml:mstyle>
<mml:mrow>
<mml:msub>
<mml:mi>G</mml:mi>
<mml:mrow>
<mml:mi mathvariant="italic">PR</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>m</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="&#x7c;">
<mml:mrow>
<mml:mi>s</mml:mi>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
</mml:mrow>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
</mml:mrow>
</mml:mfrac>
<mml:mi>Y</mml:mi>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="&#x7c;">
<mml:mrow>
<mml:mi>s</mml:mi>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:mo>&#x2b;</mml:mo>
<mml:mfrac>
<mml:mrow>
<mml:msub>
<mml:mi>b</mml:mi>
<mml:mn>0</mml:mn>
</mml:msub>
<mml:mi>s</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>s</mml:mi>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="&#x7c;">
<mml:mrow>
<mml:mi>s</mml:mi>
<mml:mo>&#x2b;</mml:mo>
<mml:msub>
<mml:mi>&#x3b2;</mml:mi>
<mml:mn>1</mml:mn>
</mml:msub>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:mo>&#x2b;</mml:mo>
<mml:msub>
<mml:mi>&#x3b2;</mml:mi>
<mml:mn>2</mml:mn>
</mml:msub>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="&#x7c;">
<mml:mrow>
<mml:mn>1</mml:mn>
<mml:mo>&#x2b;</mml:mo>
<mml:mi>s</mml:mi>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="&#x7c;">
<mml:mrow>
<mml:mstyle displaystyle="true">
<mml:msubsup>
<mml:mo>&#x2211;</mml:mo>
<mml:mrow>
<mml:mi>m</mml:mi>
<mml:mo>&#x3d;</mml:mo>
<mml:mn>1</mml:mn>
</mml:mrow>
<mml:mi>N</mml:mi>
</mml:msubsup>
</mml:mstyle>
<mml:mrow>
<mml:msub>
<mml:mi>G</mml:mi>
<mml:mrow>
<mml:mi mathvariant="italic">PR</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>m</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="&#x7c;">
<mml:mrow>
<mml:mi>s</mml:mi>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
</mml:mrow>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
</mml:mrow>
</mml:mfrac>
<mml:mi>U</mml:mi>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="&#x7c;">
<mml:mrow>
<mml:mi>s</mml:mi>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
</mml:mrow>
</mml:mtd>
</mml:mtr>
<mml:mtr>
<mml:mtd>
<mml:mrow>
<mml:msub>
<mml:mi>Z</mml:mi>
<mml:mrow>
<mml:mn>2</mml:mn>
<mml:mi>M</mml:mi>
<mml:mi>R</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="&#x7c;">
<mml:mrow>
<mml:mi>s</mml:mi>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:mo>&#x3d;</mml:mo>
<mml:mfrac>
<mml:mrow>
<mml:msub>
<mml:mi>&#x3b2;</mml:mi>
<mml:mn>2</mml:mn>
</mml:msub>
<mml:mi>s</mml:mi>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="&#x7c;">
<mml:mrow>
<mml:mn>1</mml:mn>
<mml:mo>&#x2b;</mml:mo>
<mml:mi>s</mml:mi>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="&#x7c;">
<mml:mrow>
<mml:mstyle displaystyle="true">
<mml:msubsup>
<mml:mo>&#x2211;</mml:mo>
<mml:mrow>
<mml:mi>m</mml:mi>
<mml:mo>&#x3d;</mml:mo>
<mml:mn>1</mml:mn>
</mml:mrow>
<mml:mi>N</mml:mi>
</mml:msubsup>
</mml:mstyle>
<mml:mrow>
<mml:msub>
<mml:mi>G</mml:mi>
<mml:mrow>
<mml:mi mathvariant="italic">PR</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>m</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="&#x7c;">
<mml:mrow>
<mml:mi>s</mml:mi>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
</mml:mrow>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
</mml:mrow>
<mml:mrow>
<mml:mi>s</mml:mi>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="&#x7c;">
<mml:mrow>
<mml:mi>s</mml:mi>
<mml:mo>&#x2b;</mml:mo>
<mml:msub>
<mml:mi>&#x3b2;</mml:mi>
<mml:mn>1</mml:mn>
</mml:msub>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:mo>&#x2b;</mml:mo>
<mml:msub>
<mml:mi>&#x3b2;</mml:mi>
<mml:mn>2</mml:mn>
</mml:msub>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="&#x7c;">
<mml:mrow>
<mml:mn>1</mml:mn>
<mml:mo>&#x2b;</mml:mo>
<mml:mi>s</mml:mi>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="&#x7c;">
<mml:mrow>
<mml:mstyle displaystyle="true">
<mml:msubsup>
<mml:mo>&#x2211;</mml:mo>
<mml:mrow>
<mml:mi>m</mml:mi>
<mml:mo>&#x3d;</mml:mo>
<mml:mn>1</mml:mn>
</mml:mrow>
<mml:mi>N</mml:mi>
</mml:msubsup>
</mml:mstyle>
<mml:mrow>
<mml:msub>
<mml:mi>G</mml:mi>
<mml:mrow>
<mml:mi mathvariant="italic">PR</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>m</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="&#x7c;">
<mml:mrow>
<mml:mi>s</mml:mi>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
</mml:mrow>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
</mml:mrow>
</mml:mfrac>
<mml:mi>Y</mml:mi>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="&#x7c;">
<mml:mrow>
<mml:mi>s</mml:mi>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:mo>&#x2212;</mml:mo>
<mml:mfrac>
<mml:mrow>
<mml:msub>
<mml:mi>b</mml:mi>
<mml:mn>0</mml:mn>
</mml:msub>
<mml:msub>
<mml:mi>&#x3b2;</mml:mi>
<mml:mn>2</mml:mn>
</mml:msub>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="&#x7c;">
<mml:mrow>
<mml:mn>1</mml:mn>
<mml:mo>&#x2b;</mml:mo>
<mml:mi>s</mml:mi>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="&#x7c;">
<mml:mrow>
<mml:mstyle displaystyle="true">
<mml:msubsup>
<mml:mo>&#x2211;</mml:mo>
<mml:mrow>
<mml:mi>m</mml:mi>
<mml:mo>&#x3d;</mml:mo>
<mml:mn>1</mml:mn>
</mml:mrow>
<mml:mi>N</mml:mi>
</mml:msubsup>
</mml:mstyle>
<mml:mrow>
<mml:msub>
<mml:mi>G</mml:mi>
<mml:mrow>
<mml:mi mathvariant="italic">PR</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>m</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="&#x7c;">
<mml:mrow>
<mml:mi>s</mml:mi>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
</mml:mrow>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
</mml:mrow>
<mml:mrow>
<mml:mi>s</mml:mi>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="&#x7c;">
<mml:mrow>
<mml:mi>s</mml:mi>
<mml:mo>&#x2b;</mml:mo>
<mml:msub>
<mml:mi>&#x3b2;</mml:mi>
<mml:mn>1</mml:mn>
</mml:msub>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:mo>&#x2b;</mml:mo>
<mml:msub>
<mml:mi>&#x3b2;</mml:mi>
<mml:mn>2</mml:mn>
</mml:msub>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="&#x7c;">
<mml:mrow>
<mml:mn>1</mml:mn>
<mml:mo>&#x2b;</mml:mo>
<mml:mi>s</mml:mi>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="&#x7c;">
<mml:mrow>
<mml:mstyle displaystyle="true">
<mml:msubsup>
<mml:mo>&#x2211;</mml:mo>
<mml:mrow>
<mml:mi>m</mml:mi>
<mml:mo>&#x3d;</mml:mo>
<mml:mn>1</mml:mn>
</mml:mrow>
<mml:mi>N</mml:mi>
</mml:msubsup>
</mml:mstyle>
<mml:mrow>
<mml:msub>
<mml:mi>G</mml:mi>
<mml:mrow>
<mml:mi mathvariant="italic">PR</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>m</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="&#x7c;">
<mml:mrow>
<mml:mi>s</mml:mi>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
</mml:mrow>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
</mml:mrow>
</mml:mfrac>
<mml:mi>U</mml:mi>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="&#x7c;">
<mml:mrow>
<mml:mi>s</mml:mi>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
</mml:mrow>
</mml:mtd>
</mml:mtr>
</mml:mtable>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
</mml:math>
<label>(13)</label>
</disp-formula>
</p>
<p>After applying MRESO to the model described by <xref ref-type="disp-formula" rid="e7">Formula 7</xref>, the improved ADRC control structure is shown in <xref ref-type="fig" rid="F5">Figure 5</xref>, and the control law is designed as follows:<disp-formula id="e14">
<mml:math id="m74">
<mml:mrow>
<mml:mfenced open="{" close="" separators="&#x7c;">
<mml:mrow>
<mml:mtable columnalign="left">
<mml:mtr>
<mml:mtd>
<mml:mrow>
<mml:mi>u</mml:mi>
<mml:mo>&#x3d;</mml:mo>
<mml:mfrac>
<mml:mrow>
<mml:msub>
<mml:mi>u</mml:mi>
<mml:mn>0</mml:mn>
</mml:msub>
<mml:mo>&#x2212;</mml:mo>
<mml:msub>
<mml:mi>z</mml:mi>
<mml:mrow>
<mml:mn>2</mml:mn>
<mml:mi>M</mml:mi>
<mml:mi>R</mml:mi>
</mml:mrow>
</mml:msub>
</mml:mrow>
<mml:msub>
<mml:mi>b</mml:mi>
<mml:mn>0</mml:mn>
</mml:msub>
</mml:mfrac>
</mml:mrow>
</mml:mtd>
</mml:mtr>
<mml:mtr>
<mml:mtd>
<mml:mrow>
<mml:msub>
<mml:mi>u</mml:mi>
<mml:mn>0</mml:mn>
</mml:msub>
<mml:mo>&#x3d;</mml:mo>
<mml:msub>
<mml:mi>k</mml:mi>
<mml:mi>p</mml:mi>
</mml:msub>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="&#x7c;">
<mml:mrow>
<mml:msub>
<mml:mi>E</mml:mi>
<mml:mtext>ref</mml:mtext>
</mml:msub>
<mml:mo>&#x2212;</mml:mo>
<mml:msub>
<mml:mi>z</mml:mi>
<mml:mn>1</mml:mn>
</mml:msub>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
</mml:mrow>
</mml:mtd>
</mml:mtr>
</mml:mtable>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
</mml:math>
<label>(14)</label>
</disp-formula>where <inline-formula id="inf61">
<mml:math id="m75">
<mml:mrow>
<mml:msub>
<mml:mi>E</mml:mi>
<mml:mtext>ref</mml:mtext>
</mml:msub>
</mml:mrow>
</mml:math>
</inline-formula> is the capacitance energy of the lithium battery converter, and its value is <inline-formula id="inf62">
<mml:math id="m76">
<mml:mrow>
<mml:msub>
<mml:mi>E</mml:mi>
<mml:mtext>ref</mml:mtext>
</mml:msub>
<mml:mo>&#x3d;</mml:mo>
<mml:mfrac>
<mml:mrow>
<mml:mn>1</mml:mn>
</mml:mrow>
<mml:mrow>
<mml:mn>2</mml:mn>
</mml:mrow>
</mml:mfrac>
<mml:msub>
<mml:mi>C</mml:mi>
<mml:mtext>cb</mml:mtext>
</mml:msub>
<mml:msubsup>
<mml:mi>v</mml:mi>
<mml:mtext>ref</mml:mtext>
<mml:mn>2</mml:mn>
</mml:msubsup>
</mml:mrow>
</mml:math>
</inline-formula>. <inline-formula id="inf63">
<mml:math id="m77">
<mml:mrow>
<mml:msub>
<mml:mi>v</mml:mi>
<mml:mtext>ref</mml:mtext>
</mml:msub>
</mml:mrow>
</mml:math>
</inline-formula> is the reference value of the bus voltage, and <inline-formula id="inf64">
<mml:math id="m78">
<mml:mrow>
<mml:msub>
<mml:mi>k</mml:mi>
<mml:mi>p</mml:mi>
</mml:msub>
</mml:mrow>
</mml:math>
</inline-formula> is the proportional coefficient to be adjusted.</p>
<fig id="F5" position="float">
<label>FIGURE 5</label>
<caption>
<p>Enhanced ESO for voltage disturbance observation.</p>
</caption>
<graphic xlink:href="fenrg-14-1731457-g005.tif">
<alt-text content-type="machine-generated">Block diagram showing a control system with labeled signal paths, summing junctions, and blocks for kp, 1/b0, MRESO, 1/(Tc s&#x2b;1), b0, and 1/s; includes disturbance and noise inputs.</alt-text>
</graphic>
</fig>
<p>The tracking error of the observer is <inline-formula id="inf65">
<mml:math id="m79">
<mml:mrow>
<mml:msub>
<mml:mi>e</mml:mi>
<mml:mi>i</mml:mi>
</mml:msub>
<mml:mo>&#x3d;</mml:mo>
<mml:msub>
<mml:mi>x</mml:mi>
<mml:mi>i</mml:mi>
</mml:msub>
<mml:mo>&#x2212;</mml:mo>
<mml:msub>
<mml:mi>z</mml:mi>
<mml:mi>i</mml:mi>
</mml:msub>
</mml:mrow>
</mml:math>
</inline-formula>, which can be further expressed as follows:<disp-formula id="e15">
<mml:math id="m80">
<mml:mrow>
<mml:mfenced open="{" close="" separators="&#x7c;">
<mml:mrow>
<mml:mtable columnalign="left">
<mml:mtr>
<mml:mtd>
<mml:mrow>
<mml:msub>
<mml:mi>e</mml:mi>
<mml:mn>1</mml:mn>
</mml:msub>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="&#x7c;">
<mml:mrow>
<mml:mi>t</mml:mi>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:mo>&#x3d;</mml:mo>
<mml:mi>y</mml:mi>
<mml:mo>&#x2212;</mml:mo>
<mml:msub>
<mml:mi>z</mml:mi>
<mml:mn>1</mml:mn>
</mml:msub>
</mml:mrow>
</mml:mtd>
</mml:mtr>
<mml:mtr>
<mml:mtd>
<mml:mrow>
<mml:msub>
<mml:mi>e</mml:mi>
<mml:mn>2</mml:mn>
</mml:msub>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="&#x7c;">
<mml:mrow>
<mml:mi>t</mml:mi>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:mo>&#x3d;</mml:mo>
<mml:mover accent="true">
<mml:mi>y</mml:mi>
<mml:mo>&#x2d9;</mml:mo>
</mml:mover>
<mml:mo>&#x2212;</mml:mo>
<mml:msub>
<mml:mi>b</mml:mi>
<mml:mn>0</mml:mn>
</mml:msub>
<mml:mi>u</mml:mi>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="&#x7c;">
<mml:mrow>
<mml:mi>t</mml:mi>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:mo>&#x2212;</mml:mo>
<mml:msub>
<mml:mi>z</mml:mi>
<mml:mrow>
<mml:mn>2</mml:mn>
<mml:mi>M</mml:mi>
<mml:mi>R</mml:mi>
</mml:mrow>
</mml:msub>
</mml:mrow>
</mml:mtd>
</mml:mtr>
</mml:mtable>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
</mml:math>
<label>(15)</label>
</disp-formula>
</p>
<p>Assuming all variables are initially zero, by performing a Laplace transform on <xref ref-type="disp-formula" rid="e15">Formula 15</xref> and combining it with <xref ref-type="disp-formula" rid="e13">Formulas 13</xref>, <xref ref-type="disp-formula" rid="e16">16</xref> can be obtained, which describes the error of MRESO in the complex domain.<disp-formula id="e16">
<mml:math id="m81">
<mml:mrow>
<mml:mfenced open="{" close="" separators="&#x7c;">
<mml:mrow>
<mml:mtable columnalign="left">
<mml:mtr>
<mml:mtd>
<mml:mrow>
<mml:msub>
<mml:mi>E</mml:mi>
<mml:mn>1</mml:mn>
</mml:msub>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="&#x7c;">
<mml:mrow>
<mml:mi>s</mml:mi>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:mo>&#x3d;</mml:mo>
<mml:mfrac>
<mml:msup>
<mml:mi>s</mml:mi>
<mml:mn>2</mml:mn>
</mml:msup>
<mml:mrow>
<mml:mi>s</mml:mi>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="&#x7c;">
<mml:mrow>
<mml:mi>s</mml:mi>
<mml:mo>&#x2b;</mml:mo>
<mml:msub>
<mml:mi>&#x3b2;</mml:mi>
<mml:mn>1</mml:mn>
</mml:msub>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:mo>&#x2b;</mml:mo>
<mml:msub>
<mml:mi>&#x3b2;</mml:mi>
<mml:mn>2</mml:mn>
</mml:msub>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="&#x7c;">
<mml:mrow>
<mml:mn>1</mml:mn>
<mml:mo>&#x2b;</mml:mo>
<mml:mi>s</mml:mi>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="&#x7c;">
<mml:mrow>
<mml:mstyle displaystyle="true">
<mml:msubsup>
<mml:mo>&#x2211;</mml:mo>
<mml:mrow>
<mml:mi>m</mml:mi>
<mml:mo>&#x3d;</mml:mo>
<mml:mn>1</mml:mn>
</mml:mrow>
<mml:mi>N</mml:mi>
</mml:msubsup>
</mml:mstyle>
<mml:mrow>
<mml:msub>
<mml:mi>G</mml:mi>
<mml:mrow>
<mml:mi mathvariant="italic">PR</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>m</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="&#x7c;">
<mml:mrow>
<mml:mi>s</mml:mi>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
</mml:mrow>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
</mml:mrow>
</mml:mfrac>
<mml:mi>Y</mml:mi>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="&#x7c;">
<mml:mrow>
<mml:mi>s</mml:mi>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:mo>&#x2212;</mml:mo>
<mml:mfrac>
<mml:mrow>
<mml:msub>
<mml:mi>b</mml:mi>
<mml:mn>0</mml:mn>
</mml:msub>
<mml:mi>s</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>s</mml:mi>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="&#x7c;">
<mml:mrow>
<mml:mi>s</mml:mi>
<mml:mo>&#x2b;</mml:mo>
<mml:msub>
<mml:mi>&#x3b2;</mml:mi>
<mml:mn>1</mml:mn>
</mml:msub>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:mo>&#x2b;</mml:mo>
<mml:msub>
<mml:mi>&#x3b2;</mml:mi>
<mml:mn>2</mml:mn>
</mml:msub>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="&#x7c;">
<mml:mrow>
<mml:mn>1</mml:mn>
<mml:mo>&#x2b;</mml:mo>
<mml:mi>s</mml:mi>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="&#x7c;">
<mml:mrow>
<mml:mstyle displaystyle="true">
<mml:msubsup>
<mml:mo>&#x2211;</mml:mo>
<mml:mrow>
<mml:mi>m</mml:mi>
<mml:mo>&#x3d;</mml:mo>
<mml:mn>1</mml:mn>
</mml:mrow>
<mml:mi>N</mml:mi>
</mml:msubsup>
</mml:mstyle>
<mml:mrow>
<mml:msub>
<mml:mi>G</mml:mi>
<mml:mrow>
<mml:mi mathvariant="italic">PR</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>m</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="&#x7c;">
<mml:mrow>
<mml:mi>s</mml:mi>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
</mml:mrow>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
</mml:mrow>
</mml:mfrac>
<mml:mi>U</mml:mi>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="&#x7c;">
<mml:mrow>
<mml:mi>s</mml:mi>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
</mml:mrow>
</mml:mtd>
</mml:mtr>
<mml:mtr>
<mml:mtd>
<mml:mrow>
<mml:msub>
<mml:mi>E</mml:mi>
<mml:mn>2</mml:mn>
</mml:msub>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="&#x7c;">
<mml:mrow>
<mml:mi>s</mml:mi>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:mo>&#x3d;</mml:mo>
<mml:mfrac>
<mml:mrow>
<mml:msup>
<mml:mi>s</mml:mi>
<mml:mn>2</mml:mn>
</mml:msup>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="&#x7c;">
<mml:mrow>
<mml:mi>s</mml:mi>
<mml:mo>&#x2b;</mml:mo>
<mml:msub>
<mml:mi>&#x3b2;</mml:mi>
<mml:mn>1</mml:mn>
</mml:msub>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
</mml:mrow>
<mml:mrow>
<mml:mi>s</mml:mi>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="&#x7c;">
<mml:mrow>
<mml:mi>s</mml:mi>
<mml:mo>&#x2b;</mml:mo>
<mml:msub>
<mml:mi>&#x3b2;</mml:mi>
<mml:mn>1</mml:mn>
</mml:msub>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:mo>&#x2b;</mml:mo>
<mml:msub>
<mml:mi>&#x3b2;</mml:mi>
<mml:mn>2</mml:mn>
</mml:msub>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="&#x7c;">
<mml:mrow>
<mml:mn>1</mml:mn>
<mml:mo>&#x2b;</mml:mo>
<mml:mi>s</mml:mi>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="&#x7c;">
<mml:mrow>
<mml:mstyle displaystyle="true">
<mml:msubsup>
<mml:mo>&#x2211;</mml:mo>
<mml:mrow>
<mml:mi>m</mml:mi>
<mml:mo>&#x3d;</mml:mo>
<mml:mn>1</mml:mn>
</mml:mrow>
<mml:mi>N</mml:mi>
</mml:msubsup>
</mml:mstyle>
<mml:mrow>
<mml:msub>
<mml:mi>G</mml:mi>
<mml:mrow>
<mml:mi mathvariant="italic">PR</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>m</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="&#x7c;">
<mml:mrow>
<mml:mi>s</mml:mi>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
</mml:mrow>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
</mml:mrow>
</mml:mfrac>
<mml:mi>Y</mml:mi>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="&#x7c;">
<mml:mrow>
<mml:mi>s</mml:mi>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:mo>&#x2212;</mml:mo>
<mml:mfrac>
<mml:mrow>
<mml:msub>
<mml:mi>b</mml:mi>
<mml:mn>0</mml:mn>
</mml:msub>
<mml:mi>s</mml:mi>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="&#x7c;">
<mml:mrow>
<mml:mi>s</mml:mi>
<mml:mo>&#x2b;</mml:mo>
<mml:msub>
<mml:mi>&#x3b2;</mml:mi>
<mml:mn>1</mml:mn>
</mml:msub>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
</mml:mrow>
<mml:mrow>
<mml:mi>s</mml:mi>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="&#x7c;">
<mml:mrow>
<mml:mi>s</mml:mi>
<mml:mo>&#x2b;</mml:mo>
<mml:msub>
<mml:mi>&#x3b2;</mml:mi>
<mml:mn>1</mml:mn>
</mml:msub>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:mo>&#x2b;</mml:mo>
<mml:msub>
<mml:mi>&#x3b2;</mml:mi>
<mml:mn>2</mml:mn>
</mml:msub>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="&#x7c;">
<mml:mrow>
<mml:mn>1</mml:mn>
<mml:mo>&#x2b;</mml:mo>
<mml:mi>s</mml:mi>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="&#x7c;">
<mml:mrow>
<mml:mstyle displaystyle="true">
<mml:msubsup>
<mml:mo>&#x2211;</mml:mo>
<mml:mrow>
<mml:mi>m</mml:mi>
<mml:mo>&#x3d;</mml:mo>
<mml:mn>1</mml:mn>
</mml:mrow>
<mml:mi>N</mml:mi>
</mml:msubsup>
</mml:mstyle>
<mml:mrow>
<mml:msub>
<mml:mi>G</mml:mi>
<mml:mrow>
<mml:mi mathvariant="italic">PR</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>m</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="&#x7c;">
<mml:mrow>
<mml:mi>s</mml:mi>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
</mml:mrow>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
</mml:mrow>
</mml:mfrac>
<mml:mi>U</mml:mi>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="&#x7c;">
<mml:mrow>
<mml:mi>s</mml:mi>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
</mml:mrow>
</mml:mtd>
</mml:mtr>
</mml:mtable>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
</mml:math>
<label>(16)</label>
</disp-formula>
</p>
<p>Considering the step response of the observer, let <inline-formula id="inf66">
<mml:math id="m82">
<mml:mrow>
<mml:mi>Y</mml:mi>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="&#x7c;">
<mml:mrow>
<mml:mi>s</mml:mi>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
</mml:mrow>
</mml:math>
</inline-formula> and <inline-formula id="inf67">
<mml:math id="m83">
<mml:mrow>
<mml:mi>U</mml:mi>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="&#x7c;">
<mml:mrow>
<mml:mi>s</mml:mi>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
</mml:mrow>
</mml:math>
</inline-formula> be the step signals with amplitude <italic>k</italic>, where <inline-formula id="inf68">
<mml:math id="m84">
<mml:mrow>
<mml:mi>Y</mml:mi>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="&#x7c;">
<mml:mrow>
<mml:mi>s</mml:mi>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:mo>&#x3d;</mml:mo>
<mml:mfrac>
<mml:mrow>
<mml:mi>k</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>s</mml:mi>
</mml:mrow>
</mml:mfrac>
</mml:mrow>
</mml:math>
</inline-formula>, <inline-formula id="inf69">
<mml:math id="m85">
<mml:mrow>
<mml:mi>U</mml:mi>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="&#x7c;">
<mml:mrow>
<mml:mi>s</mml:mi>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:mo>&#x3d;</mml:mo>
<mml:mfrac>
<mml:mrow>
<mml:mi>k</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>s</mml:mi>
</mml:mrow>
</mml:mfrac>
</mml:mrow>
</mml:math>
</inline-formula>. According to the final value theorem of the Laplace transform, the steady-state tracking error is shown in <xref ref-type="disp-formula" rid="e17">Formula 17</xref>:<disp-formula id="e17">
<mml:math id="m86">
<mml:mrow>
<mml:mfenced open="{" close="" separators="&#x7c;">
<mml:mrow>
<mml:mtable columnalign="left">
<mml:mtr>
<mml:mtd>
<mml:mrow>
<mml:msub>
<mml:mi>e</mml:mi>
<mml:mn>1</mml:mn>
</mml:msub>
<mml:mo>&#x3d;</mml:mo>
<mml:munder>
<mml:mi>lim</mml:mi>
<mml:mrow>
<mml:mi>s</mml:mi>
<mml:mo>&#x2192;</mml:mo>
<mml:mn>0</mml:mn>
</mml:mrow>
</mml:munder>
<mml:mi>s</mml:mi>
<mml:msub>
<mml:mi>E</mml:mi>
<mml:mn>1</mml:mn>
</mml:msub>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="&#x7c;">
<mml:mrow>
<mml:mi>s</mml:mi>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:mo>&#x3d;</mml:mo>
<mml:mn>0</mml:mn>
</mml:mrow>
</mml:mtd>
</mml:mtr>
<mml:mtr>
<mml:mtd>
<mml:mrow>
<mml:msub>
<mml:mi>e</mml:mi>
<mml:mn>2</mml:mn>
</mml:msub>
<mml:mo>&#x3d;</mml:mo>
<mml:munder>
<mml:mi>lim</mml:mi>
<mml:mrow>
<mml:mi>s</mml:mi>
<mml:mo>&#x2192;</mml:mo>
<mml:mn>0</mml:mn>
</mml:mrow>
</mml:munder>
<mml:mi>s</mml:mi>
<mml:msub>
<mml:mi>E</mml:mi>
<mml:mn>2</mml:mn>
</mml:msub>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="&#x7c;">
<mml:mrow>
<mml:mi>s</mml:mi>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:mo>&#x3d;</mml:mo>
<mml:mn>0</mml:mn>
</mml:mrow>
</mml:mtd>
</mml:mtr>
</mml:mtable>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
</mml:math>
<label>(17)</label>
</disp-formula>
</p>
<p>The above analysis shows that MRESO has good convergence performance and disturbance estimation ability, and it can achieve stable tracking and error estimation of system state variables <inline-formula id="inf70">
<mml:math id="m87">
<mml:mrow>
<mml:msub>
<mml:mi>x</mml:mi>
<mml:mn>1</mml:mn>
</mml:msub>
</mml:mrow>
</mml:math>
</inline-formula> and <inline-formula id="inf71">
<mml:math id="m88">
<mml:mrow>
<mml:msub>
<mml:mi>x</mml:mi>
<mml:mn>2</mml:mn>
</mml:msub>
</mml:mrow>
</mml:math>
</inline-formula>, where <inline-formula id="inf72">
<mml:math id="m89">
<mml:mrow>
<mml:msub>
<mml:mi>z</mml:mi>
<mml:mn>1</mml:mn>
</mml:msub>
<mml:mo>&#x3d;</mml:mo>
<mml:msub>
<mml:mi>x</mml:mi>
<mml:mn>1</mml:mn>
</mml:msub>
</mml:mrow>
</mml:math>
</inline-formula> and <inline-formula id="inf73">
<mml:math id="m90">
<mml:mrow>
<mml:msub>
<mml:mi>z</mml:mi>
<mml:mrow>
<mml:mn>2</mml:mn>
<mml:mi>M</mml:mi>
<mml:mi>R</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mo>&#x3d;</mml:mo>
<mml:mi>h</mml:mi>
</mml:mrow>
</mml:math>
</inline-formula>. The model is approximately an integral link, and <xref ref-type="disp-formula" rid="e7">Formula 7</xref> can be simplified as:<disp-formula id="e18">
<mml:math id="m91">
<mml:mrow>
<mml:mover accent="true">
<mml:mi>y</mml:mi>
<mml:mo>&#x2d9;</mml:mo>
</mml:mover>
<mml:mo>&#x2248;</mml:mo>
<mml:msub>
<mml:mi>u</mml:mi>
<mml:mn>0</mml:mn>
</mml:msub>
</mml:mrow>
</mml:math>
<label>(18)</label>
</disp-formula>
</p>
<p>According to <xref ref-type="disp-formula" rid="e14">Formulas 14</xref>, <xref ref-type="disp-formula" rid="e18">18</xref>, the relationship between the bus voltage and the reference value can be obtained as follows:<disp-formula id="e19">
<mml:math id="m92">
<mml:mrow>
<mml:msub>
<mml:mi>v</mml:mi>
<mml:mtext>bus</mml:mtext>
</mml:msub>
<mml:mo>&#x3d;</mml:mo>
<mml:msub>
<mml:mi>v</mml:mi>
<mml:mtext>ref</mml:mtext>
</mml:msub>
<mml:msup>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="&#x7c;">
<mml:mrow>
<mml:mn>1</mml:mn>
<mml:mo>&#x2212;</mml:mo>
<mml:msup>
<mml:mi>e</mml:mi>
<mml:mrow>
<mml:mo>&#x2212;</mml:mo>
<mml:msub>
<mml:mi>k</mml:mi>
<mml:mi>p</mml:mi>
</mml:msub>
<mml:mi>t</mml:mi>
</mml:mrow>
</mml:msup>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:mfrac>
<mml:mrow>
<mml:mn>1</mml:mn>
</mml:mrow>
<mml:mrow>
<mml:mn>2</mml:mn>
</mml:mrow>
</mml:mfrac>
</mml:msup>
</mml:mrow>
</mml:math>
<label>(19)</label>
</disp-formula>
</p>
<p>According to <xref ref-type="disp-formula" rid="e19">Formula 19</xref>, <inline-formula id="inf74">
<mml:math id="m93">
<mml:mrow>
<mml:munder>
<mml:mi>lim</mml:mi>
<mml:mrow>
<mml:mi>t</mml:mi>
<mml:mo>&#x2192;</mml:mo>
<mml:mi>&#x221e;</mml:mi>
</mml:mrow>
</mml:munder>
<mml:msub>
<mml:mi>v</mml:mi>
<mml:mtext>bus</mml:mtext>
</mml:msub>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="&#x7c;">
<mml:mrow>
<mml:mi>t</mml:mi>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:mo>&#x3d;</mml:mo>
<mml:msub>
<mml:mi>v</mml:mi>
<mml:mtext>ref</mml:mtext>
</mml:msub>
</mml:mrow>
</mml:math>
</inline-formula>, and the bus voltage can track the reference value well. When the system is subject to periodic disturbances detected by multiple EIS sensors, the presence of the MRESO unit allows for accurate estimation of these disturbances, avoiding the need to set an excessively high observer bandwidth and making the system more robust.</p>
</sec>
<sec id="s4">
<label>4</label>
<title>Controller performance evaluation based on a three-stack hybrid system</title>
<p>In this section, a three-stack FC and lithium battery hybrid system is selected, with resonant frequencies of <inline-formula id="inf75">
<mml:math id="m94">
<mml:mrow>
<mml:msub>
<mml:mi>&#x3c9;</mml:mi>
<mml:mrow>
<mml:mi>r</mml:mi>
<mml:mo>,</mml:mo>
<mml:mn>1</mml:mn>
</mml:mrow>
</mml:msub>
<mml:mo>&#x3d;</mml:mo>
<mml:mn>30</mml:mn>
<mml:mtext>&#x2009;Hz</mml:mtext>
</mml:mrow>
</mml:math>
</inline-formula>, <inline-formula id="inf76">
<mml:math id="m95">
<mml:mrow>
<mml:msub>
<mml:mi>&#x3c9;</mml:mi>
<mml:mrow>
<mml:mi>r</mml:mi>
<mml:mo>,</mml:mo>
<mml:mn>2</mml:mn>
</mml:mrow>
</mml:msub>
<mml:mo>&#x3d;</mml:mo>
<mml:mn>50</mml:mn>
<mml:mtext>&#x2009;Hz</mml:mtext>
</mml:mrow>
</mml:math>
</inline-formula> and <inline-formula id="inf77">
<mml:math id="m96">
<mml:mrow>
<mml:msub>
<mml:mi>&#x3c9;</mml:mi>
<mml:mrow>
<mml:mi>r</mml:mi>
<mml:mo>,</mml:mo>
<mml:mn>3</mml:mn>
</mml:mrow>
</mml:msub>
<mml:mo>&#x3d;</mml:mo>
<mml:mn>100</mml:mn>
<mml:mtext>&#x2009;Hz</mml:mtext>
</mml:mrow>
</mml:math>
</inline-formula>. For the controller system designed in the above chapter, the performance of the enhanced ESO is evaluated through detailed theoretical analysis.</p>
<sec id="s4-1">
<label>4.1</label>
<title>Analysis of disturbance observation performance for MRESO</title>
<p>Based on <xref ref-type="disp-formula" rid="e12">Formulas 12</xref>, <xref ref-type="disp-formula" rid="e13">13</xref>, the transfer function from the total disturbance to its estimated error can be obtained as:<disp-formula id="e20">
<mml:math id="m97">
<mml:mrow>
<mml:msub>
<mml:mi>G</mml:mi>
<mml:mi>e</mml:mi>
</mml:msub>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="&#x7c;">
<mml:mrow>
<mml:mi>s</mml:mi>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:mo>&#x3d;</mml:mo>
<mml:mfrac>
<mml:mrow>
<mml:msub>
<mml:mi>z</mml:mi>
<mml:mrow>
<mml:mn>2</mml:mn>
<mml:mi>M</mml:mi>
<mml:mi>R</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="&#x7c;">
<mml:mrow>
<mml:mi>s</mml:mi>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:mo>&#x2212;</mml:mo>
<mml:msub>
<mml:mi>x</mml:mi>
<mml:mn>2</mml:mn>
</mml:msub>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="&#x7c;">
<mml:mrow>
<mml:mi>s</mml:mi>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
</mml:mrow>
<mml:mrow>
<mml:msub>
<mml:mi>x</mml:mi>
<mml:mn>2</mml:mn>
</mml:msub>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="&#x7c;">
<mml:mrow>
<mml:mi>s</mml:mi>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
</mml:mrow>
</mml:mfrac>
<mml:mo>&#x3d;</mml:mo>
<mml:mo>&#x2212;</mml:mo>
<mml:mfrac>
<mml:mrow>
<mml:mi>s</mml:mi>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="&#x7c;">
<mml:mrow>
<mml:mi>s</mml:mi>
<mml:mo>&#x2b;</mml:mo>
<mml:msub>
<mml:mi>&#x3b2;</mml:mi>
<mml:mn>1</mml:mn>
</mml:msub>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
</mml:mrow>
<mml:mrow>
<mml:mi>s</mml:mi>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="&#x7c;">
<mml:mrow>
<mml:mi>s</mml:mi>
<mml:mo>&#x2b;</mml:mo>
<mml:msub>
<mml:mi>&#x3b2;</mml:mi>
<mml:mn>1</mml:mn>
</mml:msub>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:mo>&#x2b;</mml:mo>
<mml:msub>
<mml:mi>&#x3b2;</mml:mi>
<mml:mn>2</mml:mn>
</mml:msub>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="&#x7c;">
<mml:mrow>
<mml:mn>1</mml:mn>
<mml:mo>&#x2b;</mml:mo>
<mml:mi>s</mml:mi>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="&#x7c;">
<mml:mrow>
<mml:mstyle displaystyle="true">
<mml:msubsup>
<mml:mo>&#x2211;</mml:mo>
<mml:mrow>
<mml:mi>m</mml:mi>
<mml:mo>&#x3d;</mml:mo>
<mml:mn>1</mml:mn>
</mml:mrow>
<mml:mn>3</mml:mn>
</mml:msubsup>
</mml:mstyle>
<mml:mrow>
<mml:msub>
<mml:mi>G</mml:mi>
<mml:mrow>
<mml:mi mathvariant="italic">PR</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>m</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="&#x7c;">
<mml:mrow>
<mml:mi>s</mml:mi>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
</mml:mrow>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
</mml:mrow>
</mml:mfrac>
</mml:mrow>
</mml:math>
<label>(20)</label>
</disp-formula>
</p>
<p>
<xref ref-type="fig" rid="F6">Figure 6</xref> shows the Bode plots of the system described by <xref ref-type="disp-formula" rid="e10">Formula 10</xref> and <xref ref-type="disp-formula" rid="e20">Formula 20</xref>, when the EIS detection frequencies of the three stacks are 30 Hz, 50 Hz, and 100 Hz, respectively. The corresponding parameters in <xref ref-type="fig" rid="F6">Figure 6a</xref> are set as: <inline-formula id="inf78">
<mml:math id="m98">
<mml:mrow>
<mml:msub>
<mml:mi>&#x3c9;</mml:mi>
<mml:mi mathvariant="normal">o</mml:mi>
</mml:msub>
<mml:mo>&#x3d;</mml:mo>
<mml:mn>400</mml:mn>
</mml:mrow>
</mml:math>
</inline-formula> and <inline-formula id="inf79">
<mml:math id="m99">
<mml:mrow>
<mml:msub>
<mml:mi>k</mml:mi>
<mml:mi>p</mml:mi>
</mml:msub>
<mml:mo>&#x3d;</mml:mo>
<mml:mn>100</mml:mn>
</mml:mrow>
</mml:math>
</inline-formula>, while the corresponding parameters in <xref ref-type="fig" rid="F6">Figure 6b</xref> are set as: <inline-formula id="inf80">
<mml:math id="m100">
<mml:mrow>
<mml:msub>
<mml:mi>k</mml:mi>
<mml:mrow>
<mml:mi>r</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>m</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mo>&#x3d;</mml:mo>
<mml:mn>1</mml:mn>
</mml:mrow>
</mml:math>
</inline-formula> and <inline-formula id="inf81">
<mml:math id="m101">
<mml:mrow>
<mml:msub>
<mml:mi>k</mml:mi>
<mml:mi>p</mml:mi>
</mml:msub>
<mml:mo>&#x3d;</mml:mo>
<mml:mn>100</mml:mn>
</mml:mrow>
</mml:math>
</inline-formula>. As can be seen from <xref ref-type="fig" rid="F6">Figure 6a</xref>, in the low-frequency and high-frequency regions, the MRESO demonstrates observation performance similar to that of the traditional ESO (<inline-formula id="inf82">
<mml:math id="m102">
<mml:mrow>
<mml:msub>
<mml:mi>k</mml:mi>
<mml:mrow>
<mml:mi>r</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>m</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mo>&#x3d;</mml:mo>
<mml:mn>0</mml:mn>
</mml:mrow>
</mml:math>
</inline-formula>). At the set resonant frequency <inline-formula id="inf83">
<mml:math id="m103">
<mml:mrow>
<mml:msub>
<mml:mi>&#x3c9;</mml:mi>
<mml:mrow>
<mml:mi>r</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>m</mml:mi>
</mml:mrow>
</mml:msub>
</mml:mrow>
</mml:math>
</inline-formula> and its adjacent frequency bands, the MRESO can still accurately maintain a low gain amplitude. This shows that it has good estimation accuracy for multi-frequency periodic disturbances. <xref ref-type="fig" rid="F6">Figure 6b</xref> further shows that increasing the observer bandwidth <inline-formula id="inf84">
<mml:math id="m104">
<mml:mrow>
<mml:msub>
<mml:mi>&#x3c9;</mml:mi>
<mml:mi mathvariant="normal">o</mml:mi>
</mml:msub>
</mml:mrow>
</mml:math>
</inline-formula> can comprehensively improve the disturbance estimation capability within the entire frequency band. However, increasing the resonant gain <inline-formula id="inf85">
<mml:math id="m105">
<mml:mrow>
<mml:msub>
<mml:mi>k</mml:mi>
<mml:mrow>
<mml:mi>r</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>m</mml:mi>
</mml:mrow>
</mml:msub>
</mml:mrow>
</mml:math>
</inline-formula> can only promote the estimation accuracy at the EIS excitation frequency and its nearby frequency bands, and will cause the estimation accuracy to decrease at the excitation frequency cut-in and cut-out stages.</p>
<fig id="F6" position="float">
<label>FIGURE 6</label>
<caption>
<p>Bode plots of transfer function <inline-formula id="inf86">
<mml:math id="m106">
<mml:mrow>
<mml:msub>
<mml:mi>G</mml:mi>
<mml:mi>e</mml:mi>
</mml:msub>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="&#x7c;">
<mml:mrow>
<mml:mi>s</mml:mi>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
</mml:mrow>
</mml:math>
</inline-formula> at frequencies <inline-formula id="inf87">
<mml:math id="m107">
<mml:mrow>
<mml:msub>
<mml:mi>&#x3c9;</mml:mi>
<mml:mrow>
<mml:mi>r</mml:mi>
<mml:mo>,</mml:mo>
<mml:mn>1</mml:mn>
</mml:mrow>
</mml:msub>
<mml:mo>&#x3d;</mml:mo>
<mml:mn>30</mml:mn>
<mml:mtext> Hz</mml:mtext>
<mml:mo>,</mml:mo>
<mml:msub>
<mml:mi>&#x3c9;</mml:mi>
<mml:mrow>
<mml:mi>r</mml:mi>
<mml:mo>,</mml:mo>
<mml:mn>2</mml:mn>
</mml:mrow>
</mml:msub>
<mml:mo>&#x3d;</mml:mo>
<mml:mn>50</mml:mn>
<mml:mtext> Hz</mml:mtext>
<mml:mo>,</mml:mo>
<mml:msub>
<mml:mi>&#x3c9;</mml:mi>
<mml:mrow>
<mml:mi>r</mml:mi>
<mml:mo>,</mml:mo>
<mml:mn>3</mml:mn>
</mml:mrow>
</mml:msub>
<mml:mo>&#x3d;</mml:mo>
<mml:mn>100</mml:mn>
<mml:mtext> Hz</mml:mtext>
</mml:mrow>
</mml:math>
</inline-formula>, <bold>(a)</bold> <inline-formula id="inf88">
<mml:math id="m108">
<mml:mrow>
<mml:msub>
<mml:mi>&#x3c9;</mml:mi>
<mml:mi mathvariant="normal">o</mml:mi>
</mml:msub>
<mml:mo>&#x3d;</mml:mo>
<mml:mn>400</mml:mn>
</mml:mrow>
</mml:math>
</inline-formula>, <inline-formula id="inf89">
<mml:math id="m109">
<mml:mrow>
<mml:msub>
<mml:mi>k</mml:mi>
<mml:mi>p</mml:mi>
</mml:msub>
<mml:mo>&#x3d;</mml:mo>
<mml:mn>100</mml:mn>
</mml:mrow>
</mml:math>
</inline-formula>, <bold>(b)</bold> <inline-formula id="inf90">
<mml:math id="m110">
<mml:mrow>
<mml:msub>
<mml:mi>k</mml:mi>
<mml:mrow>
<mml:mi>r</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>m</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mo>&#x3d;</mml:mo>
<mml:mn>1</mml:mn>
</mml:mrow>
</mml:math>
</inline-formula>, <inline-formula id="inf91">
<mml:math id="m111">
<mml:mrow>
<mml:msub>
<mml:mi>k</mml:mi>
<mml:mi>p</mml:mi>
</mml:msub>
<mml:mo>&#x3d;</mml:mo>
<mml:mn>100</mml:mn>
</mml:mrow>
</mml:math>
</inline-formula>.</p>
</caption>
<graphic xlink:href="fenrg-14-1731457-g006.tif">
<alt-text content-type="machine-generated">Two logarithmic magnitude Bode plots side by side, both showing mag (dB) versus frequency &#x3C9; (rad/s) from 1 to 100,000 on the x-axis and -60 to 20 on the y-axis. Plot (a) compares three curves for k_r,m values of 0, 0.5, and 1, indicated by different colored lines. Plot (b) compares three curves for &#x3C9;_o values of 200, 400, and 600, also color-coded. Both plots use legends for clarity and display frequency-dependent resonance behavior.</alt-text>
</graphic>
</fig>
</sec>
<sec id="s4-2">
<label>4.2</label>
<title>Analysis of anti-interference performance for MRESO</title>
<p>Based on <xref ref-type="disp-formula" rid="e8">Formulas 8</xref>, <xref ref-type="disp-formula" rid="e9">9</xref>, <xref ref-type="disp-formula" rid="e12">12</xref>, <xref ref-type="disp-formula" rid="e14">14</xref>, the transfer function from the total disturbance to the energy of capacitor, which is located at the output end of the battery converter, can be expressed as:<disp-formula id="e21">
<mml:math id="m112">
<mml:mrow>
<mml:msub>
<mml:mi>G</mml:mi>
<mml:mi>h</mml:mi>
</mml:msub>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="&#x7c;">
<mml:mrow>
<mml:mi>s</mml:mi>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:mo>&#x3d;</mml:mo>
<mml:mfrac>
<mml:mrow>
<mml:msub>
<mml:mi>E</mml:mi>
<mml:mtext>cb</mml:mtext>
</mml:msub>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="&#x7c;">
<mml:mrow>
<mml:mi>s</mml:mi>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
</mml:mrow>
<mml:mrow>
<mml:mi>h</mml:mi>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="&#x7c;">
<mml:mrow>
<mml:mi>s</mml:mi>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
</mml:mrow>
</mml:mfrac>
<mml:mo>&#x3d;</mml:mo>
<mml:mfrac>
<mml:mrow>
<mml:mi>s</mml:mi>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="&#x7c;">
<mml:mrow>
<mml:mi>s</mml:mi>
<mml:mo>&#x2b;</mml:mo>
<mml:msub>
<mml:mi>&#x3b2;</mml:mi>
<mml:mn>1</mml:mn>
</mml:msub>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
</mml:mrow>
<mml:mrow>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="&#x7c;">
<mml:mrow>
<mml:mi>s</mml:mi>
<mml:mo>&#x2b;</mml:mo>
<mml:msub>
<mml:mi>k</mml:mi>
<mml:mi>p</mml:mi>
</mml:msub>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:mtext> </mml:mtext>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="&#x7c;">
<mml:mrow>
<mml:msup>
<mml:mi>s</mml:mi>
<mml:mn>2</mml:mn>
</mml:msup>
<mml:mo>&#x2b;</mml:mo>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="&#x7c;">
<mml:mrow>
<mml:msub>
<mml:mi>&#x3b2;</mml:mi>
<mml:mn>1</mml:mn>
</mml:msub>
<mml:mo>&#x2b;</mml:mo>
<mml:msub>
<mml:mi>&#x3b2;</mml:mi>
<mml:mn>2</mml:mn>
</mml:msub>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="&#x7c;">
<mml:mrow>
<mml:mstyle displaystyle="true">
<mml:msubsup>
<mml:mo>&#x2211;</mml:mo>
<mml:mrow>
<mml:mi>m</mml:mi>
<mml:mo>&#x3d;</mml:mo>
<mml:mn>1</mml:mn>
</mml:mrow>
<mml:mn>3</mml:mn>
</mml:msubsup>
</mml:mstyle>
<mml:mrow>
<mml:msub>
<mml:mi>G</mml:mi>
<mml:mrow>
<mml:mi mathvariant="italic">PR</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>m</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="&#x7c;">
<mml:mrow>
<mml:mi>s</mml:mi>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
</mml:mrow>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:mi>s</mml:mi>
<mml:mo>&#x2b;</mml:mo>
<mml:msub>
<mml:mi>&#x3b2;</mml:mi>
<mml:mn>2</mml:mn>
</mml:msub>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
</mml:mrow>
</mml:mfrac>
</mml:mrow>
</mml:math>
<label>(21)</label>
</disp-formula>
</p>
<p>
<xref ref-type="fig" rid="F7">Figure 7</xref> presents the Bode plots of the system described by <xref ref-type="disp-formula" rid="e10">Formulas 10</xref>, <xref ref-type="disp-formula" rid="e21">21</xref> at three EIS detection frequencies (30 Hz, 50 Hz, and 100 Hz). The corresponding parameters in <xref ref-type="fig" rid="F7">Figure 7a</xref> are set as: <inline-formula id="inf92">
<mml:math id="m113">
<mml:mrow>
<mml:msub>
<mml:mi>&#x3c9;</mml:mi>
<mml:mi mathvariant="normal">o</mml:mi>
</mml:msub>
<mml:mo>&#x3d;</mml:mo>
<mml:mn>400</mml:mn>
</mml:mrow>
</mml:math>
</inline-formula> and <inline-formula id="inf93">
<mml:math id="m114">
<mml:mrow>
<mml:msub>
<mml:mi>k</mml:mi>
<mml:mi>p</mml:mi>
</mml:msub>
<mml:mo>&#x3d;</mml:mo>
<mml:mn>100</mml:mn>
</mml:mrow>
</mml:math>
</inline-formula>, while the corresponding parameters in <xref ref-type="fig" rid="F7">Figure 7b</xref> are set as: <inline-formula id="inf94">
<mml:math id="m115">
<mml:mrow>
<mml:msub>
<mml:mi>k</mml:mi>
<mml:mrow>
<mml:mi>r</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>m</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mo>&#x3d;</mml:mo>
<mml:mn>1</mml:mn>
</mml:mrow>
</mml:math>
</inline-formula> and <inline-formula id="inf95">
<mml:math id="m116">
<mml:mrow>
<mml:msub>
<mml:mi>k</mml:mi>
<mml:mi>p</mml:mi>
</mml:msub>
<mml:mo>&#x3d;</mml:mo>
<mml:mn>100</mml:mn>
</mml:mrow>
</mml:math>
</inline-formula>. As can be seen from <xref ref-type="fig" rid="F7">Figure 7a</xref>, in the low-frequency and high-frequency regions, the anti-interference ability of the MRESO is similar to that of the traditional ESO. Near the set resonant frequency <inline-formula id="inf96">
<mml:math id="m117">
<mml:mrow>
<mml:msub>
<mml:mi>&#x3c9;</mml:mi>
<mml:mrow>
<mml:mi>r</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>m</mml:mi>
</mml:mrow>
</mml:msub>
</mml:mrow>
</mml:math>
</inline-formula> (30 Hz, 50 Hz, and 100 Hz), due to the introduction of the multi-resonant controller, the system exhibits a higher interference suppression ability. Further analysis shows that increasing the resonant gain <inline-formula id="inf97">
<mml:math id="m118">
<mml:mrow>
<mml:msub>
<mml:mi>k</mml:mi>
<mml:mrow>
<mml:mi>r</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>m</mml:mi>
</mml:mrow>
</mml:msub>
</mml:mrow>
</mml:math>
</inline-formula> can enhance the anti-interference performance near the EIS characteristic frequency. The results in <xref ref-type="fig" rid="F7">Figure 7b</xref> reveal that increasing the observer bandwidth <inline-formula id="inf98">
<mml:math id="m119">
<mml:mrow>
<mml:msub>
<mml:mi>&#x3c9;</mml:mi>
<mml:mi mathvariant="normal">o</mml:mi>
</mml:msub>
</mml:mrow>
</mml:math>
</inline-formula> can improve the interference suppression ability of the system over the entire frequency range. However, too high an observer bandwidth can easily lead to problems such as excessively high noise sensitivity, difficulty in discretization, and decreased control quality.</p>
<fig id="F7" position="float">
<label>FIGURE 7</label>
<caption>
<p>Bode plots of transfer function <inline-formula id="inf99">
<mml:math id="m120">
<mml:mrow>
<mml:msub>
<mml:mi>G</mml:mi>
<mml:mi>h</mml:mi>
</mml:msub>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="&#x7c;">
<mml:mrow>
<mml:mi>s</mml:mi>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
</mml:mrow>
</mml:math>
</inline-formula> at frequencies <inline-formula id="inf100">
<mml:math id="m121">
<mml:mrow>
<mml:msub>
<mml:mi>&#x3c9;</mml:mi>
<mml:mrow>
<mml:mi>r</mml:mi>
<mml:mo>,</mml:mo>
<mml:mn>1</mml:mn>
</mml:mrow>
</mml:msub>
<mml:mo>&#x3d;</mml:mo>
<mml:mn>30</mml:mn>
<mml:mtext> Hz</mml:mtext>
<mml:mo>,</mml:mo>
<mml:msub>
<mml:mi>&#x3c9;</mml:mi>
<mml:mrow>
<mml:mi>r</mml:mi>
<mml:mo>,</mml:mo>
<mml:mn>2</mml:mn>
</mml:mrow>
</mml:msub>
<mml:mo>&#x3d;</mml:mo>
<mml:mn>50</mml:mn>
<mml:mtext> Hz</mml:mtext>
<mml:mo>,</mml:mo>
<mml:msub>
<mml:mi>&#x3c9;</mml:mi>
<mml:mrow>
<mml:mi>r</mml:mi>
<mml:mo>,</mml:mo>
<mml:mn>3</mml:mn>
</mml:mrow>
</mml:msub>
<mml:mo>&#x3d;</mml:mo>
<mml:mn>100</mml:mn>
<mml:mtext> Hz</mml:mtext>
</mml:mrow>
</mml:math>
</inline-formula>, <bold>(a)</bold> <inline-formula id="inf101">
<mml:math id="m122">
<mml:mrow>
<mml:msub>
<mml:mi>&#x3c9;</mml:mi>
<mml:mi mathvariant="normal">o</mml:mi>
</mml:msub>
<mml:mo>&#x3d;</mml:mo>
<mml:mn>400</mml:mn>
</mml:mrow>
</mml:math>
</inline-formula>, <inline-formula id="inf102">
<mml:math id="m123">
<mml:mrow>
<mml:msub>
<mml:mi>k</mml:mi>
<mml:mi>p</mml:mi>
</mml:msub>
<mml:mo>&#x3d;</mml:mo>
<mml:mn>100</mml:mn>
</mml:mrow>
</mml:math>
</inline-formula>, <bold>(b)</bold> <inline-formula id="inf103">
<mml:math id="m124">
<mml:mrow>
<mml:msub>
<mml:mi>k</mml:mi>
<mml:mrow>
<mml:mi>r</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>m</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mo>&#x3d;</mml:mo>
<mml:mn>1</mml:mn>
</mml:mrow>
</mml:math>
</inline-formula>, <inline-formula id="inf104">
<mml:math id="m125">
<mml:mrow>
<mml:msub>
<mml:mi>k</mml:mi>
<mml:mi>p</mml:mi>
</mml:msub>
<mml:mo>&#x3d;</mml:mo>
<mml:mn>100</mml:mn>
</mml:mrow>
</mml:math>
</inline-formula>.</p>
</caption>
<graphic xlink:href="fenrg-14-1731457-g007.tif">
<alt-text content-type="machine-generated">Two side-by-side logarithmic magnitude Bode plots labeled (a) and (b) compare system frequency responses. Plot (a) shows three curves for \(k_{r,m}&#x3d;0\), \(k_{r,m}&#x3d;0.5\), and \(k_{r,m}&#x3d;1\). Plot (b) shows three curves for \(\omega_o&#x3d;200\), \(\omega_o&#x3d;400\), and \(\omega_o&#x3d;600\). Magnitude in decibels is on the vertical axis and angular frequency in radians per second is on the horizontal axis. Legends identify the color and line style for each parameter setting.</alt-text>
</graphic>
</fig>
</sec>
<sec id="s4-3">
<label>4.3</label>
<title>Analysis of noise resistance performance for MRESO</title>
<p>Based on <xref ref-type="disp-formula" rid="e8">Formulas 8</xref>, <xref ref-type="disp-formula" rid="e9">9</xref>, <xref ref-type="disp-formula" rid="e12">12</xref>, <xref ref-type="disp-formula" rid="e14">14</xref>, the transfer function from measurement noise to the energy of capacitor, which is located at the output end of the battery converter, can be expressed as:<disp-formula id="e22">
<mml:math id="m126">
<mml:mrow>
<mml:msub>
<mml:mi>G</mml:mi>
<mml:mi>d</mml:mi>
</mml:msub>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="&#x7c;">
<mml:mrow>
<mml:mi>s</mml:mi>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:mo>&#x3d;</mml:mo>
<mml:mfrac>
<mml:mrow>
<mml:msub>
<mml:mi>E</mml:mi>
<mml:mtext>cb</mml:mtext>
</mml:msub>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="&#x7c;">
<mml:mrow>
<mml:mi>s</mml:mi>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
</mml:mrow>
<mml:mrow>
<mml:mi>d</mml:mi>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="&#x7c;">
<mml:mrow>
<mml:mi>s</mml:mi>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
</mml:mrow>
</mml:mfrac>
<mml:mo>&#x3d;</mml:mo>
<mml:mi>s</mml:mi>
<mml:msub>
<mml:mi>G</mml:mi>
<mml:mi>h</mml:mi>
</mml:msub>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="&#x7c;">
<mml:mrow>
<mml:mi>s</mml:mi>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:mo>&#x2212;</mml:mo>
<mml:mn>1</mml:mn>
</mml:mrow>
</mml:math>
<label>(22)</label>
</disp-formula>
</p>
<p>
<xref ref-type="fig" rid="F8">Figure 8</xref> shows the Bode plots of the system described by <xref ref-type="disp-formula" rid="e10">Formulas 10</xref>, <xref ref-type="disp-formula" rid="e22">22</xref> under the conditions of three EIS detection frequencies (30 Hz, 50 Hz, and 100 Hz). The corresponding parameter in <xref ref-type="fig" rid="F8">Figure 8a</xref> is set as: <inline-formula id="inf105">
<mml:math id="m127">
<mml:mrow>
<mml:msub>
<mml:mi>&#x3c9;</mml:mi>
<mml:mi mathvariant="normal">o</mml:mi>
</mml:msub>
<mml:mo>&#x3d;</mml:mo>
<mml:mn>400</mml:mn>
</mml:mrow>
</mml:math>
</inline-formula> and <inline-formula id="inf106">
<mml:math id="m128">
<mml:mrow>
<mml:msub>
<mml:mi>k</mml:mi>
<mml:mi>p</mml:mi>
</mml:msub>
<mml:mo>&#x3d;</mml:mo>
<mml:mn>100</mml:mn>
</mml:mrow>
</mml:math>
</inline-formula>, and the corresponding parameter in <xref ref-type="fig" rid="F8">Figure 8b</xref> is set as: <inline-formula id="inf107">
<mml:math id="m129">
<mml:mrow>
<mml:msub>
<mml:mi>k</mml:mi>
<mml:mrow>
<mml:mi>r</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>m</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mo>&#x3d;</mml:mo>
<mml:mn>1</mml:mn>
</mml:mrow>
</mml:math>
</inline-formula> and <inline-formula id="inf108">
<mml:math id="m130">
<mml:mrow>
<mml:msub>
<mml:mi>k</mml:mi>
<mml:mi>p</mml:mi>
</mml:msub>
<mml:mo>&#x3d;</mml:mo>
<mml:mn>100</mml:mn>
</mml:mrow>
</mml:math>
</inline-formula>. The analysis results show that in the low-frequency range, the noise resistance performance of MRESO is relatively close to that of traditional ESO. However, as the frequency increases to the medium and high frequency bands, boosting the resonant gain <inline-formula id="inf109">
<mml:math id="m131">
<mml:mrow>
<mml:msub>
<mml:mi>k</mml:mi>
<mml:mrow>
<mml:mi>r</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>m</mml:mi>
</mml:mrow>
</mml:msub>
</mml:mrow>
</mml:math>
</inline-formula> or enhancing the observer bandwidth <inline-formula id="inf110">
<mml:math id="m132">
<mml:mrow>
<mml:msub>
<mml:mi>&#x3c9;</mml:mi>
<mml:mi mathvariant="normal">o</mml:mi>
</mml:msub>
</mml:mrow>
</mml:math>
</inline-formula> will lead to a decrease in the noise resistance performance of the system. It is worth noting that after the multi-resonance unit is embedded, the noise resistance performance of the system in the area near the EIS characteristic frequency exhibits a certain degree of improvement, although the improvement effect is not significant.</p>
<fig id="F8" position="float">
<label>FIGURE 8</label>
<caption>
<p>Bode plots of transfer function <inline-formula id="inf111">
<mml:math id="m133">
<mml:mrow>
<mml:msub>
<mml:mi>G</mml:mi>
<mml:mi>d</mml:mi>
</mml:msub>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="&#x7c;">
<mml:mrow>
<mml:mi>s</mml:mi>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
</mml:mrow>
</mml:math>
</inline-formula> at frequencies <inline-formula id="inf112">
<mml:math id="m134">
<mml:mrow>
<mml:msub>
<mml:mi>&#x3c9;</mml:mi>
<mml:mrow>
<mml:mi>r</mml:mi>
<mml:mo>,</mml:mo>
<mml:mn>1</mml:mn>
</mml:mrow>
</mml:msub>
<mml:mo>&#x3d;</mml:mo>
<mml:mn>30</mml:mn>
<mml:mtext> Hz</mml:mtext>
<mml:mo>,</mml:mo>
<mml:msub>
<mml:mi>&#x3c9;</mml:mi>
<mml:mrow>
<mml:mi>r</mml:mi>
<mml:mo>,</mml:mo>
<mml:mn>2</mml:mn>
</mml:mrow>
</mml:msub>
<mml:mo>&#x3d;</mml:mo>
<mml:mn>50</mml:mn>
<mml:mtext> Hz</mml:mtext>
<mml:mo>,</mml:mo>
<mml:msub>
<mml:mi>&#x3c9;</mml:mi>
<mml:mrow>
<mml:mi>r</mml:mi>
<mml:mo>,</mml:mo>
<mml:mn>3</mml:mn>
</mml:mrow>
</mml:msub>
<mml:mo>&#x3d;</mml:mo>
<mml:mn>100</mml:mn>
<mml:mtext> Hz</mml:mtext>
</mml:mrow>
</mml:math>
</inline-formula>, <bold>(a)</bold> <inline-formula id="inf113">
<mml:math id="m135">
<mml:mrow>
<mml:msub>
<mml:mi>&#x3c9;</mml:mi>
<mml:mi mathvariant="normal">o</mml:mi>
</mml:msub>
<mml:mo>&#x3d;</mml:mo>
<mml:mn>400</mml:mn>
</mml:mrow>
</mml:math>
</inline-formula>, <inline-formula id="inf114">
<mml:math id="m136">
<mml:mrow>
<mml:msub>
<mml:mi>k</mml:mi>
<mml:mi>p</mml:mi>
</mml:msub>
<mml:mo>&#x3d;</mml:mo>
<mml:mn>100</mml:mn>
</mml:mrow>
</mml:math>
</inline-formula>, <bold>(b)</bold> <inline-formula id="inf115">
<mml:math id="m137">
<mml:mrow>
<mml:msub>
<mml:mi>k</mml:mi>
<mml:mrow>
<mml:mi>r</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>m</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mo>&#x3d;</mml:mo>
<mml:mn>1</mml:mn>
</mml:mrow>
</mml:math>
</inline-formula>, <inline-formula id="inf116">
<mml:math id="m138">
<mml:mrow>
<mml:msub>
<mml:mi>k</mml:mi>
<mml:mi>p</mml:mi>
</mml:msub>
<mml:mo>&#x3d;</mml:mo>
<mml:mn>100</mml:mn>
</mml:mrow>
</mml:math>
</inline-formula>.</p>
</caption>
<graphic xlink:href="fenrg-14-1731457-g008.tif">
<alt-text content-type="machine-generated">Two side-by-side Bode magnitude plots display mag in decibels versus angular frequency in radians per second on a logarithmic scale. Plot (a) compares three transfer functions with varying k_r,m values: zero (dashed orange), 0.5 (solid blue), and one (green dash-dot). Plot (b) compares three transfer functions with different &#x3C9;_o values: 200 (dashed orange), 400 (solid blue), and 600 (green dash-dot). Both plots reveal differences in high-frequency attenuation and resonance peaks based on parameter changes.</alt-text>
</graphic>
</fig>
</sec>
<sec id="s4-4">
<label>4.4</label>
<title>Analysis of observer stability for MRESO</title>
<p>The voltage control system of the lithium battery includes inner loop current control and outer loop voltage control. As shown in <xref ref-type="disp-formula" rid="e23">Formula 23</xref>, the inner-loop current control is modeled as a first-order inertial link:<disp-formula id="e23">
<mml:math id="m139">
<mml:mrow>
<mml:mfrac>
<mml:mrow>
<mml:msub>
<mml:mi>i</mml:mi>
<mml:mrow>
<mml:mi>L</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>b</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="&#x7c;">
<mml:mrow>
<mml:mi>s</mml:mi>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
</mml:mrow>
<mml:mrow>
<mml:msub>
<mml:mi>I</mml:mi>
<mml:mrow>
<mml:mi>L</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>b</mml:mi>
<mml:mo>_</mml:mo>
<mml:mtext>ref</mml:mtext>
</mml:mrow>
</mml:msub>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="&#x7c;">
<mml:mrow>
<mml:mi>s</mml:mi>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
</mml:mrow>
</mml:mfrac>
<mml:mo>&#x3d;</mml:mo>
<mml:mfrac>
<mml:mn>1</mml:mn>
<mml:mrow>
<mml:msub>
<mml:mi>T</mml:mi>
<mml:mrow>
<mml:mi>c</mml:mi>
<mml:mi>i</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mi>s</mml:mi>
<mml:mo>&#x2b;</mml:mo>
<mml:mn>1</mml:mn>
</mml:mrow>
</mml:mfrac>
</mml:mrow>
</mml:math>
<label>(23)</label>
</disp-formula>where <inline-formula id="inf117">
<mml:math id="m140">
<mml:mrow>
<mml:msub>
<mml:mi>T</mml:mi>
<mml:mrow>
<mml:mi>c</mml:mi>
<mml:mi>i</mml:mi>
</mml:mrow>
</mml:msub>
</mml:mrow>
</mml:math>
</inline-formula> is the time constant of the inner loop control, which is generally used to evaluate the performance of the current controller. The voltage control of the outer loop is designed based on MRESO-ADRC. The stability of the closed-loop control system constructed can be analyzed by its characteristic polynomial, that is, <xref ref-type="disp-formula" rid="e24">Formula 24</xref>.<disp-formula id="e24">
<mml:math id="m141">
<mml:mrow>
<mml:msub>
<mml:mi>T</mml:mi>
<mml:mrow>
<mml:mi>c</mml:mi>
<mml:mi>i</mml:mi>
</mml:mrow>
</mml:msub>
<mml:msup>
<mml:mi>s</mml:mi>
<mml:mn>3</mml:mn>
</mml:msup>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="&#x7c;">
<mml:mrow>
<mml:mi>s</mml:mi>
<mml:mo>&#x2b;</mml:mo>
<mml:msub>
<mml:mi>&#x3b2;</mml:mi>
<mml:mn>1</mml:mn>
</mml:msub>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:mo>&#x2b;</mml:mo>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="&#x7c;">
<mml:mrow>
<mml:mi>s</mml:mi>
<mml:mo>&#x2b;</mml:mo>
<mml:msub>
<mml:mi>k</mml:mi>
<mml:mi>p</mml:mi>
</mml:msub>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:mtext> </mml:mtext>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="&#x7c;">
<mml:mrow>
<mml:msup>
<mml:mi>s</mml:mi>
<mml:mn>2</mml:mn>
</mml:msup>
<mml:mo>&#x2b;</mml:mo>
<mml:msub>
<mml:mi>&#x3b2;</mml:mi>
<mml:mn>1</mml:mn>
</mml:msub>
<mml:mi>s</mml:mi>
<mml:mo>&#x2b;</mml:mo>
<mml:msub>
<mml:mi>&#x3b2;</mml:mi>
<mml:mn>2</mml:mn>
</mml:msub>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="&#x7c;">
<mml:mrow>
<mml:mn>1</mml:mn>
<mml:mo>&#x2b;</mml:mo>
<mml:mi>s</mml:mi>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="&#x7c;">
<mml:mrow>
<mml:mstyle displaystyle="true">
<mml:munderover>
<mml:mo>&#x2211;</mml:mo>
<mml:mrow>
<mml:mi>m</mml:mi>
<mml:mo>&#x3d;</mml:mo>
<mml:mn>1</mml:mn>
</mml:mrow>
<mml:mn>3</mml:mn>
</mml:munderover>
</mml:mstyle>
<mml:mrow>
<mml:msub>
<mml:mi>G</mml:mi>
<mml:mrow>
<mml:mi mathvariant="italic">PR</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>m</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="&#x7c;">
<mml:mrow>
<mml:mi>s</mml:mi>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
</mml:mrow>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
</mml:mrow>
</mml:math>
<label>(24)</label>
</disp-formula>
</p>
<p>To simplify the evaluation process of <inline-formula id="inf118">
<mml:math id="m142">
<mml:mrow>
<mml:msub>
<mml:mi>k</mml:mi>
<mml:mrow>
<mml:mi>r</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>m</mml:mi>
</mml:mrow>
</mml:msub>
</mml:mrow>
</mml:math>
</inline-formula>, a step-by-step design method is adopted. <inline-formula id="inf119">
<mml:math id="m143">
<mml:mrow>
<mml:msub>
<mml:mi>k</mml:mi>
<mml:mrow>
<mml:mi>r</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>i</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="&#x7c;">
<mml:mrow>
<mml:mi>i</mml:mi>
<mml:mo>&#x3d;</mml:mo>
<mml:mn>1</mml:mn>
<mml:mo>,</mml:mo>
<mml:mn>2</mml:mn>
<mml:mo>,</mml:mo>
<mml:mn>3</mml:mn>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
</mml:mrow>
</mml:math>
</inline-formula> is designed as one of the resonators separately and <inline-formula id="inf120">
<mml:math id="m144">
<mml:mrow>
<mml:msub>
<mml:mi>k</mml:mi>
<mml:mrow>
<mml:mi>r</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>m</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="&#x7c;">
<mml:mrow>
<mml:mi>m</mml:mi>
<mml:mo>&#x2260;</mml:mo>
<mml:mi>i</mml:mi>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:mo>&#x3d;</mml:mo>
<mml:mn>0</mml:mn>
</mml:mrow>
</mml:math>
</inline-formula> is fixed for the other two. The critical resonance gain <inline-formula id="inf121">
<mml:math id="m145">
<mml:mrow>
<mml:msubsup>
<mml:mi>k</mml:mi>
<mml:mrow>
<mml:mi>r</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>m</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>c</mml:mi>
<mml:mi>i</mml:mi>
<mml:mi>r</mml:mi>
<mml:mi>t</mml:mi>
</mml:mrow>
</mml:msubsup>
</mml:mrow>
</mml:math>
</inline-formula> is determined corresponding to each scanning frequency, and finally take <inline-formula id="inf122">
<mml:math id="m146">
<mml:mrow>
<mml:msub>
<mml:mi>k</mml:mi>
<mml:mrow>
<mml:mi>r</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>m</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mo>&#x3d;</mml:mo>
<mml:msub>
<mml:mi mathvariant="normal">k</mml:mi>
<mml:mi>r</mml:mi>
</mml:msub>
<mml:mo>&#x3d;</mml:mo>
<mml:mi>min</mml:mi>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="&#x7c;">
<mml:mrow>
<mml:msub>
<mml:mi>&#x3b1;</mml:mi>
<mml:mn>1</mml:mn>
</mml:msub>
<mml:msubsup>
<mml:mi>k</mml:mi>
<mml:mrow>
<mml:mi>r</mml:mi>
<mml:mo>,</mml:mo>
<mml:mn>1</mml:mn>
</mml:mrow>
<mml:mrow>
<mml:mi>c</mml:mi>
<mml:mi>i</mml:mi>
<mml:mi>r</mml:mi>
<mml:mi>t</mml:mi>
</mml:mrow>
</mml:msubsup>
<mml:mo>,</mml:mo>
<mml:msub>
<mml:mi>&#x3b1;</mml:mi>
<mml:mn>2</mml:mn>
</mml:msub>
<mml:msubsup>
<mml:mi>k</mml:mi>
<mml:mrow>
<mml:mi>r</mml:mi>
<mml:mo>,</mml:mo>
<mml:mn>2</mml:mn>
</mml:mrow>
<mml:mrow>
<mml:mi>c</mml:mi>
<mml:mi>i</mml:mi>
<mml:mi>r</mml:mi>
<mml:mi>t</mml:mi>
</mml:mrow>
</mml:msubsup>
<mml:mo>,</mml:mo>
<mml:msub>
<mml:mi>&#x3b1;</mml:mi>
<mml:mn>3</mml:mn>
</mml:msub>
<mml:msubsup>
<mml:mi>k</mml:mi>
<mml:mrow>
<mml:mi>r</mml:mi>
<mml:mo>,</mml:mo>
<mml:mn>3</mml:mn>
</mml:mrow>
<mml:mrow>
<mml:mi>c</mml:mi>
<mml:mi>i</mml:mi>
<mml:mi>r</mml:mi>
<mml:mi>t</mml:mi>
</mml:mrow>
</mml:msubsup>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
</mml:mrow>
</mml:math>
</inline-formula>, where <inline-formula id="inf123">
<mml:math id="m147">
<mml:mrow>
<mml:msub>
<mml:mi>&#x3b1;</mml:mi>
<mml:mi>m</mml:mi>
</mml:msub>
<mml:mo>&#x3d;</mml:mo>
<mml:mn>0.3</mml:mn>
<mml:mo>&#x223c;</mml:mo>
<mml:mn>0.7</mml:mn>
</mml:mrow>
</mml:math>
</inline-formula> is taken as the safety factor. Based on this, the equivalent open-loop transfer function with unit negative feedback is derived as shown in <xref ref-type="disp-formula" rid="e25">Formula 25</xref>:<disp-formula id="e25">
<mml:math id="m148">
<mml:mrow>
<mml:msub>
<mml:mi>G</mml:mi>
<mml:mi>k</mml:mi>
</mml:msub>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="&#x7c;">
<mml:mrow>
<mml:mi>s</mml:mi>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:mo>&#x3d;</mml:mo>
<mml:msub>
<mml:mi>k</mml:mi>
<mml:mrow>
<mml:mi>r</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>i</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mfrac>
<mml:mrow>
<mml:mn>2</mml:mn>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="&#x7c;">
<mml:mrow>
<mml:mi>s</mml:mi>
<mml:mo>&#x2b;</mml:mo>
<mml:msub>
<mml:mi>k</mml:mi>
<mml:mi>p</mml:mi>
</mml:msub>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:msub>
<mml:mi>&#x3c9;</mml:mi>
<mml:mrow>
<mml:mi>c</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>i</mml:mi>
</mml:mrow>
</mml:msub>
<mml:msub>
<mml:mi>&#x3b2;</mml:mi>
<mml:mn>2</mml:mn>
</mml:msub>
<mml:msup>
<mml:mi>s</mml:mi>
<mml:mn>2</mml:mn>
</mml:msup>
</mml:mrow>
<mml:mrow>
<mml:msub>
<mml:mi>T</mml:mi>
<mml:mrow>
<mml:mi>c</mml:mi>
<mml:mi>i</mml:mi>
</mml:mrow>
</mml:msub>
<mml:msup>
<mml:mi>s</mml:mi>
<mml:mn>3</mml:mn>
</mml:msup>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="&#x7c;">
<mml:mrow>
<mml:mi>s</mml:mi>
<mml:mo>&#x2b;</mml:mo>
<mml:msub>
<mml:mi>&#x3b2;</mml:mi>
<mml:mn>1</mml:mn>
</mml:msub>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:mtext> </mml:mtext>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="&#x7c;">
<mml:mrow>
<mml:msup>
<mml:mi>s</mml:mi>
<mml:mn>2</mml:mn>
</mml:msup>
<mml:mo>&#x2b;</mml:mo>
<mml:mn>2</mml:mn>
<mml:msub>
<mml:mi>&#x3c9;</mml:mi>
<mml:mrow>
<mml:mi>c</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>i</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mi>s</mml:mi>
<mml:mo>&#x2b;</mml:mo>
<mml:msubsup>
<mml:mi>&#x3c9;</mml:mi>
<mml:mrow>
<mml:mi>r</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>i</mml:mi>
</mml:mrow>
<mml:mn>2</mml:mn>
</mml:msubsup>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:mo>&#x2b;</mml:mo>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="&#x7c;">
<mml:mrow>
<mml:mi>s</mml:mi>
<mml:mo>&#x2b;</mml:mo>
<mml:msub>
<mml:mi>k</mml:mi>
<mml:mi>p</mml:mi>
</mml:msub>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:mtext> </mml:mtext>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="&#x7c;">
<mml:mrow>
<mml:msup>
<mml:mi>s</mml:mi>
<mml:mn>2</mml:mn>
</mml:msup>
<mml:mo>&#x2b;</mml:mo>
<mml:msub>
<mml:mi>&#x3b2;</mml:mi>
<mml:mn>1</mml:mn>
</mml:msub>
<mml:mi>s</mml:mi>
<mml:mo>&#x2b;</mml:mo>
<mml:msub>
<mml:mi>&#x3b2;</mml:mi>
<mml:mn>2</mml:mn>
</mml:msub>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:mtext> </mml:mtext>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="&#x7c;">
<mml:mrow>
<mml:msup>
<mml:mi>s</mml:mi>
<mml:mn>2</mml:mn>
</mml:msup>
<mml:mo>&#x2b;</mml:mo>
<mml:mn>2</mml:mn>
<mml:msub>
<mml:mi>&#x3c9;</mml:mi>
<mml:mrow>
<mml:mi>c</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>i</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mi>s</mml:mi>
<mml:mo>&#x2b;</mml:mo>
<mml:msubsup>
<mml:mi>&#x3c9;</mml:mi>
<mml:mrow>
<mml:mi>r</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>i</mml:mi>
</mml:mrow>
<mml:mn>2</mml:mn>
</mml:msubsup>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
</mml:mrow>
</mml:mfrac>
</mml:mrow>
</mml:math>
<label>(25)</label>
</disp-formula>
</p>
<p>Based on the generalized root locus method, the critical stability value of the resonant gain <inline-formula id="inf124">
<mml:math id="m149">
<mml:mrow>
<mml:msub>
<mml:mi>k</mml:mi>
<mml:mrow>
<mml:mi>r</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>i</mml:mi>
</mml:mrow>
</mml:msub>
</mml:mrow>
</mml:math>
</inline-formula> for different EIS frequencies and observer bandwidths can be obtained, as shown in <xref ref-type="fig" rid="F9">Figure 9</xref>. <xref ref-type="fig" rid="F9">Figure 9a</xref> corresponds to parameter <inline-formula id="inf125">
<mml:math id="m150">
<mml:mrow>
<mml:msub>
<mml:mi>k</mml:mi>
<mml:mi>p</mml:mi>
</mml:msub>
<mml:mo>&#x3d;</mml:mo>
<mml:mn>100</mml:mn>
</mml:mrow>
</mml:math>
</inline-formula> and <inline-formula id="inf126">
<mml:math id="m151">
<mml:mrow>
<mml:msub>
<mml:mi>T</mml:mi>
<mml:mrow>
<mml:mi>c</mml:mi>
<mml:mi>i</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mo>&#x3d;</mml:mo>
<mml:mn>0.01</mml:mn>
<mml:mtext> </mml:mtext>
<mml:mi>m</mml:mi>
<mml:mi>s</mml:mi>
</mml:mrow>
</mml:math>
</inline-formula>, while <xref ref-type="fig" rid="F9">Figure 9b</xref> corresponds to parameter <inline-formula id="inf127">
<mml:math id="m152">
<mml:mrow>
<mml:msub>
<mml:mi>k</mml:mi>
<mml:mi>p</mml:mi>
</mml:msub>
<mml:mo>&#x3d;</mml:mo>
<mml:mn>100</mml:mn>
</mml:mrow>
</mml:math>
</inline-formula> and <inline-formula id="inf128">
<mml:math id="m153">
<mml:mrow>
<mml:msub>
<mml:mi>T</mml:mi>
<mml:mrow>
<mml:mi>c</mml:mi>
<mml:mi>i</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mo>&#x3d;</mml:mo>
<mml:mn>0.05</mml:mn>
<mml:mtext> </mml:mtext>
<mml:mi>m</mml:mi>
<mml:mi>s</mml:mi>
</mml:mrow>
</mml:math>
</inline-formula>. The results show that in the low-frequency region, the critical stability value of <inline-formula id="inf129">
<mml:math id="m154">
<mml:mrow>
<mml:msub>
<mml:mi>k</mml:mi>
<mml:mrow>
<mml:mi>r</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>i</mml:mi>
</mml:mrow>
</mml:msub>
</mml:mrow>
</mml:math>
</inline-formula> is significantly affected by the observer bandwidth <inline-formula id="inf130">
<mml:math id="m155">
<mml:mrow>
<mml:msub>
<mml:mi>&#x3c9;</mml:mi>
<mml:mi mathvariant="normal">o</mml:mi>
</mml:msub>
</mml:mrow>
</mml:math>
</inline-formula>. As the EIS frequency <inline-formula id="inf131">
<mml:math id="m156">
<mml:mrow>
<mml:msub>
<mml:mi>&#x3c9;</mml:mi>
<mml:mrow>
<mml:mi>r</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>i</mml:mi>
</mml:mrow>
</mml:msub>
</mml:mrow>
</mml:math>
</inline-formula> increases, the influence of the observer bandwidth gradually decreases. Meanwhile, the EIS frequency itself also has an important influence on the stability boundary of the resonant gain. The comparisons between <xref ref-type="fig" rid="F9">Figures 9a,b</xref> shows that reducing the current inner loop time constant <inline-formula id="inf132">
<mml:math id="m157">
<mml:mrow>
<mml:msub>
<mml:mi>T</mml:mi>
<mml:mrow>
<mml:mi>c</mml:mi>
<mml:mi>i</mml:mi>
</mml:mrow>
</mml:msub>
</mml:mrow>
</mml:math>
</inline-formula> or lowering the observer bandwidth <inline-formula id="inf133">
<mml:math id="m158">
<mml:mrow>
<mml:msub>
<mml:mi>&#x3c9;</mml:mi>
<mml:mi mathvariant="normal">o</mml:mi>
</mml:msub>
</mml:mrow>
</mml:math>
</inline-formula> can help improve the critical stability value of <inline-formula id="inf134">
<mml:math id="m159">
<mml:mrow>
<mml:msub>
<mml:mi>k</mml:mi>
<mml:mrow>
<mml:mi>r</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>i</mml:mi>
</mml:mrow>
</mml:msub>
</mml:mrow>
</mml:math>
</inline-formula>. Therefore, in actual control system design, it is necessary to reasonably select the resonant gain based on the specific EIS detection frequency to ensure stable system operation.</p>
<fig id="F9" position="float">
<label>FIGURE 9</label>
<caption>
<p>Variation of the critical stability value of the resonant gain <inline-formula id="inf135">
<mml:math id="m160">
<mml:mrow>
<mml:msub>
<mml:mi>k</mml:mi>
<mml:mrow>
<mml:mi>r</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>i</mml:mi>
</mml:mrow>
</mml:msub>
</mml:mrow>
</mml:math>
</inline-formula> with <inline-formula id="inf136">
<mml:math id="m161">
<mml:mrow>
<mml:msub>
<mml:mi>&#x3c9;</mml:mi>
<mml:mrow>
<mml:mi>r</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>i</mml:mi>
</mml:mrow>
</mml:msub>
</mml:mrow>
</mml:math>
</inline-formula> and <inline-formula id="inf137">
<mml:math id="m162">
<mml:mrow>
<mml:msub>
<mml:mi>&#x3c9;</mml:mi>
<mml:mi mathvariant="normal">o</mml:mi>
</mml:msub>
</mml:mrow>
</mml:math>
</inline-formula>, <bold>(a)</bold> <inline-formula id="inf138">
<mml:math id="m163">
<mml:mrow>
<mml:msub>
<mml:mi>T</mml:mi>
<mml:mrow>
<mml:mi>c</mml:mi>
<mml:mi>i</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mo>&#x3d;</mml:mo>
<mml:mn>0.01</mml:mn>
<mml:mtext> </mml:mtext>
<mml:mi>m</mml:mi>
<mml:mi>s</mml:mi>
</mml:mrow>
</mml:math>
</inline-formula>, <bold>(b)</bold> <inline-formula id="inf139">
<mml:math id="m164">
<mml:mrow>
<mml:msub>
<mml:mi>T</mml:mi>
<mml:mrow>
<mml:mi>c</mml:mi>
<mml:mi>i</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mo>&#x3d;</mml:mo>
<mml:mn>0.05</mml:mn>
<mml:mtext> </mml:mtext>
<mml:mi>m</mml:mi>
<mml:mi>s</mml:mi>
</mml:mrow>
</mml:math>
</inline-formula>.</p>
</caption>
<graphic xlink:href="fenrg-14-1731457-g009.tif">
<alt-text content-type="machine-generated">Two 3D surface plots display the relationship between kr,i, &#x3C9;r,i (in hertz), and &#x3C9;o (in radians per second) for different values of Tci. Plot (a) on the left corresponds to Tci equals zero point zero one milliseconds, and plot (b) on the right corresponds to Tci equals zero point zero five milliseconds. Both plots use a color gradient from yellow to purple to represent increasing kr,i values, with the highest values occurring at the lowest &#x3C9;r,i and &#x3C9;o values.</alt-text>
</graphic>
</fig>
</sec>
</sec>
<sec sec-type="results|discussion" id="s5">
<label>5</label>
<title>Results and discussion</title>
<sec id="s5-1">
<label>5.1</label>
<title>Model parameters</title>
<p>The effectiveness of the proposed MRESO was verified in the MATLAB/Simulink simulation environment. During actual operation, fuel cells usually undergo three polarization processes: activation polarization, ohmic polarization, and concentration polarization, and have the characteristics of small ohmic resistance and large interfacial double-layer capacitance. The equivalent impedance of the fuel cell is modeled using the Randles model (<xref ref-type="bibr" rid="B16">Harel et al., 2025</xref>), and its structure is shown in <xref ref-type="fig" rid="F10">Figure 10</xref>, where <inline-formula id="inf140">
<mml:math id="m165">
<mml:mrow>
<mml:msub>
<mml:mi>R</mml:mi>
<mml:mi mathvariant="normal">m</mml:mi>
</mml:msub>
</mml:mrow>
</mml:math>
</inline-formula> represents the internal membrane resistance, <inline-formula id="inf141">
<mml:math id="m166">
<mml:mrow>
<mml:msub>
<mml:mi>R</mml:mi>
<mml:mi mathvariant="normal">p</mml:mi>
</mml:msub>
</mml:mrow>
</mml:math>
</inline-formula> represents the polarization impedance, and <inline-formula id="inf142">
<mml:math id="m167">
<mml:mrow>
<mml:msub>
<mml:mi>C</mml:mi>
<mml:mtext>dl</mml:mtext>
</mml:msub>
</mml:mrow>
</mml:math>
</inline-formula> represents the double-layer capacitance at the electrolyte interface. The specific circuit parameters of the MSFC hybrid system are shown in <xref ref-type="table" rid="T1">Table 1</xref>. In the MSFC system, the rated voltage of each PEMFC is 24 V. However, due to the existence of equivalent impedance, the actual terminal voltage is usually lower than the rated value. The output voltage of the MSFC system is increased to 48 V by the Boost circuit. The rated voltage of the lithium battery is 24 V, and it is connected to the load side through a bidirectional Buck-Boost converter. The DC bus voltage is set to 48 V, the load impedance is 8&#x3a9;, and the switching frequency is set to 50 kHz.</p>
<fig id="F10" position="float">
<label>FIGURE 10</label>
<caption>
<p>Classic Randles circuit model.</p>
</caption>
<graphic xlink:href="fenrg-14-1731457-g010.tif">
<alt-text content-type="machine-generated">Electrical circuit diagram showing a voltage source connected in series to a resistor labeled R sub m, followed by a parallel network of a capacitor labeled C sub d l and a resistor labeled R sub p.</alt-text>
</graphic>
</fig>
<table-wrap id="T1" position="float">
<label>TABLE 1</label>
<caption>
<p>Circuit parameters of MSFC hybrid system.</p>
</caption>
<table>
<thead valign="top">
<tr>
<th align="center">Module</th>
<th align="center">Item</th>
<th align="center">Variable</th>
<th align="center">Value</th>
</tr>
</thead>
<tbody valign="top">
<tr>
<td rowspan="6" align="center">Multi-stack fuel cell</td>
<td align="center">FC voltage</td>
<td align="center">
<inline-formula id="inf143">
<mml:math id="m168">
<mml:mrow>
<mml:msub>
<mml:mi>v</mml:mi>
<mml:mrow>
<mml:mtext>fc</mml:mtext>
<mml:mo>,</mml:mo>
<mml:mi mathvariant="normal">m</mml:mi>
</mml:mrow>
</mml:msub>
</mml:mrow>
</mml:math>
</inline-formula>
</td>
<td align="center">24 V</td>
</tr>
<tr>
<td align="center">FC inductor</td>
<td align="center">
<inline-formula id="inf144">
<mml:math id="m169">
<mml:mrow>
<mml:msub>
<mml:mi>L</mml:mi>
<mml:mrow>
<mml:mtext>fc</mml:mtext>
<mml:mo>,</mml:mo>
<mml:mi mathvariant="normal">m</mml:mi>
</mml:mrow>
</mml:msub>
</mml:mrow>
</mml:math>
</inline-formula>
</td>
<td align="center">
<inline-formula id="inf145">
<mml:math id="m170">
<mml:mrow>
<mml:mn>800</mml:mn>
<mml:mtext> </mml:mtext>
<mml:mi>&#x3bc;</mml:mi>
<mml:mi mathvariant="normal">H</mml:mi>
</mml:mrow>
</mml:math>
</inline-formula>
</td>
</tr>
<tr>
<td align="center">FC capacitor</td>
<td align="center">
<inline-formula id="inf146">
<mml:math id="m171">
<mml:mrow>
<mml:msub>
<mml:mi>C</mml:mi>
<mml:mrow>
<mml:mtext>fc</mml:mtext>
<mml:mo>,</mml:mo>
<mml:mi mathvariant="normal">m</mml:mi>
</mml:mrow>
</mml:msub>
</mml:mrow>
</mml:math>
</inline-formula>
</td>
<td align="center">
<inline-formula id="inf147">
<mml:math id="m172">
<mml:mrow>
<mml:mn>880</mml:mn>
<mml:mtext> </mml:mtext>
<mml:mi>&#x3bc;</mml:mi>
<mml:mi mathvariant="normal">F</mml:mi>
</mml:mrow>
</mml:math>
</inline-formula>
</td>
</tr>
<tr>
<td align="center">Membrane resistance</td>
<td align="center">
<inline-formula id="inf148">
<mml:math id="m173">
<mml:mrow>
<mml:msub>
<mml:mi>R</mml:mi>
<mml:mrow>
<mml:mi mathvariant="normal">m</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi mathvariant="normal">m</mml:mi>
</mml:mrow>
</mml:msub>
</mml:mrow>
</mml:math>
</inline-formula>
</td>
<td align="center">0.15 &#x3a9;</td>
</tr>
<tr>
<td align="center">Polarization resistance</td>
<td align="center">
<inline-formula id="inf149">
<mml:math id="m174">
<mml:mrow>
<mml:msub>
<mml:mi>R</mml:mi>
<mml:mrow>
<mml:mi mathvariant="normal">p</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi mathvariant="normal">m</mml:mi>
</mml:mrow>
</mml:msub>
</mml:mrow>
</mml:math>
</inline-formula>
</td>
<td align="center">0.1 &#x3a9;</td>
</tr>
<tr>
<td align="center">Interface double-layer capacitance</td>
<td align="center">
<inline-formula id="inf150">
<mml:math id="m175">
<mml:mrow>
<mml:msub>
<mml:mi>C</mml:mi>
<mml:mrow>
<mml:mtext>dl</mml:mtext>
<mml:mo>,</mml:mo>
<mml:mi mathvariant="normal">m</mml:mi>
</mml:mrow>
</mml:msub>
</mml:mrow>
</mml:math>
</inline-formula>
</td>
<td align="center">0.02 F</td>
</tr>
<tr>
<td rowspan="3" align="center">Lithium ion battery</td>
<td align="center">Battery voltage</td>
<td align="center">
<inline-formula id="inf151">
<mml:math id="m176">
<mml:mrow>
<mml:msub>
<mml:mi>v</mml:mi>
<mml:mi mathvariant="normal">b</mml:mi>
</mml:msub>
</mml:mrow>
</mml:math>
</inline-formula>
</td>
<td align="center">24 V</td>
</tr>
<tr>
<td align="center">Battery inductor</td>
<td align="center">
<inline-formula id="inf152">
<mml:math id="m177">
<mml:mrow>
<mml:msub>
<mml:mi>L</mml:mi>
<mml:mi mathvariant="normal">b</mml:mi>
</mml:msub>
</mml:mrow>
</mml:math>
</inline-formula>
</td>
<td align="center">
<inline-formula id="inf153">
<mml:math id="m178">
<mml:mrow>
<mml:mn>800</mml:mn>
<mml:mtext> </mml:mtext>
<mml:mi>&#x3bc;</mml:mi>
<mml:mi mathvariant="normal">H</mml:mi>
</mml:mrow>
</mml:math>
</inline-formula>
</td>
</tr>
<tr>
<td align="center">Battery capacitor</td>
<td align="center">
<inline-formula id="inf154">
<mml:math id="m179">
<mml:mrow>
<mml:msub>
<mml:mi>C</mml:mi>
<mml:mi mathvariant="normal">b</mml:mi>
</mml:msub>
</mml:mrow>
</mml:math>
</inline-formula>
</td>
<td align="center">
<inline-formula id="inf155">
<mml:math id="m180">
<mml:mrow>
<mml:mn>880</mml:mn>
<mml:mtext> </mml:mtext>
<mml:mi>&#x3bc;</mml:mi>
<mml:mi mathvariant="normal">F</mml:mi>
</mml:mrow>
</mml:math>
</inline-formula>
</td>
</tr>
<tr>
<td rowspan="2" align="center">Direct current bus</td>
<td align="center">Output voltage</td>
<td align="center">
<inline-formula id="inf156">
<mml:math id="m181">
<mml:mrow>
<mml:msub>
<mml:mi>v</mml:mi>
<mml:mtext>bus</mml:mtext>
</mml:msub>
</mml:mrow>
</mml:math>
</inline-formula>
</td>
<td align="center">48 V</td>
</tr>
<tr>
<td align="center">Load impedance</td>
<td align="center">
<inline-formula id="inf157">
<mml:math id="m182">
<mml:mrow>
<mml:msub>
<mml:mi>R</mml:mi>
<mml:mtext>bus</mml:mtext>
</mml:msub>
</mml:mrow>
</mml:math>
</inline-formula>
</td>
<td align="center">8 &#x3a9;</td>
</tr>
<tr>
<td align="center">Switch</td>
<td align="center">Switching frequency</td>
<td align="center">
<inline-formula id="inf158">
<mml:math id="m183">
<mml:mrow>
<mml:msub>
<mml:mi>f</mml:mi>
<mml:mi>s</mml:mi>
</mml:msub>
</mml:mrow>
</mml:math>
</inline-formula>
</td>
<td align="center">50 kHz</td>
</tr>
</tbody>
</table>
</table-wrap>
<p>In the control strategy comparison and verification, the PI controller, the traditional ESO-based active disturbance rejection controller, and the MRESO-based active disturbance rejection controller were used for performance evaluation. The parameters of the voltage loop and current loop of the PI controller are designed based on experience, where the voltage loop has a proportional coefficient of 0.01 and an integral coefficient of 50, and the current loop has a proportional coefficient of 5 and an integral coefficient of 10. Meanwhile, the voltage loop parameters of the MRESO-ADRC controller are set as follows: <inline-formula id="inf159">
<mml:math id="m184">
<mml:mrow>
<mml:msub>
<mml:mi>k</mml:mi>
<mml:mi>p</mml:mi>
</mml:msub>
<mml:mo>&#x3d;</mml:mo>
<mml:mn>100</mml:mn>
</mml:mrow>
</mml:math>
</inline-formula>, <inline-formula id="inf160">
<mml:math id="m185">
<mml:mrow>
<mml:msub>
<mml:mi>&#x3c9;</mml:mi>
<mml:mi>o</mml:mi>
</mml:msub>
<mml:mo>&#x3d;</mml:mo>
<mml:mn>400</mml:mn>
</mml:mrow>
</mml:math>
</inline-formula>, and <inline-formula id="inf161">
<mml:math id="m186">
<mml:mrow>
<mml:msub>
<mml:mi>&#x3c9;</mml:mi>
<mml:mrow>
<mml:mi>c</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>m</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mo>&#x3d;</mml:mo>
<mml:mn>2</mml:mn>
<mml:mo>%</mml:mo>
<mml:msub>
<mml:mi>&#x3c9;</mml:mi>
<mml:mrow>
<mml:mi>r</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>m</mml:mi>
</mml:mrow>
</mml:msub>
</mml:mrow>
</mml:math>
</inline-formula>, and the current loop uses PI regulation, with a proportional coefficient of 5 and an integral coefficient of 10. When the resonant gain <inline-formula id="inf162">
<mml:math id="m187">
<mml:mrow>
<mml:msub>
<mml:mi>k</mml:mi>
<mml:mrow>
<mml:mi>r</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>m</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mo>&#x3d;</mml:mo>
<mml:mn>0</mml:mn>
</mml:mrow>
</mml:math>
</inline-formula>, the MRESO structure degenerates into a traditional ESO structure. To facilitate fair comparison, other parameters of traditional ESO are kept consistent with those of MRESO.</p>
<p>
<xref ref-type="fig" rid="F11">Figure 11</xref> shows a schematic diagram of the system components with the MRESO-ADRC control scheme, displaying the Simulink model of the overall system components.</p>
<fig id="F11" position="float">
<label>FIGURE 11</label>
<caption>
<p>The component diagram of the MSFC hybrid power system.</p>
</caption>
<graphic xlink:href="fenrg-14-1731457-g011.tif">
<alt-text content-type="machine-generated">Block diagram illustrating a hybrid energy system with three fuel cell systems, a DC load, a lithium battery, a bidirectional converter, and an MRESO-ADRC controller. Each component is color-coded and labeled, with arrows showing electrical connections and signal paths.</alt-text>
</graphic>
</fig>
</sec>
<sec id="s5-2">
<label>5.2</label>
<title>Step signal test</title>
<p>The test for step disturbance of bus current is shown in <xref ref-type="fig" rid="F12">Figure 12</xref>. At 1 s, a step disturbance of 0.5 A was applied to the bus current, and the response of the bus voltage is shown in <xref ref-type="fig" rid="F12">Figure 12b</xref>. Facing step tests, MRESO-ADRC (<inline-formula id="inf163">
<mml:math id="m188">
<mml:mrow>
<mml:msub>
<mml:mi>k</mml:mi>
<mml:mrow>
<mml:mi>r</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>m</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mo>&#x3d;</mml:mo>
<mml:mn>0.24</mml:mn>
</mml:mrow>
</mml:math>
</inline-formula>) has the smallest fluctuation range, but the fluctuation time is relatively long. PI control has the fastest response speed, but the largest fluctuation range.</p>
<fig id="F12" position="float">
<label>FIGURE 12</label>
<caption>
<p>Step signal test results: <bold>(a)</bold> step signal of current, <bold>(b)</bold> voltage response.</p>
</caption>
<graphic xlink:href="fenrg-14-1731457-g012.tif">
<alt-text content-type="machine-generated">Two vertically stacked plots display current and voltage response over time. The top plot, labeled (a), shows a step current signal in red, increasing at one second and decreasing at around 1.5 seconds. The bottom plot, labeled (b), compares v_bus voltages for MRESO-ADRC, ESO-ADRC, and PI control methods, with a highlighted inset showing detail between 0.98 and 1.10 seconds.</alt-text>
</graphic>
</fig>
</sec>
<sec id="s5-3">
<label>5.3</label>
<title>Load current interference</title>
<p>
<xref ref-type="fig" rid="F13">Figures 13</xref>, <xref ref-type="fig" rid="F14">14</xref> show the simulation results of a MSFC hybrid system under load current disturbance conditions, where <inline-formula id="inf164">
<mml:math id="m189">
<mml:mrow>
<mml:msub>
<mml:mi>k</mml:mi>
<mml:mrow>
<mml:mi>r</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>m</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mo>&#x3d;</mml:mo>
<mml:mn>0.24</mml:mn>
</mml:mrow>
</mml:math>
</inline-formula>. <xref ref-type="fig" rid="F13">Figure 13</xref> shows the dynamic response after simultaneously injecting sinusoidal current disturbances with an amplitude of 0.2 A and frequencies of 30 Hz, 50 Hz, and 100 Hz into the system load at t &#x3d; 1 s. In the stage of t &#x3e; 1 s, the bus current can be expressed as: <inline-formula id="inf165">
<mml:math id="m190">
<mml:mrow>
<mml:msub>
<mml:mi>i</mml:mi>
<mml:mtext>bus</mml:mtext>
</mml:msub>
<mml:mo>&#x3d;</mml:mo>
<mml:mn>6</mml:mn>
<mml:mo>&#x2b;</mml:mo>
<mml:mn>0.2</mml:mn>
<mml:mo>&#x2061;</mml:mo>
<mml:mi>sin</mml:mi>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="&#x7c;">
<mml:mrow>
<mml:mn>60</mml:mn>
<mml:mi>&#x3c0;</mml:mi>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="&#x7c;">
<mml:mrow>
<mml:mi mathvariant="normal">t</mml:mi>
<mml:mo>&#x2212;</mml:mo>
<mml:mn>1</mml:mn>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:mo>&#x2b;</mml:mo>
<mml:mn>0.2</mml:mn>
<mml:mo>&#x2061;</mml:mo>
<mml:mi>sin</mml:mi>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="&#x7c;">
<mml:mrow>
<mml:mn>100</mml:mn>
<mml:mi>&#x3c0;</mml:mi>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="&#x7c;">
<mml:mrow>
<mml:mi mathvariant="normal">t</mml:mi>
<mml:mo>&#x2212;</mml:mo>
<mml:mn>1</mml:mn>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:mo>&#x2b;</mml:mo>
<mml:mn>0.2</mml:mn>
<mml:mo>&#x2061;</mml:mo>
<mml:mi>sin</mml:mi>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="&#x7c;">
<mml:mrow>
<mml:mn>200</mml:mn>
<mml:mi>&#x3c0;</mml:mi>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="&#x7c;">
<mml:mrow>
<mml:mi mathvariant="normal">t</mml:mi>
<mml:mo>&#x2212;</mml:mo>
<mml:mn>1</mml:mn>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
</mml:mrow>
</mml:math>
</inline-formula> A.</p>
<fig id="F13" position="float">
<label>FIGURE 13</label>
<caption>
<p>Simulation results of the MSFC hybrid system under simultaneous load current disturbances, <bold>(a)</bold> MRESO-ADRC; <bold>(b)</bold> ESO-ADRC; <bold>(c)</bold> PI control.</p>
</caption>
<graphic xlink:href="fenrg-14-1731457-g013.tif">
<alt-text content-type="machine-generated">Three pairs of graphs compare control methods MRESO-ADRC, ESO-ADRC, and PI control for an electrical system. Left plots display i_Lb and i_bias currents over time; right plots show v_bus voltage, including zoomed insets highlighting initial transient responses and oscillations. Each pair is labeled (a), (b), and (c) corresponding to the respective method.</alt-text>
</graphic>
</fig>
<fig id="F14" position="float">
<label>FIGURE 14</label>
<caption>
<p>Simulation results of the MSFC hybrid system under load current sequential disturbance conditions, <bold>(a)</bold> MRESO-ADRC; <bold>(b)</bold> ESO-ADRC; <bold>(c)</bold> PI control.</p>
</caption>
<graphic xlink:href="fenrg-14-1731457-g014.tif">
<alt-text content-type="machine-generated">Three panels labeled (a), (b), and (c) each show two plots on the left displaying current and voltage waveforms and a single plot on the right depicting voltage control performance with insets for detail. Panel (a) shows results for MRESO-ADRC, (b) for ESO-ADRC, and (c) for PI control, with the rightmost plots highlighting improved voltage stability for MRESO-ADRC compared to more fluctuation in the other methods.</alt-text>
</graphic>
</fig>
<p>The simulation results show that under the PI control and traditional ESO-based active disturbance rejection control strategies, the bus voltage fluctuations cannot be effectively suppressed, and the fluctuation ranges are 46.25&#x223c;49.58 V and 46.83&#x223c;49.18 V, respectively. However, when the proposed MRESO combined with active disturbance rejection control, the bus voltage fluctuations only briefly occur during the initial phase of disturbance injection, ranging from 47.64 to 48.42 V. Compared with traditional PI control and traditional ESO-ADRC, the voltage fluctuation amplitude is reduced by 76.58% and 66.81%, respectively. The system stabilizes after approximately 0.08 s, and the steady-state voltage fluctuation range further narrows to 47.88&#x2013;48.15 V, with no significant oscillations. This performance improvement is primarily attributed to the ability of MRESO to accurately observe multi-frequency disturbance signals and the resulting rapid compensation of the lithium battery inductor current. Simulation results further verify the effectiveness of the MRESO in improving system robustness.</p>
<p>
<xref ref-type="fig" rid="F14">Figure 14</xref> shows the simulated response of a MSFC hybrid system under sequential injection of load current disturbances, where <inline-formula id="inf166">
<mml:math id="m191">
<mml:mrow>
<mml:msub>
<mml:mi>k</mml:mi>
<mml:mrow>
<mml:mi>r</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>m</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mo>&#x3d;</mml:mo>
<mml:mn>0.24</mml:mn>
</mml:mrow>
</mml:math>
</inline-formula>. Starting at t &#x3d; 1 s, sinusoidal current disturbances with an amplitude of 0.2 A and frequencies of 30 Hz, 50 Hz, and 100 Hz were sequentially injected into the system load, with each disturbance injection interval lasting 0.25 s. When 1 s &#x3c; t &#x3c; 1.25 s, the bus current is: <inline-formula id="inf167">
<mml:math id="m192">
<mml:mrow>
<mml:msub>
<mml:mi>i</mml:mi>
<mml:mtext>bus</mml:mtext>
</mml:msub>
<mml:mo>&#x3d;</mml:mo>
<mml:mn>6</mml:mn>
<mml:mo>&#x2b;</mml:mo>
<mml:mn>0.2</mml:mn>
<mml:mo>&#x2061;</mml:mo>
<mml:mi>sin</mml:mi>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="&#x7c;">
<mml:mrow>
<mml:mn>60</mml:mn>
<mml:mi>&#x3c0;</mml:mi>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="&#x7c;">
<mml:mrow>
<mml:mi mathvariant="normal">t</mml:mi>
<mml:mo>&#x2212;</mml:mo>
<mml:mn>1</mml:mn>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
</mml:mrow>
</mml:math>
</inline-formula> A; when 1.25 s &#x2264; t &#x3c; 1.5 s, the bus current is: <inline-formula id="inf168">
<mml:math id="m193">
<mml:mrow>
<mml:msub>
<mml:mi>i</mml:mi>
<mml:mtext>bus</mml:mtext>
</mml:msub>
<mml:mo>&#x3d;</mml:mo>
<mml:mn>6</mml:mn>
<mml:mo>&#x2b;</mml:mo>
<mml:mn>0.2</mml:mn>
<mml:mo>&#x2061;</mml:mo>
<mml:mi>sin</mml:mi>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="&#x7c;">
<mml:mrow>
<mml:mn>60</mml:mn>
<mml:mi>&#x3c0;</mml:mi>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="&#x7c;">
<mml:mrow>
<mml:mi mathvariant="normal">t</mml:mi>
<mml:mo>&#x2212;</mml:mo>
<mml:mn>1</mml:mn>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:mo>&#x2b;</mml:mo>
<mml:mn>0.2</mml:mn>
<mml:mo>&#x2061;</mml:mo>
<mml:mi>sin</mml:mi>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="&#x7c;">
<mml:mrow>
<mml:mn>100</mml:mn>
<mml:mi>&#x3c0;</mml:mi>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="&#x7c;">
<mml:mrow>
<mml:mi mathvariant="normal">t</mml:mi>
<mml:mo>&#x2212;</mml:mo>
<mml:mn>1.25</mml:mn>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
</mml:mrow>
</mml:math>
</inline-formula> A; and when 1.25 s &#x2264; t &#x3c; 1.5 s, the bus current is: <inline-formula id="inf169">
<mml:math id="m194">
<mml:mrow>
<mml:msub>
<mml:mi>i</mml:mi>
<mml:mtext>bus</mml:mtext>
</mml:msub>
<mml:mo>&#x3d;</mml:mo>
<mml:mn>6</mml:mn>
<mml:mo>&#x2b;</mml:mo>
<mml:mn>0.2</mml:mn>
<mml:mo>&#x2061;</mml:mo>
<mml:mi>sin</mml:mi>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="&#x7c;">
<mml:mrow>
<mml:mn>60</mml:mn>
<mml:mi>&#x3c0;</mml:mi>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="&#x7c;">
<mml:mrow>
<mml:mi mathvariant="normal">t</mml:mi>
<mml:mo>&#x2212;</mml:mo>
<mml:mn>1</mml:mn>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:mo>&#x2b;</mml:mo>
<mml:mn>0.2</mml:mn>
<mml:mo>&#x2061;</mml:mo>
<mml:mi>sin</mml:mi>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="&#x7c;">
<mml:mrow>
<mml:mn>100</mml:mn>
<mml:mi>&#x3c0;</mml:mi>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="&#x7c;">
<mml:mrow>
<mml:mi mathvariant="normal">t</mml:mi>
<mml:mo>&#x2212;</mml:mo>
<mml:mn>1.25</mml:mn>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:mo>&#x2b;</mml:mo>
<mml:mn>0.2</mml:mn>
<mml:mo>&#x2061;</mml:mo>
<mml:mi>sin</mml:mi>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="&#x7c;">
<mml:mrow>
<mml:mn>200</mml:mn>
<mml:mi>&#x3c0;</mml:mi>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="&#x7c;">
<mml:mrow>
<mml:mi mathvariant="normal">t</mml:mi>
<mml:mo>&#x2212;</mml:mo>
<mml:mn>1.5</mml:mn>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
</mml:mrow>
</mml:math>
</inline-formula> A.</p>
<p>Simulation results show that bus voltage fluctuations are not effectively suppressed under both PI control and the traditional ESO-ADRC strategy. Specifically, during the 1&#x223c;1.25 s period, the voltage fluctuation range under PI control is 47.12&#x223c;48.85 V, and under ESO-ADRC strategy is 47.48&#x223c;48.49 V. Meanwhile, the MRESO-based ADRC control limits the fluctuation range to 47.69&#x223c;48.27 V. In the 1.25&#x223c;1.5 s stage, the voltage fluctuation expanded to 46.53&#x223c;49.46 V under PI control, 47.12&#x223c;48.88 V under ESO-ADRC, and 47.73&#x223c;48.19 V under MRESO-ADRC. After 1.5 s, the voltage fluctuation ranges under PI control, ESO-ADRC, and MRESO-ADRC strategies are 46.25&#x223c;49.58 V, 46.85&#x223c;49.18 V, and 47.85&#x223c;48.21 V, respectively. Compared with the previous two control strategies, MRESO-ADRC reduces the voltage fluctuation amplitude by 89.19% and 84.55% respectively. This performance improvement is mainly due to the ability of MRESO to accurately observe multi-frequency disturbances and the rapid compensation mechanism of the lithium battery inductor current. By comparing the simulation results in <xref ref-type="fig" rid="F13">Figures 13</xref>, <xref ref-type="fig" rid="F14">14</xref>, it can be further found that under the MRESO control strategy, the sequential disturbance injection method results in a better fluctuation suppression effect than the simultaneous disturbance injection method.</p>
</sec>
<sec id="s5-4">
<label>5.4</label>
<title>EIS measurement interference</title>
<p>
<xref ref-type="fig" rid="F15">Figures 15</xref>, <xref ref-type="fig" rid="F16">16</xref> show the simulation results of a MSFC hybrid system under EIS measurement disturbance conditions. <xref ref-type="fig" rid="F15">Figures 15a&#x2013;c</xref> show the inductive current of the fuel cell and other resulting signal responses during simultaneous EIS detection under MRESO-ADRC, ESO-ADRC and PI control conditions. At t &#x3d; 1 s, EIS measurements were simultaneously initiated for all three fuel cell stacks. The DC operating current was 14.5 A, and the AC excitation signal amplitude was 1 A, with frequencies of 30 Hz, 50 Hz, and 100 Hz, respectively. <xref ref-type="fig" rid="F15">Figure 15</xref> shows that before the disturbance was introduced, all three controllers were able to maintain the bus voltage stable near the 48 V reference value. After the EIS excitation was introduced, the bus voltage under PI control and traditional ESO control exhibited significant oscillations, fluctuating between 46.86&#x223c;48.96 V and 47.03&#x223c;48.85 V, respectively. In contrast, the MRESO-based controller only caused slight voltage fluctuations during the initial EIS phase, ranging from 47.78 to 48.29 V, and the fluctuation difference only accounts for 1.06% of the rated voltage. The obtained result was 75.71% lower than that of PI control and 71.98% lower than that of traditional ESO. The system stabilized after approximately 0.08 s, and voltage fluctuations were negligible thereafter. These results demonstrate the significant advantages of MRESO in suppressing bus voltage disturbances caused by synchronized multi-stack EIS measurements, demonstrating its robust performance and control effectiveness.</p>
<fig id="F15" position="float">
<label>FIGURE 15</label>
<caption>
<p>Simulation results of the MSFC hybrid system under EIS simultaneous disturbance conditions, <bold>(a)</bold> MRESO-ADRC; <bold>(b)</bold> ESO-ADRC; <bold>(c)</bold> PI control.</p>
</caption>
<graphic xlink:href="fenrg-14-1731457-g015.tif">
<alt-text content-type="machine-generated">Three labeled comparison panels show EIS current signals and corresponding signal responses for MRESO-ADRC, ESO-ADRC, and PI control. Each panel contains three time-series graphs of current during EIS and two resulting signal response plots, visually comparing control methods based on signal variation and highlighted insets for detail magnification.</alt-text>
</graphic>
</fig>
<fig id="F16" position="float">
<label>FIGURE 16</label>
<caption>
<p>Simulation results of the MSFC hybrid system under EIS sequential disturbance conditions, <bold>(a)</bold> MRESO-ADRC; <bold>(b)</bold> ESO-ADRC; <bold>(c)</bold> PI control.</p>
</caption>
<graphic xlink:href="fenrg-14-1731457-g016.tif">
<alt-text content-type="machine-generated">Three grouped panels compare signal responses for MRESO-ADRC, ESO-ADRC, and PI control methods during electrochemical impedance spectroscopy. Each method shows current plots and corresponding signal responses using colored line graphs, with insets highlighting voltage deviations and response stability.</alt-text>
</graphic>
</fig>
<p>
<xref ref-type="fig" rid="F16">Figures 16a&#x2013;c</xref> show the inductor current of the fuel cell and the resulting responses of other signals during sequential EIS testing under MRESO-ADRC, ESO-ADRC and PI control conditions. At t &#x3d; 1 s, the three fuel cell stacks were sequentially activated for EIS measurements with a 0.2 s interval. Their DC operating current was 14.5 A, and their AC excitation amplitude was 1 A, with frequencies of 30 Hz, 50 Hz, and 100 Hz, respectively. <xref ref-type="fig" rid="F16">Figure 16</xref> shows that before the disturbance was introduced, all three controllers were able to stabilize the bus voltage near the target value of 48 V. After the EIS measurement excitation was introduced, the bus voltage under both PI and traditional ESO control exhibited significant oscillations. However, under the MRESO-based control strategy, the voltage fluctuation range was only 47.84&#x223c;48.22 V, and the fluctuation difference is only equivalent to 0.79% of the rated voltage, and no significant oscillations were observed. By comparing the observed variable Z<sub>2<italic>MR</italic>
</sub> and the lithium-ion battery inductor current under each controller, it can be seen that MRESO, by embedding multiple resonant units, enhances its ability to observe specific frequency disturbances. This allows the lithium-ion battery inductor current to achieve a faster and more flexible dynamic response, effectively compensating for bus voltage fluctuations, suppressing the interference introduced by sequential EIS measurements of multiple stacks, and improving the power quality of the system. It should be noted that the excitation frequency selected in the simulation is only used to verify the effectiveness of the controller, and the proposed method also has the ability to suppress disturbances of other frequencies.</p>
</sec>
<sec id="s5-5">
<label>5.5</label>
<title>Comparison of main results</title>
<p>
<xref ref-type="table" rid="T2">Table 2</xref> presents the suppression of periodic disturbances achieved by MRESO-ADRC, ESO-ADRC, and PI control. It should be emphasized that all three control schemes employ identical circuit component parameters. Nevertheless, only the MRESO-ADRC scheme is capable of maintaining the bus voltage steadily at 48 V during EIS detection, while the other schemes fail to deliver comparable performance. This result confirms that the enhancement in voltage stability genuinely originates from the improvement of the control strategy itself, rather than from the inherent characteristics of the circuit components.</p>
<table-wrap id="T2" position="float">
<label>TABLE 2</label>
<caption>
<p>The suppression of periodic disturbances by MRESO-ADRC, ESO-ADRC and PI control.</p>
</caption>
<table>
<thead valign="top">
<tr>
<th align="center">Control scheme</th>
<th align="center">Disturbance category</th>
<th align="center">Injection method</th>
<th align="center">Maximum voltage fluctuation range</th>
<th align="center">Proportion of fluctuation</th>
<th align="center">Is it stable at 48 V?</th>
</tr>
</thead>
<tbody valign="top">
<tr>
<td rowspan="4" align="center">MRESO-ADRC</td>
<td rowspan="2" align="center">Load disturbance</td>
<td align="center">Simultaneous</td>
<td align="center">47.64&#x223c;48.42 V</td>
<td align="center">1.63%</td>
<td align="center">Yes</td>
</tr>
<tr>
<td align="center">Sequential</td>
<td align="center">47.85&#x223c;48.21 V</td>
<td align="center">0.75%</td>
<td align="center">Yes</td>
</tr>
<tr>
<td rowspan="2" align="center">EIS disturbance</td>
<td align="center">Simultaneous</td>
<td align="center">47.78&#x223c;48.29 V</td>
<td align="center">1.06%</td>
<td align="center">Yes</td>
</tr>
<tr>
<td align="center">Sequential</td>
<td align="center">47.84&#x223c;48.22 V</td>
<td align="center">0.79%</td>
<td align="center">Yes</td>
</tr>
<tr>
<td rowspan="4" align="center">ESO-ADRC</td>
<td rowspan="2" align="center">Load disturbance</td>
<td align="center">Simultaneous</td>
<td align="center">46.83&#x223c;49.18 V</td>
<td align="center">4.90%</td>
<td align="center">No</td>
</tr>
<tr>
<td align="center">Sequential</td>
<td align="center">46.85&#x223c;49.18 V</td>
<td align="center">4.85%</td>
<td align="center">No</td>
</tr>
<tr>
<td rowspan="2" align="center">EIS disturbance</td>
<td align="center">Simultaneous</td>
<td align="center">47.03&#x223c;48.85 V</td>
<td align="center">3.79%</td>
<td align="center">No</td>
</tr>
<tr>
<td align="center">Sequential</td>
<td align="center">47.07&#x223c;48.87 V</td>
<td align="center">3.75%</td>
<td align="center">No</td>
</tr>
<tr>
<td rowspan="4" align="center">PI control</td>
<td rowspan="2" align="center">Load disturbance</td>
<td align="center">Simultaneous</td>
<td align="center">46.25&#x223c;49.58 V</td>
<td align="center">6.94%</td>
<td align="center">No</td>
</tr>
<tr>
<td align="center">Sequential</td>
<td align="center">46.25&#x223c;49.58 V</td>
<td align="center">6.94%</td>
<td align="center">No</td>
</tr>
<tr>
<td rowspan="2" align="center">EIS disturbance</td>
<td align="center">Simultaneous</td>
<td align="center">46.86&#x223c;48.96 V</td>
<td align="center">4.38%</td>
<td align="center">No</td>
</tr>
<tr>
<td align="center">Sequential</td>
<td align="center">46.87&#x223c;48.97 V</td>
<td align="center">4.38%</td>
<td align="center">No</td>
</tr>
</tbody>
</table>
</table-wrap>
<p>
<xref ref-type="table" rid="T3">Table 3</xref> shows the comparison of complexity between the proposed implementation and existing solutions.</p>
<table-wrap id="T3" position="float">
<label>TABLE 3</label>
<caption>
<p>Comparison of the complexity between the proposed implementation and existing solutions.</p>
</caption>
<table>
<thead valign="top">
<tr>
<th align="center">Plan category</th>
<th align="center">Implementation method</th>
<th align="center">Essential characteristics</th>
<th align="center">References</th>
</tr>
</thead>
<tbody valign="top">
<tr>
<td align="center">Passive hardware type</td>
<td align="center">Increase bus capacitance/add energy storage devices (such as supercapacitors)</td>
<td align="center">Increase physical inertia, use hardware to counter disturbances, low complexity, but performance is limited and cost is high</td>
<td align="center">
<xref ref-type="bibr" rid="B3">Arne and Roberto (2023)</xref>, <xref ref-type="bibr" rid="B33">Shen and Wang (2020b)</xref>, <xref ref-type="bibr" rid="B54">Zhou et al. (2024)</xref>, <xref ref-type="bibr" rid="B5">Behnam et al. (2020)</xref>, <xref ref-type="bibr" rid="B29">Nirmalya et al. (2025)</xref>, <xref ref-type="bibr" rid="B2">And&#xfa;jar M&#xe1;rquez et al. (2025)</xref>, <xref ref-type="bibr" rid="B6">Bharath et al. (2025)</xref>
</td>
</tr>
<tr>
<td align="center">Avoidant type</td>
<td align="center">Switch to no-load/offline mode during EIS testing</td>
<td align="center">Avoiding the problem is the least complex, but it sacrifices the system&#x2019;s online diagnostic capability</td>
<td align="center">
<xref ref-type="bibr" rid="B42">Wu et al. (2024)</xref>, <xref ref-type="bibr" rid="B24">Luo et al. (2023)</xref>, <xref ref-type="bibr" rid="B43">Wu et al. (2025)</xref>
</td>
</tr>
<tr>
<td align="center">Simple feedforward</td>
<td align="center">Feedforward open-loop compensation based on EIS excitation signals</td>
<td align="center">Open-loop cancellation, medium complexity, but poor robustness, relies on accurate models</td>
<td align="center">
<xref ref-type="bibr" rid="B21">Hussein et al. (2022)</xref>, <xref ref-type="bibr" rid="B30">Pachauri et al. (2023)</xref>, <xref ref-type="bibr" rid="B51">Zahra Amatoul and Er-raki (2023)</xref>, <xref ref-type="bibr" rid="B50">Yue Z. et al. (2021)</xref>, <xref ref-type="bibr" rid="B14">Flah et al. (2026)</xref>
</td>
</tr>
<tr>
<td align="center">Implementation proposal of this document</td>
<td align="center">Adaptive control based on observer feedback</td>
<td align="center">Closed-loop active suppression aims for high performance and high robustness, but its implementation is relatively complex</td>
<td align="center">
<xref ref-type="bibr" rid="B41">Wu et al. (2018)</xref>, <xref ref-type="bibr" rid="B35">Shulong et al. (2016)</xref>, <xref ref-type="bibr" rid="B17">Heran et al. (2024)</xref>, <xref ref-type="bibr" rid="B19">Hu et al. (2023)</xref>, <xref ref-type="bibr" rid="B22">Krzysztof et al. (2022)</xref>, <xref ref-type="bibr" rid="B56">Zhuo et al. (2024)</xref>, <xref ref-type="bibr" rid="B36">Sun et al. (2022)</xref>, <xref ref-type="bibr" rid="B4">Baol et al. (2021)</xref>
</td>
</tr>
</tbody>
</table>
</table-wrap>
</sec>
</sec>
<sec sec-type="conclusion" id="s6">
<label>6</label>
<title>Conclusion</title>
<p>Through theoretical analysis and simulation, this paper systematically explores the performance of MRESO strategy in the EIS testing for the MSFC hybrid system, significantly improving bus voltage stability. The study first establishes a mathematical model of the MSFC hybrid system and clarifies the mechanism by which EIS disturbances affect bus voltage. Furthermore, an MRESO-based active disturbance rejection control strategy is designed. By embedding multiple resonant units, the MRESO accurately detects and rapidly compensates for specific frequency disturbances (30 Hz, 50 Hz, and 100 Hz), avoiding the noise sensitivity of traditional high-gain ESOs. Simulation results show that, when multi-frequency disturbances are injected simultaneously or sequentially, the MRESO can control voltage fluctuations within a sum of 1.06% and 0.79% of the bus voltage as the fluctuation difference, respectively. The system response time is shortened to within 0.08 s, demonstrating excellent dynamic performance and robustness.</p>
<p>The main contribution of this study lies in the proposed novel MRESO structure, which addresses the voltage instability caused by multi-frequency EIS disturbances in MSFC systems and overcomes the shortcomings of existing methods in suppressing periodic disturbances. However, the parameter tuning of the MRESO, such as the resonance gain and observer bandwidth, remains predominantly empirical and lacks experimental validation on low-power physical prototypes. While simulation models are essential for verifying algorithmic functionality and conducting preliminary performance assessments, their inherent simplifications cannot fully capture critical physical effects present in actual hardware systems. For future work, intelligent optimization algorithms can be integrated to enable adaptive parameter adjustment, followed by extended validation on real hardware platforms. Furthermore, this solution provides new insights into power quality management in hybrid power systems and is expected to be applied to high-performance applications such as aerospace and industrial megawatt-level power output, promoting the large-scale development of fuel cell technology.</p>
</sec>
</body>
<back>
<sec sec-type="data-availability" id="s8">
<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 authors.</p>
</sec>
<sec sec-type="author-contributions" id="s9">
<title>Author contributions</title>
<p>KZ: Conceptualization, Data curation, Formal Analysis, Investigation, Methodology, Validation, Visualization, Writing &#x2013; original draft, Writing &#x2013; review and editing. ZS: Data curation, Software, Visualization, Writing &#x2013; review and editing. SX: Formal Analysis, Methodology, Resources, Software, Writing &#x2013; original draft, Writing &#x2013; review and editing. FF: Data curation, Visualization, Writing &#x2013; review and editing. JM: Conceptualization, Investigation, Methodology, Resources, Visualization, Writing &#x2013; original draft, Writing &#x2013; review and editing. CS: Funding acquisition, Project administration, Resources, Supervision, Writing &#x2013; original draft, Writing &#x2013; review and editing.</p>
</sec>
<sec sec-type="COI-statement" id="s11">
<title>Conflict of interest</title>
<p>The author(s) declared that this work 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="ai-statement" id="s12">
<title>Generative AI statement</title>
<p>The author(s) declared that generative AI was not used in the creation of this manuscript.</p>
<p>Any alternative text (alt text) provided alongside figures in this article has been generated by Frontiers with the support of artificial intelligence and reasonable efforts have been made to ensure accuracy, including review by the authors wherever possible. If you identify any issues, please contact us.</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">
<mixed-citation publication-type="journal">
<person-group person-group-type="author">
<name>
<surname>Andrej</surname>
<given-names>D.</given-names>
</name>
<name>
<surname>Janko</surname>
<given-names>P.</given-names>
</name>
<name>
<surname>Pavle</surname>
<given-names>B.</given-names>
</name>
<name>
<surname>Bojan</surname>
<given-names>M.</given-names>
</name>
<name>
<surname>&#x110;ani</surname>
<given-names>J.</given-names>
</name>
</person-group> (<year>2015</year>). <article-title>Fuel cell condition monitoring system based on interconnected DC&#x2013;DC converter and voltage monitor</article-title>. <source>IEEE Trans. Ind. Electron.</source> <volume>62</volume>, <fpage>5293</fpage>&#x2013;<lpage>5305</lpage>. <pub-id pub-id-type="doi">10.1109/TIE.2015.2434792</pub-id>
</mixed-citation>
</ref>
<ref id="B2">
<mixed-citation publication-type="journal">
<person-group person-group-type="author">
<name>
<surname>And&#xfa;jar M&#xe1;rquez</surname>
<given-names>J. M.</given-names>
</name>
<name>
<surname>Vivas Fern&#xe1;ndez</surname>
<given-names>F. J.</given-names>
</name>
<name>
<surname>Manzano</surname>
<given-names>F. S.</given-names>
</name>
</person-group> (<year>2025</year>). <article-title>A complete control-oriented model for hydrogen hybrid renewable microgrids with high-voltage DC bus stabilized by batteries and supercapacitors</article-title>. <source>Appl. Sci.</source> <volume>15</volume>, <fpage>10810</fpage>. <pub-id pub-id-type="doi">10.3390/app15191081000</pub-id>
</mixed-citation>
</ref>
<ref id="B3">
<mixed-citation publication-type="journal">
<person-group person-group-type="author">
<name>
<surname>Arne</surname>
<given-names>S.</given-names>
</name>
<name>
<surname>Roberto</surname>
<given-names>F.</given-names>
</name>
</person-group> (<year>2023</year>). <article-title>Multi-cell and wide-frequency <italic>in-situ</italic> battery impedance spectroscopy</article-title>. <source>IEEE Open J. Instrum. Meas.</source> <volume>2</volume>, <fpage>1</fpage>&#x2013;<lpage>11</lpage>. <pub-id pub-id-type="doi">10.1109/OJIM.2023.3322492</pub-id>
</mixed-citation>
</ref>
<ref id="B4">
<mixed-citation publication-type="journal">
<person-group person-group-type="author">
<name>
<surname>Baoling</surname>
<given-names>G.</given-names>
</name>
<name>
<surname>Seddik</surname>
<given-names>B.</given-names>
</name>
<name>
<surname>Mazen</surname>
<given-names>A.</given-names>
</name>
<name>
<surname>Ahmad</surname>
<given-names>H.</given-names>
</name>
<name>
<surname>C&#xe9;dri</surname>
<given-names>B.</given-names>
</name>
</person-group> (<year>2021</year>). <article-title>Generalized integrator-extended state observer with applications to grid-connected converters in the presence of disturbances</article-title>. <source>IEEE Trans. Control Syst. Technol.</source> <volume>29</volume>, <fpage>744</fpage>&#x2013;<lpage>755</lpage>. <pub-id pub-id-type="doi">10.1109/TCST.2020.2981571</pub-id>
</mixed-citation>
</ref>
<ref id="B5">
<mixed-citation publication-type="book">
<person-group person-group-type="author">
<name>
<surname>Behnam</surname>
<given-names>M.</given-names>
</name>
<name>
<surname>Shen</surname>
<given-names>J.</given-names>
</name>
<name>
<surname>Jiacheng</surname>
<given-names>W.</given-names>
</name>
</person-group> (<year>2020</year>). &#x201c;<article-title>An auxiliary converter for fuel cell stack EIS using a switched-capacitor converter interfaced supercapacitor as a bidirectional energy buffer</article-title>,&#x201d; in <source>IECON 2020 The 46th annual conference of the</source>. <publisher-name>IEEE Industrial Electronics Society</publisher-name>, <fpage>5006</fpage>&#x2013;<lpage>5011</lpage>. <pub-id pub-id-type="doi">10.1109/IECON43393.2020.9254647</pub-id>
</mixed-citation>
</ref>
<ref id="B6">
<mixed-citation publication-type="journal">
<person-group person-group-type="author">
<name>
<surname>Bharath</surname>
<given-names>Y. K.</given-names>
</name>
<name>
<surname>Anandu</surname>
<given-names>V. P.</given-names>
</name>
<name>
<surname>Vinatha</surname>
<given-names>U.</given-names>
</name>
</person-group> (<year>2025</year>). <article-title>Supercapacitor assisted self-reconfigurable battery system for enhanced cell balancing and voltage stability</article-title>. <source>Energy Storage</source> <volume>7</volume>, <fpage>70242</fpage>. <pub-id pub-id-type="doi">10.1002/est2.70242</pub-id>
</mixed-citation>
</ref>
<ref id="B7">
<mixed-citation publication-type="journal">
<person-group person-group-type="author">
<name>
<surname>Chakraborty</surname>
<given-names>U. K.</given-names>
</name>
<name>
<surname>Abbott</surname>
<given-names>T. E.</given-names>
</name>
<name>
<surname>Das</surname>
<given-names>S. K.</given-names>
</name>
</person-group> (<year>2012</year>). <article-title>PEM fuel cell modeling using differential evolution</article-title>. <source>Energry</source> <volume>40</volume>, <fpage>387</fpage>&#x2013;<lpage>399</lpage>. <pub-id pub-id-type="doi">10.1016/j.energy.2012.01.039</pub-id>
</mixed-citation>
</ref>
<ref id="B8">
<mixed-citation publication-type="journal">
<person-group person-group-type="author">
<name>
<surname>Chen</surname>
<given-names>Q.</given-names>
</name>
<name>
<surname>Niu</surname>
<given-names>Z.</given-names>
</name>
<name>
<surname>Li</surname>
<given-names>H.</given-names>
</name>
<name>
<surname>Jiao</surname>
<given-names>K.</given-names>
</name>
<name>
<surname>Wang</surname>
<given-names>Y.</given-names>
</name>
</person-group> (<year>2021</year>). <article-title>Recent progress of gas diffusion layer in proton exchange membrane fuel cell: two-phase flow and material properties</article-title>. <source>Int. J. Hydrog. Energy</source> <volume>46</volume>, <fpage>8640</fpage>&#x2013;<lpage>8671</lpage>. <pub-id pub-id-type="doi">10.1016/j.ijhydene.2020.12.076</pub-id>
</mixed-citation>
</ref>
<ref id="B9">
<mixed-citation publication-type="journal">
<person-group person-group-type="author">
<name>
<surname>Chen</surname>
<given-names>W.</given-names>
</name>
<name>
<surname>Chen</surname>
<given-names>B.</given-names>
</name>
<name>
<surname>Meng</surname>
<given-names>K.</given-names>
</name>
<name>
<surname>Zhou</surname>
<given-names>H.</given-names>
</name>
<name>
<surname>Tu</surname>
<given-names>Z.</given-names>
</name>
</person-group> (<year>2023</year>). <article-title>Experimental study on dynamic response characteristics and performance degradation mechanism of hydrogen-oxygen PEMFC during loading</article-title>. <source>Int. J. Hydrog. Energy</source> <volume>48</volume>, <fpage>4800</fpage>&#x2013;<lpage>4811</lpage>. <pub-id pub-id-type="doi">10.1016/j.ijhydene.2022.11.036</pub-id>
</mixed-citation>
</ref>
<ref id="B10">
<mixed-citation publication-type="journal">
<person-group person-group-type="author">
<name>
<surname>Chen</surname>
<given-names>F.</given-names>
</name>
<name>
<surname>Tong</surname>
<given-names>G.</given-names>
</name>
<name>
<surname>Chi</surname>
<given-names>X.</given-names>
</name>
<name>
<surname>Zhang</surname>
<given-names>B.</given-names>
</name>
<name>
<surname>Li</surname>
<given-names>R.</given-names>
</name>
</person-group> (<year>2026</year>). <article-title>Innovative design and decoupling control of an efficient, simplified MFCS air supply system for renewable hydrogen-powered stacks</article-title>. <source>Renew. Energy</source> <volume>256</volume>, <fpage>124283</fpage>. <pub-id pub-id-type="doi">10.1016/j.renene.2025.124283</pub-id>
</mixed-citation>
</ref>
<ref id="B11">
<mixed-citation publication-type="journal">
<person-group person-group-type="author">
<name>
<surname>Chung-Hsing</surname>
<given-names>C.</given-names>
</name>
<name>
<surname>Jenn-Jong</surname>
<given-names>S.</given-names>
</name>
</person-group> (<year>2012</year>). <article-title>A new control strategy for hybrid fuel cell-battery power systems with improved efficiency</article-title>. <source>Int. J. Hydrog. Energy</source> <volume>37</volume>, <fpage>13141</fpage>&#x2013;<lpage>13146</lpage>. <pub-id pub-id-type="doi">10.1016/j.ijhydene.2012.03.143</pub-id>
</mixed-citation>
</ref>
<ref id="B12">
<mixed-citation publication-type="journal">
<person-group person-group-type="author">
<name>
<surname>Eddine Halledj</surname>
<given-names>S.</given-names>
</name>
<name>
<surname>Bouafassa</surname>
<given-names>A.</given-names>
</name>
<name>
<surname>Faranda</surname>
<given-names>R.</given-names>
</name>
<name>
<surname>Fern&#xe1;ndez-Ram&#xed;rez</surname>
<given-names>L. M.</given-names>
</name>
</person-group> (<year>2025</year>). <article-title>Data-driven consensus protocol for regulating multi-stack PEMFC systems</article-title>. <source>Int. J. Hydrog. Energy</source> <volume>160</volume>, <fpage>150609</fpage>. <pub-id pub-id-type="doi">10.1016/j.ijhydene.2025.150609</pub-id>
</mixed-citation>
</ref>
<ref id="B13">
<mixed-citation publication-type="journal">
<person-group person-group-type="author">
<name>
<surname>Filip</surname>
<given-names>T.</given-names>
</name>
<name>
<surname>Emilija</surname>
<given-names>T.</given-names>
</name>
<name>
<surname>Mihael</surname>
<given-names>S.</given-names>
</name>
<name>
<surname>Mori</surname>
<given-names>M.</given-names>
</name>
<name>
<surname>Andrej</surname>
<given-names>L.</given-names>
</name>
</person-group> (<year>2025</year>). <article-title>Electrochemical assessment of contact pressure effects on durability of high-temperature proton exchange membrane fuel cells under dynamic operation</article-title>. <source>Electrochimica Acta</source> <volume>540</volume>, <fpage>147254</fpage>. <pub-id pub-id-type="doi">10.1016/j.electacta.2025.147254</pub-id>
</mixed-citation>
</ref>
<ref id="B14">
<mixed-citation publication-type="journal">
<person-group person-group-type="author">
<name>
<surname>Flah</surname>
<given-names>A.</given-names>
</name>
<name>
<surname>Habib</surname>
<given-names>K.</given-names>
</name>
<name>
<surname>Dashtdar</surname>
<given-names>M.</given-names>
</name>
<name>
<surname>Prokop</surname>
<given-names>L.</given-names>
</name>
<name>
<surname>El-Bayeh</surname>
<given-names>C. Z.</given-names>
</name>
<name>
<surname>Ghatasheh</surname>
<given-names>M.</given-names>
</name>
<etal/>
</person-group> (<year>2026</year>). <article-title>Enhancing UPFC compensation performance in simultaneous power and voltage control of the system with self-tuning PI controllers based on ANFIS design</article-title>. <source>Energy Rep.</source> <volume>15</volume>, <fpage>108830</fpage>. <pub-id pub-id-type="doi">10.1016/j.egyr.2025.11.089</pub-id>
</mixed-citation>
</ref>
<ref id="B15">
<mixed-citation publication-type="journal">
<person-group person-group-type="author">
<name>
<surname>Hamid</surname>
<given-names>A.</given-names>
</name>
<name>
<surname>Noureddine</surname>
<given-names>A. M.</given-names>
</name>
<name>
<surname>Lioua</surname>
<given-names>K.</given-names>
</name>
<name>
<surname>Mohamed Wahib</surname>
<given-names>N.</given-names>
</name>
</person-group> (<year>2021</year>). <article-title>Modeling and optimization of a proton exchange membrane fuel cell using particle swarm algorithm with constriction coefficient</article-title>. <source>J. Therm. Anal. Calorim.</source> <volume>144</volume>, <fpage>1749</fpage>&#x2013;<lpage>1759</lpage>. <pub-id pub-id-type="doi">10.1007/s10973-020-10370-1</pub-id>
</mixed-citation>
</ref>
<ref id="B16">
<mixed-citation publication-type="journal">
<person-group person-group-type="author">
<name>
<surname>Harel</surname>
<given-names>F.</given-names>
</name>
<name>
<surname>Gustin</surname>
<given-names>F.</given-names>
</name>
<name>
<surname>Mainka</surname>
<given-names>J.</given-names>
</name>
<name>
<surname>Wu</surname>
<given-names>P.</given-names>
</name>
</person-group> (<year>2025</year>). <article-title>Effects of short circuit applications on PEM fuel cell performance and degradation</article-title>. <source>J. Power Sources</source> <volume>632</volume>, <fpage>236348</fpage>. <pub-id pub-id-type="doi">10.1016/j.jpowsour.2025.236348</pub-id>
</mixed-citation>
</ref>
<ref id="B17">
<mixed-citation publication-type="journal">
<person-group person-group-type="author">
<name>
<surname>Heran</surname>
<given-names>L.</given-names>
</name>
<name>
<surname>Sun</surname>
<given-names>C.</given-names>
</name>
<name>
<surname>Jing</surname>
<given-names>L.</given-names>
</name>
<name>
<surname>Mei</surname>
<given-names>J.</given-names>
</name>
<name>
<surname>Jiang</surname>
<given-names>J.</given-names>
</name>
<name>
<surname>Fan</surname>
<given-names>F.</given-names>
</name>
<etal/>
</person-group> (<year>2024</year>). <article-title>Self-tuning oxygen excess ratio control for proton exchange membrane fuel cells under dynamic conditions</article-title>. <source>Processes</source> <volume>12</volume>, <fpage>2807</fpage>. <pub-id pub-id-type="doi">10.3390/pr12122807</pub-id>
</mixed-citation>
</ref>
<ref id="B18">
<mixed-citation publication-type="journal">
<person-group person-group-type="author">
<name>
<surname>Hossein Haji</surname>
<given-names>A.</given-names>
</name>
<name>
<surname>Shahin</surname>
<given-names>J. A.</given-names>
</name>
</person-group> (<year>2022</year>). <article-title>Online broadband battery impedance spectroscopy using current-mode boost converter</article-title>. <source>IEEE Trans. Instrum. Meas.</source> <volume>71</volume>, <fpage>1</fpage>&#x2013;<lpage>8</lpage>. <pub-id pub-id-type="doi">10.1109/TIM.2022.3192071</pub-id>
</mixed-citation>
</ref>
<ref id="B19">
<mixed-citation publication-type="journal">
<person-group person-group-type="author">
<name>
<surname>Hu</surname>
<given-names>X.</given-names>
</name>
<name>
<surname>Shao</surname>
<given-names>W.</given-names>
</name>
<name>
<surname>Cheng</surname>
<given-names>Y.</given-names>
</name>
<name>
<surname>Zhang</surname>
<given-names>C.</given-names>
</name>
<name>
<surname>Han</surname>
<given-names>Y.</given-names>
</name>
</person-group> (<year>2023</year>). <article-title>Research on ADRC controller of bidirectional DC&#x2013;DC converter for MMC-BESS</article-title>. <source>Energy Rep.</source> <volume>9</volume>, <fpage>1627</fpage>&#x2013;<lpage>1636</lpage>. <pub-id pub-id-type="doi">10.1016/j.egyr.2023.04.175</pub-id>
</mixed-citation>
</ref>
<ref id="B20">
<mixed-citation publication-type="journal">
<person-group person-group-type="author">
<name>
<surname>Hua</surname>
<given-names>Z.</given-names>
</name>
<name>
<surname>Zheng</surname>
<given-names>Z.</given-names>
</name>
<name>
<surname>Pahon</surname>
<given-names>E.</given-names>
</name>
<name>
<surname>P&#xe9;ra</surname>
<given-names>M.-C.</given-names>
</name>
<name>
<surname>Gao</surname>
<given-names>F.</given-names>
</name>
</person-group> (<year>2022</year>). <article-title>A review on lifetime prediction of proton exchange membrane fuel cells system</article-title>. <source>J. Power Sources</source> <volume>529</volume>, <fpage>231256</fpage>. <pub-id pub-id-type="doi">10.1016/j.jpowsour.2022.231256</pub-id>
</mixed-citation>
</ref>
<ref id="B21">
<mixed-citation publication-type="book">
<person-group person-group-type="author">
<name>
<surname>Hussein</surname>
<given-names>O.</given-names>
</name>
<name>
<surname>Salah</surname>
<given-names>L.</given-names>
</name>
<name>
<surname>Mickael</surname>
<given-names>H.</given-names>
</name>
<name>
<surname>Yue</surname>
<given-names>Z.</given-names>
</name>
</person-group> (<year>2022</year>). &#x201c;<article-title>Integral sliding mode control combined with Passivity-based control applied to fuel cell/supercapacitors hybrid power system of electric vehicles</article-title>,&#x201d; in <source>2022 IEEE vehicle power and propulsion conference (VPPC)</source>, <fpage>1</fpage>&#x2013;<lpage>6</lpage>. <pub-id pub-id-type="doi">10.1109/VPPC55846.2022.10003453</pub-id>
</mixed-citation>
</ref>
<ref id="B22">
<mixed-citation publication-type="journal">
<person-group person-group-type="author">
<name>
<surname>Krzysztof</surname>
<given-names>&#x141;.</given-names>
</name>
<name>
<surname>Rafal</surname>
<given-names>M.</given-names>
</name>
<name>
<surname>Bin</surname>
<given-names>D.</given-names>
</name>
<name>
<surname>Jun</surname>
<given-names>Y.</given-names>
</name>
<name>
<surname>Piotr</surname>
<given-names>K.</given-names>
</name>
<name>
<surname>Maral</surname>
<given-names>A.</given-names>
</name>
<etal/>
</person-group> (<year>2022</year>). <article-title>Active disturbance rejection control design with suppression of sensor noise effects in application to DC&#x2013;DC buck power converter</article-title>. <source>IEEE Trans. Industrial Electron.</source> <volume>69</volume>, <fpage>816</fpage>&#x2013;<lpage>824</lpage>. <pub-id pub-id-type="doi">10.1109/TIE.2021.3055187</pub-id>
</mixed-citation>
</ref>
<ref id="B23">
<mixed-citation publication-type="journal">
<person-group person-group-type="author">
<name>
<surname>Liu</surname>
<given-names>H.</given-names>
</name>
<name>
<surname>Pei</surname>
<given-names>H.</given-names>
</name>
<name>
<surname>Xing</surname>
<given-names>L.</given-names>
</name>
<name>
<surname>Chang</surname>
<given-names>H.</given-names>
</name>
<name>
<surname>Tu</surname>
<given-names>Z.</given-names>
</name>
</person-group> (<year>2025</year>). <article-title>Investigation of the hazards of local reverse polarization in fuel cells: prediction based on electrochemical impedance spectroscopy</article-title>. <source>Energy Convers. Manag.</source> <volume>342</volume>, <fpage>120124</fpage>. <pub-id pub-id-type="doi">10.1016/j.enconman.2025.120124</pub-id>
</mixed-citation>
</ref>
<ref id="B24">
<mixed-citation publication-type="journal">
<person-group person-group-type="author">
<name>
<surname>Luo</surname>
<given-names>W.</given-names>
</name>
<name>
<surname>Syed Adnan</surname>
<given-names>U.</given-names>
</name>
<name>
<surname>Nicholls John</surname>
<given-names>R.</given-names>
</name>
<name>
<surname>Simon</surname>
<given-names>G.</given-names>
</name>
</person-group> (<year>2023</year>). <article-title>An SVM-based health classifier for offline Li-Ion batteries by using EIS technology</article-title>. <source>J. Electrochem. Soc.</source> <volume>170</volume>, <fpage>030532</fpage>. <pub-id pub-id-type="doi">10.1149/1945-7111/acc09f</pub-id>
</mixed-citation>
</ref>
<ref id="B25">
<mixed-citation publication-type="journal">
<person-group person-group-type="author">
<name>
<surname>Marx</surname>
<given-names>N.</given-names>
</name>
<name>
<surname>Boulon</surname>
<given-names>L.</given-names>
</name>
<name>
<surname>Gustin</surname>
<given-names>F.</given-names>
</name>
<name>
<surname>Hissel</surname>
<given-names>D.</given-names>
</name>
<name>
<surname>Agbossou</surname>
<given-names>K.</given-names>
</name>
</person-group> (<year>2014</year>). <article-title>A review of multi-stack and modular fuel cell systems: interests, application areas and on-going research activities</article-title>. <source>Int. J. Hydrog. Energy</source> <volume>39</volume>, <fpage>12101</fpage>&#x2013;<lpage>12111</lpage>. <pub-id pub-id-type="doi">10.1016/j.ijhydene.2014.05.187</pub-id>
</mixed-citation>
</ref>
<ref id="B26">
<mixed-citation publication-type="journal">
<person-group person-group-type="author">
<name>
<surname>Mei</surname>
<given-names>J.</given-names>
</name>
<name>
<surname>Xuan</surname>
<given-names>M.</given-names>
</name>
<name>
<surname>Tang</surname>
<given-names>X.</given-names>
</name>
<name>
<surname>Heran</surname>
<given-names>L.</given-names>
</name>
<name>
<surname>Hany</surname>
<given-names>H.</given-names>
</name>
<name>
<surname>Mohammed</surname>
<given-names>A.</given-names>
</name>
<etal/>
</person-group> (<year>2024</year>). <article-title>An accurate parameter estimation method of the voltage model for proton exchange membrane fuel cells</article-title>. <source>Energies</source> <volume>17</volume>, <fpage>2917</fpage>. <pub-id pub-id-type="doi">10.3390/en17122917</pub-id>
</mixed-citation>
</ref>
<ref id="B27">
<mixed-citation publication-type="journal">
<person-group person-group-type="author">
<name>
<surname>Mekhilef</surname>
<given-names>S.</given-names>
</name>
<name>
<surname>Saidur</surname>
<given-names>R.</given-names>
</name>
<name>
<surname>Safari</surname>
<given-names>A.</given-names>
</name>
</person-group> (<year>2012</year>). <article-title>Comparative study of different fuel cell technologies</article-title>. <source>Renew. Sustain. Energy Rev.</source> <volume>16</volume>, <fpage>981</fpage>&#x2013;<lpage>989</lpage>. <pub-id pub-id-type="doi">10.1016/j.rser.2011.09.020</pub-id>
</mixed-citation>
</ref>
<ref id="B28">
<mixed-citation publication-type="journal">
<person-group person-group-type="author">
<name>
<surname>Mohammed</surname>
<given-names>E.</given-names>
</name>
<name>
<surname>Mohammed</surname>
<given-names>B.</given-names>
</name>
<name>
<surname>Bekkay</surname>
<given-names>H.</given-names>
</name>
<name>
<surname>Abdelhamid</surname>
<given-names>R.</given-names>
</name>
<name>
<surname>Michele</surname>
<given-names>C.</given-names>
</name>
</person-group> (<year>2025</year>). <article-title>Advancing energy management strategies for hybrid fuel cell vehicles: a comparative study of deterministic and fuzzy logic approaches</article-title>. <source>World Electr. Veh. J.</source> <volume>16</volume>, <fpage>444</fpage>. <pub-id pub-id-type="doi">10.3390/wevj16080444</pub-id>
</mixed-citation>
</ref>
<ref id="B29">
<mixed-citation publication-type="journal">
<person-group person-group-type="author">
<name>
<surname>Nirmalya</surname>
<given-names>M.</given-names>
</name>
<name>
<surname>Chandan Kumar</surname>
<given-names>S.</given-names>
</name>
<name>
<surname>Sen</surname>
<given-names>S.</given-names>
</name>
<name>
<surname>Vedik</surname>
<given-names>B.</given-names>
</name>
<name>
<surname>Vivekananda</surname>
<given-names>M.</given-names>
</name>
<name>
<surname>Reddy</surname>
<given-names>C. S.</given-names>
</name>
</person-group> (<year>2025</year>). <article-title>Adaptive fuzzy-PI controlled dynamic voltage restorer for mitigating voltage sags</article-title>. <source>Sci. Rep.</source> <volume>15</volume>, <fpage>16817</fpage>. <pub-id pub-id-type="doi">10.1038/s41598-025-01414-3</pub-id>
<pub-id pub-id-type="pmid">40369124</pub-id>
</mixed-citation>
</ref>
<ref id="B30">
<mixed-citation publication-type="journal">
<person-group person-group-type="author">
<name>
<surname>Pachauri</surname>
<given-names>N.</given-names>
</name>
<name>
<surname>Panjwani</surname>
<given-names>B.</given-names>
</name>
<name>
<surname>Vigneysh</surname>
<given-names>T.</given-names>
</name>
<name>
<surname>Mohan</surname>
<given-names>V.</given-names>
</name>
</person-group> (<year>2023</year>). <article-title>&#x201c;A cascaded NPID/PI scheme for the regulation of stack voltage in proton exchange membrane fuel cell&#x201d; integrated hydrogen</article-title>. <source>Energy Syst.</source> <volume>48</volume>, <fpage>39484</fpage>&#x2013;<lpage>39496</lpage>. <pub-id pub-id-type="doi">10.1016/j.ijhydene.2023.08.008</pub-id>
</mixed-citation>
</ref>
<ref id="B31">
<mixed-citation publication-type="journal">
<person-group person-group-type="author">
<name>
<surname>P&#xe9;rez-Page</surname>
<given-names>M.</given-names>
</name>
<name>
<surname>P&#xe9;rez-Herranz</surname>
<given-names>V.</given-names>
</name>
</person-group> (<year>2014</year>). <article-title>Study of the electrochemical behaviour of a 300 W PEM fuel cell stack by electrochemical impedance spectroscopy</article-title>. <source>Int. J. Hydrog. Energy</source> <volume>39</volume>, <fpage>4009</fpage>&#x2013;<lpage>4015</lpage>. <pub-id pub-id-type="doi">10.1016/j.ijhydene.2013.05.121</pub-id>
</mixed-citation>
</ref>
<ref id="B32">
<mixed-citation publication-type="journal">
<person-group person-group-type="author">
<name>
<surname>Shen</surname>
<given-names>J.</given-names>
</name>
<name>
<surname>Wang</surname>
<given-names>J.</given-names>
</name>
</person-group> (<year>2020a</year>). <article-title>Analysis of dc link oscillations in a hybrid fuel cell powertrain brought by <italic>in situ</italic> converter based electrochemical impedance spectroscopy</article-title>. <source>Int. J. Hydrog. Energy</source> <volume>45</volume>, <fpage>31080</fpage>&#x2013;<lpage>31090</lpage>. <pub-id pub-id-type="doi">10.1016/j.ijhydene.2020.08.146</pub-id>
</mixed-citation>
</ref>
<ref id="B33">
<mixed-citation publication-type="book">
<person-group person-group-type="author">
<name>
<surname>Shen</surname>
<given-names>J.</given-names>
</name>
<name>
<surname>Wang</surname>
<given-names>J.</given-names>
</name>
</person-group> (<year>2020b</year>). &#x201c;<article-title>Analysis and design of an isolated converter with embedded EIS function for fuel cell stack considering low-frequency oscillations</article-title>,&#x201d; in <source>IECON 2020 the 46th annual conference of the IEEE industrial electronics society</source>, <fpage>1750</fpage>&#x2013;<lpage>1755</lpage>. <pub-id pub-id-type="doi">10.1109/IECON43393.2020.9254418</pub-id>
</mixed-citation>
</ref>
<ref id="B34">
<mixed-citation publication-type="journal">
<person-group person-group-type="author">
<name>
<surname>Shen</surname>
<given-names>J.</given-names>
</name>
<name>
<surname>Liu</surname>
<given-names>S.</given-names>
</name>
<name>
<surname>Liu</surname>
<given-names>H.</given-names>
</name>
<name>
<surname>Zhang</surname>
<given-names>C.</given-names>
</name>
<name>
<surname>Chen</surname>
<given-names>B.</given-names>
</name>
<name>
<surname>Du</surname>
<given-names>C.</given-names>
</name>
<etal/>
</person-group> (<year>2025</year>). <article-title>Rapid activation of proton exchange membrane fuel cell with a combination method of electrochemical hydrogen pumping and current control</article-title>. <source>J. Power Sources</source> <volume>656</volume>, <fpage>238039</fpage>. <pub-id pub-id-type="doi">10.1016/j.jpowsour.2025.238039</pub-id>
</mixed-citation>
</ref>
<ref id="B35">
<mixed-citation publication-type="journal">
<person-group person-group-type="author">
<name>
<surname>Shulong</surname>
<given-names>Y.</given-names>
</name>
<name>
<surname>Liu</surname>
<given-names>Z.</given-names>
</name>
<name>
<surname>Zhang</surname>
<given-names>G.</given-names>
</name>
<name>
<surname>Xiang</surname>
<given-names>C.</given-names>
</name>
</person-group> (<year>2016</year>). <article-title>A novel approach based on ADRC to traction network voltage low frequency oscillation suppression research</article-title>. <source>Dianwang Jishu/Power Syst. Technol.</source> <volume>40</volume>, <fpage>207</fpage>&#x2013;<lpage>213</lpage>. <pub-id pub-id-type="doi">10.13335/j.1000-3673.pst.2016.01.028</pub-id>
</mixed-citation>
</ref>
<ref id="B36">
<mixed-citation publication-type="journal">
<person-group person-group-type="author">
<name>
<surname>Sun</surname>
<given-names>H.</given-names>
</name>
<name>
<surname>Rafal</surname>
<given-names>M.</given-names>
</name>
<name>
<surname>Shihua</surname>
<given-names>L.</given-names>
</name>
<name>
<surname>Zhang</surname>
<given-names>Y.</given-names>
</name>
<name>
<surname>Wenchao</surname>
<given-names>X.</given-names>
</name>
</person-group> (<year>2022</year>). <article-title>Composite control design for systems with uncertainties and noise using combined extended state observer and kalman filter</article-title>. <source>IEEE Trans. Industrial Electron.</source> <volume>69</volume>, <fpage>4119</fpage>&#x2013;<lpage>4128</lpage>. <pub-id pub-id-type="doi">10.1109/TIE.2021.3075838</pub-id>
</mixed-citation>
</ref>
<ref id="B37">
<mixed-citation publication-type="journal">
<person-group person-group-type="author">
<name>
<surname>Tero</surname>
<given-names>K.</given-names>
</name>
<name>
<surname>Ali</surname>
<given-names>K.</given-names>
</name>
<name>
<surname>Syri</surname>
<given-names>S.</given-names>
</name>
</person-group> (<year>2023</year>). <article-title>The role of power &#x2013; to &#x2013; hydrogen in carbon neutral energy and industrial systems: case Finland</article-title>. <source>Energy</source> <volume>284</volume>, <fpage>128624</fpage>. <pub-id pub-id-type="doi">10.1016/j.energy.2023.128624</pub-id>
</mixed-citation>
</ref>
<ref id="B38">
<mixed-citation publication-type="journal">
<person-group person-group-type="author">
<name>
<surname>Trogisch</surname>
<given-names>N.</given-names>
</name>
<name>
<surname>Albert</surname>
<given-names>A.</given-names>
</name>
<name>
<surname>Eichel</surname>
<given-names>R.-A.</given-names>
</name>
</person-group> (<year>2025</year>). <article-title>Degradation of automotive PEM fuel cells under accelerated stress tests &#x2013; the effect of high operating temperature</article-title>. <source>J. Power Sources</source> <volume>649</volume>, <fpage>237408</fpage>. <pub-id pub-id-type="doi">10.1016/j.jpowsour.2025.237408</pub-id>
</mixed-citation>
</ref>
<ref id="B39">
<mixed-citation publication-type="journal">
<person-group person-group-type="author">
<name>
<surname>Wang</surname>
<given-names>T.</given-names>
</name>
<name>
<surname>Qi</surname>
<given-names>L.</given-names>
</name>
<name>
<surname>Yin</surname>
<given-names>L.</given-names>
</name>
<name>
<surname>Chen</surname>
<given-names>W.</given-names>
</name>
</person-group> (<year>2019</year>). <article-title>Hydrogen consumption minimization method based on the online identification for multi-stack PEMFCs system</article-title>. <source>Int. J. Hydrog. Energy</source> <volume>44</volume>, <fpage>5074</fpage>&#x2013;<lpage>5081</lpage>. <pub-id pub-id-type="doi">10.1016/j.ijhydene.2018.09.181</pub-id>
</mixed-citation>
</ref>
<ref id="B40">
<mixed-citation publication-type="journal">
<person-group person-group-type="author">
<name>
<surname>Wu</surname>
<given-names>J.</given-names>
</name>
<name>
<surname>Yuan</surname>
<given-names>X. Z.</given-names>
</name>
<name>
<surname>Wang</surname>
<given-names>H.</given-names>
</name>
<name>
<surname>Blanco</surname>
<given-names>M.</given-names>
</name>
<name>
<surname>Martin</surname>
<given-names>J. J.</given-names>
</name>
<name>
<surname>Zhang</surname>
<given-names>J.</given-names>
</name>
</person-group> (<year>2008</year>). <article-title>Diagnostic tools in PEM fuel cell research: part I electrochemical techniques</article-title>. <source>Int. J. Hydrog. Energy</source> <volume>33</volume>, <fpage>1735</fpage>&#x2013;<lpage>1746</lpage>. <pub-id pub-id-type="doi">10.1016/j.ijhydene.2008.01.013</pub-id>
</mixed-citation>
</ref>
<ref id="B41">
<mixed-citation publication-type="book">
<person-group person-group-type="author">
<name>
<surname>Wu</surname>
<given-names>Z.</given-names>
</name>
<name>
<surname>Donghai</surname>
<given-names>L.</given-names>
</name>
<name>
<surname>He</surname>
<given-names>T.</given-names>
</name>
<name>
<surname>Wu</surname>
<given-names>H.</given-names>
</name>
<name>
<surname>Jia</surname>
<given-names>F.</given-names>
</name>
<name>
<surname>Sun</surname>
<given-names>L.</given-names>
</name>
</person-group> (<year>2018</year>). &#x201c;<article-title>A comparison study of a high order system with different ADRC control strategies</article-title>,&#x201d; in <source>2018 37th Chinese control conference (CCC)</source>, <fpage>1</fpage>&#x2013;<lpage>6</lpage>. <pub-id pub-id-type="doi">10.23919/ChiCC.2018.8483196</pub-id>
</mixed-citation>
</ref>
<ref id="B42">
<mixed-citation publication-type="journal">
<person-group person-group-type="author">
<name>
<surname>Wu</surname>
<given-names>J.</given-names>
</name>
<name>
<surname>Meng</surname>
<given-names>J.</given-names>
</name>
<name>
<surname>Lin</surname>
<given-names>M.</given-names>
</name>
<name>
<surname>Wang</surname>
<given-names>W.</given-names>
</name>
<name>
<surname>Wu</surname>
<given-names>J.</given-names>
</name>
<name>
<surname>Stroe</surname>
<given-names>D.-I.</given-names>
</name>
</person-group> (<year>2024</year>). <article-title>Lithium-ion battery state of health estimation using a hybrid model with electrochemical impedance spectroscopy</article-title>. <source>Reliab. Eng. and Syst. Saf.</source> <volume>252</volume>, <fpage>110450</fpage>. <pub-id pub-id-type="doi">10.1016/j.ress.2024.110450</pub-id>
</mixed-citation>
</ref>
<ref id="B43">
<mixed-citation publication-type="journal">
<person-group person-group-type="author">
<name>
<surname>Wu</surname>
<given-names>L.</given-names>
</name>
<name>
<surname>Gong</surname>
<given-names>Y.</given-names>
</name>
<name>
<surname>Song</surname>
<given-names>S.</given-names>
</name>
<name>
<surname>Yang</surname>
<given-names>Z.</given-names>
</name>
<name>
<surname>Wang</surname>
<given-names>X.</given-names>
</name>
<name>
<surname>Fu</surname>
<given-names>L.</given-names>
</name>
<etal/>
</person-group> (<year>2025</year>). <article-title>Low-frequency characteristics and fractional-order impedance model for electrochemical impedance spectroscopy in large-capacity lithium-ion batteries</article-title>. <source>J. Energy Storage</source> <volume>134</volume>, <fpage>118222</fpage>. <pub-id pub-id-type="doi">10.1016/j.est.2025.118222</pub-id>
</mixed-citation>
</ref>
<ref id="B44">
<mixed-citation publication-type="journal">
<person-group person-group-type="author">
<name>
<surname>Xinze</surname>
<given-names>H.</given-names>
</name>
<name>
<surname>Ruan</surname>
<given-names>X.</given-names>
</name>
<name>
<surname>Zhang</surname>
<given-names>L.</given-names>
</name>
<name>
<surname>Liu</surname>
<given-names>F.</given-names>
</name>
</person-group> (<year>2022</year>). <article-title>Second harmonic current reduction schemes for DC&#x2013;DC converter in two-stage PFC converters</article-title>. <source>IEEE Trans. Power Electron.</source> <volume>37</volume>, <fpage>332</fpage>&#x2013;<lpage>343</lpage>. <pub-id pub-id-type="doi">10.1109/TPEL.2021.3099170</pub-id>
</mixed-citation>
</ref>
<ref id="B45">
<mixed-citation publication-type="journal">
<person-group person-group-type="author">
<name>
<surname>Xuan</surname>
<given-names>M.</given-names>
</name>
<name>
<surname>Mei</surname>
<given-names>J.</given-names>
</name>
<name>
<surname>Tang</surname>
<given-names>X.</given-names>
</name>
<name>
<surname>Jiang</surname>
<given-names>J.</given-names>
</name>
<name>
<surname>Sun</surname>
<given-names>C.</given-names>
</name>
<name>
<surname>Song</surname>
<given-names>K.</given-names>
</name>
</person-group> (<year>2024</year>). <article-title>The degradation prediction of proton exchange membrane fuel cell performance based on a transformer model</article-title>. <source>Energies</source> <volume>17</volume>, <fpage>3050</fpage>. <pub-id pub-id-type="doi">10.3390/en17123050</pub-id>
</mixed-citation>
</ref>
<ref id="B46">
<mixed-citation publication-type="journal">
<person-group person-group-type="author">
<name>
<surname>Xuan</surname>
<given-names>M.</given-names>
</name>
<name>
<surname>Sun</surname>
<given-names>C.</given-names>
</name>
<name>
<surname>Mei</surname>
<given-names>J.</given-names>
</name>
<name>
<surname>Tang</surname>
<given-names>X.</given-names>
</name>
<name>
<surname>Hasanien</surname>
<given-names>H. M.</given-names>
</name>
<name>
<surname>Jiang</surname>
<given-names>J.</given-names>
</name>
<etal/>
</person-group> (<year>2025a</year>). <article-title>Fuel cell life prediction considering the recovery phenomenon of reversible voltage loss</article-title>. <source>J. Power Sources</source> <volume>625</volume>, <fpage>235634</fpage>. <pub-id pub-id-type="doi">10.1016/j.jpowsour.2024.235634</pub-id>
</mixed-citation>
</ref>
<ref id="B47">
<mixed-citation publication-type="journal">
<person-group person-group-type="author">
<name>
<surname>Xuan</surname>
<given-names>M.</given-names>
</name>
<name>
<surname>Liu</surname>
<given-names>M.</given-names>
</name>
<name>
<surname>Mei</surname>
<given-names>J.</given-names>
</name>
<name>
<surname>Xiang</surname>
<given-names>L.</given-names>
</name>
<name>
<surname>Sergey</surname>
<given-names>G.</given-names>
</name>
<name>
<surname>Hany M</surname>
<given-names>H.</given-names>
</name>
<etal/>
</person-group> (<year>2025b</year>). <article-title>Polarization loss decomposition-based online health state estimation for proton exchange membrane fuel cells</article-title>. <source>Int. J. Hydrog. Energy</source> <volume>157</volume>, <fpage>150162</fpage>. <pub-id pub-id-type="doi">10.1016/j.ijhydene.2025.150162</pub-id>
</mixed-citation>
</ref>
<ref id="B48">
<mixed-citation publication-type="journal">
<person-group person-group-type="author">
<name>
<surname>Yu</surname>
<given-names>D.</given-names>
</name>
<name>
<surname>Li</surname>
<given-names>X.</given-names>
</name>
<name>
<surname>Zhou</surname>
<given-names>F.</given-names>
</name>
<name>
<surname>Simon Araya</surname>
<given-names>S.</given-names>
</name>
<name>
<surname>Sahlin</surname>
<given-names>S. L.</given-names>
</name>
<name>
<surname>Subramanian</surname>
<given-names>V. R.</given-names>
</name>
<etal/>
</person-group> (<year>2025</year>). <article-title>Online fault detection and isolation of PEMFC based on EIS and data-driven methods: feasibility study and prospects</article-title>. <source>J. Power Sources</source> <volume>641</volume>, <fpage>236915</fpage>. <pub-id pub-id-type="doi">10.1016/j.jpowsour.2025.236915</pub-id>
</mixed-citation>
</ref>
<ref id="B49">
<mixed-citation publication-type="journal">
<person-group person-group-type="author">
<name>
<surname>Yue</surname>
<given-names>M.</given-names>
</name>
<name>
<surname>Lambert</surname>
<given-names>H.</given-names>
</name>
<name>
<surname>Pahon</surname>
<given-names>E.</given-names>
</name>
<name>
<surname>Roche</surname>
<given-names>R.</given-names>
</name>
<name>
<surname>Jemei</surname>
<given-names>S.</given-names>
</name>
<name>
<surname>Hissel</surname>
<given-names>D.</given-names>
</name>
</person-group> (<year>2021</year>). <article-title>Hydrogen energy systems: a critical review of technologies, applications, trends and challenges</article-title>. <source>Renew. Sustain. Energy Rev.</source> <volume>146</volume>, <fpage>111180</fpage>. <pub-id pub-id-type="doi">10.1016/j.rser.2021.111180</pub-id>
</mixed-citation>
</ref>
<ref id="B50">
<mixed-citation publication-type="journal">
<person-group person-group-type="author">
<name>
<surname>Yue</surname>
<given-names>Z.</given-names>
</name>
<name>
<surname>Hussein</surname>
<given-names>O.</given-names>
</name>
<name>
<surname>Laghrouche</surname>
<given-names>S.</given-names>
</name>
<name>
<surname>Hilairet</surname>
<given-names>M.</given-names>
</name>
<name>
<surname>Djerdir</surname>
<given-names>A.</given-names>
</name>
</person-group> (<year>2021</year>). <article-title>A novel second-order sliding mode control of hybrid fuel cell/super capacitors power system considering the degradation of the fuel cell</article-title>. <source>Energy Convers. Manag.</source> <volume>229</volume>, <fpage>113766</fpage>. <pub-id pub-id-type="doi">10.1016/j.enconman.2020.113766</pub-id>
</mixed-citation>
</ref>
<ref id="B51">
<mixed-citation publication-type="journal">
<person-group person-group-type="author">
<name>
<surname>Zahra Amatoul</surname>
<given-names>F.</given-names>
</name>
<name>
<surname>Er-raki</surname>
<given-names>M.</given-names>
</name>
</person-group> (<year>2023</year>). <article-title>Modeling and simulation of electrical generation systems based on PEM fuel cell-boost converter using a closed loop PI controller</article-title>. <source>Energy Rep.</source> <volume>9</volume>, <fpage>296</fpage>&#x2013;<lpage>308</lpage>. <pub-id pub-id-type="doi">10.1016/j.egyr.2023.08.055</pub-id>
</mixed-citation>
</ref>
<ref id="B52">
<mixed-citation publication-type="journal">
<person-group person-group-type="author">
<name>
<surname>Zhang</surname>
<given-names>X.</given-names>
</name>
<name>
<surname>Wang</surname>
<given-names>B.</given-names>
</name>
<name>
<surname>Luo</surname>
<given-names>B.</given-names>
</name>
<name>
<surname>Zhu</surname>
<given-names>Y.</given-names>
</name>
<name>
<surname>Chasen</surname>
<given-names>T.</given-names>
</name>
<name>
<surname>Bao</surname>
<given-names>Z.</given-names>
</name>
<etal/>
</person-group> (<year>2025</year>). <article-title>Elucidating the electrochemical impedance spectroscopy characteristics of PEM fuel cells <italic>via</italic> A quasi-two-dimensional mechanism model</article-title>. <source>Fuel Cells</source> <volume>25</volume>, <fpage>70038</fpage>. <pub-id pub-id-type="doi">10.1002/fuce.70038</pub-id>
</mixed-citation>
</ref>
<ref id="B53">
<mixed-citation publication-type="journal">
<person-group person-group-type="author">
<name>
<surname>Zhang</surname>
<given-names>W.</given-names>
</name>
<name>
<surname>Sun</surname>
<given-names>C.</given-names>
</name>
<name>
<surname>Alharbi</surname>
<given-names>M.</given-names>
</name>
<name>
<surname>Hasanien</surname>
<given-names>H. M.</given-names>
</name>
<name>
<surname>Song</surname>
<given-names>K.</given-names>
</name>
</person-group> (<year>2025</year>). <article-title>A voltage-power self-coordinated control system on the load-side of storage and distributed generation inverters in distribution grid</article-title>. <source>Ain Shams Eng. J.</source> <volume>16</volume>, <fpage>103480</fpage>. <pub-id pub-id-type="doi">10.1016/j.asej.2025.103480</pub-id>
</mixed-citation>
</ref>
<ref id="B54">
<mixed-citation publication-type="journal">
<person-group person-group-type="author">
<name>
<surname>Zhou</surname>
<given-names>J.</given-names>
</name>
<name>
<surname>Jiang</surname>
<given-names>J.</given-names>
</name>
<name>
<surname>Fan</surname>
<given-names>F.</given-names>
</name>
<name>
<surname>Sun</surname>
<given-names>C.</given-names>
</name>
<name>
<surname>Dong</surname>
<given-names>Z.</given-names>
</name>
<name>
<surname>Kai</surname>
<given-names>S.</given-names>
</name>
</person-group> (<year>2024</year>). <article-title>Real-time impedance detection for PEM fuel cell based on TAB converter voltage perturbation</article-title>. <source>Energies</source> <volume>17</volume>, <fpage>4320</fpage>. <pub-id pub-id-type="doi">10.3390/en17174320</pub-id>
</mixed-citation>
</ref>
<ref id="B55">
<mixed-citation publication-type="journal">
<person-group person-group-type="author">
<name>
<surname>Zhu</surname>
<given-names>Y.</given-names>
</name>
<name>
<surname>Liao</surname>
<given-names>K.</given-names>
</name>
<name>
<surname>Yang</surname>
<given-names>J.</given-names>
</name>
<name>
<surname>He</surname>
<given-names>Z.</given-names>
</name>
</person-group> (<year>2025</year>). <article-title>Coordinated voltage fluctuation suppression strategy for MPET in hybrid AC/DC distribution network based on dynamic control mode switch</article-title>. <source>IEEE Trans. Sustain. Energy</source> <volume>16</volume>, <fpage>735</fpage>&#x2013;<lpage>751</lpage>. <pub-id pub-id-type="doi">10.1109/TSTE.2024.3482699</pub-id>
</mixed-citation>
</ref>
<ref id="B56">
<mixed-citation publication-type="journal">
<person-group person-group-type="author">
<name>
<surname>Zhuo</surname>
<given-names>S.</given-names>
</name>
<name>
<surname>Jin</surname>
<given-names>S.</given-names>
</name>
<name>
<surname>Liu</surname>
<given-names>X.</given-names>
</name>
<name>
<surname>Bai</surname>
<given-names>H.</given-names>
</name>
<name>
<surname>Yigeng</surname>
<given-names>H.</given-names>
</name>
<name>
<surname>Gao</surname>
<given-names>F.</given-names>
</name>
</person-group> (<year>2024</year>). <article-title>Robust voltage control with resonant extended state observer for hybrid fuel cell system</article-title>. <source>IEEE Trans. Power Electron.</source> <volume>39</volume>, <fpage>5462</fpage>&#x2013;<lpage>5472</lpage>. <pub-id pub-id-type="doi">10.1109/TPEL.2024.3367907</pub-id>
</mixed-citation>
</ref>
</ref-list>
<fn-group>
<fn fn-type="custom" custom-type="edited-by">
<p>
<bold>Edited by:</bold> <ext-link ext-link-type="uri" xlink:href="https://loop.frontiersin.org/people/131277/overview">Daniel Zanetti De Florio</ext-link>, Federal University of ABC, Brazil</p>
</fn>
<fn fn-type="custom" custom-type="reviewed-by">
<p>
<bold>Reviewed by:</bold> <ext-link ext-link-type="uri" xlink:href="https://loop.frontiersin.org/people/2690804/overview">Amr Refky</ext-link>, Al-Azhar University, Egypt</p>
<p>
<ext-link ext-link-type="uri" xlink:href="https://loop.frontiersin.org/people/3366076/overview">Mangaiyarkarasi Padmanaaban</ext-link>, Indian Institute of Technology Madras, India</p>
</fn>
</fn-group>
<glossary>
<def-list>
<title>Nomenclature</title>
<def-item>
<term id="G1-fenrg.2026.1731457">
<inline-formula id="inf170">
<mml:math id="m195">
<mml:mrow>
<mml:msub>
<mml:mi mathvariant="bold-italic">C</mml:mi>
<mml:mi mathvariant="bold">b</mml:mi>
</mml:msub>
</mml:mrow>
</mml:math>
</inline-formula>
</term>
<def>
<p>The capacitor at the output of the bidirectional converter, &#x3bc;F</p>
</def>
</def-item>
<def-item>
<term id="G2-fenrg.2026.1731457">
<inline-formula id="inf171">
<mml:math id="m196">
<mml:mrow>
<mml:msub>
<mml:mi mathvariant="bold-italic">C</mml:mi>
<mml:mrow>
<mml:mi mathvariant="bold">f</mml:mi>
<mml:mi mathvariant="bold">c</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi mathvariant="bold">m</mml:mi>
</mml:mrow>
</mml:msub>
</mml:mrow>
</mml:math>
</inline-formula>
</term>
<def>
<p>The capacitor at the output of the <italic>m</italic>th boost converter, &#x3bc;F</p>
</def>
</def-item>
<def-item>
<term id="G3-fenrg.2026.1731457">
<inline-formula id="inf172">
<mml:math id="m197">
<mml:mrow>
<mml:msub>
<mml:mi mathvariant="bold-italic">D</mml:mi>
<mml:mrow>
<mml:mi mathvariant="bold">b</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi mathvariant="bold">m</mml:mi>
</mml:mrow>
</mml:msub>
</mml:mrow>
</mml:math>
</inline-formula>
</term>
<def>
<p>The <italic>m</italic>th diode in the bidirectional changer</p>
</def>
</def-item>
<def-item>
<term id="G4-fenrg.2026.1731457">
<inline-formula id="inf173">
<mml:math id="m198">
<mml:mrow>
<mml:msub>
<mml:mi mathvariant="bold-italic">D</mml:mi>
<mml:mrow>
<mml:mi mathvariant="bold">f</mml:mi>
<mml:mi mathvariant="bold">c</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi mathvariant="bold">m</mml:mi>
</mml:mrow>
</mml:msub>
</mml:mrow>
</mml:math>
</inline-formula>
</term>
<def>
<p>The diode of the <italic>m</italic>th boost converter</p>
</def>
</def-item>
<def-item>
<term id="G5-fenrg.2026.1731457">
<inline-formula id="inf174">
<mml:math id="m199">
<mml:mrow>
<mml:msub>
<mml:mi mathvariant="bold-italic">d</mml:mi>
<mml:mrow>
<mml:mi mathvariant="bold">b</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi mathvariant="bold">m</mml:mi>
</mml:mrow>
</mml:msub>
</mml:mrow>
</mml:math>
</inline-formula>
</term>
<def>
<p>The duty cycle value of the switch <inline-formula id="inf175">
<mml:math id="m200">
<mml:mrow>
<mml:msub>
<mml:mi>S</mml:mi>
<mml:mrow>
<mml:mi mathvariant="normal">b</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi mathvariant="normal">m</mml:mi>
</mml:mrow>
</mml:msub>
</mml:mrow>
</mml:math>
</inline-formula>
</p>
</def>
</def-item>
<def-item>
<term id="G6-fenrg.2026.1731457">
<inline-formula id="inf176">
<mml:math id="m201">
<mml:mrow>
<mml:msub>
<mml:mi mathvariant="bold-italic">d</mml:mi>
<mml:mrow>
<mml:mi mathvariant="bold">f</mml:mi>
<mml:mi mathvariant="bold">c</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi mathvariant="bold">m</mml:mi>
</mml:mrow>
</mml:msub>
</mml:mrow>
</mml:math>
</inline-formula>
</term>
<def>
<p>The duty cycle value of the switch <inline-formula id="inf177">
<mml:math id="m202">
<mml:mrow>
<mml:msub>
<mml:mi>S</mml:mi>
<mml:mrow>
<mml:mtext>fc</mml:mtext>
<mml:mo>,</mml:mo>
<mml:mi mathvariant="normal">m</mml:mi>
</mml:mrow>
</mml:msub>
</mml:mrow>
</mml:math>
</inline-formula>
</p>
</def>
</def-item>
<def-item>
<term id="G7-fenrg.2026.1731457">
<inline-formula id="inf178">
<mml:math id="m203">
<mml:mrow>
<mml:msub>
<mml:mi mathvariant="bold-italic">E</mml:mi>
<mml:mtext mathvariant="bold">Cb</mml:mtext>
</mml:msub>
</mml:mrow>
</mml:math>
</inline-formula>
</term>
<def>
<p>The energy stored in the capacitor <inline-formula id="inf179">
<mml:math id="m204">
<mml:mrow>
<mml:msub>
<mml:mi>C</mml:mi>
<mml:mi mathvariant="normal">b</mml:mi>
</mml:msub>
</mml:mrow>
</mml:math>
</inline-formula>
</p>
</def>
</def-item>
<def-item>
<term id="G8-fenrg.2026.1731457">
<bold>
<italic>h</italic>
</bold>
</term>
<def>
<p>The total disturbance of the system</p>
</def>
</def-item>
<def-item>
<term id="G9-fenrg.2026.1731457">
<inline-formula id="inf180">
<mml:math id="m205">
<mml:mrow>
<mml:msub>
<mml:mi mathvariant="bold-italic">I</mml:mi>
<mml:mrow>
<mml:mi mathvariant="bold">f</mml:mi>
<mml:mi mathvariant="bold">c</mml:mi>
<mml:mo>_</mml:mo>
<mml:mi mathvariant="bold">r</mml:mi>
<mml:mi mathvariant="bold">e</mml:mi>
<mml:mi mathvariant="bold">f</mml:mi>
<mml:mo>_</mml:mo>
<mml:mi mathvariant="bold">a</mml:mi>
<mml:mi mathvariant="bold">c</mml:mi>
</mml:mrow>
</mml:msub>
</mml:mrow>
</mml:math>
</inline-formula>
</term>
<def>
<p>The AC reference current at the fuel cell output, A</p>
</def>
</def-item>
<def-item>
<term id="G10-fenrg.2026.1731457">
<inline-formula id="inf181">
<mml:math id="m206">
<mml:mrow>
<mml:msub>
<mml:mi mathvariant="bold-italic">I</mml:mi>
<mml:mrow>
<mml:mi mathvariant="bold">f</mml:mi>
<mml:mi mathvariant="bold">c</mml:mi>
<mml:mo>_</mml:mo>
<mml:mi mathvariant="bold">r</mml:mi>
<mml:mi mathvariant="bold">e</mml:mi>
<mml:mi mathvariant="bold">f</mml:mi>
<mml:mo>_</mml:mo>
<mml:mi mathvariant="bold">d</mml:mi>
<mml:mi mathvariant="bold">c</mml:mi>
</mml:mrow>
</mml:msub>
</mml:mrow>
</mml:math>
</inline-formula>
</term>
<def>
<p>The DC reference current at the fuel cell output, A</p>
</def>
</def-item>
<def-item>
<term id="G11-fenrg.2026.1731457">
<inline-formula id="inf182">
<mml:math id="m207">
<mml:mrow>
<mml:msub>
<mml:mi mathvariant="bold-italic">I</mml:mi>
<mml:mrow>
<mml:mi mathvariant="bold">f</mml:mi>
<mml:mi mathvariant="bold">c</mml:mi>
<mml:mo>_</mml:mo>
<mml:mi mathvariant="bold">r</mml:mi>
<mml:mi mathvariant="bold">e</mml:mi>
<mml:mi mathvariant="bold">f</mml:mi>
</mml:mrow>
</mml:msub>
</mml:mrow>
</mml:math>
</inline-formula>
</term>
<def>
<p>The reference current at the fuel cell output, A</p>
</def>
</def-item>
<def-item>
<term id="G12-fenrg.2026.1731457">
<inline-formula id="inf183">
<mml:math id="m208">
<mml:mrow>
<mml:msub>
<mml:mi mathvariant="bold-italic">I</mml:mi>
<mml:mrow>
<mml:mi mathvariant="bold">L</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi mathvariant="bold">b</mml:mi>
<mml:mo>_</mml:mo>
<mml:mi mathvariant="bold">r</mml:mi>
<mml:mi mathvariant="bold">e</mml:mi>
<mml:mi mathvariant="bold">f</mml:mi>
</mml:mrow>
</mml:msub>
</mml:mrow>
</mml:math>
</inline-formula>
</term>
<def>
<p>The reference value of the battery inductor current, A</p>
</def>
</def-item>
<def-item>
<term id="G13-fenrg.2026.1731457">
<inline-formula id="inf184">
<mml:math id="m209">
<mml:mrow>
<mml:msub>
<mml:mi mathvariant="bold-italic">i</mml:mi>
<mml:mtext mathvariant="bold">bus</mml:mtext>
</mml:msub>
</mml:mrow>
</mml:math>
</inline-formula>
</term>
<def>
<p>The current at the busbar, A</p>
</def>
</def-item>
<def-item>
<term id="G14-fenrg.2026.1731457">
<inline-formula id="inf185">
<mml:math id="m210">
<mml:mrow>
<mml:msub>
<mml:mi mathvariant="bold-italic">i</mml:mi>
<mml:mrow>
<mml:mi mathvariant="bold">b</mml:mi>
<mml:mi mathvariant="bold">u</mml:mi>
<mml:mi mathvariant="bold">s</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi mathvariant="bold">b</mml:mi>
</mml:mrow>
</mml:msub>
</mml:mrow>
</mml:math>
</inline-formula>
</term>
<def>
<p>The current value of the battery input bus, A</p>
</def>
</def-item>
<def-item>
<term id="G15-fenrg.2026.1731457">
<inline-formula id="inf186">
<mml:math id="m211">
<mml:mrow>
<mml:msub>
<mml:mi mathvariant="bold-italic">i</mml:mi>
<mml:mrow>
<mml:mi mathvariant="bold">b</mml:mi>
<mml:mi mathvariant="bold">u</mml:mi>
<mml:mi mathvariant="bold">s</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi mathvariant="bold">f</mml:mi>
<mml:mi mathvariant="bold">c</mml:mi>
</mml:mrow>
</mml:msub>
</mml:mrow>
</mml:math>
</inline-formula>
</term>
<def>
<p>The total current injected into the bus by the FCs, A</p>
</def>
</def-item>
<def-item>
<term id="G16-fenrg.2026.1731457">
<inline-formula id="inf187">
<mml:math id="m212">
<mml:mrow>
<mml:msub>
<mml:mi mathvariant="bold-italic">i</mml:mi>
<mml:mrow>
<mml:mi mathvariant="bold">b</mml:mi>
<mml:mi mathvariant="bold">u</mml:mi>
<mml:mi mathvariant="bold">s</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi mathvariant="bold">f</mml:mi>
<mml:mi mathvariant="bold">c</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi mathvariant="bold">m</mml:mi>
</mml:mrow>
</mml:msub>
</mml:mrow>
</mml:math>
</inline-formula>
</term>
<def>
<p>The current value of the mth FC, that is input to the bus, A</p>
</def>
</def-item>
<def-item>
<term id="G17-fenrg.2026.1731457">
<inline-formula id="inf188">
<mml:math id="m213">
<mml:mrow>
<mml:msub>
<mml:mi mathvariant="bold-italic">i</mml:mi>
<mml:mrow>
<mml:mi mathvariant="bold">f</mml:mi>
<mml:mi mathvariant="bold">c</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi mathvariant="bold">m</mml:mi>
</mml:mrow>
</mml:msub>
</mml:mrow>
</mml:math>
</inline-formula>
</term>
<def>
<p>The output current of the <italic>m</italic>th fuel cell, A</p>
</def>
</def-item>
<def-item>
<term id="G18-fenrg.2026.1731457">
<inline-formula id="inf189">
<mml:math id="m214">
<mml:mrow>
<mml:msub>
<mml:mi mathvariant="bold-italic">i</mml:mi>
<mml:mrow>
<mml:mi mathvariant="bold">L</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi mathvariant="bold">b</mml:mi>
</mml:mrow>
</mml:msub>
</mml:mrow>
</mml:math>
</inline-formula>
</term>
<def>
<p>The output current of the battery, A</p>
</def>
</def-item>
<def-item>
<term id="G19-fenrg.2026.1731457">
<inline-formula id="inf190">
<mml:math id="m215">
<mml:mrow>
<mml:msub>
<mml:mi mathvariant="bold-italic">L</mml:mi>
<mml:mi mathvariant="bold">b</mml:mi>
</mml:msub>
</mml:mrow>
</mml:math>
</inline-formula>
</term>
<def>
<p>The inductance value at the input of the bidirectional converter, mH</p>
</def>
</def-item>
<def-item>
<term id="G20-fenrg.2026.1731457">
<inline-formula id="inf191">
<mml:math id="m216">
<mml:mrow>
<mml:msub>
<mml:mi mathvariant="bold-italic">L</mml:mi>
<mml:mrow>
<mml:mi mathvariant="bold">f</mml:mi>
<mml:mi mathvariant="bold">c</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi mathvariant="bold">m</mml:mi>
</mml:mrow>
</mml:msub>
</mml:mrow>
</mml:math>
</inline-formula>
</term>
<def>
<p>The inductor at the input of the <italic>m</italic>th boost converter, mH</p>
</def>
</def-item>
<def-item>
<term id="G21-fenrg.2026.1731457">
<inline-formula id="inf192">
<mml:math id="m217">
<mml:mrow>
<mml:msub>
<mml:mi mathvariant="bold-italic">P</mml:mi>
<mml:mi mathvariant="bold">b</mml:mi>
</mml:msub>
</mml:mrow>
</mml:math>
</inline-formula>
</term>
<def>
<p>The power provided by the lithium battery, W</p>
</def>
</def-item>
<def-item>
<term id="G22-fenrg.2026.1731457">
<inline-formula id="inf193">
<mml:math id="m218">
<mml:mrow>
<mml:msub>
<mml:mi mathvariant="bold-italic">P</mml:mi>
<mml:mtext mathvariant="bold">bus</mml:mtext>
</mml:msub>
</mml:mrow>
</mml:math>
</inline-formula>
</term>
<def>
<p>The load power on the bus,W</p>
</def>
</def-item>
<def-item>
<term id="G23-fenrg.2026.1731457">
<inline-formula id="inf194">
<mml:math id="m219">
<mml:mrow>
<mml:msub>
<mml:mi mathvariant="bold-italic">P</mml:mi>
<mml:mrow>
<mml:mi mathvariant="bold">b</mml:mi>
<mml:mi mathvariant="bold">u</mml:mi>
<mml:mi mathvariant="bold">s</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi mathvariant="bold">b</mml:mi>
</mml:mrow>
</mml:msub>
</mml:mrow>
</mml:math>
</inline-formula>
</term>
<def>
<p>The output power of the converter corresponding to the lithium battery, W</p>
</def>
</def-item>
<def-item>
<term id="G24-fenrg.2026.1731457">
<inline-formula id="inf195">
<mml:math id="m220">
<mml:mrow>
<mml:msub>
<mml:mi mathvariant="bold-italic">P</mml:mi>
<mml:mrow>
<mml:mi mathvariant="bold">b</mml:mi>
<mml:mi mathvariant="bold">u</mml:mi>
<mml:mi mathvariant="bold">s</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi mathvariant="bold">f</mml:mi>
<mml:mi mathvariant="bold">c</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi mathvariant="bold">m</mml:mi>
</mml:mrow>
</mml:msub>
</mml:mrow>
</mml:math>
</inline-formula>
</term>
<def>
<p>The output power of the converter corresponding to the <italic>m</italic>th FC, W</p>
</def>
</def-item>
<def-item>
<term id="G25-fenrg.2026.1731457">
<inline-formula id="inf196">
<mml:math id="m221">
<mml:mrow>
<mml:msub>
<mml:mi mathvariant="bold-italic">P</mml:mi>
<mml:mrow>
<mml:mi mathvariant="bold">f</mml:mi>
<mml:mi mathvariant="bold">b</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi mathvariant="bold">m</mml:mi>
</mml:mrow>
</mml:msub>
</mml:mrow>
</mml:math>
</inline-formula>
</term>
<def>
<p>The power from the FC in the MSFC that enters the battery terminal via the bus, W</p>
</def>
</def-item>
<def-item>
<term id="G26-fenrg.2026.1731457">
<inline-formula id="inf197">
<mml:math id="m222">
<mml:mrow>
<mml:msub>
<mml:mi mathvariant="bold-italic">P</mml:mi>
<mml:mtext mathvariant="bold">loss</mml:mtext>
</mml:msub>
</mml:mrow>
</mml:math>
</inline-formula>
</term>
<def>
<p>The other power losses, W</p>
</def>
</def-item>
<def-item>
<term id="G27-fenrg.2026.1731457">
<inline-formula id="inf198">
<mml:math id="m223">
<mml:mrow>
<mml:msub>
<mml:mi mathvariant="bold-italic">P</mml:mi>
<mml:mi mathvariant="bold">r</mml:mi>
</mml:msub>
</mml:mrow>
</mml:math>
</inline-formula>
</term>
<def>
<p>The energy loss due to the lumped parasitic resistance in the bidirectional converter, W</p>
</def>
</def-item>
<def-item>
<term id="G28-fenrg.2026.1731457">
<inline-formula id="inf199">
<mml:math id="m224">
<mml:mrow>
<mml:msub>
<mml:mi mathvariant="bold-italic">r</mml:mi>
<mml:mi mathvariant="bold">b</mml:mi>
</mml:msub>
</mml:mrow>
</mml:math>
</inline-formula>
</term>
<def>
<p>The lumped parasitic resistance in the bidirectional converter, &#x3a9;</p>
</def>
</def-item>
<def-item>
<term id="G29-fenrg.2026.1731457">
<inline-formula id="inf200">
<mml:math id="m225">
<mml:mrow>
<mml:msub>
<mml:mi mathvariant="bold-italic">r</mml:mi>
<mml:mrow>
<mml:mi mathvariant="bold">f</mml:mi>
<mml:mi mathvariant="bold">c</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi mathvariant="bold">m</mml:mi>
</mml:mrow>
</mml:msub>
</mml:mrow>
</mml:math>
</inline-formula>
</term>
<def>
<p>The equivalent lumped parasitic resistance of the converter corresponding to the <italic>m</italic>th FC, &#x3a9;</p>
</def>
</def-item>
<def-item>
<term id="G30-fenrg.2026.1731457">
<inline-formula id="inf201">
<mml:math id="m226">
<mml:mrow>
<mml:msub>
<mml:mi mathvariant="bold-italic">S</mml:mi>
<mml:mrow>
<mml:mi mathvariant="bold">b</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi mathvariant="bold">m</mml:mi>
</mml:mrow>
</mml:msub>
</mml:mrow>
</mml:math>
</inline-formula>
</term>
<def>
<p>The <italic>m</italic>th switch in the bidirectional converter</p>
</def>
</def-item>
<def-item>
<term id="G31-fenrg.2026.1731457">
<inline-formula id="inf202">
<mml:math id="m227">
<mml:mrow>
<mml:msub>
<mml:mi mathvariant="bold-italic">S</mml:mi>
<mml:mrow>
<mml:mi mathvariant="bold">f</mml:mi>
<mml:mi mathvariant="bold">c</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi mathvariant="bold">m</mml:mi>
</mml:mrow>
</mml:msub>
</mml:mrow>
</mml:math>
</inline-formula>
</term>
<def>
<p>The switch of the <italic>m</italic>th boost converter</p>
</def>
</def-item>
<def-item>
<term id="G32-fenrg.2026.1731457">
<inline-formula id="inf203">
<mml:math id="m228">
<mml:mrow>
<mml:msub>
<mml:mi mathvariant="bold-italic">T</mml:mi>
<mml:mrow>
<mml:mi mathvariant="bold-italic">c</mml:mi>
<mml:mi mathvariant="bold-italic">i</mml:mi>
</mml:mrow>
</mml:msub>
</mml:mrow>
</mml:math>
</inline-formula>
</term>
<def>
<p>The time constant of the inner loop control, ms</p>
</def>
</def-item>
<def-item>
<term id="G33-fenrg.2026.1731457">
<inline-formula id="inf204">
<mml:math id="m229">
<mml:mrow>
<mml:msub>
<mml:mi mathvariant="bold-italic">v</mml:mi>
<mml:mi mathvariant="bold">b</mml:mi>
</mml:msub>
</mml:mrow>
</mml:math>
</inline-formula>
</term>
<def>
<p>The output voltage of the lithium battery, V</p>
</def>
</def-item>
<def-item>
<term id="G34-fenrg.2026.1731457">
<inline-formula id="inf205">
<mml:math id="m230">
<mml:mrow>
<mml:msub>
<mml:mi mathvariant="bold-italic">v</mml:mi>
<mml:mtext mathvariant="bold">bus</mml:mtext>
</mml:msub>
</mml:mrow>
</mml:math>
</inline-formula>
</term>
<def>
<p>Busbar voltage, V</p>
</def>
</def-item>
<def-item>
<term id="G35-fenrg.2026.1731457">
<inline-formula id="inf206">
<mml:math id="m231">
<mml:mrow>
<mml:msub>
<mml:mi mathvariant="bold-italic">v</mml:mi>
<mml:mtext mathvariant="bold">Cb</mml:mtext>
</mml:msub>
</mml:mrow>
</mml:math>
</inline-formula>
</term>
<def>
<p>The output voltage of the bidirectional converter,V</p>
</def>
</def-item>
<def-item>
<term id="G36-fenrg.2026.1731457">
<inline-formula id="inf207">
<mml:math id="m232">
<mml:mrow>
<mml:msub>
<mml:mi mathvariant="bold-italic">v</mml:mi>
<mml:msub>
<mml:mi mathvariant="bold">C</mml:mi>
<mml:mrow>
<mml:mi mathvariant="bold">f</mml:mi>
<mml:mi mathvariant="bold">c</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi mathvariant="bold">m</mml:mi>
</mml:mrow>
</mml:msub>
</mml:msub>
</mml:mrow>
</mml:math>
</inline-formula>
</term>
<def>
<p>The output voltage of the <italic>m</italic>th boost converter, V</p>
</def>
</def-item>
<def-item>
<term id="G37-fenrg.2026.1731457">
<inline-formula id="inf208">
<mml:math id="m233">
<mml:mrow>
<mml:msub>
<mml:mi mathvariant="bold-italic">v</mml:mi>
<mml:mrow>
<mml:mi mathvariant="bold">f</mml:mi>
<mml:mi mathvariant="bold">c</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi mathvariant="bold">m</mml:mi>
</mml:mrow>
</mml:msub>
</mml:mrow>
</mml:math>
</inline-formula>
</term>
<def>
<p>The output voltage of the <italic>m</italic>th fuel cell, V</p>
</def>
</def-item>
</def-list>
<def-list>
<title>Greek letters</title>
<def-item>
<term id="G38-fenrg.2026.1731457">
<inline-formula id="inf209">
<mml:math id="m234">
<mml:mrow>
<mml:mi mathvariant="bold-italic">&#x3b1;</mml:mi>
</mml:mrow>
</mml:math>
</inline-formula>
</term>
<def>
<p>The safety factor</p>
</def>
</def-item>
<def-item>
<term id="G39-fenrg.2026.1731457">
<bold>
<italic>&#x3b2;</italic>
</bold>
</term>
<def>
<p>The observer gains to be determined</p>
</def>
</def-item>
<def-item>
<term id="G40-fenrg.2026.1731457">
<inline-formula id="inf210">
<mml:math id="m235">
<mml:mrow>
<mml:msub>
<mml:mi mathvariant="bold-italic">&#x3c9;</mml:mi>
<mml:mi mathvariant="bold-italic">c</mml:mi>
</mml:msub>
</mml:mrow>
</mml:math>
</inline-formula>
</term>
<def>
<p>The cutoff frequency</p>
</def>
</def-item>
<def-item>
<term id="G41-fenrg.2026.1731457">
<inline-formula id="inf211">
<mml:math id="m236">
<mml:mrow>
<mml:msub>
<mml:mi mathvariant="bold-italic">&#x3c9;</mml:mi>
<mml:mi mathvariant="bold">o</mml:mi>
</mml:msub>
</mml:mrow>
</mml:math>
</inline-formula>
</term>
<def>
<p>The observer bandwidth</p>
</def>
</def-item>
<def-item>
<term id="G42-fenrg.2026.1731457">
<inline-formula id="inf212">
<mml:math id="m237">
<mml:mrow>
<mml:msub>
<mml:mi mathvariant="bold-italic">&#x3c9;</mml:mi>
<mml:mi mathvariant="bold-italic">r</mml:mi>
</mml:msub>
</mml:mrow>
</mml:math>
</inline-formula>
</term>
<def>
<p>The resonance frequency</p>
</def>
</def-item>
</def-list>
<def-list>
<title>Abbreviations</title>
<def-item>
<term id="G43-fenrg.2026.1731457">
<bold>ADRC</bold>
</term>
<def>
<p>Active disturbance rejection control</p>
</def>
</def-item>
<def-item>
<term id="G44-fenrg.2026.1731457">
<bold>EIS</bold>
</term>
<def>
<p>Electrochemical impedance spectroscopy</p>
</def>
</def-item>
<def-item>
<term id="G45-fenrg.2026.1731457">
<bold>ESO</bold>
</term>
<def>
<p>Extended state observer</p>
</def>
</def-item>
<def-item>
<term id="G46-fenrg.2026.1731457">
<bold>ESO-ADRC</bold>
</term>
<def>
<p>Active disturbance rejection control based on ESO</p>
</def>
</def-item>
<def-item>
<term id="G47-fenrg.2026.1731457">
<bold>FC</bold>
</term>
<def>
<p>Fuel cell</p>
</def>
</def-item>
<def-item>
<term id="G48-fenrg.2026.1731457">
<bold>MRESO</bold>
</term>
<def>
<p>Multi-resonant ESO</p>
</def>
</def-item>
<def-item>
<term id="G49-fenrg.2026.1731457">
<bold>MRESO-ADRC</bold>
</term>
<def>
<p>Active disturbance rejection control based on MRESO</p>
</def>
</def-item>
<def-item>
<term id="G50-fenrg.2026.1731457">
<bold>MSFC</bold>
</term>
<def>
<p>Multi-stack fuel cell</p>
</def>
</def-item>
<def-item>
<term id="G51-fenrg.2026.1731457">
<bold>PEMFCs</bold>
</term>
<def>
<p>Proton exchange membrane fuel cells</p>
</def>
</def-item>
<def-item>
<term id="G52-fenrg.2026.1731457">
<bold>PI</bold>
</term>
<def>
<p>Proportional integral</p>
</def>
</def-item>
<def-item>
<term id="G53-fenrg.2026.1731457">
<bold>PR</bold>
</term>
<def>
<p>Proportional resonant</p>
</def>
</def-item>
</def-list>
</glossary>
</back>
</article>
