A method for controlling state variables in an industrial control system with edge-cloud collaboration
By using an edge-cloud collaborative method for regulating the state variables of industrial control systems, the problem of insufficient detection of covert data tampering in industrial control systems is solved, and the regulation of the state of the controlled system and the improvement of security protection are achieved under limited energy.
Patent Information
- Application Number
- CN202411209232.8
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2024-08-30
- Publication Date
- 2025-10-28
- Estimated Expiration
- 2044-08-30
AI Technical Summary
Existing industrial control systems lack effective methods for controlling state variables and cannot detect covert data tampering, resulting in vulnerabilities in security protection training and increasing the risks to industrial control.
By adopting an edge-cloud collaborative approach, a nominal system and residual generator are built on a cloud server to calculate the concealment matrix and state optimal estimation, generate state offset or variable control data sequences, and implement data injection at edge nodes and terminals to achieve state variable control of the controlled industrial process.
Under the constraint of limited energy, the state of the controlled system deviates from the ideal trajectory to the greatest extent, providing powerful offensive and defensive exercises and training, avoiding the detection of anomalies by the original anomaly detection mechanism, and improving the security protection capability of the industrial control system.
Smart Images

Figure CN119087861B_ABST
Abstract
Description
Technical Field
[0001] This invention belongs to the field of industrial control system automation monitoring and industrial process safety technology, specifically relating to a method for controlling state variables in industrial control systems. Background Art
[0002] The long-term safe and stable operation of industrial processes benefits from the development of industrial control security technology and the application of automated monitoring methods. In the context of the new industrial era, a large number of intelligent sensors are networked, and the process data transmitted via network communication may be tampered with externally. Such network attacks targeting the control and monitoring layers of industrial processes directly manipulate physical quantities within the controlled process, thereby causing damage to physical entities. Existing process monitoring systems can effectively detect anomalies in the controlled system, including spontaneous internal faults and external data tampering, enabling online real-time diagnosis and alarms. However, an increasing number of novel external data tampering methods utilize control theory knowledge, employing targeted designs to modify the input and output data of the controlled process. This renders existing process monitoring methods based on residual generation and residual evaluation unable to detect abnormal states, achieving the purpose of covert tampering. These methods cause the actual operating trajectory of system variables to deviate from the expected trajectory, while the automated monitoring mechanism does not issue alarms for this abnormal situation. The resulting failure of safety-critical systems not only affects the production process and reduces product quality but also damages physical equipment, leading to high-risk accidents such as system out of control, hazardous material leaks, and explosions.
[0003] Therefore, it is crucial to understand the design flaws of process monitoring systems and the principles of external data tampering. However, there is currently no covert method for controlling the state variables of industrial control systems, which fails to detect design flaws and correlations with external data in process monitoring systems. This leads to vulnerabilities in the security training of industrial control systems, resulting in a lack of corresponding security protection strategies and increasing the risks of industrial control. Summary of the Invention
[0004] This invention aims to address the problem that existing data-driven industrial control systems lack a state variable control method, which prevents the effective detection of changes in data trajectories, as well as the shortcomings of automated monitoring technology and industrial process fault diagnosis technology.
[0005] A method for controlling state variables in an industrial control system with edge-cloud collaboration is provided. Before controlling the state variables of the online data of the controlled industrial process, the method needs to process the data in the offline stage in advance, and then control the state variables of the online data of the controlled industrial process based on the data processed in the offline stage.
[0006] The process of pre-processing data from the offline phase includes:
[0007] S100. Construct the nominal system and residual generator for the controlled process on a cloud server:
[0008] Step A1: Obtain the state-space model of the controlled industrial process Where u(k) and y(k) are the control input and sensor measurement output of the controlled industrial process, respectively; x(k) is the n-dimensional state variable; p(k) is the process noise; and o(k) is the measurement noise. A, B, C, and D are the system matrix, control matrix, output matrix, and direct transfer matrix in the state equation and output equation, respectively.
[0009] Step A2: Obtain the covariance matrix Q of the process noise term p(k) in the state equation and the covariance matrix R of the sensor measurement noise term o(k) in the output equation through system identification.
[0010] Step A3: Reconstruct the residual generator r of the output variable y according to the type and order of the residual generator used in the process monitoring system. s (k), which is actually a generalized residual vector with a window length of s constructed based on the output variable residual r(k), and the generalized residual sequence r is calculated. s The covariance matrix of (k) is denoted as
[0011] Residual generator Among them, y s (k), u s (k), p s (k), o s (k) is a dataset containing s samples, H u,s H p,s For the generalized input coefficient matrix and the generalized process noise coefficient matrix; v s Describe equivalent vectors that satisfy: v s Γ s =0, where Γ s For the augmented observability matrix;
[0012] S200. Calculate the concealment matrix H on the cloud server. a :
[0013] Step B1: Set the length of the equivalent space to s, and construct the generalized observability matrix.
[0014] Step B2: From matrix Γ s Choose a hidden matrix H in the left null space a =Null(Γ s Null is the operator for finding the left zero of a matrix; the equivalent vector v s Through the hidden matrix Ha Construct from any row;
[0015] S300. Calculate the optimal state estimate under the condition of no anomalies on the cloud server:
[0016] Step C1: Based on the equivalent space length, construct the generalized process noise coefficient matrix H using C and A. p,s Using the generalized input coefficient matrix H of A, B, C, and D u,s ;
[0017] Step C2: Represent the process noise and measurement noise as a composite noise ζ(k), ζ(k) = H p,s p s (k)+o s (k) and its covariance matrix is denoted as Σ ζ Based on the noise covariance matrices Q and R obtained from S100, and calculate...
[0018] Step C3: Collect online input u(k) and output data y(k), and construct an input vector u with a window length of s. s (k), Output vector y s (k); Calculate the generalized output vector under the anomaly-free condition.
[0019] Step C4: Calculate the state estimation projection matrix
[0020] Step C5: Calculate the optimal state estimate in the absence of anomalies using the weighted least squares method.
[0021] The process of regulating state variables of a controlled industrial process based on data processed offline includes the following steps:
[0022] S400: Set the industrial control security drill strategy; if a state offset strategy is adopted, proceed to S500; if a state variable control strategy is adopted, proceed to S600.
[0023] S500, Generate the data sequence a at the edge node that maximizes the offset of the state trajectory. s (k); The specific steps include:
[0024] Step E1: Set the upper limit of the regulation energy value, denoted as M. a ;
[0025] Step E2: Read the concealment matrix H calculated in the offline stage. a and state estimation projection matrix
[0026] Step E3: Calculate the matrix The principal characteristic vector, i.e., the eigenvector γ corresponding to the largest eigenvalue. * (k);
[0027] Step E4: Calculate the optimal sequence of state offsets in M represents the normalized attack vector. a To regulate the upper limit of the energy value, enter S700;
[0028] S600, Generate state variable regulation data sequences on edge nodes:
[0029] Step F1: Set the virtual state trajectory to f(k);
[0030] Step F2: Acquire online control command input u(k) and sensor measurement output data y(k), and construct a stacked control command input vector u with a window length of s. s (k) Stacked sensor measurement output vector y s (k); Calculate the generalized output vector
[0031] Step F3: Generate the state variable regulation data sequence.
[0032] S700, Implement data injection on the terminal acquisition and injection system:
[0033] Step G1: From Extract the subsequence and periodically assign values a(k-s+1), a(k-s+2), ..., a(k) to the subsequence a. s,1 (k), a s,2 (k)…a s,m (k);
[0034] Step G2: Intercept and unpack the sensor data transmitted through the network communication channel;
[0035] Step G3: Subsequence a s,1 (k), a s,2 (k)…a s,m Each element a in (k) i (k) sequentially compares with the measured value y in the i-th sensor channel. i Add (k) together to calculate the altered data y. a,i (k)=y i (k)+a i (k);
[0036] Step G4: Repackage the tampered data and resend it through the network communication channel.
[0037] Furthermore, the generalized process noise figure matrix H mentioned in step C1 p,s and the generalized input coefficient matrix H u,s as follows:
[0038]
[0039]
[0040] Furthermore, the input vector constructed in step C3 Constructed output vector
[0041] Furthermore, the stacking control command input vector constructed in step F2 Constructed stacked sensor measurement output vector
[0042] Furthermore, in step G1, a(k-s+1), a(k-s+2)...a(k) are periodically assigned to the subsequence a. s,1 (k), a s,2 (k)…a s,m The process of (k) is as follows:
[0043] Assign values to a(k-s+1), a(k-s+2), ..., a(k-s+m) sequentially. s,1 (k), a s,2 (k)…a s,m (k), assign values of a(k-s+m+1), a(k-s+m+2), ..., a(k-s+2m) to a in sequence. s,1 (k), a s,2 (k)…a s,m (k), following this pattern until a(k-m+1), a(k-m+2)...a(k) are sequentially assigned to a. s,1 (k), a s,2 (k)…a s,m (k);
[0044] subsequence a s,i (k)∈R L×1 , Where m is the dimension of the output.
[0045] A method for controlling state variables in an industrial control system with edge-cloud collaboration is provided. Before controlling the state variables of the online data of the controlled industrial process, the method needs to process the data in the offline stage in advance, and then control the state variables of the online data of the controlled industrial process based on the data processed in the offline stage.
[0046] The process of pre-processing data from the offline phase includes:
[0047] S100. Construct the nominal system and residual generator for the controlled process:
[0048] Step A1: Obtain the state-space model of the controlled industrial process Where u(k) and y(k) are the control input and sensor measurement output of the controlled industrial process, respectively; x(k) is the n-dimensional state variable; p(k) is the process noise; and o(k) is the measurement noise. A, B, C, and D are the system matrix, control matrix, output matrix, and direct transfer matrix in the state equation and output equation, respectively.
[0049] Step A3: Reconstruct the residual generator r of the output variable y according to the type and order of the residual generator used in the process monitoring system. s (k), which is actually a generalized residual vector with a window length of s constructed based on the output variable residual r(k), and the generalized residual sequence r is calculated. s The covariance matrix of (k) is denoted as
[0050] Residual generator Among them, y s (k), u s (k), p s (k), o s (k) is a dataset containing s samples, H u,s H p,s For the generalized input coefficient matrix and the generalized process noise coefficient matrix; v s Describe equivalent vectors that satisfy: v s Γ s =0, where Γ s For the augmented observability matrix;
[0051] S200. Calculate the concealment matrix H on the cloud server. a :
[0052] Step B1: Set the length of the equivalent space to s, and construct the generalized observability matrix.
[0053] Step B2: From matrix Γ s Choose a hidden matrix H in the left null space a=Null(Γ s Null is the operator for finding the left zero of a matrix; the equivalent vector v s Through the hidden matrix H a Construct from any row;
[0054] S300. Calculate the optimal state estimate under the condition of no anomalies on the cloud server:
[0055] Step C1: Based on the equivalent space length, construct the generalized process noise coefficient matrix H using C and A. p,s Using the generalized input coefficient matrix H of A, B, C, and D u,s ;
[0056] Step C2: Represent the process noise and measurement noise as a composite noise ζ(k), ζ(k) = H p,s p s (k)+o s (k) and its covariance matrix is denoted as Σ ζ ; in, It is r s The covariance matrix of (k); ν s It is the equivalent vector constructed in step B2;
[0057] Step C3: Collect online input u(k) and output data y(k), and construct an input vector u with a window length of s. s (k), Output vector y s (k); Calculate the generalized output vector under the anomaly-free condition.
[0058] Step C4: Calculate the state estimation projection matrix
[0059] Step C5: Calculate the optimal state estimate in the absence of anomalies using the weighted least squares method.
[0060] The process of regulating state variables of a controlled industrial process based on data processed offline includes the following steps:
[0061] S400: Set the industrial control security drill strategy; if a state offset strategy is adopted, proceed to S500; if a state variable control strategy is adopted, proceed to S600.
[0062] S500, Generate the data sequence a at the edge node that maximizes the offset of the state trajectory. s (k); The specific steps include:
[0063] Step E1: Set the upper limit of the regulation energy value, denoted as M. a ;
[0064] Step E2: Read the concealment matrix H calculated in the offline stage. a and state estimation projection matrix
[0065] Step E3: Calculate the matrix The principal characteristic vector, i.e., the eigenvector γ corresponding to the largest eigenvalue. * (k);
[0066] Step E4: Calculate the optimal sequence of state offsets in M represents the normalized attack vector. a To regulate the upper limit of the energy value, enter S700;
[0067] S600, Generate state variable regulation data sequences on edge nodes:
[0068] Step F1: Set the virtual state trajectory to f(k);
[0069] Step F2: Acquire online control command input u(k) and sensor measurement output data y(k), and construct a stacked control command input vector u with a window length of s. s (k) Stacked sensor measurement output vector y s (k)
[0070]
[0071] Calculate the generalized output vector
[0072] Step F3: Generate the state variable regulation data sequence.
[0073] S700, Implement data injection on the terminal acquisition and injection system:
[0074] Step G1: From Extract the subsequence and periodically assign values a(k-s+1), a(k-s+2), ..., a(k) to the subsequence a. s,1 (k), a s,2 (k)…a s,m (k);
[0075] Step G2: Intercept and unpack the sensor data transmitted through the network communication channel;
[0076] Step G3: Subsequence a s,1 (k), a s,2 (k)…a s,mEach element a in (k) i (k) sequentially compares with the measured value y in the i-th sensor channel. i Add (k) together to calculate the altered data y. a,i (k)=y i (k)+a i (k);
[0077] Step G4: Repackage the tampered data and resend it through the network communication channel.
[0078] Furthermore, the generalized process noise figure matrix H mentioned in step C1 p,s and the generalized input coefficient matrix H u,s as follows:
[0079]
[0080]
[0081] Furthermore, the input vector constructed in step C3 Constructed output vector
[0082] Furthermore, the stacking control command input vector constructed in step F2 Constructed stacked sensor measurement output vector
[0083] Furthermore, in step G1, a(k-s+1), a(k-s+2)...a(k) are periodically assigned to the subsequence a. s,1 (k), a s,2 (k)…a s,m The process of (k) is as follows:
[0084] Assign values to a(k-s+1), a(k-s+2), ..., a(k-s+m) sequentially. s,1 (k), a s,2 (k)…a s,m (k), assign values of a(k-s+m+1), a(k-s+m+2), ..., a(k-s+2m) to a in sequence. s,1 (k), a s,2 (k)…a s,m (k), following this pattern until a(k-m+1), a(k-m+2)...a(k) are sequentially assigned to a. s,1 (k), a s,2 (k)…a s,m (k);
[0085] subsequence a s,i (k)∈RL×1 , Where m is the dimension of the output.
[0086] This invention has the following advantages:
[0087] 1. The method provided by this invention can make the state of the controlled system deviate from the ideal state trajectory to the greatest extent possible under finite energy constraints.
[0088] 2. This invention provides a state variable control method that provides a powerful adversary for attack and defense drills of industrial control systems, thereby solving the problem of not being able to effectively detect changes in data trajectories. Furthermore, it can keep existing anomaly detection mechanisms hidden while controlling the system state, making it impossible for the process monitoring system to detect anomalies.
[0089] 3. The apparatus required to deploy the method of the present invention has independently designed storage, computing and communication functions, and the edge-cloud subsystems cooperate with each other, which can easily meet the performance requirements for real-time control of the state of the dynamically controlled system. Attached Figure Description
[0090] Figure 1 This is a flowchart of the method proposed in the specific implementation.
[0091] Figure 2 This is a functional structure diagram of the apparatus required to deploy the method of the present invention.
[0092] Figure 3 It describes the changes in the system state before and after injecting the optimal data to tamper with the sequence.
[0093] Figure 4 It describes the changes in the system state before and after the sequence is tampered with by injecting suboptimal data. Detailed Implementation
[0094] This invention proposes a method for adjusting state variables in industrial control systems and a functional structure for deploying and implementing this method, aiming to improve the shortcomings of existing technologies in industrial control system security training. This method can be used for attack and defense exercises in a digital test range environment, helping to enhance the security capabilities of industrial control systems. Addressing the deficiencies of existing data-driven automated monitoring technologies and industrial process fault diagnosis technologies for industrial control systems, this invention can maximize the deviation of the controlled system's state from its ideal trajectory under limited energy constraints, or force the controlled system's state to change according to a preset virtual trajectory, providing a powerful adversarial training scenario for industrial control system attack and defense exercises. The deployment device provided by this invention consists of three parts: a terminal acquisition and injection system, an edge computing node system, and a cloud server. The real-time control of industrial system state variables is achieved through the cooperation of these three components.
[0095] Specific implementation method one: Combination and Figure 1 and Figure 2 This implementation method is described below.
[0096] This embodiment discloses a method and apparatus for controlling state variables in an industrial control system with edge-cloud collaboration. It provides a method for controlling state variables in an industrial control system that, under limited energy constraints, maximizes the deviation of the controlled system's state from its ideal trajectory, or forces the controlled system's state to change according to a preset virtual trajectory, while preventing the original process monitoring system from generating alarms. It also provides an apparatus for deploying and implementing this method, comprising three parts: a terminal acquisition and injection system, an edge computing node, and a cloud server. To efficiently and rationally allocate functions and reduce hardware requirements, the three systems are functionally divided into a storage module (or cache module), a computing module, and a communication module. This is mainly achieved through the following technical solutions:
[0097] Terminal data acquisition and injection system: Primarily used for acquiring online data and injecting state-controlled data sequences. Specifically, the cache module of the terminal data acquisition and injection system is used to temporarily store data acquired from the sensor network and edge node data of the industrial control system. Online data includes control input data of the controlled industrial process and sensor network data;
[0098] The first communication module of the terminal acquisition and injection system is used to send raw data to edge nodes and receive data that has been tampered with by edge nodes; the raw data is the online data before it was sent to the edge nodes (the online data before it was tampered with);
[0099] The second communication module of the terminal acquisition and injection system is used to acquire online data and send tampered data to the sensor network.
[0100] Edge nodes: Primarily used for real-time data processing and small-scale real-time computing. Specifically,
[0101] The communication module of the edge node is used to receive data from the cloud server and data sent by the terminal acquisition and injection system. It is also used to send data calculated by the computing module (which is actually the tampered data) to the terminal acquisition and injection system.
[0102] Edge node storage module: used to store data collected and injected by the terminal and sent by the system, as well as data sent by the cloud server;
[0103] The edge node's computation module is used to calculate the optimal tampered data sequence for state offset and the state control data sequence.
[0104] Cloud servers are primarily used to store historical data and system models, as well as for offline calculations of complex formulas and large matrices. Specifically, the storage module of the cloud server is mainly responsible for storing the nominal model of the controlled industrial process, the residual generator, and newly acquired data; historical data consists of pre-acquired offline data, including control input data and sensor network data of the controlled industrial process.
[0105] The cloud server's computing module is mainly used for offline calculation of the concealment matrix, composite noise covariance matrix, and state estimation projection matrix, and online calculation of the principal eigenvectors.
[0106] The cloud server's communication module is mainly used to send state variable control commands and parameters, offline calculated matrices and online calculated vectors, and to receive newly collected process data.
[0107] Algorithms running on cloud servers and edge nodes work together to achieve real-time control of state variables in industrial systems. A flowchart illustrating the specific implementation method is attached. Figure 1 As shown, the functional structure diagram of the apparatus required to deploy the method of the present invention is as follows. Figure 2 As shown.
[0108] The method for controlling state variables of an industrial control system with edge-cloud collaboration described in this invention is mainly achieved through the following steps. It should be noted that the first to third steps belong to the offline design stage, and the fourth to seventh steps belong to the online deployment stage.
[0109] Offline design phase
[0110] The first step is to build the nominal system and residual generator for the controlled process on a cloud server. Specific steps include:
[0111] Step A1: Obtain the state-space model of the controlled industrial process
[0112]
[0113] Where u(k)∈R l y(k)∈R m These represent the control input and sensor measurement output of the controlled industrial process, respectively, where x(k)∈R n Let p(k) be an n-dimensional state variable, ∈ R. n For process noise, o(k)∈R m For noise measurement. A, B, C, and D are the system matrix, control matrix, output matrix, and direct transfer matrix in the state equation and output equation, respectively.
[0114] Step A2: Obtain the covariance matrix Q of the process noise term p(k) in the state equation and the covariance matrix R of the sensor measurement noise term o(k) in the output equation through system identification.
[0115] The process noise p(k) and measurement noise o(k) are independent Gaussian white noises, and satisfy p(k)~N(0,Q) and o(k)~N(0,R), where the covariance matrix Q≥0 and R≥0.
[0116] If information regarding process noise and sensor measurement noise is incomplete, this step can be skipped.
[0117] Step A3: Based on the process monitoring system (a system used to monitor the controlled industrial process, such as...) Figure 2 The residual generator r used (as shown) is of the type and order of the residual generator used to reconstruct the output variable y. s (k), which is actually a generalized residual vector with a window length of s constructed based on the output variable residual r(k), and the generalized residual sequence r is calculated. s The covariance matrix of (k) is denoted as
[0118]
[0119] Residual generator r s (k):
[0120]
[0121] Among them, y s (k), u s (k), p s (k), o s (k) is a dataset containing s samples, H u,s H p,s These are the generalized input coefficient matrix and the generalized process noise coefficient matrix;
[0122] v s Describe equivalent vectors that satisfy: v s Γ s =0, denoted as Among them, Γ s For the augmented observability matrix, Indicates Γ s The left null space.
[0123] The second step is to calculate the concealment matrix H on the cloud server. a :
[0124] Step B1: Construct the generalized observability matrix Γ sThe length of the parity space is set to s (the parity space is a vector space composed of feature vectors under different fault modes of the system, used to represent all possible fault states);
[0125]
[0126] Step B2: From matrix Γ s Choose a hidden matrix H in the left null space a =Null(Γ s Null is the operator for finding the left zero of a matrix; the equivalent vector v s Through the hidden matrix H a Construct any row of the given data.
[0127] Step 3: Calculate the optimal state estimate under the no-anomaly scenario on the cloud server:
[0128] Step C1: Construct the generalized process noise coefficient matrix H p,s and the generalized input coefficient matrix H u,s :
[0129]
[0130] Step C2: To simplify the notation, process noise and measurement noise are considered together and represented by composite noise ζ(k), where ζ(k) = H p,s p s (k)+o s (k) and its covariance matrix is denoted as Σ ζ Read the noise covariance matrices Q and R obtained in the first step, and calculate...
[0131] If information about the noise covariance is incomplete, i.e., Q or R is unknown, then in, It is r s The covariance matrix of (k); ν s This is the equivalent vector constructed in step B2. In fact, even with complete information, this approach can still be used. of.
[0132] To standardize the use of process data, record It is a data vector, and the following notation is introduced:
[0133]
[0134] In the formula: s is the window length for fault detection, N is the size of the dataset when collecting data, both of which are integers, ω(k) can be x(k), u(k), y(k) and noise p(k) and o(k), all of which have similar forms, and ξ is the corresponding data dimension; Represents the space of real numbers.
[0135] Step C3: Collect online input u(k) and output data y(k), and construct input and output vectors with a window length of s:
[0136]
[0137] Calculate the generalized output vector in the absence of anomalies.
[0138] Step C4: Calculate the state estimation projection matrix
[0139] Step C5: Calculate the optimal state estimate in the absence of anomalies using the weighted least squares method.
[0140] Online deployment phase
[0141] Step 4: Set the industrial control system security drill strategy. If a state offset strategy is used, proceed to step 5; if a state variable control strategy is used, proceed to step 6.
[0142] Step 5: Generate the data sequence that maximizes the state trajectory offset at the edge nodes (i.e., the optimal state offset sequence). s (k). Specific steps include:
[0143] Step E1: Set the upper limit of the regulation energy value, denoted as M. a .
[0144] Step E2: Read the concealment matrix H calculated in the offline stage. a and state estimation projection matrix
[0145] Step E3: Calculate the matrix The principal characteristic vector, i.e., the eigenvector γ corresponding to the largest eigenvalue. * (k).
[0146] Step E4: Calculate the optimal sequence of state offsets in M represents the normalized attack vector. a To regulate the upper limit of the energy value, proceed to step seven.
[0147] Step 6: Generate state variable regulation data sequences at edge nodes:
[0148] Step F1: Set the virtual state trajectory as f(k).
[0149] Step F2: Acquire online control command input u(k) and sensor measurement output data y(k), and construct a stacked control command input vector u with a window length of s. s (k) Stacked sensor measurement output vector y s (k)
[0150]
[0151] Calculate the generalized output vector
[0152] Step F3: Generate the state variable regulation data sequence.
[0153] Step 7: Implement data injection on the terminal acquisition and injection system:
[0154] Step G1: From Extract the subsequence and periodically assign values a(k-s+1), a(k-s+2), ..., a(k) to the subsequence a. s,1 (k), a s,2 (k)…a s,m (k), that is, a(k-s+1), a(k-s+2)...a(k-s+m) are sequentially assigned to a. s,1 (k), a s,2 (k)…a s,m (k), assign values of a(k-s+m+1), a(k-s+m+2), ..., a(k-s+2m) to a in sequence. s,1 (k), a s,2 (k)…a s,m (k), following this pattern until a(k-m+1), a(k-m+2)...a(k) are sequentially assigned to a. s,1 (k), a s,2 (k)…a s,m (k), subsequence a s,i (k)∈R L×1 , Where m is the dimension of the output.
[0155] Step G2: Intercept and unpack the sensor transmission data in the network communication channel.
[0156] Step G3: Subsequence a s,1 (k), a s,2 (k)…a s,m Each element a in (k)i (k) sequentially compares with the measured value y in the i-th sensor channel. i Add (k) together to calculate the altered data y. a,i (k)=y i (k)+a i (k).
[0157] Step G4: Repackage the tampered data and resend it through the network communication channel.
[0158] Example
[0159] The controlled industrial system in this embodiment is a liquid level control system, prototyped as the DTS200 experimental system, representing a typical regulation problem in process industries and process control. The system's state variable x represents the liquid level heights of three containers (water tanks), which are expected to be maintained at 45cm, 15cm, and 30cm via controller adjustment. The system's control input variable u is the water injection flow rate. Each container is equipped with a pressure sensor at its bottom, which can calculate the corresponding liquid level y in real time.
[0160] The data measured by the pressure sensor is transmitted to the dSPACE control system simulation platform via a data acquisition card, and then interacts with the PC to achieve terminal data acquisition and data injection on the PC. The sampling frequency is set to 0.5Hz. 2000 (4000 seconds) sample data points under steady-state operation are collected for the offline design phase. During the online deployment phase, 3000 (6000 seconds) sample data points are generated, and state variable control experiments are conducted. A state shift strategy is used for the samples from the 2000th to the 5300th second, which can be considered a special case of state variable control. In the following steps, we focus on the dimension of the calculated matrices and vectors, as they directly reflect the feasibility of the method and the computational and storage requirements to be considered during deployment.
[0161] Offline design phase
[0162] The first step is to build the nominal system and residual generator of the controlled process on the cloud server.
[0163] Step A1: Identify the system and obtain the system matrix
[0164]
[0165] D = 0.
[0166] Step A2: Information about the noise covariance is incomplete, so this step is skipped.
[0167] Step A3: Understand that the process monitoring system uses an anomaly detection algorithm based on equivalence space to calculate the covariance matrix of the generalized residual sequence, which is a 12-row, 12-column matrix.
[0168] The second step is to calculate the concealment matrix on the cloud server.
[0169] Step B1: Set the equivalent space length to 4. Construct the generalized observability matrix Γ. s It is a 12-row, 3-column matrix.
[0170] Step B2: From matrix Γ s We select a hidden matrix in the left null space, which is a 12-row, 12-column matrix.
[0171] The third step is to calculate the optimal state estimate under the condition of no anomalies on the cloud server.
[0172] Step C1: Construct the generalized process noise coefficient matrix H p,s , is a 12x12 matrix; and the generalized input coefficient matrix H u,s It is a matrix with 12 rows and 8 columns.
[0173] Step C2: Select the equivalent vector based on the concealment matrix.
[0174] ν s =10 4 *
[0175] [-2.17 -3.04 4.28 -85.35 -83.45 168.84 2.17 3.04 -4.28 -0.06 -0.10 0.12], and estimate the covariance matrix Σ of the composite noise term. ζ It is a 12-row, 12-column matrix.
[0176] Step C3: Collect online input and output data u(k) and y(k), and construct input and output vectors u with a window length of s. s (k), y s (k), and calculate the generalized output vector in the absence of anomalies.
[0177] Step C4: Calculate the state estimation projection matrix It is a 3x12 matrix.
[0178] Step C5: Calculate the state estimate as needed.
[0179] Online deployment phase
[0180] Step 4: Adopt the state shift strategy (the state shift strategy can also be regarded as a special case of state variable control).
[0181] Step 5: Generate the data sequence that causes the state trajectory to deviate the most at the edge nodes.
[0182] Step E1: Set the upper limit M of the regulation energy value a =10.
[0183] Step E2: Read the concealment matrix and state estimation projection matrix calculated in the offline stage.
[0184] Step E3: Calculate the principal characteristic vector γ * (k) is a 12-dimensional column vector.
[0185] Step E4: Calculate the optimal state offset sequence a s (k):
[0186] a s (k)=[0.35 0.09 0.38 0.40 0.15 0.13 0.35 0.09 0.37 0.44 0.21 -0.06]
[0187] Then proceed to step seven.
[0188] Step 7: Implement data injection on the terminal acquisition and injection system.
[0189] Step G1: From a s Extracting subsequences from (k):
[0190] a s,1 (k) = [0.35 0.40 0.35 0.44]
[0191] a s,2 (k) = [0.09 0.15 0.09 0.21]
[0192] a s,3 (k) = [0.38 0.13 0.37 -0.06] Step G2: Intercept and unpack the sensor transmission data in the network communication channel.
[0193] Step G3: Calculate the tampered data.
[0194] Step G4: Repackage the tampered data and resend it through the network communication channel.
[0195] Following the steps outlined above, the optimal data sequence is injected using the method of this invention. The system state changes are shown in the appendix. Figure 3 As shown in the figure. It can be seen that for the sample data under the state shift strategy, all three liquid levels decreased significantly, achieving the goal of causing the system state to deviate from the expected trajectory. In contrast, the attached... Figure 3 This demonstrates the system state changes when an arbitrary, unoptimized data sequence is injected instead of the method described in this invention: although the liquid level in the controlled system changes, the system state does not significantly deviate from the desired trajectory. (Comparison with attached...) Figure 3 and attached Figure 4 The curves illustrate the effectiveness and superiority of the method of the present invention.
[0196] The above examples of the present invention are merely illustrative of the computational model and process of the present invention, and are not intended to limit the implementation of the present invention. Those skilled in the art will recognize that other variations or modifications can be made based on the above description. It is impossible to exhaustively list all possible implementations here. Any obvious variations or modifications derived from the technical solutions of the present invention are still within the scope of protection of the present invention.
Claims
1. A method for controlling state variables in an industrial control system with edge-cloud collaboration, characterized in that, Before performing state variable regulation on the online data of the controlled industrial process, the method needs to process the offline data in advance, and then perform state variable regulation on the online data of the controlled industrial process based on the processed offline data. The process of pre-processing data from the offline phase includes: S100. Construct the nominal system and residual generator for the controlled process on a cloud server: Step A1: Obtain the state-space model of the controlled industrial process Where u(k) and y(k) are the control input and sensor measurement output of the controlled industrial process, respectively; x(k) is the n-dimensional state variable; p(k) is the process noise; and o(k) is the measurement noise. A, B, C, and D are the system matrix, control matrix, output matrix, and direct transfer matrix in the state equation and output equation, respectively. Step A2: Obtain the covariance matrix Q of the process noise term p(k) in the state equation and the covariance matrix R of the sensor measurement noise term o(k) in the output equation through system identification. Step A3: Reconstruct the residual generator r of the output variable y according to the type and order of the residual generator used in the process monitoring system. s (k), which is actually a generalized residual vector with a window length of s constructed based on the output variable residual r(k), and the generalized residual sequence r is calculated. s The covariance matrix of (k) is denoted as Residual generator Among them, y s (k), u s (k), p s (k), o s (k) is a dataset containing s samples, H u,s 、H p,s For the generalized input coefficient matrix and the generalized process noise coefficient matrix; v s Describe equivalent vectors that satisfy: v s Γ s =0, where Γ s For the augmented observability matrix; S200. Calculate the concealment matrix H on the cloud server. a : Step B1: Set the length of the equivalent space to s, and construct the generalized observability matrix. Step B2: From matrix Γ s Choose a hidden matrix H in the left null space a =Null(Γ) s Null is the operator for finding the left zero of a matrix; the equivalent vector v s Through the hidden matrix H a Construct from any row; S300. Calculate the optimal state estimate under the condition of no anomalies on the cloud server: Step C1: Based on the equivalent space length, construct the generalized process noise coefficient matrix H using C and A. p,s Using the generalized input coefficient matrix H of A, B, C, and D u,s ; Step C2: Represent the process noise and measurement noise as a composite noise ζ(k), ζ(k) = H p,s p s (k)+o s (k) and its covariance matrix is denoted as Σ ζ Based on the noise covariance matrices Q and R obtained from S100, and calculate... Step C3: Collect online input u(k) and output data y(k), and construct an input vector u with a window length of s. s (k), Output vector y s (k); Calculate the generalized output vector under the anomaly-free condition. Step C4: Calculate the state estimation projection matrix Step C5: Calculate the optimal state estimate in the absence of anomalies using the weighted least squares method. The process of regulating state variables of a controlled industrial process based on data processed offline includes the following steps: S400: Set the industrial control security drill strategy; if a state offset strategy is adopted, proceed to S500; if a state variable control strategy is adopted, proceed to S600. S500, Generate the data sequence a at the edge node that maximizes the offset of the state trajectory. s (k); The specific steps include: Step E1: Set the upper limit of the regulation energy value, denoted as M. a ; Step E2: Read the concealment matrix H calculated in the offline stage. a and state estimation projection matrix Step E3: Calculate the matrix The principal characteristic vector, i.e., the eigenvector γ corresponding to the largest eigenvalue. * (k); Step E4: Calculate the optimal sequence of state offsets in M represents the normalized attack vector. a To regulate the upper limit of the energy value, enter S700; S600, Generate state variable regulation data sequences on edge nodes: Step F1: Set the virtual state trajectory to f(k); Step F2: Acquire online control command input u(k) and sensor measurement output data y(k), and construct a stacked control command input vector u with a window length of s. s (k) Stacked sensor measurement output vector y s (k); Calculate the generalized output vector Step F3: Generate the state variable regulation data sequence. S700, Implement data injection on the terminal acquisition and injection system: Step G1: From Extract the subsequence and periodically assign values a(k-s+1), a(k-s+2), ..., a(k) to the subsequence a. s,1 (k), a s,2 (k)…a s,m (k); Step G2: Intercept and unpack the sensor data transmitted through the network communication channel; Step G3: Subsequence a s,1 (k), a s,2 (k)…a s,m Each element a in (k) i (k) sequentially compares with the measured value y in the i-th sensor channel. i Add (k) together to calculate the altered data y. a,i (k)=y i (k)+a i (k); Step G4: Repackage the tampered data and resend it through the network communication channel.
2. The method for controlling state variables in an industrial control system with edge-cloud collaboration according to claim 1, characterized in that, The generalized process noise figure matrix H mentioned in step C1 p,s and the generalized input coefficient matrix H u,s as follows:
3. The method for controlling state variables in an industrial control system with edge-cloud collaboration according to claim 1, characterized in that, The input vector constructed in step C3 Constructed output vector 4. The method for controlling state variables in an industrial control system with edge-cloud collaboration according to claim 1, characterized in that, The stacking control command input vector constructed in step F2 Constructed stacked sensor measurement output vector 5. A method for controlling state variables in an industrial control system with edge-cloud collaboration according to any one of claims 1 to 4, characterized in that, In step G1, a(k-s+1), a(k-s+2), ..., a(k) are periodically assigned to the subsequence a. s,1 (k), a s,2 (k)…a s,m The process of (k) is as follows: Assign values to a(k-s+1), a(k-s+2), ..., a(k-s+m) sequentially. s,1 (k), a s,2 (k)…a s,m (k), assign values of a(k-s+m+1), a(k-s+m+2), ..., a(k-s+2m) to a in sequence. s,1 (k), a s,2 (k)…a s,m (k), following this pattern until a(k-m+1), a(k-m+2)...a(k) are sequentially assigned to a. s,1 (k), a s,2 (k)…a s,m (k); subsequence Where m is the dimension of the output.
6. A method for controlling state variables in an industrial control system with edge-cloud collaboration, characterized in that, Before performing state variable regulation on the online data of the controlled industrial process, the method needs to process the offline data in advance, and then perform state variable regulation on the online data of the controlled industrial process based on the processed offline data. The process of pre-processing data from the offline phase includes: S100. Construct the nominal system and residual generator for the controlled process: Step A1: Obtain the state-space model of the controlled industrial process Where u(k) and y(k) are the control input and sensor measurement output of the controlled industrial process, respectively; x(k) is the n-dimensional state variable; p(k) is the process noise; and o(k) is the measurement noise. A, B, C, and D are the system matrix, control matrix, output matrix, and direct transfer matrix in the state equation and output equation, respectively. Step A3: Reconstruct the residual generator r of the output variable y according to the type and order of the residual generator used in the process monitoring system. s (k), which is actually a generalized residual vector with a window length of s constructed based on the output variable residual r(k), and the generalized residual sequence r is calculated. s The covariance matrix of (k) is denoted as Residual generator Among them, y s (k), u s (k), p s (k), o s (k) is a dataset containing s samples, H u,s 、H p,s For the generalized input coefficient matrix and the generalized process noise coefficient matrix; v s Describe equivalent vectors that satisfy: v s Γ s =0, where Γ s For the augmented observability matrix; S200. Calculate the concealment matrix H on the cloud server. a : Step B1: Set the length of the equivalent space to s, and construct the generalized observability matrix. Step B2: From matrix Γ s Choose a hidden matrix H in the left null space a =Null(Γ) s Null is the operator for finding the left zero of a matrix; the equivalent vector v s Through the hidden matrix H a Construct from any row; S300. Calculate the optimal state estimate under the condition of no anomalies on the cloud server: Step C1: Based on the equivalent space length, construct the generalized process noise coefficient matrix H using C and A. p,s Using the generalized input coefficient matrix H of A, B, C, and D u,s ; Step C2: Represent the process noise and measurement noise as a composite noise ζ(k), ζ(k) = H p,s p s (k)+o s (k) and its covariance matrix is denoted as Σ ζ ; Where, Σ rs It is r s The covariance matrix of (k); ν s It is the equivalent vector constructed in step B2; Step C3: Collect online input u(k) and output data y(k), and construct an input vector u with a window length of s. s (k), Output vector y s (k); Calculate the generalized output vector under the anomaly-free condition. Step C4: Calculate the state estimation projection matrix Step C5: Calculate the optimal state estimate in the absence of anomalies using the weighted least squares method. The process of regulating state variables of a controlled industrial process based on data processed offline includes the following steps: S400: Set the industrial control security drill strategy; if a state offset strategy is adopted, proceed to S500; if a state variable control strategy is adopted, proceed to S600. S500, Generate the data sequence a at the edge node that maximizes the offset of the state trajectory. s (k); The specific steps include: Step E1: Set the upper limit of the regulation energy value, denoted as M. a ; Step E2: Read the concealment matrix H calculated in the offline stage. a and state estimation projection matrix Step E3: Calculate the matrix The principal characteristic vector, i.e., the eigenvector γ corresponding to the largest eigenvalue. * (k); Step E4: Calculate the optimal sequence of state offsets in M represents the normalized attack vector. a To regulate the upper limit of the energy value, enter S700; S600, Generate state variable regulation data sequences on edge nodes: Step F1: Set the virtual state trajectory to f(k); Step F2: Acquire online control command input u(k) and sensor measurement output data y(k), and construct a stacked control command input vector u with a window length of s. s (k) Stacked sensor measurement output vector y s (k) Calculate the generalized output vector Step F3: Generate the state variable regulation data sequence. S700, Implement data injection on the terminal acquisition and injection system: Step G1: From Extract the subsequence and periodically assign values a(k-s+1), a(k-s+2), ..., a(k) to the subsequence a. s,1 (k), a s,2 (k)…a s,m (k); Step G2: Intercept and unpack the sensor data transmitted through the network communication channel; Step G3: Subsequence a s,1 (k), a s,2 (k)…a s,m Each element a in (k) i (k) sequentially compares with the measured value y in the i-th sensor channel. i Add (k) together to calculate the altered data y. a,i (k)=y i (k)+a i (k); Step G4: Repackage the tampered data and resend it through the network communication channel.
7. The method for controlling state variables in an industrial control system with edge-cloud collaboration according to claim 6, characterized in that, The generalized process noise figure matrix H mentioned in step C1 p,s and the generalized input coefficient matrix H u,s as follows:
8. The method for controlling state variables in an industrial control system with edge-cloud collaboration according to claim 6, characterized in that, The input vector constructed in step C3 Constructed output vector 9. The method for controlling state variables in an industrial control system with edge-cloud collaboration according to claim 6, characterized in that, The stacking control command input vector constructed in step F2 Constructed stacked sensor measurement output vector 10. A method for controlling state variables in an industrial control system with edge-cloud collaboration according to any one of claims 6 to 9, characterized in that, In step G1, a(k-s+1), a(k-s+2), ..., a(k) are periodically assigned to the subsequence a. s,1 (k), a s,2 (k)…a s,m The process of (k) is as follows: Assign values to a(k-s+1), a(k-s+2), ..., a(k-s+m) sequentially. s,1 (k), a s,2 (k)…a s,m (k), assign values of a(k-s+m+1), a(k-s+m+2), ..., a(k-s+2m) to a in sequence. s,1 (k), a s,2 (k)…a s,m (k), following this pattern until a(k-m+1), a(k-m+2)...a(k) are sequentially assigned to a. s,1 (k), a s,2 (k)…a s,m (k); subsequence a s,i (k)∈R L×1 , Where m is the dimension of the output.
Citation Information
Patent Citations
Cloud network end cooperative defense method and system based on end-side edge computing
CN112769796A
Flow battery operation and maintenance system and method based on cloud digital twinning
CN118101732A