Apparatus and method for testing a process

The method assesses the robustness of networked control systems to latency by determining the maximum set of consecutive missing control inputs a system can tolerate, ensuring stability and performance.

DE102024204801B3Active Publication Date: 2025-06-12CARNEGIE MELLON UNIV +1
View PDF 0 Cites 0 Cited by

Patent Information

Application Number
DE102024204801
Authority / Receiving Office
DE · DE
Patent Type
Patents
Current Assignee / Owner
Filing Date
2024-05-24
Publication Date
2025-06-12
Estimated Expiration
2044-05-24

AI Technical Summary

Technical Problem

Latency in networked control systems can destabilize and degrade the performance of control loops, as it introduces delays between the controller and the controlled system, which can vary over time.

Method used

A method for testing a process by determining successive values of a state variable without control input, until a quadratic Lyapunov function reaches a predetermined threshold, to assess the process's robustness to missing control inputs.

Benefits of technology

This method allows for the determination of a process's robustness to latency and missing control inputs, ensuring stability and performance by identifying the maximum set of consecutive missing values the system can tolerate.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure 00000000_0000_ABST
    Figure 00000000_0000_ABST
Patent Text Reader

Abstract

An apparatus and method for testing a process, wherein a state variable of the process is controllable with a control input from a controller, the method comprising determining (304) successive values ​​of the state variable without control input, starting from an initial value of the state variable, and a set of successive values ​​of the state variable that can be calculated until the quadratic Lyapunov function for the value of the state variable reaches a predetermined threshold, and determining (306) that the process is robust to the set of successive values ​​without control input.
Need to check novelty before this filing date? Find Prior Art

Description

