Integration Framework to Support Cooperation in Product Development Process Gorazd Hren1' - Anton Jezernik1 - Stanislav Luksic2 - Andrej Predin1 1 University of Maribor, Faculty of Energy Technology, Slovenia 2 Adria Mobil d.o.o., Slovenia Virtual Prototypes are becoming increasingly important and useful for engineers because they provide the capability to evaluate mechanical designs under "real-world" conditions during different phases of their development. The aim of the presented research paper is to create and implement a computer framework to handle viewing and examination of virtual prototypes over the Web, to manipulate appearances of parts and simultaneously enable exchanging parts or sub-assemblies for evaluation, involving their functional behaviour. The presented framework finally enables the propagation of changes back to modelling system, avoiding repetition of virtual model preparation. The presented model enables cooperation of a broad set ofparticipants in production process regardless of their computer experience. © 2009 Journal of Mechanical Engineering. All rights reserved. Keywords: prototype production, product design, CAD 0 INTRODUCTION Typically, the design is a highly iterative process, which changes due to the development of the computer network from local to global cooperation. The main goal of the cooperation is to integrate the sources of knowledge and the solution of conflicts caused by design specifications in the design process as early as possible in order to reduce costs. 3D models provide a consistent way of sharing design information, but each participant is required to have access to the CAD (Computer-Aided Design) workstation and have the adequate knowledge to use the system. The Virtual Reality (VR) term is used for immersive systems using special IO devices with full-scale stereoscopic viewing of the computer generated virtual worlds. Besides full immersive systems as CAVE, the semi-immersive systems have been developed based on screen projection as virtual tables and virtual walls. The low level VR systems are desktop systems using only monitor viewing and navigation. The production of quality virtual worlds requires a considerable amount of design and programming time. Expertise is required in device handling, user interface design, network programming, graphics programming and interaction techniques. Virtual Prototype (VP) refers to a computer model of a product with, ideally, all the information and properties for the analysis of a product included without actually making a physical prototype. The design and functional solutions, operability, assembly constraints and production parameters can be controlled virtually before a physical product exists. VP enables the evaluation of mechanical properties and functionality, visualisation, planning of the manufacturing process and also analyses of the ergonomics or safety, based on Digital MockUp -DMU. The presented paper describes the ongoing research work on sharing the virtual product over the Web with standard and free programming tools. Often, the evaluation of prototypes results in the configuration modifications. Consequently, solutions or components are changed, or for a different outlook, a different material presentation is used. The developed framework enables the cooperation of a broad set of participants in the production process, regardless of the tools used for modelling the assembly. It gives the opportunity for interactive modifications in the configuration from prescribed set of components, including their functionality behaviour. The evaluated assembly is reconstructed with limited features within the CAD system. The framework is based on VRML (Virtual Reality Modelling Language) for presentation, XML (extensible Markup Language) as configuration data carrier *Corr. Author's Address: University of Maribor, Faculty of Energy Technology, Hočevarjev trg 1, 8270 Krško, Slovenia, gorazd.hren@uni-mb.si and macro programming in the CAD system for retrieving the product. 1 LITERATURE REVIEW Solid models play a key role in the development process as they provide CAD applications with tools for creating, modifying and exchanging information. Solid modelling systems are single user applications with very limited interactions for multiple participants. Due to the different user preferences and different algorithms used in the CAD systems development, the records of geometrical features are versatile, mainly in the area of surfaces generation and propagating the data to postpone applications. The standard exchange formats (IGES, STEP) do not support the transfer of all functionalities available in the CAD systems and moving data between the CAD systems remains a problem. The problems of global cooperation over Web are diminished with more or less specialised and sophisticated viewers [1] of the geometry. The multimedia techniques are supporting the user-computer interaction as well as the dialogue among the users. The leading CAD vendors like Dassault, UGS and PTC have developed additional toolkits to share assembly review. CATIA DMU Navigator V5 from Dassault and at present 3DViaComposser, Windchill/Division MockUp from PTC and VisConcept 2.0 by UGS are supplementing tools for visualisation in the CAD systems for reviewing purposes. The presentation and visualisation quality of virtual prototypes is significantly improving from version to version. Effective coupling of CAD and PDM into an integrated solution represents quite easy design reviews. Since the user has no possibilities for manual interactions or could influence the quality of representation, the reviewing session is an automatic process and easily performed. The design review session participants impose higher expectations in the sense of interactivity. With a new user-computer interface, VR, CAD users and researchers are starting to incorporate new techniques to overcome interaction weaknesses. The difference in objects presentation in CAD and VR systems is in the methodology of the object presentation. Traditionally, particularly in engineering, CAD model represents a fundamental model and VR system is separated from the CAD; the models are converted from CAD and enriched with additional information into 3D virtual environment as one-directional information flow and it makes it hard to feedback modifications to CAD systems. Due to consistency, for any change in virtual environment, , the changes have to be performed in the CAD system, and then converted again, which leads to a very unproductive and time consuming repetitive loop. Tessellation is conversion from volume description of the object resulting in some drawbacks: loss of object structure, model quality and redundant complexity. Problems about tessellation directly from DMU and CAD models are described in [2]. The tessellation algorithm has a strong influence on the complexity, determining the CAD geometry (topology, surface) and it is assumed by [3] that 10% of CAD model record is relevant for visualisation and 90% covering the rest of the information. A number of standards are in use for transferring information between CAD systems. Most are used for a geometry transfer as IGES, DXF, SAT, VDA, STL and only STEP transfer more information besides the geometry. None of them provide the required level of information needed for a virtual prototype description. In [4], a system to organise CAD models as repository over the Internet is proposed, enabling viewing with VRML models. STEP as a developing standard lacks many limitations analysed by [5], [6] and [8] with propositions for future development. For sharing virtual environments, only a few formats support external and multiple referencing, OpenGL, VRML and X3D. VRML and X3D is ISO standard public format by W3C for the representation of 3D data over the Web with plug-ins in browsers. Although it is not designed for engineering applications, it is very frequently used in that domain [9] and [10]. Discussing standard ways to share information over the Web, it is impossible to overlook HTML and XML. XML and HTML are both derived from SGML, but for different purposes: HTML to present the data and XML to carry them. To manage XML files in applications, two APIs are available to parse XML structures: "Simple API" (SAX) is the event-driven, serial-access mechanism that does element-by-element processing and "Document Object Model" (DOM) provides a tree structure of objects created from an XML structure without a compilation step. XML is public standard, which is often used in different research areas as in [7] and [11], to mention a few. Immersive Discussion Tool in [12] was designed for supporting productive design exchanges. It allows participants to interact with 3D model over the Internet and relies on VRML to view the models with Java-based interface for an interactive behaviour of the application. Li [13] developed an Internet-based system to support collaborative and concurrent engineering design by integrating three functions: design, visualization and manufacturing analyses. VRML is used for reviewing the model as well as for maintaining important parameters and attributes of a feature. In [14] collaborative virtual prototyping system is described to work on assemblies via web in client-server architecture. In the system, the model is visualised in using polygons representation, which causes the inability of the modifications to be automatically transmitted to the users, but users receive a warning. A trend in Web applications shows the need to be able to preview the product and if possible, to investigate or test its functional behaviour. In engineering, the visualisation support is essential for evaluation very often. 3D virtual presentation of a product is a major step towards convincingness of the preview leading to several technical and integration issues in the production process. 2 FRAMEWORK DESCRIPTIONS Today, the industry demands fast and effective development and product production, so companies use the highest possible modular structure to enable the exchange of parts and assemblies and for automation of the product planning and manufacturing processes. Often, it is not clear if another part or sub-assembly with similar functional behaviour could directly replace the existing one, or if it could be implemented with minimal changes in the overall design. Due to the modularity structure of assemblies, very often, different configurations are tested; one element (part or sub-assembly) is swapped with another at the same position in the assembly, offering the same or slightly different functional behaviour. Frequently, only few items, sometimes just material appearance, have to be changed in the evaluation process. For such a part-exchange in the assembly, different VPs have to be configured and prepared. The Web-based framework provides a convenient platform for users to view and evaluate a design model effectively. A distributed design system can generate design models in an XML-style feature representation to allow a Web-based system to perform viewing and manipulation which leads to two main features: 1. By taking advantages of the effective utilizations of the Web and Java technologies, this system is independent of the operating system, scalable and service-oriented. The services located in the Internet can provide an effective manner for a designer to conduct to development process. 2. A XML-style representation has been proposed to carry out some features for visualisation and manipulations in the Web-based system. This format incorporates the characteristics of VRML and features to support Web applications. The XML-based information representation enables the system to be effectively adaptable to meet the new developments of the Internet technology. The described framework and services are based on the Java Servlet mechanism. With the development and popularity of some new Internet integration technologies such as the Web service, it is necessary to explore new alternatives to integrate the current functions under the new system infrastructure. Integrated design environments can be regarded as a heterogeneous computing environment that provides engineers with a platform to collaborate various spatially distributed CAD applications via computer networks with advantages over conventional product development: - Parallel development replaces sequential development cycle to shorten product development time. - Distributed workplaces replace centralised workplaces in order to efficiently and flexibly utilize product development resources. Network applications replace stand-alone applications in order to freely share product development information. The goal of presented research paper is to develop and the implement a framework: to handle viewing and examination of assemblies, to manipulate different appearances of the parts, to enable the exchange of parts simultaneously and finally, to propagate the configuration modifications back to CAD system and reconstruct the assembly. A framework schematically presented in Figure 1 was developed. Only standard free-ware tools are used: VRML as standard data transfer and Web browser as virtual model viewer and XML as a configuration data carrier. The possibilities of VRML are far from immersive VR technologies, but a key advantage in desktop systems is that standard computer techniques for presentation and navigation can be used. VRML is a neutral file format and models from all different modelling applications can be directly translated to VRML. Animation can be employed to show objects behaviour over the time or with the user interactions. The complete description of the assembly configuration with all possible variations is defined in a single XML file. Since the visualisation in the system is organised via VRML, it is easy to combine parts and assemblies from different CAD systems using the system as the virtual prototype viewer. The application enables a change in the configuration and properties of the virtual environment and to perform analyses and evaluation simultaneously with the server application. Since communication is performed through an application on the server, the client is independent of the framework architecture and database scheme. All the data are organised in files: geometry description, sensors, routing definitions, scripting nodes, interpolation data and material appearances with colours, textures, sounds etc. The objects are represented with attributes pairs; the attribute name refers to the purpose and the attribute value refers to the name of the file, which contains appropriate description to be included. 2.1 Configuration File Definition The appropriately nested objects define hierarchical structure and may contain references. With DOM parser it is possible to read the XML input file, check formatting and semantic validity and built and present a complex hierarchical object structure with few lines of code. The configuration file represents an integrator with the definition suitable for VRML assembly presentation as well as the assembly description for the CAD system. The semantics of the configuration file follows the VRML specifications and XML syntax. The basic object that could be a part, a grouping element or an element enabling multiple choices of objects at the same level, is defined,. master data management VRML objects optimisation, Definitions of: parameters, materas, XML ccnfi guration, scripting and behaviour designers master CAD system designer Fig. 1. Schematically presented framework VRML models, scriptig, ... configuration file modifications Web browser viewing Client... Web browser viewing The basic object is defined with the following object classification: object B(bid, A, C(clA cdef)) bld - unique object identifier, A - set of attributes by names and values, C - set of object constraints, cid - object constraint identifier, cdef - object constraint and relations definition. The following are some of the defined attributes: choice - selection from the list of sub-objects, IME - name of the object, GEO - filename with geometry definition, SENS - sensor nodes definitions, ROUTE - routes definitions, INLINE - URL and name of the remote object, SCR - filename with script node definitions. Following the syntax of XML, two types of constraints are defined to describe the position and appearance of the object.
. Often components share the same definitions. In order to enable a single change of more attributes values, the global parameter is defined to link more attributes to the single value. The set of global parameters is defined in the beginning of the configuration file. XML syntax is defining the hierarchical structure of an assembly and the use of attributes. The syntax and semantic validity is checked with DOM parser. Some rules are bonded to application programs: - The object that represents a component or a part needs to have all attributes to define its existence and behaviour (at least a name and geometry), all other attributes are optional. - The components have to be appropriately nested into the assembly, clearly defining hierarchical structure. The depth of the structure is not limited. - The value of the choice attribute could be an integer limited to the number of objects on the list, defining the selection from the list, or a string, indicating that the selection is defined by a global parameter. The string presents the name of the global parameter and the value of the global parameter is comprehended. The robustness of the VRML is welcome, since during the programs testing the errors in results are easy to find. 2.2 Process of Data Preparation and Management VRML models generated directly from CAD systems in general are composed from many nested, complex and repeated structures. To accelerate the rendering performance of a system, a global optimization of a polygonal data is necessary. The interface was coded to rearrange and optimise the VRML model; the geometry of parts is separated from appearance and additional information as view, background and navigation definitions. Since the direct translation from CAD systems into VRML models differs a lot, an individual interface is needed for every CAD system. In CATIA, the macro was coded in order to perform all needed actions: generate the hierarchical structure in XML, separation of geometry and appearances of parts, combine separated surfaces of part into single geometry file including compression of geometry data. For PTC/ProE and SolidWorks postprocessors were developed to perform the same activities. The configuration file is supplemented with additional elements as objects, appearances, sensors, interpolators, scripts and routing parameters for object functionality and dynamic behaviour definitions that could be interactively controlled by the user. Additional elements are all objects defining iterations and animations and objects the user can choose and exchange. These preparations were initially done manually with a lot of tedious and time consuming work, but when all objects and scripts are prepared, the task is not so complicated if the rules and definitions are obeyed. Recently, we have developed the editor that allows all that manipulations to perform more effectively and interactively. Finally, the extended database consists of geometry and material appearances of components, additional definitions and the configuration file that keeps the structure of the assembly with attributes. The output of the editor for the case study presented in the next chapter could be seen in Figure 2. Fig. 2. The editor outlook for the case study described in the next chapter The editor enables different parameters to be changed and added into the configuration file. At the beginning we have to open the configuration file and the entire tree structure is presented in the main window. Selecting the element (could be sub-assembly or part) the parameters are presented in manipulation window, divided into three major parts: 1. General properties - name of the element, - appearance (selecting from defined appearances or define a new one with all parameters e.g. colour, transparency, texture definition), - all sub-elements are listed (adding or removing elements), - adding or changing the global parameters. 2. Geometrical position of the element (transformation, rotation, scaling and centre -needed for VRML sensors). 3. Additional options with definition of which element: - name of the file with geometry or the element could be added using Inline definition (URL), - adding different views if needed (name of the file with the view definition), - additional parameters as sensors and routes. The outlook is possible to be checked at anytime with view option in separate window with VRML browser so the preparation process is the subject of an instant evaluation. The editor has replaced a lot of previous manual work needed for preparing the configuration file with several options. 3 CASE STUDIES Based on the discussed structure, the 3D collaborative virtual evaluation and design framework has been developed. The following section shows the implementation of the system. Figure 3 shows the simple example of light switch performed during testing the system. All parts and assemblies were modelled with CATIA, from which the records of geometry, appearances of parts were extracted as well as the structure in XML format. The alternative parts were extracted separately and afterwards with the editor added to the structure. In the application, we exchanged the different geometry solutions for the box and cover and different geometry of the button. To simulate the behaviour, sensors and scripts nodes were added to switch the light on/off and to change the opening direction of the cover. The colour of the box and cover could be of the same appearance, so the attributes values are linked with global parameter definition. At first, the geometry of box and cover is located on server, the second is on remote location. The presentations shown in Figure 3 cover the main possibilities of the system on assembly. In the left window, the user has to log-in and select the configuration file. By selecting the VISUALISE button, the server generates the VRML file from the configuration file and displays it in the main view window. The user can navigate the space and use interactivity possibilities of browser to switch the light on or off and open the cover. It is possible to change the geometry of the box, cover and switch button, to select different appearances (colours and texture of marble) and interactively change the cover opening direction. All the actions Fig. 3. Different choices used within application are clearly shown in the Figure 3. In the framework, the user has the possibility to add an object into the configuration file as an alternative to the existing object or write the comment to the master user. 4 CONCLUSIONS In contrast to an expensive physical prototyping process of a product for design verification, performance evaluation and assembly evaluation, the virtual prototype offers analyses in the digital world. The basic idea of VP is to replace the physical mock-up with a digital mock-up in a virtual environment or to reduce the number of physical prototypes to a minimum. Following the concurrent engineering paradigm, the VP needs to have more than just geometry visualisation. It has to include the interactivity in the evaluation process and include all the participants in development process from the customer to manufacturing and beyond. In engineering, the visualisation of design is of crucial importance. The costs involved in virtual prototyping are often essentially smaller than doing a similar test on real prototypes, although a higher level of knowledge is necessary. The usage of standard Web technologies leads to easier, effective and more general applications. Large companies lack the time while small companies lack the resources required to implement the technology and automation needed to compete on the market. The presented framework enables generation of virtual environment for viewing and evaluation of the functionality in the standard VRML browser. We have to consider the consistency of databases which is ensured since the programs perform almost no arithmetical operations. The users are not in power to introduce new solutions since the configuration has to be evaluated from the skilled designer, who has the responsibility of making the final decision. The research introduces the approach in the integration of VR and CAD systems, represented with the duality of the configuration file function. Since the X3D standard uses XML syntax offering synergy and will substitute the VRML, the VRML models will be replaced with X3D models when the converters will be available in the CAD systems. This approach presents the solution of virtual prototype exchange over the Web using standard free-ware tools, which makes it highly suitable for smaller enterprises with limited resources in that field of research. 5 ACKNOWLEDGEMENTS The research work was partly supported by the Slovenian Ministry of Science and Technology and Adria Mobil Company (grant no. L2-6525-0975). 6 REFERENCES [1] Mahoney, D. P. All eyes on CAD. (3D visualization tools), Computer Graphics World, May, 1999. [2] Marrin, C., Kent, J., Immel, D. Aktihanoglu M. Using VRML prototypes to encapsulate functionaliy for an external java applet, SGI, 2002, http://www.marrin.com/vrml/papers/ InternalExternal/. [3] Riedel, O., Breining, R., Hafner, U., Blach, R. Use of immersive projection environments for engineering tasks, Proceedings 25th SIGGRAPH'98, applied Virtual Reality, Orlando, USA, 1998. [4] Regli, W.C., Cicirello, V.A. Managing, digital libraries for compuetr-aided design, Computer-Aided Design, 2000, vol. 32, p. 119-132. [5] Liang, J., Shah, J.J., D'Souza, R., Urban, S.D., Ayaswamy, K., Harter, E., Bluhm, T. Synthesis of consolidated data schema for engineering analysis from multiple STEP application protocols, Computer-Aided Design, vol. 31, p. 429-447, Elsevier Science Ltd, 1999. [6] Bettig, B., Shah, J. Derivation of a standard set of geometric constrains for parametric modeling and data exchange, Computer-Aided Design, 2001, vol. 33, p. 17-30, Elsevier Science Ltd.. [7] Lubell J. An XML Repository Architecture for STEP Modules, 2002 http://www.mel. nist.gov/msidlibrary/doc/xmlrepo.pdf. [8] Pratt, M.J., Anderson, B.D. A shape modelling applications programming interface for the STEP standard Computer-Aided Design, 2001, vol. 33, p. 531-543. [9] Beier, K.P. Web-Based Virtual Reality in Design and Manufacturing Applications 1st International Euro Conference on Computer Applications and Information Technology in the Maritime Industries, COMPIT' 2000, Potsdam, 2000. [10] Beazley, W.G., Chapman, J.B. VRML Engineering Applications, 2002, http://www. infoassets.com/reports/. [11] Rezayat, M. Knowledge-based product development using XML and KCs, Computer-Aided Design, 2000, vol. 32, p. 299-309, Elsevier Science Ltd.. [12] Craig, D.L., Zimring, C. Support for collaborative design reasoning in shared virtual spaces. Automation in Construction, 2002, vol. 11, p. 249-259. [13] Li, W.D., Fuh, J.Y.H., Wong, Y.S. An Internet-enabled integrated system for co-design and concurrent engineering, Computers in Industry, 2004, vol. 55, p. 87103. [14] Shyamsundar, N., Gadh, R. Collaborative virtual prototyping of product assemblies over the Internet, Computer-Aided Design, 2002, vol. 34, p. 755-768.