CN114442523A - Control method of distributed redundant control system actuator - Google Patents

Control method of distributed redundant control system actuator Download PDF

Info

Publication number
CN114442523A
CN114442523A CN202111681055.XA CN202111681055A CN114442523A CN 114442523 A CN114442523 A CN 114442523A CN 202111681055 A CN202111681055 A CN 202111681055A CN 114442523 A CN114442523 A CN 114442523A
Authority
CN
China
Prior art keywords
actuator
result
actuators
executor
voting
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
CN202111681055.XA
Other languages
Chinese (zh)
Inventor
吴越
汪若彪
岳龙龙
施尹志
黄奕龙
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Zhejiang Supcon Technology Co Ltd
Original Assignee
Zhejiang Supcon Technology Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Zhejiang Supcon Technology Co Ltd filed Critical Zhejiang Supcon Technology Co Ltd
Priority to CN202111681055.XA priority Critical patent/CN114442523A/en
Publication of CN114442523A publication Critical patent/CN114442523A/en
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B19/00Programme-control systems
    • G05B19/02Programme-control systems electric
    • G05B19/04Programme control other than numerical control, i.e. in sequence controllers or logic controllers
    • G05B19/042Programme control other than numerical control, i.e. in sequence controllers or logic controllers using digital processors
    • G05B19/0421Multiprocessor system
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/20Pc systems
    • G05B2219/24Pc safety
    • G05B2219/24182Redundancy

Landscapes

  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Engineering & Computer Science (AREA)
  • Automation & Control Theory (AREA)
  • Hardware Redundancy (AREA)

Abstract

The invention discloses a control method of a distributed redundancy control system actuator, which comprises the following steps: the master executor broadcasts a first command or first data; if the main actuator broadcasts the first command, all actuators obtain an execution result based on the first command, and the execution result is used as a first result; if the main actuator broadcasts the first data, all actuators compare the received first data with the newly added data of the actuators, and the comparison result is used as a first result; each executor broadcasts a first result to other executors, and all executors vote respectively based on the received first results; and the main executor collects the voting result and judges whether the voting passes or not, and if the voting passes, the first result is taken as a final execution result. The control method of the actuator of the distributed redundancy control system provided by the invention enables the system to run more stably and safely by voting and election of the actuator.

Description

