Control method for operating state of variable pitch system

By introducing the FMS limited state machine in the paddle system, the status judgment logic is simplified, and the problem of error judgment and maintenance difficulties caused by the complex "If-Art" nested in the existing technology has improved the reliability and maintenance of the system sex.

CN119353156APending Publication Date: 2025-01-24FUSHI NEW ENERGY TECH (SHANGHAI) CO LTD

Patent Information

Application Number
CN202411763992.3
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2024-12-03
Publication Date
2025-01-24

AI Technical Summary

Technical Problem

In existing pitch systems, state judgment is realized through complex "if-else" multiple nesting, which is prone to error judgment jumps, and the complex logic is not conducive to maintenance.

Method used

The introduction of FMS limited state machines, the operation mode of the abstract paddle system is a limited number state machine. Each state machine represents different operating modes, which simplifies logical judgment and status switching through limited state machines.

Benefits of technology

It reduces the coupling of the running system operation process, improves the reliability and maintenance of the program, and simplifies complex logical judgments.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN119353156A_ABST
    Figure CN119353156A_ABST
Patent Text Reader

Abstract

The invention discloses a control method for the operation state of a variable pitch system, which comprises the following steps: abstractly dividing the operation mode of the variable pitch system into an operation state, a shutdown state, a braking state and a maintenance state, and then defining a switching condition for switching to the next state for each state; meanwhile, an FMS (finite state memory) finite-state machine is introduced into an operation program of the variable-pitch system, the operation process is abstracted into a limited number of state machines, each state machine represents different operation modes of the variable-pitch system, and the state of the variable-pitch system can only be in one state machine at any moment; by using the FMS finite-state machine, the use of an if-else complex branch structure is reduced, the complex logic judgment is simplified, the coupling of the operation process of the variable-pitch system is reduced, the reliability of a variable-pitch program is improved, and the maintainability of a variable-pitch application program is improved.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The invention belongs to the field of application of variable pitch systems for wind power generation, and in particular relates to a method for controlling the operating state of a variable pitch system. Background Art

