Login| Sign Up| Help| Contact|

Patent Searching and Data


Title:
METHOD AND SYSTEM FOR RAPID PROTOTYPING VIA VIRTUAL SIMULATION
Document Type and Number:
WIPO Patent Application WO/2017/141070
Kind Code:
A1
Abstract:
A computer-implemented method for virtualization of rapid prototyping processes is disclosed herein which allows a user to envisage accurately a manufacturing operation and final product output to be had, with precise consideration of interrelationships and influences on productivity, product quality and economy expected in a real world environment with respect to variability in process parameters, component wear, toolpath planning, and material behavior.

Inventors:
PHATAK AMAR (IN)
Application Number:
PCT/IB2016/050816
Publication Date:
August 24, 2017
Filing Date:
February 16, 2016
Export Citation:
Click for automatic bibliography generation   Help
Assignee:
PHATAK AMAR (IN)
International Classes:
G06F17/00; B29C67/00; G06F17/10; G06F17/50; G06F19/00
Other References:
XU, A ET AL.: "VRPS-I: An internet -based virtual rapid prototyping system", JOURNAL OF INTEGRATED DESIGN AND PROCESS SCIENCE, vol. 9, no. 3, September 2005 (2005-09-01), pages 15 - 27
CHOI, SH ET AL.: "A dynamic priority-based approach to concurrent toolpath planning for multi-material layered manufacturing", CAD COMPUTER AIDED DESIGN., vol. 42, no. 12, December 2010 (2010-12-01), pages 1095 - 1107, XP055600574
RAGHUNATH, N ET AL.: "Improving accuracy through shrinkage modelling by using Taguchi method in selective laser sintering", INTERNATIONAL JOURNAL OF MACHINE TOOLS & MANUFACTURE, vol. 47, 7 September 2006 (2006-09-07), pages 985 - 995, XP005878059, DOI: doi:10.1016/j.ijmachtools.2006.07.001
CHOI, SH ET AL.: "Visualisation of rapid prototyping", RAPID PROTOTYPING JOURNAL, vol. 7, no. 2, May 2001 (2001-05-01), pages 99 - 114, XP055600577
VERMA, AP: "Minimizing build time and surface accuracy of direct metal laser sintered parts: an artificial intelligence based on optimization approach", THESIS MASTER IN MECHANICAL ENGINEERING, 9 August 2009 (2009-08-09), University of Cincinnati, XP055600580, Retrieved from the Internet
CHAN, M-M: "An integrated system for virtual simulation and visualization of rapid prototyping", THESIS, 2002, University of Hong Kong, pages 2 - 6
CAI, Y: "A Virtual Prototyping System with Reconfigurable Manipulators for Layered Manufacturing", DISSERTATION, August 2011 (2011-08-01), The University of Hong Kong, XP028773727
CHOI, SH ET AL.: "Modeling and Simulation in Engineering", 7 March 2012, INTECH, article "Virtual Prototyping for Rapid Product Development. Modeling and Simulation in Engineering", pages: 203 - 224, XP055600583
LIAO, C-Y: "Product Model Creation and Simulation for Two-photon Polymerization Micro-manufacturing", DISSERTATION, 2008, National Taiwan University, XP055600585, Retrieved from the Internet
MA, W ET AL.: "NURBS-based adaptive slicing for efficient rapid prototyping", COMPUTER-AIDED DESIGN, vol. 36, 2 February 2004 (2004-02-02), pages 1309 - 1325, XP004534034, DOI: doi:10.1016/j.cad.2004.02.001
Attorney, Agent or Firm:
DESHPANDE, Rohit (IN)
Download PDF:
Claims:
Claims

I claim,

1 ] A method for virtual simulation of rapid prototyping processes, selective layer sintering technique in particular, to allow a user to visualize in real time the rapid prototyping process undertaken with a user-defined set of operating parameters and thereafter generate a printable report on the final article to be fabricated, said method comprising:

a. receiving input slice data corresponding to the final article to be fabricated;

b. generating a hatch pattern data based on input slice data received; c. generating a toolpath based on the hatch pattern data established; d. estimating process part parameters and part quality assessment incidental to operational parameters of the rapid prototyping process to be implemented;

e. simulating execution of the toolpath established; and

f. rendering a printable report based on the execution of the rapid prototyping process simulated.

2] The method for virtual simulation of rapid prototyping processes according to claim 1 , wherein input data defining the article to be fabricated is obtained by preprocessing the the native computer-aided design data in stereolithography (STL) format to thereby save, randomly without reference to edge connectivity within the input slice data file using an array of dynamic arraylists corresponding to an equal plurality of contours defined by consecutive X, Y and Z axis coordinates of endpoints of edges forming each sliced layer of the article to be fabricated.

3] The method for virtual simulation of rapid prototyping processes according to either of the claims 1 or 2, wherein the step of generating a hatch pattern further comprises:

a. selecting input slice data singly, and alternatively from both, among the pre-processed STL format file and user-defined machine-specific parameters;

b. identifying the minimum and maximum bounds for a given contour by the formulae

■ First hatch point = Minimum bound + (hatch width)/2; and ' Last hatch point= Maximum bound - (hatch width)/2; c. determining the number of hatch patterns required for an immediate layer of the article to be fabricated by applying the considerations chosen among

For every single hatch (X = C), considering only those edges whose endpoints lie on either side of or on X=C;

Carrying out intersection of the selected edges with the hatch line X = C and storing the same as hatch data;

Calculating Y intersection as the X coordinate of hatch points determined by X = C, and Z coordinate as the Z value of the current layer; and

For the edge, whose endpoints are P1 (X1 , Y1 Z1) and

P2(X2, Y2, Z2), calculating the Y intercept with X=C line by the formula:

Y _ (C-X2)*(Y2-YI) Y2

X2-X1)

d. repeating steps a to e, for defining hatch patterns for each layer of the article to be fabricated; and

e. saving the hatch patterns established in an equal plurality of arraylists within a hatch data file, with each arraylist indexed by layer number.

