[go: up one dir, main page]
More Web Proxy on the site http://driver.im/ skip to main content
10.1145/2502524.2502540acmconferencesArticle/Chapter ViewAbstractPublication PagesConference Proceedingsacm-pubtype
research-article

Cyber-physical system design contracts

Published: 08 April 2013 Publication History

Abstract

This paper introduces design contracts between control and embedded software engineers for building Cyber-Physical Systems (CPS). CPS design involves a variety of disciplines mastered by teams of engineers with diverse backgrounds. Many system properties influence the design in more than one discipline. The lack of clearly defined interfaces between disciplines burdens the interaction and collaboration. We show how design contracts can facilitate interaction between 2 groups: control and software engineers. A design contract is an agreement on certain properties of the system. Every party specifies requirements and assumptions on the system and the environment. This contract is the central point of interdomain communication and negotiation. Designs can evolve independently if all parties agree to a contract or designs can be modified iteratively in negotiation processes. The main challenge lies in the definition of a concise but sufficient contract. We discuss design contracts that specify timing and functionality, two important properties control and software engineers have to agree upon. Various design approaches have been established and implemented successfully to address timing and functionality. We formulate those approaches as design contracts and propose guidelines on how to choose, derive and employ them. Modeling and simulation support for the design contracts is discussed using an illustrative example.

References

