EP2568346B1 - Robust system control method with short execution deadlines - Google Patents

Robust system control method with short execution deadlines Download PDF

Info

Publication number
EP2568346B1
EP2568346B1 EP11306103.0A EP11306103A EP2568346B1 EP 2568346 B1 EP2568346 B1 EP 2568346B1 EP 11306103 A EP11306103 A EP 11306103A EP 2568346 B1 EP2568346 B1 EP 2568346B1
Authority
EP
European Patent Office
Prior art keywords
task
time
slot
control
execution
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.)
Not-in-force
Application number
EP11306103.0A
Other languages
German (de)
French (fr)
Other versions
EP2568346A1 (en
Inventor
Patrick Andrianiaina
Alexandre Seuret
Daniel Simon
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.)
Airbus Operations SAS
Original Assignee
Airbus Operations SAS
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 Airbus Operations SAS filed Critical Airbus Operations SAS
Priority to EP11306103.0A priority Critical patent/EP2568346B1/en
Priority to US13/603,206 priority patent/US9164796B2/en
Priority to CN201210462016.5A priority patent/CN102981405B/en
Publication of EP2568346A1 publication Critical patent/EP2568346A1/en
Application granted granted Critical
Publication of EP2568346B1 publication Critical patent/EP2568346B1/en
Not-in-force legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/50Allocation of resources, e.g. of the central processing unit [CPU]
    • 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/0426Programming the control sequence
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/008Reliability or availability analysis
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/48Program initiating; Program switching, e.g. by interrupt
    • G06F9/4806Task transfer initiation or dispatching
    • G06F9/4843Task transfer initiation or dispatching by program, e.g. task dispatcher, supervisor, operating system
    • G06F9/4881Scheduling strategies for dispatcher, e.g. round robin, multi-level priority queues
    • G06F9/4887Scheduling strategies for dispatcher, e.g. round robin, multi-level priority queues involving deadlines, e.g. rate based, periodic