The method for virtual simulation of rapid prototyping processes according to claim 1 , wherein the step of toolpath planning for establishing the path of travel of the laser over the powder layer in the rapid prototyping process to be simulated further comprises:

a. affixing the order of hatch points for each hatch vector from the randomly stored hatch pattern data;

b. generating a plurality of hatch pattern vectors where a sequential clubbed order is set, characteristically in an alternate forward and reverse ordering, for a matching plurality of hatch vectors present in a given layer to result in zigzag toolpath;

c. repeating steps a to b, for defining hatch pattern vectors for each layer of the article to be fabricated; and

d. saving the hatch pattern vectors established in toolpathData file for simulating the execution of the toolpath established. ] The method for virtual simulation of rapid prototyping processes according to claim 1 , wherein the process part parameters include total build time and volume of fabricated part, which are estimated on basis of the sliced layers, hatching points and toolpath by steps comprising:

a. Summing scanning time and layer setup time for estimation of the total build time; and

b. Summing up volumes of the semi cylindrical geometry of each hatch line subsequently simulated for real time estimation of volume of fabricated part by the formula:

Where /' is layer number, n is layer number, j is hatch number, m is number of hatch vectors per layer ] The method for virtual simulation of rapid prototyping processes according to claim 1 , wherein the part quality assessment includes determination of smoothness of the surface produced, and volume of of part fabricated which are arrived at by the steps comprising:

a. smoothness of the surface produced is estimated by calculating the stairstep error by comparing fabricated part with original CAD model, and alternatively by calculating geometric errors in X-Y plane in terms of peak height, valley depth and peak to valley distance; and b. volume of of part fabricated is estimated after deduction of shrinkage of parts using empirical formulae based on prior knowledge of bed temperature, hatch space, laser speed and laser power inputted by the user ] The method for virtual simulation of rapid prototyping processes according to claim 6, wherein shrinkage estimated bears no constraints for the first layer, constraints along the length and height of the dexel for second layer, and constraints along all three directions for subsequent layers of the final article to be fabricated. ] The method for virtual simulation of rapid prototyping processes according to claim 1 , wherein simulating execution of the toolpath established is achieved using an interactive three dimensional graphics user interface chosen among Java 3D platform, its derivatives, equivalents and their combinations whereby first powder layer is displayed prior to layer-by-layer visual simulation of the rapid prototyping process undertaken until virtual achievement of the final article to be fabricated, said simulation being characterized in that:

a. a transparency feature is incorporated in visualization for maintaining visibility of part produced throughout the fabrication process; and b. the user is allowed to rotate, translate, zoom in, and zoom out of the simulation being visualized under interactive actuation of a computer mouse ] The method for virtual simulation of rapid prototyping processes according to either of the claims 1 , 5 or 6, wherein the printable report includes:

a. details of input process parameters consisting of hatch space, time for recoating one powder layer, laser scanning velocity, part bed temperature, and laser power selected for the rapid prototyping process to be simulated; and

b. details of resultant output from the rapid prototyping process simulated, consisting of productivity, part quality and economy values 0] A computer-executable software code product for implementing the method of claim 1 , comprising:

a. a routine executable to display a first user interface having options to receive input slice data corresponding to the final article to be fabricated being alternatively chosen among a prearranged input slice data file, manually fed user-defined machine-specific process parameters, and drop down menus corresponding to a library of standardized parameter values for desired productivity, product quality and economy of the rapid prototyping processes to be undertaken;

b. a routine executable to generate a hatch pattern data file based on input slice data received;

c. a routine executable to generate a toolpath data file based on the hatch pattern data established;

d. a routine executable to estimate the process part parameters and part quality assessment incidental to operational parameters of the rapid prototyping process to be implemented; and a routine executable to simulate execution of the established; and

a routine executable to render a printable report based execution of the rapid prototyping process simulated.

Description:
METHOD AND SYSTEM FOR RAPID PROTOTYPING VIA VIRTUAL SIMULATION

Cross references to related applications: None.

Copyright Notice: A portion of the disclosure of this patent document contains material subject to copyright protection. The copyright owner has no objection to the reproduction by anyone of the patent document or the patent disclosure as it appears in the official Patent Office records, but otherwise reserves all copyright rights whatsoever. The following notice applies: © 2015, PHATAK, Amar, All Rights Reserved

[001 ] Field of the invention

[002] This invention belongs to the field of computer-implemented techniques for design, simulation and evaluation of component build and/ or process execution and in that, relates generally to methods and systems capable of allowing rapid prototyping via virtual simulation.

[003] More particularly, the present invention is a software-enabled tool for digital modeling of the form and behavior of real-world materials and processes intended as a precedent to real-world implementation of progressive (additive or subtractive) manufacturing technologies commonly employed for modelling, prototyping, and production applications.

[004] Background of the invention and description of related art

[005] Conventional real-world design, manufacturing and evaluation techniques are undisputedly rigid, and characterized in that their underlying specifications cannot be arbitrarily specified. Loss in accuracy with each measurement and subsequent application is another characteristic due to which these techniques are increasingly proving to be of reduced applicability in the progressive world of today. The art therefore needs some way to make said techniques more convenient, more human, and yet efficient while establishing adaptive manufacturing protocols necessary to define the future. [006] Prototyping is a critical precedent before commissioning the manufacture of any product and/ or execution of a manufacturing process. Traditionally, it is very much possible for a prototype to take several forms depending on the set of considerations applied, the latter including fundamental physics, and dynamics therein, of materials as well as their handling or processing systems involved. As will be appreciated, framework environments, and their effect on aforesaid considerations, must also be ably factored in while determining the considerations to be applied. Considering that a physical build trial-and-error approach would be too time-consuming as well as grossly error-prone in this parlance, it is crucial to have some means for accurately mapping and emulating dynamics of considerations to be applied in order to allow rapid prototyping and/ or optimization of industrial processes intended, preferably without involving the errors, run-economics, constraints and thus the redundancy of manual processing in real-world environments.