BackgroundThe invention relates to an apparatus and a method for testing a process.In a networked control system, a process involving a controlled system is controlled in a closed loop from a controller over a communication network from a remote location. A major challenge for this type of control system is latency, i.e., delay between control and controlled system. Latency may vary with time. This delay can actually destabilize and degrade the performance of the control loop.Disclosure of the InventionA method for testing a process, wherein a state variable of the process is controllable with a control input from a controller, the method comprising determining consecutive values of the state variable without control input based on an initial value of the state variable and an amount of the consecutive values of the state variable that can be calculated until the quadratic Ljapunow function for the value of the state variable reaches a predetermined threshold, and determining that the process is robust to the amount of consecutive values without control input.The method may include determining an array of sets of consecutive values of the state variables without control input until the quadratic Ljapunow function for the value of the state variable reaches the predetermined threshold based on different initial states of the state variables, and determining that the process is robust to the sets of consecutive values without control input.The method may include leading the process with control input to the initial value of the state variable.The method may include determining the values of the state variables with the process, wherein the process is executed on a computer controlled machine.The method may comprise receiving the control input from a remote controller, determining the state variables with the process, and activating a local controller to control the process upon detection that the maximum number of consecutive values of the control input are missing.An apparatus for testing a process is configured to perform the method.A computer program may be provided, the computer program comprising computer readable instructions which, when executed by a computer, cause the computer to carry out the method.Further examples are evident from the following description and the drawing. In the drawing: FIG. 1 schematically shows a communication network, FIG. 2 shows a flow chart comprising steps of a method for controlling a process with a controller depending on a state variable of the process, FIG. 3 shows a flow chart with steps of a method for texting the process, FIG. 4 shows an example system executing the process, FIG. 5 shows an exemplary behavior of a quadratic Ljapunow function.FIG. 1 schematically shows a communication network 100.The communication network 100 includes a first device 102 and a second device 104.The communication network 100 connects the first device 102 and the second device 104.The communication network 100 may include one or more intermediate stations, e.g., switches, between the first device 102 and the second device 104.The first device 102 is a local device with respect to at least one sensor that monitors the process 110 and with respect to at least one actuator that acts in the process 110. Local in this context means that the first device 102 has direct access to the at least one sensor and the at least one actuator. Direct access may mean that a delay in access is negligible compared to a delay in the communication network 100.According to an example, a process 110 is performed on the first device 102, and a controller 112 for controlling the process 110 is performed on the second device 104.The process 110 controls a system on a local device, e.g., the first device 102. The local device performs input and / or output operations. The local device reads, for example, inputs from sensors for monitoring the system or an environment of the system. The local device controls, for example, actuators for controlling the system. The system may be an industrial machine, a software-defined vehicle, an Internet of Things, loT, or smart IoT, IIoT device.The process 110 includes, for example, controlling a computer-controlled machine, e.g., a software-defined vehicle. The controller 112 may be an edge device or a cloud-based controller.The communication network 100 comprises, for example, a CAN (controller area network) bus. The communication network 100 includes, for example, a local area network, LAN. The communication network 100 includes, for example, a wireless local area network, WLAN. The communication network 100 includes, for example, a wide area network, WAN.The communication network 100 may include a combination of CAN, LAN, WLAN, WAN.The first device 102 and the second device 104 may comprise a microcontroller and a memory, in particular a transient and a nonvolatile memory. A computer program may be provided, for example, on the transient and non-volatile memory, the computer program comprising computer readable instructions which, when executed by a computer, e.g., the microcontroller, cause the computer to execute a method for controlling the process 110 with the controller 112.According to the example, process 110 is represented and linearized by a system in the form of a discrete state space: where x k represents a value of the state variable of process 110, u k represents a value of the control input of process 110, A represents the system matrix of process 110, and B represents the input matrix of process 110.The system defines the behavior of the process 110.In the example, the discrete state space system models a real world technical system.Controller 112 is, in the example, a state feedback controller where K is the control gain matrix.The quadratic Ljapunow function for this system is where P is a positive semi-definite matrix derived from assuming that Asymptotically is stablewhere Q is a symmetric positive definite matrix.For example, Q is the identity matrix, i.e., ones on the diagonal elements of the matrix and zeros elsewhere. The use of the identity matrix facilitates computations.The system is square constrained when η is a threshold and d k is a fault.The quadratic constraint property guarantees robustness against constrained disturbances, as for any value outside the ellipsoid, the controller 112 is able to counteract the effects of the disturbance d k.According to the example, the fault d k is a missing value u of the control input 206. The value u of the control input 206 may be absent due to problems in the communication network 100.According to the example, the disturbance d k is acceptable until the value V(x) of the quadratic Ljapunow function exceeds the threshold η, i.e. V(x)> η.For example, a latency of the communication network 100 is modeled as disturbances d k and as long as the disturbances d k are limited, the controller 112 brings the process 110, i.e., the system, back to stability.Instead of the latency, or in addition to the latency, the disturbances d k can be used to model and monitor the network delay of the communication network 100, or also to model uncertainties or other disturbances.During missing updates, the system may be described as an asymptotically stable system that is subject to an external disturbance d k whereAccording to the example, the states of process 110 are measurable, observable, or predictable.FIG. 2 shows a flow chart that includes steps of the method for controlling process 110 with controller 112 depending on a state variable 202 of process 110.In the example, the process 110 sends a value x of the state variable 202 to the controller 112 via the communication network 100.In a step 204, the controller 112 determines a value u of a control input 206 for the process 110 depending on the value x of the state variable 202.In the example, the controller 112 sends the value u of the control input 206 to the process 110 via the communication network 100.In a step 208, the process 110 is executed depending on the received value u of a control input 206.Steps 202, 204, 206, 208 are executed cyclically repeatedly during the control of process 110 with controller 112.During control, the process 110 may not receive a value u i of the control input 206 in a cycle i. According to the example, if the process 110 does not receive a value u i of the control input 206, the process 110 is configured to maintain the previously received value u i-1 of the control input 206.During control, the process 110 may not receive multiple consecutive values u i-k,..., u i of the control input 206. In this case, the process 110 is configured to maintain the most recently received value u i-k of the control input 206.The process 110 may not receive the value u i or the consecutive values u i-k,..., u i of the control input 206 due to a fault of the communication network 100. The fact that the value u i or the consecutive values u i-k,..., u i of the control input 206 are not received may result in instability of the system.To observe whether the system can be moved over the limits of εn, the update of the control input 206 is stopped in a test j for a set k j of consecutive values u i-kj,..., u i of the control input 206.FIG. 3 shows a flow chart with steps of a method for testing the process 110.In process 110, the state variable 202 of process 110 is controllable with the control input 206 from the controller 112.In the example, the test is performed with a system in the form of a discrete state space in the test. The test can be performed with the real system under test or in a simulation of the real system, where the system is used in discrete state space form instead of using the real system under test.According to one example, the state variable 202 includes at least one state of the computer controlled machine, and the values of the state variables 202 are determined with the process 110 while the process 110 is executing on the computer controlled machine.The method for testing comprises a step 300.Step 300 comprises providing an initial value x 0 of the state variable 202.Step 300 includes providing a predetermined threshold η ∈Rfor the quadratic Ljapunow function V(x) for the values x of the state variables 202. The method in the example is based on a predefined robustness for the system. The value of η is chosen, for example, to match the predefined robustness.For example, an initial state x 0 is provided in which the value of the quadratic Ljapunow function V(x 0) is close to the predetermined threshold value η.In this sense, the system is initialized very close to the boundary of its robustness to estimate the worst-case scenario, namely a delay that occurs while the system is operating at the boundary of its robustness.For an algorithm for numerically testing the robustness of the system, a threshold η' may be chosen that is less than the threshold η near the boundary.For example, an operator of the process knows for a process the maximum permissible deviation from the initial state x 0, which is tolerable. For example, in the case of a pendulum on a carriage, it is not desirable for the carriage to move a specific distance from the center or for the pendulum rod to be inclined by more than a specific angle. Generally, such deviations are known, since they are linked to the performance or quality in real processes.If this initial state x 0 is known, the Ljapunow function V(x 0) is calculated and then the threshold value η' for the algorithm is determined as a function of the Ljapunow function V(x 0) in particular V(x 0) = η'. The algorithm examines the system at the edge of the threshold value η' and thus does not lose stability, since threshold value η'<threshold value η.The method for testing comprises a step 302.Step 302 includes directing the process 110 with the control input 206 to the initial value x 0 of the state variable 202.The method for testing comprises a step 304.Step 304 includes determining successive values of the state variables 202 without control input 206 from the initial value of the state variables 202.Step 304 includes determining an amount of the consecutive values of the state variables 202 that can be calculated until the quadratic Ljapunow function V(x) for the value x of the state variables 202 reaches the predetermined threshold η'.According to an example, step 304 includes determining an array k i of sets of consecutive values of the state variables 202 without control input 206 based on different initial states of the state variables 202.An exemplary algorithm for numerically testing the robustness of the system is provided below. The algorithm runs over N time steps. The control input is updated if V(x k) < η'. Each time the control input is updated, the algorithm stores the value of k in the array k i, which represents the maximum sequence of missing values of the control input 206 before the value of the state variable 202 leaves the ellipsoid εn.The method for testing comprises a step 306.Step 306 includes determining that the process 110 is asymptotically stable for the maximum set of consecutive missing values of the control input 206 when the set of consecutive values of the state variable reaches the maximum set or differs from the maximum set by less than a predetermined tolerance.According to one example, controller 112 is a remote controller and local control is available to control process 110. The method of controlling the process 110 in this example may include receiving the control input 206 from the remote controller 112 and determining the state variable 202 with the process 110. The method of controlling the process 110 includes, for example, activating the local controller to control the process 110 upon a detection that the maximum set k* of consecutive values of the control input 206 is missing.FIG. 4 shows an example system 400 executing the process, an inverted pendulum 400.The physical model of the inverted pendulum is given by the following system of ordinary second-order differential equations:wherein the mass of the rope is negligible, andm [Kg]: mass of pendulum 402,M [kg]: mass of the carriage 404,L [m]: length of the pendulum from the pin to the pendulum body,b [Ns / m]: coefficient of friction of the carriage 404, k [Nsm / wheel]: coefficient of friction of the pendulum 402,Θ [wheel]: angle formed by the pendulum with the vertical axes passing through the pin, θ=0 represents the upright position,y [m]: Position of the carriage 404,F [N]: force 404 applied to the carriage,g=9.81 [m / s 2]: gravitational acceleration.The inverted pendulum 400 is modeled for the state space variables x 1= θ, x 2= θ̇, x 3= y, x 4= y, and approximations such as θ≈0, where M=M+m and the control input u is the force F applied to the carriage 404.FIG. 5 shows an exemplary behavior of the quadratic Ljapunow function V(x k) for the inverted pendulum in the test for a threshold value η. In the example, the threshold value η=10. FIG. 5 shows 23 consecutive disturbances d k, which are caused by a missing value u of the control input. The control input in the example is the force F applied to the carriage 404. the disturbances are caused in the example by the lack of force F applied to the carriage 404.According to the example, a received control input 502 22 is followed by consecutive missing control inputs 504. FIG. 5 shows the time steps k=0,..., 45.In the case of 22 consecutive missing control inputs 504, the test confirms that the example system 400 is asymptotically stable.FIG. 5 shows a first sequence of 22 consecutive missing control inputs 504 between a first received control input 502 and a second received control input 502. FIG. 5 shows a second sequence of 22 consecutive missing control inputs 504 between the second received control input 502 and a third received control input 502.