Control method of distributed redundant control system actuator
Technical Field
The invention relates to a control system actuator applied to the field of industrial control, in particular to a control method of a distributed redundant control system actuator.
Background
In the field of industrial control, people have very high requirements on safety and reliability of industrial software. The control system actuator is used as software for directly controlling the control system, and the safety and the reliability of the control system actuator directly influence the safety production of the whole workshop and even the whole project. The independently operated actuators may be affected by network environment, equipment state, human factors, and may have unavailable states such as offline, fault, etc., thereby affecting production.
The common technical scheme of master-slave redundancy at present realizes the stable and safe operation of the control system actuators, the operation data keeps synchronization on the master actuator and the slave actuator, and the switching is determined according to a third party when the abnormity occurs.
However, with the above-mentioned master-slave redundancy solution, it is inevitable to rely on a third party for arbitration, and the failure may be caused when the third party is disconnected or fails. On the other hand, since the database is used to run data synchronously, which means that data is generated by the master actuator, the slave actuator cannot provide an authentication or error correction function when the data source connected to the master actuator is unstable or the master actuator is attacked.
Disclosure of Invention
The invention provides a reliable and safe control method of the actuator of the distributed redundant control system in order to improve the stability and the safety of the actuator, and the actuator of the control system can run more stably and safely by voting and electing the execution result of the distributed redundant control actuator, thereby improving the anti-jamming capability and the robustness of the actuator.
The technical scheme adopted by the invention for overcoming the technical problems is as follows: a control method of distributed redundant control system actuators is applied to a control system at least comprising three actuators, wherein the actuators comprise at most one master actuator and at least two slave actuators, and the method specifically comprises the following steps: the master executor broadcasts a first command or first data; if the main actuator broadcasts the first command, all actuators in the system obtain an execution result based on the first command, and the execution result is used as a first result; if the main actuator broadcasts the first data, all actuators in the system compare the received first data with the newly added data of the actuators, and the comparison result is used as a first result; each executor broadcasts the first result to other executors respectively, and all executors vote based on the received first result respectively; and the main executor collects the voting result, judges whether the voting passes or not based on the voting result, and takes the first result as a final execution result if the voting passes.
The first command is for distributed execution by a distributed redundant control system actuator and the first data is for synchronization.
Further, if the voting result passes, the method also comprises the step of increasing the weight of an executor casting the passing ticket.
The weights of the actuators affect the outcome of the election and voting.
Furthermore, the method also comprises the step that if the master actuator is abnormal, the slave actuator is changed into a candidate actuator based on the detected abnormality, and the election of the master actuator is restarted.
Further, the changing of the slave actuator to the candidate actuator based on the detected abnormality and the re-initiating of the election of the master actuator specifically include: the candidate executor initiates election of the main executor after the tenure ID is increased, votes for the candidate executor, broadcasts a voting request and collects voting results; determining whether to win the election based on the collected voting results; if the election is successful, the new master executor issues an ID for winning the election and the expiration, and the rest executors are converted into slave executors; and if the election fails, the candidate executors restart the election of the main executor at preset time intervals.
Furthermore, if the master actuator returns to normal in the election process, the master actuator becomes a candidate actuator to participate in the election of the master actuator, and if the master actuator returns to normal after a new master actuator is selected, the master actuator becomes a slave actuator.
Further, if the master executor broadcasts the first command, the master executor is further included to write the final result into the controller.
Further, if the master executor broadcasts the first data, all executors are also included to write the final result into the database or the cache.
Further, voting by all the executors based on the received first result specifically includes: all the executors collect the execution results of other executors and the corresponding weight of each executor, if the execution results of the executors which cannot be collected are ignored, and if the weight of the executors cannot be collected, the last collected weight is adopted; and if the ratio of the collected actuator weight meeting the result to the total weight is greater than a first preset threshold value, the actuator throws a ticket.
Further, the main executor collects voting results, and judges whether the voting passes or not based on the voting results, specifically including: and if the ratio of the number of votes to the total number of votes is greater than a second preset threshold value after the main actuator collects the votes of all the actuators, judging that the voting result passes.
Further, if the voting result is not passed, the main executor repeatedly executes the broadcast of the first command or the first data.
The invention has the beneficial effects that:
1. the control system actuators are adopted to adopt a more flexible distributed redundancy architecture, so that each actuator participates in the execution process under normal conditions, and better data reliability, safety and robustness are provided.
2. The actuator is more reliable and safer to execute through the election and voting of the actuator.
Drawings
FIG. 1 is a flow chart of a method of controlling a distributed redundant control system actuator in accordance with an embodiment of the present invention;
FIG. 2 is a flow chart illustrating a distributed execution method of a distributed redundant control system actuator according to an embodiment of the present invention;
FIG. 3 is a flow chart illustrating a data synchronization method for a distributed redundancy control system actuator according to an embodiment of the present invention;
fig. 4 is a flowchart illustrating an election method performed by a distributed redundant control system actuator according to an embodiment of the present invention.
Detailed Description
In order to facilitate a better understanding of the invention for those skilled in the art, the invention will be described in further detail with reference to the accompanying drawings and specific examples, which are given by way of illustration only and do not limit the scope of the invention.
Before describing the solution of the distributed redundant control system actuator of the present invention, some terms related to the solution are first explained:
distributed: decentralizing a system on multiple computers to achieve higher performance and better reliability
Redundancy: the standby system provided for safety and reliability requirements usually has a hot-switching function
An actuator: hardware or software for executing a process or logic is located at the top of the control system and has the capability to directly control the control system. Its function can be expressed as: actuator (last state, event) is the next state.
The state is as follows: in particular the state of a system, a system can be described by a state model.
In order to facilitate a better understanding of the invention for those skilled in the art, the invention will be described in further detail with reference to the accompanying drawings and specific examples, which are given by way of illustration only and do not limit the scope of the invention.
As shown in fig. 1, the control method for an actuator of a distributed redundant control system according to the present invention is applied to a control system including at least one master actuator and two slave actuators, and specifically includes: the method comprises the steps that a main actuator broadcasts a first command or first data, if the main actuator broadcasts the first command, all actuators in a system execute the command based on the first command to obtain an execution result, and the execution result is used as a first result; and if the main actuator broadcasts the first data, all actuators in the system compare the received first data with the newly added data of the actuators, and the comparison result is used as a first result. And each executor broadcasts the first result to other executors respectively, and all executors vote based on the received first result respectively. And the main executor collects the voting result, judges whether the voting passes or not based on the voting result, and takes the first result as a final execution result if the voting result passes.
In some embodiments, the first command is used for a control method of distributed execution of the actuators, and the first data is used for a control method of data synchronization of the actuators.
In the following, a control method for distributed execution of a distributed control system is described with reference to fig. 2, where the distributed redundant control system includes a master actuator and 3 slave actuators, i.e., a slave actuator 1, a slave actuator 2, and a slave actuator 3. The master actuator executes the command a, and after the command a starts to be executed, the master actuator broadcasts the command a to start to be executed, so that all actuators receive the command a. After receiving the command a, each actuator reads the program data and the control program, tries to execute the command a, and broadcasts the tried execution result to the system. As shown in fig. 2, the result of the execution attempt by the master actuator is result a, the result of the execution attempt by the slave actuator 1 is result a, the result of the execution of the slave actuator 2 is a, and the result of the execution of the slave actuator 3 is B.
In some embodiments, different executors have different execution results for the same execution command, because the data sources connected to different executors may be different and different data sources have different data read-write permissions.
In other embodiments, the network status, data delay, etc. may cause the actuator to have different results, which does not exclude the actuator from having abnormal results.
Each executor broadcasts execution results to other executors, and all executors vote whether the execution result A of the master executor is correct or not based on the collected execution results and the weights. And the main actuator collects the result and judges whether the result passes the voting, if the result does not pass the voting, the command a is executed again, the process is repeated, and if the result passes the voting, the final execution result A is collected, and the main actuator completes the subsequent control, such as a write-in controller or a database shown in FIG. 2. If not, the process of returning to the master executor to begin executing commands resumes distributed execution.
In some embodiments, the result R and corresponding execution weight p of all actuators are collected before actuator voting, and the requirement for voting is that
Figure BDA0003438803290000051
If the sum of the weights of the actuators which meet the result is divided by the sum of the total weights is greater than or equal to 0.5, the ticket is cast. If the result that the actuator is not collected in time exists, the result is empty, and if the weight of the actuator is not collected in time, the last collected weight is used.
In some embodiments, if the number of votes collected by the master executor that pass is greater than half of the total number of votes, a vote pass is determined, and the results of the previous attempted execution are converted into actual execution results.
In some embodiments, all voted-through executors are boosted by their corresponding execution weights. In the embodiment of the present invention, since the slave actuator 1 and the slave actuator 2 cast a pass ticket for a for the execution result of the master actuator, the slave actuator 1 and the slave actuator 2 increase the execution weight.
In some embodiments, if there are multiple executions or a long execution time fails, the execution weight of the master executor is reduced, demoted to a candidate and the election is re-initiated.
The control method of the distributed redundant control system actuator of the present invention is also applicable to data synchronization, and the data synchronization method of the distributed redundant control system will be described with reference to fig. 3.
The data of the controller is directly read by each actuator, and the problem of synchronization is not involved. However, in some cases, for example, after the step execution is finished, after a special event is triggered, the state of the actuator changes, and the actuator needs to synchronize data of the currently executed program. Data synchronization begins at command execution
In some embodiments, the executor needs data of the executed program, such as variables, parameters, timers, triggers, etc., to be synchronized.
The process of data synchronization is triggered by the master executor, as shown in fig. 3, the master executor first self-adds the transaction ID, calculates the first data, and broadcasts the first data.
Wherein the transaction IDs represent the order of data updates and the executor records the transaction IDs to prevent some situations from losing data. The first data is the data change between the two transaction IDs, i.e. the new data in fig. 3.
And the slave executor compares the received new data with the data change between the two transaction IDs of the slave executor, and judges whether the data change of the slave executor is matched with the new data. The slave executors 1 and 2 vote for the master executor by comparing the data results. The master executor collects the voting results and finds whether the voting results pass or not, and if the voting results do not pass, returns to the transaction ID increase process shown in fig. 3 to restart the synchronization. And if the voting is passed, sending the collected final result to all actuators, then performing data synchronization by the actuators, and writing the final result into a database and a data cache.
The slave executors 1 and 2 shown in fig. 3 participate in data synchronization, but the slave executor 3 does not participate in the data synchronization process due to the previous state abnormality. Therefore, the process of comparing data and voting is not performed.
In the embodiment shown in fig. 3, since the slave actuator 1 matches the new data with its own data change, the pass ticket is posted to the master actuator, and the slave actuator 2 matches the new data with its own data change, the no-pass ticket is posted to the master actuator.
It should be noted that certain errors are allowed during matching, and the matching is calculated within the error range. The actuator casting the pass ticket raises the data weight. If the execution is carried out for multiple times or the execution is not passed for a long time, the data weight of the main executor is reduced, the main executor may be degraded into a candidate executor, and re-election is triggered.
The election process is as shown in fig. 4, if the main actuator goes offline in the distributed redundant control system, or the main actuator fails to complete distributed execution or data synchronization tasks for many times or for a long time, the main actuator is degraded, as shown in fig. 4, the main actuator fails, when the slave actuator 1 and the slave actuator 2 detect that the main actuator is overtime or the main actuator fails, the main actuator is upgraded to become a candidate actuator, and when the slave actuator 3 may not detect that the main actuator fails, the slave actuator does not participate in the process of initiating election voting.
Candidate executor 1 and candidate executor 2 increment their tenure IDs, the candidate executor votes to itself first and broadcasts other executor voting requests while sending weights to other slave executors. As shown in fig. 4, the transmission weight of the candidate executor 1 is P ═ 1.1, and the transmission weight of the candidate executor 2 is P ═ 1.8, and voting results are collected.
The candidate executor determines whether to win the election by the collected voting result, because in the embodiment of the invention, the candidate executor 2 votes from the executor 3 to the candidate executor 2, the candidate executor 2 successfully becomes the main executor, and the candidate executor 1 fails to wait for the election result. The candidate executor which becomes the master executor issues the election result and updates the tenure, and the rest executors receive the updated tenure, which indicates that the original slave executor 2 becomes the master executor, so that the rest executors, no matter whether the former candidate executor, the slave executor or the master executor is, become new slave executors.
If all candidate actors cannot win the election, the candidate actors need to wait for a period of time before initiating the vote again. If the candidate executor obtains more than half of all votes, the candidate executor is regarded as winning the election;
note that, the voting requests of the candidate executor 1 and the candidate executor 2 are received from the executor 3 within a short receiving time, and the candidate executor 2 is voted for because the weight of the candidate executor 2 is higher.
In some embodiments, the weight at the time of election is determined by the data weight and the execution weight together, and the smaller value of the two may also be used as the weight at the time of election. The weight is initially 1 and the lowest is 1, the highest weight will not exceed the total divided by two. The weight P is N/pi arctan (M), where N is the number of actuators and M is the number of times that approximately 20 operations have succeeded.
It should be noted that: in other embodiments, the steps of the corresponding methods are not necessarily performed in the order shown and described herein. In some other embodiments, the method may include more or fewer steps than those described herein. Moreover, a single step described in this specification may be broken down into multiple steps for description in other embodiments; multiple steps described in this specification may be combined into a single step in other embodiments.
The foregoing merely illustrates the principles and preferred embodiments of the invention and many variations and modifications may be made by those skilled in the art in light of the foregoing description, which are within the scope of the invention.