[007] Virtual modeling holds distinct promise for addressing the needs voiced above. Virtual models form a software-only representation of a component or manufacturing environment which, taken step at a time, allows simulation of the manufacturing process involved in a given set of design considerations and thus achieve greater control over the output intended while reducing the number of iterations and associate resource costs in design-prototype-test cycles. However, traditional approaches with such intend have been observed to be entirely complex to learn, awkward to use, and often provide only marginal benefits in allowing rapid prototyping. As shall be appreciated by a person skilled in the art, the performance of rapid prototyping processes is affected by multitude process parameters such as layer thickness, hatch spacing, temperature of working environment, scan speed, etc. It is therefore difficult to choose an appropriate combination of these parameters for optimal production of a prototype, which depends on the quality requirements such as accuracy, productivity, part strength and manufacturing efficiency (material). Also, quality requirements vary from visual aids to master patterns for secondary manufacturing processes. Therefore, a high degree of expertise is needed to produce consistent quality prototypes. The process is a trial and error basis, and is therefore time consuming and very expensive. A different approach is therefore needed for efficient rapid prototyping to be truly harnessed in all walks of product development, that is, design engineering, manufacturing and marketing.

[008] Attention of the reader is now had to certain prior art references, which corroborate this observation against backdrop of the immediate background underlying the present invention.

[009] US20070288300 (filed by Vandenbogart Thomas William) introduces a method for rapidly producing a prototype includes the steps of conducting an interview of a participant in a product development study; presenting an item for review; providing physical sets of alternatives for components of the item; eliciting preference values for the alternatives from the participant; inputting the preference values into a computer software program; producing a virtual ideal item based on the preference values using the computer software program; and presenting the virtual ideal item to the participant. However, the accompanying disclosure and claims are silent on sequential virtual run of the production run, do not provision for review, and do not preclude involvement of human user for feedback and listing of preferential values.

[0010] Another reference, US20120083339 (filed by Janos Stone) discloses a method for transforming a virtual object based on user input information including receiving by an input device a user input alpha-numeric input information, correlating, using one or more processors, the user input alphanumeric information with transformation of one or more characteristics of the virtual object, and transforming, using one or more processors, the one or more characteristics of the virtual object from a first configuration to a second configuration based on the correlated user input alpha-numeric information. However, this innovation unilaterally focuses on rendering a virtual reality gaming user environment, and is silent on processivity of process parameter data critical for rapid prototyping.

[010] Yet another reference, US7840393 (issued to Trivascular, Inc) discloses a system and method of developing better-designed medical devices, particularly cardiovascular stents and endovascular grafts. The system comprises a geometry generator, a mesh generator, a stress/strain/deformation analyzer, and a visualization tool. In one embodiment, the geometry generator receives three-dimensional volumetric data of an anatomical feature and generates a geometric model. The mesh generator then receives such geometric model of an anatomical feature or an in vitro model and a geometric model of a candidate medical device. In another embodiment, the mesh generator only receives a geometric model of the candidate medical device. Using the geometric model(s) received, the mesh generator creates or generates a mesh or a finite element model. The stress/strain/deformation analyzer then receives the mesh, and the material models and loads of that mesh. Using analysis, preferably non-linear analysis, the stress/strain/deformation analyzer determines the predicted stresses, strains, and deformations on the candidate medical device. Such stresses, strains, and deformations may optionally be simulated visually using a visualization tool. However, the accompanying disclosure and claims are silent on provision of user-selectable parameters / production-material specific parameters as well as simulation of production runs critically required for accurate rapid prototyping. Yet another reference, US6310619 (issued to Rice Robert W) discloses a three-dimensional, virtual reality, tissue specific model of a human or animal body which provides a high level of user-interactivity. The model functions can be analyzed and user-modified on a tissue-by-tissue basis, thereby allowing modeling of a wide variety of normal and abnormal tissue attributes and corresponding study thereof. The model can be user-modified through a keyboard, or other VR tools such as a haptic interface. The haptic interface can modify the model to correspond to the tissue attributes of a user, and can provide sensory output corresponding to the interaction of the model to a pre- scripted scene. However, the accompanying disclosure and claims do not provide an able manner in which the principles of this invention can be migrated to efficient operation of a manufacturing setup.

What is therefore needed, is an able technology for virtualization of rapid prototyping which would allow implementation in a clean, simple-to-use and office-friendly manner. [013] Prior art, to the extent presently surveyed of which the closest references and their inconsequentiality are hereinbefore, do not list a single effective solution embracing the wants voiced hereinabove. As a result, it is therefore unavoidable to repetitively rework prototypes to suit specifications and dynamics of materials, application environments, and moreover scale alterations intended therein, thus preserving an acute necessity-to-invent for the present inventor. Accordingly, the present inventor, as result of his targeted research, has come up with novel solutions for resolving all needs of the art once and for all. Work of the presently named inventor, specifically directed against the technical problems recited hereinabove and currently part of the public domain including earlier filed patent applications, is neither expressly nor impliedly admitted as prior art against the present disclosures.

[014] A better understanding of the objects, advantages, features, properties and relationships of the present invention will be obtained from the following detailed description which sets forth an illustrative yet-preferred embodiment.

[015] Objectives of the present invention

[016] The present invention is identified in effectively meeting all of the objectives as set out herein under, of which:

[017] It is a primary objective of the present invention to provide effective means for rapid prototyping that avoid, as much as possible, the shortcomings of prior art outlined hereinabove and thereby significantly reducing time, manual labor, skill requirements as well as save on costs and errors otherwise had in process output intended.

[018] It is another objective of the present invention, further to the aforesaid objective(s), that the means for rapid prototyping so provided allow true optimization of rapid prototyping processes keeping the requirements of Selective Laser Sintering (SLS) and Fused Deposition Modelling (FDM) techniques in view.

[019] It is another objective of the present invention, further to the aforesaid objective(s), that the means for rapid prototyping so provided are necessarily capable of accurately representing the behavior and functionalities of the underlying materials and processes involved.

[020] It is another objective of the present invention, further to the aforesaid objective(s), that the means for rapid prototyping so provided allows accurate orientation of a part as well as computation of the part quality, build time and other process parameters while simulating real-world implementation of the same.

