Offshore wind turbine communication reliability guarantee method and system

By employing real-time monitoring and tiered caching, the problem of unstable communication environment for offshore wind turbines was solved. This enabled preventative caching and optimized data transmission before communication quality deteriorated, ensuring the reliable transmission and integrity of critical data.

CN122204648BActive Publication Date: 2026-07-24CHONGQING QIANWEI SCI & TECH GRP
View PDF 4 Cites 0 Cited by

Patent Information

Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
CHONGQING QIANWEI SCI & TECH GRP
Filing Date
2026-05-18
Publication Date
2026-07-24

AI Technical Summary

Technical Problem

The communication environment between the offshore wind turbine and the remote monitoring center is unstable. Existing technology cannot identify weak communication states, resulting in data loss and critical data being overwhelmed by ordinary data. After communication is restored, data is transmitted in a mixed manner, affecting communication reliability.

Method used

The communication status monitoring module detects link quality parameters in real time, predicts communication status, caches data in a hierarchical manner, dynamically adjusts upload strategies, and adopts a breakpoint resume mechanism to ensure the priority transmission and integrity of critical data.

Benefits of technology

Preventative caching is triggered before communication quality deteriorates, reducing data loss, ensuring priority transmission of critical data, avoiding bandwidth congestion, and improving communication reliability and data integrity.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN122204648B_ABST
    Figure CN122204648B_ABST
Patent Text Reader

Abstract

The application discloses a kind of ocean wind turbine communication reliability guarantee method and system, wherein, method is periodically detected to the communication link between PLC controller and SCADA server, obtains heartbeat signal and link quality parameter, according to the change trend of link quality parameter, communication quality is predicted, and communication state is divided into normal communication state, weak communication state and communication interruption state.Preventive data buffering is started in weak communication state and dynamically adjusted upload strategy;When communication interruption, operating data is stored to local cache database according to emergency level, important level and ordinary level;After communication recovery, breakpoint continuation is transmitted according to priority order, and data consistency check is carried out according to receipt reply.The application can realize the hierarchical reliable transmission of wind turbine operating data in the weak network environment of ocean, eliminate the data loss window caused by passive response, and ensure the priority protection of key safety data.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This invention belongs to the field of industrial control communication methods for wind turbine generator sets, specifically relating to a method and system for ensuring communication reliability of offshore wind turbine generator sets. Background Technology

[0002] The communication stability and data transmission reliability of offshore wind turbines (wind farms built in waters more than 50 meters below the lowest tide level or more than 50 kilometers offshore) are crucial to the safe operation of offshore wind turbines.

[0003] The technical solution disclosed in announcement number CN120980158A, titled "Multi-protocol Compatible Wind Power Main Control PLC Communication Method and System," addresses the following technical issues: the diverse protocols used in wind power main control PLC communication lead to complex integration and high maintenance costs; and the traditional point-to-point polling method results in high network load and data latency, making it difficult to meet the real-time requirements of refined wind farm operation. However, this technical solution does not address the technical issues related to communication between offshore wind turbines and onshore monitoring centers.

[0004] Currently, data communication between offshore wind turbines and remote monitoring centers (also known as onshore monitoring centers) is typically conducted via submarine fiber optic cables, microwave links, or satellite communication links. In offshore wind farms, PLC controllers continuously collect the operating parameters of the wind turbines (speed, power, vibration, and temperature, etc.) and upload the data to the SCADA system in real time. The SCADA system makes operational and maintenance decisions based on this data—missing or corrupted data can lead to delays in fault detection or even misdiagnosis.

[0005] However, the practical problems in the ocean communication environment between offshore wind turbines and remote monitoring centers are as follows: submarine optical fibers are prone to micro-fractures under the repeated impact of strong typhoons and internal wave currents; microwave signals suffer severe attenuation in harsh sea conditions; and satellite links have limited bandwidth and large latency fluctuations. A common weakness of these three transmission media is signal instability—not an instantaneous disconnection, but a gradual process from weak to broken signal. Current technologies mostly handle communication interruptions passively: link failure is only determined after a heartbeat timeout, meaning there is an unattended data loss window between the start of communication degradation and the system's response.

[0006] Specifically, the existing communication support solutions between offshore wind turbines and onshore monitoring centers still have the following shortcomings: First, most solutions rely on a single heartbeat signal timeout for judgment, failing to identify the intermediate state where "communication quality is deteriorating but has not yet been interrupted." In other words, the system either considers the link to be normal or that the link has been broken—lacking the identification and differentiated processing of weak communication states.

