Conference article

A Software Architecture for Simulation and Visualisation based on the Functional Mock-up Interface and Web Technologies

Lars Ivar Hatledal
Department of Maritime Technology and Operations, Aalesund University College, Norway

Hans Georg Schaathun
Department of Engineering and Natural Sciences, Aalesund University College, Norway

Houxiang Zhang
Department of Maritime Technology and Operations, Aalesund University College, Norway

Download article

Published in: Proceedings of the 56th Conference on Simulation and Modelling (SIMS 56), October, 7-9, 2015, Linköping University, Sweden

Linköping Electronic Conference Proceedings 119:12, s. 123-129

Show more +

Published: 2015-11-25

ISBN: 978-91-7685-900-1

ISSN: 1650-3686 (print), 1650-3740 (online)


This paper presents a software architecture for a collaborative virtual environment (CVE) for simulation and visualisation based on the Functional Mock-up Interface (FMI) for co-simulation and web technologies. FMI has been chosen in order to have a standardised and independent interface to models created in different modelling tools. The user interface has been implemented using web technologies, which enables a very high degree of flexibility. The Web Graphics Library (WebGL) is used for interactive 3D visualisations, enabling native cross-platform rendering directly in the browser without the need of installing any additional plug-ins. Employing the bi-directional communication capabilities of the WebSocket protocol, multiple users can interact with the same simulation models simultaneously. A software prototype has been developed in order to demonstrate the applicability of the proposed architecture. As a case study, we have considered virtual prototyping of marine cranes, to illustrate the use on real world problems.


Functional Mock-up Interface; WebGL; Virtual Prototyping; Web based Simulation


Torsten Blochwitz, Martin Otter, Johan Åkesson, Martin Arnold, Christoph Clauss, Hilding Elmqvist, Markus Friedrich, Andreas Junghanns, Jakob Mauss, Dietmar Neumerkel, et al. Functional mockup interface 2.0: The standard for tool independent exchange of simulation models. In 9th International Modelica Conference, 2012.

James Byrne, Cathal Heavey, and P.J. Byrne. A review of webbased simulation and supporting tools. Simulation Modelling Practice and Theory, 18(3):253 – 276, 2010. ISSN 1569-190X. doi: URL

Ricardo Cabello. Three. js. URL: https://github. com/mr-doob/three.js, 2010.

F De Filippo, A Stork, H Schmedt, and F Bruno. A modular architecture for a driving simulator based on the FDMU approach. International Journal on Interactive Design and Manufacturing (IJIDeM), 8(2):139–150, 2014.

Vincent Delafossei, Scott Stantoni, Takayuki Sekisue, and Junsik Yun. A methodology to use simulation at every stage of a hybrid vehicle design. In IEEE Vehicle Power and Propulsion Conference, October 2012.

Ian Fette and Alexey Melnikov. The websocket protocol. 2011.

GDAL Development Team. GDAL - Geospatial Data Abstraction Library, Version 1.11.2. Open Source Geospatial Foundation, 2015.

Lars I Hatledal, Filippo Sanfilippo, and Zhang Houxiang. A voxel-based numerical method for computing and visualising the workspace of offshore cranes. ASME 34th International Conference on Ocean, Offshore and Arctic Engineering, 2015.

javaFMI Development Team. javafmi. URL:, 2013.

Ben Kenwright. A beginners guide to dual-quaternions: what they are, how they work, and how to use them for 3d character hierarchies. 2012.

Salvatore Loreto, P Saint-Andre, S Salsano, and G Wilkins. Known issues and best practices for the use of long polling and streaming in bidirectional http. Internet Engineering Task Force, Request for Comments, 6202(2070-1721):32, 2011.

Chris Marrin. WebGL specification. Khronos WebGL Working Group, 2011.

TH McMullen, KA Hawick, VD Preez, and B Pearce. Graphics on web platforms for complex systems modelling and simulation. In Proc. International Conference on Computer Graphics and Virtual Reality (CGVR’12), pages 83–89, 2012.

Himanshu Neema, Jesse Gohl, Zsolt Lattmann, Janos Sztipanovits, Gabor Karsai, Sandeep Neema, Ted Bapty, John Batteh, Hubertus Tummescheit, and Chandrasekar Sureshkumar. Model-based integration platform for fmi co-simulation and heterogeneous simulations of cyber-physical systems. In 10th International Modelica Conference, pages 10–12, 2014.

Xiufeng Pang, Raj Dye, Thierry S Nouidui, Michael Wetter, and Joe J Deringer. Linking interactive Modelica simulations to HTML5 using the functional mockup interface for the LearnHPB platform. August 2013.

Jan Pe?civa. A summary of active transactions in collaborative virtual environments. In Proceedings of the Annual Strathmore University ICT Conference 2008, pages 1–1, 2008. URL

Kenton Varda. Protocol buffers: Googles data interchange format, 2008.

Hongwei Wang and Heming Zhang. Using collaborative computing technologies to enable the sharing and integration of simulation services for product design. Simulation Modelling Practice and Theory, 27:47 – 64, 2012. ISSN 1569-190X. doi: URL

PBT Weustink, TJA De Vries, and PC Breedveld. Objectoriented modeling and simulation of mechatronic systems with 20-sim 3.0. Mechatronics, 98:873–787, 1998.

D Wirtz. Protobuf. js. URL: https://github. com/dcodeIO/Proto-Buf.js, 2013.

Chu Yingguang, Lars I Hatledal, Filippo Sanfilippo, Hans G Schaathun, Vilmar Æsøy, and Zhang Houxiang. Virtual prototyping system for maritime crane design and operation based on functional mock-up interface. OCEANS: Discovering Sustainable Ocean Energy for a new World, 2015.

Heming Zhang, Hongwei Wang, David Chen, and Gregory Zacharewicz. A model-driven approach to multidisciplinary collaborative simulation for virtual product development. Advanced Engineering Informatics, 24(2):167–179, 2010.

Sven Meyer zu Eissen and Benno Stein. Realization of web-based simulation services. Computers in Industry, 57(3):261 – 271, 2006. ISSN 0166-3615. doi: URL Advanced Computer Support of Engineering and Service Processes of Virtual Enterprises Advanced Computer Support Special Issue.

Citations in Crossref