Abstract
Simulation is a favoured technique for analysis of cyber-physical systems. With their increase in complexity, co-simulation, which involves the coordinated use of heterogeneous models and tools, has become widespread. An industry standard, FMI, has been developed to support orchestration; we provide the first behavioural semantics of FMI. We use the state-rich process algebra, \({{\textsf {\textit{Circus}}}}\), to present our modelling approach, and indicate how models can be automatically generated from a description of the individual simulations and their dependencies. We illustrate the work using three algorithms for orchestration. A stateless version of the models can be verified using model checking via translation to CSP. With that, we can prove important properties of these algorithms, like termination and determinism, for example. We also show that the example provided in the FMI standard is not a valid algorithm.
Access this chapter
Tax calculation will be finalised at checkout
Purchases are for personal use only
Similar content being viewed by others
References
Abrial, J.R.: Modeling in Event-B-System and Software Engineering. Cambridge University Press, Cambridge (2010)
Bastian, J., Clauß, C., Wolf, S., Schneider, P.: Master for co-simulation using FMI. In: Modelica Conference (2011)
Bradfield, J., Stirling, C.: Verifying temporal properties of processes. In: Baeten, J.C.M., Klop, J.W. (eds.) CONCUR 1990. LNCS, vol. 458, pp. 115–125. Springer, Heidelberg (1990). doi:10.1007/BFb0039055
Broman, D., et al.: Determinate composition of FMUs for co-simulation. In: ACM SIGBED International Conference on Embedded Software. IEEE (2013)
Broman, D., et al.: Requirements for hybrid cosimulation standards. In: 18th International Conference on Hybrid Systems: Computation and Control, pp. 179–188. ACM (2015)
Butterfield, A., Sherif, A., Woodcock, J.: Slotted-circus. In: Davies, J., Gibbons, J. (eds.) IFM 2007. LNCS, vol. 4591, pp. 75–97. Springer, Heidelberg (2007). doi:10.1007/978-3-540-73210-5_5
Cavalcanti, A.L.C., Clayton, P., O’Halloran, C.: From control law diagrams to ada via \({\sf Circus}\). Formal Aspects Comput. 23(4), 465–512 (2011)
Cavalcanti, A.L.C., Sampaio, A.C.A., Woodcock, J.C.P.: A refinement strategy for \({\sf Circus}\). Formal Aspects Comput. 15(2–3), 146–181 (2003)
Denil, J., et al.: Explicit semantic adaptation of hybrid formalisms for FMI co-simulation. In: Spring Simulation Multi-Conference (2015)
Derler, P., Lee, E.A., Vincentelli, A.S.: Modeling cyber-physical systems. Proc. IEEE 100(1), 13–28 (2012)
Feldman, Y.A., Greenberg, L., Palachi, E.: Simulating Rhapsody SysML blocks in hybrid models with FMI. In: Modelica Conference (2014)
FMI development group: Functional mock-up interface for model exchange and co-simulation, 2.0. (2014). https://www.fmi-standard.org
Foster, S., et al.: Towards a UTP semantics for Modelica. In: Unifying Theories of Programming. LNCS. Springer (2016)
Foster, S., Zeyda, F., Woodcock, J.: Isabelle/UTP: a mechanised theory engineering framework. In: Naumann, D. (ed.) UTP 2014. LNCS, vol. 8963, pp. 21–41. Springer, Heidelberg (2015). doi:10.1007/978-3-319-14806-9_2
Gheorghe, L., et al.: A formalization of global simulation models for continuous/discrete systems. In: Summer Computer Simulation Conference, pp. 559–566. Society for Computer Simulation International (2007)
Gibson-Robinson, T., et al.: FDR3–a modern refinement checker for CSP. In: Tools and Algorithms for the Construction and Analysis of Systems, pp. 187–201 (2014)
Hoare, C.A.R.: Communicating Sequential Processes. Prentice-Hall, Upper Saddle River (1985)
Kübler, R., Schiehlen, W.: Two methods of simulator coupling. Math. Comput. Modell. Dynamical Syst. 6(2), 93–113 (2000)
The MathWorks Inc: Simulink. www.mathworks.com/products/simulink
Oliveira, M., Cavalcanti, A.: From \(\sf {Circus}\) to JCSP. In: Davies, J., Schulte, W., Barnett, M. (eds.) ICFEM 2004. LNCS, vol. 3308, pp. 320–340. Springer, Heidelberg (2004). doi:10.1007/978-3-540-30482-1_29
Oliveira, M.V.M., Cavalcanti, A.L.C., Woodcock, J.C.P.: A UTP semantics for \({\sf Circus}\). Formal Aspects Comput. 21(1–2), 3–32 (2009)
Pohlmann, U., et al.: Generating functional mockup units from software specifications. In: Modelica Conference (2012)
Roscoe, A.W.: Understanding concurrent systems. In: Texts in Computer Science. Springer (2011)
Savicks, V., et al.: Co-simulating event-b and continuous models via FMI. In: Summer Simulation Multiconference, pp. 37:1–37:8. Society for Computer Simulation International (2014)
Tripakis, S.: Bridging the semantic gap between heterogeneous modeling formalisms and FMI. In: International Conference on Embedded Computer Systems: Architectures, Modeling, and Simulation, pp. 60–69. IEEE (2015)
Woodcock, J.C.P., Davies, J.: Using Z-Specification, Refinement, and Proof. Prentice-Hall, New York (1996)
Acknowledgements
The work is funded by the EU INTO-CPS project (Horizon 2020, 664047). Ana Cavalcanti and Jim Woodcock are also funded by the EPSRC grant EP/M025756/1. Anonymous referees have made insightful suggestions. No new primary data were created during this study.
Author information
Authors and Affiliations
Corresponding author
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2016 Springer International Publishing AG
About this paper
Cite this paper
Cavalcanti, A., Woodcock, J., Amálio, N. (2016). Behavioural Models for FMI Co-simulations. In: Sampaio, A., Wang, F. (eds) Theoretical Aspects of Computing – ICTAC 2016. ICTAC 2016. Lecture Notes in Computer Science(), vol 9965. Springer, Cham. https://doi.org/10.1007/978-3-319-46750-4_15
Download citation
DOI: https://doi.org/10.1007/978-3-319-46750-4_15
Published:
Publisher Name: Springer, Cham
Print ISBN: 978-3-319-46749-8
Online ISBN: 978-3-319-46750-4
eBook Packages: Computer ScienceComputer Science (R0)