[0007] Second, the existing solution treats all operational data equally: fault alarm signals and ordinary environmental data enjoy the same acquisition frequency and storage strategy. When storage space is limited, critical safety data may be squeezed out by ordinary data; after communication is restored, a large amount of ordinary data is transmitted mixed with emergency data, crowding out the limited recovery bandwidth.

[0008] Therefore, it is urgent to consider designing a method and system that can optimize the communication process of offshore wind turbines and improve communication reliability. Summary of the Invention

[0009] In view of the shortcomings of the prior art, the technical problem to be solved by the present invention is: How to provide a method and system for ensuring the communication reliability of offshore wind turbines that can optimize the communication process and improve communication reliability.

[0010] To solve the above-mentioned technical problems, the present invention adopts the following technical solution: A method for ensuring communication reliability of offshore wind turbine units, characterized by comprising the following steps: S1: Periodically detect the communication link between the PLC controller and the SCADA server through the communication status monitoring module to obtain the heartbeat signal and link quality parameters; the link quality parameters include communication round-trip time (RTT), data packet loss rate, and signal strength. S2: Based on the changing trend of the link quality parameters, predict the communication quality and, in conjunction with the heartbeat signal, classify the communication status into normal communication status, weak communication status, and communication interruption status. S3: When the communication status is weak, start preventive data caching and dynamically adjust the data upload strategy according to the link quality parameters; the dynamic adjustment of the data upload strategy includes: when the communication delay exceeds the first threshold, reduce the upload frequency to a preset ratio of the original frequency; when the available bandwidth is lower than the bandwidth threshold, enable data compression transmission; when the packet loss rate exceeds the packet loss threshold, switch the data from sending one message at a time to sending in batches. S4: When the communication status is interrupted, the operating data collected by the PLC will be stored in the local cache database according to the data priority. S5: When communication is restored, the cached data is uploaded to the SCADA server in order of data priority using the breakpoint resume method.

[0011] Further, in step S2, the communication quality prediction includes: collecting link quality parameters over N consecutive detection periods to form a time series, performing sliding window trend analysis on the time series, calculating the quality trend slope, which is obtained by weighting the three parameters of the link quality parameters; when the quality trend slope exceeds the warning threshold, it is determined that the communication quality is declining and preventive caching is triggered.

[0012] Furthermore, the communication state is managed by a communication state machine, which includes an initialization state, a normal communication state, a weak communication state, a communication interruption state, and a data recovery state.

[0013] Furthermore, in step S4, the data priority classification includes dividing the operational data collected by the PLC into emergency data, important data, and ordinary data; wherein emergency data includes fault alarm data, overspeed data, and vibration anomaly data, important data includes power, speed, and temperature parameters, and ordinary data includes environmental data and status indication data. Different collection frequencies and storage strategies are adopted for data of different priorities.

[0014] Furthermore, after communication is restored, emergency-level cached data is uploaded first. After the emergency-level data upload is complete and a receipt confirmation is received, important-level cached data is uploaded next, and finally, ordinary-level cached data is uploaded. Only emergency-level data is transmitted during weak communication.

[0015] Furthermore, the breakpoint resume method includes: recording the timestamp position of the last successful data upload as the breakpoint position, and continuing the upload from the next data item at the breakpoint position; after receiving the data, the SCADA server generates a receipt containing a sequence number and returns it to the communication agent module, and the communication agent module confirms the successfully uploaded data based on the receipt and deletes the corresponding local cache.

[0016] Furthermore, the state transitions of the communication state machine include: when the communication delay exceeds a first threshold or the packet loss rate exceeds a first threshold, transitioning from the normal communication state to the weak communication state; when the communication delay exceeds a second threshold or no heartbeat signal is received for multiple consecutive detection cycles, transitioning from the weak communication state to the communication interruption state; and when the heartbeat signal recovers and changes its flip, transitioning from the communication interruption state to the data recovery state.

[0017] Furthermore, the operating data collected by the PLC is encapsulated into a data block structure during the caching stage. The data block structure includes a data block header, a data payload, and a data block tail. The data block header contains a data block identifier, a timestamp, a data length, and a sequence number. The data block tail contains a CRC checksum.

[0018] Furthermore, the local cache database is an SQLite database, which is divided into Boolean value tables, integer value tables, and real value tables according to data type. Each table contains a timestamp field, a variable identifier field, and a variable value field. The database file is named using a combination of the unit number and the communication interruption time.

[0019] Furthermore, it also includes disk monitoring steps: real-time monitoring of local storage space usage, supporting both non-rolling and rolling storage modes; in non-rolling storage mode, storage stops when the storage time reaches the preset number of days limit or storage space is insufficient; in rolling storage mode, new data overwrites the oldest ordinary-level data when the limit is reached.

