Skip to main content
Log in

A framework for FMI-based co-simulation of human–machine interfaces

  • Theme Section Paper
  • Published:
Software and Systems Modeling Aims and scope Submit manuscript

Abstract

A framework for co-simulation of human–machine interfaces in Cyber-Physical Systems (CPS) is presented. The framework builds on formal (i.e. mathematical) methods. It aims to support the work of formal methods experts in charge of modelling and analysing safety-critical aspects of user interfaces in CPS. To carry out these modelling and analysis activities, formal methods experts usually need to engage with domain experts that may not fully understand the mathematical details of formal analysis results. The framework presented in this work mitigates this communication barrier by allowing formal methods experts to create interactive prototypes driven by formal models. The prototypes closely resemble the visual appearance of the system being developed. They can be used to discuss details of the formal analysis effort without showing any mathematical detail. An existing prototyping toolkit based on formal methods is used as baseline technology. Novel functionalities are developed for automatic generation of interactive prototypes supporting the Functional Mockup Interface (FMI), a de-facto standard technology for simulation of complex systems. Using the FMI interface, the prototypes can be integrated with simulations of other system components. The architecture of the framework is presented, along with a verification of core aspects of its functionalities. A case study based on a medical system is used to demonstrate the capabilities of the framework.

This is a preview of subscription content, log in via an institution to check access.

Access this article

Price excludes VAT (USA)
Tax calculation will be finalised during checkout.

Instant access to the full article PDF.

Fig. 1
Fig. 2
Fig. 3
Fig. 4
Fig. 5
Fig. 6
Fig. 7
Fig. 8
Fig. 9
Fig. 10
Fig. 11
Fig. 12
Fig. 13
Fig. 14

Similar content being viewed by others

Notes

  1. https://github.com/mapalmieri/pvsio-web/tree/master/src/client/app/plugins/FMI.

  2. https://www.youtube.com/watch?v=T0QmUe0bwL8

  3. https://handlebarsjs.com

