The SimGen Prototyping Tool: Facilitating Generation of 3D Simulations

Loading...
Thumbnail Image

Date

Authors

Pasternak, Michal

Journal Title

Journal ISSN

Volume Title

Publisher

Abstract

Simulation and 3D animation have become a critical aspect of developing and testing hardware and software systems throughout many domains. The availability of compu- tational power, and development of techniques and tools has made 3D environments prevalent on even the most common devices. Embedded systems which control hard- ware from alarm clocks to rockets are increasingly starting to be developed using a Model Driven Development (MDD) approach. MDD currently suffers from a lack of supporting tooling and can stand to greatly benefit from the integration of simulation. This presents an opportunity for a tool that can quickly produce a 3D simulation and animation environment, and easily connect with generated applications to test these embedded systems. Significant parts of the process of creating simulations in Unity, one of the most powerful game engines in today’s market, were automated through the use of a Do- main Specific Language (DSL). Scripts generated according to the specification of the user expressed using the DSL, are used to automatically create a fully functional simulation environment. The simulation can be deployed on numerous platforms, and programs written in a variety of languages can be connected to it. The use of TCP connections allows for interactions of various programs across a network with the simulator. A fully configurable communication protocol enables users to connect multiple applications to various objects within the simulation. The produced tool, SimGen, is explained in detail and its use is demonstrated with a series of examples throughout this thesis.

Description

Keywords

DSL, SimGen, Simulation, Unity, modeling, prototyping, 3D, rover

Citation

Endorsement

Review

Supplemented By

Referenced By

Creative Commons license

Except where otherwised noted, this item's license is described as Attribution-ShareAlike 3.0 United States