Patent Description:
Learning how to arc weld traditionally takes many hours of instruction, training, and practice. There are many different types of arc welding and arc welding processes that can be learned. Typically, welding is learned by a student using a real welding system and performing welding operations on real metal pieces. Such real-world training can tie up scarce welding resources and use up limited welding materials. Recently, however, the idea of training using welding simulations has become more popular. Some welding simulations are implemented via personal computers and/or on-line via the Internet. However, current known welding simulations tend to be limited in their training focus. For example, some welding simulations focus on training only for "muscle memory", which simply trains a welding student how to hold and position a welding tool. Other welding simulations focus on showing visual and audio effects of the welding process, but only in a limited and often unrealistic manner which does not provide the student with the desired feedback that is highly representative of real world welding. It is this actual feedback that directs the student to make necessary adjustments to make a good weld. Welding is learned by watching the arc and/or puddle, not by muscle memory.

Further limitations and disadvantages of conventional, traditional, and proposed approaches will become apparent to one of skill in the art, through comparison of such approaches with embodiments of the present invention as set forth in the remainder of the present application with reference to the drawings.

Document <CIT> discloses arc welding simulations that provide simulation of virtual destructive and non-destructive testing and inspection of virtual weldments for training purposes. The virtual testing simulations may be performed on virtual weldments created using a virtual reality welding simulator system. The virtual inspection simulations may be performed using virtual weldments created using a virtual reality welding simulator system. Virtual testing may be performed using a virtual reality welding simulator system and virtual inspection may be performed using a standalone virtual weldment inspection system or using a virtual reality welding simulator system.

It is an object to overcome the herein mentioned limitations and disadvantages. This problem is solved by a virtual reality welding system according to independent system claim <NUM> and by a virtual reality welding method according to independent claim <NUM>. Further embodiments of the invention are subject of the subclaims. An arc welding simulation has been devised that provides simulation of a weld puddle in a virtual reality space having real-time molten metal fluidity characteristics and heat absorption and heat dissipation characteristics.

These and other features of the claimed invention, as well as details of illustrated embodiments thereof, will be more fully understood from the following description and drawings.

An embodiment of the present invention comprises a virtual reality arc welding (VRAW) system comprising a programmable processor-based subsystem, a spatial tracker operatively connected to the programmable processor-based subsystem, at least one mock welding tool capable of being spatially tracked by the spatial tracker, and at least one display device operatively connected to the programmable processor-based subsystem. The system is capable of simulating, in a virtual reality space, a weld puddle having real-time molten metal fluidity and heat dissipation characteristics. The system is also capable of displaying the simulated weld puddle on the display device in real-time. The real-time molten metal fluidity and heat dissipation characteristics of the simulated weld puddle provide real-time visual feedback to a user of the mock welding tool when displayed, allowing the user to adjust or maintain a welding technique in real-time in response to the real-time visual feedback (i.e., helps the user learn to weld correctly). The displayed weld puddle is representative of a weld puddle that would be formed in the real-world based on the user's welding technique and the selected welding process and parameters. By viewing a puddle (e.g., shape, color, slag, size, stacked dimes), a user can modify his technique to make a good weld and determine the type of welding being done. The shape of the puddle is responsive to the movement of the gun or stick. As used herein, the term "real-time" means perceiving and experiencing in time in a simulated environment in the same way that a user would perceive and experience in a real-world welding scenario. Furthermore, the weld puddle is responsive to the effects of the physical environment including gravity, allowing a user to realistically practice welding in various positions including overhead welding and various pipe welding angles (e.g., <NUM>, <NUM>, <NUM>, <NUM>).

<FIG> illustrates an example embodiment of a system block diagram of a system <NUM> providing arc welding training in a real-time virtual reality environment. The system <NUM> includes a programmable processor-based subsystem (PPS) <NUM>. The system <NUM> further includes a spatial tracker (ST) <NUM> operatively connected to the PPS <NUM>. The system <NUM> also includes a physical welding user interface (WUI) <NUM> operatively connected to the PPS <NUM> and a face-mounted display device (FMDD) <NUM> operatively connected to the PPS <NUM> and the ST <NUM>. The system <NUM> further includes an observer display device (ODD) <NUM> operatively connected to the PPS <NUM>. The system <NUM> also includes at least one mock welding tool (MWT) <NUM> operatively connected to the ST <NUM> and the PPS <NUM>. The system <NUM> further includes a table/stand (T/S) <NUM> and at least one welding coupon (WC) <NUM> capable of being attached to the T/S <NUM>. In accordance with an alternative embodiment of the present invention, a mock gas bottle is provided (not shown) simulating a source of shielding gas and having an adjustable flow regulator.

<FIG> illustrates an example embodiment of a combined simulated welding console <NUM> (simulating a welding power source user interface) and observer display device (ODD) <NUM> of the system <NUM> of <FIG>. The physical WUI <NUM> resides on a front portion of the console <NUM> and provides knobs, buttons, and a joystick for user selection of various modes and functions. The ODD <NUM> is attached to a top portion of the console <NUM>. The MWT <NUM> rests in a holder attached to a side portion of the console <NUM>. Internally, the console <NUM> holds the PPS <NUM> and a portion of the ST <NUM>.

<FIG> illustrates an example embodiment of the observer display device (ODD) <NUM> of <FIG>. In accordance with an embodiment of the present invention, the ODD <NUM> is a liquid crystal display (LCD) device. Other display devices are possible as well. For example, the ODD <NUM> may be a touchscreen display, in accordance with another embodiment of the present invention. The ODD <NUM> receives video (e.g., SVGA format) and display information from the PPS <NUM>.

As shown in <FIG>, the ODD <NUM> is capable of displaying a first user scene showing various welding parameters <NUM> including position, tip to work, weld angle, travel angle, and travel speed. These parameters may be selected and displayed in real time in graphical form and are used to teach proper welding technique. Furthermore, as shown in <FIG>, the ODD <NUM> is capable of displaying simulated welding discontinuity states <NUM> including, for example, improper weld size, poor bead placement, concave bead, excessive convexity, undercut, porosity, incomplete fusion, slag inclusion, excess spatter, overfill, and burnthrough (melt through). Undercut is a groove melted into the base metal adjacent to the weld or weld root and left unfilled by weld metal. Undercut is often due to an incorrect angle of welding. Porosity is cavity type discontinuities formed by gas entrapment during solidification often caused by moving the arc too far away from the coupon.

Also, as shown in <FIG>, the ODD <NUM> is capable of displaying user selections <NUM> including menu, actions, visual cues, new coupon, and end pass. These user selections are tied to user buttons on the console <NUM>. As a user makes various selections via, for example, a touchscreen of the ODD <NUM> or via the physical WUI <NUM>, the displayed characteristics can change to provide selected information and other options to the user. Furthermore, the ODD <NUM> may display a view seen by a welder wearing the FMDD <NUM> at the same angular view of the welder or at various different angles, for example, chosen by an instructor. The ODD <NUM> may be viewed by an instructor and/or students for various training purposes. For example, the view may be rotated around the finished weld allowing visual inspection by an instructor. In accordance with an alternate embodiment of the present invention, video from the system <NUM> may be sent to a remote location via, for example, the Internet for remote viewing and/or critiquing. Furthermore, audio may be provided, allowing real-time audio communication between a student and a remote instructor.

<FIG> illustrates an example embodiment of a front portion of the simulated welding console <NUM> of <FIG> showing a physical welding user interface (WUI) <NUM>. The WUI <NUM> includes a set of buttons <NUM> corresponding to the user selections <NUM> displayed on the ODD <NUM>. The buttons <NUM> are colored to correspond to the colors of the user selections <NUM> displayed on the ODD <NUM>. When one of the buttons <NUM> is pressed, a signal is sent to the PPS <NUM> to activate the corresponding function. The WUI <NUM> also includes a joystick <NUM> capable of being used by a user to select various parameters and selections displayed on the ODD <NUM>. The WUI <NUM> further includes a dial or knob <NUM> for adjusting wire feed speed/amps, and another dial or knob <NUM> for adjusting volts/trim. The WUI <NUM> also includes a dial or knob <NUM> for selecting an arc welding process. In accordance with an embodiment of the present invention, three arc welding processes are selectable including flux cored arc welding (FCAW) including gas-shielded and self-shielded processes; gas metal arc welding (GMAW) including short arc, axial spray, STT, and pulse; gas tungsten arc welding (GTAW); and shielded metal arc welding (SMAW) including E6010 and E7010 electrodes. The WUI <NUM> further includes a dial or knob <NUM> for selecting a welding polarity. In accordance with an embodiment of the present invention, three arc welding polarities are selectable including alternating current (AC), positive direct current (DC+), and negative direct current (DC-).