References

  1. Abel, A., Blochwitz, T., Eichberger, A., Hamann, P., Rein, U.: Functional mock-up interface in mechatronic gearshift simulation for commercial vehicles. In: Proceedings of the 9th International MODELICA Conference, pp. 775–780. Linköping University Electronic Press (2012)

  2. Alur, R., Dill, D.L.: A theory of timed automata. Theor. Comput. Sci. 126(2), 183–235 (1994)

    Article  MathSciNet  Google Scholar 

  3. Arney, D., Goldman, J.M., Bhargav-Spantzel, A., Basu, A., Taborn, M., Pappas, G., Robkin, M.: Simulation of medical device network performance and requirements for an integrated clinical environment. Biomed. Instrum. Technol. 46(4), 308–315 (2012)

    Article  Google Scholar 

  4. Arney, D.A., Jetley, R., Jones, P., Lee, I., Ray, A., Sokolsky, O., Zhang, Y.: Generic infusion pump hazard analysis and safety requirements version 1.0. Technical Reports (CIS), pp. 1–17 (2009)

  5. Behrmann, G., David, A., Larsen, K.G.: A Tutorial on UPPAAL 4.0 (2006). http://www.it.uu.se/research/group/darts/papers/texts/new-tutorial.pdf

  6. Bequette, B.W.: Process Control: Modeling, Design, and Simulation. Prentice Hall Professional, Prentice (2003)

    Google Scholar 

  7. Bernardeschi, C., Domenici, A., Masci, P.: Modeling communication network requirements for an integrated clinical environment in the Prototype Verification System. In: 2016 IEEE Symposium on Computers and Communication (ISCC), pp. 135–140 (2016)

  8. Bernardeschi, C., Domenici, A., Masci, P.: A PVS-simulink integrated environment for model-based analysis of cyber-physical systems. IEEE Trans. Softw. Eng. 44(6), 512–533 (2018)

    Article  Google Scholar 

  9. Bernardeschi, C., Masci, P., Caramella, D., Dell’Osso, R.: The benefits of using interactive device simulations as training material for clinicians: an experience report with a contrast media injector used in CT. SIGBED Rev., Special Issue on Medical Cyber-Physical Systems Workshop 2018 (MCPS’18), vol. 16, no. 2, pp. 41–45 (2019)

  10. Blochwitz, T., Otter, M., Åkesson, J., Arnold, M., Clauß, C., Elmqvist, H., Friedrich, M., Junghanns, A., Mauß, J., Neumerkel, D., Olsson, H., Viel, A.: Functional mockup interface 2.0: the standard for tool independent exchange of simulation models. In: Proceedings of the 9th International Modelica Conference, pp. 173–184. The Modelica Association (2012)

  11. Bolton, M.L., Siminiceanu, R.I., Bass, E.J.: A systematic approach to model checking human-automation interaction using task analytic models. IEEE Trans. Syst. Man Cybern. Part A Syst. Hum. 41(5), 961–976 (2011)

    Article  Google Scholar 

  12. Campos, J.C., Harrison, M.D.: Interaction engineering using the IVY tool. In: Proceedings of the 1st ACM SIGCHI Symposium on Engineering Interactive Computing Systems, pp. 35–44. ACM (2009)

  13. Chaudemar, J.-C., Savicks, V., Butler, M., Colley, J.: Co-simulation of Event-B and Ptolemy II Models via FMI. In: ERTS 2014 “Embedded real time software and systems”, Toulouse, FR (2014)

  14. Diogo Couto, L., Basagiannis, S., Ridouane, El.H., El-Din Mady, A., Hasanagic, M., Gorm Larsen, P.: Injecting formal verification in FMI-based co-simulations of cyber-physical systems. In: Cerone, A., Roveri, M. (eds) Software Engineering and Formal Methods, pp. 284–299. Springer, Cham (2018)

  15. Fritzson, P., Aronsson, P., Lundvall, H., Nyström, K., Pop, A., Saldamli, L., Broman, D.:. The open modelica modeling, simulation, and development environment. In: In Proceedings of the 46th Conference on Simulation and Modeling of the Scandinavian Simulation Society (SIMS2005), pp. 83–90 (2005)

  16. Garro, A., Falcone, A.: On the integration of HLA and FMI for supporting interoperability and reusability in distributed simulation. In: Proceedings of the Symposium on Theory of Modeling & Simulation: DEVS Integrative M&S Symposium, DEVS’15, pp. 9–16. Society for Computer Simulation International (2015)

  17. Girard, J.-Y., Lafont, Y., Taylor, P.: Proofs and Types, volume 7 of Cambridge Tracts in Theoretical Computer Science. Cambridge University Press, Cambridge (1990)

    Google Scholar 

  18. Goderis, A., Brooks, C., Altintas, I., Lee, E.A., Goble, C.: Composing different models of computation in Kepler and Ptolemy II. In: International Conference on Computational Science, pp. 182–190. Springer (2007)

  19. Goldman, J.M.: Medical devices and medical systems—essential safety requirements for equipment comprising the patient-centric integrated clinical environment (ICE)—Part 1: general requirements and conceptual model. ASTM Int. (2008)

  20. Gomes, C., Thule, C., Broman, D., Gorm Larsen, P., Vangheluwe, H.: Co-simulation: a survey. ACM Comput. Surv. 51(3), 49:1–49:33 (2018)

    Article  Google Scholar 

  21. Harrison, M.D., Freitas, L., Drinnan, M., Campos, J.C., Masci, P., di Maria, C., Whitaker, M.: Formal techniques in the safety analysis of software components of a new dialysis machine. Sci. Comput. Program. 175, 17–34 (2019)

    Article  Google Scholar 

  22. Harrison, M.D., Masci, P., Campos, J.C., Curzon, P.: Verification of user interface software: the example of use-related safety requirements and programmable medical devices. IEEE Trans. Hum. Mach. Syst. (to appear) (2017)

  23. Heitmeyer, C., Kirby, J., Labaw, B., Bharadwaj, R.: SCR: A toolset for specifying and analyzing software requirements. In: International Conference on Computer Aided Verification, pp. 526–531. Springer (1998)

  24. Henzinger, T.A., Nicollin, X., Sifakis, J., Yovine, S.: Symbolic model checking for real-time systems. Inf. Comput. 111(2), 193–244 (1994)

    Article  MathSciNet  Google Scholar 

  25. Krammer, M., Marko, N., Benedikt, M.: Interfacing real-time systems for advanced co-simulation-the ACOSAR approach. In: Software Technologies: Applications and Foundations (STAF) Doctoral Symposium/Showcase, pp. 32–39 (2016)

  26. Larsen, P.G., Fitzgerald, J., Woodcock, J., Fritzson, P., Brauer, J., Kleijn, C., Lecomte, T., Pfeil, M., Green, O., Basagiannis, S. et al.: Integrated tool chain for model-based design of Cy-Physical Systems: the INTO-CPS project. In: 2016 2nd International Workshop on Modelling, Analysis, and Control of Complex CPS (CPS Data), pp. 1–6. IEEE (2016)

  27. Masci, P., Mallozzi, P., DeAngelis, F.L., Serugendo, G.D.M, Curzon, P.: Using PVSio-web and SAPERE for rapid prototyping of user interfaces in Integrated Clinical Environments. In: Proceedings of the Workshop on Verification and Assurance (Verisure2015), co-located with CAV2015 (2015)

  28. Masci, P., Curzon, P., Harrison, M., Ayoub, A., Lee, I., Thimbleby, H.: Verification of interactive software for medical devices: PCA infusion pumps and FDA regulation as an example. In: Proceedings of the 5th ACM SIGCHI Symposium on Engineering Interactive Computing Systems, pp. 81–90. ACM (2013)

  29. Masci, P., Oladimeji, P., Zhang, Y., Jones, P., Curzon, P., Thimbleby, H.: PVSio-web 2.0: Joining PVS to HCI, pp. 470–478. Springer, Berlin (2015)

    Google Scholar 

  30. Masci, P., Rukšenas, R., Oladimeji, P., Cauchi, A., Gimblett, A., Li, Y., Curzon, P., Thimbleby, H.: The benefits of formalising design guidelines: a case study on the predictability of drug infusion pumps. Innov. Syst. Softw. Eng. 11(2), 73–93 (2015)

    Article  Google Scholar 

  31. Masci, P., Zhang, Y., Jones, P., Curzon, P., Thimbleby, H.: Formal verification of medical device user interfaces using PVS. In: ETAPS/FASE2014, 17th International Conference on Fundamental Approaches to Software Engineering. Springer, Berlin (2014)

  32. Masci, P., Zhang, Y., Jones, P.L., Oladimeji, P., D’Urso, E., Bernardeschi, C., Curzon, P., Thimbleby, H.: Combining PVSio with stateflow. In: NASA Formal Methods—6th International Symposium, NFM 2014, Houston, TX, USA, April 29–May 1, 2014. Proceedings, pp. 209–214 (2014)

  33. Mauro, G., Thimbleby, H., Domenici, A., Bernardeschi, C.: Extending a user interface prototyping tool with automatic MISRA C code generation. In Dubois, C., Masci, P., Méry, D. (eds). Proceedings of the Third Workshop on Formal Integrated Development Environment, F-IDE@FM 2016, volume 240 of EPTCS, pp. 53–66 (2016)

  34. Muñoz, C.: Rapid prototyping in PVS. Technical report, National Institute of Aerospace, Hampton, VA, USA (2003)

  35. Nagele, T., Hooman, J.: Co-simulation of cyber-physical systems using HLA. In: Proceedings of the IEEE Computing and Communication Workshop and Conference, CCWC’17, pp. 1–6 (2017)

  36. CNN News: Tesla in autopilot mode crashes into fire truck, 2018. http://money.cnn.com/2018/01/23/technology/tesla-fire-truck-crash/index.html

  37. CNN News: Uber self-driving car kills pedestrian in first fatal autonomous crash, 2018. http://money.cnn.com/2018/03/19/technology/uber-autonomous-car-fatal-crash/index.html

  38. Owre, S., Rushby, J., Shankar, N., Stringer-Calvert, D.: PVS: an experience report. In: Applied Formal Methods, number 531 in LNCS, pp. 338–345. Springer (1998)

  39. Owre, S., Rushby, J.M., Shankar, N.: PVS: a prototype verification system. In: Kapur, D. (ed.) Automated Deduction – CADE-11. Lecture Notes in Computer Science, vol. 607, pp. 748–752. Springer, Berlin (1992)

    Google Scholar 

  40. Owre, S., Rushby, J., Shankar, N., Von Henke, F.: Formal verification for fault-tolerant architectures: prolegomena to the design of PVS. IEEE Trans. Softw. Eng. 21(2), 107–125 (1995)

    Article  Google Scholar 

  41. Pajic, M., Mangharam, R., Sokolsky, O., Arney, D., Goldman, J., Lee, I.: Model-driven safety analysis of closed-loop medical systems. IEEE Trans. Ind. Inform. 10(1), 3–16 (2014)

    Article  Google Scholar 

  42. Palensky, P., Van Der Meer, A.A., Lopez, C.D., Joseph, A., Pan, K.: Cosimulation of intelligent power systems: fundamentals, software architecture, numerics, and coupling. IEEE Ind. Electron. Mag. 11(1), 34–50 (2017)

    Article  Google Scholar 

  43. Palensky, P., van der Meer, A., Lopez, C., Joseph, A., Pan, K.: Applied cosimulation of intelligent power systems: implementing hybrid simulators for complex power systems. IEEE Ind. Electron. Mag. 11(2), 6–21 (2017)

    Article  Google Scholar 

  44. Palmieri, M., Bernardeschi, C, Masci, P.: Co-simulation of semi-autonomous systems: the line follower robot case study. In: Cerone, A. Roveri, M (eds.) Software Engineering and Formal Methods—SEFM 2017 Collocated Workshops, Revised Selected Papers, volume 10729 of Lecture Notes in Computer Science, pp. 423–437. Springer (2017)

  45. Palmieri, M., Bernardeschi, C., Masci, P.: A flexible framework for FMI-based co-simulation of human-centred cyber-physical systems. In: Mazzara, M., Ober, I., Salaün, G. (eds.) Software Technologies: Applications and Foundations - STAF 2018 Collocated Workshops, Revised Selected Papers, volume 11176 of Lecture Notes in Computer Science, pp. 21–33. Springer (2018)

  46. Paterno, F., Santoro, C., Davide Spano L.: MARIA: a universal, declarative, multiple abstraction-level language for service-oriented applications in ubiquitous environments. ACM Transactions on Computer–Human Interaction (TOCHI), 16 (2009)

  47. Pedersen, N., Bojsen, T., Madsen, J.: Co-simulation of cyber physical systems with HMI for human in the loop investigations. In: Proceedings of the Symposium on Theory of Modeling & Simulation, TMS/DEVS ’17, pp. 1:1–1:12. Society for Computer Simulation International, San Diego, CA (2017)

  48. Sander, I., Jantsch, A.: System modeling and transformational design refinement in ForSyDe [formal system design]. IEEE Trans. Comput. Aided Des. Integr. Circuits Syst. 23(1), 17–32 (2004)

    Article  Google Scholar 

  49. Thule, C., Lausdahl, K., Gomes, C., Meisl, G., Gorm Larsen, P.: Maestro: the INTO-CPS co-simulation framework. Simul. Model. Pract. Theory 92, 45–61 (2019)

    Article  Google Scholar 

  50. Wang, B., Baras, J.S.: HybridSim: a modeling and co-simulation toolchain for cyber-physical systems. In: 2013 IEEE/ACM 17th International Symposium on Distributed Simulation and Real Time Applications, pp. 33–40 (2013)

  51. Zambonelli, F., Omicini, A., Anzengru, B., Castelli, G., De Angelis, F.L., Di Marzo Serugendo, G., Dobson, S., Luis Fernandez-Marquez, J., Ferscha, A., Mamei, M. et al.: Developing pervasive multi-agent systems with nature-inspired coordination. Pervasive Mob. Comput. 17, 236–252 (2015)

  52. Zeyda, F., Ouy, J., Foster, S., Cavalcanti, A.: Formalising cosimulation models. In: Cerone, A., Roveri, M. (eds.) Software Engineering and Formal Methods, pp. 453–468. Springer International Publishing, Cham (2018)

Download references

Acknowledgements

The authors would like to thank the anonymous reviewers for their useful comments and suggestions. The authors would also thank the INTO-CPS association for providing the co-simulation environment. Work partially supported by the Italian Ministry of Education and Research (MIUR) in the framework of the CrossLab project (Departments of Excellence).

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Cinzia Bernardeschi.

Additional information

Communicated by Prof. John Fitzgerald, Peter Larsen, and Fuyuki Ishikawa.

Publisher's Note

Springer Nature remains neutral with regard to jurisdictional claims in published maps and institutional affiliations.

Rights and permissions

Reprints and permissions

About this article

Check for updates. Verify currency and authenticity via CrossMark

Cite this article

Palmieri, M., Bernardeschi, C. & Masci, P. A framework for FMI-based co-simulation of human–machine interfaces. Softw Syst Model 19, 601–623 (2020). https://doi.org/10.1007/s10270-019-00754-9

Download citation

  • Received:

  • Revised:

  • Accepted:

  • Published:

  • Issue Date:

  • DOI: https://doi.org/10.1007/s10270-019-00754-9

Keywords

Navigation