[0020] Furthermore, the data priority classification supports dynamic adjustment: when the unit enters storm mode, the yaw angle and blade pitch angle data are upgraded from the important level to the emergency level; when the unit is in low wind speed standby state, the acquisition frequency of all operating parameters is uniformly reduced to save storage space.

[0021] The present invention also provides a communication reliability assurance system for offshore wind turbines applicable to the communication reliability assurance method, characterized in that it includes a communication status monitoring module, a local cache database, and a communication proxy module; The communication status monitoring module is used to periodically detect the communication link between the PLC controller installed in the wind turbine and the SCADA server used to collect wind turbine operation data, obtain heartbeat signals and link quality parameters, predict communication quality based on the changing trend of link quality parameters, and classify the communication status into normal communication status, weak communication status and communication interruption status. The local cache database is used to store wind turbine operation data in hierarchical order according to timestamps; The communication proxy module is connected to the communication status monitoring module and is used to dynamically adjust the data upload strategy according to the real-time link quality parameters. When communication is interrupted, the operating data collected by the PLC is stored in the local cache database according to the data priority. After communication is restored, the cached data is resumed to the SCADA server according to the data priority.

[0022] Compared with existing technologies, the communication reliability assurance method and system for offshore wind turbines of the present invention have the following beneficial effects: 1. By adopting a communication quality prediction mechanism based on link quality parameter time series, preventive caching can be triggered before the communication quality degrades to the interruption threshold, which basically eliminates the data loss window between "communication begins to deteriorate" and "system starts caching". Compared with the passive approach of responding only after the heartbeat timeout in the existing technology, data integrity is significantly improved.

[0023] 2. By dividing operational data into three priority levels—urgent, important, and normal—and employing differentiated collection frequencies, storage strategies, and transmission sequences for each level, critical safety data such as fault alarms are always prioritized for protection, even under conditions of limited storage space and communication bandwidth. Furthermore, the design that urgent-level data is never overwritten further ensures that critical data is not lost in extreme circumstances.

[0024] 3. By dynamically adjusting the upload frequency, compression ratio, and batch size under weak communication conditions, the system can maintain real-time transmission of emergency data even when bandwidth is narrowed, avoiding the significant degradation of "all interruptions when communication is weak" in traditional solutions.

[0025] 4. Due to the adoption of a breakpoint resume mechanism based on received receipts, the SCADA server returns a confirmation receipt containing a sequence number after receiving each batch of data. The communication agent module uses this receipt to accurately locate the breakpoint and delete the confirmed local cache, thereby avoiding duplicate data uploads and disordered data order, and ensuring the integrity and consistency of cached data during the recovery upload process.

[0026] 5. Due to the adoption of data block encapsulation and CRC verification mechanisms, the integrity of the running data is structurally guaranteed during caching and transmission. Even in scenarios with multiple interrupted transmissions, data corruption can be accurately detected and repaired, avoiding hidden data errors caused by missing data verification in traditional simple retransmission schemes.

[0027] 6. Because the local cache database uses the SQLite engine and stores data in tables according to data type, coupled with an independent disk monitoring mechanism, the system can still reliably cache data for a long time under the limited storage resources of the embedded main control computing unit. The hierarchical overwrite strategy in the rolling storage mode can further ensure that urgent data is not overwritten under any circumstances. Attached Figure Description

[0028] Figure 1 This is a schematic diagram of the architecture of the communication reliability assurance system for offshore wind turbines of the present invention; Figure 2 This is a flowchart of the communication state machine state transition in the communication reliability assurance method for offshore wind turbines of the present invention; Figure 3 This is a flowchart of the communication quality prediction and active degradation process in the communication reliability assurance method for offshore wind turbines of the present invention. Figure 4 This is a flowchart of the data hierarchical caching and priority recovery process in the communication reliability assurance method for offshore wind turbines of the present invention; Figure 5 This is a flowchart of the breakpoint resume and data consistency verification process in the communication reliability assurance method for offshore wind turbines of the present invention. Figure 6 This is a schematic diagram of the data block structure in the method for ensuring communication reliability of offshore wind turbines of the present invention; Figure 7 This is a PLC-SCADA communication topology diagram in the method for ensuring the communication reliability of offshore wind turbines in this invention. Detailed Implementation

[0029] The present invention will now be described in further detail with reference to the accompanying drawings. It should be noted that the following embodiments are for illustrative purposes only and do not constitute a limitation on the scope of protection of the present invention. Example