[1]
R. Alur and G. Weiss. Regular specifications of resource requirements for embedded control software. In IEEE Real-Time and Embedded Technology and Applications Symposium, pages 159--168, 2008.
[2]
Artist. Artist roadmaps. http://www.artist-embedded.org/artist/-Roadmaps-.html.
[3]
Artist. Artist2 roadmap on real-time techniques in control. http://www.artist-embedded.org/artist/ARTIST-2-Roadmap-on-Real-Time.html.
[4]
K. Årzén, A. Bicchi, S. Hailes, K. Johansson, and J. Lygeros. On the design and control of wireless networked embedded systems. In Proceedings of the 2006 IEEE Computer Aided Control Systems Design Symposium, Oct. 2006.
[5]
K. Aström and B. Wittenmark. Computer-Controlled Systems: Theory and Design. Prentice-Hall, 3rd edition, 1996.
[6]
I. Bates, A. Cervin, and P. Nightingale. Establishing timing requirements and control attributes for control loops in real-time systems. In ECRTS, 2003.
[7]
A. Benveniste, P. Caspi, S. Edwards, N. Halbwachs, P. Le Guernic, and R. de Simone. The synchronous languages 12 years later. Proc. IEEE, 91(1):64--83, Jan. 2003.
[8]
E. Bini and A. Cervin. Delay-aware period assignment in control systems. In RTSS'08, Washington, DC, USA, 2008. IEEE.
[9]
P. Caspi, D. Pilaud, N. Halbwachs, and J. Plaice. Lustre: a declarative language for programming synchronous systems. In 14th ACM Symp. POPL. ACM, 1987.
[10]
P. Caspi, N. Scaife, C. Sofronis, and S. Tripakis. Semantics-Preserving Multitask Implementation of Synchronous Programs. ACM Transactions on Embedded Computing Systems (TECS), 7(2):1--40, Feb. 2008.
[11]
A. Cervin, K. Årzén, D. Henriksson, M. Lluesma Camps, P. Balbastre, I. Ripoll, and A. Crespo. Control loop timing analysis using TrueTime and Jitterbug. In Proceedings of the 2006 IEEE Computer Aided Control Systems Design Symposium, Oct. 2006.
[12]
A. Cervin and K. Åström. On limit cycles in event-based control systems. In 46th IEEE Conference on Decision and Control, New Orleans, LA, 2007.
[13]
A. Cervin and J. Eker. Control-scheduling codesign of real-time systems: The control server approach. Journal of Embedded Computing, 1(2):209--224, 2005.
[14]
A. Cervin, B. Lincoln, J. Eker, K. Årzén, and G. Buttazzo. The jitter margin and its application in the design of real-time control systems. In RTCSA, Goeteborg, Sweden, Aug. 2004.
[15]
A. Davare, Q. Zhu, M. D. Natale, C. Pinello, S. Kanajan, and A. Sangiovanni-Vincentelli. Period optimization for hard real-time distributed automotive systems. In DAC, pages 278--283. IEEE, 2007.
[16]
L. de Alfaro and T. Henzinger. Interface theories for component-based design. In EMSOFT'01. Springer, LNCS 2211, 2001.
[17]
L. de Alfaro, T. A. Henzinger, and M. I. A. Stoelinga. Timed interfaces. In EMSOFT'02: 2nd Intl. Workshop on Embedded Software, LNCS, pages 108--122. Springer, 2002.
[18]
P. Derler, E. A. Lee, and A. Sangiovanni-Vincentelli. Modeling cyber-physical systems. Proceedings of the IEEE (special issue on CPS), 100(1):13--28, January 2012.
[19]
J. Eker, P. Hagander, and K.-E. Årzén. A feedback scheduler for real-time controller tasks. Control Engineering Practice, 8(12), 2000.
[20]
J. Eker, J. W. Janneck, E. A. Lee, J. Liu, X. Liu, J. Ludvig, S. Neuendorffer, S. Sachs, and Y. Xiong. Taming heterogeneity---the Ptolemy approach. Proceedings of the IEEE, 91(2):127--144, 2003.
[21]
R. Floyd. Assigning meanings to programs. In In. Proc. Symp. on Appl. Math. 19, pages 19--32. American Mathematical Society, 1967.
[22]
P. Garcia, P. Castillo, R. Lozano, and P. Albertos. Robustness with respect to delay uncertainties of a predictor-observer based discrete-time controller. Proceedings of the 45th IEEE CDC, pages 199--204, 2006.
[23]
A. Ghosal, A. Sangiovanni-Vincentelli, C. M. Kirsch, T. A. Henzinger, and D. Iercan. A hierarchical coordination language for interacting real-time tasks. In EMSOFT'06, pages 132--141. ACM, 2006.
[24]
T. Henzinger, C. Kirsch, M. Sanvido, and W. Pree. From control models to real-time code using Giotto. IEEE Control Systems Magazine, 23(1):50--64, 2003.
[25]
C. A. R. Hoare. An axiomatic basis for computer programming. Comm. ACM, 12(10):576--580, 1969.
[26]
C. M. Kirsch and R. Sengupta. The evolution of real-time programming. In Handbook of Real-Time and Embedded Systems, 2006.
[27]
R. Majumdar, I. Saha, and M. Zamani. Performance-aware scheduler synthesis for control systems. In EMSOFT'11. ACM, 2011.
[28]
B. Meyer. Applying "Design by Contract". Computer, 25(10), 1992.
[29]
W. Pree and J. Templ. Modeling with the Timing Definition Language (TDL). In Automotive Software Workshop San Diego (ASWSD 2006) on Model-Driven Development of Reliable Automotive Services, 2006.
[30]
S. Samii, A. Cervin, P. Eles, and Z. Peng. Integrated scheduling and synthesis of control applications on distributed embedded systems. In Design, Automation and Test in Europe, DATE'09, 2009.
[31]
A. Sangiovanni-Vincentelli, W. Damm, and R. Passerone. Taming Dr. Frankenstein: Contract-Based Design for Cyber-Physical Systems. European Journal of Control, 2012. In press.
[32]
B. Sinopoli, L. Schenato, M. Franceschetti, K. Poolla, M. I. Jordan, and S. S. Sastry. Kalman filtering with intermittent observations. IEEE Transactions on Automatic Control, 49:1453--1464, 2004.
[33]
X. Sun, P. Nuzzo, C.-C. Wu, and A. Sangiovanni-Vincentelli. Contract-based system-level composition of analog circuits. In DAC'09, pages 605--610. ACM, 2009.
[34]
M. Törngren. Fundamentals of implementing real-time control applications in distributed computer systems. Real-Time Systems, 14, 1998.
[35]
M. Törngren, S. Tripakis, P. Derler, and E. A. Lee. Design contracts for cyber-physical systems: Making timing assumptions explicit. Technical Report UCB/EECS-2012-191, EECS Dept., UC Berkeley, Aug 2012. http://www.eecs.berkeley.edu/Pubs/TechRpts/2012/EECS-2012-191.html.
[36]
S. Tripakis, B. Lickly, T. A. Henzinger, and E. A. Lee. A theory of synchronous relational interfaces. ACM Trans. on Progr. Lang. and Sys. (TOPLAS), 33(4), July 2011.
[37]
B. Wittenmark, J. Nilsson, and M. Törngren. Timing problems in real-time control systems. In In Proceedings of the American Control Conference, pages 2000--2004, 1995.

Cited By