Definitions

  • the present invention relates to the control of critical automatic systems.
  • the present invention has applications in robust automatic systems for which stability is a critical issue such as avionics systems.
  • Critical security products such as avionics products
  • These safety regulations include determinism and predictability of the systems' timing behaviour.
  • the overall development approach is based on a separation of control design and implementation concerns.
  • each resource of the system is allocated a time slot for responding to a solicitation. If the resource responds too late, the response is not taken into account. For example, considering a flight command, if a command is output by a pilot for acting on the engine power, a time slot is allocated to the engine power control system for applying the command to the engine. If the command is not applied before the end of the time slot, the control system may be considered as out of order and the overall security system of the aircraft may select an auxiliary engine power control system.
  • Document EP 1 544 716 A2 discloses an information processing system wherein if it is found that there is no task set in the ready state as a result of watching the number of tasks set in the ready state, the system lowers the power while the current active task controls the power according to the preset WCET of each application slice and if there is any task set in the ready state, the system raises the power and the current active task comes to control the power according to the virtual WCET that is earlier than the WCET of each application slice.
  • Document DE 10 2004 051967 A1 discloses a method for executing a computer program including multiple program objects according to which errors are detected while the computer program is running and when an error is detected, at least one program object, which has already been sent for execution, is transferred into a defined state and is restarted from there, and subsequent additional program objects are shifted.
  • control techniques for automatic systems implement hard deadlines for the execution of control tasks and do not admit missing any deadline.
  • the WCET approach does not allow an optimal use of the CPU resources since most of the time the task is able to output a result well before the WCET deadline (in other words, it is extremely infrequent that the tasks execution duration reaches the WCET).
  • the WCET is almost always larger than the execution time, in particular for safety-critical applications. Therefore, in the vast majority of the task executions, the task ends well before the end of the WCET.
  • the time between the end of the task and the end of the WCET corresponds to time during which the resources allocated to the execution of the task (such as processors) are not used.
  • this time can be reduced so that the computing resources may be optimized. This time may be used for executing other tasks thereby enhancing the processing efficiency of the system.
  • the system may also be dimensioned with less computer resources thereby saving costs associated to redundant computing resources usually provided in the system as backup resources for the infrequent case wherein a failure of equipment is detected because it has carried out a task with an execution time longer than the WCET. Energy may also be saved in the system and the volume and the mass may also be reduced.
  • the inventors thus provide for a "weakened" (i.e. not as rigid as in the prior art wherein the WCET must be strictly respected) implementation scheme for real-time feedback controllers.
  • the invention reduces the conservatism due to traditional worst-case considerations while preserving the stability and control performance of the system.
  • the invention takes into account the effects of missed deadlines by control tasks and uncertainties in the controlled system (or plant).
  • the invention "weakens" the real-time constraints and enables to save computing power while preserving the system's stability.
  • the worst case execution time may be determined during a preliminary statistical analysis if the task execution in the system. For example, the task is launch a given number of time and the execution time is monitored and stored.
  • the condition of execution of the tasks may be varied in order to take into account bad and good conditions of operation of the system (for example simulations of hardware failures or software bugs). The highest execution time measured during the analysis thus corresponds to the worst case execution time.
  • a task may correspond to an instance of a computer program such as a computing process, for example a set of instructions to be executed by one or several processors for implementing a computing code.
  • the task may also correspond to one or several computing threads.
  • the task is launched periodically according to a fixed period of time.
  • the method further comprises outputting a value calculated based on a current input value.
  • This may correspond to a regular case wherein the task has to output a command signal to an actuator, based on measurement values from sensors that have triggered the task execution.
  • the method when the execution of the task does not end before the allocated time slot, the method further comprises outputting a value calculated based on a previous input value.
  • the system may still be in operation by holding the current command on the actuators. This is an alternative to the total deactivation of the processors executing the task when an execution time slot deadline is missed.
  • the method further comprises stopping the task and launching the task again at the next period of time with a next input value.
  • the current value is thus ignored in order not to slow down the overall operation of the system.
  • the time slot is determined so that a statistical maximum number of consecutive tasks, that do not end before the time slot, is below a performance threshold.
  • the time slot is determined so that a probability for reaching a maximum number of consecutive tasks that do not end before the time slot is below a performance threshold.
  • the system designer may carry out a preliminary analysis of the system during which a trade-off is defined between robustness and resource optimization.
  • the system has a feedback loop.
  • Such systems may be robust enough to easily allow for execution time slots shorter than the WCET. Such systems may also tolerate deadlines to be missed.
  • the task corresponds to a command of an actuator of the system.
  • a system comprising a control unit configured to carry out a method according to the first aspect.
  • an aircraft command system comprising a system according to the third aspect.
  • an aircraft comprising a system according to the fourth aspect.
  • the objects according to the second, third, fourth and fifth aspects of the invention provide at least the same advantages as those provided by the method according the first aspect of the invention.
  • the objects according to the third, fourth and fifth aspects of the invention may comprise means for implementing optional features of the method according to the first aspect.
  • the set of such functions x t is denoted as K h .
  • the sets R + , R n ⁇ n and S n denote respectively the set of positive scalar, the set of nxn matrices and the set of symmetric matrices of R n ⁇ n .
  • the superscript 'T' stands for the matrix transposition.
  • the notation P > 0 for P ⁇ S n means that P is positive definite.
  • the notation 2He ⁇ A ⁇ > 0 refers to A + A T > 0.
  • the symbols I and 0 represent the identity and the zero matrices of appropriate dimension.
  • Figure 1 is a schematic illustration of a general architecture of an automatic feedback control system. This architecture may be implemented in various applications such as avionics, automotive, power plant control etc.
  • the system has an interface unit 100 from which commands may be sent by a user or by another system.
  • the interface may thus be a keypad, a touch screen or a communication interface.
  • the interface unit outputs command signals to a control unit 101.
  • the control unit then manages the command signal according to the state of the system and outputs control signals to a unit 102 comprising actuators of the system that perform the actions required by the command signals.
  • a sensor unit 103 performs measurements in the system in order to provide the control unit with information enabling the control unit to determine the current state of the system.
  • the actuators may be airbrakes, engines or other elements of an aircraft.
  • the sensor unit may comprise speed sensors for example.
  • the interface may be a cockpit lever.
  • control unit may perform a method according to the general flowchart of Figure 2 .
  • the control unit receives a command signal. This step may be performed sequentially according to a time period. For example, the control unit monitors a communication port from which it receives command signal from the interface.
  • the control unit launches a task corresponding to the command signal.
  • the task is a set of processes implemented by processors that perform calculations based on input values contained in the command signal.
  • control unit monitors the execution of the task, during step S202, by setting a timer to a time slot allocated to the execution of the task.
  • control unit checks whether the task has been executed during step S203 by checking whether the task has output a result.
  • control unit If the task has ended before the allocated time slot, then the control unit outputs a control signal during step S204.
  • the control signal feeds output values to an actuator of the system which have been calculated based on the input values received in the command signal.
  • control unit holds a current control signal during step S205.
  • the control signal feeds the actuator with the output values calculated based on input values received in the previous command signal for which the task has been previously launched.
  • the control unit may detect a failure of an element of the control unit that performed the calculation for the execution of the task, for example a processor.
  • the failure is detected during step S206.
  • the element for example the processor
  • the control unit has primary and auxiliary processors for performing the calculations.
  • the primary processors are used in the normal case and the auxiliary processors are used in case of failure of the primary processors.
  • the deactivation may be carried out the first time a deadline is missed by the task or a counter may be set for deactivating the processor after a given number of missed deadlines.
  • control unit goes back to step S200 according to the sequence time period as already mentioned above.
  • the time slot is determined based on a trade-off between the performance of the system and the optimization of the processor resources of the control unit as it will be shown hereafter. It is determined to be shorter than the WCET of the task.
  • the modes of operation are specified.
  • the tasks to be executed by the system during the operation modes are sequenced (step S306).
  • Each task is allocated execution time slots and the time slots are ordered according to the operation of the system.
  • the system is weakened by shortening the execution time slots until the system reaches instability.
  • the execution time slots allocated to the tasks are reduced below the respective WCETs given by item 302 during a step S308.
  • step S309 The resulting stability and robustness of the system are then evaluated during step S309 using items 300 and 301.
  • step S310 the resulting gain in terms of computing resources for the system is evaluated. For example the number of sequences used for executing each task is determined.
  • step S312 is performed during which the loss of quality of control is compared with the computer resource optimization attained. In other words, it is checked whether the gain in terms of computer resources (for example the number of processor cycles saved) is worth the performance and the robustness loss.
  • the optimization of the usage of the resources is then analyzed during a sequence 313. It is checked whether the trade-off between the quality of control (QoC) and the processing resources usage resulting from the degradation of the system is satisfying according to criteria depending on the application ,the performance and safety specifications the system has to comply with (such information being given by items 303 and 304).
  • a step S314 is performed for verifying the satisfaction of these criteria.
  • step S308 is performed again and the allocated execution time slots are reduced a little more.
  • step S316 is performed during which the operation of the system with the allocated execution time slots is tested with non linear models of the system. During this test, the allocated time slots values are confirmed using a representation of the system taking into account saturation and uncertainties issues.
  • control systems such as flight control or braking control systems
  • flight control or braking control systems are considered to be hard real-time, which means that during the design of the systems, it is assumed that control tasks must be executed strictly periodically.
  • Control tasks executions are bounded to fixed time slots, it is not allowed missing a deadline, and jitter is also forbidden (or strictly limited in practice). It is assumed that any deviation from the ideal timing pattern inevitably leads to a failure of the system.
  • control tasks relies on a safe and conservative evaluation of the WCET of each task, which is used to dimension the time slots allocated for the execution of the control tasks.
  • An exemplary execution schedule of a control task is depicted in Figure 4 .
  • the task controls the pitch of an aircraft, based on a pilot's commands and other parameters measured on the aircraft elements.
  • a time slot T slot is allocated to the task for its execution.
  • the time slot is first considered to be the WCET.
  • the measurement may correspond to outputs from sensors of the aircraft (such as speed or pitch sensors) or data accesses (or reading) on communication ports with a cockpit interface.
  • control signal U(x(s k )) is applied to the actuators of the aircraft (such as the engines, the hydraulic actuators, the ailerons or the sweep wings) at the end of the time slot, i.e. at time s k + WCET :
  • Figure 5 is an illustration of the repartition of the execution times and the associated probability density determined during a preliminary statistical study of the system.
  • the execution times concentrate in majority around 40 ⁇ s and spread out to other values with a lower probability density.
  • the worst case execution time is an extremely infrequent event since its probability is way below the probability of the average execution time. Therefore the amount of wasted computing power is expected to increase with the new generations of control systems, leading to costly over-sizing of embedded computers, power supplies and cooling systems.
  • a feedback control system which is robust with respect to the plants parameters uncertainties is also robust, to some extent, with respect to timing deviations.
  • a feedback control system is not as hard as it is often considered in the literature, but should be better considered as weakly hard, that is to say able to tolerate a predefined amount of timing deviations without leaving its specified performance domain.
  • Figure 6 takes the same notations as Figure 4 .
  • the measurements occur at a fixed period T, and their occurrences trigger the control tasks.
  • the time slot allocated to a given task is shorter that the WCET, i.e. T slot ⁇ WCET.
  • Figure 7 is a schematic illustration of the density of probability of the execution times for the system.
  • the time slot value is selected to be shorter than the WCET.
  • a time slot which is close to the WCET induces a small probability of deadlines misses, small disturbances in the controller but also small gains in the computer utilization.
  • a time slot close to the BCET induces frequent deadlines misses, larger degradations of the control performance but large improvements in the CPU utilization.
  • shortening the time slot increases the control performance and robustness, therefore balancing the degradations induced by the deadlines misses.
  • the proposed method aims at finding an adequate value of the time slot which meets a desired trade-off between the CPU utilization and the control performance.
  • t k ⁇ s k + T slot if T ex ⁇ T slot
  • the control input can be asynchronous since the difference between two sampling instant t k'+1 - t k' is time-varying but bounded by T and NT.
  • t k'+1 - t k' ⁇ T, where the integer ⁇ ⁇ [1, ..., N] and the asynchronous sampling is determined by the values of T and N.
  • the matrices A and B are constant and of appropriate dimension.
  • the matrices ⁇ ⁇ A and ⁇ ⁇ B represent the uncertainties of the model which can be constant or time varying.
  • the matrices A i , B i and C i are constant and of appropriate dimension.
  • control computation induces a constant transmission delay T slot and a sampling of the transmitted signal.
  • the stability of systems subject to varying sampling, constant delay and time-varying uncertainties has thus to be assessed.
  • the main idea is to consider separately the two types of delays. To do so, the stability conditions are based on the discrete-time Lyapunov Theorem but expressed with the continuous-time model of the system. It leads to less conservative necessary conditions.
  • N a positive integer.
  • V K Tslot ⁇ R + be a differentiable functional, for which there exist real numbers 0 ⁇ ⁇ 1 ⁇ ⁇ 2 and p > 0 such that ⁇ x t ⁇ K , ⁇ 1 ⁇ x t 0 p ⁇ V x t ⁇ ⁇ 2 ⁇ x t p .
  • the main contribution of Theorem 1 is that the introduction of the functional W allows the Lyapunov-Krasovskii functional V to be locally increasing.
  • the notation ⁇ stand for the time-varying sampling delay ⁇ ( t ).
  • System (2) is thus asymptotically stable for any asynchronous sampling defined by (T, N) and the delay T slot .
  • V t x t x ⁇ t y T t ⁇ Py t + ⁇ t - T slot t ⁇ x T s ⁇ Qx s ⁇ ds + ⁇ t - T slot t ⁇ x ⁇ T s ⁇ R 1 + T slot - t + s ⁇ R 2 ⁇ x ⁇ s ⁇ ds
  • y ( t ) [ x T ( t ) x T ( t - T slot )] T .
  • V corresponds to a classical Lyapunov-Krasovskii functional type to cope with the stability of constant time-delay systems.
  • V T Z ⁇ Z ⁇ ⁇ g 0 ⁇ M ⁇ M ⁇ ⁇ ⁇ e Z q M q Z ⁇ e M ⁇ e are the dimensionless derivatives of the standard aircraft which may be found in B. L. Stevens and F. L. Lewis, Aircraft Control and Simulation. Wiley-Interscience, 2003 .
  • Figure 8 is a block-diagram of the pitch control system.
  • a reference signal r is fed to the system and is compared by a comparator 800 with a signal q output by a module 801 representing the model of the F-16 aircraft.
  • the output of the comparator 800 is then fed to an integrator unit 802 the output of which ⁇ is fed to a gain (k 1 ) unit 803.
  • k 1 gain
  • the output of the gain unit 803 if fed along with a signal b described hereafter to a summing and inverting unit 804.
  • the output of unit 804 is signal u and is fed to the unit 805 representing the actuators of the aircraft with a first order transfer function.
  • the output ⁇ E of the unit 805 is fed to unit 801.
  • Unit 801 outputs signals q and ⁇ .
  • the noisy angle of attack ⁇ is fed to a low-pass filter unit 806 the output of which is fed to a gain (k ⁇ ) unit 807.
  • Signal q is fed to a gain (kq) unit 808.
  • the output signals from the gain units 807 and 808 are fed to a summing unit 809 the output of which is signal b.
  • the full controlled plant has an augmented state vector given by [ ⁇ q ⁇ E ⁇ F ⁇ ] where ⁇ F is the filtered measure of ⁇ and ⁇ is the output of the integrator.
  • ⁇ F is the filtered measure of ⁇
  • is the output of the integrator.
  • the augmented system has the structure and dimensions instantiated, e.g., in system (16).
  • the uncertainty multiplier models the uncertainties concerning the parameters of the system. For example, during the flight, the mass, the speed of the aircraft cannot be measured ideally. Therefore, an uncertainty parameter is introduced to reflect the uncontrolled phenomena acting on the parameters. This parameter may also take into account the non-linear behaviour of the real system which has not been introduced during the model linearization.
  • the system analysis allows evaluating the probability of keeping the system stable by evaluating the probability of reaching the maximum tolerable number of consecutive missed deadlines for each value of ⁇ .
  • the system designer may thus determine a trade-off between Quality of Control, level of fault tolerance and the system's safety.
  • Figures 14a and 14b are logarithmic views of the graph in Figure 12 (Case 1) showing the evolution of the probability for ⁇ 1 and ⁇ 2 ( Figure 14a ) and for ⁇ 3 ( Figure 14b).
  • Figures 15a and 15b are logarithmic views of the graph in Figure 13 (Case 2) showing the evolution of the probability for ⁇ 1 and ⁇ 2 ( Figure 15a ) and for ⁇ 3 ( Figure 15b ).
  • the trade-off is likely to be found when ⁇ is larger than 0.5, since for ⁇ below 0.5 P(N max ) is high.
  • the curves in figures 14a , 14b and 15a, 15b show that probability of reaching the maximum tolerable number of consecutive missed deadlines is in the range of 10 -9 .
  • P(N max ) 2.36.10 -9 .
  • the new stability condition allows for computing the maximum number of consecutive missed deadlines which can be tolerated by an uncertain system while keeping stability, considering a given scheduling factor.
  • the Inventors have thus provided a basis for system designers for design and implementation rules for finding cost effective trade-offs between embedded computing power, control performance, control robustness and overall fault-tolerance.
  • a computer program according to embodiments may be designed based on the flowchart of Figure 2 and the present description.
  • FIG 16 is a schematic illustration of a system 160 according to embodiments.
  • the system comprises a RAM (Random Access Memory) unit 162 for storing processing data used for computations for implementing a method according to embodiments.
  • the system may also comprise a ROM (Read Only Memory) unit 163 for storing a computer program according to an embodiment.
  • the system further comprises a control unit 161.
  • the control unit may comprise a processor configured for implementing a method according to an embodiment, for example by executing instructions of a computer program according to embodiments.
  • the computer program may be stored in and loaded from the ROM unit 163.
  • the control unit may also comprise other processors dedicated to the execution of tasks of the system. Some of the processor may be main processors used during the normal execution of the tasks and some of the processors may be auxiliary processors used in case of a failure of one or several main processors.
  • the system also comprises an interface unit 164 for receiving commands from a user (such as a pilot) or from a command system (such as a cockpit lever).
  • the system further comprises a sensing unit 165 with a set of sensors (such as a speed sensor or a pitch sensor) for performing measurements used for the control of the system by the control unit and an actuating unit 166 comprising actuators (such as ailerons or engines) for performing actions controlled by the control unit.
  • the present invention is not limited to avionics systems.
  • the present invention may have other applications in control systems for a power plant, a chemical reactor, for an automobile or in other fields.

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Software Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Quality & Reliability (AREA)
  • Automation & Control Theory (AREA)
  • Feedback Control In General (AREA)
  • Supply And Distribution Of Alternating Current (AREA)
  • Complex Calculations (AREA)