[0030] Please see Figure 1 and Figure 7 As shown, the communication reliability assurance system for offshore wind turbines of the present invention includes a communication status monitoring module, a local cache database, and a communication proxy module; The communication status monitoring module is used to periodically detect the communication link between the PLC controller installed in the wind turbine and the SCADA server used to collect wind turbine operation data, obtain heartbeat signals and link quality parameters, predict communication quality based on the changing trend of link quality parameters, and classify the communication status into normal communication status, weak communication status and communication interruption status. The local cache database is used to store wind turbine operation data in hierarchical order according to timestamps; The communication proxy module is connected to the communication status monitoring module and is used to dynamically adjust the data upload strategy according to the real-time link quality parameters. When communication is interrupted, the operating data collected by the PLC is stored in the local cache database according to the data priority. After communication is restored, the cached data is resumed to the SCADA server according to the data priority.

[0031] The communication proxy module and the communication status monitoring module are deployed in the main control computing unit within the wind turbine's main control cabinet. The PLC controller connects to the communication proxy module via the m1com industrial communication protocol; the communication proxy module interacts with the SCADA server via the SFTP protocol.

[0032] The PLC controller is responsible for collecting the operating parameters of the wind turbine, including but not limited to speed, power, vibration amplitude, bearing temperature, gearbox oil temperature, and yaw angle. The collected data includes three basic data types: INT32 integer, BOOL boolean, and FLOAT real. The default collection period for real and integer data is 1 second, which can be configured to 1 minute through the backend management module; boolean data uses a change-based storage method, meaning it is recorded only when the value changes.

[0033] See Figures 2 to 5As shown, the method for ensuring communication reliability of offshore wind turbines according to the present invention includes the following steps: A method for ensuring communication reliability of offshore wind turbines includes the following steps: S1: Periodically detect the communication link between the PLC controller and the SCADA server through the communication status monitoring module to obtain the heartbeat signal and link quality parameters; the link quality parameters include communication round-trip time (RTT), data packet loss rate, and signal strength. S2: Based on the changing trend of the link quality parameters, predict the communication quality and, in conjunction with the heartbeat signal, classify the communication status into normal communication status, weak communication status, and communication interruption status. S3: When the communication status is weak, start preventive data caching and dynamically adjust the data upload strategy according to the link quality parameters; the dynamic adjustment of the data upload strategy includes: when the communication delay exceeds the first threshold, reduce the upload frequency to a preset ratio of the original frequency; when the available bandwidth is lower than the bandwidth threshold, enable data compression transmission; when the packet loss rate exceeds the packet loss threshold, switch the data from sending one message at a time to sending in batches. S4: When the communication status is interrupted, the operating data collected by the PLC will be stored in the local cache database according to the data priority. S5: When communication is restored, the cached data is uploaded to the SCADA server in order of data priority using the breakpoint resume method.

[0034] The specific implementation methods for each step are described in detail below.

[0035] I. Communication Status Detection and Communication Quality Prediction (Steps S1-S2) Please see Figure 2 and Figure 3 The communication status monitoring module comprehensively monitors the communication link through two methods: a heartbeat signal mechanism and link quality parameter detection.

[0036] The heartbeat signal mechanism is implemented as follows: The main control PLC maintains a Boolean heartbeat variable. When the variable's value is 1, the PLC sets it to 0 after a 20-second delay; when the variable's value is 0, the SCADA system sets it to 1 after a 1-second delay. In other words, the heartbeat signal continuously toggles during normal communication. The communication status monitoring module checks the heartbeat variable every second—if the heartbeat variable does not toggle for 50 consecutive seconds, the communication link is considered interrupted.

[0037] Meanwhile, the communication status monitoring module also continuously collects link quality parameters, including: round-trip time (RTT) (obtained by sending test data packets and calculating the time difference between receiving responses), data packet loss rate (the ratio of data packets sent to successfully received data packets per unit time), and signal strength (physical layer signal quality indicators obtained through the communication interface).

[0038] The specific algorithm for communication quality prediction is as follows: The communication status monitoring module maintains a sliding window of length N (N=30 in this embodiment, i.e., 30 detection cycles), and stores the RTT, packet loss rate, and signal strength collected in each cycle into the window in chronological order. Linear regression analysis is performed on each parameter within the window to obtain the trend slope of each parameter. Then, the overall quality trend slope Q is calculated using the following formula: Q=α×KRTT+β×KLoss+γ×KSignal Wherein, KRTT is the RTT trend slope, KLoss is the packet loss rate trend slope, KSignal is the signal strength trend slope (taking a negative value, as a decrease in signal strength corresponds to a decrease in quality), and α, β, and γ are weighting coefficients. In this embodiment, α=0.3, β=0.5, and γ=0.2, reflecting the actual characteristic that the packet loss rate has the greatest impact on the quality of long-distance ocean communication.