<FIG> illustrates an example embodiment of a mock welding tool (MWT) <NUM> of the system <NUM> of <FIG>. The MWT <NUM> of <FIG> simulates a stick welding tool for plate and pipe welding and includes a holder <NUM> and a simulated stick electrode <NUM>. A trigger on the MWD <NUM> is used to communicate a signal to the PPS <NUM> to activate a selected simulated welding process. The simulated stick electrode <NUM> includes a tactilely resistive tip <NUM> to simulate resistive feedback that occurs during, for example, a root pass welding procedure in real-world pipe welding or when welding a plate. If the user moves the simulated stick electrode <NUM> too far back out of the root, the user will be able to feel or sense the lower resistance, thereby deriving feedback for use in adjusting or maintaining the current welding process.

It is contemplated that the stick welding tool may incorporate an actuator, not shown, that withdraws the simulated stick electrode <NUM> during the virtual welding process. That is to say that as a user engages in virtual welding activity, the distance between holder <NUM> and the tip of the simulated stick electrode <NUM> is reduced to simulate consumption of the electrode. The consumption rate, i.e. withdrawal of the stick electrode <NUM>, may be controlled by the PPS <NUM> and more specifically by coded instructions executed by the PPS <NUM>. The simulated consumption rate may also depend on the user's technique. It is noteworthy to mention here that as the system <NUM> facilitates virtual welding with different types of electrodes, the consumption rate or reduction of the stick electrode <NUM> may change with the welding procedure used and/or setup of the system <NUM>.

Other mock welding tools are possible as well, in accordance with other embodiments of the present invention, including a MWD that simulates a hand-held semiautomatic welding gun having a wire electrode fed through the gun, for example. Furthermore, in accordance with other certain embodiments of the present invention, a real welding tool could be used as the MWT <NUM> to better simulate the actual feel of the tool in the user's hands, even though, in the system <NUM>, the tool would not be used to actually create a real arc. Also, a simulated grinding tool may be provided, for use in a simulated grinding mode of the simulator <NUM>. Similarly, a simulated cutting tool may be provided, for use in a simulated cutting mode of the simulator <NUM>. Furthermore, a simulated gas tungsten arc welding (GTAW) torch or filler material may be provided for use in the simulator <NUM>.

<FIG> illustrates an example embodiment of a table/stand (T/S) <NUM> of the system <NUM> of <FIG>. The T/S <NUM> includes an adjustable table <NUM>, a stand or base <NUM>, an adjustable arm <NUM>, and a vertical post <NUM>. The table <NUM>, the stand <NUM>, and the arm <NUM> are each attached to the vertical post <NUM>. The table <NUM> and the arm <NUM> are each capable of being manually adjusted upward, downward, and rotationally with respect to the vertical post <NUM>. The arm <NUM> is used to hold various welding coupons (e.g., welding coupon <NUM>) and a user may rest his/her arm on the table <NUM> when training. The vertical post <NUM> is indexed with position information such that a user may know exactly where the arm <NUM> and the table <NUM> are vertically positioned on the post <NUM>. This vertical position information may be entered into the system by a user using the WUI <NUM> and the ODD <NUM>.

In accordance with an alternative embodiment of the present invention, the positions of the table <NUM> and the arm <NUM> may be automatically set by the PSS <NUM> via preprogrammed settings, or via the WUI <NUM> and/or the ODD <NUM> as commanded by a user. In such an alternative embodiment, the T/S <NUM> includes, for example, motors and/or servo-mechanisms, and signal commands from the PPS <NUM> activate the motors and/or servo-mechanisms. In accordance with a further alternative embodiment of the present invention, the positions of the table <NUM> and the arm <NUM> and the type of coupon are detected by the system <NUM>. In this way, a user does not have to manually input the position information via the user interface. In such an alternative embodiment, the T/S <NUM> includes position and orientation detectors and sends signal commands to the PPS <NUM> to provide position and orientation information, and the WC <NUM> includes position detecting sensors (e.g., coiled sensors for detecting magnetic fields). A user is able to see a rendering of the T/S <NUM> adjust on the ODD <NUM> as the adjustment parameters are changed, in accordance with an embodiment of the present invention.

<FIG> illustrates an example embodiment of a pipe welding coupon (WC) <NUM> of the system <NUM> of <FIG>. The WC <NUM> simulates two six inch diameter pipes <NUM>' and <NUM>" placed together to form a root <NUM> to be welded. The WC <NUM> includes a connection portion <NUM> at one end of the WC <NUM>, allowing the WC <NUM> to be attached in a precise and repeatable manner to the arm <NUM>. <FIG> illustrates the pipe WC <NUM> of <FIG> mounted on the arm <NUM> of the table/stand (TS) <NUM> of <FIG>. The precise and repeatable manner in which the WC <NUM> is capable of being attached to the arm <NUM> allows for spatial calibration of the WC <NUM> to be performed only once at the factory. Then, in the field, as long as the system <NUM> is told the position of the arm <NUM>, the system <NUM> is able to track the MWT <NUM> and the FMDD <NUM> with respect to the WC <NUM> in a virtual environment. A first portion of the arm <NUM>, to which the WC <NUM> is attached, is capable of being tilted with respect to a second portion of the arm <NUM>, as shown in <FIG>. This allows the user to practice pipe welding with the pipe in any of several different orientations and angles.

<FIG> illustrates various elements of an example embodiment of the spatial tracker (ST) <NUM> of <FIG>. The ST <NUM> is a magnetic tracker that is capable of operatively interfacing with the PPS <NUM> of the system <NUM>. The ST <NUM> includes a magnetic source <NUM> and source cable, at least one sensor <NUM> and associated cable, host software on disk <NUM>, a power source <NUM> and associated cable, USB and RS-<NUM> cables <NUM>, and a processor tracking unit <NUM>. The magnetic source <NUM> is capable of being operatively connected to the processor tracking unit <NUM> via a cable. The sensor <NUM> is capable of being operatively connected to the processor tracking unit <NUM> via a cable. The power source <NUM> is capable of being operatively connected to the processor tracking unit <NUM> via a cable. The processor tracking unit <NUM> is cable of being operatively connected to the PPS <NUM> via a USB or RS-<NUM> cable <NUM>. The host software on disk <NUM> is capable of being loaded onto the PPS <NUM> and allows functional communication between the ST <NUM> and the PPS <NUM>.

Referring to <FIG>, the magnetic source <NUM> of the ST <NUM> is mounted on the first portion of the arm <NUM>. The magnetic source <NUM> creates a magnetic field around the source <NUM>, including the space encompassing the WC <NUM> attached to the arm <NUM>, which establishes a 3D spatial frame of reference. The T/S <NUM> is largely non-metallic (non-ferric and non-conductive) so as not to distort the magnetic field created by the magnetic source <NUM>. The sensor <NUM> includes three induction coils orthogonally aligned along three spatial directions. The induction coils of the sensor <NUM> each measure the strength of the magnetic field in each of the three directions and provide that information to the processor tracking unit <NUM>. As a result, the system <NUM> is able to know where any portion of the WC <NUM> is with respect to the 3D spatial frame of reference established by the magnetic field when the WC <NUM> is mounted on the arm <NUM>. The sensor <NUM> may be attached to the MWT <NUM> or to the FMDD <NUM>, allowing the MWT <NUM> or the FMDD <NUM> to be tracked by the ST <NUM> with respect to the 3D spatial frame of reference in both space and orientation. When two sensors <NUM> are provided and operatively connected to the processor tracking unit <NUM>, both the MWT <NUM> and the FMDD <NUM> may be tracked. In this manner, the system <NUM> is capable of creating a virtual WC, a virtual MWT, and a virtual T/S in virtual reality space and displaying the virtual WC, the virtual MWT, and the virtual T/S on the FMDD <NUM> and/or the ODD <NUM> as the MWT <NUM> and the FMDD <NUM> are tracked with respect to the 3D spatial frame of reference.

In accordance with an alternative embodiment of the present invention, the sensor(s) <NUM> may wirelessly interface to the processor tracking unit <NUM>, and the processor tracking unit <NUM> may wirelessly interface to the PPS <NUM>. In accordance with other alternative embodiments of the present invention, other types of spatial trackers <NUM> may be used in the system <NUM> including, for example, an accelerometer/gyroscope-based tracker, an optical tracker (active or passive), an infrared tracker, an acoustic tracker, a laser tracker, a radio frequency tracker, an inertial tracker, and augmented reality based tracking systems. Other types of trackers may be possible as well.

<FIG> illustrates an example embodiment of the face-mounted display device <NUM> (FMDD) of the system <NUM> of <FIG>. <FIG> is an illustration of how the FMDD <NUM> of <FIG> is secured on the head of a user. <FIG> illustrates an example embodiment of the FMDD <NUM> of <FIG> integrated into a welding helmet <NUM>. The FMDD <NUM> operatively connects to the PPS <NUM> and the ST <NUM> either via wired means or wirelessly. A sensor <NUM> of the ST <NUM> may be attached to the FMDD <NUM> or to the welding helmet <NUM>, in accordance with various embodiments of the present invention, allowing the FMDD <NUM> and/or welding helmet <NUM> to be tracked with respect to the 3D spatial frame of reference created by the ST <NUM>.

In accordance with an embodiment of the present invention, the FMDD <NUM> includes two high-contrast SVGA 3D OLED microdisplays capable of delivering fluid full-motion video in the 2D and frame sequential video modes. Video of the virtual reality environment is provided and displayed on the FMDD <NUM>. A zoom (e.g., 2X) mode may be provided, allowing a user to simulate a cheater lens, for example.