[0002] In the existing scheme of wind power generation pitch application program, the judgment of pitch internal fault, pitch normal operation, pitch manual maintenance and other operation process judgments are all realized by setting up complex "if-else" multiple nesting in the program. However, when using complex "if-else" multiple nesting (see Figure 1 In the process of realizing these status judgments and fault judgments by using the POSIX SYSTEM (as shown in the figure), it is easy to make erroneous judgment jumps, resulting in abnormal operation of the variable pitch system. In addition, a large number of judgment conditions also make it difficult to read the variable pitch application program, which is not conducive to later maintenance.

[0003] Therefore, the applicant hopes to seek technical solutions to improve the above technical problems. Summary of the invention

[0004] In view of this, the purpose of the present invention is to propose a control method for the operating status of a pitch system. By using an FMS finite state machine, the use of complex "if-else" branch structures is reduced, complex logical judgments are simplified, the coupling of the pitch system operating process is reduced, the reliability of the pitch program is improved, and the maintainability of the pitch application program is enhanced.

[0005] To this end, the technical solution adopted in the present invention is as follows: A control method for the operating state of a variable pitch system is disclosed. The operating mode of the variable pitch system is abstractly divided into an operating state, a shutdown state, a braking state and a maintenance state, and then a switching condition for switching to the next state is defined for each state. Meanwhile, a finite state machine (FMS) is introduced into the operating program of the variable pitch system to abstract the operating process into a finite number of state machines, wherein each state machine represents a different operating mode of the variable pitch system, and the state can only be in one state machine at any time.

[0006] Preferably, when the operating state needs to be switched to the braking state, the switching condition is defined as fault activation; when the operating state needs to be switched to the shutdown state or the maintenance state, there is no switching condition.

[0007] Preferably, when the stop state needs to be switched to the running state, the switching condition is defined as the main control running signal; when the stop state needs to be switched to the braking state, the switching condition is defined as the limit switch is not triggered; when the stop state needs to be switched to the maintenance state, the switching condition is defined as the maintenance signal is activated.

[0008] Preferably, when the braking state needs to be switched to the shutdown state, the switching condition is defined as the limit switch being triggered; when the braking state needs to be switched to the operating state or the maintenance state, there is no switching condition.

[0009] Preferably, when the maintenance state needs to be switched to the braking state, the switching condition is defined as the cancellation of the maintenance signal; when the maintenance state needs to be switched to the running state or the shutdown state, there is no switching condition.

[0010] Preferably, the implementation of the FMS (finite state machine) finite state machine includes: Set a state machine function for each operating mode, and determine the execution functions of entering, maintaining, and exiting each state machine according to the input signal; Set the state machine control function to confirm which state machine is currently being executed, and to execute the exit operation of the current state machine and the entry operation of the next state during the state machine switching process; A state machine switching function is set, wherein the state machine switching function realizes the state machine switching by changing the myState function pointer variable.

[0011] Preferably, the state machine function code corresponding to the running state is as follows: static void OPERATION_Normal(t_statefunction_parameter sig) { if ( sig == INIT ) { / / Logic that needs to be run when entering the state machine } / / end of INIT block else if ( sig == EXIT ) / / all code, which shall perform when this state is left { / / Logic that needs to be run when exiting the state machine } / / end of EXIT block else { / / Keep the logic that the state machine needs to run } / / end of NONE block }.

[0012] Preferably, the state machine control function is as follows: void States_control(uint32_t intervall) { if (myState != myLastState) / / Check if state machine switching occurs { if ( myLastState != 0 ) myLastState( EXIT ); / / Status execution exit operation myLastState = myState; myState( INIT ); / / State execution enters the operation / / write State Log on Transit function } else { / / now call the actual state function with NONE as parameter myState( NONE ); / / status retention } }; Among them, myState refers to a function pointer variable, which indicates the state machine that needs to be executed currently; myLastState refers to a function pointer variable, which indicates the state machine executed in the previous cycle of the program.

[0013] Preferably, the state machine control function compares the pointer variables of the two functions myState and myLastState. If myState is equal to myLastState, it means that no state machine switching occurs, and myState( NONE ), indicating that the current state machine continues to run, and assigns myState to myLastState, so that the next scan cycle can determine whether the state machine is switched; if myState is not equal to myLastState, the state machine switching operation is determined, and the current state machine executes the exit operation myLastState( EXIT ), the next state executes the entry operation myState( INIT ).

[0014] Preferably, when a pitch failure occurs in the pitch system during operation, the address of the braking state machine function is assigned to myState to implement the function of switching from the operating state to the braking state; wherein the code of the corresponding state switching function is as follows: #define Transit(x) myState = x If (error == true) Transit(BRAKE_Emergency).

[0015] The present invention introduces the FMS finite state machine into the pitch control application program, which has the following advantages: The development of pitch control application program switches from process-oriented programming to object-oriented programming, which makes the pitch control program more structured, reduces the coupling between the various subsystems of the pitch control program, and improves the reliability of the pitch control program; The variable pitch program code structure is clearer, which can avoid complex branch logic judgments and simplify complex logic judgments, making the variable pitch application program code more maintainable. During the implementation process, each state is dispersed into different state machines, which improves the readability and extensibility of the code. BRIEF DESCRIPTION OF THE DRAWINGS

[0016] Figure 1 This is a schematic diagram of multiple nesting of "if-else" under the specific implementation mode of this application. DETAILED DESCRIPTION

[0017] An embodiment of the present invention discloses a method for controlling the operating state of a variable pitch system, which abstractly divides the operating mode of the variable pitch system into an operating state, a shutdown state, a braking state, and a maintenance state, and then defines a switching condition for switching to the next state for each state; at the same time, an FMS (finite state machine) finite state machine is introduced into the operating program of the variable pitch system, and the operating process is abstracted into a finite number of state machines, wherein each state machine represents a different operating mode of the variable pitch system, and the state can only be in one state machine at any time.

[0018] Preferably, please refer to the following Table 1. In this embodiment, when the running state needs to be switched to the braking state, the switching condition is defined as fault activation; when the running state needs to be switched to the shutdown state or the maintenance state, there is no switching condition; when the shutdown state needs to be switched to the running state, the switching condition is defined as the master control running signal; when the shutdown state needs to be switched to the braking state, the switching condition is defined as the limit switch not triggered; when the shutdown state needs to be switched to the maintenance state, the switching condition is defined as the maintenance signal activated; when the braking state needs to be switched to the shutdown state, the switching condition is defined as the limit switch triggered; when the braking state needs to be switched to the running state or the maintenance state, there is no switching condition; when the maintenance state needs to be switched to the braking state, the switching condition is defined as the maintenance signal cancelled; when the maintenance state needs to be switched to the running state or the shutdown state, there is no switching condition. Table 1

[0019] run Downtime brake maintain run - - Fault activation - Downtime Master control running signal - Limit switch not triggered Maintenance signal activated brake - Limit switch trigger - - maintain - - Maintenance signal canceled - It should be noted that the first column on the left in the above Table 1 is the current state, and the second to fifth columns are the next states to be switched, where “-” indicates that there is no switching condition between the current state and the next state.

[0020] Preferably, the implementation of the FMS (finite state machine) finite state machine includes: Set a state machine function for each operating mode, and determine the execution functions of entering, maintaining, and exiting each state machine according to the input signal; Set the state machine control function to confirm which state machine is currently being executed, and to execute the exit operation of the current state machine and the entry operation of the next state during the state machine switching process; Set the state machine switching function. The state machine switching function implements the state machine switching by changing the myState function pointer variable.

[0021] Specifically preferably, in this implementation, the state machine function code corresponding to the running state is as follows: static void OPERATION_Normal(t_statefunction_parameter sig) { if ( sig == INIT ) { / / Logic that needs to be run when entering the state machine } / / end of INIT block else if ( sig == EXIT ) / / all code, which shall perform when this state is left { / / Logic that needs to be run when exiting the state machine } / / end of EXIT block else { / / Keep the logic that the state machine needs to run } / / end of NONE block The state machine function codes corresponding to other operating mode states are set with reference to the state machine function code logic architecture corresponding to the above operating states. It is only necessary to replace the logic content of the corresponding state. These adaptive replacement contents belong to the conventional technical means that can be made by those skilled in the art in this application. This embodiment will not be further described in detail. Preferably, in this embodiment, the state machine control function is as follows: void States_control(uint32_t intervall) { if (myState != myLastState) / / Check if state machine switching occurs { if ( myLastState != 0 ) myLastState( EXIT ); / / Status execution exit operation myLastState = myState; myState( INIT ); / / State execution enters the operation / / write State Log on Transit function } else { / / now call the actual state function with NONE as parameter myState( NONE ); / / status retention } }; Wherein, myState refers to a function pointer variable, indicating the state machine that needs to be executed currently; myLastState refers to a function pointer variable, indicating the state machine executed in the previous cycle of the program; in this embodiment, the state machine control function compares the pointer variables of the two functions myState and myLastState. If myState is equal to myLastState, it means that no state machine switching occurs, and myState( NONE ), indicating that the current state machine continues to run, and assigns myState to myLastState, so that the next scan cycle can determine whether the state machine is switched; if myState is not equal to myLastState, the state machine switching operation is determined, and the current state machine executes the exit operation myLastState( EXIT ), the next state executes the entry operation myState( INIT ).

[0022] Preferably, in this embodiment, when the pitch system is in the running state and a pitch fault occurs, the address of the braking state machine function is assigned to myState to implement the function of switching from the running state to the braking state; wherein the code of the corresponding state switching function is as follows: #define Transit(x) myState = x If (error == true) Transit(BRAKE_Emergency).

[0023] In this embodiment, after the FMS finite state machine is introduced in the pitch control application, when implementing the pitch control logic, it is only necessary to know the logic of the current state without considering the overall operation logic of the pitch control system; for example, the 91° limit switch signal, if the signal is triggered during the operation of the wind turbine, will trigger the 91° limit switch false triggering fault, however, in the shutdown state, the 91° limit switch triggering is normal, using the old solution, first if-else is required to determine the wind turbine operation state, and then if-else is used to determine the state of the limit signal. After the FMS state machine is introduced, the signal state does not need to be determined in the shutdown state, and the signal state will be determined in the running state.

[0024] This embodiment converts the pitch system from a process model into an object model, and introduces the FMS (finite state machine) finite state machine. By using the FMS finite state machine, the use of complex "if-else" branch structures is reduced, complex logical judgments are simplified, the coupling of the pitch system operation process is reduced, the reliability of the pitch program is improved, and the maintainability of the pitch application program is improved.

[0025] It will be apparent to those skilled in the art that the invention is not limited to the details of the exemplary embodiments described above and that the invention can be implemented in other specific forms without departing from the spirit or essential features of the invention. Therefore, the embodiments should be considered exemplary and non-limiting in all respects, and the scope of the invention is defined by the appended claims rather than the foregoing description, and it is intended that all variations falling within the meaning and scope of the equivalent elements of the claims be included in the invention. Any reference numeral in a claim should not be considered as limiting the claim to which it relates.

[0026] In addition, it should be understood that although the present specification is described according to implementation modes, not every implementation mode contains only one independent technical solution. This description of the specification is only for the sake of clarity. Those skilled in the art should regard the specification as a whole. The technical solutions in each embodiment may also be appropriately combined to form other implementation modes that can be understood by those skilled in the art.

Claims

1. A method for controlling the operating state of a variable pitch system, characterized in that: The operating mode of the variable pitch system is abstractly divided into operating state, shutdown state, braking and maintenance state, and then the switching conditions for switching to the next state are defined for each state; at the same time, the FMS (finite state machine) finite state machine is introduced into the operating program of the variable pitch system, and the operating process is abstracted into a finite number of state machines, where each state machine represents a different operating mode of the variable pitch system, and the state can only be in one state machine at any time.

2. The method for controlling the operating state of a pitch system according to claim 1, characterized in that: When the running state needs to be switched to the braking state, the switching condition is defined as fault activation; when the running state needs to be switched to the shutdown state or maintenance state, there is no switching condition.

3. The method for controlling the operating state of a pitch system according to claim 1, characterized in that: When the stop state needs to be switched to the running state, the switching condition is defined as the main control running signal; when the stop state needs to be switched to the braking state, the switching condition is defined as the limit switch not being triggered; when the stop state needs to be switched to the maintenance state, the switching condition is defined as the maintenance signal being activated.

4. The method for controlling the operating state of a pitch system according to claim 1, characterized in that: When the braking state needs to be switched to the stop state, the switching condition is defined as the limit switch triggering; when the braking state needs to be switched to the running state or the maintenance state, there is no switching condition.

5. The method for controlling the operating state of a pitch system according to claim 1, characterized in that: When the maintenance state needs to be switched to the braking state, the switching condition is defined as the cancellation of the maintenance signal; when the maintenance state needs to be switched to the running state or the shutdown state, there is no switching condition.

6. The method for controlling the operating state of a pitch system according to claim 1, characterized in that: The implementation of the FMS (finite state machine) finite state machine includes: Set the state machine function for each operation mode, and determine the execution functions of entering, maintaining, and exiting each state machine according to the input signal; Set the state machine control function to confirm which state machine is currently being executed, and to execute the exit operation of the current state machine and the entry operation of the next state during the state machine switching process; A state machine switching function is set, wherein the state machine switching function realizes the state machine switching by changing the myState function pointer variable.

7. The method for controlling the operating state of a pitch system according to claim 6, characterized in that: The state machine function code corresponding to the running state is as follows: static void OPERATION_Normal(t_statefunction_parameter sig) { if ( sig == INIT ) { / / Logic that needs to be run when entering the state machine } / / end of INIT block else if ( sig == EXIT ) / / all code, which shall perform when this state is left { / / Logic that needs to be run when exiting the state machine } / / end of EXIT block else { / / Keep the logic that the state machine needs to run } / / end of NONE block }。 8. The method for controlling the operating state of a pitch system according to claim 6, characterized in that: The state machine control function is as follows: voidStates_control(uint32_t intervall) { if (myState != myLastState) / / Check if state machine switching occurs { if ( myLastState != 0 ) myLastState( EXIT ); / / Status execution exit operation myLastState = myState; myState( INIT ); / / State execution enters the operation / / write State Log on Transit function } else { / / now call the actual state function with NONE as parameter myState( NONE ); / / status retention } }; Among them, myState refers to a function pointer variable, which indicates the state machine that needs to be executed currently; myLastState refers to a function pointer variable, which indicates the state machine executed in the previous cycle of the program.

9. The method for controlling the operating state of a pitch system according to claim 8, characterized in that: The state machine control function compares the pointer variables of the two functions myState and myLastState. If myState is equal to myLastState, it means that no state machine switching occurs. At this time, myState( NONE ), indicating that the current state machine continues to run, and assigns myState to myLastState, so that the next scan cycle can determine whether the state machine is switched; if myState is not equal to myLastState, the state machine switching operation is determined, and the current state machine executes the exit operation myLastState( EXIT ), the next state executes the entry operation myState( INIT ).

10. The method for controlling the operating state of a pitch system according to claim 6, characterized in that: When the pitch system is in the running state, a pitch fault occurs. At this time, the address of the braking state machine function is assigned to myState to implement the function of switching from the running state to the braking state. The code of the corresponding state switching function is as follows: #define Transit(x) myState = x If (error == true) Transit(BRAKE_Emergency).

Citation Information

Patent Citations

  • Variable pitch system control method based on state machine, variable pitch system and state machine

    CN111706462A

  • Control method of variable pitch control system

    CN113007014A

  • Control method for variable pitch system of wind turbine generator

    CN116753113A

  • Event-based temporal logic

    US20030046658A1

Cited By

  • Calculation control method for generating power of wind generating set

    CN121859056A