[0039] When the overall quality trend slope Q exceeds the warning threshold Qth, the system determines that the communication quality is declining, even if the current heartbeat signal is still flipping normally. At this time, the communication state machine transitions from the normal communication state to the weak communication state in advance and initiates preventative data caching. This means that before the actual communication interruption occurs, the system has already begun dual writing—both uploading data in real time and writing it synchronously to the local cache, thereby eliminating the data loss window caused by passive response.

[0040] In a preferred implementation, the length N of the sliding window can be adaptively adjusted based on the historical communication quality fluctuations: when the link quality is stable over a long period, N is increased to 50 to reduce false alarms; when the link quality fluctuates frequently, N is shortened to 15 to improve sensitivity. The adjustment rule can be considered as follows: if the slope of the quality trend exceeds the warning threshold less than twice in the last 100 periods, then N is increased by 20%; if it exceeds five times, then N is shortened by 20%. This adaptive mechanism allows the prediction model to adapt to communication environments under different sea conditions.

[0041] For state transitions of the communication state machine, please refer to [link / reference]. Figure 2 The communication state machine consists of five states, and the specific transition rules are as follows: STATE0 (Initialization State INIT): The system enters this state upon power-on, and the communication status monitoring module begins continuous detection of the heartbeat signal. If the heartbeat signal flips normally for 5 consecutive detection cycles, it transitions to STATE1.

[0042] STATE1 (Normal Communication State): PLC collects data and uploads it to the SCADA system in real time. If the communication delay RTT exceeds the first delay threshold T1 (T1=500ms in this embodiment), or the packet loss rate exceeds the first packet loss threshold L1 (L1=5% in this embodiment), or the overall quality trend slope Q exceeds the warning threshold Qth, the system switches to STATE2.

[0043] STATE2 (Weak Communication State WEAK_LINK): Upload frequency is reduced, data compression ratio is increased, and preventative caching is initiated for double data writing. If the communication delay exceeds the second delay threshold T2 (T2=2000ms in this embodiment), or the heartbeat signal fails to flip for 50 consecutive seconds, it transitions to STATE3. If the communication quality recovers and remains stable for 10 detection cycles, it reverts to STATE1.

[0044] STATE3 (Communication Interruption Status OFFLINE_CACHE): The communication agent module stops all data upload operations, and all PLC-acquired data is written to the local cache database. The system continuously monitors the heartbeat signal's topping status. When the heartbeat signal resumes topping, communication is determined to have resumed after a 0-second delay, and the process transitions to STATE4.

[0045] STATE4 (DATA_RECOVERY): Executes breakpoint resume, uploads cached data in priority order, and performs data consistency verification. After all cached data has been uploaded and verification passes, it returns to STATE1.

[0046] II. Adaptive Transmission under Weak Communication Conditions (Step S3) When the communication state machine transitions to a weak communication state, the communication proxy module dynamically adjusts the data upload strategy based on real-time link quality parameters, specifically including adjustments in the following three dimensions: (1) Upload frequency adjustment: When the RTT exceeds the first delay threshold T1, the upload frequency is reduced to 50% of the original frequency. In this embodiment, the data upload cycle in normal mode is 10 seconds, and in weak communication mode it is adjusted to 20 seconds.

[0047] (2) Data compression strategy: When the available bandwidth is lower than the bandwidth threshold Bth, the data compression function is enabled. The compression adopts incremental coding method - only data fields that have changed compared to the previous sampling point are transmitted, which has a significant compression effect on slowly changing parameters such as temperature and power.

[0048] (3) Batch transmission strategy: When the packet loss rate exceeds the packet loss threshold L1, the data transmission method is switched from sending one by one to batch transmission. Each batch contains multiple data records, reducing the protocol overhead and retransmission probability of individual transmission.

[0049] It should be noted that data priority filtering is also performed under weak communication conditions: only emergency-level data (fault alarms, overspeed, abnormal vibration) is transmitted, while important and ordinary-level data are not uploaded but are written to the local cache and transmitted after communication is restored. In this way, the limited weak communication bandwidth can be concentrated on the most critical security data.

[0050] In one possible implementation, the communication proxy module estimates available bandwidth by periodically sending fixed-size probe packets and measuring actual throughput. The probe period is 60 seconds, and the probe packet size is 1KB. The estimated available bandwidth is used to dynamically calculate the number of data entries that can be included in each upload batch, thereby avoiding exceeding the link's capacity.