The FMDD <NUM> further includes two earbud speakers <NUM>, allowing the user to hear simulated welding-related and environmental sounds produced by the system <NUM>. The FMDD <NUM> may operatively interface to the PPS <NUM> via wired or wireless means, in accordance with various embodiments of the present invention. In accordance with an embodiment of the present invention, the PPS <NUM> provides stereoscopic video to the FMDD <NUM>, providing enhanced depth perception to the user. In accordance with an alternate embodiment of the present invention, a user is able to use a control on the MWT <NUM> (e.g., a button or switch) to call up and select menus and display options on the FMDD <NUM>. This may allow the user to easily reset a weld if he makes a mistake, change certain parameters, or back up a little to re-do a portion of a weld bead trajectory, for example.

<FIG> illustrates an example embodiment of a subsystem block diagram of the programmable processor-based subsystem (PPS) <NUM> of the system <NUM> of <FIG>. The PPS <NUM> includes a central processing unit (CPU) <NUM> and two graphics processing units (GPU) <NUM>, in accordance with an embodiment of the present invention. The two GPUs <NUM> are programmed to provide virtual reality simulation of a weld puddle (a. a weld pool) having real-time molten metal fluidity and heat absorption and dissipation characteristics, in accordance with an embodiment of the present invention.

<FIG> illustrates an example embodiment of a block diagram of a graphics processing unit (GPU) <NUM> of the PPS <NUM> of <FIG>. Each GPU <NUM> supports the implementation of data parallel algorithms. In accordance with an embodiment of the present invention, each GPU <NUM> provides two video outputs <NUM> and <NUM> capable of providing two virtual reality views. Two of the video outputs may be routed to the FMDD <NUM>, rendering the welder's point of view, and a third video output may be routed to the ODD <NUM>, for example, rendering either the welder's point of view or some other point of view. The remaining fourth video output may be routed to a projector, for example. Both GPUs <NUM> perform the same welding physics computations but may render the virtual reality environment from the same or different points of view. The GPU <NUM> includes a compute unified device architecture (CUDA) <NUM> and a shader <NUM>. The CUDA <NUM> is the computing engine of the GPU <NUM> which is accessible to software developers through industry standard programming languages. The CUDA <NUM> includes parallel cores and is used to run the physics model of the weld puddle simulation described herein. The CPU <NUM> provides real-time welding input data to the CUDA <NUM> on the GPU <NUM>. The shader <NUM> is responsible for drawing and applying all of the visuals of the simulation. Bead and puddle visuals are driven by the state of a wexel displacement map which is described later herein. In accordance with an embodiment of the present invention, the physics model runs and updates at a rate of about <NUM> times per second.

<FIG> illustrates an example embodiment of a functional block diagram of the system <NUM> of <FIG>. The various functional blocks of the system <NUM> as shown in <FIG> are implemented largely via software instructions and modules running on the PPS <NUM>. The various functional blocks of the system <NUM> include a physical interface <NUM>, torch and clamp models <NUM>, environment models <NUM>, sound content functionality <NUM>, welding sounds <NUM>, stand/table model <NUM>, internal architecture functionality <NUM>, calibration functionality <NUM>, coupon models <NUM>, welding physics <NUM>, internal physics adjustment tool (tweaker) <NUM>, graphical user interface functionality <NUM>, graphing functionality <NUM>, student reports functionality <NUM>, renderer <NUM>, bead rendering <NUM>, 3D textures <NUM>, visual cues functionality <NUM>, scoring and tolerance functionality <NUM>, tolerance editor <NUM>, and special effects <NUM>.

The internal architecture functionality <NUM> provides the higher level software logistics of the processes of the system <NUM> including, for example, loading files, holding information, managing threads, turning the physics model on, and triggering menus. The internal architecture functionality <NUM> runs on the CPU <NUM>, in accordance with an embodiment of the present invention. Certain real-time inputs to the PPS <NUM> include arc location, gun position, FMDD or helmet position, gun on/off state, and contact made state (yes/no).

The graphical user interface functionality <NUM> allows a user, through the ODD <NUM> using the joystick <NUM> of the physical user interface <NUM>, to set up a welding scenario. In accordance with an embodiment of the present invention, the set up of a welding scenario includes selecting a language, entering a user name, selecting a practice plate (i.e., a welding coupon), selecting a welding process (e.g., FCAW, GMAW, SMAW) and associated axial spray, pulse, or short arc methods, selecting a gas type and flow rate, selecting a type of stick electrode (e.g., <NUM> or <NUM>), and selecting a type of flux cored wire (e.g., self-shielded, gas-shielded). The set up of a welding scenario also includes selecting a table height, an arm height, an arm position, and an arm rotation of the T/S <NUM>. The set up of a welding scenario further includes selecting an environment (e.g., a background environment in virtual reality space), setting a wire feed speed, setting a voltage level, setting an amperage, selecting a polarity, and turning particular visual cues on or off.

During a simulated welding scenario, the graphing functionality <NUM> gathers user performance parameters and provides the user performance parameters to the graphical user interface functionality <NUM> for display in a graphical format (e.g., on the ODD <NUM>). Tracking information from the ST <NUM> feeds into the graphing functionality <NUM>. The graphing functionality <NUM> includes a simple analysis module (SAM) and a whip/weave analysis module (WWAM). The SAM analyzes user welding parameters including welding travel angle, travel speed, weld angle, position, and tip to work distance by comparing the welding parameters to data stored in bead tables. The WWAM analyzes user whipping parameters including dime spacing, whip time, and puddle time. The WWAM also analyzes user weaving parameters including width of weave, weave spacing, and weave timing. The SAM and WWAM interpret raw input data (e.g., position and orientation data) into functionally usable data for graphing. For each parameter analyzed by the SAM and the WWAM, a tolerance window is defined by parameter limits around an optimum or ideal set point input into bead tables using the tolerance editor <NUM>, and scoring and tolerance functionality <NUM> is performed.

The tolerance editor <NUM> includes a weldometer which approximates material usage, electrical usage, and welding time. Furthermore, when certain parameters are out of tolerance, welding discontinuities (i.e., welding defects) may occur. The state of any welding discontinuities are processed by the graphing functionality <NUM> and presented via the graphical user interface functionality <NUM> in a graphical format. Such welding discontinuities include improper weld size, poor bead placement, concave bead, excessive convexity, undercut, porosity, incomplete fusion, slag entrapment, overfill, burnthrough, and excessive spatter. In accordance with an embodiment of the present invention, the level or amount of a discontinuity is dependent on how far away a particular user parameter is from the optimum or ideal set point.

Different parameter limits may be pre-defined for different types of users such as, for example, welding novices, welding experts, and persons at a trade show. The scoring and tolerance functionality <NUM> provide number scores depending on how close to optimum (ideal) a user is for a particular parameter and depending on the level of discontinuities or defects present in the weld. The optimum values are derived from real-world data. Information from the scoring and tolerance functionality <NUM> and from the graphics functionality <NUM> may be used by the student reports functionality <NUM> to create a performance report for an instructor and/or a student.

The system <NUM> is capable of analyzing and displaying the results of virtual welding activity. By analyzing the results, it is meant that system <NUM> is capable of determining when during the welding pass and where along the weld joints, the user deviated from the acceptable limits of the welding process. A score may be attributed to the user's performance. In one embodiment, the score may be a function of deviation in position, orientation and speed of the mock welding tool <NUM> through ranges of tolerances, which may extend from an ideal welding pass to marginal or unacceptable welding activity. Any gradient of ranges may be incorporated into the system <NUM> as chosen for scoring the user's performance. Scoring may be displayed numerically or alpha-numerically. Additionally, the user's performance may be displayed graphically showing, in time and/or position along the weld joint, how closely the mock welding tool traversed the weld joint. Parameters such as travel angle, work angle, speed, and distance from the weld joint are examples of what may be measured, although any parameters may be analyzed for scoring purposes. The tolerance ranges of the parameters are taken from real-world welding data, thereby providing accurate feedback as to how the user will perform in the real world. In another embodiment, analysis of the defects corresponding to the user's performance may also be incorporated and displayed on the ODD <NUM>. In this embodiment, a graph may be depicted indicating what type of discontinuity resulted from measuring the various parameters monitored during the virtual welding activity. While occlusions may not be visible on the ODD <NUM>, defects may still have occurred as a result of the user's performance, the results of which may still be correspondingly displayed, i.e. graphed.

Visual cues functionality <NUM> provide immediate feedback to the user by displaying overlaid colors and indicators on the FMDD <NUM> and/or the ODD <NUM>. Visual cues are provided for each of the welding parameters <NUM> including position, tip to work distance, weld angle, travel angle, travel speed, and arc length (e.g., for stick welding) and visually indicate to the user if some aspect of the user's welding technique should be adjusted based on the predefined limits or tolerances. Visual cues may also be provided for whip/weave technique and weld bead "dime" spacing, for example. Visual cues may be set independently or in any desired combination.

