WEB-BASED LABORATORY FOR COLLABORATIVE AND CONCURRENT CAD DESIGNING , ASSEMBLING , AND PRACTICAL EXERCISING ON DISTANCE

Original scientific paper Collaborative CAD of distant modelling is a today’s necessity for realization in a timely manner. This need arises even within educational institutions, where investments in the development of technologies to support collaborative distance learning are still trivial. Most CAD programs used in engineering have modules for collaboration. However, these solutions are expensive, especially for educational institutions that have a large number of students. The mentioned modules generally work within a specific CAD platform and support import and export of a limited number of CAD formats. In this paper, we present an open-source solution that overcomes these problems. It implements practical work at a distance by combining most commonly used CAD platforms in engineering. In this paper, we describe how to use virtual laboratory for rapid designing through execution of practical exercises. The architecture of the proposed solution, the modelling of the laboratory and methods for creating its functions are described. Also, given is a tangible example of collaborative aircraft assembly between distant students, with parts modelled in different CAD packages, and the usability of labs presented through prototype builds on 3D printer and the final test in the wind tunnel. Qualitative and quantitative evaluations were conducted. Conclusions set the direction of the future development using various technologies for building virtual assembly laboratory.


Introduction
Computer Aided Design refers to activities involved in creating the look of the product, deciding on the product's mechanical architecture, selecting materials and processes, and engineering the various components.It needs to be performed within specialized (computer) laboratory in order to improve fundamental concepts understanding, such as data analysis, problem solving, and scientific interpretation [1,2].Mostly, such laboratories are either inaccessible or unable to meet the users' requirements entirely.Virtual reality technologies can help in performing design within virtual laboratory, enable sharing and virtualizing of real processes and overcome the limitation of real environment.
Virtual laboratories can be used as a supplement or as exchange to existing training exercises.They are very significant for analyzing products, which are not easily accessible in a real environment [3].An important part of CAD designing is assembling, concerned with the setup of a product model where users can check and modify the configuration and properties of an individual part [4].Very important assembly parts are geometric (mate, assembly) constraints, such as tangency, parallelism, perpendicularity, coincidence, symmetry, etc.They impose a relationship between modelled CAD parts.Involving assembly functions into virtual environment makes process of CAD designing and assembling shared between geographically distant participants.
In our previous work [4] we described how mate constraints are created to be used, as a functional part, in shared virtual environments.This paper presents experience and results of a further solution development for collaborative and concurrent design.Specifically, this version of the system uses previously created constraints in altered conditions, by using new technologies.Certain problems were recorded while using previous versions.Results considering their elimination are presented in this paper.
Technologies that enable seamless access to a greater number of dislocated users are used for building virtual environments.For that purpose, most common is the use of web technology and execution of environments within a web browser, in order to adapt the environments to a large number of internet users, who access the same applications through different devices.The X3DOM technology (pronounced X-Freedom; an upgrade of the X3D technology) has enabled creation of environments and their implementation in web browsers without installing hardware or software add-ons.
This paper also describes how easy it is to use a virtual laboratory that allows collaborative work of many heterogeneous distant clients.The laboratory was designed and tested for mechanical engineering colleges to support maintaining practical classes of mutually distant students.It was intended for fast and accurate creation of simple models, in which the ultimate definition of a virtual assembly was modelled between distant students and tested as an actual application in a real environment.Creation methods are described through an actual example of collaborative aircraft assembly, as part of a practical task of students sharing a common design, while building parts of the model (independently) using various CAD tools.A high level of collaboration and communication has enabled the distribution of tasks and creation of the final solution, without the constant presence of the professor.Finally, the student aircraft model from the environment is submitted for 3D printing, and the built model is used for testing in a wind tunnel.
Most CAD programs possess modules for assembly and collaboration with other departments, in the context of monitoring, development and product life cycle management, as described in [5], [6] and [7].Our idea is to enable collaborate work to users of as many different CAD platforms.In this way CAD designer can benefit from simple and free technology to create virtual environments that will help them organize students in collaborative distance work.Students can easily import models created with their preferred CAD tools into a new environment.The laboratory can be used as a web-based application or for group exercises, for student exams or for quick model generation for further analysis.Although some companies do not permit CAD conversion from one format to another, in this paper the laboratory was used for studying and testing of virtually created solutions.The testing was conducted within a mixed group of mechanical engineering students.
Section 1 introduces the concept of virtual laboratories as motivated by virtual assembly; Section 2 gives related work; Section 3 presents the virtual laboratory architecture and modelling; Section 4 describes the virtual design and assembly process; Section 5 evaluates the proposed method; and Section 6 concludes this research and sets guidelines for future work.