[0051] III. Tiered Data Caching (Step S4) Please see Figure 4 and Figure 6 When the communication state machine transitions to a communication interruption state, the communication agent module performs hierarchical caching of the operating data collected by the PLC according to the following mechanism.

[0052] The data classification rules are as follows: Emergency-level data includes fault alarm signals (including all fault codes), overspeed protection trigger signals, and vibration over-limit alarm signals. This type of data is directly related to unit safety and personnel safety, and must be completely preserved under all circumstances. Emergency-level data is collected at the highest acquisition frequency (1 time / second), stored in a separate emergency data area, and will never be overwritten by scrolling data. It is also the first priority for uploading after communication is restored.

[0053] Critical data includes core operating parameters such as power generation, rotor speed, wind speed, bearing temperature, gearbox oil temperature, and yaw angle. This type of data forms the basis for operational status assessment and trend analysis. Critical data is collected at a standard acquisition frequency (1 time / second or according to the configured frequency), stored normally, and uploaded after emergency data is restored.

[0054] Standard-level data includes environmental monitoring data such as ambient temperature, humidity, and air pressure, as well as system operating status indicators. Standard-level data is collected at a reduced acquisition frequency (configurable to 10 seconds / time or 1 minute / time), allowing it to be overwritten by new data when storage space is insufficient, and uploaded last after communication is restored.

[0055] The local cache database uses the SQLite database engine. The database system consists of two layers: the base database BprDataBase and the data collection database.

[0056] The basic database stores system configuration information and includes four tables: The SFTP_Info table records SCADA server FTP connection information and DB file upload status, the System_Info table records storage path, log path, database size threshold and rolling mode configuration, the User_Info table records user account and permission level, divided into three levels: system administrator, engineering and technical and general permissions, and the Var_Info table records PLC interface, variable name, data type and acquisition frequency configuration of all acquired variables.

[0057] The data acquisition database is named using the format "Flight Number + Communication Interruption Start Time" (e.g., 4-20260323124738), and a separate database file is generated for each communication interruption period. Each data acquisition database contains three tables categorized by data type: boolValues, Int32Values, and SingleValues. Each table has the same field structure, including: ItemDateTime (timestamp, Text type), ItemID (variable ID, INT type), Address (variable name, Text type), and Value (variable value, corresponding type). In this embodiment, an additional Priority field (INT type, values ​​1 / 2 / 3 corresponding to urgent / important / normal) is added to mark data priority.

[0058] Data Block Encapsulation: Before being written to the cache database, PLC operating data is encapsulated into a standard data block structure. The data block header (BlockHeader) contains: BlockID (unique identifier), Timestamp (timestamp, accurate to milliseconds), DataLength (data payload length), SequenceNumber (sequence number, an incrementing integer), and Priority (priority flag). The data payload (DataPayload) contains one or more PLC operating data records. The data block tail (BlockTail) contains: a CRC32 checksum (for overall verification of the header and payload) and an Integrity flag.

[0059] The local storage disk monitoring mechanism supports two modes: Non-rolling storage mode: Storage stops when the data storage time reaches the preset number of days (default is 7 days, parameter is configurable) or the remaining disk space is lower than the threshold. After stopping, users can manually remove the DB file to free up space and then trigger the resumption of storage to continue data collection.

[0060] Rolling storage mode: When storage limits are reached, newly acquired data overwrites the oldest ordinary-level data. Priority rules are followed during overwriting: the oldest ordinary-level data is overwritten first, important-level data is overwritten only after all ordinary-level data has been overwritten, and urgent-level data is never overwritten. This ensures that critical security data is always protected on the ocean-going main control computing unit with limited storage space.

[0061] IV. Resuming interrupted downloads and verifying data consistency (Step S5) Please see Figure 5 Once communication is restored, the communication state machine transitions to the data recovery state, and the communication proxy module performs cached data upload according to the following process: The first step is to read the breakpoint location. The communication proxy module queries the DB_state field of the SFTP_Info table in the basic database to find database files with a status of "Store" (stored and awaiting upload). For each file to be uploaded, the timestamp position of the last record marked as successfully uploaded is read and used as the breakpoint location.

[0062] The second step is to upload data in batches according to priority. Starting from the record following the breakpoint, all urgent data is first read and grouped into upload batches, which are then uploaded to the designated directory on the SCADA server via the SFTP protocol. After each batch is uploaded, the system waits for the SCADA server to return a receipt.

[0063] The third step is receipt verification and deduplication. After receiving a batch of data, the SCADA server performs CRC checks and sequence number continuity checks on the data. If the checks pass, it generates a receipt containing the largest received sequence number and returns it. Upon receiving the receipt, the communication agent module marks the local cache below the confirmed sequence number in the receipt as uploaded and updates the breakpoint position. If the receipt indicates the presence of a data block with a failed CRC check, that data block is retransmitted.