Calibration functionality <NUM> provides the capability to match up physical components in real world space (3D frame of reference) with visual components in virtual reality space. Each different type of welding coupon (WC) is calibrated in the factory by mounting the WC to the arm <NUM> of the T/S <NUM> and touching the WC at predefined points (indicated by, for example, three dimples on the WC) with a calibration stylus operatively connected to the ST <NUM>. The ST <NUM> reads the magnetic field intensities at the predefined points, provides position information to the PPS <NUM>, and the PPS <NUM> uses the position information to perform the calibration (i.e., the translation from real world space to virtual reality space).

Any particular type of WC fits into the arm <NUM> of the T/S <NUM> in the same repeatable way to within very tight tolerances. Therefore, once a particular WC type is calibrated, that WC type does not have to be re-calibrated (i.e., calibration of a particular type of WC is a one-time event). WCs of the same type are interchangeable. Calibration ensures that physical feedback perceived by the user during a welding process matches up with what is displayed to the user in virtual reality space, making the simulation seem more real. For example, if the user slides the tip of a MWT <NUM> around the corner of a actual WC <NUM>, the user will see the tip sliding around the corner of the virtual WC on the FMDD <NUM> as the user feels the tip sliding around the actual corner. In accordance with an embodiment of the present invention, the MWT <NUM> is placed in a pre-positioned jig and is calibrated as well, based on the known jig position.

In accordance with an alternative embodiment of the present invention, "smart" coupons are provided, having sensors on, for example, the corners of the coupons. The ST <NUM> is able to track the corners of a "smart" coupon such that the system <NUM> continuously knows where the "smart" coupon is in real world 3D space. In accordance with a further alternative embodiment of the present invention, licensing keys are provided to "unlock" welding coupons. When a particular WC is purchased, a licensing key is provided allowing the user to enter the licensing key into the system <NUM>, unlocking the software associated with that WC. In accordance with another embodiment of the present invention, special non-standard welding coupons may be provided based on real-world CAD drawings of parts. Users may be able to train on welding a CAD part even before the part is actually produced in the real world.

Sound content functionality <NUM> and welding sounds <NUM> provide particular types of welding sounds that change depending on if certain welding parameters are within tolerance or out of tolerance. Sounds are tailored to the various welding processes and parameters. For example, in a MIG spray arc welding process, a crackling sound is provided when the user does not have the MWT <NUM> positioned correctly, and a hissing sound is provided when the MWT <NUM> is positioned correctly. In a short arc welding process, a steady crackling or frying sound is provided for proper welding technique, and a hissing sound may be provided when undercutting is occurring. These sounds mimic real world sounds corresponding to correct and incorrect welding technique.

High fidelity sound content may be taken from real world recordings of actual welding using a variety of electronic and mechanical means, in accordance with various embodiments of the present invention. In accordance with an embodiment of the present invention, the perceived volume and directionality of sound is modified depending on the position, orientation, and distance of the user's head (assuming the user is wearing a FMDD <NUM> that is tracked by the ST <NUM>) with respect to the simulated arc between the MWT <NUM> and the WC <NUM>. Sound may be provided to the user via ear bud speakers <NUM> in the FMDD <NUM> or via speakers configured in the console <NUM> or T/S <NUM>, for example.

Environment models <NUM> are provided to provide various background scenes (still and moving) in virtual reality space. Such background environments may include, for example, an indoor welding shop, an outdoor race track, a garage, etc. and may include moving cars, people, birds, clouds, and various environmental sounds. The background environment may be interactive, in accordance with an embodiment of the present invention. For example, a user may have to survey a background area, before starting welding, to ensure that the environment is appropriate (e.g., safe) for welding. Torch and clamp models <NUM> are provided which model various MWTs <NUM> including, for example, guns, holders with stick electrodes, etc. in viruatl reality space.

Coupon models <NUM> are provided which model various WCs <NUM> including, for example, flat plate coupons, T-joint coupons, butt-joint coupons, groove-weld coupons, and pipe coupons (e.g., <NUM>-inch diameter pipe and <NUM>-inch diameter pipe) in virtual reality space. A stand/table model <NUM> is provided which models the various parts of the T/S <NUM> including an adjustable table <NUM>, a stand <NUM>, an adjustable arm <NUM>, and a vertical post <NUM> in virtual reality space. A physical interface model <NUM> is provided which models the various parts of the welding user interface <NUM>, console <NUM>, and ODD <NUM> in virtual reality space.

In accordance with an embodiment of the present invention, simulation of a weld puddle or pool in virtual reality space is accomplished where the simulated weld puddle has real-time molten metal fluidity and heat dissipation characteristics. At the heart of the weld puddle simulation is the welding physics functionality <NUM> (a. , the physics model) which is run on the GPUs <NUM>, in accordance with an embodiment of the present invention. The welding physics functionality employs a double displacement layer technique to accurately model dynamic fluidity/viscosity, solidity, heat gradient (heat absorption and dissipation), puddle wake, and bead shape, and is described in more detail herein with respect to Figs.

The welding physics functionality <NUM> communicates with the bead rendering functionality <NUM> to render a weld bead in all states from the heated molten state to the cooled solidified state. The bead rendering functionality <NUM> uses information from the welding physics functionality <NUM> (e.g., heat, fluidity, displacement, dime spacing) to accurately and realistically render a weld bead in virtual reality space in real-time. The 3D textures functionality <NUM> provides texture maps to the bead rendering functionality <NUM> to overlay additional textures (e.g., scorching, slag, grain) onto the simulated weld bead. For example, slag may be shown rendered over a weld bead during and just after a welding process, and then removed to reveal the underlying weld bead. The renderer functionality <NUM> is used to render various non-puddle specific characteristics using information from the special effects module <NUM> including sparks, spatter, smoke, arc glow, fumes and gases, and certain discontinuities such as, for example, undercut and porosity.

The internal physics adjustment tool <NUM> is a tweaking tool that allows various welding physics parameters to be defined, updated, and modified for the various welding processes. In accordance with an embodiment of the present invention, the internal physics adjustment tool <NUM> runs on the CPU <NUM> and the adjusted or updated parameters are downloaded to the GPUs <NUM>. The types of parameters that may be adjusted via the internal physics adjustment tool <NUM> include parameters related to welding coupons, process parameters that allow a process to be changed without having to reset a welding coupon (allows for doing a second pass), various global parameters that can be changed without resetting the entire simulation, and other various parameters.

<FIG> is a flow chart of an embodiment of a method <NUM> of training using the virtual reality training system <NUM> of <FIG>. In step <NUM>, move a mock welding tool with respect to a welding coupon in accordance with a welding technique. In step <NUM>, track position and orientation of the mock welding tool in three-dimensional space using a virtual reality system. In step <NUM>, view a display of the virtual reality welding system showing a real-time virtual reality simulation of the mock welding tool and the welding coupon in a virtual reality space as the simulated mock welding tool deposits a simulated weld bead material onto at least one simulated surface of the simulated welding coupon by forming a simulated weld puddle in the vicinity of a simulated arc emitting from said simulated mock welding tool. In step <NUM>, view on the display, real-time molten metal fluidity and heat dissipation characteristics of the simulated weld puddle. In step <NUM>, modify in real-time, at least one aspect of the welding technique in response to viewing the real-time molten metal fluidity and heat dissipation characteristics of the simulated weld puddle.

The method <NUM> illustrates how a user is able to view a weld puddle in virtual reality space and modify his welding technique in response to viewing various characteristics of the simulated weld puddle, including real-time molten metal fluidity (e.g., viscosity) and heat dissipation. The user may also view and respond to other characteristics including real-time puddle wake and dime spacing. Viewing and responding to characteristics of the weld puddle is how most welding operations are actually performed in the real world. The double displacement layer modeling of the welding physics functionality <NUM> run on the GPUs <NUM> allows for such real-time molten metal fluidity and heat dissipation characteristics to be accurately modeled and represented to the user. For example, heat dissipation determines solidification time (i.e., how much time it takes for a wexel to completely solidify).

Furthermore, a user may make a second pass over the weld bead material using the same or a different (e.g., a second) mock welding tool and/or welding process. In such a second pass scenario, the simulation shows the simulated mock welding tool, the welding coupon, and the original simulated weld bead material in virtual reality space as the simulated mock welding tool deposits a second simulated weld bead material merging with the first simulated weld bead material by forming a second simulated weld puddle in the vicinity of a simulated arc emitting from the simulated mock welding tool. Additional subsequent passes using the same or different welding tools or processes may be made in a similar manner. In any second or subsequent pass, the previous weld bead material is merged with the new weld bead material being deposited as a new weld puddle is formed in virtual reality space from the combination of any of the previous weld bead material, the new weld bead material, and possibly the underlying coupon material in accordance with certain embodiments of the present invention. Such subsequent passes may be needed to make a large fillet or groove weld, performed to repair a weld bead formed by a previous pass, for example, or may include a hot pass and one or more fill and cap passes after a root pass as is done in pipe welding. In accordance with various embodiments of the present invention, weld bead and base material may include mild steel, stainless steel, aluminum, nickel based alloys, or other materials.