[021 ] It is another objective of the present invention, further to the aforesaid objective(s), that the means for rapid prototyping so provided allows different levels of abstraction of modelling data arrived to allow execution at different scales, materials and build-speeds, particularly in additive manufacturing processes.

[022] It is another objective of the present invention, further to the aforesaid objective(s), that the means for rapid prototyping so provided is further capable of assessing productivity, product quality and material utilization besides outputting qualitative as well as quantitative assessment reports of operative run cycles for the end-product intended.

[023] It is another objective of the present invention, further to the aforesaid objective(s), that the means for rapid prototyping so provided is further capable of rendering real-time updated, interactive digital visualization of the process implementation in progress.

[024] It is another objective of the present invention, further to the aforesaid objective(s), that the means for rapid prototyping so provided, when implemented, results in significant reduction of build-time, manual labor, skill requirements as compared to conventional approaches for the same requirement.

[025] These together with other aspects and advantages which will be subsequently apparent, reside in the details of construction and operation as more fully hereinafter described and claimed, reference being made to the accompanying drawings forming a part hereof. [026] Brief description of drawings

[027] The present invention is explained herein under with reference to the following drawings, in which:

[028] Figure 1 is a flow chart explaining the preferred mode of implementation of the present invention.

[029] Figure 2 is a schematic diagram depicting various modules and their functions in implementation of the present invention.

[030] Figure 3 (A and B) are schematic illustrations of the slicing plane and contour in X-Y plane respectively.

[031 ] Figure 4 is a screenshot of the contents of a sample sliced data file.

[032] Figure 5 is a screenshot of the data structure of the sliced data file depicted in Figure 4.

[033] Figure 6 is a schematic diagram to explain how minimum and maximum bounds or hatching are determined in the present invention.

[034] Figure 7 is a schematic diagram to explain how Y intersection of an edge is determined in the present invention.

[035] Figure 8 depicts the contents of an unordered hatch data file.

[036] Figure 9 is a schematic diagram illustrating the zigzag toolpath established for a particular layer

[037] Figure 10 is a schematic diagram illustrating the final toolpath established for a particular layer

[038] Figure 1 1 is a top view of an actual hatch/dexel

[039] Figure 12 illustrates the stairstep effect (error along Z direction)

[040] Figure 13 (A and B) illustrate errors in X-Y plane in a partial scan, and full scan, respectively of a particular layer [041 ] Figure 14 is a schematic diagram illustrating how contour is approximated for a particular layer in the present invention.

[042] Figure 15 is a schematic diagram illustrating how part quality in X-Y plane is determined for a particular part under fabrication in the present invention.

[043] Figure 16 is a screenshot of the GUI for allowing user inputs to the system of the present invention.

[044] Figure 17 is a screenshot of the GUI for allowing a user to visualize outputs of the system of the present invention.

[045] Figure 18 is a screenshot depicting a complex shape (squirrel) being subject of simulated fabrication by system of the present invention.

[046] Figure 19 is a screenshot depicting the report generated for shape depicted in Figure 18.

[047] Figure 20 (A to D) are step-wise screenshots depicting various successive stages of the simulated fabrication of the shape depicted in Figure 18.

[048] Figure 21 is a table depicting results of four iterations wherein process parameters are altered for simulated fabrication of the shape depicted in Figure 18

[049] In above drawings, wherever possible, the same references and symbols have been used throughout to refer to the same or similar parts. References made to particular examples and implementations are for illustrative purposes, and are not intended to limit the scope of the invention or the claims. Numbering has been introduced to demarcate reference to specific components, such references being made in different sections of this specification. All components and steps are not indexed in each drawing to avoid obscuring the immediate ambit of description intended.

[050] Attention of the reader is now requested to the detailed description to follow which narrates a preferred embodiment of the present invention and such other ways in which principles of the invention may be employed without parting from the essence of the invention claimed herein. [051 ] Summary of the invention

[052] The present invention is directed towards a computer-implemented method for virtual prototyping for a rapid prototyping application such as SLS where sliced / process planning data is used as an input, based on which hatching data for a given part orientation, layer thickness and hatch space data for the SLS process intended. Inventive algorithms subsequently run on said data to compute output process parameters such as part quality (surface roughness), overall process time for building a prototype, volume of material utilization and estimation of part shrinkage for a given set of process parameters, thereby resulting in an accurate virtual rendition of the manufacturing process, and final output. Being unconstrained of real-world scenarios, the user can therefore freely experiment with various process parameters relating to part material, laser speed, slice layer data etc and estimate their effect on the resulting part produced in terms of productivity, part quality and economy (material).

[053] Detailed description

[054] Principally, general purpose of the present invention is to assess disabilities and shortcomings inherent to known systems comprising state of the art and develop new systems incorporating all available advantages of known art and none of its disadvantages. Implementation of the present invention proposed herein is intended to encompass various embodiments, among which a few are explained below with reference to certain examples that illustrate generically the manner in which principles of the present invention may be employed.

[055] Progressive (additive or subtractive) manufacturing technologies have seen rapid development since the past few decades, with SLS and FDM being most forthcoming additive processes, while lathe-working or CNC milling being most forthcoming subtractive processes among those accepted and applied in the industry for modelling, prototyping, and production applications. These processes commonly build a desired component layer-by-layer, typically by sintering or extruding an amorphous substrate, or removing a layer from bulk material, which make them ideal candidates for quickly fabricating a scale model or prototype of a physical component using three- dimensional Computer Aided Design (CAD) data. As such, progressive manufacturing technologies have been largely recognized for the fabrication of parts with complex geometries as compared to the conventional manufacturing processes. As true for any production process or component, prototyping remains a critical precedent to be essentially had before commissioning of any progressive manufacturing process. The present inventor proposes vi realization of the prototyping function itself, thereby resulting in a sandbox utility capable of meeting all major, if not all, objectives listed in the foregoing part of this document.