[0064] Step four, repeat until completion. After all urgent data is uploaded and confirmed, upload important data using the same process, and finally upload ordinary data. Once all data has been uploaded, the communication agent module marks the corresponding collection database file as Finished and deletes the local copy to free up storage space.

[0065] If an upload fails in a batch, the communication agent module will automatically retry, up to three times (with intervals of 10 seconds, 30 seconds, and 60 seconds, using an exponential backoff strategy). If all three retries fail, the file will be marked as "Error" and left unprocessed. When the next communication recovery cycle arrives, files with the "Error" status will be added back to the upload queue. Additionally, operators can manually trigger the retransmission of "Error" files or manually export them via the touchscreen interface.

[0066] During the data recovery phase, after receiving multiple batches of cached data from the same data unit, the SCADA server reassembles all data blocks sequentially based on the sequence numbers in the data block header. If a non-contiguous sequence number (missing sequence numbers) is detected, the SCADA server marks the range of missing sequence numbers in the receipt, and the communication agent module searches for the corresponding data block in its local cache and retransmits it. Example

[0067] Unlike Example 1, this example uses a weighted moving average model instead of a linear regression model for communication quality prediction. Specifically, link quality parameters within the sliding window are assigned different weights based on their temporal proximity, with more recent data receiving greater weight (using exponential decay weighting). The weighted average is calculated as the current quality assessment value, and the difference between the assessment values ​​of two consecutive windows is used as the slope of the quality trend. This method requires less computation and is suitable for embedded main control computing units with limited computing resources.

[0068] In addition, the activation condition of the preventive cache in this embodiment has been increased with a time constraint. Specifically, the preventive cache is only triggered when the slope of the overall quality trend exceeds the warning threshold for three consecutive detection cycles, so as to avoid frequent false triggers caused by instantaneous signal fluctuations. Example

[0069] Unlike Embodiment 1, the data priority in this embodiment is not pre-configured but dynamically adjustable. When the unit is under specific operating conditions, the priority of some data is automatically increased. For example, when the unit enters storm mode (wind speed exceeds the cut-out wind speed threshold), the yaw angle and blade pitch angle data are upgraded from the importance level to the emergency level; when the unit is in low wind speed standby mode, the acquisition frequency of all operating parameters is uniformly reduced to save storage space.

[0070] This dynamic priority adjustment is achieved by adding a WorkCondition field to the Var_Info table, which records the priority mapping table for each variable under different operating conditions. When performing the classification, the data classification unit of the communication agent module first reads the current operating condition information and then looks up the table to determine the actual priority of each variable.

[0071] The above are merely preferred embodiments of the present invention. It should be noted that any modifications and improvements made by those skilled in the art without departing from the present technical solution should also be considered to fall within the scope of protection claimed in this claim.

Claims

1. A method for ensuring communication reliability of offshore wind turbine units, characterized in that, Includes the following steps: S1: Periodically detect the communication link between the PLC controller and the SCADA server through the communication status monitoring module to obtain the heartbeat signal and link quality parameters; the link quality parameters include communication round-trip time (RTT), data packet loss rate, and signal strength. S2: Based on the changing trend of the link quality parameters, predict the communication quality and, in conjunction with the heartbeat signal, classify the communication status into normal communication status, weak communication status, and communication interruption status. The communication quality prediction includes: maintaining a sliding window with a length of N detection cycles, storing the round-trip time (RTT), packet loss rate, and signal strength collected in each detection cycle into the sliding window in chronological order; performing linear regression analysis on the RTT, packet loss rate, and signal strength within the sliding window to obtain the RTT trend slope K_RTT, packet loss rate trend slope K_Loss, and signal strength trend slope K_Signal; calculating the overall quality trend slope Q using the following formula: Q=α×K_RTT+β×K_Loss+γ×K_Signal, where the signal strength trend slope K_Signal is negative, and α, β, and γ are weighting coefficients; when the overall quality trend slope Q exceeds the warning threshold Qth, even if the heartbeat signal continues to flip normally, it is determined that the communication quality is declining, and the communication state is prematurely switched from normal communication state to weak communication state. S3: When the communication status is weak, a preventative data cache is activated. The preventative data cache involves dual writing of the operating data collected by the PLC, that is, while uploading the operating data in real time through the communication link, the operating data is simultaneously written to the local cache database. The data upload strategy is dynamically adjusted according to the link quality parameters. The dynamic adjustment of the data upload strategy includes: when the communication delay exceeds a first threshold, reducing the upload frequency to a preset proportion of the original frequency; when the available bandwidth is lower than the bandwidth threshold, enabling data compression transmission; when the packet loss rate exceeds the packet loss threshold, switching the data from sending data one by one to sending data in batches. S4: When the communication status is interrupted, the operating data collected by the PLC will be stored in the local cache database according to the data priority. S5: When communication is restored, the cached data is uploaded to the SCADA server in order of data priority using the breakpoint resume method.

