Modbus protocol-based wind turbine generator controller timing system and method
Through the time -based wind turbine controller time -based controller time -based controller of the MODBUS protocol, the time compensation of time -delay time is used to solve the problem of the accuracy, stability, and efficiency of the wind turbine session scheme. Essence
Patent Information
- Application Number
- CN202411618698.3
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2024-11-13
- Publication Date
- 2025-01-28
AI Technical Summary
The existing wind turbine timing schemes have problems of insufficient accuracy, stability and efficiency.
The timing system based on the wind turbine controller based on the MODBUS protocol is used to compensate through real -time calculation of the communication delay time, and the time time to the wind turbine controller is sent to the wind turbine controller through the MODBUS protocol to ensure the accuracy and stability of the time synchronization.
Reduced network occupation, improved the accuracy and stability of the time, and ensure that the SCADA system synchronizes the SCADA system with the main clock source.
Smart Images

Figure CN119382823A_ABST
Abstract
Description
Technical Field
[0001] The invention belongs to the technical field of wind turbine controller timing, and in particular relates to a wind turbine controller timing system and method based on the Modbus protocol. Background Art
[0002] Time synchronization technology is of great significance for the operation management, data analysis, and troubleshooting of wind farms. In the field of wind power, there are generally three clock synchronization schemes. Scheme 1: A special time-keeping device is generally set up in the wind farm station to receive and analyze the time signal through GPS or Beidou clock receivers, and then the accurate time information is synchronized to each device in the wind farm through the network. It has the characteristics of strong flexibility and is suitable for a variety of network environments, but is limited by the stability and reliability of the network. If the network stability is poor, there may be a certain deviation after clock synchronization, the amount of data transmitted is large, and there is no correction for the deviation; Scheme 2: The time-keeping device directly synchronizes the accurate time information to each device in the wind farm, with high accuracy and good stability, and can ensure the time synchronization of the entire wind farm, but it is limited by the number of hardware interfaces and has high costs; Scheme 3: Manually set or adjust the time in the wind farm equipment, which has the characteristics of simple operation, but manual setting is prone to errors and cannot be applied to large-scale wind farms.
[0003] Therefore, the existing wind turbine timing scheme has many defects, resulting in insufficient accuracy, stability and efficiency of clock synchronization. Summary of the invention
[0004] In order to overcome the above-mentioned deficiencies of the prior art, the present invention provides a wind turbine controller timing system and method based on the Modbus protocol, which can reduce network occupancy and improve the accuracy of timing.
[0005] To achieve the above objectives, one or more embodiments of the present invention provide the following technical solutions:
[0006] A first aspect of the present invention provides a wind turbine controller timing system based on the Modbus protocol.
[0007] The wind turbine controller timing system based on the Modbus protocol includes a timing initiator and a wind turbine controller:
[0008] The timing initiator is used to calculate the communication delay time with the wind turbine controller in real time. When the preset timing conditions are met, the communication delay time is used as the compensation time, the compensated timing time is packaged, and sent to the wind turbine controller through the Modbus protocol;
[0009] The wind turbine controller is used to verify the received timing time, set the current time and the current time zone, and feed back the timing result to the timing initiator.
[0010] Furthermore, the calculation of the communication delay time with the wind turbine controller is specifically as follows:
[0011] The wind farm monitoring system sends an I CMP ECHO request to the wind turbine controller, records the timestamps of sending and receiving, calculates the time difference between the two, and obtains the communication delay time.
[0012] Furthermore, the preset timing conditions include when the wind farm monitoring system is started or at a preset time every day.
[0013] Furthermore, the compensated timing time is encapsulated as follows:
[0014] Add the current time to half of the compensation time to get the compensated timing time.
[0015] Define three sending registers to store the time zone, high-order data and low-order data respectively. Use the compensated timing time as the sending target value. Subtract 2000 from the target value to get the remaining time. Divide the remaining time by 65536 to get the high-order register data. Divide the remaining time by the remainder of 65536 to get the low-order register data. The time zone is stored in the time zone register.
[0016] Furthermore, the sending to the wind turbine controller through the Modbus protocol is to write three registers into the Modbus address specified by the protocol and send them to the wind turbine controller.
[0017] Furthermore, the timing time is calculated before verification, specifically:
[0018] Get the high-order data and multiply it by 65536 to get the result, add it to the low-order data to get the entire set number of seconds, and calculate the timing time based on the seconds.
[0019] Furthermore, the verification of the received timing time is to calculate the deviation between the timing time and the current time, and if the deviation exceeds a threshold, the timing is started, otherwise the timing is not started.
[0020] A second aspect of the present invention provides a timing method for a wind turbine controller based on the Modbus protocol.
[0021] The wind turbine controller timing method based on Modbus protocol includes:
[0022] The timing initiator calculates the communication delay time with the wind turbine controller in real time. When the preset timing conditions are met, the communication delay time is used as the compensation time, and the compensated timing time is packaged and sent to the wind turbine controller through the Modbus protocol;
[0023] After verifying the received timing time, the wind turbine controller sets the current time and the current time zone, and feeds back the timing result to the timing initiator.
[0024] A third aspect of the present invention provides a computer-readable storage medium having a program stored thereon, which, when executed by a processor, implements the steps in the timing system for a wind turbine controller based on the Modbus protocol as described in the first aspect of the present invention.
[0025] The fourth aspect of the present invention provides an electronic device, including a memory, a processor, and a program stored in the memory and executable on the processor, wherein when the processor executes the program, the steps in the wind turbine controller timing system based on the Modbus protocol as described in the first aspect of the present invention are implemented.
[0026] One or more of the above technical solutions have the following beneficial effects:
[0027] The invention takes into account the influence of communication delay on timing. A timing initiator compensates the timing time by using the communication delay time, and encapsulates the timing time by using a register, and sends it through the Modbus protocol, thereby reducing network occupancy, improving the accuracy of timing, and ensuring the synchronization of a SCADA system with a master control clock in the absence of a clock source.
[0028] Advantages of additional aspects of the present invention will be given in part in the following description, and in part will become obvious from the following description, or will be learned through practice of the present invention. BRIEF DESCRIPTION OF THE DRAWINGS
[0029] The accompanying drawings in the specification, which constitute a part of the present invention, are used to provide a further understanding of the present invention. The exemplary embodiments of the present invention and their descriptions are used to explain the present invention and do not constitute improper limitations on the present invention.
[0030] Figure 1 This is a system workflow diagram of the first embodiment. DETAILED DESCRIPTION
[0031] It should be noted that the following detailed descriptions are illustrative and are intended to provide further explanation of the present application. Unless otherwise specified, all technical and scientific terms used in the present invention have the same meanings as those commonly understood by those skilled in the art to which the present application belongs.
[0032] It should be noted that the terms used herein are only for describing specific embodiments and are not intended to limit the exemplary embodiments according to the present application. As used herein, unless the context clearly indicates otherwise, the singular form is also intended to include the plural form. In addition, it should be understood that when the terms "comprise" and / or "include" are used in this specification, it indicates the presence of features, steps, operations, devices, components and / or combinations thereof.
[0033] Embodiment 1
[0034] In one embodiment of the present disclosure, a wind turbine controller timing system based on the Modbus protocol is provided, including a timing initiator and a wind turbine controller:
[0035] The timing initiator is used to calculate the communication delay time with the wind turbine controller in real time. When the preset timing conditions are met, the communication delay time is used as the compensation time, the compensated timing time is packaged, and sent to the wind turbine controller through the Modbus protocol;
[0036] The wind turbine controller is used to verify the received timing time, set the current time and the current time zone, and feed back the timing result to the timing initiator.
[0037] Furthermore, the calculation of the communication delay time with the wind turbine controller is specifically as follows:
[0038] The wind farm monitoring system sends an I CMP ECHO request to the wind turbine controller, records the timestamps of sending and receiving, calculates the time difference between the two, and obtains the communication delay time.
[0039] Furthermore, the preset timing conditions include when the wind farm monitoring system is started or at a preset time every day.
[0040] Furthermore, the compensated timing time is encapsulated as follows:
[0041] Add the current time to half of the compensation time to get the compensated timing time.
[0042] Define three sending registers to store the time zone, high-order data and low-order data respectively. Use the compensated timing time as the sending target value. Subtract 2000 from the target value to get the remaining time. Divide the remaining time by 65536 to get the high-order register data. Divide the remaining time by the remainder of 65536 to get the low-order register data. The time zone is stored in the time zone register.
[0043] Furthermore, the sending to the wind turbine controller through the Modbus protocol is to write three registers into the Modbus address specified by the protocol and send them to the wind turbine controller.
[0044] Furthermore, the timing time is calculated before verification, specifically:
[0045] Get the high-order data and multiply it by 65536 to get the result, add it to the low-order data to get the entire set number of seconds, and calculate the timing time based on the seconds.
[0046] Furthermore, the verification of the received timing time is to calculate the deviation between the timing time and the current time, and if the deviation exceeds a threshold, the timing is started, otherwise the timing is not started.
[0047] The following is a detailed description of the implementation process of the wind turbine controller timing system based on the Modbus protocol in this embodiment.
[0048] In this embodiment, the wind farm monitoring system SCADA (hereinafter referred to as SCADA) serves as the timing initiator, and calculates the communication delay time with the wind turbine controller PLC in real time and uses it as the compensation time. When it is detected that timing is needed, SCADA sends the timestamp after compensation to PLC through the Modbus protocol. PLC detects the format correctness of the timestamp data frame. When the format is correct, it calculates the specific timing time sent. When it is detected that the deviation between the sent timing time and the time of the current controller exceeds a preset threshold, the PLC timing correction process is automatically triggered. By calling the system function, the system time and time zone are set. After the setting is successful, PLC feeds back the timing data to SCADA through the Modbus protocol register to form a timing closed loop.
[0049] The specific working process of the wind turbine controller timing system, such as Figure 1 As shown:
[0050] Step 1: SCADA system sends timestamp
[0051] (1) The SCADA system starts the server timestamp calculation function at startup or at 0:00 every day (the specific time is configurable), otherwise it starts the communication delay calculation function;
[0052] (2) Calculate the communication delay. The SCADA system sends an ICMP ECHO request and records the timestamps of sending and receiving. Then, the time difference between the two is calculated as the communication delay time.
[0053] If the communication delay is greater than the preset communication delay, the timing will not be initiated. After the communication delay is reduced to the allowable value, clock synchronization will be performed, that is, the timing will be initiated.
[0054] (3) Calculate the server timestamp and encapsulate it
[0055] The encapsulation is to set the start time as the timing starting point, obtain the accumulated seconds of the current time relative to the start time, and then calculate the divisor and remainder of the accumulated seconds based on a certain integer, and encapsulate them into two 16-bit registers for transmission.
[0056] Specifically, three sending registers are defined to store the time zone, high-order data, and low-order data respectively. The current time plus the communication delay / 2 is used as the sending target value. The target value minus 2000 years is used to get the remaining time. The remaining time is divided by 65536 to get the high-order register data. The remainder of the remaining time divided by 65536 is used to get the low-order register data. The time zone is stored in the time zone register, and the three registers are written to the Modbus address specified by the protocol.
[0057] (4) Feedback register: After updating the time zone and time, the lower computer PLC writes the updated value into the feedback register. After the upper computer SCADA completes the writing operation, it compares the values in the feedback register and the lower computer register in real time. If they are consistent within 30 seconds, it means that the timing is successful. If they are consistent for more than 30 seconds, it means that the timing is too slow. If they are consistent for more than 1 minute, it means that the timing has failed.
[0058] Step 2: PLC synchronizes time based on timestamp
[0059] (1) PLC monitors the timestamp sent by SCADA in real time and performs the next step when the timestamp changes;
[0060] (2) Calculate the timestamp, obtain the high-order data, multiply it by 65536, and then add the low-order data to get the total number of seconds set.
[0061] (3) Calculate the year, month, day, hour, minute, and second to be set based on the number of seconds, and determine the validity of the setting. The year must be greater than or equal to 2024;
[0062] (4) If the time format and date format are correct, call the internal function to set the PLC time and time zone;
[0063] (5) If the setting is successful, the set data will be written into the feedback register, otherwise 0 will be written.
[0064] (6) Timing failure generates an alarm message and is displayed on the crew's human-machine interface.
[0065] Embodiment 2
[0066] In one embodiment of the present disclosure, a wind turbine controller timing method based on the Modbus protocol is provided, comprising:
[0067] The timing initiator calculates the communication delay time with the wind turbine controller in real time. When the preset timing conditions are met, the communication delay time is used as the compensation time, and the compensated timing time is packaged and sent to the wind turbine controller through the Modbus protocol;
[0068] After verifying the received timing time, the wind turbine controller sets the current time and the current time zone, and feeds back the timing result to the timing initiator.
[0069] Embodiment 3
[0070] The purpose of this embodiment is to provide a computer-readable storage medium.
[0071] A computer-readable storage medium stores a computer program, which, when executed by a processor, implements the steps in the wind turbine controller timing system based on the Modbus protocol as described in the first embodiment of the present disclosure.
[0072] Embodiment 4
[0073] The purpose of this embodiment is to provide an electronic device.
[0074] An electronic device includes a memory, a processor, and a program stored in the memory and executable on the processor. When the processor executes the program, the steps in the timing system of a wind turbine controller based on the Modbus protocol as described in the first embodiment of the present disclosure are implemented.
[0075] The above description is only a preferred embodiment of the present invention and is not intended to limit the present invention. For those skilled in the art, the present invention may have various modifications and variations. Any modification, equivalent replacement, improvement, etc. made within the spirit and principle of the present invention shall be included in the protection scope of the present invention.
Claims
1. The wind turbine controller timing system based on Modbus protocol is characterized by: Including timing initiator and wind turbine controller: The timing initiator is used to calculate the communication delay time with the wind turbine controller in real time. When the preset timing conditions are met, the communication delay time is used as the compensation time, the compensated timing time is packaged, and sent to the wind turbine controller through the Modbus protocol; The wind turbine controller is used to verify the received timing time, set the current time and the current time zone, and feed back the timing result to the timing initiator.
2. The wind turbine controller timing system based on Modbus protocol as claimed in claim 1, characterized in that: The calculation of the communication delay time with the wind turbine controller is specifically as follows: The wind farm monitoring system sends an ICMP ECHO request to the wind turbine controller, records the timestamps of sending and receiving, calculates the time difference between the two, and obtains the communication delay time.
3. The wind turbine controller timing system based on Modbus protocol as claimed in claim 1, characterized in that: The preset timing conditions include the start-up time of the wind farm monitoring system or the preset time of each day.
4. The wind turbine controller timing system based on Modbus protocol as claimed in claim 1, characterized in that: The compensated timing time is encapsulated as follows: Add the current time to half of the compensation time to get the compensated timing time. Define three sending registers to store the time zone, high-order data and low-order data respectively. Use the compensated timing time as the sending target value. Subtract 2000 from the target value to get the remaining time. Divide the remaining time by 65536 to get the high-order register data. Divide the remaining time by the remainder of 65536 to get the low-order register data. The time zone is stored in the time zone register.
5. The wind turbine controller timing system based on Modbus protocol as claimed in claim 4, characterized in that: The sending to the wind turbine controller through the Modbus protocol is to write three registers into the Modbus address specified by the protocol and send them to the wind turbine controller.
6. The wind turbine controller timing system based on Modbus protocol as claimed in claim 1, characterized in that: It also includes the calculation of the timing time before verification, specifically: Get the high-order data and multiply it by 65536 to get the result, add it to the low-order data to get the entire set number of seconds, and calculate the timing time based on the number of seconds.
7. The wind turbine controller timing system based on Modbus protocol as claimed in claim 1, characterized in that: The verification of the received timing time is to calculate the deviation between the timing time and the current time. If the deviation exceeds a threshold, the timing is started, otherwise the timing is not started.
8. A wind turbine controller timing method based on Modbus protocol, characterized in that: include: The timing initiator calculates the communication delay time with the wind turbine controller in real time. When the preset timing conditions are met, the communication delay time is used as the compensation time, and the compensated timing time is packaged and sent to the wind turbine controller through the Modbus protocol; After verifying the received timing time, the wind turbine controller sets the current time and the current time zone, and feeds back the timing result to the timing initiator.
9. An electronic device, comprising: a memory for non-transitory storage of computer readable instructions; a processor for executing the computer-readable instructions; Wherein, when the computer-readable instructions are executed by the processor, the method of claim 8 is performed.
10. A storage medium, characterized in that: The computer readable instructions are non-transitorily stored, wherein when the computer readable instructions are executed by a computer, the method of claim 8 is performed.