Claims

A method of testing a process (110), characterized in that a state variable (202) of the process (110) is controllable with a control input (206) from a controller (112), the method comprising determining (304) successive values of the state variable (202) without control input (206) based on an initial value of the state variable (202) and an amount of the successive values of the state variables that can be calculated until the quadratic Ljapunow function for the value of the state variable (202) reaches a predetermined threshold, and determining (306) that the process (110) is robust to the amount of successive values without control input.The method of claim 1, characterized in that the method comprises determining (304) an array of sets of consecutive values of the state variables (202) without control input (206) until the quadratic Ljapunow function for the value of the state variable reaches the predetermined threshold, based on different initial states of the state variables (202), and determining (306) that the process (110) is robust to the sets of consecutive values without control input.The method of any preceding claim, characterized by: carrying (302) the process (110) with control input (206) to the initial value of the state variable (202).Method according to one of the preceding claims, characterized bycomputing the values of the state variables (202) with the process (110), wherein the process (110) is executed on a computer-controlled machine.The method of any preceding claim, characterized bycomputing the control input (206) from a remote controller (112), determining the state variable (202) with the process (110), and activating a local controller to control the process (110) upon detection that the maximum number of consecutive values of the control input (206) are missing.An apparatus for testing a process (110), characterized in that the apparatus is configured to carry out the method according to any one of the preceding claims.A computer program, characterized in that the computer program comprises computer readable instructions which, when executed by a computer, cause the computer to carry out the method of any one of claims 1 to 5.