<FIG> illustrate the concept of a welding element (wexel) displacement map <NUM>, in accordance with an embodiment of the present invention. <FIG> shows a side view of a flat welding coupon (WC) <NUM> having a flat top surface <NUM>. The welding coupon <NUM> exists in the real world as, for example, a plastic part, and also exists in virtual reality space as a simulated welding coupon. <FIG> shows a representation of the top surface <NUM> of the simulated WC <NUM> broken up into a grid or array of welding elements (i.e., wexels) forming a wexel map <NUM>. Each wexel (e.g., wexel <NUM>) defines a small portion of the surface <NUM> of the welding coupon. The wexel map defines the surface resolution. Changeable channel parameter values are assigned to each wexel, allowing values of each wexel to dynamically change in real-time in virtual reality weld space during a simulated welding process. The changeable channel parameter values correspond to the channels Puddle (molten metal fluidity/viscosity displacement), Heat (heat absorption/dissipation), Displacement (solid displacement), and Extra (various extra states, e.g., slag, grain, scorching, virgin metal). These changeable channels are referred to herein as PHED for Puddle, Heat, Extra, and Displacement, respectively.

<FIG> illustrates an example embodiment of a coupon space and a weld space of the flat welding coupon (WC) <NUM> of <FIG> simulated in the system <NUM> of <FIG>. Points O, X, Y, and Z define the local 3D coupon space. In general, each coupon type defines the mapping from 3D coupon space to 2D virtual reality weld space. The wexel map <NUM> of <FIG> is a two-dimensional array of values that map to weld space in virtual reality. A user is to weld from point B to point E as shown in <FIG>. A trajectory line from point B to point E is shown in both 3D coupon space and 2D weld space in <FIG>.

Each type of coupon defines the direction of displacement for each location in the wexel map. For the flat welding coupon of <FIG>, the direction of displacement is the same at all locations in the wexel map (i.e., in the Z-direction). The texture coordinates of the wexel map are shown as S, T (sometimes called U, V) in both 3D coupon space and 2D weld space, in order to clarify the mapping. The wexel map is mapped to and represents the rectangular surface <NUM> of the welding coupon <NUM>.

<FIG> illustrates an example embodiment of a coupon space and a weld space of a corner (tee joint) welding coupon (WC) <NUM> simulated in the system <NUM> of <FIG>. The corner WC <NUM> has two surfaces <NUM> and <NUM> in 3D coupon space that are mapped to 2D weld space as shown in <FIG>. Again, points O, X, Y, and Z define the local 3D coupon space. The texture coordinates of the wexel map are shown as S, T in both 3D coupon space and 2D weld space, in order to clarify the mapping. A user is to weld from point B to point E as shown in <FIG>. A trajectory line from point B to point E is shown in both 3D coupon space and 2D weld space in <FIG>. However, the direction of displacement is towards the line X'-O' as shown in the 3D coupon space, towards the opposite corner as shown in <FIG>.

<FIG> illustrates an example embodiment of a coupon space and a weld space of a pipe welding coupon (WC) <NUM> simulated in the system <NUM> of <FIG>. The pipe WC <NUM> has a curved surface <NUM> in 3D coupon space that is mapped to 2D weld space as shown in <FIG>. Again, points O, X, Y, and Z define the local 3D coupon space. The texture coordinates of the wexel map are shown as S, T in both 3D coupon space and 2D weld space, in order to clarify the mapping. A user is to weld from point B to point E along a curved trajectory as shown in <FIG>. A trajectory curve and line from point B to point E is shown in 3D coupon space and 2D weld space, respectively, in <FIG>. The direction of displacement is away from the line Y-O (i.e., away from the center of the pipe). <FIG> illustrates an example embodiment of the pipe welding coupon (WC) <NUM> of <FIG>. The pipe WC <NUM> is made of a non-ferric, non-conductive plastic and simulates two pipe pieces <NUM> and <NUM> coming together to form a root joint <NUM>. An attachment piece <NUM> for attaching to the arm <NUM> of the T/S <NUM> is also shown.

In a similar manner that a texture map may be mapped to a rectangular surface area of a geometry, a weldable wexel map may be mapped to a rectangular surface of a welding coupon. Each element of the weldable map is termed a wexel in the same sense that each element of a picture is termed a pixel (a contraction of picture element). A pixel contains channels of information that define a color (e.g., red, green, blue, etc.). A wexel contains channels of information (e.g., P, H, E, D) that define a weldable surface in virtual reality space.

In accordance with an embodiment of the present invention, the format of a wexel is summarized as channels PHED (Puddle, Heat, Extra, Displacement) which contains four floating point numbers. The Extra channel is treated as a set of bits which store logical information about the wexel such as, for example, whether or not there is any slag at the wexel location. The Puddle channel stores a displacement value for any liquefied metal at the wexel location. The Displacement channel stores a displacement value for the solidified metal at the wexel location. The Heat channel stores a value giving the magnitude of heat at the wexel location. In this way, the weldable part of the coupon can show displacement due to a welded bead, a shimmering surface "puddle" due to liquid metal, color due to heat, etc. All of these effects are achieved by the vertex and pixel shaders applied to the weldable surface.

In accordance with an embodiment of the present invention, a displacement map and a particle system are used where the particles can interact with each other and collide with the displacement map. The particles are virtual dynamic fluid particles and provide the liquid behavior of the weld puddle but are not rendered directly (i.e., are not visually seen directly). Instead, only the particle effects on the displacement map are visually seen. Heat input to a wexel affects the movement of nearby particles. There are two types of displacement involved in simulating a welding puddle which include Puddle and Displacement. Puddle is "temporary" and only lasts as long as there are particles and heat present. Displacement is "permanent". Puddle displacement is the liquid metal of the weld which changes rapidly (e.g., shimmers) and can be thought of as being "on top" of the Displacement. The particles overlay a portion of a virtual surface displacement map (i.e., a wexel map). The Displacement represents the permanent solid metal including both the initial base metal and the weld bead that has solidified.

In accordance with an embodiment of the present invention, the simulated welding process in virtual reality space works as follows: Particles stream from the emitter (emitter of the simulated MWT <NUM>) in a thin cone. The particles make first contact with the surface of the simulated welding coupon where the surface is defined by a wexel map. The particles interact with each other and the wexel map and build up in real-time. More heat is added the nearer a wexel is to the emitter. Heat is modeled in dependence on distance from the arc point and the amount of time that heat is input from the arc. Certain visuals (e.g., color, etc.) are driven by the heat. A weld puddle is drawn or rendered in virtual reality space for wexels having enough heat. Wherever it is hot enough, the wexel map liquefies, causing the Puddle displacement to "raise up" for those wexel locations. Puddle displacement is determined by sampling the "highest" particles at each wexel location. As the emitter moves on along the weld trajectory, the wexel locations left behind cool. Heat is removed from a wexel location at a particular rate. When a cooling threshold is reached, the wexel map solidifies. As such, the Puddle displacement is gradually converted to Displacement (i.e., a solidified bead). Displacement added is equivalent to Puddle removed such that the overall height does not change. Particle lifetimes. are tweaked or adjusted to persist until solidification is complete. Certain particle properties that are modeled in the system <NUM> include attraction/repulsion, velocity (related to heat), dampening (related to heat dissipation), direction (related to gravity).

<FIG> illustrate an example embodiment of the concept of a dual-displacement (displacement and particles) puddle model of the system <NUM> of <FIG>. Welding coupons are simulated in virtual reality space having at least one surface. The surfaces of the welding coupon are simulated in virtual reality space as a double displacement layer including a solid displacement layer and a puddle displacement layer. The puddle displacement layer is capable of modifying the solid displacement layer.

As described herein, "puddle" is defined by an area of the wexel map where the Puddle value has been raised up by the presence of particles. The sampling process is represented in <FIG>. A section of a wexel map is shown having seven adjacent wexels. The current Displacement values are represented by un-shaded rectangular bars <NUM> of a given height (i.e., a given displacement for each wexel). In <FIG>, the particles <NUM> are shown as round un-shaded dots colliding with the current Displacement levels and are piled up. In <FIG>, the "highest" particle heights <NUM> are sampled at each wexel location. In <FIG>, the shaded rectangles <NUM> show how much Puddle has been added on top of the Displacement as a result of the particles. The weld puddle height is not instantly set to the sampled values since Puddle is added at a particular liquification rate based on Heat. Although not shown in <FIG>, it is possible to visualize the solidification process as the Puddle (shaded rectangles) gradually shrink and the Displacement (un-shaded rectangles) gradually grow from below to exactly take the place of the Puddle. In this manner, real-time molten metal fluidity characteristics are accurately simulated. As a user practices a particular welding process, the user is able to observe the molten metal fluidity characteristics and the heat dissipation characteristics of the weld puddle in real-time in virtual reality space and use this information to adjust or maintain his welding technique.