Description

  • The present invention relates to the control of critical automatic systems. The present invention has applications in robust automatic systems for which stability is a critical issue such as avionics systems.
  • Critical security products, such as avionics products, are generally developed under strict safety regulations. These safety regulations include determinism and predictability of the systems' timing behaviour. Typically, the overall development approach is based on a separation of control design and implementation concerns.
  • During the control design, an important issue is to keep constant sampling rates with equidistant samples and no jitter and to have negligible, or fixed and known, delays. Also, according to the real-time scheduling theory, it is mainly focused on dimensioning resources for meeting deadlines (or equivalently, on the schedule analysis for a given resource).
  • Typically, during operation, each resource of the system is allocated a time slot for responding to a solicitation. If the resource responds too late, the response is not taken into account. For example, considering a flight command, if a command is output by a pilot for acting on the engine power, a time slot is allocated to the engine power control system for applying the command to the engine. If the command is not applied before the end of the time slot, the control system may be considered as out of order and the overall security system of the aircraft may select an auxiliary engine power control system.
  • In the field of computer science and real-time scheduling, it is a main goal to implement these control tasks considering fixed periods and hard deadlines. These deadlines are usually chosen equal or greater than the "WCET" (acronym for Worst-Case Execution Time). The WCET must be precisely known in order to guarantee a safe operation of the systems.
  • This assumption has served the separation between control and scheduling designs, but leads to a non optimal use of computing resources (CPU resources) and such an approach faces technical, economical, and industrial challenges.
  • One of the toughest challenges in the prior art approach is the determination of the WCET needed for dimensioning the systems. The tightness of the result is related to the predictability of the processing unit.
  • The upcoming generations of processors seem to go apart from the predictability and determinism objectives of the execution time. Processing speeds and performances grow up very fast thanks to accelerating but unpredictable mechanisms of new processors but it becomes very difficult to foresee their effects on the execution time considered in the worst case. Nowadays, even if many attempts are proposed to determine an upper bound for the WCET, both the traditional and current approaches are difficult to apply to modern processor generations and produce values which are pessimistic, that is to say values which would cause the system to operate too conservatively.
  • Then, to implement the control laws, the hard and costly way of the prior art consists in building a highly deterministic system, from the hardware, operating system and communication protocols sides, so that the actual implementation parameters meet the ideal ones. By essence, implementations purely based on WCET and hard deadlines considerations are conservative, and lead to a non-optimal use of the computing and networking resources and finally lead to electrical supplies, cooling systems and weight oversizing.
  • Current real-time systems design methods and associated analysis tools do not provide a model flexible enough to fit well with control systems requirements. Also, classic control theory is silent about how to include resource and dependability constraints into the controller, both at the design and implementation stages.
  • Document EP 1 544 716 A2 discloses an information processing system wherein if it is found that there is no task set in the ready state as a result of watching the number of tasks set in the ready state, the system lowers the power while the current active task controls the power according to the preset WCET of each application slice and if there is any task set in the ready state, the system raises the power and the current active task comes to control the power according to the virtual WCET that is earlier than the WCET of each application slice.
  • Document DE 10 2004 051967 A1 discloses a method for executing a computer program including multiple program objects according to which errors are detected while the computer program is running and when an error is detected, at least one program object, which has already been sent for execution, is transferred into a defined state and is restarted from there, and subsequent additional program objects are shifted.
  • In summary, in the prior art control techniques for automatic systems implement hard deadlines for the execution of control tasks and do not admit missing any deadline. Also the WCET approach does not allow an optimal use of the CPU resources since most of the time the task is able to output a result well before the WCET deadline (in other words, it is extremely infrequent that the tasks execution duration reaches the WCET).
  • Thus, there is a need for optimizing computer resources in critical automatic systems.
  • According to a first aspect of the invention there is provided a method according to claim 1.
  • Thus, it is not systematically waited for the worst case execution time (WCET) to elapse before checking whether a task has ended and before taking the following actions. This results in savings in terms of computing power.
  • Indeed, the WCET is almost always larger than the execution time, in particular for safety-critical applications. Therefore, in the vast majority of the task executions, the task ends well before the end of the WCET. The time between the end of the task and the end of the WCET corresponds to time during which the resources allocated to the execution of the task (such as processors) are not used.
  • The Inventors have found that this time can be reduced so that the computing resources may be optimized. This time may be used for executing other tasks thereby enhancing the processing efficiency of the system. The system may also be dimensioned with less computer resources thereby saving costs associated to redundant computing resources usually provided in the system as backup resources for the infrequent case wherein a failure of equipment is detected because it has carried out a task with an execution time longer than the WCET. Energy may also be saved in the system and the volume and the mass may also be reduced.
  • The Inventors found that the execution time slots allocated to the execution of the tasks in automatic systems may be shorter than the WCET while preserving the performances of the systems.
  • Indeed, as far as closed-loop control systems are considered, more flexible solutions can be implemented by exploiting the basic features of feedback loops, robustness with respect to modelling uncertainties, disturbance rejection and adaptability to various operative conditions. Robustness of feedback controllers also implies some fault-tolerance with respect to deviations from the ideal timing pattern, e.g. equidistant sampling. This feature can be efficiently used to guarantee the end-to-end control quality, i.e. stability and performance level, under weakened real-time constraints, therefore improving the overall computing power average utilization.
  • The inventors thus provide for a "weakened" (i.e. not as rigid as in the prior art wherein the WCET must be strictly respected) implementation scheme for real-time feedback controllers. The invention reduces the conservatism due to traditional worst-case considerations while preserving the stability and control performance of the system.
  • Based on a new approach for assessing stability of linear systems with delayed and sampled-data inputs, the invention takes into account the effects of missed deadlines by control tasks and uncertainties in the controlled system (or plant).
  • The invention "weakens" the real-time constraints and enables to save computing power while preserving the system's stability.
  • The worst case execution time may be determined during a preliminary statistical analysis if the task execution in the system. For example, the task is launch a given number of time and the execution time is monitored and stored. The condition of execution of the tasks may be varied in order to take into account bad and good conditions of operation of the system (for example simulations of hardware failures or software bugs). The highest execution time measured during the analysis thus corresponds to the worst case execution time.
  • A task may correspond to an instance of a computer program such as a computing process, for example a set of instructions to be executed by one or several processors for implementing a computing code. The task may also correspond to one or several computing threads.
  • According to embodiments, the task is launched periodically according to a fixed period of time.
  • Hence, the savings in terms of computing cycles are made on a regular basis thereby enhancing the overall optimization of the system.
  • For example, when the execution of the task ends before the allocated time slot, the method further comprises outputting a value calculated based on a current input value.
  • This may correspond to a regular case wherein the task has to output a command signal to an actuator, based on measurement values from sensors that have triggered the task execution.
  • According to another example, when the execution of the task does not end before the allocated time slot, the method further comprises outputting a value calculated based on a previous input value.
  • Thus, the system may still be in operation by holding the current command on the actuators. This is an alternative to the total deactivation of the processors executing the task when an execution time slot deadline is missed.
  • According to embodiments, the method further comprises stopping the task and launching the task again at the next period of time with a next input value.
  • The current value is thus ignored in order not to slow down the overall operation of the system.
  • According to embodiments, the time slot is determined so that a statistical maximum number of consecutive tasks, that do not end before the time slot, is below a performance threshold.
  • For example, the time slot is determined so that a probability for reaching a maximum number of consecutive tasks that do not end before the time slot is below a performance threshold.
  • Thus, the system designer may carry out a preliminary analysis of the system during which a trade-off is defined between robustness and resource optimization.
  • According to embodiments, the system has a feedback loop.
  • Such systems may be robust enough to easily allow for execution time slots shorter than the WCET. Such systems may also tolerate deadlines to be missed.
  • For example, the task corresponds to a command of an actuator of the system.
  • According to a second aspect of the invention, there are provided computer programs and computer program products comprising instructions for implementing a method according to the first aspect of the invention, when loaded and run on computer means of a control unit of a system. Computer readable means storing such computer programs are also provided.
  • According to a third aspect of the invention there is provided a system comprising a control unit configured to carry out a method according to the first aspect.
  • According to a fourth aspect of the invention, there is provided an aircraft command system comprising a system according to the third aspect.
  • According to a fifth aspect of the invention, there is provided an aircraft comprising a system according to the fourth aspect.
  • The objects according to the second, third, fourth and fifth aspects of the invention provide at least the same advantages as those provided by the method according the first aspect of the invention. The objects according to the third, fourth and fifth aspects of the invention may comprise means for implementing optional features of the method according to the first aspect.
  • Other features and advantages of the invention will become apparent from the following description of non-limiting exemplary embodiments, with reference to the appended drawings, in which:
    • Figure 1 is a schematic illustration of a general architecture of an automatic feedback control system;
    • Figure 2 is a flowchart of steps of a control method according to embodiments;
    • Figure 3 is a schematic illustration of a procedure for selecting an execution time slot;
    • Figure 4 is an illustration of an exemplary execution schedule of a control task;
    • Figure 5 is an illustration of the repartition of the execution times and the associated probability density for a task to be executed by a system;
    • Figure 6 is an illustration of an execution schedule of a control task according to embodiments;
    • Figure 7 is an illustration of the selection of a time slot shorter than the WCET;
    • Figure 8 is a block diagram of a pitch control system of an F-16 aircraft;
    • Figure 9 is an illustration of an execution schedule of a control task for a case study;
    • Figures 10-13 , 14a-14b and 15a-15b are graphs showing case study results; and
    • Figure 16 is a schematic illustration of a system according to embodiments.
  • The inventors have found that nowadays, the automatic control of systems theory have reached a robustness analysis level of confidence that allows for tolerating missed deadlines. The inventors have also found that the widespread WCET approach is far too cautious in most of the applications, even in safety critical applications. In what follows, there is described a method of controlling an automatic system with a time slot allocated to the execution of control tasks shorter that the WCET and that tolerates deadlines to be missed. It is also shown that stability and safety of the system may be guaranteed.
  • In what follows, for an n-dimensional state vector x and a non-negative delay h, xt denotes a function such that xt(θ) = x(t - θ) for all θ ∈ [-h, 0]. The set of such functions xt is denoted as Kh. The sets R+, Rn×n and Sn denote respectively the set of positive scalar, the set of nxn matrices and the set of symmetric matrices of Rn×n. The superscript 'T' stands for the matrix transposition. The notation P > 0 for P ∈ Sn means that P is positive definite. For any matrix A ∈ Rn×n, the notation 2He{A} > 0 refers to A + AT> 0. The symbols I and 0 represent the identity and the zero matrices of appropriate dimension.
  • Figure 1 is a schematic illustration of a general architecture of an automatic feedback control system. This architecture may be implemented in various applications such as avionics, automotive, power plant control etc.
  • According to this architecture, the system has an interface unit 100 from which commands may be sent by a user or by another system. The interface may thus be a keypad, a touch screen or a communication interface. The interface unit outputs command signals to a control unit 101. The control unit then manages the command signal according to the state of the system and outputs control signals to a unit 102 comprising actuators of the system that perform the actions required by the command signals. A sensor unit 103 performs measurements in the system in order to provide the control unit with information enabling the control unit to determine the current state of the system.
  • In an avionic application, the actuators may be airbrakes, engines or other elements of an aircraft. The sensor unit may comprise speed sensors for example. The interface may be a cockpit lever.
  • According to embodiments, the control unit may perform a method according to the general flowchart of Figure 2 .
  • During a step S200, the control unit receives a command signal. This step may be performed sequentially according to a time period. For example, the control unit monitors a communication port from which it receives command signal from the interface.
  • Next, during step S201, the control unit launches a task corresponding to the command signal. For example the task is a set of processes implemented by processors that perform calculations based on input values contained in the command signal.
  • Once the control task is launched, the control unit monitors the execution of the task, during step S202, by setting a timer to a time slot allocated to the execution of the task.
  • Once the time slot has elapsed, the control unit checks whether the task has been executed during step S203 by checking whether the task has output a result.
  • If the task has ended before the allocated time slot, then the control unit outputs a control signal during step S204. For example, the control signal feeds output values to an actuator of the system which have been calculated based on the input values received in the command signal.
  • If the task has not ended before the allocated time slot, then the control unit holds a current control signal during step S205. For example, the control signal feeds the actuator with the output values calculated based on input values received in the previous command signal for which the task has been previously launched.
  • In such a case, the control unit may detect a failure of an element of the control unit that performed the calculation for the execution of the task, for example a processor. The failure is detected during step S206. For example, when a failure is detected, the element (for example the processor) is deactivated and will not be further used until it has been checked. In such a case, the control unit has primary and auxiliary processors for performing the calculations. The primary processors are used in the normal case and the auxiliary processors are used in case of failure of the primary processors.
  • The deactivation may be carried out the first time a deadline is missed by the task or a counter may be set for deactivating the processor after a given number of missed deadlines.
  • After steps S204 and S206, the control unit goes back to step S200 according to the sequence time period as already mentioned above.
  • The time slot is determined based on a trade-off between the performance of the system and the optimization of the processor resources of the control unit as it will be shown hereafter. It is determined to be shorter than the WCET of the task.
  • The overall procedure for selecting a time slot value is schematically represented in Figure 3 .
  • During preliminary procedures, the following elements are determined:
    • The mathematical model of the system 300. The model is based on the physics of the system.
    • The command algorithms 301 that are designed for operation of the system.
    • The WCET estimation 302 based on statistical studies of the system. The system is operated a given number of times and the response time for the tasks is measured for determining the distribution of the response times measured.
    • The performance and the safety specifications 303 the system has to meet given the applications envisaged.
    • The certification specifications 304 the system has to comply with, for high level safety applications such as avionics applications.
  • Then, during a first sequence of analysis 305, the modes of operation are specified. During the sequence, the tasks to be executed by the system during the operation modes are sequenced (step S306). Each task is allocated execution time slots and the time slots are ordered according to the operation of the system.
  • During the next sequence 307, using the model 300, the system is weakened by shortening the execution time slots until the system reaches instability. The execution time slots allocated to the tasks are reduced below the respective WCETs given by item 302 during a step S308.
  • The resulting stability and robustness of the system are then evaluated during step S309 using items 300 and 301. In parallel, during step S310, the resulting gain in terms of computing resources for the system is evaluated. For example the number of sequences used for executing each task is determined.
  • During the next sequence 311, the quality of control resulting from the degradation of the system is analysed. A step S312 is performed during which the loss of quality of control is compared with the computer resource optimization attained. In other words, it is checked whether the gain in terms of computer resources (for example the number of processor cycles saved) is worth the performance and the robustness loss.
  • The optimization of the usage of the resources is then analyzed during a sequence 313. It is checked whether the trade-off between the quality of control (QoC) and the processing resources usage resulting from the degradation of the system is satisfying according to criteria depending on the application ,the performance and safety specifications the system has to comply with (such information being given by items 303 and 304). A step S314 is performed for verifying the satisfaction of these criteria.
  • If the trade-off is not satisfactory, then step S308 is performed again and the allocated execution time slots are reduced a little more.
  • If the trade-off is satisfactory, the final result of the system analysis is validated during sequence 315. A step S316 is performed during which the operation of the system with the allocated execution time slots is tested with non linear models of the system. During this test, the allocated time slots values are confirmed using a representation of the system taking into account saturation and uncertainties issues.
  • Next, if the system functions satisfactorily, even taking into account these issues, the execution time slots are confirmed for each control task during a step S3017.
  • In what follows, the WCET (acronym for worst case execution time) issues are presented in details with respect to robustness considerations. The solution proposed by the Inventors is then presented.
  • Nowadays, many control systems, such as flight control or braking control systems, are considered to be hard real-time, which means that during the design of the systems, it is assumed that control tasks must be executed strictly periodically. Control tasks executions are bounded to fixed time slots, it is not allowed missing a deadline, and jitter is also forbidden (or strictly limited in practice). It is assumed that any deviation from the ideal timing pattern inevitably leads to a failure of the system.
  • The implementation of such control tasks relies on a safe and conservative evaluation of the WCET of each task, which is used to dimension the time slots allocated for the execution of the control tasks. An exemplary execution schedule of a control task is depicted in Figure 4. For example, the task controls the pitch of an aircraft, based on a pilot's commands and other parameters measured on the aircraft elements.
  • It is assumed that a given task is executed periodically. A time slot Tslot is allocated to the task for its execution. In the exemplary task of Figure 4 the time slot is first considered to be the WCET. Each time slot is triggered at a period T = sk - sk -1 by the occurrence of measurements x(sk) at time sk. The measurement may correspond to outputs from sensors of the aircraft (such as speed or pitch sensors) or data accesses (or reading) on communication ports with a cockpit interface.
  • The computations performed by the control task take a time Tex which is always smaller than the WCET since the WCET corresponds to the worst execution time. In order to avoid output jitter, the control signal U(x(sk)) is applied to the actuators of the aircraft (such as the engines, the hydraulic actuators, the ailerons or the sweep wings) at the end of the time slot, i.e. at time sk + WCET :
    • for any t such that s k + WCET t < s k + 1 + WCET ,
      Figure imgb0001
      i.e. t [ s k + WCET , s k + 1 + WCET [ , U = U x s k .
      Figure imgb0002
  • Therefore it is a periodic control system, with a constant period T, subject to a constant delay Tslot = WCET. This implementation fits well with the hard real-time assumption, and should be applied when the controller is really hard, such as a Finite State Machine which may fail in an unpredicted state if a deadline is missed and a transition is interrupted.
  • However, as the time slots are allocated based on the WCET of the control tasks, the computations always end before the end of the slot. Therefore a fraction of the computing power is unused, namely the computing time not used between the end of Tex and the end of WCET. The wasted computing power is all the more important as the WCET is far from the average value of the execution time Tex observed during the statistical study of the system for determining the WCET. In particular, due to an increasing demand on services, new control systems are more and more based on distributed architectures and shared off-the-shelf computing devices. However, high computing power are often based on the usage of multiple levels of cache memory and pipe-lines, lowering the determinism of the processors and increasing the difficulty of searching for the program's WCET, which are in fact approached by increasingly conservative upper bounds.
  • Figure 5 is an illustration of the repartition of the execution times and the associated probability density determined during a preliminary statistical study of the system. In Figure 5, the execution times concentrate in majority around 40 µs and spread out to other values with a lower probability density. Thus, it appears that the worst case execution time is an extremely infrequent event since its probability is way below the probability of the average execution time. Therefore the amount of wasted computing power is expected to increase with the new generations of control systems, leading to costly over-sizing of embedded computers, power supplies and cooling systems.
  • That is why the Inventors found it worth to discuss and revisit the widespread "hard real-time" assumption and to examine how it can be weakened, in particular for feedback control systems.
  • The design of critical systems must satisfy requirements, specifications and certification levels. Robustness is (and must be) a general concern that grows with system complexity. For instance, it is known that small task core execution time modifications in systems with complex performance dependencies can have drastic non-intuitive effects on the overall system performance, and might lead to constraint violations. It is also known that robustness evaluation using simulation is a tedious tasks and practically impossible for the reason that simulation models do not support many of the possible property changes (for instance, increased processor execution times or modified communication volumes).
  • Robustness in control systems usually deals with the plant's parameters uncertainties, but in the present case the insensitivity or adaptability with respect to timing deviations from the theoretical pattern, such as jitter or missed deadlines, is also investigated. For SISO (single input single output) linear systems robustness can be quantified using phase margins, delay margins and module margins. It appears that a phase margin implies a delay margin (i.e. the maximum and not modelled constant extra delay that can be tolerated before reaching an instability state) and certainly a jitter margin, which is more difficult to quantify but which can be experimentally shown. A feedback control system can be even robust enough to tolerate missed samples, for example in case selective data dropping is applied to lighten the computing and networking burden while preserving closed-loop stability.
  • In fact, a feedback control system which is robust with respect to the plants parameters uncertainties is also robust, to some extent, with respect to timing deviations. Hence, a feedback control system is not as hard as it is often considered in the literature, but should be better considered as weakly hard, that is to say able to tolerate a predefined amount of timing deviations without leaving its specified performance domain.
  • Therefore, in order to improve the average efficiency of automatic systems, in particular for embedded computers, while preserving the control stability and performance, and relying on the robustness of feedback control laws, there is proposed a control method that weakens the usual real-time constraints as illustrated in Figure 6 .
  • Figure 6 takes the same notations as Figure 4. The measurements occur at a fixed period T, and their occurrences trigger the control tasks. According to the invention, the time slot allocated to a given task is shorter that the WCET, i.e. Tslot < WCET.
  • Figure 7 is a schematic illustration of the density of probability of the execution times for the system. The time slot value is selected to be shorter than the WCET. A time slot which is close to the WCET induces a small probability of deadlines misses, small disturbances in the controller but also small gains in the computer utilization. Conversely a time slot close to the BCET induces frequent deadlines misses, larger degradations of the control performance but large improvements in the CPU utilization. Moreover it is likely that shortening the time slot increases the control performance and robustness, therefore balancing the degradations induced by the deadlines misses.
  • Hence, for a given plant's model (including parametric uncertainties), a given control law, and a given execution time probability function, the proposed method aims at finding an adequate value of the time slot which meets a desired trade-off between the CPU utilization and the control performance.
  • The control signals are sent to the actuators at the end of the time slots, i.e. U(x(sk)) is sent at time sk + Tslot, and the delay is equal to Tslot t [ s k + T slot , s k + 1 + T slot [ , U = U x s k .
    Figure imgb0003
  • It may happen that a control task deadline is occasionally missed. In such a case, it is proposed to stop the current computation, hold the current value of the control signal U(x(sk)) for the next period and start a new computation with the next sensor value. The control signal is thus hold for one extra period, i.e. if the deadline is missed at time sk + Tslot: t [ s k + T slot , s k + 2 + T slot [ , U = U x s k
    Figure imgb0004

    and for N consecutive missed deadlines and data loss: t [ s k + T slot , s k + N + T slot [ , U = U x s k .
    Figure imgb0005
  • In other words a newly computed control signal is sent to the actuators at non-equidistant instants tk' only if the control computation has been successfully carried out: t = s k + T slot if T ex T slot
    Figure imgb0006

    where k' is a positive integer representing the number of input values which have been implemented before sk = kT. Then, the control input can be asynchronous since the difference between two sampling instant tk'+1 - tk' is time-varying but bounded by T and NT. Hence, tk'+1 - tk'= αT, where the integer α ∈ [1, ..., N] and the asynchronous sampling is determined by the values of T and N.
  • It is likely that a robust feedback control system can keep stability despite occasional data loss, at the price of a decreased performance and robustness. Therefore, for a given linear time-invariant (LTI) plant, a given control law, a known distribution of execution times of the controller and the weakened real-time constraint, problems to be solved can be informally stated as :
    • find N, the maximum value of consecutive data losses due to missed deadlines before losing the closed-loop stability;
    • find an adequate value of Tslot to fulfil a given trade-off between the control performance and the computing efficiency;
    • evaluate the weakly-hard closed-loop robustness with respect to the plant's parameters uncertainties.
  • In what follows, stability results for systems under uncertainties and input delays are discussed.
  • A linearized system representing the pitch control of a plane with a sampled and delayed input is considered: x ˙ t = A + Δ μ A t x t + B + Δ μ B t u t ,
    Figure imgb0007

    x ∈ Rn and u ∈ Rm respectively representing the state variable and the input vector and (t) representing the derivative of x over time. The matrices A and B are constant and of appropriate dimension. The matrices ΔµA and ΔµB represent the uncertainties of the model which can be constant or time varying. The (time-varying) uncertainties are given in a polytopic representation: Δ μ A t = μ i = l M λ i t A i ,
    Figure imgb0008
    Δ μ B t = μ i = l M λ i t B i ,
    Figure imgb0009

    where M corresponds to the number of vertices. The matrices Ai, Bi and Ci are constant and of appropriate dimension. The scalar µ ∈ R characterizes the size of the uncertainties. Note that when µ = 0, no uncertainty parameter is disturbing the system. However the greater the value of µ, the greater the disturbances. The functions λi(.) are weighted scalar functions which follow a convexity property, i.e. for all i = 1, .., M and for all t ≥ 0: λ i t 0 , i = 1 M λ i t = 1.
    Figure imgb0010
  • It is assumed that the control computation induces a constant transmission delay Tslot and a sampling of the transmitted signal. As mentioned above, the control law is a piecewise-constant static state-feedback of the form: u t = Kx t - T slot , t t < t + 1 ,
    Figure imgb0011

    where the gain K in Rn×m is given.
  • These instants tk' represent the instants where the control input is updated. The closed loop system is thus rewritten as t t t + 1 , x ˙ t = A t x t + B t Kx t - T slot
    Figure imgb0012

    where A (t) = Aµ A(t) and B (t) = B + Δµ B(t). Several authors investigated in guaranteeing the stability of such systems. A continuous-time approach to model sampled-data systems allowing assimilating sampling effects as the ones of a particular delay or aggregating delay formulation has been investigated. They develop stability criteria which take into account the delay δ. However they did not consider the different natures of the transmission and the sampling delay. More especially the additional characteristic of sampled delay which is δ = 1 has not been included and thus leads to conservative conditions.
  • When µ is zero, the discrete-time modelling of such systems is obtained by integrating the differential equation (2) over the interval [t k', tk' + T], for any τ in [0, T ], x t + τ = A τ x t + B τ Kx t - T slot , A ˜ τ = e , B ˜ τ = 0 τ e A τ - θ dθB .
    Figure imgb0013
  • This equality leads to the introduction of a new notation. Define, for all integer k', the function χ T slot : 0 NT × - T slot , 0 R n
    Figure imgb0014
    such that for all τ in [0, NT] and all θ in [-Tslot ,0], χ k' (τ,θ)=x(tk' +τ+θ). The set K NT T slot
    Figure imgb0015
    represents the set of functions defined by χ k T slot
    Figure imgb0016
    as the set of continuous functions from [0, NT]×[-Tslot , 0] to Rn.
  • However, the same discretization method is not valid when the system is subject to time-varying uncertainties. Thus discrete-time analysis of (3) leads to unavoidable difficulties. Thus there is a need for a novel stability conditions to cope with this type of discrete-time systems.
  • The stability of systems subject to varying sampling, constant delay and time-varying uncertainties has thus to be assessed. The main idea is to consider separately the two types of delays. To do so, the stability conditions are based on the discrete-time Lyapunov Theorem but expressed with the continuous-time model of the system. It leads to less conservative necessary conditions.
  • In what follows, there is provided new stability conditions for systems submitted to uncertainties, delays and varying sampling.
  • Since the problem of sampled-data systems is at the boundary of the discrete and the continuous-time theories, the difference between the discrete and continuous-time Lyapunov Theorems is presented. In particular, there is presented a new stability criterion for systems, taken in a continuous-time model, using the discrete-time Lyapunov Theorem.
  • Theorem 1: Consider N , a positive integer. Let V : KTslot → R+ be a differentiable functional, for which there exist real numbers 0 < µ1< µ2 and p > 0 such that x t K , μ 1 x t 0 p V x t μ 2 x t p .
    Figure imgb0017
  • The two following statements are equivalent.
    1. (i) ∀k' ≥ 0, ΔV(k) = V(xt k' +1) - V(xt k' ) < 0;
    2. (ii) There exists a continuous functional ν : R × K T T slot R ,
      Figure imgb0018
      differentiable over the sampling intervals of the form [t k',t k'+1[ which satisfies, for all k ≥ 0 and Υ ∈ [T, NT] ν ϒ χ k T slol = ν 0 χ k T slol .
      Figure imgb0019

      and such that, for all k >0 and for all rin [0, Υ], the following inequality holds W τ χ k T slol < 0 ,
      Figure imgb0020

      where τ = τ(t) = t - t'k and W τ χ k T slol = t V x t + ν τ χ k T slol .
      Figure imgb0021
  • Moreover, if one of these two statements is satisfied, the solutions of system (2) are asymptotically stable.
  • The main idea remains in showing the equivalence between the conditions on the decreasing increment V(k) = V(x t k+1 ) - V(x tk ) < 0 and the existence of a continuous functional which coincides with the Lyapunov function at the sampling instants and which is strictly decreasing within all sampling intervals. The main contribution of Theorem 1 is that the introduction of the functional W allows the Lyapunov-Krasovskii functional V to be locally increasing. For the sake of simplicity, the notation τ, stand for the time-varying sampling delay τ(t).
  • Here, a study on the asymptotic stability of the solutions of sampled-data systems presented in (1) with µ=0 is provided. The objective is to design a functional which satisfies the conditions proposed in Theorem 1.
  • Theorem 2: Consider an integer N and two non negative scalars Tslot and T. Assume that there exist Q > 0, R1 > 0 and R2 > 0 ∈ Sn, P > 0, U > 0 and S1 ∈ S2n and three matrices S2 and X ∈ R2n×2n, Y ∈ R5n×2n that satisfy for j=1,2: Ψ 1 A B = Π 1 T slot + T j Π 2 + T j Π 3 < 0 ,
    Figure imgb0022
    Ψ 2 A B = Π 1 T slot - T j Π 3 T j Y T j Y T - T j U < 0 ,
    Figure imgb0023

    where T 1 = T, T 2 = NT and Π 1 T slot = 2 He N 1 T PN 0 + M 1 T QM 1 - M 2 T QM 2 + M 0 T R 1 + T slot R 2 M 0 - M 2 T R 2 / T slot M 12 - M 5 T R 1 M 5 - M 12 T S 1 N 12 - 2 He YN 12 - 2 He N 2 T S 2 N 12
    Figure imgb0024
    Π 2 = N 0 T U N 0 + 2 He N 0 T S 1 N 12 + S 2 T N 2 ,
    Figure imgb0025
    Π 3 = N 2 T X N 2
    Figure imgb0026

    and
    M 0 = [A 0 0 BK 0], M 1 = [I 0 0 0 0],
    M 2 = [0 I 0 0 0], M 3 = [0 0 I 0 0],
    M 4 = [0 0 0 I 0], M 5 = [0 0 0 0 I]
    N 1 = M 1 T M 2 T T ,
    Figure imgb0027
    N 0 = M 0 T M 5 T T ,
    Figure imgb0028
    N 2 = M 3 T M 4 T T ,
    Figure imgb0029
    M 12 = M 1 - M 2,
    N 12 = N 1 - N 2
  • System (2) is thus asymptotically stable for any asynchronous sampling defined by (T, N) and the delay Tslot.
  • Proof: consider the functional: V t x t x ˙ t = y T t Py t + t - T slot t x T s Qx s ds + t - T slot t x ˙ T s R 1 + T slot - t + s R 2 x ˙ s ds
    Figure imgb0030
    where y(t) = [xT (t) xT (t -Tslot )] T . Note that V corresponds to a classical Lyapunov-Krasovskii functional type to cope with the stability of constant time-delay systems. The objective is here to ensure that the variation of V between two successive sampling instants is negative. This means that Δ V = V t + 1 x t + 1 x ˙ t + 1 - V t k ʹ x t k ʹ x ˙ t k ʹ
    Figure imgb0031
    is definite negative for all positive integer k'. For any integer k', the sampling length is denoted Υk' = tk'+1 - tk' Consider the additional functional V t χ k T slot = ϒ - τ ζ 0 T t S 1 ζ 0 t + 2 S 2 y t k + ϒ - τ t k t y ˙ T s U y ˙ s ds + ϒ - τ τ y T t k Xy t k ,
    Figure imgb0032

    where ζ0(t) = y(t) - y(tk' ), ξ(s) = [yT (s) yT (tk' ) T (s -Tslot )] T .
  • Note that the conditions from Theorem 2 include the robust stability properties with respect to the input delay Tslot. This means that (7) and (8) require the system to be stable at least for the transmission delay Tslot and T = Ti.
  • Now we consider µ#0. It is intended to extend the previous theorem to the case of time-varying uncertainties. In the previous stability theorem, the conditions depend almost linearly on the matrices defining the continuous-time model. Then the following corollary presents an extension of the previous theorem to uncertain and time-varying model.
  • Corollary 1: Consider an integer N and there non negative scalars Tslot, T and µ. Assume that there exist Q > 0, R1> 0 and R2> 0 ∈ Sn, P > 0, U > 0 and S1 ∈ S2n and three matrices S2 and Xi∈ R2n×2n, Y ∈ R5n×2n that that satisfy, for i=1,...,M and j = 1, 2 Ψ 1 i A i B i = Π 1 i T slot + T j Π 2 i + T j Π 3 i < 0 ,
    Figure imgb0033
    Ψ 2 i A i B i = Π 1 i T slot - T j Π 3 i T j Y i T j Y T - T j U < 0 ,
    Figure imgb0034

    where Π 1 i T slot = 2 He N 1 T PN 0 i + M 1 T QM 1 - M 2 T QM 2 + M 0 i T R 1 + T slot R 2 M 0 i - M 2 T R 2 / T slot M 12 - M 5 T R 1 M 5 - M 12 T S 1 N 12 - 2 He Y i N 12 - 2 He N 2 T S 2 N 12
    Figure imgb0035
    Π 2 i = N 0 i T U N 0 i + 2 He N 0 i T S 1 N 12 + S 2 T N 2 ,
    Figure imgb0036
    Π 3 i = N 2 T X i N 2
    Figure imgb0037

    and
    M 0i = [Ai 0 0 BiK 0], N 0 i = M 0 i T M 5 T T ;
    Figure imgb0038
    Ai = A + µAi Bi = B + µBi
  • System (2) is thus asymptotically stable for the periodic sampling defined by T and the delay Tslot.
  • Proof: Consider the stability conditions from Theorem 2. By noting that M 0 t = A t 0 0 B t K 0 = i = 1 M λ i t M 0 i N 0 t = M 0 T t M 5 T = i = 1 M λ i t N 0 i
    Figure imgb0039

    and by introducing the matrices variables Y t = i - 1 M λ i t Y i
    Figure imgb0040
    X t = i - 1 M λ i t X i
    Figure imgb0041

    most of the terms defined in Ψ1( A (t), B (t)) and Ψ2( A (t), B (t) are linear with respect to the time-varying terms. However the terms M 0 T t R 1 + T slot R 2 M 0 t
    Figure imgb0042
    and N 0 T t U N 0 t
    Figure imgb0043
    are still not linear with respect to the matrices M 0(t) and N 0(t). However the Schur complement allows obtaining expressions which become linear with respect to these two time-varying matrices. Then this proves that Ψ 1 A t , B t = i - 1 M λ i t Ψ 1 i A i B i ,
    Figure imgb0044
    Ψ 2 A t , B t = i - 1 M λ i t Ψ 2 i A i B i
    Figure imgb0045
  • Then if all the linear matrix inequalities (LMI) ψ1i(Ai,Bi) and ψ2i(Ai,Bi) are satisfied for i = 1, ... , M , then the conditions of Theorem 2 are also verified for the time-varying system (1).
  • In what follows, the methodology described above is applied to an exemplary study of the pitch control of an F-16 aircraft.
  • The case study applies the application of the robustness approach described above to a weakened scheduling scheme for the pitch controller of an aircraft. In the present example, we only consider the so-called "short period approximation" linearized model of an aircraft around the pitch axis. This model may be given by a state equation: { E x ˙ = Fx + Gu y = Hx
    Figure imgb0046
  • The state vector is x = [α θ q] and the input vector is u = δE where
    • α is the angle of attack
    • θ is the pitch angle
    • q is the pitch rate.
    • δ E is the elevator deflection
  • The transition, control and observation matrices are respectively given by: E = V T - Z α ˙ 0 0 0 1 0 - M α ˙ 0 0 F = Z α - g 0 ʹ sin γ e V T + Z q 0 0 1 M α 0 M q G = Z δ e 0 M δ e , H = 0 0 0 180 / π 0 180 / π 0 0
    Figure imgb0047

    where matrix E is always non-singular in normal flight conditions. The model parameters V T Z α Z ¿ α g 0 ʹ M α M ¿ α γ e Z q M q Z δ e M δ e
    Figure imgb0048
    are the dimensionless derivatives of the standard aircraft which may be found in B. L. Stevens and F. L. Lewis, Aircraft Control and Simulation. Wiley-Interscience, 2003 .
  • Figure 8 is a block-diagram of the pitch control system. A reference signal r is fed to the system and is compared by a comparator 800 with a signal q output by a module 801 representing the model of the F-16 aircraft. The output of the comparator 800 is then fed to an integrator unit 802 the output of which β is fed to a gain (k1) unit 803. Indeed, state-of-the-art pitch control design takes into account the elevator's dynamics, and an integrator is added in the feed-forward channel to ensure a zero steady-state error.
  • The output of the gain unit 803 if fed along with a signal b described hereafter to a summing and inverting unit 804. The output of unit 804 is signal u and is fed to the unit 805 representing the actuators of the aircraft with a first order transfer function. The output δE of the unit 805 is fed to unit 801.
  • Unit 801 outputs signals q and α. The noisy angle of attack α is fed to a low-pass filter unit 806 the output of which is fed to a gain (kα) unit 807. Signal q is fed to a gain (kq) unit 808. The output signals from the gain units 807 and 808 are fed to a summing unit 809 the output of which is signal b.
  • The full controlled plant has an augmented state vector given by [δ q δ E α F β] where α F is the filtered measure of α and β is the output of the integrator. We can then obtain standard state space equation of the form: { x ˙ = Ax + Bu y = Cx
    Figure imgb0049

    where
    A = E -1 F and B = E -1 G. The augmented system has the structure and dimensions instantiated, e.g., in system (16).
  • In our case study, we have considered the F-16 aircraft with the flight conditions given in table I below:
    Variable Nominal xcg=0.3 c xcg=0.38 c
    VT (ft/s) 502.0 502.0 502.0
    α (rad) 0.03691 0.03936 0.03544
    θ (rad) 0.03936 0.03936 0.03544
    q (rad/s) 0 0 0
    Thtl (0-1) 0.1385 0.1485 0.1325
    δE (deg) -0.7588 -1.931 -0.05590
  • The nominal condition is: h = 0ft, xcg = 0.35 c , θ̇, h being the altitude, xcg is the centre of gravity location in fraction of C which is the mean aerodynamic chord of the aircraft. Using the nominal condition and a flight at sea level, we obtain the following numerical values for the pitch model: A = - 1.01887 0.90506 - 0.00215 0 0 0.82225 0 - 0.17555 0 0 0 0 - 20.0 0 0 10.0 0 0 - 10 0 0 - 57.2958 0 0 0
    Figure imgb0050
    B = 0 0 20.2 0 0 , C = 0 0 0 57.2958 0 0 57.2958 0 0 0 0 0 0 0 1 .
    Figure imgb0051
  • An output feedback controller u = Ky = -k αα F - kqq - ki β is designed using standard pole placement giving K = [-0.04238; -0.4098; 0.8426]. The control period is chosen as T=0.08 sec, and the nominal computing slot is chosen as WCET=0.02 sec (considering that the CPU is shared by four control tasks). The matrices Ai and Bi, elements of the convex combination ΔµA(t) and ΔµB(t) are defined in a simple 2 vertices polytope as for i = 1, 2 Ai = (-1) iA and Bi = (-1) iB.
  • Starting from the initial 'hard real-time' pattern described in Figure 4, where a WCET time slot is allocated to the control task with a period T, two weakened scheduling scheme, illustrated in Figure 9, have been considered.
  • In the first case (Case 1), a time slot Tslot < WCET is allocated to the control task, but the system's period T keeps its initial value of Figure 4. In that case some extra time remains to compute other activities between the end of Tslot and the new control activation, i.e. Tothers_new = Tothers + (WCET - Tslot). Some control improvement results from the reduction of the latency from WCET to Tslot.
  • In the second case (Case 2), a time slot Tslot < WCET is allocated to the control task, but the system's period is now also reduced by the same value, i.e. Tnew = T - (WCET - Tslot), while the time remaining for computing other activities remains Tothers as in the initial scheme of Figure 4. In that case control improvement results from both the latency and sampling period reduction.
  • The stability conditions of Theorem 2 are used to find the relations between the computing slot value (given by the ratio ϵ = T slot WCET
    Figure imgb0052
    and the maximum number of consecutive missed deadlines before instability N, for the two cases and for several values of the uncertainty multiplier µ. As already discussed above, the uncertainty multiplier models the uncertainties concerning the parameters of the system. For example, during the flight, the mass, the speed of the aircraft cannot be measured ideally. Therefore, an uncertainty parameter is introduced to reflect the uncontrolled phenomena acting on the parameters. This parameter may also take into account the non-linear behaviour of the real system which has not been introduced during the model linearization.
  • The results of the analysis of Case 1, illustrated in Figure 10 , show that the tolerance of the feedback controller with respect to missed deadlines, measured by N, increases when Tslot is decreased (therefore also decreasing the systematic latency). It also shows that increasingly uncertain systems, with growing values of µ (referenced as µ1, µ2 and µ3), are less tolerant with respect to missed deadlines.
  • The results for Case 2 are illustrated in Figure 11 . The number N of sustainable consecutive missed deadlines is even improved, as the reduction of Tslot induces a decreasing in both the delay and the sampling interval.
  • Nevertheless, decreasing Tslot increases the risk of missing deadlines. For a given distribution of execution times of the control task, the probability of missing deadlines decreases from 1 to 0 as the scheduling factor ϵ = T slot WCET
    Figure imgb0053
    decreases from 1 (Tslot=WCET) to a minimum value where Tslot = BCET (Best Case Execution Time), as represented by the bold curve in Figures 12 and 13 respectively corresponding to the results for Case 1 and Case 2. Assuming that the execution times of the task instances are independent, the probability of reaching the maximum tolerable number of consecutive missed deadlines are given in the same Figures 12 and 13 for the two scheduling cases and for different values of the uncertainty µ. Hence, for a given scheduling scheme and uncertainty assumption, it is possible to compute the ϵ = T slot WCET
    Figure imgb0054
    scheduling factor corresponding at a given failure probability, e.g. requested by some certification process.
  • It is thus possible to refine the execution time and let the system go at a given pace as long as the system's stability is mathematically guaranteed (and also numerically using the LMI's based on the theorems for large-order systems). The system analysis allows evaluating the probability of keeping the system stable by evaluating the probability of reaching the maximum tolerable number of consecutive missed deadlines for each value of ε. The system designer may thus determine a trade-off between Quality of Control, level of fault tolerance and the system's safety.
  • Figures 14a and 14b are logarithmic views of the graph in Figure 12 (Case 1) showing the evolution of the probability for µ1 and µ2 (Figure 14a) and for µ3 (Figure 14b). Figures 15a and 15b are logarithmic views of the graph in Figure 13 (Case 2) showing the evolution of the probability for µ1 and µ2 (Figure 15a) and for µ3 (Figure 15b). The trade-off is likely to be found when ε is larger than 0.5, since for ε below 0.5 P(Nmax) is high. Indeed, the curves in figures 14a, 14b and 15a, 15b show that probability of reaching the maximum tolerable number of consecutive missed deadlines is in the range of 10-9. For example, when µ = µ2 = 0.25 and ε = 0.857 , P(Nmax) = 2.36.10-9.
  • The Inventors have thus shown that the hard real-time assumption upon which most critical control systems are implemented in the prior art can be revisited based on robustness considerations. They have provided new stability conditions for feedback linear systems submitted to delays, varying sampling and uncertainties.
  • When implemented under a weakened scheduling scheme, it happens that a control task misses its deadline. In that case the computation is aborted and the preceding control signal is hold for an extra control period, therefore leading to a varying sampling system.
  • In this framework the new stability condition allows for computing the maximum number of consecutive missed deadlines which can be tolerated by an uncertain system while keeping stability, considering a given scheduling factor.
  • The Inventors have thus provided a basis for system designers for design and implementation rules for finding cost effective trade-offs between embedded computing power, control performance, control robustness and overall fault-tolerance.
  • A computer program according to embodiments may be designed based on the flowchart of Figure 2 and the present description.
  • Figure 16 is a schematic illustration of a system 160 according to embodiments. The system comprises a RAM (Random Access Memory) unit 162 for storing processing data used for computations for implementing a method according to embodiments. The system may also comprise a ROM (Read Only Memory) unit 163 for storing a computer program according to an embodiment. The system further comprises a control unit 161. The control unit may comprise a processor configured for implementing a method according to an embodiment, for example by executing instructions of a computer program according to embodiments. The computer program may be stored in and loaded from the ROM unit 163. The control unit may also comprise other processors dedicated to the execution of tasks of the system. Some of the processor may be main processors used during the normal execution of the tasks and some of the processors may be auxiliary processors used in case of a failure of one or several main processors.
  • The system also comprises an interface unit 164 for receiving commands from a user (such as a pilot) or from a command system (such as a cockpit lever). The system further comprises a sensing unit 165 with a set of sensors (such as a speed sensor or a pitch sensor) for performing measurements used for the control of the system by the control unit and an actuating unit 166 comprising actuators (such as ailerons or engines) for performing actions controlled by the control unit.
  • While the invention has been illustrated and described in detail in the drawings and foregoing description, such illustration and description are to be considered illustrative or exemplary and not restrictive, the invention being not restricted to the disclosed embodiment. Other variations to the disclosed embodiment can be understood and effected by those skilled in the art in practicing the claimed invention, from a study of the drawings, the disclosure and the appended claims.
  • In particular, the present invention is not limited to avionics systems. The present invention may have other applications in control systems for a power plant, a chemical reactor, for an automobile or in other fields.
  • In the claims, the word "comprising" does not exclude other elements or steps, and the indefinite article "a" or "an" does not exclude a plurality. A single processor or other unit may fulfil the functions of several items recited in the claims. The mere fact that different features are recited in mutually different dependent claims does not indicate that a combination of these features cannot be advantageously used. Any reference signs in the claims should not be construed as limiting the scope of the invention.

Claims (10)

  1. A method of controlling a system comprising the following steps:
    - launching (S201) a task, said task being associated with a worst case execution time; and
    - monitoring (S202, S203) the end of the task after a time slot allocated to the execution of the task;
    wherein said time slot is shorter than said worst case execution time,
    wherein said task is launched periodically according to a fixed period of time,

    wherein when the execution of the task does not end before the allocated time slot, the method further comprises outputting (S205) a value calculated based on a previous input value, and
    wherein the time slot is determined so that a statistical maximum number of consecutive tasks that do not end before the time slot is below a performance threshold.
  2. A method according to claim 1, wherein when the execution of the task ends before the allocated time slot, the method further comprises outputting (S204) a value calculated based on a current input value.
  3. A method according to claim 1, further comprising stopping the task and launching the task again at the next period of time with a next input value.
  4. A method according to any one of the preceding claims, wherein the system has a feedback loop.
  5. A method according to any one of the preceding claims, wherein the task corresponds to an instance of a computer program.
  6. A method according to any one of the preceding claims, wherein the task corresponds to a command of an actuator of the system.
  7. A computer program comprising instructions for implementing a method according to any one of the preceding claims when the program is loaded and executed by a programmable apparatus.
  8. A system (160) comprising a control unit (161) configured to carry out a method according to any one of claims 1 to 6.
  9. Aircraft command system comprising a system according to claim 8.
  10. Aircraft comprising a system according to any one of claims 8 and 9.
EP11306103.0A 2011-09-06 2011-09-06 Robust system control method with short execution deadlines Not-in-force EP2568346B1 (en)

Priority Applications (3)

Application Number Priority Date Filing Date Title
EP11306103.0A EP2568346B1 (en) 2011-09-06 2011-09-06 Robust system control method with short execution deadlines
US13/603,206 US9164796B2 (en) 2011-09-06 2012-09-04 Robust system control method with short execution deadlines
CN201210462016.5A CN102981405B (en) 2011-09-06 2012-09-06 With the short robust system control method for performing the time limit

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
EP11306103.0A EP2568346B1 (en) 2011-09-06 2011-09-06 Robust system control method with short execution deadlines

Publications (2)

Publication Number Publication Date
EP2568346A1 EP2568346A1 (en) 2013-03-13
EP2568346B1 true EP2568346B1 (en) 2015-12-30

Family

ID=44719770

Family Applications (1)

Application Number Title Priority Date Filing Date
EP11306103.0A Not-in-force EP2568346B1 (en) 2011-09-06 2011-09-06 Robust system control method with short execution deadlines

Country Status (3)

Country Link
US (1) US9164796B2 (en)
EP (1) EP2568346B1 (en)
CN (1) CN102981405B (en)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE102016107527A1 (en) 2016-04-22 2017-10-26 Beckhoff Automation Gmbh Real-time environment and programmable logic controller
US11880175B2 (en) 2018-12-20 2024-01-23 Beckhoff Automation Gmbh Method for controlling an automation process in real time

Families Citing this family (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20140223436A1 (en) * 2013-02-04 2014-08-07 Avaya Inc. Method, apparatus, and system for providing and using a scheduling delta queue
FR3004274A1 (en) * 2013-04-09 2014-10-10 Krono Safe METHOD OF PERFORMING TASKS IN A CRITICAL TIME-REAL SYSTEM
EP2927763B1 (en) * 2014-04-04 2019-06-19 Abb Ag System and method for an optimized operation of real-time embedded solutions in industrial automation
US20170102968A1 (en) * 2014-05-11 2017-04-13 Safetty Systems Ltd. A monitoring unit as well as method for predicting abnormal operation of time-triggered computer systems
FR3021108B1 (en) * 2014-05-16 2016-05-06 Thales Sa METHOD FOR REAL-TIME SERVICE EXECUTION, IN PARTICULAR FLIGHT MANAGEMENT, AND REAL-TIME SYSTEM USING SUCH A METHOD
US20170337081A1 (en) * 2014-11-12 2017-11-23 Sikorsky Aircraft Corporation Centralized processing for aircraft operations
CN106168760B (en) * 2016-08-01 2019-02-19 西安建筑科技大学 Uncertain time-delayed systems determination of stability method based on convex polyhedron fault model
JP6493506B1 (en) * 2017-12-15 2019-04-03 オムロン株式会社 INDUSTRIAL CONTROL SYSTEM, ITS SUPPORT DEVICE, CONTROL SUPPORT METHOD AND PROGRAM
RU2672617C1 (en) * 2017-12-22 2018-11-16 Федеральное государственное учреждение "Федеральный исследовательский центр "Информатика и управление" Российской академии наук (ФИЦ ИУ РАН) Method for determining innovative objects in information systems
CN108092268B (en) * 2018-01-29 2020-12-08 河南理工大学 Wide area power system stability discrimination method under influence of interval variable time lag
CN108647442B (en) * 2018-05-11 2020-06-19 北京航空航天大学 Auxiliary output-based six-rotor unmanned aerial vehicle fault estimation method
EP3702952A1 (en) * 2019-03-01 2020-09-02 Worldline Scheduling method ensuring security service for real-time system
EP3968108A1 (en) * 2020-09-15 2022-03-16 Siemens Aktiengesellschaft Control of a technical system with a processor for artificial intelligence
CN113800342A (en) * 2021-09-14 2021-12-17 曹琛 Efficient self-adaptive elevator control method

Family Cites Families (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5887143A (en) * 1995-10-26 1999-03-23 Hitachi, Ltd. Apparatus and method for synchronizing execution of programs in a distributed real-time computing system
US6438573B1 (en) * 1996-10-09 2002-08-20 Iowa State University Research Foundation, Inc. Real-time programming method
US6317874B1 (en) * 1998-12-04 2001-11-13 Lucent Technologies, Inc. Linker method and cache structure for minimizing worst-case-execution-time
US7302685B2 (en) * 2000-06-02 2007-11-27 Honeywell International Inc. Methods and apparatus for sharing slack in a time-partitioned system
US7140022B2 (en) * 2000-06-02 2006-11-21 Honeywell International Inc. Method and apparatus for slack stealing with dynamic threads
US20050015767A1 (en) * 2003-07-01 2005-01-20 Brian Nash Operating system configuration tool
JP4433782B2 (en) * 2003-12-17 2010-03-17 株式会社日立製作所 Information processing apparatus and operating system
WO2005116830A1 (en) * 2004-05-27 2005-12-08 Koninklijke Philips Electronics N.V. Signal processing apparatus
DE102004051967A1 (en) 2004-10-25 2006-04-27 Robert Bosch Gmbh Method, operating system and computing device for executing a computer program
US7788667B2 (en) * 2005-04-22 2010-08-31 Gm Global Technology Operations, Inc. Extensible scheduling of tasks in time-triggered distributed embedded systems
US8473563B2 (en) * 2005-04-22 2013-06-25 GM Global Technology Operations LLC Extensible scheduling of messages on time-triggered busses
US20080282246A1 (en) * 2007-05-07 2008-11-13 Danny Dolev Compiler aided ticket scheduling of tasks in a computing system
FR2930355B1 (en) * 2008-04-18 2013-01-18 Commissariat Energie Atomique METHOD FOR MANAGING ENERGY CONSUMPTION FOR MULTIPROCESSOR SYSTEMS.
US8316368B2 (en) * 2009-02-05 2012-11-20 Honeywell International Inc. Safe partition scheduling on multi-core processors
DE102009027627B3 (en) * 2009-07-10 2011-03-17 Wolfgang Pree Gmbh Simulation of real-time software components based on the logical execution time

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE102016107527A1 (en) 2016-04-22 2017-10-26 Beckhoff Automation Gmbh Real-time environment and programmable logic controller
WO2017182467A1 (en) 2016-04-22 2017-10-26 Beckhoff Automation Gmbh Real-time environment and programmable logic controller
US10782667B2 (en) 2016-04-22 2020-09-22 Beckhoff Automation Gmbh Real-time environment and programmable logic controller
US11880175B2 (en) 2018-12-20 2024-01-23 Beckhoff Automation Gmbh Method for controlling an automation process in real time

Also Published As

Publication number Publication date
US9164796B2 (en) 2015-10-20
CN102981405B (en) 2018-07-03
EP2568346A1 (en) 2013-03-13
CN102981405A (en) 2013-03-20
US20130219402A1 (en) 2013-08-22

Similar Documents

Publication Publication Date Title
EP2568346B1 (en) Robust system control method with short execution deadlines
Ernst et al. Mixed criticality systems—a history of misconceptions?
Jaffe et al. Software requirements analysis for real-time process-control systems
JP4016010B2 (en) Real-time scheduling possibility determination method and real-time system
Maggio et al. Control-system stability under consecutive deadline misses constraints
Alfonsi et al. Dynamic event tree analysis through Raven
US9645850B2 (en) Task time allocation method allowing deterministic error recovery in real time
Dai et al. Period adaptation of real-time control tasks with fixed-priority scheduling in cyber-physical systems
Caplan et al. Mapping and scheduling mixed-criticality systems with on-demand redundancy
Cheng et al. End-to-end analysis and design of a drone flight controller
Pazzaglia et al. Adaptive design of real-time control systems subject to sporadic overruns
CN109656775A (en) By the method and apparatus, related computer program and the avionics system that execute time monitoring avionics hardware application program
Hammadeh et al. Weakly-hard real-time guarantees for earliest deadline first scheduling of independent tasks
Alahmad et al. Risk-aware scheduling of dual criticality job systems using demand distributions
Abdi et al. Restart-based fault-tolerance: System design and schedulability analysis
Chetto Real-time systems scheduling 1: fundamentals
CN105528250A (en) Multi-core and multithreaded computer system certainty evaluation and control method
Andrianiaina et al. Robust control under weakened real-time constraints
Xu et al. Enhancing dependability and energy efficiency of cyber-physical systems by dynamic actuator derating
Okamura et al. Optimal trigger time of software rejuvenation under probabilistic opportunities
Craveiro et al. Adaptability support in time-and space-partitioned aerospace systems
Majumder et al. Reliable flight control system architecture for agile airborne platforms: an asymmetric multiprocessing approach
CN103677849B (en) Embedded software credibility guaranteeing method
US20140189709A1 (en) Method of distributing processor loading between real-time processor threads
Sreekumar et al. Enhanced Performance Capability in a Dual Redundant Avionics Platform–Fault Tolerant Scheduling with Comparative Evaluation

Legal Events

Date Code Title Description
PUAI Public reference made under article 153(3) epc to a published international application that has entered the european phase

Free format text: ORIGINAL CODE: 0009012

AK Designated contracting states

Kind code of ref document: A1

Designated state(s): AL AT BE BG CH CY CZ DE DK EE ES FI FR GB GR HR HU IE IS IT LI LT LU LV MC MK MT NL NO PL PT RO RS SE SI SK SM TR

AX Request for extension of the european patent

Extension state: BA ME

17P Request for examination filed

Effective date: 20130906

RBV Designated contracting states (corrected)

Designated state(s): AL AT BE BG CH CY CZ DE DK EE ES FI FR GB GR HR HU IE IS IT LI LT LU LV MC MK MT NL NO PL PT RO RS SE SI SK SM TR

17Q First examination report despatched

Effective date: 20131009

REG Reference to a national code

Ref country code: DE

Ref legal event code: R079

Ref document number: 602011022223

Country of ref document: DE

Free format text: PREVIOUS MAIN CLASS: G05B0019042000

Ipc: G06F0011000000

GRAP Despatch of communication of intention to grant a patent

Free format text: ORIGINAL CODE: EPIDOSNIGR1

RIC1 Information provided on ipc code assigned before grant

Ipc: G06F 9/50 20060101ALI20150723BHEP

Ipc: G06F 11/00 20060101AFI20150723BHEP

Ipc: G06F 9/48 20060101ALI20150723BHEP

Ipc: G05B 19/042 20060101ALI20150723BHEP

INTG Intention to grant announced

Effective date: 20150811

GRAS Grant fee paid

Free format text: ORIGINAL CODE: EPIDOSNIGR3

GRAA (expected) grant

Free format text: ORIGINAL CODE: 0009210

AK Designated contracting states

Kind code of ref document: B1

Designated state(s): AL AT BE BG CH CY CZ DE DK EE ES FI FR GB GR HR HU IE IS IT LI LT LU LV MC MK MT NL NO PL PT RO RS SE SI SK SM TR

REG Reference to a national code

Ref country code: GB

Ref legal event code: FG4D

REG Reference to a national code

Ref country code: CH

Ref legal event code: EP

REG Reference to a national code

Ref country code: AT

Ref legal event code: REF

Ref document number: 767758

Country of ref document: AT

Kind code of ref document: T

Effective date: 20160115

REG Reference to a national code

Ref country code: IE

Ref legal event code: FG4D

REG Reference to a national code

Ref country code: DE

Ref legal event code: R096

Ref document number: 602011022223

Country of ref document: DE

REG Reference to a national code

Ref country code: LT

Ref legal event code: MG4D

PG25 Lapsed in a contracting state [announced via postgrant information from national office to epo]

Ref country code: HR

Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT

Effective date: 20151230

Ref country code: LT

Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT

Effective date: 20151230

Ref country code: NO

Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT

Effective date: 20160330

REG Reference to a national code

Ref country code: NL

Ref legal event code: MP

Effective date: 20151230

REG Reference to a national code

Ref country code: AT

Ref legal event code: MK05

Ref document number: 767758

Country of ref document: AT

Kind code of ref document: T

Effective date: 20151230

PG25 Lapsed in a contracting state [announced via postgrant information from national office to epo]

Ref country code: GR

Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT

Effective date: 20160331

Ref country code: FI

Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT

Effective date: 20151230

Ref country code: LV

Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT

Effective date: 20151230

Ref country code: SE

Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT

Effective date: 20151230

Ref country code: RS

Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT

Effective date: 20151230

PG25 Lapsed in a contracting state [announced via postgrant information from national office to epo]

Ref country code: NL

Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT

Effective date: 20151230

PG25 Lapsed in a contracting state [announced via postgrant information from national office to epo]

Ref country code: IT

Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT

Effective date: 20151230

Ref country code: ES

Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT

Effective date: 20151230

Ref country code: CZ

Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT

Effective date: 20151230

PG25 Lapsed in a contracting state [announced via postgrant information from national office to epo]

Ref country code: IS

Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT

Effective date: 20160430

Ref country code: EE

Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT

Effective date: 20151230

Ref country code: RO

Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT

Effective date: 20151230

Ref country code: PL

Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT

Effective date: 20151230

Ref country code: SK

Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT

Effective date: 20151230

Ref country code: AT

Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT

Effective date: 20151230

Ref country code: SM

Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT

Effective date: 20151230

Ref country code: PT

Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT

Effective date: 20160502

REG Reference to a national code

Ref country code: FR

Ref legal event code: PLFP

Year of fee payment: 6

REG Reference to a national code

Ref country code: DE

Ref legal event code: R097

Ref document number: 602011022223

Country of ref document: DE

PG25 Lapsed in a contracting state [announced via postgrant information from national office to epo]

Ref country code: DK

Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT

Effective date: 20151230

PLBE No opposition filed within time limit

Free format text: ORIGINAL CODE: 0009261

STAA Information on the status of an ep patent application or granted ep patent

Free format text: STATUS: NO OPPOSITION FILED WITHIN TIME LIMIT

26N No opposition filed

Effective date: 20161003

PG25 Lapsed in a contracting state [announced via postgrant information from national office to epo]

Ref country code: BE

Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT

Effective date: 20151230

PG25 Lapsed in a contracting state [announced via postgrant information from national office to epo]

Ref country code: SI

Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT

Effective date: 20151230

PG25 Lapsed in a contracting state [announced via postgrant information from national office to epo]

Ref country code: MC

Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT

Effective date: 20151230

REG Reference to a national code

Ref country code: CH

Ref legal event code: PL

REG Reference to a national code

Ref country code: IE

Ref legal event code: MM4A

PG25 Lapsed in a contracting state [announced via postgrant information from national office to epo]

Ref country code: CH

Free format text: LAPSE BECAUSE OF NON-PAYMENT OF DUE FEES

Effective date: 20160930

Ref country code: IE

Free format text: LAPSE BECAUSE OF NON-PAYMENT OF DUE FEES

Effective date: 20160906

Ref country code: LI

Free format text: LAPSE BECAUSE OF NON-PAYMENT OF DUE FEES

Effective date: 20160930

PG25 Lapsed in a contracting state [announced via postgrant information from national office to epo]

Ref country code: LU

Free format text: LAPSE BECAUSE OF NON-PAYMENT OF DUE FEES

Effective date: 20160906

REG Reference to a national code

Ref country code: FR

Ref legal event code: PLFP

Year of fee payment: 7

PG25 Lapsed in a contracting state [announced via postgrant information from national office to epo]

Ref country code: HU

Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT; INVALID AB INITIO

Effective date: 20110906

Ref country code: CY

Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT

Effective date: 20151230

PG25 Lapsed in a contracting state [announced via postgrant information from national office to epo]

Ref country code: MT

Free format text: LAPSE BECAUSE OF NON-PAYMENT OF DUE FEES

Effective date: 20160930

Ref country code: MK

Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT

Effective date: 20151230

Ref country code: TR

Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT

Effective date: 20151230

PG25 Lapsed in a contracting state [announced via postgrant information from national office to epo]

Ref country code: BG

Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT

Effective date: 20151230

REG Reference to a national code

Ref country code: FR

Ref legal event code: PLFP

Year of fee payment: 8

PG25 Lapsed in a contracting state [announced via postgrant information from national office to epo]

Ref country code: AL

Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT

Effective date: 20151230

PGFP Annual fee paid to national office [announced via postgrant information from national office to epo]

Ref country code: DE

Payment date: 20190918

Year of fee payment: 9

Ref country code: FR

Payment date: 20190927

Year of fee payment: 9

PGFP Annual fee paid to national office [announced via postgrant information from national office to epo]

Ref country code: GB

Payment date: 20190920

Year of fee payment: 9

REG Reference to a national code

Ref country code: DE

Ref legal event code: R119

Ref document number: 602011022223

Country of ref document: DE

GBPC Gb: european patent ceased through non-payment of renewal fee

Effective date: 20200906

PG25 Lapsed in a contracting state [announced via postgrant information from national office to epo]

Ref country code: FR

Free format text: LAPSE BECAUSE OF NON-PAYMENT OF DUE FEES

Effective date: 20200930

Ref country code: DE

Free format text: LAPSE BECAUSE OF NON-PAYMENT OF DUE FEES

Effective date: 20210401

PG25 Lapsed in a contracting state [announced via postgrant information from national office to epo]

Ref country code: GB

Free format text: LAPSE BECAUSE OF NON-PAYMENT OF DUE FEES

Effective date: 20200906