[056] As commonly understood in the immediate field of the present invention, a product model is the central element, which integrates all information about the product and links different phases of product development. Modeling of such product or development process by rapid prototyping essentially needs to determine and incorporate mathematical relationships of various process parameters concerned, which in cohesion, accurately predict final manifestation as well as influences on parts and materials involved. A coupled virtual reality interface would thereby allow the designer to visualize and interact naturally with the virtual world in connection with each among the different phases of product development intended.

[057] In alignment with above understandings, at outset, the present invention seeks to establish a novel approach for rapid prototyping by accurate process simulation with due consideration to part building and shrinkage issues. The system so provided simulates the effect of process parameters on process outputs in the form of productivity, part quality and economy in terms of material required.

[058] According to defining principles of the present invention explained with general reference to the accompanying Figure 1 which relates to the logic of a computer-implemented/ controlled SLS process, an illustrative virtual simulation of a run cycle initiates with execution of a set (001) of algorithms configured for preprocessing functions/ design considerations such as hatching and toolpath planning. Output of set (001) is stored as a prototyping file (002). After this prototyping file (002) is loaded onto the system, the user may alternatively provide manual inputs including processing parameters (003) such as hatch space, layer recoating time, laser velocity, part bed temperature and laser power using a drop down menu or form illustrated in Figure 2, provided within the system user interface which lists an inventory of default or standard values but also allows the user to append custom values as required according to the process output intended.

[059] Once processing parameters (003) are provided, the system can proceed with simulation (004) of the production run, by means of a graphical simulation module configured to report / display consecutively each step as would be implemented (005) in a real-world execution scenario. The process is looped by decision functions (007) and (008) which allow unlimited opportunity for correct or evaluate alternative design considerations as required, until the desired/ satisfactory process or product is achieved. For example, first the powder layer is displayed, then toolpath information is read in and fabrication of the immediate layer is simulated by attaching dexels to the powder layer one at a time. After simulation for this layer is completed, another un-sintered powder layer is recoated and the simulation repeated till end of production run / completion of the product intended.

[060] According to another aspect of the present invention, should the resulting output of the virtual production run executed prove unsatisfactory at reaching the desired process or product, the system allows the user to apply necessary corrective measures by altering parameters at step (003) to thereby cause one more virtual execution of the production run. For decision function (008), a set (009, not shown in the accompanying drawings) of algorithms configured for post-processing functions such as part quality assessment, computation of build time and shrinkage estimation of fabricated part is integrated into system of the present invention. This allows virtualization of the entire production cycle and applying of varying design considerations till perfection without incurring the restraints of real-world application scenarios. Furthermore, set (009, not shown in the accompanying drawings) of algorithms is configured to generate a display shown in Figure 3 or report on the virtual production run executed immediately before, thereby allowing a user to log, assess and take action in response to the extent of operational success thereby observed. [061 ] According to another aspect of the present invention, visibility is maintained throughout the fabrication process by integration of a transparency feature, which allows step-by-step articulation before a user in charge of the SLS process undertaken.

[062] According to yet another aspect of the present invention, the system user interface is configured to allow variable articulation of display generated during the simulation step (004) by advantageous integration of the Genetic Algorithm (GA) technique, whereby the user is able to rotate, translate and zoom in and out of the component being fabricated using mouse interaction.

[063] According to yet another aspect of the present invention, the simulation step (004) mimics the form and behavior of real-world materials and processes, hence is useful in determining the build height, build time, part quality measurement and shrinkage of the material after solidification in the SLS process mentioned hereinabove, thereby allowing design, simulation and evaluation of component build and/ or process execution in a unified approach. The fabricated virtual end-product may be further assessed for build-quality and utility as a mold for mass production. Generally referring to Figures 4(a) and 4(b) respectively, it can be seen that products of complex geometry (20000 and 40786 facets respectively) and multiple morphological features can be rapidly prototyped virtually by performance of the present invention.

[064] The present invention is intended as application primarily as a locally hosted/ downloadable software application. However alternatively, its implementation as a cloud-based service and/ or distributed hosting involving a thin client for users is also possible using state-of-art infrastructure which forms part of the public domain, and hence not described in detail herein to avoid obscuring the present invention.

[065] As seen in the accompanying Figure 2, the logic described above is captured for implementation in a computerized environment by an inventive modular organization comprising a module each for enabling functions including Graphical User Interface, input Pre-processing, Hatch pattern generation, Toolpath planning, Part Quality measurement, Shrinkage estimation, Part fabrication simulation and process report.

[066] Referring back to the foregoing narrative, the present invention thereby provides a virtual workbench for rapid prototyping processes, in which typically a process planning file, in other words the slice data, of the part to be fabricated is taken as a primary input. This input is then passed through a pre-processing module (parser) where the point data is stored and layer thickness is determined. Process parameters for a typical rapid prototyping process such as SLS, including Hatch width/ hatch space in mm, Laser velocity in m/sec, Layer setup time(non-productive time) sees, Part bed temperature in degree C and Laser power in W are taken as input from the user as they are machine-specific. It shall be understood that the machine- specific parameters may be inputted manually by the user based on the specific machine available with the user or alternatively selected by the user conveniently using a drop-down menu based on standard catalogue data of various rapid prototyping machines available.

[067] Next, a hatching module provided determines the coordinates of the endpoints of each hatch line for virtual fabrication. The step over is taken as input for each pass in a layer. The hatch points are used by toolpath planning module to generate laser toolpath for each layer. Time required and the volume of the part fabricated are also estimated by toolpath planning. Next, a part quality module computes the peak height and valley depth for each hatch vector. It in turn estimates the quality of part fabricated across each layer in the X-Y (fabrication) plane. Shrinkage is derived empirically, output of which is expressed in terms of volume of the part fabricated thus accounting for shrinkage for a given set of process parameters. The system so developed thereby allows a user to experiment by varying process parameters and fine tune them to produce the parts with desired quality, productivity (build time) and economy (Material utilization).