Related work
CAD software has been around for over 40 years, but the size of the 3D model, compatibility issues in crossplatform environments, and limited flow over Internet still present a problem in terms of their exchange and sharing.Development of standards for exchange of 3D objects over Internet helped in developing specific applications for designing, planning, and education.These technologies promise a number of applications in simulation and training, having users directly participate and explore virtual environments, and share objects easily.
Aimed at this type of virtual laboratory, in our previous research we have presented a comparative study of mostly used CAD tools and 3D Web technologies separately and in combination [8].CAD packages were chosen by specific engineering student profile and by presence in the market.A comprehensive overview of 3D Web technologies can be also found in [8], as well as in [9] and [10].These reviews include most used technologies for displaying 3D data on the Internet.
According to these researches, we concluded that only X3D is capable to provide real-time interactive content in combination with various CAD data, using different platforms and various devices.
Existing solutions that combine X3D and CAD in creating students' applications (or as such can be used), are served as the basis for our further research and development.The VIEW project [11] describes great course for engineering students using virtual assembly techniques, but without real-time communication and collaboration.From the same authors, an excellent educational environment is presented in [12], which combines X3D with CAD in creating assembly, but lacks workgroup support.Research in paper [13] presents an excellent interface with many functions enabled, but also lacks workgroup support and shared assembly functions.Dynamic CAD models with X3DOM are presented in [14].Similar to our solution of combining X3DOM and CAD, examples of CAD Viewers and assemblies in a web-based virtual environment can be found in [14].

Figure 1VirCADLab Interface
With respect to all mentioned solutions, our goal was to incorporate as many CAD software features in the existing shared virtual laboratory as possible.Proposed virtual laboratory enables concurrent assembly work with the possibility to create parts using different CAD applications, applying it all in designing and assembling between distant participants (Fig. 1).Next section explains the creation of the virtual laboratory in more detail.This paper presents results of working with the VirCADLab laboratory recreated by X3DOM technology so that our environment could be displayed within the web page and available to all internet users regardless of device through which they access the laboratory

Proposed concept architecture
The virtual laboratory is for collaborative work.As such, its main components must be virtual desktops (screens or monitors) that display real-time content to each student.The idea is to enable every student to use the computer in the same way as in a real computer lab.A student may elect one computer to work, it will be visible to other colleagues, and can access other screens to bring the necessary changes, to assist colleagues, and carry on work on his computer (Fig. 2).Thus, the laboratory can be used as a virtual interface; each user can work separately on his individual project using several different applications simultaneously.In the laboratory, different programs can be run and, thus, provide access to various resources directly from the environment.All work can be monitored and modified by other participants.
The process of a virtual laboratory creation includes several tools for different purposes.The main criteria for the implementation of the proposed laboratory model were: cost-effectiveness, ease of development, and platform independence.The only requirement for students was to have a network connection to the central server.
Activities in creating complete laboratory environment are considered with: − Modelling 3D laboratory and adding functionalities − Integrating real and virtual environment by enabling collaboration and concurrent work − Establishing client/server connection.

Figure 2 VirCADLab Architecture
Modeling the laboratory is referred to as creating its 3D look by which the user has an impression of virtual space.For that purpose, any 3D modelling tool can be used, or any CAD tool that was used for creating virtual assemblies in this paper.When basic components are modelled and the laboratory assembled, further development is made using any HTML editor by adding functionalities, such as mate constraints, interaction, animation, navigation, and sharing screens, by using traditional DOM elements.Animation in X3DOM means adding timers and interpolators to drive continuous events, interaction concerns mouse-based picking and dragging, and navigation defines user movements, collision, and visibility detection.Geometric constraints, such as tangency, parallelism, perpendicularity, coincidence, and symmetry impose relationships between geometric features.A more detailed description of mate references is presented in paper [4].Sharing screens or connecting real and virtual environment means accessing any outside computer from the laboratory.Sharing screens in X3DOM is realized by the canvas DOM element, which enables creation of dynamic textures.In VirCADLab, the canvas element is used for displaying content of virtual machines.Their implementation (installation and instancing), as well as connection to virtual laboratory is explained in more detail in the following text.
The laboratory modelled is the virtual space used as a shared environment.In the same procedure, the created screens act like real desktops in real time.Full control of real machines from virtual space is also possible.A very important component, which integrates real desktops into the virtual laboratory, is Virtual Machine (VM).For accessing client VM, Virtual Network Computing (VNC) has been used [15].VNC is the default protocol making machines platform independent.The canvas element, as texture in the laboratory, can display remote actions performed on VMs, but real-time VM access in laboratory is made by using the iFrame element.Visible to everyone, textures are used to display real-time actions driven by students.This chain VM-VNC-Texture enables concurrent use of the screens in the lab and students' concurrent work (Fig. 2).
Finally, the architecture refers to selecting server as support for shared virtual environments and viewer to access these environments.The client downloads HTML documents with an XML environment definition and Javascript.Javascript handlers are associated with certain events that transmit information about changes to the server side (PHP).The PHP change is applied to the current state (the state can be saved in the database).Javascript on all clients' sides periodically downloads the current state from the server.
The architecture described as above helps sharing the environment, enables access to a large number of participants all that within a browser without need for any plug-ins.The use of web-based VirCADLab is presented in the next section.