2. The method according to claim 1, characterized in that, The length of the sliding window is N=30; the weighting coefficients satisfy β>α>γ, so that the packet loss rate trend slope has the maximum weight in the overall quality trend slope Q.

3. The method according to claim 1, characterized in that, The communication state is managed by a communication state machine, which includes an initialization state, a normal communication state, a weak communication state, a communication interruption state, and a data recovery state. The initialization state transitions to the normal communication state after system startup by continuously detecting heartbeat signals over multiple cycles to confirm the link status. The state transitions of the communication state machine also include: transitioning from the normal communication state to the weak communication state when the communication delay exceeds a first delay threshold, or the packet loss rate exceeds a first packet loss threshold, or the overall quality trend slope Q exceeds a warning threshold Qth; transitioning from the weak communication state to the communication interruption state when the communication delay exceeds a second delay threshold, or when no heartbeat signal flip is detected for a preset duration; reverting from the weak communication state to the normal communication state when the communication quality recovers and remains stable for a preset number of stable cycles; and transitioning from the communication interruption state to the data recovery state when the heartbeat signal resumes flipping.

4. The method according to claim 1, characterized in that, In step S4, the data priority classification includes: dividing the operating data collected by the PLC into emergency data, important data, and normal data; wherein, emergency data includes fault alarm data, overspeed data, and vibration abnormal data; important data includes power, speed, and temperature parameters; and normal data includes environmental data and status indication data.

5. The method according to claim 4, characterized in that, The emergency-level data is collected at the highest collection frequency and permanently stored without being allowed to be overwritten; the important-level data is collected at the standard collection frequency and stored normally; the ordinary-level data is collected at a reduced collection frequency and is allowed to be overwritten when storage space is insufficient.

6. The method according to claim 4, characterized in that, In step S5, uploading data in order of priority includes: after communication is restored, first uploading emergency-level cached data; after the emergency-level data upload is completed and a receipt is received, then uploading important-level cached data; and finally uploading ordinary-level cached data; in weak communication conditions, only emergency-level data is transmitted.

7. The method according to claim 1, characterized in that, The breakpoint resume method includes: recording the timestamp of the last successful data upload as the breakpoint position, and continuing the upload from the next data at the breakpoint position; the data consistency verification includes: after receiving the data, the SCADA server generates a receipt and returns it to the communication agent module, and the communication agent module confirms the successfully uploaded data based on the sequence number in the receipt and deletes the corresponding local cache.

8. A communication reliability assurance system for offshore wind turbines applicable to the method of any one of claims 1 to 7, characterized in that, It includes a communication status monitoring module, a local cache database, and a communication proxy module; The communication status monitoring module is used to periodically detect the communication link between the PLC controller installed in the wind turbine and the SCADA server used to collect wind turbine operation data, and to obtain heartbeat signals and link quality parameters. The link quality parameters include round-trip time (RTT), data packet loss rate, and signal strength. The communication status monitoring module also maintains a sliding window with a length of N detection periods. Linear regression analysis is performed on the RTT, data packet loss rate, and signal strength within the sliding window to obtain the corresponding trend slopes, and the trend slopes are calculated according to the formula Q = α × K_RTT + β × K_Loss + γ × K_Signal, where the signal strength trend slope K_Signal is negative. Calculate the overall quality trend slope Q. When the overall quality trend slope Q exceeds the warning threshold Qth, even if the heartbeat signal continues to flip normally, the communication state will be switched from the normal communication state to the weak communication state in advance. The communication state is divided into normal communication state, weak communication state and communication interruption state. The local cache database is used to store wind turbine operation data in hierarchical order according to timestamps; The communication proxy module is connected to the communication status monitoring module and is used to dynamically adjust the data upload strategy according to the real-time link quality parameters. In the weak communication state, it performs dual writing of the operation data collected by the PLC, that is, while uploading in real time through the communication link, it simultaneously writes the operation data to the local cache database. When the communication is interrupted, it stores the operation data collected by the PLC in the local cache database according to the data priority and resumes the transmission of the cached data to the SCADA server according to the data priority after the communication is restored.