Claims (10)

1. A control method of actuators of a distributed redundant control system is characterized by being applied to a control system at least comprising three actuators, wherein the actuators comprise at most one master actuator and not less than two slave actuators, and the control method of the actuators of the distributed redundant control system specifically comprises the following steps:
the master executor broadcasts a first command or first data;
if the main actuator broadcasts the first command, all actuators in the system obtain an execution result based on the first command, and the execution result is used as a first result;
if the main actuator broadcasts the first data, all actuators in the system compare the received first data with the newly added data of the actuators, and the comparison result is used as a first result;
each executor broadcasts the first result to other executors respectively, and all executors vote based on the received first result respectively;
and the main executor collects the voting result, judges whether the voting passes or not based on the voting result, and takes the first result as a final execution result if the voting passes.
2. The method of controlling actuators of a distributed redundant control system of claim 1 further comprising increasing the weight of actuators that cast a pass if the voting results pass.
3. The method of controlling an actuator of a distributed redundant control system according to claim 1 further comprising if an abnormality occurs in the master actuator, modifying the slave actuator to a candidate actuator based on the detected abnormality and re-initiating election of the master actuator.
4. The method for controlling actuators of a distributed redundant control system according to claim 3, wherein the slave actuators are modified to be candidate actuators based on the detected abnormality and the election of the master actuator is restarted, specifically comprising:
the candidate executor initiates election of the main executor after the tenure ID is increased, votes for the candidate executor, broadcasts a voting request and collects voting results;
determining whether to win the election based on the collected voting results;
if the election is successful, the new master executor issues an ID for winning the election and the expiration, and the rest executors are converted into slave executors;
if the election fails, the candidate executor reinitiates the election of the main executor at preset time intervals.
5. The method of claim 4, wherein the master actuator becomes a candidate actuator to participate in the election of the master actuator if the master actuator returns to normal during the election process, and becomes a slave actuator if the master actuator returns to normal after a new master actuator is selected.
6. The method of claim 1, further comprising the master actuator writing the final result to the controller if the master actuator broadcasts the first command.
7. The method of claim 1, further comprising writing the final result to a database or cache by all of the actuators if the primary actuator broadcasts the first data.
8. The method for controlling actuators of a distributed redundant control system according to claim 1, wherein voting is performed by all the actuators based on the received first result, and specifically comprises:
all the executors collect the execution results of other executors and the corresponding weight of each executor, if the execution results of the executors which cannot be collected are ignored, and if the weight of the executors cannot be collected, the last collected weight is adopted;
and if the ratio of the collected actuator weight meeting the result to the total weight is greater than a first preset threshold value, the actuator throws a ticket.
9. The method for controlling actuators of a distributed redundancy control system according to claim 1, wherein the main actuator collects voting results and determines whether the voting passes or not based on the voting results, and specifically comprises: and if the ratio of the number of votes to the total number of votes is greater than a second preset threshold value after the main actuator collects the votes of all the actuators, judging that the voting result passes.
10. The method of controlling an actuator of a distributed redundancy control system according to any of claims 1 to 9, wherein the broadcasting of the first command or the first data by the main actuator is repeatedly performed if the voting result fails.
CN202111681055.XA 2021-12-28 2021-12-28 Control method of distributed redundant control system actuator Pending CN114442523A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202111681055.XA CN114442523A (en) 2021-12-28 2021-12-28 Control method of distributed redundant control system actuator

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202111681055.XA CN114442523A (en) 2021-12-28 2021-12-28 Control method of distributed redundant control system actuator