The number of wexels representing the surface of a welding coupon is fixed. Furthermore, the puddle particles that are generated by the simulation to model fluidity are temporary, as described herein. Therefore, once an initial puddle is generated in virtual reality space during a simulated welding process using the system <NUM>, the number of wexels plus puddle particles tends to remain relatively constant. This is because the number of wexels that are being processed is fixed and the number of puddle particles that exist and are being processed during the welding process tend to remain relatively constant because puddle particles are being created and "destroyed" at a similar rate (i.e., the puddle particles are temporary). Therefore, the processing load of the PPS <NUM> remains relatively constant during a simulated welding session.

In accordance with an alternate embodiment of the present invention, puddle particles may be generated within or below the surface of the welding coupon. In such an embodiment, displacement may be modeled as being positive or negative with respect to the original surface displacement of a virgin (i.e., un-welded) coupon. In this manner, puddle particles may not only build up on the surface of a welding coupon, but may also penetrate the welding coupon. However, the number of wexels is still fixed and the puddle particles being created and destroyed is still relatively constant.

In accordance with alternate embodiments of the present invention, instead of modeling particles, a wexel displacement map may be provided having more channels to model the fluidity of the puddle. Or, instead of modeling particles, a dense voxel map may be modeled. Or, instead of a wexel map, only particles may be modeled which are sampled and never go away. Such alternative embodiments may not provide a relatively constant processing load for the system, however.

Furthermore, in accordance with an embodiment of the present invention, blow-through or a keyhole is simulated by taking material away. For example, if a user keeps an arc in the same location for too long, in the real world, the material would burn away causing a hole. Such real-world burnthrough is simulated in the system <NUM> by wexel decimation techniques. If the amount of heat absorbed by a wexel is determined to be too high by the system <NUM>, that wexel may be flagged or designated as being burned away and rendered as such (e.g., rendered as a hole). Subsequently, however, wexel re-constitution may occur for certain welding processs (e.g., pipe welding) where material is added back after being initially burned away. In general, the system <NUM> simulates wexel decimation (taking material away) and wexel reconstitution (i.e., adding material back). Furthermore, removing material in root-pass welding is properly simulated in the system <NUM>.

Furthermore, removing material in root-pass welding is properly simulated in the system <NUM>. For example, in the real world, grinding of the root pass may be performed prior to subsequent welding passes. Similarly, system <NUM> may simulate a grinding pass that removes material from the virtual weld joint. It will be appreciated that the material removed may be modeled as a negative displacement on the wexel map. That is to say that the grinding pass removes material that is modeled by the system <NUM> resulting in an altered bead contour. Simulation of the grinding pass may be automatic, which is to say that the system <NUM> removes a predetermined thickness of material, which may be respective to the surface of the root pass weld bead.

In an alternative embodiment, an actual grinding tool, or grinder, may be simulated that turns on and off by activation of the mock welding tool <NUM> or another input device. It is noted that the grinding tool may be simulated to resemble a real world grinder. In this embodiment, the user maneuvers the grinding tool along the root pass to remove material responsive to the movement thereof. It will be understood that the user may be allowed to remove too much material. In a manner similar to that described above, holes or other defects (described above) may result if the user grinds away too much material. Still, hard limits or stops may be implemented, i.e. programmed, to prevent the user from removing too much material or indicate when too much material is being removed.

In addition to the non-visible "puddle" particles described herein, the system <NUM> also uses three other types of visible particles to represent Arc, Flame, and Spark effects, in accordance with an embodiment of the present invention. These types of particles do not interact with other particles of any type but interact only with the displacement map. While these particles do collide with the simulated weld surface, they do not interact with each other. Only Puddle particles interact with each other, in accordance with an embodiment of the present invention. The physics of the Spark particles is setup such that the Spark particles bounce around and are rendered as glowing dots in virtual reality space.

The physics of the Arc particles is setup such that the Arc particles hit the surface of the simulated coupon or weld bead and stay for a while. The Arc particles are rendered as larger dim bluish-white spots in virtual reality space. It takes many such spots superimposed to form any sort of visual image. The end result is a white glowing nimbus with blue edges.

The physics of the Flame particles is modeled to slowly raise upward. The Flame particles are rendered as medium sized dim red-yellow spots. It takes many such spots superimposed to form any sort of visual image. The end result is blobs of orange-red flames with red edges raising upward and fading out. Other types of non-puddle particles may be implemented in the system <NUM>, in accordance with other embodiments of the present invenntion. For example, smoke particles may be modeled and simulated in a similar manner to flame particles.

The final steps in the simulated visualization are handled by the vertex and pixel shaders provided by the shaders <NUM> of the GPUs <NUM>. The vertex and pixel shaders apply Puddle and Displacement, as well as surface colors and reflectivity altered due to heat, etc. The Extra (E) channel of the PHED wexel format, as discussed earlier herein, contains all of the extra information used per wexel. In accordance with an embodiment of the present invention, the extra information includes a non virgin bit (true=bead, false=virgin steel), a slag bit, an undercut value (amount of undercut at this wexel where zero equals no undercut), a porosity value (amount of porosity at this wexel where zero equals no porosity), and a bead wake value which encodes the time at which the bead solidifies. There are a set of image maps associated with different coupon visuals including virgin steel, slag, bead, and porosity. These image maps are used both for bump mapping and texture mapping. The amount of blending of these image maps is controlled by the various flags and values described herein.

A bead wake effect is achieved using a 1D image map and a per wexel bead wake value that encodes the time at which a given bit of bead is solidified. Once a hot puddle wexel location is no longer hot enough to be called "puddle", a time is saved at that location and is called "bead wake". The end result is that the shader code is able to use the 1D texture map to draw the "ripples" that give a bead its unique appearance which portrays the direction in which the bead was laid down. In accordance with an alternative embodiment of the present invention, the system <NUM> is capable of simulating, in virtual reality space, and displaying a weld bead having a real-time weld bead wake characteristic resulting from a real-time fluidity-to-solidification transition of the simulated weld puddle, as the simulated weld puddle is moved along a weld trajectory.

In accordance with an alternative embodiment of the present invention, the system <NUM> is capable of teaching a user how to troubleshoot a welding machine. For example, a troubleshooting mode of the system may train a user to make sure he sets up the system correctly (e.g., correct gas flow rate, correct power cord connected, etc.) In accordance with another alternate embodiment of the present invention, the system <NUM> is capable of recording and playing back a welding session (or at least a portion of a welding session, for example, N frames). A track ball may be provided to scroll through frames of video, allowing a user or instructor to critique a welding session. Playback may be provided at selectable speeds as well (e.g., full speed, half speed, quarter speed). In accordance with an embodiment of the present invention, a split-screen playback may be provided, allowing two welding sessions to be viewed side-by-side, for example, on the ODD <NUM>. For example, a "good" welding session may be viewed next to a "poor" welding session for comparison purposes.

In summary, disclosed is a real-time virtual reality welding system including a programmable processor-based subsystem, a spatial tracker operatively connected to the programmable processor-based subsystem, at least one mock welding tool capable of being spatially tracked by the spatial tracker, and at least one display device operatively connected to the programmable processor-based subsystem. The system is capable of simulating, in virtual reality space, a weld puddle having real-time molten metal fluidity and heat dissipation characteristics. The system is further capable of displaying the simulated weld puddle on the display device in real-time.

One embodiment provides a virtual reality arc welding system. The system includes a programmable processor-based subsystem, a spatial tracker operatively connected to the programmable processor-based subsystem, at least one wireless mock welding tool configured to wirelessly communicate with the programmable processor-based subsystem and the spatial tracker, and at least one wireless face-mounted display device configured to wirelessly communicate with the programmable processor-based subsystem and the spatial tracker. A wireless mock welding tool and a wireless face-mounted display may provide the user of the system with more mobility and flexibility during a simulated welding process. The system is configured to simulate, in a virtual reality environment, a weld puddle having real-time molten metal fluidity and heat dissipation characteristics, and display the simulated weld puddle on the at least one wireless face-mounted display device in real time. The system may also include a wireless hub device communicatively wired to the programmable processor-based subsystem and the spatial tracker, wherein the at least one wireless mock welding tool and the at least one wireless face-mounted display device each wirelessly communicate with the programmable processor-based subsystem and the spatial tracker through the wireless hub device. The system may further include a mock welding cable attached to the at least one mock welding tool and configured to simulate at least a weight and a stiffness of a real welding cable.

<FIG> illustrates a second example embodiment of a system block diagram of a system <NUM> providing arc welding training in a real-time virtual reality environment. The system <NUM> is similar to the system <NUM> of <FIG>. However, in accordance with an embodiment, the system <NUM> includes a wireless hub device <NUM> that is operatively wired to the PPS <NUM> and the ST <NUM> to communicate with each, respectively. The wireless hub device <NUM> allows any truly wireless component of the system <NUM> to communicate with the PPS <NUM> and/or the ST <NUM>.