Use case: Aircraft distant assembly work
Having in mind that the entire process of creating a virtual assembly takes place in the laboratory, in the task distribution process among students, also the instructor (professor or teaching assistant) is involved, and has the layout of the final model to be accomplished.Parts are shared among students who have selected the program in which they will model the specified parts.For testing purposes, we decided on a greater number of tools.Students who participated in the process were from different faculties, and they had no previous involvement in collaborative work.The aim of this solution was to completely overload the process to ensure that all future versions, students who are already familiar with each other will easily reach solutions.
Prior to work in a virtual laboratory, students were introduced with the basics of engineering, basic rules of design and technical drawing, as well as creation and follow-up of technical documentation.Based on all this, students were able to read technical documentation related to a given element (subassembly) and model given parts in a CAD program of their choice.After that, they began part modelling in collaboration with other participants in the virtual laboratory.Students who were previously introduced to the product development process  The instructor, or assistant, usually assigns a task to a group of five students.Students in the virtual lab divided between themselves, and modelled each part based on their mutual drawings.In this case, the students modelled parts using five different programs.Choosing software in other situations was not preconditioned (number of programs can be lower or greater than the selected five).In this example, the five different CAD programs used for the creation of assembly parts were: AutoCAD [16], CATIA [17], Inventor [18], Pro/Engineer (Pro/E, PTC Creo) [19], and SolidWorks [20].Chosen software packages are among the most widely used CAD packages.Drawing and elements distribution is shown in Fig. 3.For this example we selected modelling of the aircraft UTVA-75.
In the virtual laboratory, students access the screen of their choice.During development, they can choose between two modes: single-modelling (Fig. 4) and collaborative-modelling (Fig. 5).If the student desires to work without interfering with other colleagues, he can choose single-modelling mode.The work will be visible to others, but not subject to modification by colleagues.The collaborative-modelling mode enables revisions from colleagues, and is mainly used when the part is already modelled and when extra settings are needed, in which, two or more students can be involved.When parts are finally modelled, the students advance to modelling in an assembly-fashion (Fig. 6).In a new window the model is assembled; a process in which one student usually does all the work, while others follow up, suggest and eventually return to their parts and improve them for the needs of integration in the assembly.During this part the work is also collaborative.The final assembly is sent back to instructors to check with all the necessary parts (parts from specific CAD programs).The approved virtual assembly at the end of the modelling process is built on a 3D printer and tested in a wind tunnel.
Before testing in the wind tunnel, it is necessary to build the model aircraft based on the final (assembled) model in the virtual lab (Fig. 7).Most 3D printers support the X3D file type.While exporting, one should take into account that 1 unit in X3D represents 1meter for 3D printer.Because this is all about student works, we have modelled small planes, approximately one cubic decimetre in volume (1 dm 3 ).More details about test results are presented in section Evaluation.

