Computer-Aided Design 41 (2009) 942–951 Contents lists available at ScienceDirect Computer-Aided Design journal homepage: www.elsevier.com/locate/cad Virtual prototyping of automated manufacturing systems with Geometry-driven Petri nets Jens H. Weber-Jahnke a, , Jochen Stier b a Department of Computer Science, University of Victoria, PO Box 3055, Victoria V8W3P6, BC, Canada b Geist3D Software Labs, Victoria, BC, Canada article info Article history: Received 13 December 2008 Accepted 17 June 2009 Keywords: Robotic systems Virtual prototyping Geometry-driven Petri nets Simulation Early testing abstract The design process of automated manufacturing systems typically involves physical prototypes to validate the interactions between hardware and software components. However, physical prototyping is expensive and time consuming, which often leads to insufficient opportunities for testing early during the development cycle. Our objective is to improve this situation by providing a method to develop realistic prototypes using virtual reality technology that can be applied during earlier development stages. Our approach combines a virtual reality engine capable of enacting the laws of rigid body physics with a new hybrid software modelling language to control the simulated hardware using virtual sensors and actuators as they would be present in a physical prototype. The new modelling language is called Geometry-driven Petri nets (GPN) and combines a class of timed, high-level Petri nets with data structures used in state- of-the-art VR environments. This article describes the new GPN approach, applies it to a case study of an automated manufacturing line, and compares it with related approaches. © 2009 Elsevier Ltd. All rights reserved. 1. Introduction The design of automated manufacturing systems (AMS) encom- passes control software development activities as well as hardware development activities. Integrating these activities effectively has been a long-term research challenge. Verification and validation of AMS have traditionally relied largely on physical prototyping. This process is illustrated by the shaded elements in Fig. 1. Physical pro- totyping is costly and time consuming and a lack of early availabil- ity of physical prototypes often leads to insufficient opportunities for testing the overall system until late in the development life cy- cle [1]. However, the cost of correcting defects at a late stage of development can be orders of magnitude higher than if they had been discovered earlier [2]. Costly iteration may occur as indicated with black arrows in Fig. 1. There have been efforts to provide methods and tools that facilitate the detection of software and hardware defects earlier in the life cycle, i.e., at the design stage. These methods often encompass some forms of virtual prototypes and their analysis (cf. dashed element in Fig. 1). On the hardware side, computer- aided design (CAD) tools have been equipped with ways to create animated three-dimensional (3D) simulations of the system in Corresponding author. Tel.: +1 250 721 8797; fax: +1 250 853 3168. E-mail addresses: jens@uvic.ca (J.H. Weber-Jahnke), jochen@geist3d.org (J. Stier). action. These simulations are typically based on scripted processes and 3D graphics rendering engines, e.g., [3,4]. On the software side, computer-aided software engineering (CASE) tools have been equipped with hybrid modelling languages, which can model discrete processes controlling continuous functions, e.g., [5]. Both approaches have their trade-offs. On the one hand, the scripts running 3D simulations mainly serve visualization purposes, but fail to consider the reactive properties of the AMS control software, including sensor-based actions and actuator-based manipulation of the physical environment. On the other hand, hybrid process models require designers to estimate and encode many abstract assumptions about the physical environment (e.g., the duration of a movement) that may later turn out to be unrealistic. Wrong assumptions lead to subsequent problems with the construction of the AMS [6]. Moreover, the need to encode assumptions about physical properties adds to the complexity of hybrid models. Our objective is to combine the strengths of both approaches, integrating realistic virtual simulations of the physical environ- ment with a hybrid language to model the control software, in or- der to reduce the number of abstract assumptions that have to be modelled. This method provides a more realistic virtual prototyp- ing & testing of AMS, as indicated by the dashed element in Fig. 1. We have developed a virtual reality (VR) engine capable of real- istically enacting the laws of physics and a hybrid modelling lan- guage controlling the physical devices using (virtual) sensors and (virtual) actuators as they would be present in a physical proto- type. The developed hybrid modelling language is called Geometry- driven Petri nets (GPN) and combines a form of timed, high-level 0010-4485/$ – see front matter © 2009 Elsevier Ltd. All rights reserved. doi:10.1016/j.cad.2009.06.012