In accordance with an embodiment, in the system <NUM> of <FIG>, the mock welding tool (MWT) <NUM> is wireless and the face-mounted display device (FMDD) <NUM> is wireless and each communicate with the PPS <NUM> and the ST <NUM> via the wireless hub device <NUM>. Other optional elements of the system may be wireless as well such as, for example, a foot pedal device for controlling simulated welding current for a gas tungsten arc welding simulation. In accordance with an alternative embodiment, the wireless hub device <NUM> is not present and, instead, the PPS <NUM> and the ST <NUM> are each configured to wirelessly communicate directly with the wireless FMDD <NUM> and/or the wireless MWT <NUM>. Wireless communication, as discussed herein, may be accomplished through any of various types of wireless technologies including radio frequency technologies such as, for example, WiFi or Bluetooth®. Other wireless technologies such as, for example, infrared technologies or acoustic technologies may also be employed, in accordance with various other embodiments.

In accordance with an embodiment, even though the mock welding tool is wireless and, therefore, does not need to have a wired connection to any other part of the system <NUM>, a mock welding cable <NUM> may be attached to the wireless mock welding tool to simulate a weight and a stiffness of a real welding cable. In this manner, a welding student would not be mislead by the ease-of-use of a wireless mock welding tool without such a mock welding cable.

Another embodiment provides a method of using a virtual reality welding system. The method includes displaying an image of a virtual weld joint having a weld bead, on a display device of a virtual reality welding system, that was generated using the virtual reality welding system. The method further includes scrolling across a length dimension of the image of the virtual weld joint using a user interface of the virtual reality welding system, and displaying an image of a cross-sectional area through the virtual weld joint at successive locations along the length dimension of the image of the virtual weld joint on the display device of the virtual reality welding system in response to the scrolling. The method may also include displaying a cross-section indicator on the display device of the virtual reality welding system indicating a location along the length dimension of the image of the virtual weld joint corresponding to the image of the displayed cross-sectional area. The method may further include stopping the scrolling at a location along the length dimension of the image of the virtual weld joint and observing a displayed image of a cross-sectional area through the virtual weld joint at the location. A displayed image of the cross-sectional area through the virtual weld joint at a location along the length dimension of the image of the virtual weld joint may show welding characteristics of the virtual weld joint at the location as simulated by the virtual reality welding system. The welding characteristics may include, for example, virtual penetration into a virtual welding coupon and internal defects and discontinuities, as simulated by the virtual reality welding system. The method may also include automatically looping in time across a length dimension of the image of the virtual weld joint between a first location and a second location, successively displaying in time during the looping an image of the cross-sectional area through the virtual weld joint at each of a plurality of defined locations spanning from the first location to the second location.

<FIG> illustrates a displayed image of a virtual weld joint <NUM> having a weld bead appearance that may be displayed on a display device of a virtual reality welding system (e.g., the system <NUM>). In accordance with an embodiment, the virtual weld joint <NUM> is generated using the virtual reality welding system and is represented within the virtual reality welding system as stored data being representative of the virtual weld joint <NUM> in three-dimensions. Therefore, the virtual weld joint <NUM> is represented within the virtual reality welding system as having both external and internal characteristics.

The external characteristics may include, for example, shape, color, slag, size, and stacked dimes appearance. The internal characteristics may include, for example, an amount of penetration into a virtual welding coupon and internal defects and discontinuities, properly represented in three-dimensions. The internal and external characteristics of the virtual weld joint <NUM> are a result of the virtual welding process that created the virtual weld joint <NUM>, including user technique and the modeled physics and metallurgical properties simulated in real time in the virtual reality welding system.