Evaluation
In this section, we focused on the evaluation of the solution, students opinion about tools and technologies used, the authors opinion in terms of group working with distant students, and the results we obtained by testing the final model in the wind tunnel.
Wind tunnel testing (Fig. 8) has shown that there is a small problem caused by exporting the final model for 3D printing.Although the 3D printer we have used is compatible with X3D format, after testing in the wind tunnel, a significant difference appeared in the flow (vortices created).We have come to the conclusion that the control points for Bezier curves were improperly exported.As a result, a drastic error arose that was registered only in the wind tunnel.This is due to the incompatibility of highly advanced technology.Although with additional corrections and going back to the model in the virtual environment we can overcome errors of this type, and despite all these advantages, we believe that the disadvantage of the tested solution is the extra cost of material for 3D printing and the increase in the time spent repeating steps when building the final model.Another way to avoid such an error is to analyze the flow (e.g., OpenFOAM, Virtual Wind tunnel (VWT), ANSYS CFX, ANSYS ICEM CFD, Fluent or ComsolMultiphysics).As one of the preconditions is access and use of VirCADLab from any device, previous tests have shown that access is possible through almost any browser.Restrictions are presented in Tab. 1. From Tab. 1 it is obvious that there is support for most actual browsers with the tendency that future versions will have support for X3DOM virtual environments.
The student surveys tried to discover what students found as a good CAD tool and how they assessed the overall effectiveness of this approach.Students mainly complained about the large number of elements in the laboratory (elements that have contributed to the look of the laboratory) and their suggestions have been accepted.At the end of the course, students were asked to complete a simple survey about their experience with the virtual laboratory (same survey was conducted before and after the use of the new version of laboratory).Again, research has shown that students tend to spend twice as much time engaged in virtual laboratory than in using multimedia instructional materials found in the majority of e-learning systems.Based on experience, we assume that students better understand the process, tasks and quickly create design solutions when working in a (virtual) group.Although, at start they unwillingly wanted to show their design solutions (they were using single-modelling mode more often), in later iterations they understand the importance of collaborative work.Engagement in the virtual laboratory allowed them to collaborate constantly, which especially had influence on respecting the agreement (classmate relation differs from the authority imposed duties).The ideal number of students cooperating in the laboratory is from three to five.This number seems to promote a well-rounded discussion without the possibility for individuals to interfere with the decision-making process.
Participation in a group-work project like this one has its disadvantages, which can be resolved by the presence of an instructor.Problems that may come up are: Technical Gazette 22, 3(2015), 591-597 − cooperative members who have difficulty to work with the others, − better students tend to do most of the work themselves, − cut down on some team members not doing their part.

Conclusions and future work
In this paper, we present further development and improvement of the solution named VirCADLab for distant CAD modelling and assembly.This new solution compared to the previous has advanced by implementing and use of X3DOM technology as to provide uninterrupted support to a larger number of users.
The proposed method for collaborative virtual assembly design within a virtual laboratory combines various types of CAD programs and X3DOM technology for concurrent assembly work between distant students.Specifically, this laboratory: − relies on a special process of learning using distant practical exercises, − provides support for effective interactions by using group collaboration, − enables interactivity among participants working alongside on the same project.The advantage of this method is in faster generation of various models.The weakness reflects in the use of simple constraints and those insufficiently developed.The solution had problems in the last phase (wind tunnel testing).Further development of 3D Web technologies in the near future will certainly contribute to the accuracy of the model created, hence, our solution.
The first laboratory version was only viable as limited size, because the proposed architecture always kept the entire environment in main memory.This was not scalable to large shared laboratories, which can consist of millions of objects and billions of triangles.At that time, it was not a fault or shortcoming of the proposed solution, because it proved to be the ideal work for groups of 3 to 5 students.However, when students master work in small groups within virtual environments, there will be a need to create large-scale laboratories.The actual VirCADLab solution can already allow the use of complex objects and hold a large number of users.Our future work will be oriented towards a stronger architecture that could support participants to manage bigger groups easily.Increasing the number of group members in the future will involve a different distribution of work and, hence, different proposed solutions.
Although it is impossible to replace the real environment completely, we seek to bring as many design functions as possible in the virtual environment so as to enable practical group-work and to allow students to study CAD design at distance.Further integration and development of as many CAD functions as possible within the laboratory is our main goal.All previously mentioned related not just to the file type conversion but also the need to create a unique format and unique virtual environment for educational and commercial use.In addition, in our future work we will focus towards exporting drawing files of the virtual assembly from the virtual laboratory and link these with all previously created parts (associative attribute of all CAD programs).
These functionalities are a part of actual tests and are increasingly used in regular classes.Although we have predicted future work, the natural user interface of VirCADLab is being gradually introduced and replaced by a virtual interface in the current versions of the laboratory.
have: − Previously organized and accomplished the course in technical documentation reading and understanding − Previously organized and accomplished one of five CAD modelling courses − Drawing based modelling.

Figure 5 Figure 6
Figure 5 Collaborative students' work on creating parts

Figure 7
Figure 7 Assembling with additional adjustments

Figure 8 3D
Figure 8 3D printed airplane and tested airplane in a wind tunnel

Table 1
Support in Web browsers