Location via proxy:   [ UP ]  
[Report a bug]   [Manage cookies]                
skip to main content
10.1145/1879021.1879024acmconferencesArticle/Chapter ViewAbstractPublication PagesesweekConference Proceedingsconference-collections
research-article

Automatic verification of control system implementations

Published: 24 October 2010 Publication History

Abstract

Software implementations of controllers for physical subsystems form the core of many modern safety-critical systems such as aircraft flight control and automotive engine control. A fundamental property of such implementations is stability, the guarantee that the physical plant converges to a desired behavior under the actions of the controller. We present a methodology and a tool to perform automated static analysis of embedded controller code for stability of the controlled physical system.
The design of controllers for physical systems provides not only the controllers but also mathematical proofs of their stability under idealized mathematical models. Unfortunately, since these models do not capture most of the implementation details, it is not always clear if the stability properties are retained by the software implementation, either because of software bugs, or because of imprecisions arising from fixed-precision arithmetic or timing.
Our methodology is based on the following separation of concerns. First, we analyze the controller mathematical models to derive bounds on the implementation errors that can be tolerated while still guaranteeing stability. Second, we automatically analyze the controller software to check if the maximal implementation error is within the tolerance bound computed in the first step.
We have implemented this methodology in Costan, a tool to check stability for controller implementations. Using Costan, we analyzed a set of control examples whose mathematical models are given in Matlab/Simulink and whose C implementation is generated using Real-Time Workshop. Unlike previous static analysis research, which has focused on proving low-level runtime properties such as absence of buffer overruns or arithmetic overflows, our technique combines analysis of the mathematical controller models and automated analysis of source code to guarantee application-level stability properties.

References

[1]
F. Alegre, E. Feron, and S. Pande. Using ellipsoidal domains to analyze control systems software. CoRR, abs/0909.1977, 2009.
[2]
P.J. Antsaklis and A.N. Michel. Linear Systems. McGraw-Hill, 1997.
[3]
K. J. Astrom and R. M. Murray. Feedback Systems: An Introduction for Scientists and Engineers. Princeton University Press, Princeton and Oxford, 2009.
[4]
B. Blanchet, P. Cousot, R. Cousot, J. Feret, L. Mauborgne, A. Miné, D. Monniaux, and X. Rival. A static analyzer for large safety-critical software. In PLDI, pages 196--207. ACM, 2003.
[5]
O. Bouissou, E. Goubault, S. Putot, K. Tekkal, and F. Védrine. HybridFluctuat: A static analyzer of numerical programs within a continuous environment. In CAV, LNCS 5643, pages 620--626. Springer, 2009.
[6]
A. Brillout, D. Kroening, and T. Wahl. Mixed abstractions for floating-point arithmetic. In FMCAD, pages 69--76. IEEE, 2009.
[7]
J. Canny. Some algebraic and geometric computations in PSPACE. In STOC, pages 460--467. ACM, 1988.
[8]
T. Chen and B.A. Francis. Optimal Sampled-Data Control Systems. Springer-Verlag New York, Inc. Secaucus, NJ, USA, 1995.
[9]
P. Cousot. Integrating physical systems in the static analysis of embedded control software. In APLAS, pages 135--138, 2005.
[10]
D. Delmas, E. Goubault, S. Putot, J. Souyris, K. Tekkal, and F. Védrine. Towards an industrial use of FLUCTUAT on safety-critical avionics software. In FMICS, LNCS 5825, pages 53--69. Springer, 2009.
[11]
B. Dutertre and L. de Moura. A fast linear-arithmetic solver for DPLL(T). In CAV, LNCS 4144, pages 81--94. Springer, 2006.
[12]
G. Fainekos, S. Sankaranarayanan, F. Ivančić, and A. Gupta. Robustness of model based simulation. In Real Time Systems Symposium, pages 345--354. IEEE, 2009.
[13]
J. Feret. Static analysis of digital filters. In ESOP, LNCS 2986, pages 33--48. Springer, 2004.
[14]
E. Feron and F. Alegre. Control software analysis, part I open-loop properties. CoRR, abs/0809.4812, 2008.
[15]
E. Feron and F. Alegre. Control software analysis, part II closed-loop analysis. CoRR, abs/0812.1986, 2008.
[16]
M. Fränzle, C. Herde, S. Ratschan, T. Schubert, and T. Teige. Efficient solving of large non-linear arithmetic constraint systems with complex boolean structure. J. SAT, 1:209--236, 2007.
[17]
E. Goubault, S. Putot, P. Baufreton, and J. Gassino. Static analysis of the accuracy in control systems: Principles and experiments. In FMICS, LNCS 4916, pages 3--20. Springer, 2007.
[18]
E. Goubault, S. Putot, and M. Martel. Some future challenges in the validation of control systems. In ERTS, 2006.
[19]
B. Kisacanin and G. C. Agarwal. Linear Control Systems. Kluwer Academic/Plenum Publishers, 2002.
[20]
M. Krstic and P.V. Kokotovic. Lean backstepping design for a jet engine compressor model. 4th IEEE Conference on Control Applications, pages 1047--1052, 1995.
[21]
P. McLane, L. Peppard, and K. Sundareswaran. Decentralized feedback controls for the brakeless operation of multilocomotive powered trains. IEEE Transactions on Automatic Control, 21(3):358--363, 1976.
[22]
A. Tarski. A Decision Method for Elementary Algebra and Geometry. University of California Press, Berkeley and Los Angeles, 1951.
[23]
G. Winskel. The formal semantics of programming languages: an introduction. MIT Press, 1993.
[24]
S. H. Zak. Systems and Control. Oxford University Press, New York and Oxford, 2003.