In accordance with an embodiment, a user may use a portion of the user interface <NUM> or <NUM> (e.g., a trackball, a knob, a button, a joystick, or a user's finger dragged across a touch-screen display device) to scroll a cross-section indicator <NUM> across a length dimension <NUM> of the displayed image of the virtual weld joint in one direction or the other. In <FIG>, the cross-section indicator <NUM> is shown as a displayed dotted line intersecting the displayed virtual weld joint <NUM> at a particular location.

Based on the location of the cross-section indicator <NUM> along the length of the image of the virtual weld joint <NUM>, the virtual reality welding system displays an image of the cross-sectional area <NUM> of the virtual weld joint <NUM> at that location showing the internal characteristics of the virtual weld joint. As the user moves the location of the cross-section indicator <NUM> along the length of the image of the virtual weld joint <NUM>, a different image of a different cross-sectional area corresponding to the new location is displayed. In accordance with an embodiment, a defined number of equally spaced images of cross-sectional areas are generated by the virtual reality welding system across the length dimension <NUM> of the virtual weld joint <NUM>. The cross-sectional images may be generated automatically as the virtual weld joint <NUM> is formed, or after the virtual weld joint <NUM> is formed, for example, upon command of the user.

In this manner, a user may scroll across the length of the image of the virtual weld joint to selectively display and observe the internal characteristics of the virtual weld joint at different locations. As an example, a user may find that the internal characteristics along one part of the virtual weld joint are much better than the internal characteristics along another part of the virtual weld joint, even though the external characteristics may look fine along both parts. The user may then explore how to change one or more aspects of his welding technique to improve the internal characteristics across the entire weld joint.

<FIG> illustrates the displayed image of the virtual weld joint <NUM> of <FIG> having a weld bead appearance, that may be displayed on a display device of a virtual reality welding system. In accordance with an embodiment, a user may employ a user interface of the virtual reality welding system to designate a first location "A" and a second location "B" along the length dimension <NUM> of the image of the virtual weld joint <NUM> over which the cross-section indicator <NUM> may loop. Furthermore, the virtual reality welding system may be commanded to automatically loop in time across the length dimension <NUM> of the image of the virtual reality weld joint <NUM> between the first location "A" and the second location "B", successively displaying in time during the looping an image of a cross-sectional area <NUM> through the virtual weld joint <NUM> at each of a plurality of defined locations spanning from the first location "A" to the second location "B".

The number of defined locations and corresponding images of cross-sectional areas between location "A" and location "B" depend on the resolution and data processing capability of the virtual reality welding system. For example, in accordance with an embodiment, there may be sixty-four (<NUM>) equally spaced defined locations from the first location "A" to the second location "B". As a result, the virtual reality welding system may loop through sixty-four (<NUM>) unique images of corresponding cross-sectional areas of the virtual weld joint <NUM>. In accordance with an embodiment, a user may be able to scroll and loop along the circumference dimension of a virtual weld joint of a pipe in a similar manner to view cross-sectional areas. Again, the cross-sectional images may be generated automatically as the virtual weld joint <NUM> is formed, or after the virtual weld joint <NUM> is formed, for example, upon command of the user.

A further embodiment provides a method of using a virtual reality welding system. The method includes generating a virtual weld joint having a virtual weld bead using a virtual reality welding system. The virtual weld joint is represented within the virtual reality welding system as a first digital data set. The method further includes generating a three-dimensional (3D) digital model representative of at least a portion of the virtual weld joint using the first digital data set on the virtual reality welding system, wherein the 3D digital model is operatively compatible with a 3D printing system. The method may also include transferring the 3D digital model to the 3D printing system, and printing a 3D physical model representative of at least a portion of the virtual weld joint using the 3D digital model on the 3D printing system. The 3D physical model may be made of at least one of a plastic material, a metal material, or a ceramic material. The virtual weld joint may include a virtual welding coupon as modified by the virtual weld bead. The 3D printing system may be in operative communication with the virtual reality welding system and the transferring of the 3D digital model may be accomplished via the operative communication. The operative communication between the virtual reality welding system and the 3D printing system may be via a wired means or via, at least in part, a wireless means.

<FIG> illustrates a virtual reality welding system <NUM> in operative communication with a 3D printing system <NUM>. The virtual reality welding system <NUM> is similar to the system <NUM> of <FIG>. However, the system <NUM> is further configured to generate a 3D digital model <NUM> representative of at least a portion of a virtual weld joint and communicate the 3D digital model <NUM> (e.g., in the form of a digital file) to a 3D printing system. The virtual weld joint is initially generated using the virtual reality welding system <NUM> and is represented within the virtual reality welding system (e.g., stored in memory) as a first digital data set. The first digital data set includes the same type of data generated by the system <NUM> of <FIG> when generating a virtual weld joint. However, unlike the system <NUM>, the virtual reality welding system <NUM> is further configured to process the first digital data set to generate the 3D digital model <NUM>.

In accordance with an embodiment, the 3D digital model <NUM> is a computer-aided design (CAD) model, for example. Other types of 3D digital models may be possible as well, in accordance with various other embodiments. In accordance with an embodiment, the PPS <NUM> of the virtual reality welding system <NUM> employs a conversion software module specifically programmed to read the first digital data set and convert the first digital data set to the 3D digital model <NUM>. The term "3D digital model" as used herein refers to data and/or instructions that are in a digital format (e.g., a digital electronic format stored on a computer-readable medium) that may be read by a computer-based or processor-based apparatus such as the 3D printing system <NUM>. Once the 3D digital model <NUM> is generated, the model <NUM> may be transferred to the 3D printing system <NUM> for 3D printing as long as the model <NUM> is compatible with the 3D printing system <NUM>.

In accordance with an embodiment, the virtual reality welding system <NUM> includes a communication device <NUM>. The communication device <NUM> is operatively connected to the programmable processor-based subsystem <NUM> of the virtual reality welding system <NUM> and provides all of the circuitry and/or software for transmitting data in a digitally communicated manner. For example, the communication device <NUM> may include an Ethernet port and Ethernet-capable transmitting circuitry. As another example, the communication device <NUM> may provide a wireless Bluetooth™ communication connection. Alternatively, the communication device <NUM> may be a device that accepts and writes to a non-transitory computer-readable medium such as a computer disk or a flash drive data storage device, for example. As a further alternative embodiment, the communication device <NUM> may be a modem device providing connection to the internet. Other types of communication devices are possible as well, in accordance with various embodiments. In accordance with an embodiment, the 3D printing system <NUM> is operatively compatible with the communication device <NUM>.

Referring to <FIG>, the 3D printing system <NUM> may be a commercially available system where the virtual reality welding system <NUM> is configured to be compatible with the 3D printing system <NUM>, in accordance with an embodiment. The 3D printing system prints a physical model <NUM> by spraying or otherwise transferring a material substance in multiple layers onto a construction surface, beginning with a bottom layer. The 3D printing system <NUM> processes the 3D digital model <NUM> to effectively slice the model into a plurality of horizontal layers. The horizontal layers are printed one onto another by the 3D printing system until the completed physical model <NUM> emerges. As shown in <FIG>, the physical model <NUM> corresponds to a virtual weld joint including two virtual pieces of pipe that were virtually joined together using the virtual reality welding system <NUM>.

The 3D physical model <NUM> may be made of any of a number of different types of materials, depending on the 3D printing system <NUM>, including a plastic material, a metal material, or a ceramic material, for example. One type of 3D printing process includes heating a granular substance with a laser for each layer of the physical model and allowing the granular substance to solidify. Other 3D printing processes deposit layers of a substance in a manner not unlike that of an automated glue gun and may use ultraviolet light as a means to cure the layers.

In accordance with an embodiment, the virtual reality welding system <NUM> is configured to accurately model both the exterior and the interior of the virtual weld joint in the 3D digital model. As such, after printing out a corresponding 3D physical model, a user may destructively cut open the physical model (or non-destructively image the interior of the physical model) to view the interior characteristics of the weld joint. In accordance with an alternative embodiment, only the exterior of the virtual weld joint is accurately modeled in the 3D digital model. Such modeling of only the exterior may reduce the amount of information making up the 3D digital model and result in reduced processing time of both the virtual reality welding system (to generate the 3D digital model) and the 3D printing system (to print the 3D physical model).

In this manner, a user of a virtual reality welding system may generate a physical weld joint that is representative of a virtual weld joint generated by the user on the virtual reality welding system. The user may take the physical weld joint home with him as a memento of his virtual reality welding experience.

Another embodiment provides a method tying a virtual reality welding system to an on-line welding game. The method includes tracking a user's virtual reality welding progress on a virtual reality welding system and generating an electronic file of user statistics representative of the user's virtual reality welding progress on the virtual reality welding system. The method further includes transferring the electronic file, via an external communication infrastructure, from the virtual reality welding system to a server computer providing an on-line welding game. The method also includes the on-line welding game reading the electronic file and updating a gaming profile of the user with respect to the on-line welding game based on the user statistics in the electronic file. The user statistics may include at least one of data representative of types of welding processes the user has successfully performed on the virtual reality welding system, data representative of types of welding skills the user has successfully mastered on the virtual reality welding system, and data representative of reward points earned by the user on the virtual reality welding system that may be redeemed via the on-line welding game. The gaming profile of the user includes at least one of types of welding projects in which the user is permitted to participate in the on-line welding game and specific types of welding processes in which the user is permitted to perform in the on-line welding game. The method may further include comparing the user statistics of the user to a plurality of other users and ranking the user and the plurality of other users with respect to each other based on the comparing.

<FIG> illustrates an embodiment of a virtual reality welding system <NUM>. The virtual reality welding system <NUM> is similar to the system <NUM> of <FIG>. However, the system <NUM> is further configured to track a user's virtual reality welding progress on the virtual reality welding system <NUM> and generate an electronic file <NUM> (see <FIG>) of user statistics representative of the user's progress. In accordance with an embodiment, the PPS <NUM> tracks the user's virtual reality welding progress on the virtual reality welding system <NUM> and generates the electronic file <NUM> of user statistics representative of the user's progress.

In accordance with an embodiment, the virtual reality welding system <NUM> includes a communication device <NUM>. The communication device <NUM> is operatively connected to the programmable processor-based subsystem <NUM> of the virtual reality welding system <NUM> and provides all of the circuitry and/or software for externally transmitting data in a digitally communicated manner. For example, the communication device <NUM> may be a modem device providing connection to the internet.

<FIG> illustrates an embodiment showing the virtual reality welding system <NUM> in operative communication with a server computer <NUM> via an external communication infrastructure <NUM>. The external communication infrastructure <NUM> may include, for example, one or more of the internet, a cellular telephone network, or a satellite communication network. The server computer <NUM> provides an on-line welding game <NUM>. In accordance with an embodiment, the on-line welding game <NUM> is a computer-based game that a user may play on-line using, for example, a personal computer (e.g., a desktop computer) or a mobile computing device (e.g., a smart phone). The on-line welding game <NUM> may provide, for example, various welding projects requiring various user welding skills, acquired on the virtual reality welding system <NUM>, to play the game. A user of the on-line welding game <NUM> may earn points and/or rewards as part of successfully completing a welding project of the game.

Types of welding processes that a user may perform on the virtual reality welding system <NUM> may include, for example, a shielded metal arc welding process, a gas metal arc welding process, a flux-cored arc welding process, and a gas tungsten arc welding process. Types of welding skills that a user may acquire using the virtual reality welding system <NUM> may include, for example, how to set up a system for a particular welding process, how to prepare metal for welding, how to properly hold a welding gun/torch during a particular welding process, how to strike an arc at the start of a particular welding, how to move the welding electrode during a particular welding process, various plate welding skills, and various pipe welding skills. Other types of welding processes and skills are possible as well, in accordance with other various embodiments. Such welding processes and skills may be included in the file of the user's virtual reality welding statistics <NUM> once the user has demonstrated sufficient proficiency with respect to those processes and skills.

The on-line welding game <NUM> may provide various welding projects as part of the game such as, for example, a bridge project, an automobile project, and a sky scraper building project. In general, a user cannot work on a welding project that is part of the on-line welding game <NUM> until the statistics (i.e., data) in the user's electronic file from the virtual reality welding system <NUM> indicate that the user is ready to work on that welding project. In accordance with an embodiment, the on-line welding game <NUM> of the server computer <NUM> reads the electronic file <NUM> having the user's virtual reality welding statistics and updates a gaming profile of the user based on the user statistics. For example, statistics in the electronic file for a user may be interpreted by the on-line welding game <NUM> to upgrade the user's gaming profile to allow the user to work on a sky scraper building project using a shielded metal arc welding (stick electrode) process.

Furthermore, as a user progresses on the virtual reality welding system <NUM>, the user may earn reward points that may be transferred to the on-line welding game <NUM> via the electronic file. In accordance with an embodiment, the user may redeem the reward points using the on-line welding game <NUM>. For example, the user may use the reward points to purchase merchandise on-line (e.g., a T-shirt that advertises the on-line welding game). Alternatively, the user may use the reward points to gain access to some advanced features of the on-line welding game.

In accordance with an embodiment, the statistics of one user may be compared to the statistics of other users on the server computer <NUM> to rank all of the users with respect to each other. The rankings may be presented to the users as part of the on-line welding game, for example. Rankings may be by different levels of locality including, for example, a state level ranking, a national level ranking, and a world level ranking.

While the invention has been described with reference to certain embodiments, it will be understood by those skilled in the art that various changes may be made and equivalents may be substituted without departing from the scope of the invention. In addition, many modifications may be made to adapt a particular situation or material to the teachings of the invention without departing from its scope. Therefore, it is intended that the invention not be limited to the particular embodiment disclosed, but that the invention will include all embodiments falling within the scope of the appended claims.

Claim 1:
A method comprising:
generating a simulated weld joint having a simulated weld bead, using a simulated welding system (<NUM>, <NUM>, <NUM>), the simulated reality welding system comprising
a programmable processor-based subsystem (<NUM>);
a spatial tracker (<NUM>) operatively connected to the programmable processor-based subsystem (<NUM>);
at least one mock welding tool (<NUM>) configured to communicate with the programmable processor-based subsystem (<NUM>) and the spatial tracker (<NUM>);
a display device configured to communicate with the programmable processor-based subsystem (<NUM>) and the spatial tracker (<NUM>),
simulating the simulated weld bead based on tracked position and orientation of the mock welding tool in three-dimensional space; and
displaying an image of the simulated weld joint having the simulated weld bead, on a display device of the simulated welding system (<NUM>, <NUM>, <NUM>); characterized by
the method further including scrolling across a length dimension of the image of the simulated weld joint using a user interface, and displaying an image of a cross-sectional area through the simulated weld joint at successive locations along the length dimension of the image of the simulated weld joint on the display.