View all
  • (2024)Automated Generation of Code Contracts: Generative AI to the Rescue?Proceedings of the 23rd ACM SIGPLAN International Conference on Generative Programming: Concepts and Experiences10.1145/3689484.3690738(1-14)Online publication date: 21-Oct-2024
  • (2024)Arduino Meets Raspberry Pi in Automation: An Implementation of State-Based Distributed Control with Round-Robin Scheduling2024 International Russian Automation Conference (RusAutoCon)10.1109/RusAutoCon61949.2024.10694294(109-114)Online publication date: 8-Sep-2024
  • (2024)Human-Autonomy Command (HAC): Directing and Coordinating Human-Machine Systems as Cognitive Capabilities2024 IEEE International Conference on Recent Advances in Systems Science and Engineering (RASSE)10.1109/RASSE64357.2024.10773708(1-9)Online publication date: 6-Nov-2024
  • Show More Cited By

Recommendations

Comments

Please enable JavaScript to view thecomments powered by Disqus.

Information & Contributors

Information

Published In

cover image ACM Conferences
ICCPS '13: Proceedings of the ACM/IEEE 4th International Conference on Cyber-Physical Systems
April 2013
278 pages
ISBN:9781450319966
DOI:10.1145/2502524
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

Publisher

Association for Computing Machinery

New York, NY, United States

Publication History

Published: 08 April 2013

Permissions

Request permissions for this article.

Check for updates

Qualifiers

  • Research-article

Conference

ICCPS '13
Sponsor:

Contributors

Other Metrics

Bibliometrics & Citations

Bibliometrics

Article Metrics

  • Downloads (Last 12 months)43
  • Downloads (Last 6 weeks)4
Reflects downloads up to 15 Jan 2025

Other Metrics

Citations

Cited By

View all
  • (2024)Automated Generation of Code Contracts: Generative AI to the Rescue?Proceedings of the 23rd ACM SIGPLAN International Conference on Generative Programming: Concepts and Experiences10.1145/3689484.3690738(1-14)Online publication date: 21-Oct-2024
  • (2024)Arduino Meets Raspberry Pi in Automation: An Implementation of State-Based Distributed Control with Round-Robin Scheduling2024 International Russian Automation Conference (RusAutoCon)10.1109/RusAutoCon61949.2024.10694294(109-114)Online publication date: 8-Sep-2024
  • (2024)Human-Autonomy Command (HAC): Directing and Coordinating Human-Machine Systems as Cognitive Capabilities2024 IEEE International Conference on Recent Advances in Systems Science and Engineering (RASSE)10.1109/RASSE64357.2024.10773708(1-9)Online publication date: 6-Nov-2024
  • (2023)Test Generation Strategies for Building Failure Models and Explaining Spurious FailuresACM Transactions on Software Engineering and Methodology10.1145/363824633:4(1-32)Online publication date: 21-Dec-2023
  • (2023)Symbiotic CPS Design-Space Exploration through Iterated OptimizationProceedings of Cyber-Physical Systems and Internet of Things Week 202310.1145/3576914.3587525(92-99)Online publication date: 9-May-2023
  • (2023)Contract-Driven Design of Scientific Data Analysis Workflows2023 IEEE 19th International Conference on e-Science (e-Science)10.1109/e-Science58273.2023.10254898(1-10)Online publication date: 9-Oct-2023
  • (2023)Timing-Aware Software-in-the-Loop Simulation of Automotive Applications with FMI 3.02023 ACM/IEEE 26th International Conference on Model Driven Engineering Languages and Systems (MODELS)10.1109/MODELS58315.2023.00022(62-72)Online publication date: 1-Oct-2023
  • (2023)Cognitive Command of Human-Autonomy Systems in EDGE CapabilitiesHCI International 2023 – Late Breaking Posters10.1007/978-3-031-49215-0_19(157-166)Online publication date: 12-Dec-2023
  • (2023)Architecting Autonomous Underwater Vehicles by Adapting Software Product LinesIntegrated Computer Technologies in Mechanical Engineering - 202210.1007/978-3-031-36201-9_59(719-730)Online publication date: 20-Jul-2023
  • (2022)Validation Of EPSim - An Embedded Platform Simulator For Control-Embedded Co-Design2022 Annual Modeling and Simulation Conference (ANNSIM)10.23919/ANNSIM55834.2022.9859452(211-222)Online publication date: 18-Jul-2022
  • 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

Media

Figures

Other

Tables

Share

Share

Share this Publication link

Share on social media