Cited By

View all
  • (2021)Regime Inference for Sound Floating-Point OptimizationsACM Transactions on Embedded Computing Systems10.1145/347701220:5s(1-23)Online publication date: 17-Sep-2021
  • (2021)Real-Time Error Detection in Nonlinear Control Systems Using Machine Learning Assisted State-Space EncodingIEEE Transactions on Dependable and Secure Computing10.1109/TDSC.2019.290304918:2(576-592)Online publication date: 1-Mar-2021
  • (2021)Bit-Precise Verification of Discontinuity Errors Under Fixed-Point ArithmeticSoftware Engineering and Formal Methods10.1007/978-3-030-92124-8_25(443-460)Online publication date: 3-Dec-2021
  • Show More Cited By

Recommendations

Comments

Information & Contributors

Information

Published In

cover image ACM Conferences
EMSOFT '10: Proceedings of the tenth ACM international conference on Embedded software
October 2010
318 pages
ISBN:9781605589046
DOI:10.1145/1879021
Permission to make digital or hard copies of all or part of this work for personal or classroom use is granted without fee provided that copies are not made or distributed for profit or commercial advantage and that copies bear this notice and the full citation on the first page. Copyrights for components of this work owned by others than ACM must be honored. Abstracting with credit is permitted. To copy otherwise, or republish, to post on servers or to redistribute to lists, requires prior specific permission and/or a fee. Request permissions from [email protected]

Sponsors

In-Cooperation

  • CEDA
  • IEEE CAS
  • IEEE CS

Publisher

Association for Computing Machinery

New York, NY, United States

Publication History

Published: 24 October 2010

Permissions

Request permissions for this article.

Check for updates

Author Tags

  1. controller design
  2. fixed-point arithmetic
  3. program analysis
  4. stability

Qualifiers

  • Research-article

Conference

ESWeek '10
ESWeek '10: Sixth Embedded Systems Week
October 24 - 29, 2010
Arizona, Scottsdale, USA

Acceptance Rates

Overall Acceptance Rate 60 of 203 submissions, 30%

Contributors

Other Metrics

Bibliometrics & Citations

Bibliometrics

Article Metrics

  • Downloads (Last 12 months)14
  • Downloads (Last 6 weeks)6
Reflects downloads up to 26 Jan 2025

Other Metrics

Citations

Cited By

View all
  • (2021)Regime Inference for Sound Floating-Point OptimizationsACM Transactions on Embedded Computing Systems10.1145/347701220:5s(1-23)Online publication date: 17-Sep-2021
  • (2021)Real-Time Error Detection in Nonlinear Control Systems Using Machine Learning Assisted State-Space EncodingIEEE Transactions on Dependable and Secure Computing10.1109/TDSC.2019.290304918:2(576-592)Online publication date: 1-Mar-2021
  • (2021)Bit-Precise Verification of Discontinuity Errors Under Fixed-Point ArithmeticSoftware Engineering and Formal Methods10.1007/978-3-030-92124-8_25(443-460)Online publication date: 3-Dec-2021
  • (2020)An SMT Theory of Fixed-Point ArithmeticAutomated Reasoning10.1007/978-3-030-51074-9_2(13-31)Online publication date: 1-Jul-2020
  • (2019)Empirical Testing of Automotive Cyber-Physical Systems with Credible Software-in-the-Loop Environments2019 IEEE International Conference on Connected Vehicles and Expo (ICCVE)10.1109/ICCVE45908.2019.8965169(1-6)Online publication date: Nov-2019
  • (2019)Verifying fragility in digital systems with uncertainties using DSVerifier v2.0Journal of Systems and Software10.1016/j.jss.2019.03.015153:C(22-43)Online publication date: 1-Jul-2019
  • (2019)Automated formal synthesis of provably safe digital controllers for continuous plantsActa Informatica10.1007/s00236-019-00359-1Online publication date: 6-Dec-2019
  • (2019)Model‐Based Engineering with Application to AutonomyComplexity Challenges in Cyber Physical Systems10.1002/9781119552482.ch10(255-285)Online publication date: 13-Dec-2019
  • (2018)Embedded software for robotics: challenges and future directionsProceedings of the International Conference on Embedded Software10.5555/3283535.3283545(1-10)Online publication date: 30-Sep-2018
  • (2018)A Verified Certificate Checker for Finite-Precision Error Bounds in Coq and HOL42018 Formal Methods in Computer Aided Design (FMCAD)10.23919/FMCAD.2018.8603019(1-10)Online publication date: Oct-2018
  • Show More Cited By

View Options

Login options

View options

PDF

View or Download as a PDF file.

PDF

eReader

View online with eReader.

eReader

Figures

Tables

Media

Share

Share

Share this Publication link

Share on social media