[068] Following is an itemized account of the individual modules, in sequence of their involvement in performance of the present invention: [069] Parser for input pre-processing: Sliced data file taken as input, is produced by slicing rapid prototyping part CAD model in STereoLithography (STL) format. Cutting plane is selected with equation Z = C, where C depends on the predefined layer thickness. For every layer that is Z = C, C is Z coordinate of layer, the intersection points of Z = C plane with the triangles containing the plane are calculated.

[070] Figure 3 (A) and (B) respectively show the typical STL facets with the slicing plane and contour generated in the sliced X-Y plane. This contour is stored in the sliced file in terms of coordinates of endpoints of edges wherein consecutive two points form one edge.

[071 ] Figure 4 is a screenshot representing format of the sliced data file so reached. First two points forms one edge and the next two points forms another edge. The endpoints of edges for every layer are stored in sliced data file. However, first edge is not connected to the next edge i.e. edge connectivity is not present in the input file. All the edges present in one layer are randomly stored in the file.

[072] In the preferred embodiment, a plurality of arraylists is used to store the sliced data as the size varies from file to file and even from layer to layer. The input file is read twice. In the first pass number of layers is determined referring to the Z value of points. This determines the number of arraylist required. In the second pass the coordinates of the points present for a given layer is stored in an arraylist pointed by the layer number. When the Z value of the point changes, the coordinates of the following points are stored in the next arraylist pointed by the corresponding layer number. This continues till all the points are stored in slice file.

[073] The accompanying Figure 5 illustrates the data structure for storing the sliced data so parsed. For storing the sliced data the data structure stores the endpoints of the edges. With reference to Figure 5, it can be understood that edge 1 of layer 1 is made up of endpoints (X1 .Y1 , Z1) and (X2, Y2, Z2). Similarly the edge 2 will be made up of points (X3.Y3, Z3) and (X4, Y4, Z4). The data structure will store only points such that the two consecutive points will form one edge of contour. The parser also stores the layer number which points towards the corresponding points forming that contour. Edges need not to be stored. For the second pass SliceStoreO function is called where depending on the number of layers determined in first pass an array of arraylist is declared. Then for the particular layer number the points are stored in the dynamic arraylist. Special purpose dynamic data types like arraylist from Java is used for efficient memory management.

[074] Hatch pattern generation: Required for toolpath generation, contour data from for each layer the prior step of input pre-processing is taken as a primary input. Machine-specific parameters being user defined, are taken as secondary input. Before initiating hatching, it is essential to identify the minimum and maximum bounds for a given contour. Hence, coordinates for each layer is passed to a function lengthO where minimum and maximum value of X coordinate are determined as shown in Figure 6. This is necessary for the determination of the First hatch and the Last hatch points, which are determined using the formulae:

First hatch point = Minimum bound + (hatch width)/2 (1)

Last hatch point= Maximum bound - (hatch width)/2 (2)

[075] Once the first and last hatch points are determined, the number of hatch patterns required for the chosen layer are calculated by applying the following considerations

a. For every single hatch ( X = C), only those edges are considered whose endpoints lie on either side of or on X=C

b. Intersection of the selected edges with the hatch line X = C is carried out and are stored as hatch data

c. Only Y intersection is calculated as the X coordinate of hatch points is determined by X = C, and the Z coordinate is determined by the Z value of the current layer

d. For the edge, whose endpoints are P1 (X1 , Y1 Z1) and P2(X2, Y2, Z2), Y intercept with X=C line is calculated using following equation:

C-X2)*(Y2-Y1)

Y = + Y2

X2-X1) (3) e. If a point of an edge lies on the hatch line it may give rise to 0/0 or constant/0 situation while calculating Y intersection whose output is NaN (Not a Number). To avoid this output for intersection a check is carried out, where if at all such situation arises the point will be simply added to the hatch data file

f. Arraylist is used to store the hatch data as the number of hatch points is dynamic in nature. Each arraylist is pointed by the layer number. Data structure used is similar to the data structure of slice data file

[076] The generated hatch data file is then passed to the toolpath module for further processing.

[077] Toolpath planning: Toolpath module plans the path of travel of the laser over the powder layer in the rapid prototyping process (SLS). This module also determines the time required for the fabrication of the part and volume of the material utilized during fabrication from the toolpath planning. The algorithm for the generation of toolpath is mainly divided into two components. First it sets the order of hatch points for each hatch vector. Then it generates the hatch pattern vectors where a sequential order is set for all the hatch vectors present in a given layer. Toolpath points are then stored. Zigzag pattern is used for the toolpath planning to reduce the time require for the fabrication of part. The steps are explained below: a. As the edges stored in the slice data file (taken as input for the system) are not in sequence, the hatch points generated by hatching module are also not be in a sequential manner. Thus for a particular hatch value, the points are stored randomly as shown in Figure 8. With this the laser would start with P1 with Y = -2.4 then the P2 with Y= 2.4, the P3 and P4. However, this is not a correct sequence of the hatch points as far as the process is concerned. The correct sequence is P1 -P3-P4-P2 as it is essential that the laser should not move to and fro in a single hatch line. Therefore it is necessary to set an order for hatch points within a single hatch vector. This task is carried out by orderO function of the toolpath class

b. For generation of hatch pattern vectors, all the ordered hatch vectors generated from the orderO function above are clubbed together to generate the toolpath for laser travel. Accordingly, a zigzag toolpath is generated by the function orderHatchQ of toolpath class. For first hatch line, hatch points are stored in an order. For next hatch line reverse ordering is done and then stored. For third hatch line, hatch points are stored in a forward order and so on. This alternate forward and reverse ordering gives to a zigzag toolpath as shown in Figure 9. Final toolpath data is stored in a toolpathData file corresponding to a particular layer. Laser sintering will be therefore done for the 1 st and 2 nd points and no sintering will be done for the 2 nd and 3 rd points, then again sintering will be done for the 3 rd and 4 th points and so on. This is because the strategy adopted is zigzag toolpath without contouring. Points 2 nd and 3 rd lie on the contour of part as shown in Figure 10, which also takes care of even the internal contours and actual scanning occurring between 1 -2, 3-4, 5-6, 7-8. Similarly toolpath is generated for every layer in the input preprocessed file. Based on above processing, the system computes process part parameters such as build time and volume of fabricated part from data of the sliced layers, hatching points and toolpath, as follows:

a. Build time: layer setup time and laser velocity are taken as input from the user. Time require for building a layer is divided into two parts and is given as

Tb = Tp + Tnp (4)

Where, Tb = Total build time per layer; Tp = Productive time

(scanning time) and Tnp = Non-Productive time (layer setup time) b. Productive / unproductive times: Productive time is the time where actual sintering of powder is done by the laser, while, non-productive time is the time required for recoating the powder layer after completion of one layer i.e. no actual production takes place. From the final toolpath data, actual scanning distance for each layer is calculated and stored. The productive time is given by

Actual scanning distance

Tp =

Laser velocity (5)

And time for recoating the powder layer or layer setup time is specific to each machine and therefore is a user defined input. The non-productive time is given by:

Tnp = Layer setup time (6) The total time require for part fabrication is given by:

T = ∑t =1 Tbi (7)

Where, / ' is layer number, and n is number of layers c. Volume of Material required: When a laser sinters the powder along a hatch vector, rectangular box shape geometry is created in between the two hatch points. While at the end points due to the laser spot, semi cylindrical geometry is created. Hence the actual geometry of single hatch is not rectangular. The actual shape of hatch is as shown in Figure 1 1 . Hence the volume of single hatch is given by volume of rectangle and volume of one cylinder. While generating the toolpath the algorithm calculates hatch length of every single hatch. This length is used to calculate the volume of that hatch. Then the volume of next hatch is added to the previous volume. The volume of single hatch is given by:

Vol = (hatch length x hatchwidth x layer thickness) + ( ~ x hatchwidth 2 x layer thickness) (8)

And the total volume of the part is given by:

Where, / ' is layer number, n is layer number, j is hatch number, m is number of hatch vectors per layer Part Quality Assessment: Part quality refers to the smoothness of the surface produced. Part quality can be measured in two ways. Along Z direction (build direction) due to the layer by layer manufacturing of the part a stairstep effect is produced on the part as shown in Figure 12 whereas from Figure 13 (A and B), it can be seen that geometric errors generated in X and Y planes (build) are associated with the scan path, partial and full respectively, and the tool shape. Along X-Y plane a layer is manufactured by hatching. Hatching is in essence an approximation where each dexel, as shown in Figure 14, is approximately fitted in the contour of the layer. Hence the part quality in X-Y plane is also affected by error similar to that of stairstep error for build direction. Stairstep is calculated by comparing fabricated part with original CAD model. Calculation of geometric errors in X- Y plane is among the prime novel features of the present invention being unprecedented in prior art.

[080] The developed system is able to estimate the quality of the part along X-Y plane for every layer. Quality of the fabricated layer is estimated in terms of peak height, valley depth and peak to valley distance. Figure 15 shows the typical geometrical error produced in the layer by the dexels. As seen here, a. Peak height refers to the upper deviation of the part fabricated from the original dimension. It specifies the amount of extra part sintered. Due to the cylindrical geometry of endpoints for the hatch, the part fabricated always has upper deviation. In any case the upper deviation will be equal to the radius of the laser spot

Epeak R|_aser spot ■■ (10)

Where, E Pea k is peak height error and R La serspot is radius of laser spot b. Valley depth refers to the lower deviation from the original dimension.

It specifies the un-sintered portion of the fabricated part. To calculate valley depth, the first point of joining of two dexels as shown in Figure 15 is determined. The distance of that point to the original dimension line gives the valley depth for those two dexels. The distance is calculated by c. Peak to valley distance is the addition of peak height and the valley depth. It gives the overall dimensional error.

[081 ] For a given layer the Maximum Peak Height, Maximum Valley Depth and Maximum Peak to Valley Depth are calculated. The maximum values for the overall part considering all the layers are calculated and reported as output Part Quality

[082] Shrinkage estimation: To estimate the shrinkage of a part model for a chosen set of process parameters, the system proposed herein takes Part Bed Temperature, Hatch Space, Laser Speed and Laser Power as inputs from the user. Shrinkage is predicted using conventional empirical formulae specific to materials used. System also takes toolpath data as an input from the toolpath module. From toolpath data, scan length for each dexel is calculated. For example, empirical formula (reported by Raghunath et al) for the determining the shrinkage scaling factor in X, Y and Z direction, for polyamide material is given by:

S x = 1 .61 1691 - 0.01615Lp - 0.009647l_s (12)

S Y = 0.785926 - 0.032656L P + 0.000281 B s (13)

S z = -28.6238 + 0.000308B S + 0.0417H S + 0.1692T B (14)

Where, L P is the laser power in W, L s is the scan length in mm, B s is the beam speed in m/sec, H s is the hatch space in mm, T B is the part bed temperature in °C

[083] Dimensions of a dexel in X, Y and Z direction are calculate in such a way that on which if these scaling factors are applied then it will give the original dimension of the dexel. Hence the calculated dimension will be the dimension of the dexel after shrinkage. The amount of shrinkage will vary from dexel to dexel and from layer to layer. For the very first layer and first dexel there will be unconstrained shrinkage, while subsequent dexel will have constraints along the length as well as the height of the dexel. For other layers, dexels will have constrains in all the three directions. These constraints are produced due to the previous dexels and layer which are solidified by the time next dexel is produced.

[084] The very first dexel of the part is free to shrink in all the three directions without any restrictions. This is because it is surrounded by air from the top and powder from all the remaining sides which does not restrict and allows free shrinkage. When the next dexel is sintered beside, the first dexel solidifies by that time and hence it provides restriction for the second dexel. Hence it does not shrink freely. Remaining dexels are restricted along their length and along their heights. Hence these dexels will shrink less compared to first dexel. Hence, such case is considered while designing the shrinkage estimator for the current project for predicting more accurate results. Estimation of shrinkage proceeds via following steps: Shrinkage for the first layer is calculated by firstl_ayer() function of shrinkage class, which is further sub-divided to calculate shrinkage for the first dexel and the remaining subsequent dexels. For first dexel, shrinkage in X (length), Y (width) and Z (height) direction is calculated and applied directly to the dexel and shrink volume is stored. For the remaining dexels shrinkage in X, Y and Z direction is calculated. Along width (Y) there is no constraint for the dexels and hence it is directly applied. However along length and height, due to the presence of the previously sintered and solid dexel, shrinkage is restricted. To consider this effect the mean value of shrunk dimension and original dimension is calculated and those mean values are the new dimensions of remaining dexels along length (X) and height (Z). Volumes of the dexels are calculated and added to give the overall shrunk volume of first layer