Publications (1)

Publication Number Publication Date
CN114442523A true CN114442523A (en) 2022-05-06

Family

ID=81366122

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202111681055.XA Pending CN114442523A (en) 2021-12-28 2021-12-28 Control method of distributed redundant control system actuator

Country Status (1)

Country Link
CN (1) CN114442523A (en)

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20170201590A1 (en) * 2016-01-12 2017-07-13 Politechnika Poznanska Fault-tolerant data processing computer system and method for implementing a distributed two-tier state machine
CN107105032A (en) * 2017-04-20 2017-08-29 腾讯科技(深圳)有限公司 node device operation method and node device
CN107458172A (en) * 2016-06-02 2017-12-12 通用汽车环球科技运作有限责任公司 The system for for social controlling the vehicle climate of the autonomous vehicles
CN111447096A (en) * 2020-04-20 2020-07-24 国网甘肃省电力公司信息通信公司 Election method and election system based on cloud platform communication system
CN111527477A (en) * 2017-12-27 2020-08-11 美光科技公司 Determining reliability of vehicle control commands using voting mechanism

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20170201590A1 (en) * 2016-01-12 2017-07-13 Politechnika Poznanska Fault-tolerant data processing computer system and method for implementing a distributed two-tier state machine
CN107458172A (en) * 2016-06-02 2017-12-12 通用汽车环球科技运作有限责任公司 The system for for social controlling the vehicle climate of the autonomous vehicles
CN107105032A (en) * 2017-04-20 2017-08-29 腾讯科技(深圳)有限公司 node device operation method and node device
CN111527477A (en) * 2017-12-27 2020-08-11 美光科技公司 Determining reliability of vehicle control commands using voting mechanism
CN111447096A (en) * 2020-04-20 2020-07-24 国网甘肃省电力公司信息通信公司 Election method and election system based on cloud platform communication system

