<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<!DOCTYPE article PUBLIC "-//NLM//DTD Journal Publishing DTD v2.3 20070202//EN" "journalpublishing.dtd">
<article xmlns:mml="http://www.w3.org/1998/Math/MathML" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" article-type="research-article" dtd-version="2.3" xml:lang="EN">
<front>
<journal-meta>
<journal-id journal-id-type="publisher-id">Front. Mar. Sci.</journal-id>
<journal-title>Frontiers in Marine Science</journal-title>
<abbrev-journal-title abbrev-type="pubmed">Front. Mar. Sci.</abbrev-journal-title>
<issn pub-type="epub">2296-7745</issn>
<publisher>
<publisher-name>Frontiers Media S.A.</publisher-name>
</publisher>
</journal-meta>
<article-meta>
<article-id pub-id-type="doi">10.3389/fmars.2025.1597408</article-id>
<article-categories>
<subj-group subj-group-type="heading">
<subject>Marine Science</subject>
<subj-group>
<subject>Original Research</subject>
</subj-group>
</subj-group>
</article-categories>
<title-group>
<article-title>Stability analysis of semi-submersible floating wind turbines based on gyro-turbine coupled dynamics model</article-title>
</title-group>
<contrib-group>
<contrib contrib-type="author">
<name>
<surname>Wang</surname>
<given-names>Wancheng</given-names>
</name>
<uri xlink:href="https://loop.frontiersin.org/people/3010185/overview"/>
<role content-type="https://credit.niso.org/contributor-roles/writing-review-editing/"/>
<role content-type="https://credit.niso.org/contributor-roles/writing-original-draft/"/>
</contrib>
<contrib contrib-type="author" corresp="yes">
<name>
<surname>Li</surname>
<given-names>Hao</given-names>
</name>
<xref ref-type="author-notes" rid="fn001">
<sup>*</sup>
</xref>
<role content-type="https://credit.niso.org/contributor-roles/writing-review-editing/"/>
<role content-type="https://credit.niso.org/contributor-roles/writing-original-draft/"/>
</contrib>
<contrib contrib-type="author">
<name>
<surname>Yang</surname>
<given-names>Yihang</given-names>
</name>
<role content-type="https://credit.niso.org/contributor-roles/writing-original-draft/"/>
<role content-type="https://credit.niso.org/contributor-roles/writing-review-editing/"/>
</contrib>
<contrib contrib-type="author">
<name>
<surname>Sheng</surname>
<given-names>Kai</given-names>
</name>
<role content-type="https://credit.niso.org/contributor-roles/writing-review-editing/"/>
<role content-type="https://credit.niso.org/contributor-roles/writing-original-draft/"/>
</contrib>
<contrib contrib-type="author">
<name>
<surname>Chen</surname>
<given-names>Lijing</given-names>
</name>
<role content-type="https://credit.niso.org/contributor-roles/writing-original-draft/"/>
<role content-type="https://credit.niso.org/contributor-roles/writing-review-editing/"/>
</contrib>
</contrib-group>
<aff id="aff1">
<institution>Hohai University</institution>, <addr-line>Nanjing</addr-line>,&#xa0;<country>China</country>
</aff>
<author-notes>
<fn fn-type="edited-by">
<p>Edited by: Shuaishuai Wang, Norwegian University of Science and Technology, Norway</p>
</fn>
<fn fn-type="edited-by">
<p>Reviewed by: Giovanni Bracco, Polytechnic University of Turin, Italy</p>
<p>Xiangheng Feng, Windey Energy Technology Group Co., Ltd, China</p>
</fn>
<fn fn-type="corresp" id="fn001">
<p>*Correspondence: Hao Li, <email xlink:href="mailto:lh_2303@163.com">lh_2303@163.com</email>
</p>
</fn>
</author-notes>
<pub-date pub-type="epub">
<day>30</day>
<month>06</month>
<year>2025</year>
</pub-date>
<pub-date pub-type="collection">
<year>2025</year>
</pub-date>
<volume>12</volume>
<elocation-id>1597408</elocation-id>
<history>
<date date-type="received">
<day>21</day>
<month>03</month>
<year>2025</year>
</date>
<date date-type="accepted">
<day>10</day>
<month>06</month>
<year>2025</year>
</date>
</history>
<permissions>
<copyright-statement>Copyright &#xa9; 2025 Wang, Li, Yang, Sheng and Chen</copyright-statement>
<copyright-year>2025</copyright-year>
<copyright-holder>Wang, Li, Yang, Sheng and Chen</copyright-holder>
<license xlink:href="http://creativecommons.org/licenses/by/4.0/">
<p>This is an open-access article distributed under the terms of the Creative Commons Attribution License (CC BY). The use, distribution or reproduction in other forums is permitted, provided the original author(s) and the copyright owner(s) are credited and that the original publication in this journal is cited, in accordance with accepted academic practice. No use, distribution or reproduction is permitted which does not comply with these terms.</p>
</license>
</permissions>
<abstract>
<p>The significant motion response of semi-submersible floating offshore wind turbines in marine environments poses challenges for platform stability control and power generation efficiency. Traditional stabilization methods demonstrate limitations in response speed and control effectiveness under complex sea conditions. This paper develops a comprehensive 12-degree-of-freedom coupled dynamics model that integrates platform motion, tower flexibility, rotor dynamics, and gyroscopic stabilization systems. By incorporating the gyro-stabilization system, the stability control of the platform&#x2019;s pitch and roll motions is significantly improved. The model employs the Kane method, which comprehensively considers the coupling effects between the wind turbine, platform, and gyro, providing a higher precision dynamic response simulation. Based on this model, an innovative PSO-optimized fuzzy control strategy is proposed, utilizing intelligent particle swarm optimization algorithms to adjust controller parameters for optimal performance under various environmental conditions. Simulation results demonstrate that the proposed active control strategy offers significant advantages, achieving up to 37.56% pitch angle RMS vibration suppression and 44.23% tower-top displacement RMS vibration suppression under still water conditions, with peak suppression rates of 21.45% and 27.77% respectively under normal sea conditions, while maintaining 39.04% and 24.58% peak suppression rates in extreme sea conditions. In random sea conditions, the peak suppression rates remain at 38.16% and 17.83% respectively. This study significantly improves platform stability and structural load characteristics through the modeling of the gyro-stabilization system and the use of PSO-optimized fuzzy control, providing a reliable technical solution for floating wind turbine applications in complex marine environments.</p>
</abstract>
<kwd-group>
<kwd>floating offshore wind turbine</kwd>
<kwd>gyroscopic stabilization</kwd>
<kwd>coupled dynamics model</kwd>
<kwd>particle swarm optimization</kwd>
<kwd>fuzzy control</kwd>
<kwd>adaptive control</kwd>
</kwd-group>
<contract-num rid="cn001">2022YFB4201303</contract-num>
<contract-sponsor id="cn001">National Key Research and Development Program of China<named-content content-type="fundref-id">10.13039/501100012166</named-content>
</contract-sponsor>
<counts>
<fig-count count="12"/>
<table-count count="8"/>
<equation-count count="28"/>
<ref-count count="17"/>
<page-count count="19"/>
<word-count count="10428"/>
</counts>
<custom-meta-wrap>
<custom-meta>
<meta-name>section-in-acceptance</meta-name>
<meta-value>Ocean Solutions</meta-value>
</custom-meta>
</custom-meta-wrap>
</article-meta>
</front>
<body>
<sec id="s1" sec-type="intro">
<label>1</label>
<title>Introduction</title>
<p>In recent years, the offshore wind power industry has developed rapidly. According to the &#x201c;2024 Global Offshore Wind Report&#x201d; released by the Global Wind Energy Council (GWEC), the newly installed capacity of global offshore wind power reached 10.8 gigawatts in 2023, achieving an annual growth rate of 24% (<xref ref-type="bibr" rid="B3">Global Wind Energy Council (GWEC), 2024</xref>). As offshore wind power development advances from nearshore to deep-sea areas, floating offshore wind power provides a highly promising solution for developing and utilizing deep-sea wind energy resources. After years of development, by the end of 2022, the global total installed capacity of floating offshore wind power had reached 245.4 megawatts (<xref ref-type="bibr" rid="B2">Cao et&#xa0;al., 2023</xref>). As offshore wind power expands into deeper and more distant marine areas, floating wind power has become an important option for developing deep-sea wind energy resources due to its flexible deployment advantages. However, floating wind power systems face significant motion response issues in the marine environment, particularly as the swaying motion of the platform not only affects power generation efficiency but may also lead to structural fatigue damage, making research on motion reduction technology for floating wind turbine platforms particularly significant (<xref ref-type="bibr" rid="B1">Bai et&#xa0;al., 2025</xref>).</p>
<p>Currently, motion reduction control for floating wind turbines mainly employs technologies such as variable pitch control, tuned mass dampers (TMD), ballast water regulation systems, and mooring systems. Namik and colleagues designed independent blade pitch controllers and anti-disturbance control systems, effectively reducing the adverse effects of wind and waves on FOWT performance (<xref ref-type="bibr" rid="B10">Namik and Stol, 2011</xref>). Junbo Liu et&#xa0;al. regulated platform motion by controlling torque in a floating offshore wind turbine model with coupled dynamics (<xref ref-type="bibr" rid="B9">Liu et&#xa0;al., 2025</xref>). Regarding TMD applications, research by Lakner and Rotea indicates that unoptimized TMDs only achieve suppression rates of around 10% for vibration displacement and loads (<xref ref-type="bibr" rid="B6">Lackner and Rotea, 2011</xref>). Wang et&#xa0;al. significantly optimized the attitude control of the barge-type wind turbine using MTMD (<xref ref-type="bibr" rid="B15">Wang et&#xa0;al., 2022</xref>). Additionally, active ballast water regulation systems achieve stability control by adjusting the platform&#x2019;s center of gravity in real-time, but these systems suffer from a 30&#x2013;45 second lag in response, making it difficult to promptly address rapidly changing sea conditions (<xref ref-type="bibr" rid="B16">Yu et&#xa0;al., 2023</xref>). Passive mooring systems, while able to suppress low-frequency motion through nonlinear spring characteristics, have limited effectiveness when dealing with disturbances in the wave frequency range (0.1-1.25Hz) (<xref ref-type="bibr" rid="B7">Lee and Ong, 2025</xref>). Overall, these traditional motion reduction methods still face issues such as slow response times and limited control effectiveness when dealing with complex sea conditions.</p>
<p>Gyroscopic stabilizers, as mature roll reduction devices for ships, have achieved remarkable results in the field of ocean engineering. Research shows that vessels equipped with Halcyon twin-flywheel gyroscopic stabilizers can reduce rolling amplitude by 82% (<xref ref-type="bibr" rid="B13">Perez et&#xa0;al., 2009</xref>); similarly, the Anti-Rolling Gyro (ARG) applied by Mitsubishi on yachts has achieved a 70% reduction in rolling amplitude (<xref ref-type="bibr" rid="B14">Takeuchi et&#xa0;al., 2011</xref>). This significant roll reduction effect has inspired research on applying gyroscopic stabilization technology to floating wind turbines. Experimental research by Palraj and Rajamanickam on barge-type floating wind turbines has achieved breakthrough progress: under static turbine conditions, gyroscopic stabilizers can achieve up to 60% reduction in rolling amplitude, while maintaining a 54% roll reduction effect under irregular wave conditions (<xref ref-type="bibr" rid="B12">Palraj and Rajamanickam, 2020</xref>). Their follow-up research further verified the effectiveness of this technology under dynamic conditions, showing that even with the turbine in operation (rotor speeds ranging from 60rpm to 114rpm), gyroscopic stabilizers could still achieve 57%-67% reduction in rolling amplitude and 39%-54% reduction in pitching amplitude (<xref ref-type="bibr" rid="B11">Palraj, 2021</xref>). These experimental results strongly demonstrate the application potential of gyroscopic stabilization technology for floating wind turbines. However, advancing this technology toward engineering applications still faces significant challenges: due to the rotational effects of the wind turbine rotor, nonlinear characteristics of aerodynamic loads, and the coupling effects between the platform and gyroscope, the system exhibits highly complex dynamic behavior. This makes establishing an accurate coupled dynamic model of the turbine-platform-gyroscope system a key research challenge, as only by accurately describing the dynamic response characteristics of the system under wind and wave loads can a reliable theoretical foundation be provided for designing gyroscopic stabilization control strategies.</p>
<p>Research on gyroscopic stabilization control has evolved from traditional PID control strategies to more sophisticated control methods. Perez and Steinmann proposed a state feedback-based gyroscopic control method (<xref ref-type="bibr" rid="B13">Perez et&#xa0;al., 2009</xref>), but this approach has limitations when dealing with nonlinear and time-varying characteristics. Recently, Hu et&#xa0;al. proposed a real-time control strategy based on Model Predictive Control (MPC) that significantly improved ship roll reduction by considering wave memory effects and introducing dual gyroscopic stabilizers (<xref ref-type="bibr" rid="B5">Hu et&#xa0;al., 2023</xref>). They further developed the MPC control strategy, simultaneously optimizing ship motion, safety, and energy consumption, achieving better control performance under various sea conditions (<xref ref-type="bibr" rid="B4">Hu et&#xa0;al., 2024</xref>). Li et&#xa0;al. developed an adaptive controller based on variable gain control strategies for port rescue tugboats, verifying the effectiveness of this control strategy under irregular wave conditions by innovatively establishing a comprehensive hydrodynamic model of the gyroscope-ship-wave system (<xref ref-type="bibr" rid="B8">Li et&#xa0;al., 2022</xref>). However, when these control methods are applied to floating wind turbines, they face greater challenges: first, wind turbine systems exhibit stronger nonlinear characteristics than ships, especially when considering wind turbine rotor dynamics, aerodynamic loads, and gyroscopic coupling effects; second, traditional control strategies struggle to adapt to the changing dynamic characteristics of wind turbine systems under different operating conditions, and the tuning of control parameters lacks systematic methodology; finally, even advanced MPC control strategies may face issues with model accuracy and real-time performance when handling strongly nonlinear coupled systems. These limitations prompt us to consider more suitable intelligent control methods for handling nonlinear systems.</p>
<p>For the complex nonlinear characteristics of floating wind turbine-gyroscope coupled systems, fuzzy control has emerged as a potential solution due to its advantages of not relying on precise mathematical models and having strong robustness. Zhang et&#xa0;al. applied an adaptive fuzzy controller in dual-gyroscope balance control, effectively improving system performance by using adaptive control to enhance disturbance resistance while utilizing fuzzy control for decoupling (<xref ref-type="bibr" rid="B17">Zhang et&#xa0;al., 2022</xref>). However, traditional fuzzy control still faces several challenges in practical applications: first, the formulation of fuzzy rules often relies on expert experience, making it difficult to guarantee optimal control effects in complex and variable sea conditions; second, the membership function parameters of fuzzy control are usually determined by trial and error, lacking systematic optimization methods; finally, when dealing with strongly coupled nonlinear systems, it is difficult to adapt to dynamic changes in system parameters by relying solely on fixed fuzzy rule bases. These limitations make traditional fuzzy control less than ideal for roll reduction control of floating wind turbines in complex marine environments. Therefore, it is necessary to introduce intelligent optimization algorithms to optimize the parameters of the fuzzy controller and improve its control performance under complex working conditions.</p>
<p>Based on the above analysis, this paper proposes a novel modeling and control method based on gyroscope-wind turbine coupling. In terms of modeling, a 12-degree-of-freedom fully coupled dynamic model including platform six-degree-of-freedom motion, tower flexible deformation, and roll-reducing gyroscope was constructed using the Kane method, which also has excellent control performance compared to the traditional OpenFAST model. For control, a PSO-optimized fuzzy control strategy was designed, achieving precise system control in complex sea conditions through online condition recognition and parameter adaptive adjustment.</p>
<p>The main contributions of this paper include:</p>
<p>First establishment of a complete gyroscope-wind turbine coupled dynamic model, achieving dynamic transfer of control torque through generalized coordinate coupling, with model prediction accuracy verified by comparison with OpenFAST software;</p>
<p>Proposal of a novel PSO-fuzzy control framework that achieves platform roll reduction control by optimizing controller parameters, with up to 47.66% RMS vibration suppression rate under still water conditions;</p>
<p>Development of an online parameter optimization method based on condition recognition, which achieves dynamic adjustment of control parameters through real-time environmental parameter measurement and feature extraction, significantly enhancing system adaptability in complex sea conditions.</p>
<p>This paper consists of five chapters: Chapter One elaborates on the research background and significance, reviews the current status of roll reduction control for floating wind turbines, and points out the limitations of existing research. Chapter Two establishes a complete gyroscope-wind turbine coupled dynamic model, including system coordinate definition, kinematic analysis, load modeling, etc., and verifies the model accuracy through comparison with OpenFAST software. Chapter Three designs a PSO-optimized fuzzy control system, including controller structure design, PSO parameter optimization methods, and online condition recognition strategies. Chapter Four systematically evaluates the performance of the proposed control scheme through simulation experiments of four typical working conditions. Chapter Five summarizes the work of the entire paper and provides an outlook on future research directions.</p>
</sec>
<sec id="s2">
<label>2</label>
<title>Gyroscopic wind turbine full coupling dynamic model</title>
<sec id="s2_1">
<label>2.1</label>
<title>Gyroscopic anti-rolling system</title>
<p>The gyroscopic anti-rolling system is a motion stabilizing device based on the principle of conservation of angular momentum, which has achieved remarkable results in the field of ships. In recent years, it has gradually been applied to floating offshore wind turbine platforms. This section introduces the basic structure, working principle and parameter design of the gyroscopic anti-rolling system.</p>
<p>The typical gyroscopic anti-shudder system mainly consists of the following components:</p>
<list list-type="order">
<list-item>
<p>Flywheel assembly: Comprising a high-speed rotating gyro flywheel and its driving motor, it is the core component for generating angular momentum. The flywheel is usually made of high-strength steel or composite materials to achieve a balance between high rotational inertia and light weight.</p>
</list-item>
<list-item>
<p>Precession support: The intermediate mechanism connecting the flywheel and the platform, allowing the flywheel to rotate controllably around the precession axis perpendicular to its own rotation axis.</p>
</list-item>
<list-item>
<p>Braking and control mechanism: Including hydraulic or electric brakes for controlling the precession motion, precession angle sensors, and control systems. In active gyro systems, this part also includes servo motors for actively generating control torques.</p>
</list-item>
<list-item>
<p>Support base: The foundation structure fixed on the platform, providing a stable installation base and transmitting torques.</p>
</list-item>
</list>
<p>The gyroscope damping system can be classified into two types based on the control method: passive and active. The precession axis of the passive gyroscope damping system is only equipped with damping devices (such as hydraulic dampers), and no additional energy input is required. When the platform sways, the gyroscope spontaneously generates precession motion, and the swaying energy is consumed by the damping devices. The passive system has a simple structure and high reliability, but its control effect is limited and cannot be adjusted. The active gyroscope damping system is equipped with servo motors on the precession axis, and can actively generate control torques. Based on the motion state of the platform, the control system calculates and outputs the optimal control torque in real time, significantly improving the damping effect and adaptability.</p>
<p>This study adopts an active gyroscopic anti-roll system with a dual-axis linkage and gyroscopic anti-roll arrangement. It combines the reliability of passive anti-roll with the efficiency of active control. Through the PSO-optimized fuzzy control strategy, the optimal anti-roll effect is achieved, effectively controlling the longitudinal and lateral roll of the platform. At the same time, factors such as system energy consumption and lifespan are also considered.</p>
<p>This study adopts the common circular ring thin-disc type gyro design. The material uses the most commonly used high-strength steel alloy, with a density of 7850 <inline-formula>
<mml:math display="inline" id="im1">
<mml:mrow>
<mml:mi>k</mml:mi>
<mml:mi>g</mml:mi>
<mml:mo>&#xb7;</mml:mo>
<mml:msup>
<mml:mi>m</mml:mi>
<mml:mn>3</mml:mn>
</mml:msup>
</mml:mrow>
</mml:math>
</inline-formula>. The outer diameter of the gyroscope is 4m, the inner diameter is 3m, and the thickness is 1.6m. Under these conditions, the weight of a single gyroscope is approximately 69t. Based on this, for the moment of inertia of the ring-shaped disc rotating around its active axis, the applicable formula is <xref ref-type="disp-formula" rid="eq1">Equation 1</xref>:</p>
<disp-formula id="eq1">
<label>(1)</label>
<mml:math display="block" id="M1">
<mml:mrow>
<mml:msub>
<mml:mi>I</mml:mi>
<mml:mrow>
<mml:mi>s</mml:mi>
<mml:mi>p</mml:mi>
<mml:mi>i</mml:mi>
<mml:mi>n</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mo>=</mml:mo>
<mml:mfrac>
<mml:mn>1</mml:mn>
<mml:mn>2</mml:mn>
</mml:mfrac>
<mml:mi>m</mml:mi>
<mml:mo>&#xd7;</mml:mo>
<mml:mo>(</mml:mo>
<mml:msubsup>
<mml:mi>R</mml:mi>
<mml:mn>1</mml:mn>
<mml:mn>2</mml:mn>
</mml:msubsup>
<mml:mo>+</mml:mo>
<mml:msubsup>
<mml:mi>R</mml:mi>
<mml:mn>2</mml:mn>
<mml:mn>2</mml:mn>
</mml:msubsup>
<mml:mo>)</mml:mo>
</mml:mrow>
</mml:math>
</disp-formula>
<p>Here, <inline-formula>
<mml:math display="inline" id="im2">
<mml:mi>m</mml:mi>
</mml:math>
</inline-formula> represents the mass of the circular disc, <inline-formula>
<mml:math display="inline" id="im3">
<mml:mrow>
<mml:msub>
<mml:mi>R</mml:mi>
<mml:mn>1</mml:mn>
</mml:msub>
</mml:mrow>
</mml:math>
</inline-formula> is the outer radius, and <inline-formula>
<mml:math display="inline" id="im4">
<mml:mrow>
<mml:msub>
<mml:mi>R</mml:mi>
<mml:mn>2</mml:mn>
</mml:msub>
</mml:mrow>
</mml:math>
</inline-formula> is the inner radius.</p>
<p>Substitute the known values and obtain <inline-formula>
<mml:math display="inline" id="im5">
<mml:mrow>
<mml:msub>
<mml:mi>I</mml:mi>
<mml:mrow>
<mml:mi>s</mml:mi>
<mml:mi>p</mml:mi>
<mml:mi>i</mml:mi>
<mml:mi>n</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mo>=</mml:mo>
<mml:mn>215625</mml:mn>
<mml:mi>k</mml:mi>
<mml:mi>g</mml:mi>
<mml:mo>&#xb7;</mml:mo>
<mml:msup>
<mml:mi>m</mml:mi>
<mml:mn>2</mml:mn>
</mml:msup>
</mml:mrow>
</mml:math>
</inline-formula>. This is a very large value, which also explains why this large-scale gyroscope device can provide a significant stabilizing effect in the offshore wind turbine stability system. A gyroscope with such a large moment of inertia, once rotating at high speed, can provide extremely strong angular momentum, effectively resisting external disturbing torques.</p>
<p>For the rotational inertia of the flywheel&#x2019;s oscillation axis, it is generally in a 1:2 ratio to the main axis. This is to set the rotational inertia of the oscillation axis <inline-formula>
<mml:math display="inline" id="im6">
<mml:mrow>
<mml:msub>
<mml:mi>I</mml:mi>
<mml:mrow>
<mml:mi>g</mml:mi>
<mml:mi>x</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mo>=</mml:mo>
<mml:msub>
<mml:mi>I</mml:mi>
<mml:mrow>
<mml:mi>g</mml:mi>
<mml:mi>y</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mo>=</mml:mo>
<mml:mn>107000</mml:mn>
<mml:mi>k</mml:mi>
<mml:mi>g</mml:mi>
<mml:mo>&#xb7;</mml:mo>
<mml:msup>
<mml:mi>m</mml:mi>
<mml:mn>2</mml:mn>
</mml:msup>
</mml:mrow>
</mml:math>
</inline-formula>.</p>
<p>After comprehensively considering the decoupling effect, energy consumption, structural strength and other factors, the rotational speed of the flywheel should be designed within a reasonable range. Here, the rotational speed of the flywheel is set at 1000 <italic>rpm</italic>. This can provide a relatively stable control effect while ensuring the safety and reliability of the system.</p>
<p>For this gyroscope system, its static radial load <inline-formula>
<mml:math display="inline" id="im7">
<mml:mrow>
<mml:msub>
<mml:mi>F</mml:mi>
<mml:mrow>
<mml:mi>r</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>s</mml:mi>
<mml:mi>t</mml:mi>
<mml:mi>a</mml:mi>
<mml:mi>t</mml:mi>
<mml:mi>i</mml:mi>
<mml:mi>c</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mo>=</mml:mo>
<mml:mi>m</mml:mi>
<mml:mi>g</mml:mi>
<mml:mo>=</mml:mo>
<mml:mn>676.9</mml:mn>
<mml:mi>k</mml:mi>
<mml:mi>N</mml:mi>
</mml:mrow>
</mml:math>
</inline-formula>, Gyroscope torque <inline-formula>
<mml:math display="inline" id="im8">
<mml:mrow>
<mml:msub>
<mml:mi>M</mml:mi>
<mml:mrow>
<mml:mi>g</mml:mi>
<mml:mi>y</mml:mi>
<mml:mi>r</mml:mi>
<mml:mi>o</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mo>=</mml:mo>
<mml:msub>
<mml:mi>I</mml:mi>
<mml:mrow>
<mml:mi>g</mml:mi>
<mml:mi>x</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mo>&#xd7;</mml:mo>
<mml:msub>
<mml:mi>w</mml:mi>
<mml:mrow>
<mml:mi>s</mml:mi>
<mml:mi>p</mml:mi>
<mml:mi>i</mml:mi>
<mml:mi>n</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mo>&#xd7;</mml:mo>
<mml:msub>
<mml:mi>&#x3a9;</mml:mi>
<mml:mrow>
<mml:mi>p</mml:mi>
<mml:mi>l</mml:mi>
<mml:mi>a</mml:mi>
<mml:mi>t</mml:mi>
<mml:mi>f</mml:mi>
<mml:mi>o</mml:mi>
<mml:mi>r</mml:mi>
<mml:mi>m</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mo>=</mml:mo>
<mml:mn>1120.5</mml:mn>
<mml:mi>k</mml:mi>
<mml:mi>N</mml:mi>
<mml:mo>&#xb7;</mml:mo>
<mml:mi>m</mml:mi>
</mml:mrow>
</mml:math>
</inline-formula>. Here, <inline-formula>
<mml:math display="inline" id="im9">
<mml:mrow>
<mml:msub>
<mml:mi>w</mml:mi>
<mml:mrow>
<mml:mi>s</mml:mi>
<mml:mi>p</mml:mi>
<mml:mi>i</mml:mi>
<mml:mi>n</mml:mi>
</mml:mrow>
</mml:msub>
</mml:mrow>
</mml:math>
</inline-formula> represents the rotational speed of the gyroscope. <inline-formula>
<mml:math display="inline" id="im10">
<mml:mrow>
<mml:msub>
<mml:mi>&#x3a9;</mml:mi>
<mml:mrow>
<mml:mi>p</mml:mi>
<mml:mi>l</mml:mi>
<mml:mi>a</mml:mi>
<mml:mi>t</mml:mi>
<mml:mi>f</mml:mi>
<mml:mi>o</mml:mi>
<mml:mi>r</mml:mi>
<mml:mi>m</mml:mi>
</mml:mrow>
</mml:msub>
</mml:mrow>
</mml:math>
</inline-formula> is platform maximum angular velocity, which is 0.1 rad/s based on the 10-second wave cycle. The bearing spacing is approximately 2 meters, then dynamic axial load <inline-formula>
<mml:math display="inline" id="im11">
<mml:mrow>
<mml:msub>
<mml:mi>F</mml:mi>
<mml:mrow>
<mml:mi>a</mml:mi>
<mml:mo>,</mml:mo>
<mml:mtext>&#x2009;</mml:mtext>
<mml:mi>d</mml:mi>
<mml:mi>y</mml:mi>
<mml:mi>n</mml:mi>
<mml:mi>a</mml:mi>
<mml:mi>m</mml:mi>
<mml:mi>i</mml:mi>
<mml:mi>c</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mo>=</mml:mo>
<mml:mfrac>
<mml:mrow>
<mml:msub>
<mml:mi>M</mml:mi>
<mml:mrow>
<mml:mi>g</mml:mi>
<mml:mi>y</mml:mi>
<mml:mi>r</mml:mi>
<mml:mi>o</mml:mi>
</mml:mrow>
</mml:msub>
</mml:mrow>
<mml:mrow>
<mml:msub>
<mml:mi>L</mml:mi>
<mml:mrow>
<mml:mi>b</mml:mi>
<mml:mi>e</mml:mi>
<mml:mi>a</mml:mi>
<mml:mi>r</mml:mi>
<mml:mi>i</mml:mi>
<mml:mi>n</mml:mi>
<mml:mi>g</mml:mi>
</mml:mrow>
</mml:msub>
</mml:mrow>
</mml:mfrac>
<mml:mo>=</mml:mo>
<mml:mn>560.3</mml:mn>
<mml:mi>k</mml:mi>
<mml:mi>N</mml:mi>
</mml:mrow>
</mml:math>
</inline-formula>.</p>
<p>Regarding centrifugal force is <xref ref-type="disp-formula" rid="eq2">Equation 2</xref>:</p>
<disp-formula id="eq2">
<label>(2)</label>
<mml:math display="block" id="M2">
<mml:mrow>
<mml:msub>
<mml:mi>F</mml:mi>
<mml:mrow>
<mml:mi>c</mml:mi>
<mml:mi>e</mml:mi>
<mml:mi>n</mml:mi>
<mml:mi>t</mml:mi>
<mml:mi>r</mml:mi>
<mml:mi>i</mml:mi>
<mml:mi>f</mml:mi>
<mml:mi>u</mml:mi>
<mml:mi>g</mml:mi>
<mml:mi>a</mml:mi>
<mml:mi>l</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mo>=</mml:mo>
<mml:mi>m</mml:mi>
<mml:mi>r</mml:mi>
<mml:msubsup>
<mml:mi>w</mml:mi>
<mml:mrow>
<mml:mi>p</mml:mi>
<mml:mi>r</mml:mi>
<mml:mi>e</mml:mi>
<mml:mi>c</mml:mi>
<mml:mi>e</mml:mi>
<mml:mi>s</mml:mi>
<mml:mi>s</mml:mi>
<mml:mi>i</mml:mi>
<mml:mi>o</mml:mi>
<mml:mi>n</mml:mi>
</mml:mrow>
<mml:mn>2</mml:mn>
</mml:msubsup>
</mml:mrow>
</mml:math>
</disp-formula>
<p>
<inline-formula>
<mml:math display="inline" id="im12">
<mml:mrow>
<mml:msub>
<mml:mi>w</mml:mi>
<mml:mrow>
<mml:mi>p</mml:mi>
<mml:mi>r</mml:mi>
<mml:mi>e</mml:mi>
<mml:mi>c</mml:mi>
<mml:mi>e</mml:mi>
<mml:mi>s</mml:mi>
<mml:mi>s</mml:mi>
<mml:mi>i</mml:mi>
<mml:mi>o</mml:mi>
<mml:mi>n</mml:mi>
</mml:mrow>
</mml:msub>
</mml:mrow>
</mml:math>
</inline-formula> is maximum precession angular velocity, assume it to be 0.05 rad/s, <inline-formula>
<mml:math display="inline" id="im13">
<mml:mi>r</mml:mi>
</mml:math>
</inline-formula> represents the radius of rotation.</p>
<p>Radial total load formula is <xref ref-type="disp-formula" rid="eq3">Equation 3</xref>:</p>
<disp-formula id="eq3">
<label>(3)</label>
<mml:math display="block" id="M3">
<mml:mrow>
<mml:msub>
<mml:mi>F</mml:mi>
<mml:mrow>
<mml:mi>r</mml:mi>
<mml:mo>,</mml:mo>
<mml:mtext>&#x2009;</mml:mtext>
<mml:mi>t</mml:mi>
<mml:mi>o</mml:mi>
<mml:mi>t</mml:mi>
<mml:mi>a</mml:mi>
<mml:mi>l</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mo>=</mml:mo>
<mml:msqrt>
<mml:mrow>
<mml:msubsup>
<mml:mi>F</mml:mi>
<mml:mrow>
<mml:mi>r</mml:mi>
<mml:mo>,</mml:mo>
<mml:mtext>&#x2009;</mml:mtext>
<mml:mi>s</mml:mi>
<mml:mi>t</mml:mi>
<mml:mi>a</mml:mi>
<mml:mi>t</mml:mi>
<mml:mi>i</mml:mi>
<mml:mi>c</mml:mi>
</mml:mrow>
<mml:mn>2</mml:mn>
</mml:msubsup>
<mml:mo>+</mml:mo>
<mml:msubsup>
<mml:mi>F</mml:mi>
<mml:mrow>
<mml:mi>c</mml:mi>
<mml:mi>e</mml:mi>
<mml:mi>n</mml:mi>
<mml:mi>t</mml:mi>
<mml:mi>r</mml:mi>
<mml:mi>i</mml:mi>
<mml:mi>f</mml:mi>
<mml:mi>u</mml:mi>
<mml:mi>g</mml:mi>
<mml:mi>a</mml:mi>
<mml:mi>l</mml:mi>
</mml:mrow>
<mml:mn>2</mml:mn>
</mml:msubsup>
</mml:mrow>
</mml:msqrt>
</mml:mrow>
</mml:math>
</disp-formula>
<p>Equivalent dynamic load is <xref ref-type="disp-formula" rid="eq4">Equation 4</xref>:</p>
<disp-formula id="eq4">
<label>(4)</label>
<mml:math display="block" id="M4">
<mml:mrow>
<mml:msub>
<mml:mi>F</mml:mi>
<mml:mrow>
<mml:mi>e</mml:mi>
<mml:mi>q</mml:mi>
<mml:mi>u</mml:mi>
<mml:mi>i</mml:mi>
<mml:mi>v</mml:mi>
<mml:mi>a</mml:mi>
<mml:mi>l</mml:mi>
<mml:mi>e</mml:mi>
<mml:mi>n</mml:mi>
<mml:mi>t</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mo>=</mml:mo>
<mml:msqrt>
<mml:mrow>
<mml:msubsup>
<mml:mi>F</mml:mi>
<mml:mrow>
<mml:mi>r</mml:mi>
<mml:mo>,</mml:mo>
<mml:mtext>&#x2009;</mml:mtext>
<mml:mi>t</mml:mi>
<mml:mi>o</mml:mi>
<mml:mi>t</mml:mi>
<mml:mi>a</mml:mi>
<mml:mi>l</mml:mi>
</mml:mrow>
<mml:mn>2</mml:mn>
</mml:msubsup>
<mml:mo>+</mml:mo>
<mml:msubsup>
<mml:mi>F</mml:mi>
<mml:mrow>
<mml:mi>a</mml:mi>
<mml:mo>,</mml:mo>
<mml:mtext>&#x2009;</mml:mtext>
<mml:mi>d</mml:mi>
<mml:mi>y</mml:mi>
<mml:mi>n</mml:mi>
<mml:mi>a</mml:mi>
<mml:mi>m</mml:mi>
<mml:mi>i</mml:mi>
<mml:mi>c</mml:mi>
</mml:mrow>
<mml:mn>2</mml:mn>
</mml:msubsup>
</mml:mrow>
</mml:msqrt>
</mml:mrow>
</mml:math>
</disp-formula>
<p>Substituting the values, we can obtain that the equivalent dynamic load <inline-formula>
<mml:math display="inline" id="im14">
<mml:mrow>
<mml:msub>
<mml:mi>F</mml:mi>
<mml:mrow>
<mml:mi>e</mml:mi>
<mml:mi>q</mml:mi>
<mml:mi>u</mml:mi>
<mml:mi>i</mml:mi>
<mml:mi>v</mml:mi>
<mml:mi>a</mml:mi>
<mml:mi>l</mml:mi>
<mml:mi>e</mml:mi>
<mml:mi>n</mml:mi>
<mml:mi>t</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mo>=</mml:mo>
<mml:mn>878.5</mml:mn>
<mml:mi>k</mml:mi>
<mml:mi>N</mml:mi>
</mml:mrow>
</mml:math>
</inline-formula>.</p>
<p>In actual engineering applications, the value can be selected as 1.5 times the equivalent load.</p>
<p>The power consumption of the control system mainly consists of the frictional torque of the bearings, air resistance, the precession control system, and the electrical system. The calculation process is omitted. It is concluded that the total power consumption of the dual-gyro anti-shudder system is approximately 304 kW, accounting for about 6% of the wind turbine&#x2019;s power, which is a relatively reasonable figure.</p>
<p>For semi-submersible floating wind turbine platforms, multiple gyroscopic decoupling devices are usually installed at the corner points or the center of gravity of the platform to achieve comprehensive control of the platform&#x2019;s roll and pitch motions.</p>
<p>When the floating platform is subjected to wave action and undergoes oscillation, the gyroscopic device will undergo precession motion within its internal frame. According to the law of conservation of angular momentum, the precession torque generated by the gyroscopic device is opposite to the oscillation direction of the platform, thereby applying an opposing torque to the platform and suppressing the oscillation motion. Through the cooperation of two counter-rotating gyroscopes, comprehensive control of the platform&#x2019;s oscillation motion can be achieved.</p>
<p>The total angular velocity of the gyroscope rotor consists of two parts: the motion of the platform and the motion of the gyroscope itself, as shown in <xref ref-type="disp-formula" rid="eq5">Equations 5</xref>, <xref ref-type="disp-formula" rid="eq6">6</xref>:</p>
<disp-formula id="eq5">
<label>(5)</label>
<mml:math display="block" id="M5">
<mml:mrow>
<mml:msub>
<mml:mstyle mathvariant="bold" mathsize="normal">
<mml:mi>&#x3c9;</mml:mi>
</mml:mstyle>
<mml:mrow>
<mml:mtext>gyro</mml:mtext>
<mml:mn>1</mml:mn>
</mml:mrow>
</mml:msub>
<mml:mo>=</mml:mo>
<mml:msub>
<mml:mstyle mathvariant="bold" mathsize="normal">
<mml:mi>&#x3c9;</mml:mi>
</mml:mstyle>
<mml:mi>F</mml:mi>
</mml:msub>
<mml:msub>
<mml:mn>1</mml:mn>
<mml:mtext>&#xa0;</mml:mtext>
</mml:msub>
<mml:mo>+</mml:mo>
<mml:msub>
<mml:mstyle mathvariant="bold" mathsize="normal">
<mml:mi>R</mml:mi>
</mml:mstyle>
<mml:mrow>
<mml:mn>01</mml:mn>
</mml:mrow>
</mml:msub>
<mml:msub>
<mml:mstyle mathvariant="bold" mathsize="normal">
<mml:mi>&#x3c9;</mml:mi>
</mml:mstyle>
<mml:mrow>
<mml:mtext>gyroself</mml:mtext>
<mml:mn>1</mml:mn>
</mml:mrow>
</mml:msub>
</mml:mrow>
</mml:math>
</disp-formula>
<disp-formula id="eq6">
<label>(6)</label>
<mml:math display="block" id="M6">
<mml:mrow>
<mml:msub>
<mml:mstyle mathvariant="bold" mathsize="normal">
<mml:mi>&#x3c9;</mml:mi>
</mml:mstyle>
<mml:mrow>
<mml:mtext>gyro</mml:mtext>
<mml:mn>2</mml:mn>
</mml:mrow>
</mml:msub>
<mml:mo>=</mml:mo>
<mml:msub>
<mml:mstyle mathvariant="bold" mathsize="normal">
<mml:mi>&#x3c9;</mml:mi>
</mml:mstyle>
<mml:mi>F</mml:mi>
</mml:msub>
<mml:msub>
<mml:mn>1</mml:mn>
<mml:mtext>&#xa0;</mml:mtext>
</mml:msub>
<mml:mo>+</mml:mo>
<mml:msub>
<mml:mstyle mathvariant="bold" mathsize="normal">
<mml:mi>R</mml:mi>
</mml:mstyle>
<mml:mrow>
<mml:mn>01</mml:mn>
</mml:mrow>
</mml:msub>
<mml:msub>
<mml:mstyle mathvariant="bold" mathsize="normal">
<mml:mi>&#x3c9;</mml:mi>
</mml:mstyle>
<mml:mrow>
<mml:mtext>gyroself</mml:mtext>
<mml:mn>2</mml:mn>
</mml:mrow>
</mml:msub>
</mml:mrow>
</mml:math>
</disp-formula>
<p>Here: <inline-formula>
<mml:math display="inline" id="im15">
<mml:mrow>
<mml:msub>
<mml:mstyle mathvariant="bold" mathsize="normal">
<mml:mi>&#x3c9;</mml:mi>
</mml:mstyle>
<mml:mrow>
<mml:mtext>gyroself</mml:mtext>
<mml:mn>1</mml:mn>
</mml:mrow>
</mml:msub>
<mml:mo>=</mml:mo>
<mml:mrow>
<mml:mo>[</mml:mo>
<mml:mrow>
<mml:mtable>
<mml:mtr>
<mml:mtd>
<mml:mtable columnalign="left">
<mml:mtr>
<mml:mtd>
<mml:msub>
<mml:mover accent="true">
<mml:mi>q</mml:mi>
<mml:mo>&#x2d9;</mml:mo>
</mml:mover>
<mml:mrow>
<mml:mtext>gyro</mml:mtext>
</mml:mrow>
</mml:msub>
</mml:mtd>
</mml:mtr>
<mml:mtr>
<mml:mtd>
<mml:mn>0</mml:mn>
</mml:mtd>
</mml:mtr>
<mml:mtr>
<mml:mtd>
<mml:msub>
<mml:mi>g</mml:mi>
<mml:mi>s</mml:mi>
</mml:msub>
</mml:mtd>
</mml:mtr>
</mml:mtable>
</mml:mtd>
</mml:mtr>
</mml:mtable>
</mml:mrow>
<mml:mo>]</mml:mo>
</mml:mrow>
</mml:mrow>
</mml:math>
</inline-formula>, <inline-formula>
<mml:math display="inline" id="im16">
<mml:mrow>
<mml:msub>
<mml:mstyle mathvariant="bold" mathsize="normal">
<mml:mi>&#x3c9;</mml:mi>
</mml:mstyle>
<mml:mrow>
<mml:mtext>gyroself</mml:mtext>
<mml:mn>2</mml:mn>
</mml:mrow>
</mml:msub>
<mml:mo>=</mml:mo>
<mml:mrow>
<mml:mo>[</mml:mo>
<mml:mrow>
<mml:mtable>
<mml:mtr>
<mml:mtd>
<mml:mtable columnalign="left">
<mml:mtr>
<mml:mtd>
<mml:mo>&#x2212;</mml:mo>
<mml:msub>
<mml:mover accent="true">
<mml:mi>q</mml:mi>
<mml:mo>&#x2d9;</mml:mo>
</mml:mover>
<mml:mrow>
<mml:mtext>gyro</mml:mtext>
</mml:mrow>
</mml:msub>
</mml:mtd>
</mml:mtr>
<mml:mtr>
<mml:mtd>
<mml:mn>0</mml:mn>
</mml:mtd>
</mml:mtr>
<mml:mtr>
<mml:mtd>
<mml:mo>&#x2212;</mml:mo>
<mml:msub>
<mml:mi>g</mml:mi>
<mml:mi>s</mml:mi>
</mml:msub>
</mml:mtd>
</mml:mtr>
</mml:mtable>
</mml:mtd>
</mml:mtr>
</mml:mtable>
</mml:mrow>
<mml:mo>]</mml:mo>
</mml:mrow>
</mml:mrow>
</mml:math>
</inline-formula>Here, <inline-formula>
<mml:math display="inline" id="im17">
<mml:mrow>
<mml:msub>
<mml:mover accent="true">
<mml:mi>q</mml:mi>
<mml:mo>&#x2d9;</mml:mo>
</mml:mover>
<mml:mrow>
<mml:mtext>gyro</mml:mtext>
</mml:mrow>
</mml:msub>
</mml:mrow>
</mml:math>
</inline-formula> represents the precession angular velocity, and <inline-formula>
<mml:math display="inline" id="im18">
<mml:mrow>
<mml:msub>
<mml:mi>g</mml:mi>
<mml:mi>s</mml:mi>
</mml:msub>
</mml:mrow>
</mml:math>
</inline-formula> represents the gyroscope&#x2019;s rotational speed.</p>
<p>The Kane method is adopted to model the gyroscope. The generalized inertia force of the gyroscope <inline-formula>
<mml:math display="inline" id="im19">
<mml:mrow>
<mml:msubsup>
<mml:mi>F</mml:mi>
<mml:mrow>
<mml:mi>g</mml:mi>
<mml:mi>y</mml:mi>
<mml:mi>r</mml:mi>
<mml:mi>o</mml:mi>
</mml:mrow>
<mml:mo>*</mml:mo>
</mml:msubsup>
</mml:mrow>
</mml:math>
</inline-formula> is expressed as <xref ref-type="disp-formula" rid="eq7">Equation 7</xref>:</p>
<disp-formula id="eq7">
<label>(7)</label>
<mml:math display="block" id="M7">
<mml:mtable>
<mml:mtr>
<mml:mtd>
<mml:msubsup>
<mml:mi>F</mml:mi>
<mml:mrow>
<mml:mi>g</mml:mi>
<mml:mi>y</mml:mi>
<mml:mi>r</mml:mi>
<mml:mi>o</mml:mi>
</mml:mrow>
<mml:mo>*</mml:mo>
</mml:msubsup>
<mml:mo>=</mml:mo>
<mml:msub>
<mml:mi>&#x3c9;</mml:mi>
<mml:mrow>
<mml:mi>g</mml:mi>
<mml:mi>y</mml:mi>
<mml:mi>r</mml:mi>
<mml:mi>o</mml:mi>
<mml:mo>_</mml:mo>
<mml:mi>r</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mo>&#xb7;</mml:mo>
<mml:mo>(</mml:mo>
<mml:mo>&#x2212;</mml:mo>
<mml:msub>
<mml:mi>I</mml:mi>
<mml:mrow>
<mml:mi>g</mml:mi>
<mml:mi>y</mml:mi>
<mml:mi>r</mml:mi>
<mml:mi>o</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mi>&#x3b1;</mml:mi>
<mml:mo>&#x2212;</mml:mo>
<mml:msub>
<mml:mi>&#x3c9;</mml:mi>
<mml:mrow>
<mml:mi>F</mml:mi>
<mml:mn>1</mml:mn>
</mml:mrow>
</mml:msub>
<mml:mo>&#xd7;</mml:mo>
<mml:msub>
<mml:mi>I</mml:mi>
<mml:mrow>
<mml:mi>g</mml:mi>
<mml:mi>y</mml:mi>
<mml:mi>r</mml:mi>
<mml:mi>o</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mo>&#xd7;</mml:mo>
<mml:msub>
<mml:mi>&#x3c9;</mml:mi>
<mml:mrow>
<mml:mi>F</mml:mi>
<mml:mn>1</mml:mn>
</mml:mrow>
</mml:msub>
<mml:mo>)</mml:mo>
</mml:mtd>
</mml:mtr>
<mml:mtr>
<mml:mtd>
<mml:mo>=</mml:mo>
<mml:msub>
<mml:mi>&#x3c9;</mml:mi>
<mml:mrow>
<mml:mi>g</mml:mi>
<mml:mi>y</mml:mi>
<mml:mi>r</mml:mi>
<mml:mi>o</mml:mi>
<mml:mo>_</mml:mo>
<mml:mi>r</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mo>&#xb7;</mml:mo>
<mml:mrow>
<mml:mo>[</mml:mo>
<mml:mrow>
<mml:mo>&#x2212;</mml:mo>
<mml:msub>
<mml:mi>I</mml:mi>
<mml:mrow>
<mml:mi>g</mml:mi>
<mml:mi>y</mml:mi>
<mml:mi>r</mml:mi>
<mml:mi>o</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mrow>
<mml:mo>(</mml:mo>
<mml:mrow>
<mml:mstyle displaystyle="true">
<mml:munderover>
<mml:mo>&#x2211;</mml:mo>
<mml:mrow>
<mml:mi>r</mml:mi>
<mml:mo>=</mml:mo>
<mml:mn>1</mml:mn>
</mml:mrow>
<mml:mrow>
<mml:mn>12</mml:mn>
</mml:mrow>
</mml:munderover>
<mml:mrow>
<mml:mfrac>
<mml:mrow>
<mml:mi>d</mml:mi>
<mml:msub>
<mml:mi>&#x3c9;</mml:mi>
<mml:mrow>
<mml:mi>g</mml:mi>
<mml:mi>y</mml:mi>
<mml:mi>r</mml:mi>
<mml:mi>o</mml:mi>
<mml:mo>_</mml:mo>
<mml:mi>r</mml:mi>
</mml:mrow>
</mml:msub>
</mml:mrow>
<mml:mrow>
<mml:mi>d</mml:mi>
<mml:mi>t</mml:mi>
</mml:mrow>
</mml:mfrac>
</mml:mrow>
</mml:mstyle>
<mml:msub>
<mml:mover accent="true">
<mml:mi>q</mml:mi>
<mml:mo>&#x2d9;</mml:mo>
</mml:mover>
<mml:mi>r</mml:mi>
</mml:msub>
<mml:mo>+</mml:mo>
<mml:mstyle displaystyle="true">
<mml:munderover>
<mml:mo>&#x2211;</mml:mo>
<mml:mrow>
<mml:mi>r</mml:mi>
<mml:mo>=</mml:mo>
<mml:mn>1</mml:mn>
</mml:mrow>
<mml:mrow>
<mml:mn>12</mml:mn>
</mml:mrow>
</mml:munderover>
<mml:mrow>
<mml:msub>
<mml:mi>&#x3c9;</mml:mi>
<mml:mrow>
<mml:mi>g</mml:mi>
<mml:mi>y</mml:mi>
<mml:mi>r</mml:mi>
<mml:mi>o</mml:mi>
<mml:mo>_</mml:mo>
<mml:mi>r</mml:mi>
</mml:mrow>
</mml:msub>
</mml:mrow>
</mml:mstyle>
<mml:msub>
<mml:mover accent="true">
<mml:mi>q</mml:mi>
<mml:mo>&#xa8;</mml:mo>
</mml:mover>
<mml:mi>r</mml:mi>
</mml:msub>
</mml:mrow>
<mml:mo>)</mml:mo>
</mml:mrow>
<mml:mo>&#x2212;</mml:mo>
<mml:msub>
<mml:mi>&#x3c9;</mml:mi>
<mml:mrow>
<mml:mi>F</mml:mi>
<mml:mn>1</mml:mn>
</mml:mrow>
</mml:msub>
<mml:mo>&#xd7;</mml:mo>
<mml:msub>
<mml:mi>I</mml:mi>
<mml:mrow>
<mml:mi>g</mml:mi>
<mml:mi>y</mml:mi>
<mml:mi>r</mml:mi>
<mml:mi>o</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mo>&#xd7;</mml:mo>
<mml:msub>
<mml:mi>&#x3c9;</mml:mi>
<mml:mrow>
<mml:mi>F</mml:mi>
<mml:mn>1</mml:mn>
</mml:mrow>
</mml:msub>
</mml:mrow>
<mml:mo>]</mml:mo>
</mml:mrow>
</mml:mtd>
</mml:mtr>
</mml:mtable>
</mml:math>
</disp-formula>
<p>Where <inline-formula>
<mml:math display="inline" id="im20">
<mml:mrow>
<mml:msub>
<mml:mi>&#x3c9;</mml:mi>
<mml:mrow>
<mml:mi>g</mml:mi>
<mml:mi>y</mml:mi>
<mml:mi>r</mml:mi>
<mml:mi>o</mml:mi>
<mml:mo>_</mml:mo>
<mml:mi>r</mml:mi>
</mml:mrow>
</mml:msub>
</mml:mrow>
</mml:math>
</inline-formula> is the angular velocity component of the gyroscope&#x2019;s r-th degree of freedom, <inline-formula>
<mml:math display="inline" id="im21">
<mml:mrow>
<mml:msub>
<mml:mi>I</mml:mi>
<mml:mrow>
<mml:mi>g</mml:mi>
<mml:mi>y</mml:mi>
<mml:mi>r</mml:mi>
<mml:mi>o</mml:mi>
</mml:mrow>
</mml:msub>
</mml:mrow>
</mml:math>
</inline-formula> is the rotational inertia matrix of the gyroscope, &#x3b1; is the angular acceleration vector, and <inline-formula>
<mml:math display="inline" id="im22">
<mml:mrow>
<mml:msub>
<mml:mi>&#x3c9;</mml:mi>
<mml:mrow>
<mml:mi>F</mml:mi>
<mml:mn>1</mml:mn>
</mml:mrow>
</mml:msub>
</mml:mrow>
</mml:math>
</inline-formula> is the angular velocity vector of the platform coordinate system.</p>
<p>The passive constraint moments acting on the gyroscope include the spring moment <inline-formula>
<mml:math display="inline" id="im23">
<mml:mrow>
<mml:msub>
<mml:mi>F</mml:mi>
<mml:mrow>
<mml:mi>g</mml:mi>
<mml:mi>y</mml:mi>
<mml:mi>r</mml:mi>
<mml:mi>o</mml:mi>
<mml:mi>K</mml:mi>
</mml:mrow>
</mml:msub>
</mml:mrow>
</mml:math>
</inline-formula> (<xref ref-type="disp-formula" rid="eq8">Equation 8</xref>):</p>
<disp-formula id="eq8">
<label>(8)</label>
<mml:math display="block" id="M8">
<mml:mrow>
<mml:msub>
<mml:mi>F</mml:mi>
<mml:mrow>
<mml:mi>g</mml:mi>
<mml:mi>y</mml:mi>
<mml:mi>r</mml:mi>
<mml:mi>o</mml:mi>
<mml:mi>K</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mo>=</mml:mo>
<mml:msub>
<mml:mi>R</mml:mi>
<mml:mrow>
<mml:mn>01</mml:mn>
</mml:mrow>
</mml:msub>
<mml:mrow>
<mml:mo>[</mml:mo>
<mml:mrow>
<mml:mtable>
<mml:mtr>
<mml:mtd>
<mml:mrow>
<mml:mo>&#x2212;</mml:mo>
<mml:msub>
<mml:mi>k</mml:mi>
<mml:mrow>
<mml:mi>g</mml:mi>
<mml:mi>y</mml:mi>
<mml:mi>r</mml:mi>
<mml:mi>o</mml:mi>
</mml:mrow>
</mml:msub>
<mml:msub>
<mml:mi>q</mml:mi>
<mml:mrow>
<mml:mi>g</mml:mi>
<mml:mi>y</mml:mi>
<mml:mi>r</mml:mi>
<mml:mi>o</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mo>(</mml:mo>
<mml:mi>t</mml:mi>
<mml:mo>)</mml:mo>
</mml:mrow>
</mml:mtd>
</mml:mtr>
<mml:mtr>
<mml:mtd>
<mml:mn>0</mml:mn>
</mml:mtd>
</mml:mtr>
<mml:mtr>
<mml:mtd>
<mml:mn>0</mml:mn>
</mml:mtd>
</mml:mtr>
</mml:mtable>
</mml:mrow>
<mml:mo>]</mml:mo>
</mml:mrow>
</mml:mrow>
</mml:math>
</disp-formula>
<p>Where <inline-formula>
<mml:math display="inline" id="im24">
<mml:mrow>
<mml:msub>
<mml:mi>k</mml:mi>
<mml:mrow>
<mml:mi>g</mml:mi>
<mml:mi>y</mml:mi>
<mml:mi>r</mml:mi>
<mml:mi>o</mml:mi>
</mml:mrow>
</mml:msub>
</mml:mrow>
</mml:math>
</inline-formula> is the spring moment coefficient, <inline-formula>
<mml:math display="inline" id="im25">
<mml:mrow>
<mml:msub>
<mml:mi>q</mml:mi>
<mml:mrow>
<mml:mi>g</mml:mi>
<mml:mi>y</mml:mi>
<mml:mi>r</mml:mi>
<mml:mi>o</mml:mi>
<mml:mrow>
<mml:mo>(</mml:mo>
<mml:mi>t</mml:mi>
<mml:mo>)</mml:mo>
</mml:mrow>
</mml:mrow>
</mml:msub>
</mml:mrow>
</mml:math>
</inline-formula> is the precession angular displacement of the gyroscope, and <inline-formula>
<mml:math display="inline" id="im26">
<mml:mrow>
<mml:msub>
<mml:mi>R</mml:mi>
<mml:mrow>
<mml:mn>01</mml:mn>
</mml:mrow>
</mml:msub>
</mml:mrow>
</mml:math>
</inline-formula> is the transformation matrix from the platform coordinate system to the&#xa0;inertial coordinate system.</p>
<p>The damping moment <inline-formula>
<mml:math display="inline" id="im27">
<mml:mrow>
<mml:msub>
<mml:mi>F</mml:mi>
<mml:mrow>
<mml:mi>g</mml:mi>
<mml:mi>y</mml:mi>
<mml:mi>r</mml:mi>
<mml:mi>o</mml:mi>
<mml:mi>D</mml:mi>
</mml:mrow>
</mml:msub>
</mml:mrow>
</mml:math>
</inline-formula> is expressed as <xref ref-type="disp-formula" rid="eq9">Equation 9</xref>:</p>
<disp-formula id="eq9">
<label>(9)</label>
<mml:math display="block" id="M9">
<mml:mrow>
<mml:msub>
<mml:mi>F</mml:mi>
<mml:mrow>
<mml:mi>g</mml:mi>
<mml:mi>y</mml:mi>
<mml:mi>r</mml:mi>
<mml:mi>o</mml:mi>
<mml:mi>D</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mo>=</mml:mo>
<mml:msub>
<mml:mi>R</mml:mi>
<mml:mrow>
<mml:mn>01</mml:mn>
</mml:mrow>
</mml:msub>
<mml:mrow>
<mml:mo>[</mml:mo>
<mml:mrow>
<mml:mtable>
<mml:mtr>
<mml:mtd>
<mml:mrow>
<mml:mo>&#x2212;</mml:mo>
<mml:msub>
<mml:mi>d</mml:mi>
<mml:mrow>
<mml:mi>g</mml:mi>
<mml:mi>y</mml:mi>
<mml:mi>r</mml:mi>
<mml:mi>o</mml:mi>
</mml:mrow>
</mml:msub>
<mml:msub>
<mml:mover accent="true">
<mml:mi>q</mml:mi>
<mml:mo>&#x2d9;</mml:mo>
</mml:mover>
<mml:mrow>
<mml:mi>g</mml:mi>
<mml:mi>y</mml:mi>
<mml:mi>r</mml:mi>
<mml:mi>o</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mo>(</mml:mo>
<mml:mi>t</mml:mi>
<mml:mo>)</mml:mo>
</mml:mrow>
</mml:mtd>
</mml:mtr>
<mml:mtr>
<mml:mtd>
<mml:mn>0</mml:mn>
</mml:mtd>
</mml:mtr>
<mml:mtr>
<mml:mtd>
<mml:mn>0</mml:mn>
</mml:mtd>
</mml:mtr>
</mml:mtable>
</mml:mrow>
<mml:mo>]</mml:mo>
</mml:mrow>
</mml:mrow>
</mml:math>
</disp-formula>
<p>Where <inline-formula>
<mml:math display="inline" id="im28">
<mml:mrow>
<mml:msub>
<mml:mi>d</mml:mi>
<mml:mrow>
<mml:mi>g</mml:mi>
<mml:mi>y</mml:mi>
<mml:mi>r</mml:mi>
<mml:mi>o</mml:mi>
</mml:mrow>
</mml:msub>
</mml:mrow>
</mml:math>
</inline-formula> is the damping moment coefficient, and <inline-formula>
<mml:math display="inline" id="im29">
<mml:mrow>
<mml:msub>
<mml:mover accent="true">
<mml:mi>q</mml:mi>
<mml:mo>&#x2d9;</mml:mo>
</mml:mover>
<mml:mrow>
<mml:mi>g</mml:mi>
<mml:mi>y</mml:mi>
<mml:mi>r</mml:mi>
<mml:mi>o</mml:mi>
<mml:mrow>
<mml:mo>(</mml:mo>
<mml:mi>t</mml:mi>
<mml:mo>)</mml:mo>
</mml:mrow>
</mml:mrow>
</mml:msub>
</mml:mrow>
</mml:math>
</inline-formula> is the precession angular velocity of the gyroscope.</p>
<p>The active control moment of the gyroscope <inline-formula>
<mml:math display="inline" id="im30">
<mml:mrow>
<mml:msub>
<mml:mi>F</mml:mi>
<mml:mrow>
<mml:mi>g</mml:mi>
<mml:mi>y</mml:mi>
<mml:mi>r</mml:mi>
<mml:mi>o</mml:mi>
<mml:mi>C</mml:mi>
</mml:mrow>
</mml:msub>
</mml:mrow>
</mml:math>
</inline-formula> is expressed as <xref ref-type="disp-formula" rid="eq10">Equation 10</xref>:</p>
<disp-formula id="eq10">
<label>(10)</label>
<mml:math display="block" id="M10">
<mml:mrow>
<mml:msub>
<mml:mi>F</mml:mi>
<mml:mrow>
<mml:mi>g</mml:mi>
<mml:mi>y</mml:mi>
<mml:mi>r</mml:mi>
<mml:mi>o</mml:mi>
<mml:mi>C</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mo>=</mml:mo>
<mml:msub>
<mml:mi>R</mml:mi>
<mml:mrow>
<mml:mn>01</mml:mn>
</mml:mrow>
</mml:msub>
<mml:mrow>
<mml:mo>[</mml:mo>
<mml:mrow>
<mml:mtable>
<mml:mtr>
<mml:mtd>
<mml:mrow>
<mml:msub>
<mml:mi>T</mml:mi>
<mml:mi>c</mml:mi>
</mml:msub>
</mml:mrow>
</mml:mtd>
</mml:mtr>
<mml:mtr>
<mml:mtd>
<mml:mn>0</mml:mn>
</mml:mtd>
</mml:mtr>
<mml:mtr>
<mml:mtd>
<mml:mn>0</mml:mn>
</mml:mtd>
</mml:mtr>
</mml:mtable>
</mml:mrow>
<mml:mo>]</mml:mo>
</mml:mrow>
</mml:mrow>
</mml:math>
</disp-formula>
<p>Where <inline-formula>
<mml:math display="inline" id="im31">
<mml:mrow>
<mml:msub>
<mml:mi>T</mml:mi>
<mml:mi>c</mml:mi>
</mml:msub>
</mml:mrow>
</mml:math>
</inline-formula> is the moment output by the controller.</p>
<p>The generalized active force of the gyroscope <inline-formula>
<mml:math display="inline" id="im32">
<mml:mrow>
<mml:msub>
<mml:mi>F</mml:mi>
<mml:mrow>
<mml:mi>g</mml:mi>
<mml:mi>y</mml:mi>
<mml:mi>r</mml:mi>
<mml:mi>o</mml:mi>
<mml:mo>_</mml:mo>
<mml:mi>t</mml:mi>
<mml:mi>o</mml:mi>
<mml:mi>t</mml:mi>
<mml:mi>a</mml:mi>
<mml:mi>l</mml:mi>
<mml:mo>_</mml:mo>
<mml:mi>r</mml:mi>
</mml:mrow>
</mml:msub>
</mml:mrow>
</mml:math>
</inline-formula> on the r-th degree of freedom expressed in the inertial system is <xref ref-type="disp-formula" rid="eq11">Equation 11</xref>:</p>
<disp-formula id="eq11">
<label>(11)</label>
<mml:math display="block" id="M11">
<mml:mrow>
<mml:msub>
<mml:mi>F</mml:mi>
<mml:mrow>
<mml:mi>g</mml:mi>
<mml:mi>y</mml:mi>
<mml:mi>r</mml:mi>
<mml:mi>o</mml:mi>
<mml:mo>_</mml:mo>
<mml:mi>t</mml:mi>
<mml:mi>o</mml:mi>
<mml:mi>t</mml:mi>
<mml:mi>a</mml:mi>
<mml:mi>l</mml:mi>
<mml:mo>_</mml:mo>
<mml:mi>r</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mo>=</mml:mo>
<mml:msub>
<mml:mi>&#x3c9;</mml:mi>
<mml:mrow>
<mml:mi>P</mml:mi>
<mml:mi>r</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mo>&#xb7;</mml:mo>
<mml:mrow>
<mml:mo>(</mml:mo>
<mml:mrow>
<mml:msub>
<mml:mi>F</mml:mi>
<mml:mrow>
<mml:mi>g</mml:mi>
<mml:mi>y</mml:mi>
<mml:mi>r</mml:mi>
<mml:mi>o</mml:mi>
<mml:mi>K</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mo>+</mml:mo>
<mml:msub>
<mml:mi>F</mml:mi>
<mml:mrow>
<mml:mi>g</mml:mi>
<mml:mi>y</mml:mi>
<mml:mi>r</mml:mi>
<mml:mi>o</mml:mi>
<mml:mi>D</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mo>+</mml:mo>
<mml:msub>
<mml:mi>F</mml:mi>
<mml:mrow>
<mml:mi>g</mml:mi>
<mml:mi>y</mml:mi>
<mml:mi>r</mml:mi>
<mml:mi>o</mml:mi>
<mml:mi>C</mml:mi>
</mml:mrow>
</mml:msub>
</mml:mrow>
<mml:mo>)</mml:mo>
</mml:mrow>
</mml:mrow>
</mml:math>
</disp-formula>
<p>Where <inline-formula>
<mml:math display="inline" id="im33">
<mml:mrow>
<mml:msub>
<mml:mi>&#x3c9;</mml:mi>
<mml:mrow>
<mml:mi>P</mml:mi>
<mml:mi>r</mml:mi>
</mml:mrow>
</mml:msub>
</mml:mrow>
</mml:math>
</inline-formula> is the angular velocity component of the platform on the r-th degree of freedom.</p>
<p>Through the above modeling method, this invention established complete gyroscopic dynamic equations, including the gyroscope&#x2019;s inertial characteristics, constraint properties, and control inputs, laying a theoretical foundation for subsequent control system design.</p>
</sec>
<sec id="s2_2">
<label>2.2</label>
<title>System modeling</title>
<p>Addressing the motion stability issues of semi-submersible floating wind turbines under wind-wave coupling effects, this paper proposes a full coupling dynamic modeling method that incorporates anti-rolling gyroscopes. By establishing a 12-degree-of-freedom model that includes the platform&#x2019;s six-degree-of-freedom motion, tower flexible deformation, and anti-rolling gyroscopes, the simulation accuracy of pitch motion has been significantly improved. Compared to the traditional OpenFAST model, the gyroscopic subsystem modeling process has been added, and dynamic transfer of control torque has been achieved through generalized coordinate coupling.</p>
<p>During the modeling process, reference was made to the 5MW floating wind turbine model with OC4-DeepCwind semi-submersible platform developed by the National Renewable Energy Laboratory (NREL) of the United States. This model has been widely used to study the dynamic behavior of floating wind turbines, but it mainly focuses on the coupling between platform motion and wind turbine dynamics. This paper makes innovative improvements on this basis: by introducing an anti-rolling gyroscopic system, the model&#x2019;s stability control capability for platform roll and pitch has been enhanced; meanwhile, the model structure has been optimized to accommodate efficient application of control algorithms. <xref ref-type="table" rid="T1">
<bold>Table&#xa0;1</bold>
</xref> shows the main parameters of the NREL 5MW floating wind turbine.</p>
<table-wrap id="T1" position="float">
<label>Table&#xa0;1</label>
<caption>
<p>Main parameters of NREL 5MW floating wind turbine.</p>
</caption>
<table frame="hsides">
<thead>
<tr>
<th valign="top" align="center">Parameter</th>
<th valign="top" align="center">Value</th>
</tr>
</thead>
<tbody>
<tr>
<td valign="top" align="center">Power (MW)</td>
<td valign="top" align="center">5</td>
</tr>
<tr>
<td valign="top" align="center">Number of Blades</td>
<td valign="top" align="center">3</td>
</tr>
<tr>
<td valign="top" align="center">Rotor Diameter (m)</td>
<td valign="top" align="center">126</td>
</tr>
<tr>
<td valign="top" align="center">Hub Diameter (m)</td>
<td valign="top" align="center">3</td>
</tr>
<tr>
<td valign="top" align="center">Hub Height (m)</td>
<td valign="top" align="center">90</td>
</tr>
<tr>
<td valign="top" align="center">Total Nacelle Mass (kg)</td>
<td valign="top" align="center">240000</td>
</tr>
<tr>
<td valign="top" align="center">Tower Mass (kg)</td>
<td valign="top" align="center">249718</td>
</tr>
<tr>
<td valign="top" align="center">Platform Mass (kg)</td>
<td valign="top" align="center">13473000</td>
</tr>
<tr>
<td valign="top" align="center">Nacelle Dimensions (m)</td>
<td valign="top" align="center">22&#xd7;6&#xd7;6</td>
</tr>
<tr>
<td valign="top" align="center">Platform Dimensions (m)</td>
<td valign="top" align="center">40&#xd7;40&#xd7;10</td>
</tr>
<tr>
<td valign="top" align="center">Platform Submersion Depth (m)</td>
<td valign="top" align="center">4</td>
</tr>
</tbody>
</table>
</table-wrap>
<p>The semi-submersible wind turbine system consists of a platform, tower, nacelle, rotor, and anti-rolling gyroscope (<xref ref-type="fig" rid="f1">
<bold>Figure&#xa0;1</bold>
</xref>). The platform employs a six-degree-of-freedom rigid body model, with the gyroscopic system located at the platform&#x2019;s center of gravity, generating anti-rolling moments through a dual-axis servo mechanism. To characterize the multi-body coupling effects, the following core coordinate systems are established: the inertial coordinate system F<sub>0</sub>(O<sub>0</sub>-X<sub>0</sub>Y<sub>0</sub>Z<sub>0</sub>), platform coordinate system F<sub>1</sub>(O<sub>1</sub>-X<sub>1</sub>Y<sub>1</sub>Z<sub>1</sub>), tower-top coordinate system F<sub>2</sub>(O<sub>2</sub>-X<sub>2</sub>Y<sub>2</sub>Z<sub>2</sub>), and rotor coordinate system F<sub>3</sub>(O<sub>3</sub>-X<sub>3</sub>Y<sub>3</sub>Z<sub>3</sub>). This coordinate system fully describes the relative motion relationships between various components of the wind turbine, laying the foundation for subsequent dynamic modeling. Vector rotational transformations between different coordinate systems are implemented through rotation matrices, using Euler angle descriptions.</p>
<fig id="f1" position="float">
<label>Figure&#xa0;1</label>
<caption>
<p>Schematic diagram of a 5MW floating wind turbine.</p>
</caption>
<graphic mimetype="image" mime-subtype="tiff" xlink:href="fmars-12-1597408-g001.tif">
<alt-text content-type="machine-generated">Diagram of a floating wind turbine with three yellow buoyant columns connected by beams. Various force and movement vectors like \( q_{\text{rotor}} \), \( q_{\text{yaw}} \), and others are labeled. An inset shows a magnified view of components labeled \( q_{\text{pre}} \).</alt-text>
</graphic>
</fig>
<p>This study builds a fully coupled dynamic model of the floating wind turbine system based on Kane&#x2019;s method, incorporating 12 degrees of freedom (as shown in <xref ref-type="fig" rid="f1">
<bold>Figure&#xa0;1</bold>
</xref>): three translational degrees of freedom for the platform (surge, sway, and heave) and three rotational degrees of freedom (roll, pitch, and yaw), four degrees of freedom for the first and second bending modes of the tower in the fore-aft and side-to-side directions, one rotational degree of freedom for the wind turbine rotor around the hub axis, and one precessional degree of freedom for the anti-rolling gyroscope relative to the platform.</p>
<p>This model achieves a comprehensive description of the fully coupled effects between platform motion, tower deformation, rotor rotation, and gyroscopic movement through the selection of generalized coordinates and the establishment of constraint equations.</p>
<p>The equations of motion for this model are derived using Kane dynamics. As a direct result of Newton&#x2019;s laws of motion, the Kane equations for a simple complete system can be expressed as a <xref ref-type="disp-formula" rid="eq12">Equation 12</xref>.</p>
<disp-formula id="eq12">
<label>(12)</label>
<mml:math display="block" id="M12">
<mml:mrow>
<mml:msub>
<mml:mi>F</mml:mi>
<mml:mi>i</mml:mi>
</mml:msub>
<mml:mo>+</mml:mo>
<mml:msubsup>
<mml:mi>F</mml:mi>
<mml:mi>i</mml:mi>
<mml:mo>*</mml:mo>
</mml:msubsup>
<mml:mo>=</mml:mo>
<mml:mn>0</mml:mn>
<mml:mtext>&#x2003;</mml:mtext>
<mml:mrow>
<mml:mo>(</mml:mo>
<mml:mrow>
<mml:mi>i</mml:mi>
<mml:mo>=</mml:mo>
<mml:mn>1</mml:mn>
<mml:mo>,</mml:mo>
<mml:mn>2</mml:mn>
<mml:mo>,</mml:mo>
<mml:mo>&#x2026;</mml:mo>
<mml:mo>,</mml:mo>
<mml:mn>12</mml:mn>
</mml:mrow>
<mml:mo>)</mml:mo>
</mml:mrow>
</mml:mrow>
</mml:math>
</disp-formula>
<p>For this model, the generalized active force <inline-formula>
<mml:math display="inline" id="im34">
<mml:mrow>
<mml:msub>
<mml:mi>F</mml:mi>
<mml:mi>i</mml:mi>
</mml:msub>
</mml:mrow>
</mml:math>
</inline-formula> and the generalized inertia force <inline-formula>
<mml:math display="inline" id="im35">
<mml:mrow>
<mml:msubsup>
<mml:mi>F</mml:mi>
<mml:mi>i</mml:mi>
<mml:mo>*</mml:mo>
</mml:msubsup>
</mml:mrow>
</mml:math>
</inline-formula> can be expressed as <xref ref-type="disp-formula" rid="eq13">Equation 13</xref>:</p>
<disp-formula id="eq13">
<label>(13)</label>
<mml:math display="block" id="M13">
<mml:mrow>
<mml:mrow>
<mml:mo>{</mml:mo>
<mml:mrow>
<mml:mtable>
<mml:mtr>
<mml:mtd>
<mml:mrow>
<mml:msub>
<mml:mi>F</mml:mi>
<mml:mi>i</mml:mi>
</mml:msub>
<mml:mo>=</mml:mo>
<mml:msup>
<mml:mrow>
<mml:munderover>
<mml:mo>&#x2211;</mml:mo>
<mml:mrow>
<mml:mi>r</mml:mi>
<mml:mo>=</mml:mo>
<mml:mn>1</mml:mn>
</mml:mrow>
<mml:mi>W</mml:mi>
</mml:munderover>
</mml:mrow>
<mml:mi>E</mml:mi>
</mml:msup>
<mml:msub>
<mml:mi>&#x3bd;</mml:mi>
<mml:mi>i</mml:mi>
</mml:msub>
<mml:msup>
<mml:mtext>&#xa0;</mml:mtext>
<mml:mrow>
<mml:msub>
<mml:mi>X</mml:mi>
<mml:mi>r</mml:mi>
</mml:msub>
</mml:mrow>
</mml:msup>
<mml:mo>&#xb7;</mml:mo>
<mml:msup>
<mml:mi>F</mml:mi>
<mml:mrow>
<mml:msub>
<mml:mi>X</mml:mi>
<mml:mi>r</mml:mi>
</mml:msub>
</mml:mrow>
</mml:msup>
<mml:msup>
<mml:mo>+</mml:mo>
<mml:mi>E</mml:mi>
</mml:msup>
<mml:msub>
<mml:mi>&#x3c9;</mml:mi>
<mml:mi>i</mml:mi>
</mml:msub>
<mml:msup>
<mml:mtext>&#xa0;</mml:mtext>
<mml:mrow>
<mml:msub>
<mml:mi>N</mml:mi>
<mml:mi>r</mml:mi>
</mml:msub>
</mml:mrow>
</mml:msup>
<mml:mo>&#xb7;</mml:mo>
<mml:msup>
<mml:mi>M</mml:mi>
<mml:mrow>
<mml:msub>
<mml:mi>N</mml:mi>
<mml:mi>r</mml:mi>
</mml:msub>
</mml:mrow>
</mml:msup>
<mml:mtext>&#x2003;</mml:mtext>
<mml:mo>(</mml:mo>
<mml:mi>i</mml:mi>
<mml:mo>=</mml:mo>
<mml:mn>1</mml:mn>
<mml:mo>,</mml:mo>
<mml:mn>2</mml:mn>
<mml:mo>,</mml:mo>
<mml:mo>&#x2026;</mml:mo>
<mml:mo>,</mml:mo>
<mml:mi>P</mml:mi>
<mml:mo>)</mml:mo>
</mml:mrow>
</mml:mtd>
</mml:mtr>
<mml:mtr>
<mml:mtd>
<mml:mrow>
<mml:msubsup>
<mml:mi>F</mml:mi>
<mml:mi>i</mml:mi>
<mml:mo>&#x2217;</mml:mo>
</mml:msubsup>
<mml:mo>=</mml:mo>
<mml:msup>
<mml:mrow>
<mml:munderover>
<mml:mo>&#x2211;</mml:mo>
<mml:mrow>
<mml:mi>r</mml:mi>
<mml:mo>=</mml:mo>
<mml:mi>l</mml:mi>
</mml:mrow>
<mml:mi>W</mml:mi>
</mml:munderover>
</mml:mrow>
<mml:mi>E</mml:mi>
</mml:msup>
<mml:msub>
<mml:mi>&#x3bd;</mml:mi>
<mml:mi>i</mml:mi>
</mml:msub>
<mml:msup>
<mml:mtext>&#xa0;</mml:mtext>
<mml:mrow>
<mml:msub>
<mml:mi>X</mml:mi>
<mml:mi>r</mml:mi>
</mml:msub>
</mml:mrow>
</mml:msup>
<mml:mo>&#xb7;</mml:mo>
<mml:mrow>
<mml:mo>(</mml:mo>
<mml:mrow>
<mml:mo>&#x2212;</mml:mo>
<mml:msub>
<mml:mi>m</mml:mi>
<mml:mi>r</mml:mi>
</mml:msub>
<mml:msup>
<mml:mtext>&#xa0;</mml:mtext>
<mml:mi>E</mml:mi>
</mml:msup>
<mml:msup>
<mml:mi>a</mml:mi>
<mml:mrow>
<mml:msub>
<mml:mi>X</mml:mi>
<mml:mi>r</mml:mi>
</mml:msub>
</mml:mrow>
</mml:msup>
</mml:mrow>
<mml:mo>)</mml:mo>
</mml:mrow>
<mml:msup>
<mml:mo>+</mml:mo>
<mml:mi>E</mml:mi>
</mml:msup>
<mml:msub>
<mml:mi>&#x3c9;</mml:mi>
<mml:mi>i</mml:mi>
</mml:msub>
<mml:msup>
<mml:mtext>&#xa0;</mml:mtext>
<mml:mrow>
<mml:msub>
<mml:mi>N</mml:mi>
<mml:mi>r</mml:mi>
</mml:msub>
</mml:mrow>
</mml:msup>
<mml:mo>&#xb7;</mml:mo>
<mml:mrow>
<mml:mo>(</mml:mo>
<mml:mrow>
<mml:msup>
<mml:mo>&#x2212;</mml:mo>
<mml:mi>E</mml:mi>
</mml:msup>
<mml:msup>
<mml:mi>H</mml:mi>
<mml:mrow>
<mml:msub>
<mml:mi>N</mml:mi>
<mml:mi>r</mml:mi>
</mml:msub>
</mml:mrow>
</mml:msup>
</mml:mrow>
<mml:mo>)</mml:mo>
</mml:mrow>
<mml:mtext>&#x2003;</mml:mtext>
<mml:mo>(</mml:mo>
<mml:mi>i</mml:mi>
<mml:mo>=</mml:mo>
<mml:mn>1</mml:mn>
<mml:mo>,</mml:mo>
<mml:mn>2</mml:mn>
<mml:mo>,</mml:mo>
<mml:mo>&#x2026;</mml:mo>
<mml:mo>,</mml:mo>
<mml:mi>P</mml:mi>
<mml:mo>)</mml:mo>
</mml:mrow>
</mml:mtd>
</mml:mtr>
</mml:mtable>
</mml:mrow>
</mml:mrow>
</mml:mrow>
</mml:math>
</disp-formula>
<p>Where <inline-formula>
<mml:math display="inline" id="im36">
<mml:mrow>
<mml:msup>
<mml:mtext>F</mml:mtext>
<mml:mrow>
<mml:msub>
<mml:mtext>X</mml:mtext>
<mml:mtext>r</mml:mtext>
</mml:msub>
</mml:mrow>
</mml:msup>
</mml:mrow>
</mml:math>
</inline-formula> represents the active force, <inline-formula>
<mml:math display="inline" id="im37">
<mml:mrow>
<mml:msup>
<mml:mtext>M</mml:mtext>
<mml:mrow>
<mml:msub>
<mml:mtext>N</mml:mtext>
<mml:mtext>r</mml:mtext>
</mml:msub>
</mml:mrow>
</mml:msup>
</mml:mrow>
</mml:math>
</inline-formula> represents the active moment at point <inline-formula>
<mml:math display="inline" id="im38">
<mml:mrow>
<mml:msub>
<mml:mtext>X</mml:mtext>
<mml:mtext>r</mml:mtext>
</mml:msub>
</mml:mrow>
</mml:math>
</inline-formula>, <inline-formula>
<mml:math display="inline" id="im39">
<mml:msubsup>
<mml:mover accent="true">
<mml:mi>H</mml:mi>
<mml:mo>&#x2d9;</mml:mo>
</mml:mover>
<mml:mi>E</mml:mi>
<mml:mrow>
<mml:msub>
<mml:mi>N</mml:mi>
<mml:mi>r</mml:mi>
</mml:msub>
</mml:mrow>
</mml:msubsup>
</mml:math>
</inline-formula> represents the first-order derivative of the rigid body&#x2019;s angular momentum at the center of mass, <inline-formula>
<mml:math display="inline" id="im40">
<mml:mrow>
<mml:msup>
<mml:mtext>&#xa0;</mml:mtext>
<mml:mi>E</mml:mi>
</mml:msup>
<mml:msubsup>
<mml:mi>&#x3c9;</mml:mi>
<mml:mi>i</mml:mi>
<mml:mrow>
<mml:msub>
<mml:mi>N</mml:mi>
<mml:mi>r</mml:mi>
</mml:msub>
</mml:mrow>
</mml:msubsup>
</mml:mrow>
</mml:math>
</inline-formula>, <inline-formula>
<mml:math display="inline" id="im41">
<mml:mrow>
<mml:msup>
<mml:mtext>&#xa0;</mml:mtext>
<mml:mi>E</mml:mi>
</mml:msup>
<mml:msubsup>
<mml:mi>a</mml:mi>
<mml:mi>i</mml:mi>
<mml:mrow>
<mml:msub>
<mml:mi>N</mml:mi>
<mml:mi>r</mml:mi>
</mml:msub>
</mml:mrow>
</mml:msubsup>
</mml:mrow>
</mml:math>
</inline-formula>, and <inline-formula>
<mml:math display="inline" id="im42">
<mml:mrow>
<mml:msup>
<mml:mtext>&#xa0;</mml:mtext>
<mml:mi>E</mml:mi>
</mml:msup>
<mml:msubsup>
<mml:mi>V</mml:mi>
<mml:mi>i</mml:mi>
<mml:mrow>
<mml:msub>
<mml:mi>N</mml:mi>
<mml:mi>r</mml:mi>
</mml:msub>
</mml:mrow>
</mml:msubsup>
</mml:mrow>
</mml:math>
</inline-formula> represent angular velocity, acceleration, and linear velocity, respectively.</p>
<p>Based on the established equations of motion, the complete nonlinear equations of motion for the coupled wind turbine system can be introduced as shown in <xref ref-type="disp-formula" rid="eq14">Equation 14</xref>.</p>
<disp-formula id="eq14">
<label>(14)</label>
<mml:math display="block" id="M14">
<mml:mrow>
<mml:msub>
<mml:mi>M</mml:mi>
<mml:mrow>
<mml:mi>i</mml:mi>
<mml:mi>j</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mo>(</mml:mo>
<mml:mi>q</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>u</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>t</mml:mi>
<mml:mo>)</mml:mo>
<mml:msub>
<mml:mover accent="true">
<mml:mi>q</mml:mi>
<mml:mo>&#xa8;</mml:mo>
</mml:mover>
<mml:mi>j</mml:mi>
</mml:msub>
<mml:mo>=</mml:mo>
<mml:msub>
<mml:mi>f</mml:mi>
<mml:mi>i</mml:mi>
</mml:msub>
<mml:mo>(</mml:mo>
<mml:mi>q</mml:mi>
<mml:mo>,</mml:mo>
<mml:mover accent="true">
<mml:mi>q</mml:mi>
<mml:mo>&#x2d9;</mml:mo>
</mml:mover>
<mml:mo>,</mml:mo>
<mml:mi>u</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>t</mml:mi>
<mml:mo>)</mml:mo>
</mml:mrow>
</mml:math>
</disp-formula>
<p>
<inline-formula>
<mml:math display="inline" id="im43">
<mml:mrow>
<mml:msub>
<mml:mi>M</mml:mi>
<mml:mrow>
<mml:mi>i</mml:mi>
<mml:mi>j</mml:mi>
</mml:mrow>
</mml:msub>
</mml:mrow>
</mml:math>
</inline-formula> is the mass matrix, which depends on the system&#x2019;s degrees of freedom <inline-formula>
<mml:math display="inline" id="im44">
<mml:mi>q</mml:mi>
</mml:math>
</inline-formula>, control input <inline-formula>
<mml:math display="inline" id="im45">
<mml:mi>u</mml:mi>
</mml:math>
</inline-formula>, and time <inline-formula>
<mml:math display="inline" id="im46">
<mml:mi>t</mml:mi>
</mml:math>
</inline-formula>. <inline-formula>
<mml:math display="inline" id="im47">
<mml:mrow>
<mml:msub>
<mml:mover accent="true">
<mml:mi>q</mml:mi>
<mml:mo>&#xa8;</mml:mo>
</mml:mover>
<mml:mi>j</mml:mi>
</mml:msub>
</mml:mrow>
</mml:math>
</inline-formula> is the second-order derivative of the corresponding degree of freedom, and <inline-formula>
<mml:math display="inline" id="im48">
<mml:mrow>
<mml:msub>
<mml:mtext>f</mml:mtext>
<mml:mi>i</mml:mi>
</mml:msub>
</mml:mrow>
</mml:math>
</inline-formula> is the function of the corresponding force.</p>
<p>This study considered three main types of external loads acting on the floating wind turbine system: wind loads, hydrostatic forces, and hydrodynamic forces. The wind loads mainly include the axial thrust and aerodynamic moments acting on the rotor, which are expressed as <xref ref-type="disp-formula" rid="eq15">Equation 15</xref>:</p>
<disp-formula id="eq15">
<label>(15)</label>
<mml:math display="block" id="M15">
<mml:mtable columnalign="left">
<mml:mtr>
<mml:mtd>
<mml:msub>
<mml:mi>F</mml:mi>
<mml:mi>a</mml:mi>
</mml:msub>
<mml:mo>=</mml:mo>
<mml:mfrac>
<mml:mn>1</mml:mn>
<mml:mn>2</mml:mn>
</mml:mfrac>
<mml:msub>
<mml:mi>&#x3c1;</mml:mi>
<mml:mi>a</mml:mi>
</mml:msub>
<mml:msub>
<mml:mi>A</mml:mi>
<mml:mi>r</mml:mi>
</mml:msub>
<mml:msub>
<mml:mi>C</mml:mi>
<mml:mi>t</mml:mi>
</mml:msub>
<mml:mo>&#x2225;</mml:mo>
<mml:msub>
<mml:mrow>
<mml:mo>(</mml:mo>
<mml:mrow>
<mml:msub>
<mml:mover accent="true">
<mml:mi>v</mml:mi>
<mml:mo>&#x2192;</mml:mo>
</mml:mover>
<mml:mrow>
<mml:mi>r</mml:mi>
<mml:mi>e</mml:mi>
<mml:mi>l</mml:mi>
</mml:mrow>
</mml:msub>
</mml:mrow>
<mml:mo>)</mml:mo>
</mml:mrow>
<mml:mi>a</mml:mi>
</mml:msub>
<mml:mo>&#x2225;</mml:mo>
<mml:msub>
<mml:mrow>
<mml:mo>(</mml:mo>
<mml:mrow>
<mml:msub>
<mml:mover accent="true">
<mml:mi>v</mml:mi>
<mml:mo>&#x2192;</mml:mo>
</mml:mover>
<mml:mrow>
<mml:mi>r</mml:mi>
<mml:mi>e</mml:mi>
<mml:mi>l</mml:mi>
</mml:mrow>
</mml:msub>
</mml:mrow>
<mml:mo>)</mml:mo>
</mml:mrow>
<mml:mi>a</mml:mi>
</mml:msub>
</mml:mtd>
</mml:mtr>
<mml:mtr>
<mml:mtd>
<mml:msub>
<mml:mi>&#x3c4;</mml:mi>
<mml:mi>a</mml:mi>
</mml:msub>
<mml:mo>=</mml:mo>
<mml:mfrac>
<mml:mn>1</mml:mn>
<mml:mn>2</mml:mn>
</mml:mfrac>
<mml:msub>
<mml:mi>&#x3c1;</mml:mi>
<mml:mi>a</mml:mi>
</mml:msub>
<mml:msub>
<mml:mi>A</mml:mi>
<mml:mi>r</mml:mi>
</mml:msub>
<mml:msub>
<mml:mi>R</mml:mi>
<mml:mi>r</mml:mi>
</mml:msub>
<mml:msub>
<mml:mi>C</mml:mi>
<mml:mi>q</mml:mi>
</mml:msub>
<mml:mrow>
<mml:mo>&#x2016;</mml:mo>
<mml:mrow>
<mml:msub>
<mml:mrow>
<mml:mrow>
<mml:mo>(</mml:mo>
<mml:mrow>
<mml:msub>
<mml:mover accent="true">
<mml:mi>v</mml:mi>
<mml:mo>&#x2192;</mml:mo>
</mml:mover>
<mml:mrow>
<mml:mi>r</mml:mi>
<mml:mi>e</mml:mi>
<mml:mi>l</mml:mi>
</mml:mrow>
</mml:msub>
</mml:mrow>
<mml:mo>)</mml:mo>
</mml:mrow>
</mml:mrow>
<mml:mi>a</mml:mi>
</mml:msub>
</mml:mrow>
<mml:mo>&#x2016;</mml:mo>
</mml:mrow>
<mml:msub>
<mml:mrow>
<mml:mo>(</mml:mo>
<mml:mrow>
<mml:msub>
<mml:mover accent="true">
<mml:mi>v</mml:mi>
<mml:mo>&#x2192;</mml:mo>
</mml:mover>
<mml:mrow>
<mml:mi>r</mml:mi>
<mml:mi>e</mml:mi>
<mml:mi>l</mml:mi>
</mml:mrow>
</mml:msub>
</mml:mrow>
<mml:mo>)</mml:mo>
</mml:mrow>
<mml:mi>a</mml:mi>
</mml:msub>
</mml:mtd>
</mml:mtr>
</mml:mtable>
</mml:math>
</disp-formula>
<p>Where the thrust coefficient and moment coefficient are obtained through fitting experimental data. The hydrostatic forces mainly consider the linear restoring forces and moments caused by platform motion, expressed as <xref ref-type="disp-formula" rid="eq16">Equation 16</xref>:</p>
<disp-formula id="eq16">
<label>(16)</label>
<mml:math display="block" id="M16">
<mml:mrow>
<mml:msub>
<mml:mi>F</mml:mi>
<mml:mrow>
<mml:mi>h</mml:mi>
<mml:mi>s</mml:mi>
</mml:mrow>
</mml:msub>
<mml:msub>
<mml:mrow>
<mml:mo>(</mml:mo>
<mml:mi>q</mml:mi>
<mml:mo>)</mml:mo>
</mml:mrow>
<mml:mi>i</mml:mi>
</mml:msub>
<mml:mo>=</mml:mo>
<mml:mi>&#x3c1;</mml:mi>
<mml:mi>g</mml:mi>
<mml:msub>
<mml:mi>V</mml:mi>
<mml:mn>0</mml:mn>
</mml:msub>
<mml:msub>
<mml:mi>&#x3b4;</mml:mi>
<mml:mrow>
<mml:mi>i</mml:mi>
<mml:mn>3</mml:mn>
</mml:mrow>
</mml:msub>
<mml:mo>&#x2212;</mml:mo>
<mml:msubsup>
<mml:mi>C</mml:mi>
<mml:mrow>
<mml:mi>i</mml:mi>
<mml:mi>j</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>H</mml:mi>
<mml:mi>S</mml:mi>
</mml:mrow>
</mml:msubsup>
<mml:msub>
<mml:mi>q</mml:mi>
<mml:mi>j</mml:mi>
</mml:msub>
</mml:mrow>
</mml:math>
</disp-formula>
<p>The calculation of hydrodynamic forces is based on Airy wave theory, using the Morison method to estimate the viscous effects and added mass effects of waves on the platform, expressed as <xref ref-type="disp-formula" rid="eq17">Equation 17</xref>:</p>
<disp-formula id="eq17">
<label>(17)</label>
<mml:math display="block" id="M17">
<mml:mrow>
<mml:msub>
<mml:mi>F</mml:mi>
<mml:mrow>
<mml:mi>h</mml:mi>
<mml:mi>d</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mo>=</mml:mo>
<mml:mfrac>
<mml:mn>1</mml:mn>
<mml:mn>2</mml:mn>
</mml:mfrac>
<mml:msub>
<mml:mi>c</mml:mi>
<mml:mi>d</mml:mi>
</mml:msub>
<mml:msub>
<mml:mi>&#x3c1;</mml:mi>
<mml:mi>f</mml:mi>
</mml:msub>
<mml:mi>D</mml:mi>
<mml:mrow>
<mml:mo>&#x2016;</mml:mo>
<mml:mrow>
<mml:msub>
<mml:mrow>
<mml:mrow>
<mml:mo>(</mml:mo>
<mml:mrow>
<mml:msub>
<mml:mover accent="true">
<mml:mi>v</mml:mi>
<mml:mo>&#x2192;</mml:mo>
</mml:mover>
<mml:mrow>
<mml:mi>r</mml:mi>
<mml:mi>e</mml:mi>
<mml:mi>l</mml:mi>
</mml:mrow>
</mml:msub>
</mml:mrow>
<mml:mo>)</mml:mo>
</mml:mrow>
</mml:mrow>
<mml:mi>t</mml:mi>
</mml:msub>
</mml:mrow>
<mml:mo>&#x2016;</mml:mo>
</mml:mrow>
<mml:msub>
<mml:mrow>
<mml:mrow>
<mml:mo>(</mml:mo>
<mml:mrow>
<mml:msub>
<mml:mover accent="true">
<mml:mi>v</mml:mi>
<mml:mo>&#x2192;</mml:mo>
</mml:mover>
<mml:mrow>
<mml:mi>r</mml:mi>
<mml:mi>e</mml:mi>
<mml:mi>l</mml:mi>
</mml:mrow>
</mml:msub>
</mml:mrow>
<mml:mo>)</mml:mo>
</mml:mrow>
</mml:mrow>
<mml:mi>t</mml:mi>
</mml:msub>
<mml:mo>+</mml:mo>
<mml:msub>
<mml:mi>c</mml:mi>
<mml:mi>a</mml:mi>
</mml:msub>
<mml:msub>
<mml:mi>&#x3c1;</mml:mi>
<mml:mi>f</mml:mi>
</mml:msub>
<mml:mrow>
<mml:mo>(</mml:mo>
<mml:mrow>
<mml:mfrac>
<mml:mi>&#x3c0;</mml:mi>
<mml:mn>4</mml:mn>
</mml:mfrac>
<mml:msup>
<mml:mi>D</mml:mi>
<mml:mn>2</mml:mn>
</mml:msup>
</mml:mrow>
<mml:mo>)</mml:mo>
</mml:mrow>
<mml:mrow>
<mml:mo>(</mml:mo>
<mml:mrow>
<mml:msub>
<mml:mover accent="true">
<mml:mover accent="true">
<mml:mi>v</mml:mi>
<mml:mo>&#x2192;</mml:mo>
</mml:mover>
<mml:mo>&#x2d9;</mml:mo>
</mml:mover>
<mml:mrow>
<mml:mi>r</mml:mi>
<mml:mi>e</mml:mi>
<mml:mi>l</mml:mi>
</mml:mrow>
</mml:msub>
</mml:mrow>
<mml:mo>)</mml:mo>
</mml:mrow>
<mml:mo>+</mml:mo>
<mml:msub>
<mml:mi>&#x3c1;</mml:mi>
<mml:mi>f</mml:mi>
</mml:msub>
<mml:mrow>
<mml:mo>(</mml:mo>
<mml:mrow>
<mml:mfrac>
<mml:mi>&#x3c0;</mml:mi>
<mml:mn>4</mml:mn>
</mml:mfrac>
<mml:msup>
<mml:mi>D</mml:mi>
<mml:mn>2</mml:mn>
</mml:msup>
</mml:mrow>
<mml:mo>)</mml:mo>
</mml:mrow>
<mml:msub>
<mml:mrow>
<mml:mrow>
<mml:mo>(</mml:mo>
<mml:mrow>
<mml:msub>
<mml:mover accent="true">
<mml:mover accent="true">
<mml:mi>v</mml:mi>
<mml:mo>&#x2192;</mml:mo>
</mml:mover>
<mml:mo>&#x2d9;</mml:mo>
</mml:mover>
<mml:mi>f</mml:mi>
</mml:msub>
</mml:mrow>
<mml:mo>)</mml:mo>
</mml:mrow>
</mml:mrow>
<mml:mi>t</mml:mi>
</mml:msub>
</mml:mrow>
</mml:math>
</disp-formula>
<p>Where <inline-formula>
<mml:math display="inline" id="im49">
<mml:mrow>
<mml:msub>
<mml:mi>C</mml:mi>
<mml:mi>d</mml:mi>
</mml:msub>
</mml:mrow>
</mml:math>
</inline-formula> represents the drag coefficient, <inline-formula>
<mml:math display="inline" id="im50">
<mml:mrow>
<mml:msub>
<mml:mi>&#x3c1;</mml:mi>
<mml:mi>f</mml:mi>
</mml:msub>
</mml:mrow>
</mml:math>
</inline-formula> represents seawater, <inline-formula>
<mml:math display="inline" id="im51">
<mml:mi>D</mml:mi>
</mml:math>
</inline-formula> represents the diameter of the platform column, <inline-formula>
<mml:math display="inline" id="im52">
<mml:mrow>
<mml:msub>
<mml:mi>C</mml:mi>
<mml:mi>a</mml:mi>
</mml:msub>
</mml:mrow>
</mml:math>
</inline-formula> represents the added mass coefficient, <inline-formula>
<mml:math display="inline" id="im53">
<mml:mrow>
<mml:msub>
<mml:mrow>
<mml:mrow>
<mml:mo>(</mml:mo>
<mml:mrow>
<mml:msub>
<mml:mover accent="true">
<mml:mi>v</mml:mi>
<mml:mo>&#x2192;</mml:mo>
</mml:mover>
<mml:mrow>
<mml:mi>r</mml:mi>
<mml:mi>e</mml:mi>
<mml:mi>l</mml:mi>
</mml:mrow>
</mml:msub>
</mml:mrow>
<mml:mo>)</mml:mo>
</mml:mrow>
</mml:mrow>
<mml:mi>t</mml:mi>
</mml:msub>
<mml:mo>=</mml:mo>
<mml:msub>
<mml:mrow>
<mml:mrow>
<mml:mo>(</mml:mo>
<mml:mrow>
<mml:msub>
<mml:mrow>
<mml:mover>
<mml:mover accent="true">
<mml:mi>v</mml:mi>
<mml:mo>&#x2192;</mml:mo>
</mml:mover>
<mml:mo>&#x2d9;</mml:mo>
</mml:mover>
</mml:mrow>
<mml:mi>f</mml:mi>
</mml:msub>
</mml:mrow>
<mml:mo>)</mml:mo>
</mml:mrow>
</mml:mrow>
<mml:mi>t</mml:mi>
</mml:msub>
<mml:mo>&#x2212;</mml:mo>
<mml:msub>
<mml:mrow>
<mml:mrow>
<mml:mo>(</mml:mo>
<mml:mrow>
<mml:mover>
<mml:mover accent="true">
<mml:mi>v</mml:mi>
<mml:mo>&#x2192;</mml:mo>
</mml:mover>
<mml:mo>&#x2d9;</mml:mo>
</mml:mover>
</mml:mrow>
<mml:mo>)</mml:mo>
</mml:mrow>
</mml:mrow>
<mml:mi>t</mml:mi>
</mml:msub>
</mml:mrow>
</mml:math>
</inline-formula> represents the relative velocity of waves to the column, and <inline-formula>
<mml:math display="inline" id="im54">
<mml:mrow>
<mml:mo>&#x2016;</mml:mo>
<mml:msub>
<mml:mrow>
<mml:mrow>
<mml:mo>(</mml:mo>
<mml:mrow>
<mml:msub>
<mml:mover accent="true">
<mml:mi>v</mml:mi>
<mml:mo>&#x2192;</mml:mo>
</mml:mover>
<mml:mrow>
<mml:mi>r</mml:mi>
<mml:mi>e</mml:mi>
<mml:mi>l</mml:mi>
</mml:mrow>
</mml:msub>
</mml:mrow>
<mml:mo>)</mml:mo>
</mml:mrow>
</mml:mrow>
<mml:mi>t</mml:mi>
</mml:msub>
<mml:mo>&#x2016;</mml:mo>
</mml:mrow>
</mml:math>
</inline-formula> represents the norm of <inline-formula>
<mml:math display="inline" id="im55">
<mml:mrow>
<mml:msub>
<mml:mrow>
<mml:mrow>
<mml:mo>(</mml:mo>
<mml:mrow>
<mml:msub>
<mml:mover accent="true">
<mml:mi>v</mml:mi>
<mml:mo>&#x2192;</mml:mo>
</mml:mover>
<mml:mrow>
<mml:mi>r</mml:mi>
<mml:mi>e</mml:mi>
<mml:mi>l</mml:mi>
</mml:mrow>
</mml:msub>
</mml:mrow>
<mml:mo>)</mml:mo>
</mml:mrow>
</mml:mrow>
<mml:mi>t</mml:mi>
</mml:msub>
</mml:mrow>
</mml:math>
</inline-formula>.</p>
<p>By superimposing the generalized active forces and generalized inertia forces of the platform, tower, nacelle, stabilizing gyroscope, and rotor, we obtain the generalized active forces and generalized inertia forces of the entire system, and solve the equations to determine the motion state of the wind turbine, as shown in <xref ref-type="disp-formula" rid="eq18">Equation 18</xref>.</p>
<disp-formula id="eq18">
<label>(18)</label>
<mml:math display="block" id="M18">
<mml:mtable>
<mml:mtr>
<mml:mtd>
<mml:msub>
<mml:mi>F</mml:mi>
<mml:mrow>
<mml:mi>t</mml:mi>
<mml:mi>o</mml:mi>
<mml:mi>t</mml:mi>
<mml:mi>a</mml:mi>
<mml:mi>l</mml:mi>
<mml:mi>r</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mo>=</mml:mo>
<mml:msub>
<mml:mi>F</mml:mi>
<mml:mrow>
<mml:mi>P</mml:mi>
<mml:mi>t</mml:mi>
<mml:mi>o</mml:mi>
<mml:mi>t</mml:mi>
<mml:mi>a</mml:mi>
<mml:mi>l</mml:mi>
<mml:mi>r</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mo>+</mml:mo>
<mml:msub>
<mml:mi>F</mml:mi>
<mml:mrow>
<mml:mi>T</mml:mi>
<mml:mi>r</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mo>+</mml:mo>
<mml:msub>
<mml:mi>F</mml:mi>
<mml:mrow>
<mml:mi>g</mml:mi>
<mml:mi>y</mml:mi>
<mml:mi>r</mml:mi>
<mml:mi>o</mml:mi>
<mml:mo>_</mml:mo>
<mml:mi>t</mml:mi>
<mml:mi>o</mml:mi>
<mml:mi>t</mml:mi>
<mml:mi>a</mml:mi>
<mml:mi>l</mml:mi>
<mml:mo>_</mml:mo>
<mml:mi>r</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mo>+</mml:mo>
<mml:msub>
<mml:mi>F</mml:mi>
<mml:mrow>
<mml:mi>N</mml:mi>
<mml:mi>a</mml:mi>
<mml:mi>r</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mo>+</mml:mo>
<mml:msub>
<mml:mi>F</mml:mi>
<mml:mrow>
<mml:mi>R</mml:mi>
<mml:mi>o</mml:mi>
<mml:mi>t</mml:mi>
<mml:mi>o</mml:mi>
<mml:mi>r</mml:mi>
<mml:mi>r</mml:mi>
</mml:mrow>
</mml:msub>
</mml:mtd>
</mml:mtr>
<mml:mtr>
<mml:mtd>
<mml:msubsup>
<mml:mi>F</mml:mi>
<mml:mrow>
<mml:mi>t</mml:mi>
<mml:mi>o</mml:mi>
<mml:mi>t</mml:mi>
<mml:mi>a</mml:mi>
<mml:mi>l</mml:mi>
<mml:mi>r</mml:mi>
</mml:mrow>
<mml:mo>*</mml:mo>
</mml:msubsup>
<mml:mo>=</mml:mo>
<mml:msubsup>
<mml:mi>F</mml:mi>
<mml:mrow>
<mml:mi>P</mml:mi>
<mml:mi>t</mml:mi>
<mml:mi>o</mml:mi>
<mml:mi>t</mml:mi>
<mml:mi>a</mml:mi>
<mml:mi>l</mml:mi>
<mml:mi>r</mml:mi>
</mml:mrow>
<mml:mo>*</mml:mo>
</mml:msubsup>
<mml:mo>+</mml:mo>
<mml:msubsup>
<mml:mi>F</mml:mi>
<mml:mrow>
<mml:mi>T</mml:mi>
<mml:mi>r</mml:mi>
</mml:mrow>
<mml:mo>*</mml:mo>
</mml:msubsup>
<mml:mo>+</mml:mo>
<mml:msubsup>
<mml:mi>F</mml:mi>
<mml:mrow>
<mml:mi>g</mml:mi>
<mml:mi>y</mml:mi>
<mml:mi>r</mml:mi>
<mml:mi>o</mml:mi>
<mml:mi>C</mml:mi>
</mml:mrow>
<mml:mo>*</mml:mo>
</mml:msubsup>
<mml:mo>+</mml:mo>
<mml:msubsup>
<mml:mi>F</mml:mi>
<mml:mrow>
<mml:mi>N</mml:mi>
<mml:mi>a</mml:mi>
<mml:mi>r</mml:mi>
</mml:mrow>
<mml:mo>*</mml:mo>
</mml:msubsup>
<mml:mo>+</mml:mo>
<mml:msubsup>
<mml:mi>F</mml:mi>
<mml:mrow>
<mml:mi>R</mml:mi>
<mml:mi>o</mml:mi>
<mml:mi>t</mml:mi>
<mml:mi>o</mml:mi>
<mml:mi>r</mml:mi>
<mml:mi>r</mml:mi>
</mml:mrow>
<mml:mo>*</mml:mo>
</mml:msubsup>
</mml:mtd>
</mml:mtr>
<mml:mtr>
<mml:mtd>
<mml:msub>
<mml:mi>F</mml:mi>
<mml:mrow>
<mml:mi>t</mml:mi>
<mml:mi>o</mml:mi>
<mml:mi>t</mml:mi>
<mml:mi>a</mml:mi>
<mml:mi>l</mml:mi>
<mml:mi>r</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mo>+</mml:mo>
<mml:msubsup>
<mml:mi>F</mml:mi>
<mml:mrow>
<mml:mi>t</mml:mi>
<mml:mi>o</mml:mi>
<mml:mi>t</mml:mi>
<mml:mi>a</mml:mi>
<mml:mi>l</mml:mi>
<mml:mi>r</mml:mi>
</mml:mrow>
<mml:mo>*</mml:mo>
</mml:msubsup>
<mml:mo>=</mml:mo>
<mml:mn>0</mml:mn>
</mml:mtd>
</mml:mtr>
</mml:mtable>
</mml:math>
</disp-formula>
</sec>
<sec id="s2_3">
<label>2.3</label>
<title>Model validation</title>
<p>To validate the consistency between the 11-degree-of-freedom catenary wind turbine model (without tuned mass dampers) and the simulation results from OpenFAST software, this study designed two typical conditions for comparison with OpenFAST software: free decay experiments under still water with no wind conditions (Condition 1) and dynamic response analysis under coupled wind-wave effects (Condition 2). The specific condition parameters are shown in <xref ref-type="table" rid="T2">
<bold>Table&#xa0;2</bold>
</xref>.</p>
<table-wrap id="T2" position="float">
<label>Table&#xa0;2</label>
<caption>
<p>Wind and wave conditions in different operating conditions.</p>
</caption>
<table frame="hsides">
<thead>
<tr>
<th valign="middle" align="center">Condition</th>
<th valign="middle" align="center">Wave</th>
<th valign="middle" align="center">Wind</th>
</tr>
</thead>
<tbody>
<tr>
<td valign="middle" align="center">Condition1</td>
<td valign="middle" align="center">Still Water</td>
<td valign="middle" align="center">No Wind</td>
</tr>
<tr>
<td valign="middle" align="center">Condition2</td>
<td valign="middle" align="center">Airy Wave, Wave Height 5m, Period 10s</td>
<td valign="middle" align="center">Steady Wind 13m/s</td>
</tr>
</tbody>
</table>
</table-wrap>
<p>During the model validation process, AeroDyn v15 was used to calculate aerodynamic loads, and the map++ program was used to calculate mooring line tensions. To comprehensively evaluate model performance, initial disturbances were applied separately to surge, pitch, and tower-top fore-aft displacement in Condition 1 to observe the system&#x2019;s free decay characteristics; in Condition 2, the wind direction was set consistent with the wave direction to examine the system&#x2019;s dynamic response under coupled environmental loads.</p>
<p>Firstly, a free decay experiment was conducted under conditions of still water and no wind. The longitudinal sway, longitudinal heave and tower top front-back displacement of the wind turbine were assigned initial values, while the initial values of the other degrees of freedom were all zero. The free decay responses of the system were observed, and the results are shown in <xref ref-type="fig" rid="f2">
<bold>Figures&#xa0;2</bold>
</xref>&#x2013;<xref ref-type="fig" rid="f4">
<bold>4</bold>
</xref> respectively.</p>
<fig id="f2" position="float">
<label>Figure&#xa0;2</label>
<caption>
<p>Comparison of surge free decay response of 12-degree-of-freedom model with OpenFAST.</p>
</caption>
<graphic mimetype="image" mime-subtype="tiff" xlink:href="fmars-12-1597408-g002.tif">
<alt-text content-type="machine-generated">Two plots compare the OpenFAST and 12-degree-of-freedom model. The left plot shows surge in meters over time in seconds, with both models closely overlapping. The right plot displays amplitude versus frequency in hertz, with both models also almost identical.</alt-text>
</graphic>
</fig>
<fig id="f3" position="float">
<label>Figure&#xa0;3</label>
<caption>
<p>Comparison of pitch free decay response of 12-degree-of-freedom model with OpenFAST.</p>
</caption>
<graphic mimetype="image" mime-subtype="tiff" xlink:href="fmars-12-1597408-g003.tif">
<alt-text content-type="machine-generated">Two side-by-side graphs compare OpenFAST and a 12-degree-of-freedom model. The left graph shows a time-domain analysis of pitch in degrees over time, where both lines closely match. The right graph presents a spectral analysis of amplitude versus frequency, also showing a close match between the models, with a peak around 0.04 Hertz.</alt-text>
</graphic>
</fig>
<fig id="f4" position="float">
<label>Figure&#xa0;4</label>
<caption>
<p>Comparison of TTDspFA free decay response of 12-degree-of-freedom model with OpenFAST.</p>
</caption>
<graphic mimetype="image" mime-subtype="tiff" xlink:href="fmars-12-1597408-g004.tif">
<alt-text content-type="machine-generated">Two graphs comparing OpenFAST and a 12-degree-of-freedom model. The left graph shows time-domain analysis with oscillating amplitude decreasing over time. The right graph shows spectral analysis with a peak around 0.04 hertz in amplitude.</alt-text>
</graphic>
</fig>
<p>As shown in the figure above, the model in this paper demonstrates good consistency with OpenFAST calculation results in surge and pitch directions. For tower-top fore-aft displacement, although there are slight differences in amplitude, the overall dynamic characteristics remain consistent. Specific data comparisons are shown in <xref ref-type="table" rid="T3">
<bold>Table&#xa0;3</bold>
</xref>.</p>
<table-wrap id="T3" position="float">
<label>Table&#xa0;3</label>
<caption>
<p>Root mean square values of system response for the established model and OpenFAST model under condition 1.</p>
</caption>
<table frame="hsides">
<thead>
<tr>
<th valign="middle" align="center">Degree of Freedom</th>
<th valign="middle" align="center">FAST</th>
<th valign="middle" align="center">Self-developed Model</th>
<th valign="middle" align="center">Error</th>
</tr>
</thead>
<tbody>
<tr>
<td valign="middle" align="center">Surge</td>
<td valign="middle" align="center">1.8403 m</td>
<td valign="middle" align="center">1.8460 m</td>
<td valign="middle" align="center">0.31%</td>
</tr>
<tr>
<td valign="middle" align="center">Pitch</td>
<td valign="middle" align="center">1.6969&#xb0;</td>
<td valign="middle" align="center">1.6480&#xb0;</td>
<td valign="middle" align="center">2.88%</td>
</tr>
<tr>
<td valign="middle" align="center">Tower-top Fore-aft</td>
<td valign="middle" align="center">0.2159 m</td>
<td valign="middle" align="center">0.2310 m</td>
<td valign="middle" align="center">6.99%</td>
</tr>
</tbody>
</table>
</table-wrap>
<p>Second, comparative validation was conducted under combined wind and wave conditions. According to observations from <xref ref-type="fig" rid="f5">
<bold>Figures&#xa0;5</bold>
</xref>&#x2013;<xref ref-type="fig" rid="f7">
<bold>7</bold>
</xref>, under Condition 2 with a wave frequency of 0.1 Hz, the established wind turbine model shows high consistency with the OpenFAST model in natural frequency calculations, indicating high accuracy in frequency analysis. For time-domain analysis, the platform exhibits significant fluctuations in motion response for surge, heave, pitch, yaw, and tower-top fore-aft displacement degrees of freedom. These fluctuations mainly result from external excitation of wind and waves. However, as time progresses, the external loads on the wind turbine gradually approach dynamic equilibrium, causing the platform&#x2019;s motion response and tower-top fore-aft displacement response to eventually stabilize in a periodic oscillation state. Specific data comparisons are shown in <xref ref-type="table" rid="T4">
<bold>Table&#xa0;4</bold>
</xref>.</p>
<fig id="f5" position="float">
<label>Figure&#xa0;5</label>
<caption>
<p>Comparison of surge response of OpenFAST and 12 degrees of freedom models under LC 2.</p>
</caption>
<graphic mimetype="image" mime-subtype="tiff" xlink:href="fmars-12-1597408-g005.tif">
<alt-text content-type="machine-generated">Time-domain and spectral analysis graphs comparing OpenFAST and a twelve-degree-of-freedom model. The left graph shows pitch versus time, displaying a damping oscillation pattern converging at three degrees. The right graph shows amplitude versus frequency, with a prominent peak around 0.1 hertz. Both models exhibit similar patterns.</alt-text>
</graphic>
</fig>
<fig id="f6" position="float">
<label>Figure&#xa0;6</label>
<caption>
<p>Comparison of pitch response of OpenFAST and 12 degrees of freedom models under LC 2.</p>
</caption>
<graphic mimetype="image" mime-subtype="tiff" xlink:href="fmars-12-1597408-g006.tif">
<alt-text content-type="machine-generated">Two graphs compare OpenFAST and a twelve-degree-of-freedom model. The left graph shows pitch over time, with both models displaying similar oscillations. The right graph presents frequency versus amplitude, indicating peak alignment at 0.1 hertz for both models.</alt-text>
</graphic>
</fig>
<fig id="f7" position="float">
<label>Figure&#xa0;7</label>
<caption>
<p>Comparison of TTDspFA response of OpenFAST and 12 degrees of freedom models under LC 2.</p>
</caption>
<graphic mimetype="image" mime-subtype="tiff" xlink:href="fmars-12-1597408-g007.tif">
<alt-text content-type="machine-generated">Two line graphs compare data from OpenFAST and a 12-degree-of-freedom model. The left graph shows time history of TTDspFA with a pattern of decaying oscillations. The right graph shows frequency response with a prominent peak around 0.05, indicating similar amplitude patterns for both models.</alt-text>
</graphic>
</fig>
<table-wrap id="T4" position="float">
<label>Table&#xa0;4</label>
<caption>
<p>Root mean square values of system response for the established model and OpenFAST model under condition 2 during 300s simulation time.</p>
</caption>
<table frame="hsides">
<thead>
<tr>
<th valign="middle" align="center">Degree of Freedom</th>
<th valign="middle" align="center">FAST</th>
<th valign="middle" align="center">Self-developed model</th>
<th valign="middle" align="center">Error</th>
</tr>
</thead>
<tbody>
<tr>
<td valign="middle" align="center">Surge</td>
<td valign="middle" align="center">7.7404 m</td>
<td valign="middle" align="center">7.7810 m</td>
<td valign="middle" align="center">0.52%</td>
</tr>
<tr>
<td valign="middle" align="center">Pitch</td>
<td valign="middle" align="center">3.1772&#xb0;</td>
<td valign="middle" align="center">3.4550&#xb0;</td>
<td valign="middle" align="center">8.74%</td>
</tr>
<tr>
<td valign="middle" align="center">Tower-top Fore-aft</td>
<td valign="middle" align="center">0.3496 m</td>
<td valign="middle" align="center">0.3761 m</td>
<td valign="middle" align="center">7.58%</td>
</tr>
</tbody>
</table>
</table-wrap>
<p>In summary, the simulation results of the established 12-degree-of-freedom wind turbine model under still water with no wind conditions and combined wind-wave conditions show high consistency with the calculation results of OpenFAST software, with all error indicators controlled within 10%. This demonstrates that the model established in this paper has good accuracy and can be used for subsequent control strategy research.</p>
<p>Through comparative validation of these two typical conditions, it is fully demonstrated that the wind turbine dynamics model established in this paper can accurately simulate the dynamic response characteristics of wind turbines under different environmental conditions, laying a reliable theoretical foundation for subsequent research.</p>
</sec>
</sec>
<sec id="s3">
<label>3</label>
<title>Fuzzy controller with particle swarm optimization</title>
<p>During operation at sea, floating wind turbines are subjected to complex wind and wave loads, and the large-amplitude motions of the platform not only affect power generation efficiency but may also lead to structural fatigue damage. To effectively suppress platform oscillations, particularly pitch motion, this chapter proposes a fuzzy control strategy based on Particle Swarm Optimization (PSO), achieving precise control of platform motion by optimizing the control parameters of the anti-rolling gyroscope system.</p>
<p>Compared to traditional control methods, fuzzy control offers advantages such as independence from precise mathematical models, intuitive control rules, and strong robustness. However, the performance of traditional fuzzy controllers largely depends on expert experience and parameter tuning. To overcome this limitation, this chapter introduces the PSO algorithm to optimize the fuzzy controller, enhancing the platform oscillation suppression performance.</p>
<p>This system adopts a collaborative framework of fuzzy controller and Particle Swarm Optimization (PSO), with an overall architecture consisting of two phases: offline optimization and online control. The offline phase completes fuzzy controller design and PSO parameter optimization, while the online phase implements condition recognition, control execution, and dynamic adjustment. The overall framework of the system is shown in <xref ref-type="fig" rid="f8">
<bold>Figure&#xa0;8</bold>
</xref>.</p>
<fig id="f8" position="float">
<label>Figure&#xa0;8</label>
<caption>
<p>Overall framework diagram of the control system.</p>
</caption>
<graphic mimetype="image" mime-subtype="tiff" xlink:href="fmars-12-1597408-g008.tif">
<alt-text content-type="machine-generated">Flowchart depicting a two-phase process for controlling a system. The offline phase includes designing a fuzzy controller and PSO optimization, involving input/output definitions, fuzzy rule design, membership function design, and optimization calculations. The online stage encompasses condition identification, control execution, and monitoring. Condition identification involves environmental monitoring and condition matching. Control execution includes parameter selection, state acquisition, fuzzy control calculations, and control output. Monitoring involves performance calculation, condition judgment, and parameter transition. The chart outlines interconnected steps for efficient system management.</alt-text>
</graphic>
</fig>
<sec id="s3_1">
<label>3.1</label>
<title>Offline optimization</title>
<p>To achieve mapping from system states to control quantities, input and output variables must first undergo fuzzification. This paper uses seven linguistic values to describe pitch angle, pitch angular velocity, and control moment M: {NB, NM, NS, ZO, PS, PM, PB}, representing negative big, negative medium, negative small, zero, positive small, positive medium, and positive big, respectively.</p>
<p>A complete fuzzy control rule base was designed based on expert experience and system dynamic characteristics.</p>
<p>To improve the performance and adaptability of the control system, this paper introduces a hierarchical control architecture, dividing the entire control system into two levels: the decision layer and the execution layer:</p>
<p>Decision layer (upper-level control): Responsible for environmental condition recognition, control objective determination, and control parameter optimization. This layer operates at a lower update frequency, handling global and long-term system tasks, including: condition analysis and recognition based on sensor data, selection or adjustment of control parameters according to identified conditions</p>
<p>Execution layer (lower-level control): Responsible for the generation and execution of real-time control signals, operating at a higher frequency to ensure system real-time responsiveness, including: Real-time reception and filtering of sensor data, execution of fuzzy inference calculations to generate control signals, transmission of control signals to actuators and monitoring of execution status</p>
<p>The advantage of the hierarchical architecture lies in effectively separating tasks of different time scales, allowing the decision layer to focus on global optimization without affecting the real-time performance of the execution layer, while providing enhanced system adaptability and robustness. Information exchange between the two layers is carried out through parameter interfaces and state feedback, ensuring coordinated system operation.</p>
<p>During the PSO optimization process, the optimization objective function is first designed to achieve the goal of reducing the pitch angle. The optimization variables are the parameters of the fuzzy controller, with each particle representing a complete set of fuzzy controller parameters, including 7 membership function position parameters for input variable <inline-formula>
<mml:math display="inline" id="im56">
<mml:mi>&#x3b8;</mml:mi>
</mml:math>
</inline-formula>, 7 membership function position parameters for input variable &#x3b8;<sup>&#xb7;</sup>, and 7 membership function position parameters for output variable <inline-formula>
<mml:math display="inline" id="im57">
<mml:mi>M</mml:mi>
</mml:math>
</inline-formula>.</p>
<p>The operating conditions are designed as: wave height <inline-formula>
<mml:math display="inline" id="im58">
<mml:mrow>
<mml:mi>H</mml:mi>
<mml:mo>&#xa0;</mml:mo>
<mml:mo>=</mml:mo>
<mml:mo>&#xa0;</mml:mo>
<mml:mrow>
<mml:mo>{</mml:mo>
<mml:mrow>
<mml:msub>
<mml:mi>H</mml:mi>
<mml:mn>1</mml:mn>
</mml:msub>
<mml:mo>,</mml:mo>
<mml:mo>&#xa0;</mml:mo>
<mml:msub>
<mml:mi>H</mml:mi>
<mml:mn>2</mml:mn>
</mml:msub>
<mml:mo>,</mml:mo>
<mml:mo>&#xa0;</mml:mo>
<mml:msub>
<mml:mi>H</mml:mi>
<mml:mn>3</mml:mn>
</mml:msub>
</mml:mrow>
<mml:mo>}</mml:mo>
</mml:mrow>
</mml:mrow>
</mml:math>
</inline-formula>, period <inline-formula>
<mml:math display="inline" id="im59">
<mml:mrow>
<mml:mi>T</mml:mi>
<mml:mo>&#xa0;</mml:mo>
<mml:mo>=</mml:mo>
<mml:mo>&#xa0;</mml:mo>
<mml:mrow>
<mml:mo>{</mml:mo>
<mml:mrow>
<mml:msub>
<mml:mi>T</mml:mi>
<mml:mn>1</mml:mn>
</mml:msub>
<mml:mo>,</mml:mo>
<mml:mo>&#xa0;</mml:mo>
<mml:msub>
<mml:mi>T</mml:mi>
<mml:mn>2</mml:mn>
</mml:msub>
<mml:mo>,</mml:mo>
<mml:mo>&#xa0;</mml:mo>
<mml:msub>
<mml:mi>T</mml:mi>
<mml:mn>3</mml:mn>
</mml:msub>
</mml:mrow>
<mml:mo>}</mml:mo>
</mml:mrow>
</mml:mrow>
</mml:math>
</inline-formula>, and wind speed <inline-formula>
<mml:math display="inline" id="im60">
<mml:mrow>
<mml:mi>V</mml:mi>
<mml:mo>&#xa0;</mml:mo>
<mml:mo>=</mml:mo>
<mml:mo>&#xa0;</mml:mo>
<mml:mrow>
<mml:mo>{</mml:mo>
<mml:mrow>
<mml:msub>
<mml:mi>V</mml:mi>
<mml:mn>1</mml:mn>
</mml:msub>
<mml:mo>,</mml:mo>
<mml:mo>&#xa0;</mml:mo>
<mml:msub>
<mml:mi>V</mml:mi>
<mml:mn>2</mml:mn>
</mml:msub>
<mml:mo>,</mml:mo>
<mml:mo>&#xa0;</mml:mo>
<mml:msub>
<mml:mi>V</mml:mi>
<mml:mn>3</mml:mn>
</mml:msub>
</mml:mrow>
<mml:mo>}</mml:mo>
</mml:mrow>
</mml:mrow>
</mml:math>
</inline-formula>The objective function is designed as <xref ref-type="disp-formula" rid="eq19">Equation 19</xref>:</p>
<disp-formula id="eq19">
<label>(19)</label>
<mml:math display="block" id="M19">
<mml:mrow>
<mml:msub>
<mml:mi>f</mml:mi>
<mml:mn>1</mml:mn>
</mml:msub>
<mml:mo>=</mml:mo>
<mml:mstyle displaystyle="true">
<mml:mrow>
<mml:msubsup>
<mml:mo>&#x222b;</mml:mo>
<mml:mrow>
<mml:msub>
<mml:mi>t</mml:mi>
<mml:mrow>
<mml:mi>s</mml:mi>
<mml:mi>t</mml:mi>
<mml:mi>a</mml:mi>
<mml:mi>r</mml:mi>
<mml:mi>t</mml:mi>
</mml:mrow>
</mml:msub>
</mml:mrow>
<mml:mrow>
<mml:msub>
<mml:mi>t</mml:mi>
<mml:mrow>
<mml:mi>e</mml:mi>
<mml:mi>n</mml:mi>
<mml:mi>d</mml:mi>
</mml:mrow>
</mml:msub>
</mml:mrow>
</mml:msubsup>
<mml:mrow>
<mml:msup>
<mml:mi>&#x3b8;</mml:mi>
<mml:mn>2</mml:mn>
</mml:msup>
</mml:mrow>
</mml:mrow>
</mml:mstyle>
<mml:mo>(</mml:mo>
<mml:mi>t</mml:mi>
<mml:mo>)</mml:mo>
<mml:mi>d</mml:mi>
<mml:mi>t</mml:mi>
<mml:mo>+</mml:mo>
<mml:msub>
<mml:mi>&#x3bb;</mml:mi>
<mml:mn>1</mml:mn>
</mml:msub>
<mml:mstyle displaystyle="true">
<mml:mrow>
<mml:msubsup>
<mml:mo>&#x222b;</mml:mo>
<mml:mrow>
<mml:msub>
<mml:mi>t</mml:mi>
<mml:mrow>
<mml:mi>s</mml:mi>
<mml:mi>t</mml:mi>
<mml:mi>a</mml:mi>
<mml:mi>r</mml:mi>
<mml:mi>t</mml:mi>
</mml:mrow>
</mml:msub>
</mml:mrow>
<mml:mrow>
<mml:msub>
<mml:mi>t</mml:mi>
<mml:mrow>
<mml:mi>e</mml:mi>
<mml:mi>n</mml:mi>
<mml:mi>d</mml:mi>
</mml:mrow>
</mml:msub>
</mml:mrow>
</mml:msubsup>
<mml:mrow>
<mml:mi>max</mml:mi>
</mml:mrow>
</mml:mrow>
</mml:mstyle>
<mml:msup>
<mml:mrow>
<mml:mo>(</mml:mo>
<mml:mn>0</mml:mn>
<mml:mo>,</mml:mo>
<mml:mo>|</mml:mo>
<mml:mi>&#x3b8;</mml:mi>
<mml:mo>(</mml:mo>
<mml:mi>t</mml:mi>
<mml:mo>)</mml:mo>
<mml:mo>|</mml:mo>
<mml:mo>&#x2212;</mml:mo>
<mml:msub>
<mml:mi>&#x3b8;</mml:mi>
<mml:mrow>
<mml:mi>m</mml:mi>
<mml:mi>a</mml:mi>
<mml:mi>x</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mo>)</mml:mo>
</mml:mrow>
<mml:mn>2</mml:mn>
</mml:msup>
<mml:mi>d</mml:mi>
<mml:mi>t</mml:mi>
</mml:mrow>
</mml:math>
</disp-formula>
<p>
<inline-formula>
<mml:math display="inline" id="im61">
<mml:mrow>
<mml:mi>&#x3b8;</mml:mi>
<mml:mrow>
<mml:mo>(</mml:mo>
<mml:mi>t</mml:mi>
<mml:mo>)</mml:mo>
</mml:mrow>
</mml:mrow>
</mml:math>
</inline-formula> is the pitch angle of the system at time <inline-formula>
<mml:math display="inline" id="im62">
<mml:mi>t</mml:mi>
</mml:math>
</inline-formula>, <inline-formula>
<mml:math display="inline" id="im63">
<mml:mrow>
<mml:msub>
<mml:mi>t</mml:mi>
<mml:mrow>
<mml:mtext>start</mml:mtext>
</mml:mrow>
</mml:msub>
</mml:mrow>
</mml:math>
</inline-formula> and <inline-formula>
<mml:math display="inline" id="im64">
<mml:mrow>
<mml:msub>
<mml:mi>t</mml:mi>
<mml:mrow>
<mml:mtext>end</mml:mtext>
</mml:mrow>
</mml:msub>
</mml:mrow>
</mml:math>
</inline-formula> are the start and end points of time integration, <inline-formula>
<mml:math display="inline" id="im65">
<mml:mrow>
<mml:msub>
<mml:mi>&#x3b8;</mml:mi>
<mml:mrow>
<mml:mtext>max</mml:mtext>
</mml:mrow>
</mml:msub>
</mml:mrow>
</mml:math>
</inline-formula> is the predetermined maximum allowable pitch angle, and <inline-formula>
<mml:math display="inline" id="im66">
<mml:mrow>
<mml:msub>
<mml:mi>&#x3bb;</mml:mi>
<mml:mn>1</mml:mn>
</mml:msub>
</mml:mrow>
</mml:math>
</inline-formula> is the weight of the penalty factor, used to adjust the severity of the penalty for exceeding the maximum allowable pitch angle.</p>
</sec>
<sec id="s3_2">
<label>3.2</label>
<title>Online control</title>
<p>The condition recognition phase involves environmental parameter measurements through real-time monitoring of wave parameters (such as wave height <inline-formula>
<mml:math display="inline" id="im67">
<mml:mrow>
<mml:mi>H</mml:mi>
<mml:mrow>
<mml:mo>(</mml:mo>
<mml:mi>t</mml:mi>
<mml:mo>)</mml:mo>
</mml:mrow>
</mml:mrow>
</mml:math>
</inline-formula> and wave period <inline-formula>
<mml:math display="inline" id="im68">
<mml:mrow>
<mml:mi>T</mml:mi>
<mml:mrow>
<mml:mo>(</mml:mo>
<mml:mi>t</mml:mi>
<mml:mo>)</mml:mo>
</mml:mrow>
</mml:mrow>
</mml:math>
</inline-formula>) and wind parameters (such as wind speed <inline-formula>
<mml:math display="inline" id="im69">
<mml:mrow>
<mml:mi>V</mml:mi>
<mml:mrow>
<mml:mo>(</mml:mo>
<mml:mi>t</mml:mi>
<mml:mo>)</mml:mo>
</mml:mrow>
</mml:mrow>
</mml:math>
</inline-formula> and wind direction). Characteristic quantities are calculated through short-term statistical feature extraction, as shown in <xref ref-type="disp-formula" rid="eq20">Equation 20</xref>.</p>
<disp-formula id="eq20">
<label>(20)</label>
<mml:math display="block" id="M20">
<mml:mtable columnalign="left">
<mml:mtr>
<mml:mtd>
<mml:msub>
<mml:mi>H</mml:mi>
<mml:mrow>
<mml:mi>c</mml:mi>
<mml:mi>h</mml:mi>
<mml:mi>a</mml:mi>
<mml:mi>r</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mo>=</mml:mo>
<mml:msqrt>
<mml:mrow>
<mml:mfrac>
<mml:mn>1</mml:mn>
<mml:mrow>
<mml:msub>
<mml:mi>T</mml:mi>
<mml:mi>w</mml:mi>
</mml:msub>
</mml:mrow>
</mml:mfrac>
<mml:mstyle displaystyle="true">
<mml:mrow>
<mml:msubsup>
<mml:mo>&#x222b;</mml:mo>
<mml:mrow>
<mml:mi>t</mml:mi>
<mml:mo>&#x2212;</mml:mo>
<mml:msub>
<mml:mi>T</mml:mi>
<mml:mi>w</mml:mi>
</mml:msub>
</mml:mrow>
<mml:mi>t</mml:mi>
</mml:msubsup>
<mml:mrow>
<mml:msup>
<mml:mi>H</mml:mi>
<mml:mn>2</mml:mn>
</mml:msup>
</mml:mrow>
</mml:mrow>
</mml:mstyle>
<mml:mo>(</mml:mo>
<mml:mi>&#x3c4;</mml:mi>
<mml:mo>)</mml:mo>
<mml:mi>d</mml:mi>
<mml:mi>&#x3c4;</mml:mi>
</mml:mrow>
</mml:msqrt>
</mml:mtd>
</mml:mtr>
<mml:mtr>
<mml:mtd>
<mml:msub>
<mml:mi>T</mml:mi>
<mml:mrow>
<mml:mi>c</mml:mi>
<mml:mi>h</mml:mi>
<mml:mi>a</mml:mi>
<mml:mi>r</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mo>=</mml:mo>
<mml:mfrac>
<mml:mn>1</mml:mn>
<mml:mrow>
<mml:msub>
<mml:mi>T</mml:mi>
<mml:mi>w</mml:mi>
</mml:msub>
</mml:mrow>
</mml:mfrac>
<mml:mstyle displaystyle="true">
<mml:mrow>
<mml:msubsup>
<mml:mo>&#x222b;</mml:mo>
<mml:mrow>
<mml:mi>t</mml:mi>
<mml:mo>&#x2212;</mml:mo>
<mml:msub>
<mml:mi>T</mml:mi>
<mml:mi>w</mml:mi>
</mml:msub>
</mml:mrow>
<mml:mi>t</mml:mi>
</mml:msubsup>
<mml:mi>T</mml:mi>
</mml:mrow>
</mml:mstyle>
<mml:mo>(</mml:mo>
<mml:mi>&#x3c4;</mml:mi>
<mml:mo>)</mml:mo>
<mml:mi>d</mml:mi>
<mml:mi>&#x3c4;</mml:mi>
</mml:mtd>
</mml:mtr>
<mml:mtr>
<mml:mtd>
<mml:msub>
<mml:mi>V</mml:mi>
<mml:mrow>
<mml:mi>c</mml:mi>
<mml:mi>h</mml:mi>
<mml:mi>a</mml:mi>
<mml:mi>r</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mo>=</mml:mo>
<mml:mfrac>
<mml:mn>1</mml:mn>
<mml:mrow>
<mml:msub>
<mml:mi>T</mml:mi>
<mml:mi>w</mml:mi>
</mml:msub>
</mml:mrow>
</mml:mfrac>
<mml:mstyle displaystyle="true">
<mml:mrow>
<mml:msubsup>
<mml:mo>&#x222b;</mml:mo>
<mml:mrow>
<mml:mi>t</mml:mi>
<mml:mo>&#x2212;</mml:mo>
<mml:msub>
<mml:mi>T</mml:mi>
<mml:mi>w</mml:mi>
</mml:msub>
</mml:mrow>
<mml:mi>t</mml:mi>
</mml:msubsup>
<mml:mi>V</mml:mi>
</mml:mrow>
</mml:mstyle>
<mml:mo>(</mml:mo>
<mml:mi>&#x3c4;</mml:mi>
<mml:mo>)</mml:mo>
<mml:mi>d</mml:mi>
<mml:mi>&#x3c4;</mml:mi>
</mml:mtd>
</mml:mtr>
</mml:mtable>
</mml:math>
</disp-formula>
<p>Based on the measurement results of environmental parameters, the condition distance metric uses Euclidean distance:</p>
<disp-formula id="eq21">
<label>(21)</label>
<mml:math display="block" id="M21">
<mml:mrow>
<mml:msub>
<mml:mi>D</mml:mi>
<mml:mrow>
<mml:mi>i</mml:mi>
<mml:mi>j</mml:mi>
<mml:mi>k</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mo>=</mml:mo>
<mml:msqrt>
<mml:mrow>
<mml:msup>
<mml:mrow>
<mml:mo>(</mml:mo>
<mml:msub>
<mml:mi>H</mml:mi>
<mml:mrow>
<mml:mi>c</mml:mi>
<mml:mi>h</mml:mi>
<mml:mi>a</mml:mi>
<mml:mi>r</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mo>&#x2212;</mml:mo>
<mml:msub>
<mml:mi>H</mml:mi>
<mml:mi>i</mml:mi>
</mml:msub>
<mml:mo>)</mml:mo>
</mml:mrow>
<mml:mn>2</mml:mn>
</mml:msup>
<mml:mo>+</mml:mo>
<mml:msup>
<mml:mrow>
<mml:mo>(</mml:mo>
<mml:msub>
<mml:mi>T</mml:mi>
<mml:mrow>
<mml:mi>c</mml:mi>
<mml:mi>h</mml:mi>
<mml:mi>a</mml:mi>
<mml:mi>r</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mo>&#x2212;</mml:mo>
<mml:msub>
<mml:mi>T</mml:mi>
<mml:mi>j</mml:mi>
</mml:msub>
<mml:mo>)</mml:mo>
</mml:mrow>
<mml:mn>2</mml:mn>
</mml:msup>
<mml:mo>+</mml:mo>
<mml:msup>
<mml:mrow>
<mml:mo>(</mml:mo>
<mml:msub>
<mml:mi>V</mml:mi>
<mml:mrow>
<mml:mi>c</mml:mi>
<mml:mi>h</mml:mi>
<mml:mi>a</mml:mi>
<mml:mi>r</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mo>&#x2212;</mml:mo>
<mml:msub>
<mml:mi>V</mml:mi>
<mml:mi>k</mml:mi>
</mml:msub>
<mml:mo>)</mml:mo>
</mml:mrow>
<mml:mn>2</mml:mn>
</mml:msup>
</mml:mrow>
</mml:msqrt>
</mml:mrow>
</mml:math>
</disp-formula>
<p>Where <inline-formula>
<mml:math display="inline" id="im70">
<mml:mrow>
<mml:mrow>
<mml:mo>(</mml:mo>
<mml:mrow>
<mml:msub>
<mml:mi>H</mml:mi>
<mml:mi>i</mml:mi>
</mml:msub>
<mml:mo>,</mml:mo>
<mml:msub>
<mml:mi>T</mml:mi>
<mml:mi>j</mml:mi>
</mml:msub>
<mml:mo>,</mml:mo>
<mml:msub>
<mml:mi>V</mml:mi>
<mml:mi>k</mml:mi>
</mml:msub>
</mml:mrow>
<mml:mo>)</mml:mo>
</mml:mrow>
</mml:mrow>
</mml:math>
</inline-formula> are the preset condition points. The similarity between the current condition and preset conditions is determined, and the closest condition is matched, as shown in <xref ref-type="disp-formula" rid="eq22">Equation 22</xref>.</p>
<disp-formula id="eq22">
<label>(22)</label>
<mml:math display="block" id="M22">
<mml:mrow>
<mml:mo>(</mml:mo>
<mml:msup>
<mml:mi>i</mml:mi>
<mml:mo>*</mml:mo>
</mml:msup>
<mml:mo>,</mml:mo>
<mml:msup>
<mml:mi>j</mml:mi>
<mml:mo>*</mml:mo>
</mml:msup>
<mml:mo>,</mml:mo>
<mml:msup>
<mml:mi>k</mml:mi>
<mml:mo>*</mml:mo>
</mml:msup>
<mml:mo>)</mml:mo>
<mml:mo>=</mml:mo>
<mml:mtext>argmin</mml:mtext>
<mml:msub>
<mml:mi>D</mml:mi>
<mml:mrow>
<mml:mi>i</mml:mi>
<mml:mi>j</mml:mi>
<mml:mi>k</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mo>(</mml:mo>
<mml:msub>
<mml:mi>H</mml:mi>
<mml:mrow>
<mml:mi>c</mml:mi>
<mml:mi>h</mml:mi>
<mml:mi>a</mml:mi>
<mml:mi>r</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mo>,</mml:mo>
<mml:msub>
<mml:mi>T</mml:mi>
<mml:mrow>
<mml:mi>c</mml:mi>
<mml:mi>h</mml:mi>
<mml:mi>a</mml:mi>
<mml:mi>r</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mo>,</mml:mo>
<mml:msub>
<mml:mi>V</mml:mi>
<mml:mrow>
<mml:mi>c</mml:mi>
<mml:mi>h</mml:mi>
<mml:mi>a</mml:mi>
<mml:mi>r</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mo>)</mml:mo>
</mml:mrow>
</mml:math>
</disp-formula>
<p>Based on the matched condition point, the optimal fuzzy controller parameters are selected. If the current condition completely matches a preset condition, the corresponding parameters are directly used; if it falls between different conditions, weighted interpolation is used to calculate the controller parameters, with the interpolation formula being <xref ref-type="disp-formula" rid="eq23">Equation 23</xref>.</p>
<disp-formula id="eq23">
<label>(23)</label>
<mml:math display="block" id="M23">
<mml:mrow>
<mml:mi>P</mml:mi>
<mml:mo>=</mml:mo>
<mml:mstyle displaystyle="true">
<mml:mo>&#x2211;</mml:mo>
<mml:mrow>
<mml:msub>
<mml:mi>w</mml:mi>
<mml:mrow>
<mml:mi>i</mml:mi>
<mml:mi>j</mml:mi>
<mml:mi>k</mml:mi>
</mml:mrow>
</mml:msub>
</mml:mrow>
</mml:mstyle>
<mml:msub>
<mml:mi>P</mml:mi>
<mml:mrow>
<mml:mi>i</mml:mi>
<mml:mi>j</mml:mi>
<mml:mi>k</mml:mi>
</mml:mrow>
</mml:msub>
</mml:mrow>
</mml:math>
</disp-formula>
<p>Where the weight is <xref ref-type="disp-formula" rid="eq24">Equation 24</xref>.</p>
<disp-formula id="eq24">
<label>(24)</label>
<mml:math display="block" id="M24">
<mml:mrow>
<mml:msub>
<mml:mi>w</mml:mi>
<mml:mrow>
<mml:mi>i</mml:mi>
<mml:mi>j</mml:mi>
<mml:mi>k</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mo>=</mml:mo>
<mml:mfrac>
<mml:mrow>
<mml:mi>exp</mml:mi>
<mml:mrow>
<mml:mo>(</mml:mo>
<mml:mrow>
<mml:mo>&#x2212;</mml:mo>
<mml:mfrac>
<mml:mrow>
<mml:msub>
<mml:mi>D</mml:mi>
<mml:mrow>
<mml:mi>i</mml:mi>
<mml:mi>j</mml:mi>
<mml:mi>k</mml:mi>
</mml:mrow>
</mml:msub>
</mml:mrow>
<mml:mrow>
<mml:msup>
<mml:mi>&#x3c3;</mml:mi>
<mml:mn>2</mml:mn>
</mml:msup>
</mml:mrow>
</mml:mfrac>
</mml:mrow>
<mml:mo>)</mml:mo>
</mml:mrow>
</mml:mrow>
<mml:mrow>
<mml:mstyle displaystyle="true">
<mml:mo>&#x2211;</mml:mo>
<mml:mrow>
<mml:mi>exp</mml:mi>
</mml:mrow>
</mml:mstyle>
<mml:mrow>
<mml:mo>(</mml:mo>
<mml:mrow>
<mml:mo>&#x2212;</mml:mo>
<mml:mfrac>
<mml:mrow>
<mml:msub>
<mml:mi>D</mml:mi>
<mml:mrow>
<mml:mi>i</mml:mi>
<mml:mi>j</mml:mi>
<mml:mi>k</mml:mi>
</mml:mrow>
</mml:msub>
</mml:mrow>
<mml:mrow>
<mml:msup>
<mml:mi>&#x3c3;</mml:mi>
<mml:mn>2</mml:mn>
</mml:msup>
</mml:mrow>
</mml:mfrac>
</mml:mrow>
<mml:mo>)</mml:mo>
</mml:mrow>
</mml:mrow>
</mml:mfrac>
</mml:mrow>
</mml:math>
</disp-formula>
<p>Normalization is performed through distance <inline-formula>
<mml:math display="inline" id="im71">
<mml:mrow>
<mml:msub>
<mml:mi>D</mml:mi>
<mml:mrow>
<mml:mi>i</mml:mi>
<mml:mi>j</mml:mi>
<mml:mi>k</mml:mi>
</mml:mrow>
</mml:msub>
</mml:mrow>
</mml:math>
</inline-formula> to ensure that closer conditions have a greater influence on interpolation. The system monitors the roll reduction effect in real-time. The short-term roll reduction effect is calculated using the integral formula <inline-formula>
<mml:math display="inline" id="im72">
<mml:mrow>
<mml:msub>
<mml:mi>J</mml:mi>
<mml:mn>1</mml:mn>
</mml:msub>
<mml:mrow>
<mml:mo>(</mml:mo>
<mml:mi>t</mml:mi>
<mml:mo>)</mml:mo>
</mml:mrow>
<mml:mo>=</mml:mo>
<mml:mfrac>
<mml:mn>1</mml:mn>
<mml:mi>T</mml:mi>
</mml:mfrac>
<mml:mstyle displaystyle="true">
<mml:mrow>
<mml:msubsup>
<mml:mo>&#x222b;</mml:mo>
<mml:mrow>
<mml:mi>t</mml:mi>
<mml:mo>&#x2212;</mml:mo>
<mml:mi>T</mml:mi>
</mml:mrow>
<mml:mi>t</mml:mi>
</mml:msubsup>
<mml:mrow>
<mml:msup>
<mml:mi>&#x3b8;</mml:mi>
<mml:mn>2</mml:mn>
</mml:msup>
<mml:mrow>
<mml:mo>(</mml:mo>
<mml:mi>&#x3c4;</mml:mi>
<mml:mo>)</mml:mo>
</mml:mrow>
<mml:mi>d</mml:mi>
</mml:mrow>
</mml:mrow>
</mml:mstyle>
</mml:mrow>
</mml:math>
</inline-formula>, reflecting the mean square value of the pitch angle within the time window.</p>
<p>When a change in operating conditions is detected, the criterion <inline-formula>
<mml:math display="inline" id="im73">
<mml:mrow>
<mml:mi>&#x394;</mml:mi>
<mml:mi>D</mml:mi>
<mml:mo>=</mml:mo>
<mml:mrow>
<mml:mo>|</mml:mo>
<mml:mrow>
<mml:mi>D</mml:mi>
<mml:mrow>
<mml:mo>(</mml:mo>
<mml:mi>t</mml:mi>
<mml:mo>)</mml:mo>
</mml:mrow>
<mml:mo>&#x2212;</mml:mo>
<mml:mi>D</mml:mi>
<mml:mrow>
<mml:mo>(</mml:mo>
<mml:mrow>
<mml:mi>t</mml:mi>
<mml:mo>&#x2212;</mml:mo>
<mml:mi>&#x394;</mml:mi>
<mml:mi>t</mml:mi>
</mml:mrow>
<mml:mo>)</mml:mo>
</mml:mrow>
</mml:mrow>
<mml:mo>|</mml:mo>
</mml:mrow>
<mml:mo>&gt;</mml:mo>
<mml:mi>&#x3f5;</mml:mi>
</mml:mrow>
</mml:math>
</inline-formula> is used to determine whether control parameters need to be switched. Where <inline-formula>
<mml:math display="inline" id="im74">
<mml:mrow>
<mml:mi>D</mml:mi>
<mml:mrow>
<mml:mo>(</mml:mo>
<mml:mi>t</mml:mi>
<mml:mo>)</mml:mo>
</mml:mrow>
</mml:mrow>
</mml:math>
</inline-formula> represents the Euclidean distance <inline-formula>
<mml:math display="inline" id="im75">
<mml:mrow>
<mml:msub>
<mml:mi>D</mml:mi>
<mml:mrow>
<mml:mi>i</mml:mi>
<mml:mi>j</mml:mi>
<mml:mi>k</mml:mi>
</mml:mrow>
</mml:msub>
</mml:mrow>
</mml:math>
</inline-formula> between the condition characteristic quantities <inline-formula>
<mml:math display="inline" id="im76">
<mml:mrow>
<mml:mrow>
<mml:mo>(</mml:mo>
<mml:mrow>
<mml:msub>
<mml:mi>H</mml:mi>
<mml:mrow>
<mml:mi>c</mml:mi>
<mml:mi>h</mml:mi>
<mml:mi>a</mml:mi>
<mml:mi>r</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mo>,</mml:mo>
<mml:msub>
<mml:mi>T</mml:mi>
<mml:mrow>
<mml:mi>c</mml:mi>
<mml:mi>h</mml:mi>
<mml:mi>a</mml:mi>
<mml:mi>r</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mo>,</mml:mo>
<mml:msub>
<mml:mi>V</mml:mi>
<mml:mrow>
<mml:mi>c</mml:mi>
<mml:mi>h</mml:mi>
<mml:mi>a</mml:mi>
<mml:mi>r</mml:mi>
</mml:mrow>
</mml:msub>
</mml:mrow>
<mml:mo>)</mml:mo>
</mml:mrow>
</mml:mrow>
</mml:math>
</inline-formula> at the current time t and the nearest preset condition point. If the switching condition is met, a parameter smooth switching strategy is adopted, as shown in <xref ref-type="disp-formula" rid="eq25">Equation 25</xref>.</p>
<disp-formula id="eq25">
<label>(25)</label>
<mml:math display="block" id="M25">
<mml:mrow>
<mml:mi>P</mml:mi>
<mml:mo>(</mml:mo>
<mml:mi>t</mml:mi>
<mml:mo>)</mml:mo>
<mml:mo>=</mml:mo>
<mml:mi>&#x3bb;</mml:mi>
<mml:mi>P</mml:mi>
<mml:mo>(</mml:mo>
<mml:mi>t</mml:mi>
<mml:mo>&#x2212;</mml:mo>
<mml:mi>&#x394;</mml:mi>
<mml:mi>t</mml:mi>
<mml:mo>)</mml:mo>
<mml:mo>+</mml:mo>
<mml:mo>(</mml:mo>
<mml:mn>1</mml:mn>
<mml:mo>&#x2212;</mml:mo>
<mml:mi>&#x3bb;</mml:mi>
<mml:mo>)</mml:mo>
<mml:msub>
<mml:mi>P</mml:mi>
<mml:mrow>
<mml:mtext>new</mml:mtext>
</mml:mrow>
</mml:msub>
</mml:mrow>
</mml:math>
</disp-formula>
<p>Where <inline-formula>
<mml:math display="inline" id="im77">
<mml:mi>&#x3bb;</mml:mi>
</mml:math>
</inline-formula> is the smoothing factor, used to reduce system disturbances caused by switching.</p>
</sec>
</sec>
<sec id="s4">
<label>4</label>
<title>Simulation experiments</title>
<p>This chapter evaluates the performance of a PSO algorithm-based gyroscopic stabilization control system for floating wind turbines through a series of simulated verification scenarios. The verification work examines free decay response and combined wind-wave effects, comparing three states: uncontrolled, passive control, and active control, comprehensively evaluating the proposed control scheme&#x2019;s performance through dynamic response characteristics and vibration reduction effects. The main parameters of the dual roll-reduction gyroscopes in the semi-submersible wind turbine are shown in <xref ref-type="table" rid="T5">
<bold>Table&#xa0;5</bold>
</xref>.</p>
<table-wrap id="T5" position="float">
<label>Table&#xa0;5</label>
<caption>
<p>Main parameters of single gyro stabilizer.</p>
</caption>
<table frame="hsides">
<thead>
<tr>
<th valign="middle" align="center">Parameter</th>
<th valign="middle" align="center">Value/Unit</th>
</tr>
</thead>
<tbody>
<tr>
<td valign="middle" align="center">n</td>
<td valign="middle" align="center">2</td>
</tr>
<tr>
<td valign="middle" align="center">
<inline-formula>
<mml:math display="inline" id="im78">
<mml:mrow>
<mml:msub>
<mml:mi>I</mml:mi>
<mml:mrow>
<mml:mi>g</mml:mi>
<mml:mi>y</mml:mi>
</mml:mrow>
</mml:msub>
</mml:mrow>
</mml:math>
</inline-formula>
</td>
<td valign="middle" align="center">107000(<inline-formula>
<mml:math display="inline" id="im79">
<mml:mrow>
<mml:mi>k</mml:mi>
<mml:mi>g</mml:mi>
<mml:mo>&#xb7;</mml:mo>
<mml:msup>
<mml:mi>m</mml:mi>
<mml:mn>2</mml:mn>
</mml:msup>
</mml:mrow>
</mml:math>
</inline-formula>)</td>
</tr>
<tr>
<td valign="middle" align="center">
<inline-formula>
<mml:math display="inline" id="im80">
<mml:mrow>
<mml:msub>
<mml:mi>I</mml:mi>
<mml:mrow>
<mml:mi>s</mml:mi>
<mml:mi>p</mml:mi>
<mml:mi>i</mml:mi>
<mml:mi>n</mml:mi>
</mml:mrow>
</mml:msub>
</mml:mrow>
</mml:math>
</inline-formula>
</td>
<td valign="middle" align="center">215625 (<inline-formula>
<mml:math display="inline" id="im81">
<mml:mrow>
<mml:mi>k</mml:mi>
<mml:mi>g</mml:mi>
<mml:mo>&#xb7;</mml:mo>
<mml:msup>
<mml:mi>m</mml:mi>
<mml:mn>2</mml:mn>
</mml:msup>
</mml:mrow>
</mml:math>
</inline-formula>)</td>
</tr>
<tr>
<td valign="middle" align="center">
<inline-formula>
<mml:math display="inline" id="im82">
<mml:mrow>
<mml:msub>
<mml:mi>w</mml:mi>
<mml:mrow>
<mml:mi>s</mml:mi>
<mml:mi>p</mml:mi>
<mml:mi>i</mml:mi>
<mml:mi>n</mml:mi>
</mml:mrow>
</mml:msub>
</mml:mrow>
</mml:math>
</inline-formula>
</td>
<td valign="middle" align="center">1000 (<inline-formula>
<mml:math display="inline" id="im83">
<mml:mrow>
<mml:mi>r</mml:mi>
<mml:mi>p</mml:mi>
<mml:mi>m</mml:mi>
</mml:mrow>
</mml:math>
</inline-formula>)</td>
</tr>
<tr>
<td valign="middle" align="center">
<inline-formula>
<mml:math display="inline" id="im84">
<mml:mrow>
<mml:msub>
<mml:mi>K</mml:mi>
<mml:mrow>
<mml:mi>g</mml:mi>
<mml:mi>y</mml:mi>
</mml:mrow>
</mml:msub>
</mml:mrow>
</mml:math>
</inline-formula>
</td>
<td valign="middle" align="center">140000(<inline-formula>
<mml:math display="inline" id="im85">
<mml:mrow>
<mml:mi>k</mml:mi>
<mml:mi>g</mml:mi>
<mml:mo>&#xb7;</mml:mo>
<mml:msup>
<mml:mi>m</mml:mi>
<mml:mn>2</mml:mn>
</mml:msup>
<mml:mo stretchy="false">/</mml:mo>
<mml:msup>
<mml:mi>s</mml:mi>
<mml:mn>2</mml:mn>
</mml:msup>
</mml:mrow>
</mml:math>
</inline-formula>)</td>
</tr>
<tr>
<td valign="middle" align="center">
<inline-formula>
<mml:math display="inline" id="im86">
<mml:mrow>
<mml:msub>
<mml:mi>C</mml:mi>
<mml:mrow>
<mml:mi>g</mml:mi>
<mml:mi>y</mml:mi>
</mml:mrow>
</mml:msub>
</mml:mrow>
</mml:math>
</inline-formula>
</td>
<td valign="middle" align="center">160000(<inline-formula>
<mml:math display="inline" id="im87">
<mml:mrow>
<mml:mi>k</mml:mi>
<mml:mi>g</mml:mi>
<mml:mo>&#xb7;</mml:mo>
<mml:msup>
<mml:mi>m</mml:mi>
<mml:mn>2</mml:mn>
</mml:msup>
<mml:mo stretchy="false">/</mml:mo>
<mml:mi>s</mml:mi>
</mml:mrow>
</mml:math>
</inline-formula>)</td>
</tr>
</tbody>
</table>
</table-wrap>
<p>To comprehensively evaluate the control system&#x2019;s performance, this chapter designs four typical operating conditions for simulation verification, with specific design schemes shown in <xref ref-type="table" rid="T6">
<bold>Table&#xa0;6</bold>
</xref>. Among them, LC1 condition verifies the system&#x2019;s basic dynamic characteristics and control effects, LC2 condition represents control performance under normal operating conditions, and LC3 condition tests the system&#x2019;s limit performance in adverse environments., LC4 condition represents the response performance of the system under random sea conditions.</p>
<table-wrap id="T6" position="float">
<label>Table&#xa0;6</label>
<caption>
<p>Experimental conditions.</p>
</caption>
<table frame="hsides">
<thead>
<tr>
<th valign="top" align="center">Condition number</th>
<th valign="top" align="center">Wind condition</th>
<th valign="top" align="center">Wave condition</th>
<th valign="top" align="center">Control scheme</th>
</tr>
</thead>
<tbody>
<tr>
<td valign="top" align="center">LC1</td>
<td valign="top" align="center">No Wind</td>
<td valign="top" align="center">Still Water</td>
<td valign="top" align="center">No Control/Passive Control/Active Control</td>
</tr>
<tr>
<td valign="top" align="center">LC2</td>
<td valign="top" align="center">13m/s</td>
<td valign="top" align="center">H=5m, T=10s</td>
<td valign="top" align="center">No Control/Passive Control/Active Control</td>
</tr>
<tr>
<td valign="top" align="center">LC3</td>
<td valign="top" align="center">18m/s</td>
<td valign="top" align="center">H=8m, T=10s</td>
<td valign="top" align="center">No Control/Passive Control/Active Control</td>
</tr>
<tr>
<td valign="top" align="center">LC4</td>
<td valign="top" align="center">13m/s</td>
<td valign="top" align="center">P-M</td>
<td valign="top" align="center">No Control/Passive Control/Active Control</td>
</tr>
</tbody>
</table>
</table-wrap>
<sec id="s4_1">
<label>4.1</label>
<title>Analysis of experimental results</title>
<sec id="s4_1_1">
<label>4.1.1</label>
<title>Analysis of free decay conditions</title>
<p>
<xref ref-type="fig" rid="f9">
<bold>Figure&#xa0;9</bold>
</xref> presents the time-domain response comparison of the system&#x2019;s precession angle, tower displacement, and roll angle under the windless still-water condition (LC1). This condition can effectively evaluate the basic dynamic characteristics of the damping system.</p>
<fig id="f9" position="float">
<label>Figure&#xa0;9</label>
<caption>
<p>
<bold>(a-c)</bold> Comparison of gyroscopic stabilizer control under calm water and windless condition.</p>
</caption>
<graphic mimetype="image" mime-subtype="tiff" xlink:href="fmars-12-1597408-g009.tif">
<alt-text content-type="machine-generated">Three graphs compare control conditions over time in seconds: (a) Precession in degrees, with Passive Control and Active Control lines; (b) TTdspFA in meters, showing No Control, Passive Control, and Active Control; (c) Pitch in meters, displaying similar control conditions. All depict oscillations under LC1 condition.</alt-text>
</graphic>
</fig>
<p>From the pitch angle response in <xref ref-type="fig" rid="f9">
<bold>Figure&#xa0;9c</bold>
</xref>, it can be observed that under uncontrolled conditions, the platform exhibits obvious low-frequency damped oscillations with slow attenuation. In comparison, passive control produces a certain vibration reduction effect, with an RMS suppression rate of 14.36%. Active control shows the most significant effect, with an RMS suppression rate as high as 37.56%, demonstrating effective control capability over platform motion.</p>
<p>The tower-top displacement response in <xref ref-type="fig" rid="f9">
<bold>Figure&#xa0;9b</bold>
</xref> further confirms the effectiveness of the stabilization system. The active control scheme achieves an RMS suppression rate of 44.23% for tower-top displacement and a standard deviation suppression rate of 47.28%, significantly outperforming the passive control&#x2019;s 31.66% and 35.51%. This indicates that active control not only reduces the force amplitude on the tower but also improves the overall stiffness of the system, contributing to extended fatigue life of the wind turbine structure.</p>
<p>
<xref ref-type="fig" rid="f9">
<bold>Figure&#xa0;9a</bold>
</xref> shows the comparison of precession angles, which reflects the differences in dynamic characteristics of the gyroscope stabilizer under the two control strategies. Under passive control, the precession angle is generated spontaneously with the platform movement and has a smaller amplitude; while under active control, the precession angle is larger and shows a more regular changing trend. This is the result of the control system actively adjusting the gyroscopic torque, thereby achieving the optimal suppression of the platform movement.</p>
</sec>
<sec id="s4_1_2">
<label>4.1.2</label>
<title>Analysis of combined wind and wave conditions</title>
<p>
<xref ref-type="fig" rid="f10">
<bold>Figure&#xa0;10</bold>
</xref> shows the control performance of the system under regular operating conditions (LC2) with wind speed of 13m/s, wave height of 5m, and period of 10s. This condition represents the typical operational state of floating wind turbines under normal sea and wind conditions. To eliminate the transient response, the data analysis was conducted using data ranging from 50 seconds to 400 seconds.</p>
<fig id="f10" position="float">
<label>Figure&#xa0;10</label>
<caption>
<p>
<bold>(a-c)</bold> Comparison of gyroscopic stabilizer control under combined wind and wave condition.</p>
</caption>
<graphic mimetype="image" mime-subtype="tiff" xlink:href="fmars-12-1597408-g010.tif">
<alt-text content-type="machine-generated">Three line graphs compare control strategies under LC2 conditions over time. Graph (a) shows precession; green indicates passive and red indicates active control. Graph (b) shows TTDspFA, also including blue for no control. Graph (c) shows pitch, comparing no control (blue), passive (green), and active control (red).</alt-text>
</graphic>
</fig>
<p>From the pitch angle response in <xref ref-type="fig" rid="f10">
<bold>Figure&#xa0;10c</bold>
</xref>, it is evident that the platform generates significant periodic oscillations under the combined effect of wind and waves in the uncontrolled state. The active control scheme performs excellently in terms of peak suppression rate, reaching 21.45%, considerably higher than the passive control&#x2019;s 13.16%. Notably, the active control&#x2019;s RMS suppression rate and standard deviation suppression rate are 2.66% and 31.56% respectively, both superior to the corresponding metrics of passive control.</p>
<p>
<xref ref-type="fig" rid="f10">
<bold>Figure&#xa0;10b</bold>
</xref> indicates that active control has a significant effect on tower-top displacement peak suppression, reaching 22.61%, higher than the passive control&#x2019;s 18.64%. In terms of RMS suppression rate, active and passive control are 0.61% and 0.49% respectively, with little difference. Regarding standard deviation suppression rate, the effects of the two control methods are similar, with active control at 10.38% and passive control at 10.72%. This phenomenon indicates that under regular wave conditions, both control methods have comparable effects on suppressing the overall vibration energy of the structure, but active control has advantages in suppressing peak responses, which is crucial for the safe operation of wind turbines.</p>
<p>The precession angle comparison in <xref ref-type="fig" rid="f10">
<bold>Figure&#xa0;10a</bold>
</xref> shows that the active control scheme maintains the gyroscope&#x2019;s precession angle within a smaller range, avoiding the large-amplitude precession that may occur in passive control, reducing the risk of mechanical wear on gyroscope bearings, and contributing to extended system service life. Meanwhile, reasonable control of the precession angle also ensures that the gyroscope always operates in the high-efficiency zone, maximizing its stabilization effect.</p>
</sec>
<sec id="s4_1_3">
<label>4.1.3</label>
<title>Analysis of extreme sea conditions</title>
<p>
<xref ref-type="fig" rid="f11">
<bold>Figure&#xa0;11</bold>
</xref> shows the control performance of the system under extreme sea conditions (LC3). This condition sets wind speed at 18m/s, wave height at 8m, and period at 10s, representing the system&#x2019;s limit operating state in severe marine environments. To eliminate the transient response, the data analysis was conducted using data ranging from 50 seconds to 400 seconds.</p>
<fig id="f11" position="float">
<label>Figure&#xa0;11</label>
<caption>
<p>
<bold>(a-c)</bold> Comparison of gyroscopic stabilizer control under extreme sea condition.</p>
</caption>
<graphic mimetype="image" mime-subtype="tiff" xlink:href="fmars-12-1597408-g011.tif">
<alt-text content-type="machine-generated">Chart with three line graphs comparing control methods in LC3 conditions.   (a) Precession Comparison graph shows oscillations decreasing over time with lines for Passive Control (green) and Active Control (red).  (b) TTDspFA Comparison graph includes oscillations for No Control (blue), Passive Control (green), and Active Control (red), stabilizing around 0.4 meters.  (c) Pitch Comparison graph displays pitch oscillations for No Control (blue), Passive Control (green), and Active Control (red), stabilizing around four degrees.  X-axis represents time in seconds.</alt-text>
</graphic>
</fig>
<p>
<xref ref-type="fig" rid="f11">
<bold>Figure&#xa0;11c</bold>
</xref> shows that under such severe conditions, active control has significant advantages in pitch angle control, with a peak suppression rate reaching 31.52%, far higher than the passive control&#x2019;s 15.73%. In terms of standard deviation suppression rate, active control reaches 35.81%, also significantly better than passive control&#x2019;s 23.14%. This indicates that active control strategies can more effectively control large-amplitude platform movements under extreme conditions, ensuring safe operation of wind turbines in harsh environments.</p>
<p>The tower-top displacement comparison in <xref ref-type="fig" rid="f11">
<bold>Figure&#xa0;11b</bold>
</xref> reveals an interesting phenomenon: active control performs excellently in peak suppression (24.58%), higher than passive control (19.26%); However, in terms of RMS suppression rate and standard deviation suppression rate, passive control slightly outperforms active control. This phenomenon may stem from the active control strategy prioritizing overall platform stability under extreme conditions, sacrificing suppression of certain high-frequency vibrations. Considering that peak loads are often the decisive factor for structural safety under extreme conditions, this &#x201c;trade-off&#x201d; of active control is actually a more reasonable control strategy.</p>
<p>The precession angle comparison in <xref ref-type="fig" rid="f11">
<bold>Figure&#xa0;11a</bold>
</xref> demonstrates the superiority of active control under extreme conditions. Under passive control, the precession angle approaches mechanical limits during certain periods, posing a risk of control saturation. In contrast, active control, through optimized control strategies, maintains the precession angle within a safe range and actively adjusts during peak wind and wave periods, achieving precise control of platform motion.</p>
</sec>
<sec id="s4_1_4">
<label>4.1.4</label>
<title>Random sea condition analysis</title>
<p>
<xref ref-type="fig" rid="f12">
<bold>Figure&#xa0;12</bold>
</xref> shows the control performance of the system under the condition of no wind and random waves of the JOWNSAP spectrum (LC4). The effective wave height is set at 8 meters, and this condition sets the wind speed at 13 meters per second, along with the working state under the random wave generation conditions. To eliminate the transient response, the data analysis was conducted using data ranging from 50 seconds to 400 seconds.</p>
<fig id="f12" position="float">
<label>Figure&#xa0;12</label>
<caption>
<p>
<bold>(a-c)</bold> Comparison of gyroscopic stabilizer control under random sea condition.</p>
</caption>
<graphic mimetype="image" mime-subtype="tiff" xlink:href="fmars-12-1597408-g012.tif">
<alt-text content-type="machine-generated">Three line graphs compare control conditions over time, up to 400 seconds, labeled (a) Precession, (b) TTDspFA, and (c) Pitch. Conditions include No Control, Passive Control, and Active Control, represented by blue, green, and red lines, respectively. The graphs measure varying degrees of degrees and meters, showing fluctuations stabilizing over time.</alt-text>
</graphic>
</fig>
<p>
<xref ref-type="fig" rid="f12">
<bold>Figure&#xa0;12c</bold>
</xref> shows that under random operating conditions, the roll angle without control experiences significant oscillations. Active control and passive control exhibit relatively obvious control effects. Among them, the peak suppression rate of active control reaches 38.16%, and the standard deviation suppression rate reaches 31.25%. The peak suppression rate of passive control reaches 13.91%, and the standard deviation suppression rate is 17.05%. This indicates that active control can also maintain good control effects under random operating conditions.</p>
<p>
<xref ref-type="fig" rid="f12">
<bold>Figure&#xa0;12b</bold>
</xref> shows that in terms of tower displacement, compared with the uncontrolled condition, the peak vibration suppression effects of active control and passive control are more significant. The standard deviation vibration suppression rate of active control reached 27.02%, while that of passive control was 22.31%. This might be due to the fact that under random waves, the gyroscope places more emphasis on the stability of the control system, resulting in less obvious peak control effects on the tower displacement.</p>
<p>
<xref ref-type="fig" rid="f12">
<bold>Figure&#xa0;12a</bold>
</xref> shows that in terms of the precession angle, both active control and passive control remain within a relatively reasonable range.</p>
</sec>
</sec>
<sec id="s4_2" sec-type="discussion">
<label>4.2</label>
<title>Discussion of results</title>
<p>To comprehensively evaluate the performance of different control strategies, <xref ref-type="table" rid="T7">
<bold>Tables&#xa0;7</bold>
</xref>, <xref ref-type="table" rid="T8">
<bold>8</bold>
</xref> summarize the key performance indicators of each control scheme under three operating conditions. This study employs three evaluation indicators for quantitative analysis of control effects:</p>
<table-wrap id="T7" position="float">
<label>Table&#xa0;7</label>
<caption>
<p>Comparison of pitch angle suppression rates under different conditions (%).</p>
</caption>
<table frame="hsides">
<thead>
<tr>
<th valign="bottom" align="center">Condition</th>
<th valign="bottom" align="center">Control method</th>
<th valign="bottom" align="center">RMS suppression rate</th>
<th valign="bottom" align="center">Standard deviation suppression rate</th>
<th valign="bottom" align="center">Peak suppression rate</th>
</tr>
</thead>
<tbody>
<tr>
<td valign="bottom" align="center" rowspan="2">LC1</td>
<td valign="bottom" align="center">Active Control</td>
<td valign="bottom" align="center">37.56</td>
<td valign="bottom" align="center">36.86</td>
<td valign="bottom" align="center"/>
</tr>
<tr>
<td valign="bottom" align="center">Passive Control</td>
<td valign="bottom" align="center">14.36</td>
<td valign="bottom" align="center">15.51</td>
<td valign="bottom" align="center"/>
</tr>
<tr>
<td valign="bottom" align="center" rowspan="2">LC2</td>
<td valign="bottom" align="center">Active Control</td>
<td valign="bottom" align="center">2.66</td>
<td valign="bottom" align="center">31.56</td>
<td valign="bottom" align="center">21.45</td>
</tr>
<tr>
<td valign="bottom" align="center">Passive Control</td>
<td valign="bottom" align="center">1.24</td>
<td valign="bottom" align="center">10.21</td>
<td valign="bottom" align="center">13.16</td>
</tr>
<tr>
<td valign="bottom" align="center" rowspan="2">LC3</td>
<td valign="bottom" align="center">Active Control</td>
<td valign="bottom" align="center">4.41</td>
<td valign="bottom" align="center">35.81</td>
<td valign="bottom" align="center">31.52</td>
</tr>
<tr>
<td valign="bottom" align="center">Passive Control</td>
<td valign="bottom" align="center">3.47</td>
<td valign="bottom" align="center">23.14</td>
<td valign="bottom" align="center">15.73</td>
</tr>
<tr>
<td valign="bottom" align="center" rowspan="2">LC4</td>
<td valign="bottom" align="center">Active Control</td>
<td valign="bottom" align="center">2.62</td>
<td valign="bottom" align="center">31.25</td>
<td valign="bottom" align="center">38.16</td>
</tr>
<tr>
<td valign="bottom" align="center">Passive Control</td>
<td valign="bottom" align="center">1.94</td>
<td valign="bottom" align="center">17.05</td>
<td valign="bottom" align="center">13.91</td>
</tr>
</tbody>
</table>
</table-wrap>
<table-wrap id="T8" position="float">
<label>Table&#xa0;8</label>
<caption>
<p>Comparison of tower-top displacement suppression rates under different conditions (%).</p>
</caption>
<table frame="hsides">
<thead>
<tr>
<th valign="bottom" align="center">Condition</th>
<th valign="bottom" align="center">Control method</th>
<th valign="bottom" align="center">RMS suppression rate</th>
<th valign="bottom" align="center">Standard deviation suppression rate</th>
<th valign="bottom" align="center">Peak suppression rate</th>
</tr>
</thead>
<tbody>
<tr>
<td valign="bottom" align="center" rowspan="2">LC1</td>
<td valign="bottom" align="center">Active Control</td>
<td valign="bottom" align="center">44.23</td>
<td valign="bottom" align="center">47.28</td>
<td valign="bottom" align="center"/>
</tr>
<tr>
<td valign="bottom" align="center">Passive Control</td>
<td valign="bottom" align="center">31.66</td>
<td valign="bottom" align="center">35.51</td>
<td valign="bottom" align="center"/>
</tr>
<tr>
<td valign="bottom" align="center" rowspan="2">LC2</td>
<td valign="bottom" align="center">Active Control</td>
<td valign="bottom" align="center">0.61</td>
<td valign="bottom" align="center">10.85</td>
<td valign="bottom" align="center">22.61</td>
</tr>
<tr>
<td valign="bottom" align="center">Passive Control</td>
<td valign="bottom" align="center">0.49</td>
<td valign="bottom" align="center">10.61</td>
<td valign="bottom" align="center">18.64</td>
</tr>
<tr>
<td valign="bottom" align="center" rowspan="2">LC3</td>
<td valign="bottom" align="center">Active Control</td>
<td valign="bottom" align="center">0.99</td>
<td valign="bottom" align="center">33.13</td>
<td valign="bottom" align="center">24.58</td>
</tr>
<tr>
<td valign="bottom" align="center">Passive Control</td>
<td valign="bottom" align="center">1.24</td>
<td valign="bottom" align="center">30.22</td>
<td valign="bottom" align="center">19.26</td>
</tr>
<tr>
<td valign="bottom" align="center" rowspan="2">LC4</td>
<td valign="bottom" align="center">Active Control</td>
<td valign="bottom" align="center">0.54</td>
<td valign="bottom" align="center">27.02</td>
<td valign="bottom" align="center">17.83</td>
</tr>
<tr>
<td valign="bottom" align="center">Passive Control</td>
<td valign="bottom" align="center">1.02</td>
<td valign="bottom" align="center">22.31</td>
<td valign="bottom" align="center">5.01</td>
</tr>
</tbody>
</table>
</table-wrap>
<p>1. RMS suppression rate calculation formula is expressed as <xref ref-type="disp-formula" rid="eq26">Equation 26</xref>:</p>
<disp-formula id="eq26">
<label>(26)</label>
<mml:math display="block" id="M26">
<mml:mrow>
<mml:msub>
<mml:mi>&#x3b7;</mml:mi>
<mml:mrow>
<mml:mi>R</mml:mi>
<mml:mi>M</mml:mi>
<mml:mi>S</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mo>=</mml:mo>
<mml:mrow>
<mml:mo>(</mml:mo>
<mml:mrow>
<mml:mn>1</mml:mn>
<mml:mo>&#x2212;</mml:mo>
<mml:mfrac>
<mml:mrow>
<mml:mi>R</mml:mi>
<mml:mi>M</mml:mi>
<mml:msub>
<mml:mi>S</mml:mi>
<mml:mi>c</mml:mi>
</mml:msub>
</mml:mrow>
<mml:mrow>
<mml:mi>R</mml:mi>
<mml:mi>M</mml:mi>
<mml:msub>
<mml:mi>S</mml:mi>
<mml:mi>n</mml:mi>
</mml:msub>
</mml:mrow>
</mml:mfrac>
</mml:mrow>
<mml:mo>)</mml:mo>
</mml:mrow>
<mml:mo>&#xd7;</mml:mo>
<mml:mn>100</mml:mn>
<mml:mo>%</mml:mo>
</mml:mrow>
</mml:math>
</disp-formula>
<p>Where, <inline-formula>
<mml:math display="inline" id="im88">
<mml:mrow>
<mml:mi>R</mml:mi>
<mml:mi>M</mml:mi>
<mml:msub>
<mml:mi>S</mml:mi>
<mml:mi>c</mml:mi>
</mml:msub>
</mml:mrow>
</mml:math>
</inline-formula> is the root mean square value under controlled conditions, and <inline-formula>
<mml:math display="inline" id="im89">
<mml:mrow>
<mml:mi>R</mml:mi>
<mml:mi>M</mml:mi>
<mml:msub>
<mml:mi>S</mml:mi>
<mml:mi>n</mml:mi>
</mml:msub>
</mml:mrow>
</mml:math>
</inline-formula> is the root mean square value under uncontrolled conditions.</p>
<p>2. Standard deviation suppression rate calculation formula is expressed as <xref ref-type="disp-formula" rid="eq27">Equation 27</xref>:</p>
<disp-formula id="eq27">
<label>(27)</label>
<mml:math display="block" id="M27">
<mml:mrow>
<mml:msub>
<mml:mi>&#x3b7;</mml:mi>
<mml:mi>&#x3c3;</mml:mi>
</mml:msub>
<mml:mo>=</mml:mo>
<mml:mrow>
<mml:mo>(</mml:mo>
<mml:mrow>
<mml:mn>1</mml:mn>
<mml:mo>&#x2212;</mml:mo>
<mml:mfrac>
<mml:mrow>
<mml:msub>
<mml:mi>&#x3c3;</mml:mi>
<mml:mi>c</mml:mi>
</mml:msub>
</mml:mrow>
<mml:mrow>
<mml:msub>
<mml:mi>&#x3c3;</mml:mi>
<mml:mi>n</mml:mi>
</mml:msub>
</mml:mrow>
</mml:mfrac>
</mml:mrow>
<mml:mo>)</mml:mo>
</mml:mrow>
<mml:mo>&#xd7;</mml:mo>
<mml:mn>100</mml:mn>
<mml:mo>%</mml:mo>
</mml:mrow>
</mml:math>
</disp-formula>
<p>Where, <inline-formula>
<mml:math display="inline" id="im90">
<mml:mrow>
<mml:msub>
<mml:mi>&#x3c3;</mml:mi>
<mml:mi>c</mml:mi>
</mml:msub>
</mml:mrow>
</mml:math>
</inline-formula> is the standard deviation under controlled conditions, and <inline-formula>
<mml:math display="inline" id="im91">
<mml:mrow>
<mml:msub>
<mml:mi>&#x3c3;</mml:mi>
<mml:mi>n</mml:mi>
</mml:msub>
</mml:mrow>
</mml:math>
</inline-formula> is the standard deviation under uncontrolled conditions.</p>
<p>3. Peak suppression rate calculation formula is expressed as <xref ref-type="disp-formula" rid="eq28">Equation 28</xref>:</p>
<disp-formula id="eq28">
<label>(28)</label>
<mml:math display="block" id="M28">
<mml:mrow>
<mml:msub>
<mml:mi>&#x3b7;</mml:mi>
<mml:mrow>
<mml:mi>p</mml:mi>
<mml:mi>e</mml:mi>
<mml:mi>a</mml:mi>
<mml:mi>k</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mo>=</mml:mo>
<mml:mrow>
<mml:mo>(</mml:mo>
<mml:mrow>
<mml:mn>1</mml:mn>
<mml:mo>&#x2212;</mml:mo>
<mml:mfrac>
<mml:mrow>
<mml:mo>|</mml:mo>
<mml:mi>x</mml:mi>
<mml:msub>
<mml:mo>|</mml:mo>
<mml:mrow>
<mml:mi>m</mml:mi>
<mml:mi>a</mml:mi>
<mml:mi>x</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>c</mml:mi>
</mml:mrow>
</mml:msub>
</mml:mrow>
<mml:mrow>
<mml:mo>|</mml:mo>
<mml:mi>x</mml:mi>
<mml:msub>
<mml:mo>|</mml:mo>
<mml:mrow>
<mml:mi>m</mml:mi>
<mml:mi>a</mml:mi>
<mml:mi>x</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>n</mml:mi>
</mml:mrow>
</mml:msub>
</mml:mrow>
</mml:mfrac>
</mml:mrow>
<mml:mo>)</mml:mo>
</mml:mrow>
<mml:mo>&#xd7;</mml:mo>
<mml:mn>100</mml:mn>
<mml:mo>%</mml:mo>
</mml:mrow>
</mml:math>
</disp-formula>
<p>Where, <inline-formula>
<mml:math display="inline" id="im92">
<mml:mrow>
<mml:mo>|</mml:mo>
<mml:mi>x</mml:mi>
<mml:msub>
<mml:mo>|</mml:mo>
<mml:mrow>
<mml:mi>m</mml:mi>
<mml:mi>a</mml:mi>
<mml:mi>x</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>c</mml:mi>
</mml:mrow>
</mml:msub>
</mml:mrow>
</mml:math>
</inline-formula> is the absolute peak value under controlled conditions, and <inline-formula>
<mml:math display="inline" id="im93">
<mml:mrow>
<mml:mo>|</mml:mo>
<mml:mi>x</mml:mi>
<mml:msub>
<mml:mo>|</mml:mo>
<mml:mrow>
<mml:mi>m</mml:mi>
<mml:mi>a</mml:mi>
<mml:mi>x</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>n</mml:mi>
</mml:mrow>
</mml:msub>
</mml:mrow>
</mml:math>
</inline-formula>&#x200b; is the absolute peak value under uncontrolled conditions.</p>
<p>These three indicators evaluate the control effects of the stabilization system from the perspectives of root mean square value, standard deviation, and peak value, comprehensively reflecting the performance of control strategies under different operating conditions.</p>
<sec id="s4_2_1">
<label>4.2.1</label>
<title>Comprehensive analysis of control effects</title>
<p>Based on the analysis of experimental results across three conditions, the active control scheme demonstrates the following characteristics:</p>
<list list-type="order">
<list-item>
<p>Advantages under free decay conditions (LC1): Active control shows significant effects in suppressing free decay vibrations, with suppression rates far higher than passive control for both pitch angle and tower-top displacement, indicating that active control can more effectively dissipate system vibration energy and accelerate the system&#x2019;s return to equilibrium.</p>
</list-item>
<list-item>
<p>Performance under normal operating conditions (LC2): Active control has comprehensive advantages in pitch angle control, especially in peak suppression. For tower-top displacement, although the two control methods have similar performance in RMS and standard deviation suppression, active control still has advantages in peak suppression. This indicates that active control strategies can effectively handle conventional wind and wave conditions and ensure platform operational stability.</p>
</list-item>
<list-item>
<p>Performance under extreme conditions (LC3): Active control shows its most significant advantages in pitch angle control, with all indicators far superior to passive control. For tower-top displacement, active control prioritizes peak suppression, which is the most critical performance indicator in extreme environments. Although slightly inferior to passive control in RMS and standard deviation suppression, this minor difference (&#x2264;1%) has limited impact on overall system performance, while the significant advantage of active control in peak suppression (an improvement of 4.6%) has decisive significance for structural safety.</p>
</list-item>
<list-item>
<p>Performance under random conditions (LC4): The advantages of active control in terms of pitch oscillation are quite obvious. There are significant improvements in RMS, standard deviation, and peak vibration suppression rate. For the tower top displacement, the effect of active control is relatively weak, but it still has an advantage compared to passive control.</p>
</list-item>
</list>
</sec>
<sec id="s4_2_2">
<label>4.2.2</label>
<title>Comprehensive benefit assessment</title>
<p>Through comparative analysis, it can be concluded that the active control strategy of the gyroscopic stabilization system demonstrates comprehensive and significant advantages under all four typical conditions, particularly in the following key aspects:</p>
<list list-type="order">
<list-item>
<p>Vibration suppression efficiency: Active control outperforms passive control in the vast majority of indicators, with an average improvement exceeding 15 percentage points.</p>
</list-item>
<list-item>
<p>Peak response control: Under all conditions, active control consistently leads in the ability to suppress peak responses, which has decisive significance for ensuring structural safety.</p>
</list-item>
<list-item>
<p>Adaptability: As environmental conditions deteriorate, the advantages of active control over passive control gradually expand, indicating its stronger adaptability in complex and changing environments.</p>
</list-item>
</list>
<p>The results demonstrate that the gyroscopic stabilization system based on precession angle active control can effectively improve the motion response of floating wind turbines, significantly enhancing their operational stability and safety under various sea conditions, providing reliable technical assurance for the practical application of offshore floating wind turbines.</p>
</sec>
</sec>
</sec>
<sec id="s5" sec-type="conclusions">
<label>5</label>
<title>Conclusions and future work</title>
<sec id="s5_1">
<label>5.1</label>
<title>Main research achievements</title>
<p>This study addresses the motion stability problem of floating offshore wind turbines under complex sea conditions by proposing a particle swarm optimization fuzzy control method based on a gyroscope-wind turbine coupled dynamics model, and verifies its effectiveness through a series of simulation experiments. The main achievements of this research are as follows:</p>
<list list-type="order">
<list-item>
<p>Gyroscope-wind turbine coupled dynamics modeling: Successfully established a 12-degree-of-freedom fully coupled dynamics model incorporating platform six-degree-of-freedom motion, tower flexible deformation, and stabilizing gyroscopes. This model, constructed using the Kane method, realizes the description of fully coupled effects among platform motion, tower deformation, rotor rotation, and gyroscopic precession, providing a theoretical foundation for floating wind turbine stabilization control. The model&#x2019;s effectiveness is confirmed through validation against OpenFAST software, with all error metrics controlled within 10%.</p>
</list-item>
<list-item>
<p>PSO-optimized fuzzy control system design: Designed a fuzzy control framework based on particle swarm optimization, achieving precise control of the gyroscopic stabilization system by optimizing the membership function parameters of the fuzzy controller. A hierarchical control architecture is adopted, dividing the control system into decision and execution layers, effectively separating tasks of different time scales and improving system adaptability and robustness.</p>
</list-item>
<list-item>
<p>Online condition recognition and parameter optimization: Developed a condition recognition method based on real-time monitoring of environmental parameters, achieving matching between current and preset conditions through short-time statistical feature extraction and Euclidean distance measurement. Designed a parameter smooth switching strategy to reduce system disturbances caused by control parameter switching, enhancing the adaptability of the control system under complex and changing sea conditions.</p>
</list-item>
<list-item>
<p>Stabilization control performance verification: Comprehensively evaluated the performance of the proposed control scheme through simulation verification of four typical conditions. Results show that the active control scheme has significant advantages compared to passive control and no-control schemes:</p>
</list-item>
</list>
<p>Under free decay conditions (LC1), the pitch angle RMS suppression rate reaches 37.56%, far higher than passive control&#x2019;s 14.36%; the tower-top displacement RMS suppression rate reaches 44.23%, significantly better than passive control&#x2019;s 31.66%.</p>
<p>Under normal operating conditions (LC2), active control achieves 21.45% in pitch angle peak suppression, higher than passive control&#x2019;s 13.16%; tower-top displacement peak suppression rate reaches 22.61%, better than passive control&#x2019;s 18.64%.</p>
<p>Under extreme sea conditions (LC3), active control performs most prominently in pitch angle control, with peak suppression rate reaching 31.52%, far higher than passive control&#x2019;s 15.73%; tower-top displacement peak suppression rate reaches 24.58%, better than passive control&#x2019;s 19.26%.</p>
<p>Under the random sea condition (LC4), the peak vibration suppression rate of the active control for the roll angle reached 38.16%, which was much higher than the 13.91% of the passive control. The vibration suppression rate of the tower top displacement was 17.83%, also higher than the 5.01% of the passive control.</p>
</sec>
<sec id="s5_2">
<label>5.2</label>
<title>Future research directions</title>
<p>Despite a series of achievements in floating wind turbine stabilization control, there are still the following directions worthy of in-depth study:</p>
<list list-type="order">
<list-item>
<p>Experimental verification of control strategies: Current research is mainly based on numerical simulation; future work should conduct water basin model tests or field experiments to verify the feasibility and effectiveness of the proposed control strategies in real environments. Experimental verification of control effects and system stability under extreme sea conditions is particularly important to provide more reliable evidence for engineering applications.</p>
</list-item>
<list-item>
<p>Control algorithm optimization: Based on the existing PSO-fuzzy control framework, introduce advanced control methods such as deep reinforcement learning and adaptive dynamic programming to develop control algorithms that simultaneously consider stabilization effects, energy consumption optimization, and equipment life, further enhancing system comprehensive performance.</p>
</list-item>
<list-item>
<p>Multi-gyroscope collaborative control research: Explore collaborative control strategies for multiple stabilizing gyroscopes, including optimal gyroscope arrangement schemes, power allocation strategies, and fault-tolerant control methods, improving system control effectiveness and reliability.</p>
</list-item>
<list-item>
<p>Robust control under random wave conditions: Extend research on the robustness of control strategies under more complex real sea conditions such as random waves and irregular waves. Establish control parameter adaptive adjustment mechanisms based on wave spectrum characteristics to improve system adaptability and disturbance rejection in random marine environments. Pay special attention to control reliability and stability under extreme random wave conditions.</p>
</list-item>
<list-item>
<p>Research on nonlinear dynamic behavior of coupled systems: Deeply explore the nonlinear dynamic characteristics of wind turbine-platform-gyroscope coupled systems under complex sea conditions, including system stability analysis, bifurcation phenomenon research, and chaos behavior identification. Develop more accurate nonlinear models to provide theoretical support for advanced control strategy development.</p>
</list-item>
</list>
<p>In conclusion, this research provides new technical approaches and solutions for stabilization control of floating offshore wind turbines. The established gyroscope-wind turbine coupled dynamics model and PSO-optimized fuzzy control system provide theoretical foundation and technical support for research in related fields. Future research will further expand the application scope and engineering implementation pathways of control strategies, making greater contributions to the development of the floating offshore wind power industry.</p>
</sec>
</sec>
</body>
<back>
<sec id="s6" sec-type="data-availability">
<title>Data availability statement</title>
<p>The original contributions presented in the study are included in the article/Supplementary Material. Further inquiries can be directed to the corresponding author/s.</p>
</sec>
<sec id="s7" sec-type="author-contributions">
<title>Author contributions</title>
<p>WW: Writing &#x2013; review &amp; editing, Writing &#x2013; original draft. HL: Writing &#x2013; review &amp; editing, Writing &#x2013; original draft. YY: Writing &#x2013; original draft, Writing &#x2013; review &amp; editing. KS: Writing &#x2013; review &amp; editing, Writing &#x2013; original draft. LC: Writing &#x2013; original draft, Writing &#x2013; review &amp; editing.</p>
</sec>
<sec id="s8" sec-type="funding-information">
<title>Funding</title>
<p>The author(s) declare that financial support was received for the research and/or publication of this article. National Key Research and Development Program of China(2022YFB4201303).</p>
</sec>
<sec id="s9" sec-type="COI-statement">
<title>Conflict of interest</title>
<p>The authors declare that the research was conducted in the absence of any commercial or financial relationships that could be construed as a potential conflict of interest.</p>
</sec>
<sec id="s10" sec-type="ai-statement">
<title>Generative AI statement</title>
<p>The author(s) declare that no Generative AI was used in the creation of this manuscript.</p>
</sec>
<sec id="s11" sec-type="disclaimer">
<title>Publisher&#x2019;s note</title>
<p>All claims expressed in this article are solely those of the authors&#xa0;and do not necessarily represent those of their affiliated organizations, or those of the publisher, the editors and the reviewers. Any product that may be evaluated in this article, or claim that may be made by its manufacturer, is not guaranteed or endorsed by the publisher.</p>
</sec>
<ref-list>
<title>References</title>
<ref id="B1">
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>Bai</surname> <given-names>D.</given-names>
</name>
<name>
<surname>Wang</surname> <given-names>B.</given-names>
</name>
<name>
<surname>Li</surname> <given-names>Y.</given-names>
</name>
<name>
<surname>Wang</surname> <given-names>W.</given-names>
</name>
</person-group> (<year>2025</year>). <article-title>Study on load reduction and vibration control strategies for semi-submersible offshore wind turbines</article-title>. <source>Sci. Rep.</source> <volume>15</volume>, <fpage>1148</fpage>. doi:&#xa0;<pub-id pub-id-type="doi">10.1038/s41598-025-85476-3</pub-id>
</citation>
</ref>
<ref id="B2">
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>Cao</surname> <given-names>Q.</given-names>
</name>
<name>
<surname>Xiao</surname> <given-names>L.</given-names>
</name>
<name>
<surname>Cheng</surname> <given-names>Z.</given-names>
</name>
<name>
<surname>Liu</surname> <given-names>M.</given-names>
</name>
<name>
<surname>Chen</surname> <given-names>Y.</given-names>
</name>
<name>
<surname>Zhang</surname> <given-names>K.</given-names>
</name>
</person-group> (<year>2023</year>). <article-title>Research on the conceptual design and performance analysis of a 10 MW SPIC concept floating wind turbine foundation in intermediate water depth</article-title>. <source>J. Renew. Sustain. Energy</source> <volume>15</volume>, <fpage>063303</fpage>. doi:&#xa0;<pub-id pub-id-type="doi">10.1063/5.0161913</pub-id>
</citation>
</ref>
<ref id="B3">
<citation citation-type="book">
<person-group person-group-type="author">
<collab>Global Wind Energy Council (GWEC)</collab>
</person-group> (<year>2024</year>). <source>Global Wind Report 2024</source> (<publisher-name>GWEC</publisher-name>).</citation>
</ref>
<ref id="B4">
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>Hu</surname> <given-names>L.</given-names>
</name>
<name>
<surname>Zhang</surname> <given-names>M.</given-names>
</name>
<name>
<surname>Li</surname> <given-names>G.</given-names>
</name>
<name>
<surname>Yuan</surname> <given-names>Z.</given-names>
</name>
<name>
<surname>Bi</surname> <given-names>J.</given-names>
</name>
<name>
<surname>Guo</surname> <given-names>Y.</given-names>
</name>
</person-group> (<year>2024</year>). <article-title>Multi-objective model predictive control for ship roll motion with gyrostabilizers</article-title>. <source>Ocean Eng.</source> <volume>313</volume>, <elocation-id>119412</elocation-id>. doi:&#xa0;<pub-id pub-id-type="doi">10.1016/j.oceaneng.2024.119412</pub-id>
</citation>
</ref>
<ref id="B5">
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>Hu</surname> <given-names>L.</given-names>
</name>
<name>
<surname>Zhang</surname> <given-names>M.</given-names>
</name>
<name>
<surname>Yu</surname> <given-names>X.</given-names>
</name>
<name>
<surname>Yuan</surname> <given-names>Z.-M.</given-names>
</name>
<name>
<surname>Li</surname> <given-names>W.</given-names>
</name>
</person-group> (<year>2023</year>). <article-title>Real-time control of ship&#x2019;s roll motion with gyrostabilisers</article-title>. <source>Ocean Eng.</source> <volume>285</volume>, <elocation-id>115348</elocation-id>. doi:&#xa0;<pub-id pub-id-type="doi">10.1016/j.oceaneng.2023.115348</pub-id>
</citation>
</ref>
<ref id="B6">
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>Lackner</surname> <given-names>M. A.</given-names>
</name>
<name>
<surname>Rotea</surname> <given-names>M. A.</given-names>
</name>
</person-group> (<year>2011</year>). <article-title>Passive structural control of offshore wind turbines</article-title>. <source>Wind Energy</source> <volume>14</volume>, <fpage>373</fpage>&#x2013;<lpage>388</lpage>. doi:&#xa0;<pub-id pub-id-type="doi">10.1002/we.426</pub-id>
</citation>
</ref>
<ref id="B7">
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>Lee</surname> <given-names>C. F.</given-names>
</name>
<name>
<surname>Ong</surname> <given-names>M. C.</given-names>
</name>
</person-group> (<year>2025</year>). <article-title>Numerical analysis of mooring systems for&#xa0;reducing peak mooring line tensions in a combined wind and wave energy system at an intermediate water depth</article-title>. <source>Ocean Eng.</source> <volume>325</volume>, <elocation-id>120767</elocation-id>. doi:&#xa0;<pub-id pub-id-type="doi">10.1016/j.oceaneng.2025.120767</pub-id>
</citation>
</ref>
<ref id="B8">
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>Li</surname> <given-names>B.</given-names>
</name>
<name>
<surname>Zhang</surname> <given-names>X.</given-names>
</name>
<name>
<surname>Wang</surname> <given-names>J.</given-names>
</name>
<name>
<surname>Chen</surname> <given-names>N.</given-names>
</name>
</person-group> (<year>2022</year>). <article-title>Anti-roll characteristics of marine gyrostabilizer based on adaptive control and hydrodynamic simulation</article-title>. <source>J. Mar. Sci. Eng.</source> <volume>10</volume>, <elocation-id>83</elocation-id>. doi:&#xa0;<pub-id pub-id-type="doi">10.3390/jmse10010083</pub-id>
</citation>
</ref>
<ref id="B9">
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>Liu</surname> <given-names>J.</given-names>
</name>
<name>
<surname>Cai</surname> <given-names>C.</given-names>
</name>
<name>
<surname>Song</surname> <given-names>D.</given-names>
</name>
<name>
<surname>Zheng</surname> <given-names>J.</given-names>
</name>
<name>
<surname>Guo</surname> <given-names>X.</given-names>
</name>
<name>
<surname>Sun</surname> <given-names>X.</given-names>
</name>
<etal/>
</person-group>. (<year>2025</year>). <article-title>Power output and platform motion regulation of floating offshore wind turbine using model predictive control based on coupled dynamics model</article-title>. <source>Ocean Eng.</source> <volume>322</volume>, <elocation-id>120451</elocation-id>. doi:&#xa0;<pub-id pub-id-type="doi">10.1016/j.oceaneng.2025.120451</pub-id>
</citation>
</ref>
<ref id="B10">
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>Namik</surname> <given-names>H.</given-names>
</name>
<name>
<surname>Stol</surname> <given-names>K.</given-names>
</name>
</person-group> (<year>2011</year>). <article-title>Performance analysis of individual blade pitch control of offshore wind turbines on two floating platforms</article-title>. <source>Mechatronics</source> <volume>21</volume>, <fpage>691</fpage>&#x2013;<lpage>703</lpage>. doi:&#xa0;<pub-id pub-id-type="doi">10.1016/j.mechatronics.2010.12.003</pub-id>
</citation>
</ref>
<ref id="B11">
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>Palraj</surname> <given-names>M.</given-names>
</name>
</person-group> (<year>2021</year>). <article-title>Motion control studies of a barge mounted offshore dynamic wind&#xa0;turbine using gyrostabilizer</article-title>. <source>Ocean Eng.</source> <volume>209</volume>, <fpage>107500</fpage>. doi:&#xa0;<pub-id pub-id-type="doi">10.1016/j.oceaneng.2021.109578</pub-id>
</citation>
</ref>
<ref id="B12">
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>Palraj</surname> <given-names>M.</given-names>
</name>
<name>
<surname>Rajamanickam</surname> <given-names>P.</given-names>
</name>
</person-group> (<year>2020</year>). <article-title>Motion control of a barge for offshore wind turbine (OWT) using gyrostabilizer</article-title>. <source>Ocean Eng.</source> <volume>209</volume>, <elocation-id>107500</elocation-id>. doi:&#xa0;<pub-id pub-id-type="doi">10.1016/j.oceaneng.2020.107500</pub-id>
</citation>
</ref>
<ref id="B13">
<citation citation-type="book">
<person-group person-group-type="author">
<name>
<surname>Perez</surname> <given-names>T.</given-names>
</name>
<name>
<surname>Santos-Mujica</surname> <given-names>M.</given-names>
</name>
<name>
<surname>Ruiz-Minguela</surname> <given-names>J. P.</given-names>
</name>
</person-group> (<year>2009</year>). &#x201c;<article-title>Performance analysis and control design of a gyro-based wave energy converter</article-title>,&#x201d; in <source>2009 European Control Conference (ECC)</source> (<publisher-name>IEEE</publisher-name>, <publisher-loc>Budapest</publisher-loc>), <fpage>3743</fpage>&#x2013;<lpage>3748</lpage>. doi:&#xa0;<pub-id pub-id-type="doi">10.23919/ECC.2009.7074982</pub-id>
</citation>
</ref>
<ref id="B14">
<citation citation-type="book">
<person-group person-group-type="author">
<name>
<surname>Takeuchi</surname> <given-names>H.</given-names>
</name>
<name>
<surname>Umemura</surname> <given-names>K.</given-names>
</name>
<name>
<surname>Maeda</surname> <given-names>S.</given-names>
</name>
</person-group> (<year>2011</year>). <source>Development of the Anti Rolling Gyro 375T (Rolling Stabilizer for Yachts) Using Space Control Technology</source>, Engineering. Vol. <volume>48</volume>.</citation>
</ref>
<ref id="B15">
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>Wang</surname> <given-names>B.</given-names>
</name>
<name>
<surname>Han</surname> <given-names>D.</given-names>
</name>
<name>
<surname>Wang</surname> <given-names>W.</given-names>
</name>
<name>
<surname>Li</surname> <given-names>X.</given-names>
</name>
<name>
<surname>Shen</surname> <given-names>K.</given-names>
</name>
<name>
<surname>Li</surname> <given-names>Y.</given-names>
</name>
</person-group> (<year>2022</year>). <article-title>Modeling and optimization of multiple tuned mass dampers for a barge-type floating offshore wind turbine</article-title>. <source>Front. Mar. Sci.</source> <volume>9</volume>. doi:&#xa0;<pub-id pub-id-type="doi">10.3389/fmars.2022.994848</pub-id>
</citation>
</ref>
<ref id="B16">
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>Yu</surname> <given-names>W.</given-names>
</name>
<name>
<surname>Lemmer</surname> <given-names>F.</given-names>
</name>
<name>
<surname>Cheng</surname> <given-names>P. W.</given-names>
</name>
</person-group> (<year>2023</year>). <article-title>Modeling and validation of a tuned liquid multi-column damper stabilized floating offshore wind turbine coupled system</article-title>. <source>Ocean Eng.</source> <volume>280</volume>, <elocation-id>114442</elocation-id>. doi:&#xa0;<pub-id pub-id-type="doi">10.1016/j.oceaneng.2023.114442</pub-id>
</citation>
</ref>
<ref id="B17">
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>Zhang</surname> <given-names>Y.</given-names>
</name>
<name>
<surname>Jin</surname> <given-names>H.</given-names>
</name>
<name>
<surname>Wang</surname> <given-names>B.</given-names>
</name>
<name>
<surname>Zhao</surname> <given-names>J.</given-names>
</name>
</person-group> (<year>2022</year>). <article-title>Balancing control of a unicycle robot with double gyroscopes using adaptive fuzzy controller</article-title>. <source>Mechatronics</source> <volume>88</volume>, <elocation-id>102908</elocation-id>. doi:&#xa0;<pub-id pub-id-type="doi">10.1016/j.mechatronics.2022.102908</pub-id>
</citation>
</ref>
</ref-list>
</back>
</article>