For other layers, shrinkage of dexels will be restricted by the previous layer which will be solidified by the time second layer gets sintered. However, the first dexel of every other layer will not experience restriction along its height as along its height it is surrounded by un- sintered powder which will cause no restriction as shown in Fig. 3.18. First dexel of each layer will have free shrinkage along its height. The remaining subsequent dexels of the considered layer will have restriction along all directions as they are surrounded by solid dexels along its length, height and width. In the present invention, shrinkage for other layer is calculated by otherLayerO function from shrinkage. Here, similar to first layer it is subdivided into two parts shrinkage of first dexel of a layer and shrinkage estimation of other dexels - For first dexel, shrinkage along length, width and height is calculated. Shrinkage along height is directly applied as there is no constraint along height and along length and width there is constraint by previous layer. Hence mean value of shrunk dimension and original dimension is calculated and those mean values are the new dimensions of dexel along length (X) and width (Y). Volume is then calculated for the first dexel and is added to previous volume. For remaining subsequent dexels of layer, mean value of shrunk dimension and original dimension is calculated for all along length, width and height as they are restricted along all direction as shown in Fig. 3.19. These mean values along length, width and height are the new dimensions of remaining dexels. Volume of the remaining dexels is calculated and added. In this way shrinkage estimation for each layer is calculated. Finally by adding the volumes of all the dexels in each layer, volume of part fabricated considering shrinkage is calculated. The output of the shrinkage estimator module is in terms of volume of shrunk part in mm 3 .

[085] Based on above processing, layer by layer fabrication of the process in virtual environment is achieved, which can be visualized by the user in real time using the graphical user interface module, explained later in this document. Graphical simulation of rapid prototyping process by which a user / designer can interactively view the building of a single layer or multiple layers and/ or rotate, zoom or pan the virtual part to visualize the part accordingly is provided on Java 3D platform. This allows users to interact with VP system by changing the input process parameters. Swing controls of Java are used to develop the GUI for both the system inputs and system outputs. Figure 16 depicts system input GUI, whereby the user may enter primary and secondary inputs. Figure 17 depicts system output GUI, whereby the user may learn of various process/ product output parameters that further may be ordered in a structured report format.

[086] Graphical Simulation: Once all the input parameters are provided to the system then one can directly simulate the part fabrication process. Simulation is carried out similar to the actual process. First powder layer is displayed. Then toolpath information is read in and the dexel strips are displayed one by one. Simulation of the part fabrication process by Graphical Simulation Module is carried out in following manner:

a. Simulation of the un-sintered powder layer being recoated is done by powderLayerO function.

b. Once the simulation of powder layer is done then the toolpath data is read in by the module

c. Fabrication of the layer is simulated by attaching dexels to the

powder layer one at a time.

d. After simulation for single layer is completed, another un-sintered powder layer is recoated. e. To maintain the visibility of the part throughout the fabrication process transparency feature is attach to the powder layer.

f. During fabrication process user can rotate, translate and zoom in and out of part using mouse interaction

g. Un-sintered powder layer is represented with 96% transparent layer and dexel representation is done in suitable contrasting color for best visualization

[087] The present invention has been reduced to practice. Reference is now made to a single example, which showcases the manner in which the present invention is to be implemented.

[088] Example 1 : Squirrel design - Squirrel part model is selected for the case study because of its free form geometry. The STL model of squirrel is shown in Figure 18, which has 20000 facets (verified with MeshLab v1 .3.0). Figure 19 is a report detailing the input process parameters, and system outputs as obtained using method and computer-implemented system of the present invention for a defined set of materials and operating parameters.

[089] MiniMagics 2.0 was used for validation of the volume of material required for the fabrication of part. MiniMagics 2.0 gives the actual volume of the STL part model in mm 3 . Actual volume of the STL squirrel part is 219.25mm 3 whereas, system estimate of volume of material required for part fabrication was 223.21 mm 3 Therefore, the system of the present invention quite fairly estimated the volume of the part fabricated. Screen shots of graphical simulation of squirrel through various stages of virtually simulated fabrication are shown in Figure 20. By selecting different process parameters various system outputs were created and expressed in tabulated form as shown in Figure 21 , from which interrelationships and influences on productivity, product quality and economy expected in a real world environment with respect to variability in process parameters, component wear, toolpath planning, and material behavior can be easily marked.

[090] From the foregoing narration, an able technology for rapid prototyping via virtual simulation is thus provided with improved functionality, accuracy and precision than any of its closest peers in state-of-art. It shall be readily appreciated that implementation of the present invention shall result in significant reduction of time to market a product, cutting of trail costs, and shall also improved product quality by giving design and manufacturing engineers a way to quickly verify and make amendments in design before submitting to costs, efforts and constraints of actual manufacturing processes. The present invention is thus targeted primarily at Selective Laser Sintering (SLS) processes, however localization for Stereolithography (SLA), Fused Deposition Modeling (FDM), Laminated Object Manufacturing (LOM) and Solid Ground Curing (SGC) processes, and their incremental forms is intended as natural evolution of the present invention in coming time. As will be realized further, the present invention is capable of various other embodiments and that its several components and related details are capable of various alterations, all without departing from the basic concept of the present invention. Accordingly, the foregoing description will be regarded as illustrative in nature and not as restrictive in any form whatsoever. Modifications and variations of the system and apparatus described herein will be obvious to those skilled in the art. Such modifications and variations are intended to come within ambit of the present invention, which is limited only by the appended claims.