Similar Documents

Publication Publication Date Title
CN110855793A (en) Distributed system consensus method
CN109814905B (en) Software upgrading method and device based on blockchain
US11102084B2 (en) Fault rectification method, device, and system
CN101533356B (en) A method, a device and a system for realizing software online upgrade
US9513894B2 (en) Database software upgrade using specify-validate-execute protocol
CN103647669A (en) System and method for guaranteeing distributed data processing consistency
CN101933014A (en) System and method for replication and synchronisation
CN105915391B (en) The distributed key assignments storage method of self-recovering function is submitted and had based on single phase
CN102567438A (en) Method for providing access to data items from a distributed storage system
CN110908613B (en) Data write command processing method and device, electronic equipment and storage medium
US7730029B2 (en) System and method of fault tolerant reconciliation for control card redundancy
CN110865907B (en) Method and system for providing service redundancy between master server and slave server
CN115150273B (en) Upgrade processing method and device
CN112434008A (en) Distributed database upgrading method, device and medium
CN115145697A (en) Database transaction processing method and device and electronic equipment
US7428660B2 (en) Starting control method, duplex platform system, and information processor
CN115168322A (en) Database system, main library election method and device
CN114598710A (en) Method, device, equipment and medium for synchronizing distributed storage cluster data
CN114442523A (en) Control method of distributed redundant control system actuator
CN101861569B (en) High integrity and high availability computer processing module
US8689048B1 (en) Non-logging resumable distributed cluster
US7546171B2 (en) Method, apparatus and system for recovery of a controller with known-compatible configuration and run-time data
Beyer et al. Increasing availability in a replicated partitionable distributed object system
CN114116144B (en) Lightweight global transaction manager and control method thereof
EP2520989B1 (en) Method for operating a highly available system with failsafe functionality and highly available system with failsafe functionality

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination