This invention relates to the use of optical sensors to detect and calculate the position and speed of a welding arc during a live welding operation.
There are several methods that have been used to attempt to calculate the position and/or speed of a welding arc or welding puddle during a live welding operation. These take multiple forms including sensors that are part of the helmet, a welding gun or welding tool, the welding machine, set off to one side of the work area, or mounted to the ceiling, and utilize technologies including among others infrared tracking, RF, electromagnetic, and optical sensing.
Welding sensors that are mounted to the welding gun are not generally capable of tracking speed without interacting with separate sensors in the nearby vicinity. Welding gun, as used herein, includes wire feed welding guns, as well as SMAW welding rod holders and other hand held welding tools. These sensors act as signal transmitters or receivers that spatially locate or track the welding gun.
Some welding sensing applications mount sensors to the ceiling of the work area, or to a pedestal or fixture. These embodiments are not easily portable, and require materials be brought to a specific work area to be welded. This setup excludes welding activity that must be done outdoors, or welds performed by a welder who is not bound to a single work area, who must bring their equipment with them to a job site.
There exists a need for a system that can sense and calculate the position and speed of a live welding arc during a live welding operation, where such system is portable, easy to use, and quick to assemble and disassemble.
This invention is a system for using optical sensors to detect and calculate the position and speed of a welding arc during a live welding operation. This system senses the light emitted by the welding arc itself without requiring additional markers, emitters, transmitters, or other hardware attached to the welding gun. This results in complete freedom of movement and natural feel of the welding gun for the welder, as well as simplifies the installation and usage process.
There are a number of challenges that must be overcome to realize a working system. First, the sensors themselves are usually not uniform, and can provide varying results for the same incident light. Therefore the sensors should be calibrated so that sensor data can be normalized. This can be done by exposing each sensor to the same light source, reading sensor values, determining the lowest sensor value, calculating a normalization factor for each sensor to adjust their values to the lowest sensor value, and saving these normalization factors for later use.
Second, an algorithm should be developed for converting the series of sensor data into a time and position data point. This can be done by performing a weighted average of the sensor values against their relative position.
Third, an additional calibration step can compensate for manufacturing variances in sensor location and alignments. This can be done by sensing and calculating positions (a sensed position) at a number of fixed, known positions (real position), and creating a database from which we can pull the real position for any sensed position, or interpolate between known positions if needed.
Fourth, a spark-rejection algorithm can compensate for the volatile nature of the weld puddle being observed, to avoid skewing position and speed data with undesired outliers. This can be done by understanding the typical shape of the sensor data, comparing each series of sensor data against that expected shape, and rejecting series that do not conform to it.
Fifth, a speed calculation algorithm can convert the time and position data points into a usable speed value. While a speed calculation is ultimately a change in position divided by a change in time, additional filtering of the data is required to provide a smooth speed dataset that can be useful to the welder or the welder's supervisor or instructor. Speed data that is too narrow of scope or that has been filtered too much loses value, as it is either too fleeting or too late to be used for corrective purposes.
As utilized herein the phrase “set of light intensity measurements” means a set of normalized light intensity measurements taken simultaneously by each light intensity sensor in a series of light intensity sensors on a light source locator or a light source travel speed sensor according to this invention.
As utilized herein the phrase “light intensity distribution graph” means a line graph of normalized light intensity measurements taken simultaneously by each light intensity sensor in a series of light intensity sensors, plotted against the lateral location of each light intensity sensor. Position here refers to a location along the array of sensors. Since in operation, the array of sensors is parallel to the weld joint, the position of the arc along the weld joint is directly analogous and equivalent to a position along the sensors directly above the weldment. “Position” may refer to either the location of the weld puddle and arc on the weldment, or to the corresponding point on the array.
As utilized herein the term “datum” means a starting point for position, or rather the “zero location.”
As utilized herein the phrase “normalization factor” means a multiplier for a sensor in the sensor array that normalizes or equalizes its values such that peak intensity at each sensor is equal to the other sensors in the array.
As utilized herein the phrase “sensed position” means a position value calculated from normalized sensor data.
As utilized herein the phrase “real position” means the actual real world position for a corresponding sensed position.
The speed sensor 10 can be used in active welding environments.
The electronics assembly contains a series of sensors 28 connected electrically to a microcontroller 34, such that the microcontroller 34 is able to retrieve a sensor value from each individual sensor that correlates to the amount of light incident upon it. In the embodiment shown in
A datum 29 or zero location is identified on
The series of sensors 28 are electrically connected to the microcontroller 34 such that the microcontroller 34 can read the light intensity at each sensor 28. These optical sensors 28 could be a phototransistor, such as a Vishay TEFT4300, which senses light at a 925 nm wavelength at approximately a 60 degree viewing angle. The preferred embodiment has been optimized to work with the TEFT4300, though other light sensor types, wavelengths, and viewing angles may be used with appropriate changes to filtering and processing equations.
A filter 39 may be used in-line between each sensor 28 and the microcontroller 34 to condition the signal and remove unwanted noise. This noise can occur from such sources as the rapid variation in light intensity from the flashing arc light, or from reflections of light off other surfaces. This filter 39 could be as simple as an RC network, to create a low-pass filter 39 to smooth the signal. This technology and signal smoothing technique is well known among those skilled in the art.
In some cases, depending primarily upon the number of sensors 28 required, one or more additional microcontrollers 34 may be required to read additional sensors 28 to ensure that all sensors 28 are read nearly instantaneously. Nearly instantaneous reading of the sensors 28 is desired because of the rapidly changing nature of the light intensity being observed. If a single microcontroller 34 has to read sixteen sensors 28 sequentially for example, and each sensor 28 reading takes the microcontroller 34 two microseconds to complete, the light being observed could be significantly different while reading the sixteenth sensor 28 than it was during the first sensor 28 thirty two microseconds earlier. Having multiple microcontrollers 34 reading different banks or groups of sensors 28 can result in a quicker overall read time and approach the ideal “instantaneous” goal. In the case of two or more microcontrollers 34, one should play the role of a master, and signal to the other microcontroller(s) 34 that it was time to read the sensors 28. All microcontrollers 34 would read the sensor values from their respective sensors 28. The second microcontroller 34 would then electrically communicate the sensor values it had read to the first for final processing. Again, one skilled in the art of electronic design would be capable of effecting electrical interconnection and common control of multiple microcontrollers 34 for controlling separate groups of sensors 28.
In the system shown in
The microcontroller 34 could also be electrically connected to the visual indicators 22 that are visible to the user and provide information to them such as on/off status, operating mode, position information, or speed information. These visible indicators may be discrete LEDs, LED bars, or an LCD screen containing text and graphic information.
The microcontroller 34 may also be electrically connected to an electronic memory 36 component, such as an EEPROM or a serial flash IC. This memory 36 can be used to store calibration data such as sensor high and low values and sensor normalization factors. This memory 36 could also store diagnostic or troubleshooting information such as total run time, results of diagnostic tests, or abnormal operation timestamps and state details. This memory 36 could also store historical performance data, including data such as observed speeds or comparisons between observed and desired speeds.
The microcontroller 34 may also be electrically connected to a wireless communication module 35 and/or a wired communication module 37 to facilitate communication with the end user or other parts of a welding sensing, tracking, or training system. The wireless communication module 35 could be a Bluetooth radio, a WiFi radio, an 802.15.4 radio, or other suitable wireless interface. The wired communication module 37 could be a USB connector and a USB-to-UART serial converter IC, or with many microcontrollers available today, simply a USB connector electrically connected to a microcontroller with built in USB capability. The wired communication module 37 could also utilize another type of wired protocol, such as RS-232 or a RS-485. Both communication 35 and 37 modules serve the same purpose of providing a means for the welding speed sensor 10 to receive commands (start, stop, reset, etc) or data (configuration data, calibration data, firmware updates) or to send commands (synchronizing with other tools in a system) or data (observed speeds, observed positions, raw data, historical data, real-time data, etc.).
To get an accurate, consistent position measurement and calculation, the sensor values should be normalized. In the ideal case, each sensor 28 would return the same value for the same amount of incident light. One approach to removing this variable from the method is to bin the components by testing each sensor 28 at a specific light intensity, compare its sensed value against an expected value or range of values, and group or bin it with other sensors 28 of similar sensitivity. Only sensors 28 of similar sensitivity would then be populated onto the same electronics assembly.
Another approach to compensate for sensor 28 sensitivity variation is by moving a constant light source past each sensor 28 at a slow enough speed that the processor can gather enough data points to fully characterize the sensor curve, as exemplified in
As demonstrated in
Another way to look at this variation can be found in
In the preferred embodiment, this approach is accomplished by placing a movable light a fixed distance from the sensors 28, aligned so that the direction of travel of the light is parallel to the sensors 28 keeping the distance constant for all sensors 28. The user places the speed sensor 10 into a calibration mode by sending an electronic signal through the wireless communication module 35. This causes the microcontrollers 34 and 38 to begin repeated scans of each sensor 28. The master microcontroller 34 receives the values of all sensors 28 and stores them in the electronic memory 36. Each additional set of sensor data is compared against the stored values and the stored value is replaced with the new value if the new value is higher than the stored value. When the user ends the calibration mode by sending another electronic signal to the microcontroller 34 through the wireless communication module 35, the stored values in the electronic memory 36 will contain the largest value observed for each sensor 28. This value is then used to calculate the normalization factor for each sensor 28, as described previously.
This is only one method of normalizing the sensor values. One could just as easily normalize the values to the largest value or the most sensitive sensor 28, or to the median value or average sensitivity without changing the outcome of the position calculating algorithm.
If only a single sensor 28 detected the light source at any given time, the system could only infer that the light source was within that sensor's 28 field of view 27. In our preferred embodiment, with sensors 28 spaced 0.5 inches apart, this would result in a system resolution or precision of 0.5 inches. Thus, we would not be able to determine where, within that 0.5 inch window, the light source is actually located. By sensing the light source from multiple sensors 28, and then performing a weighted average calculation on the sensor values, the system can narrow down the resolution of the system to a more useful level. In the preferred embodiment the resolution could be as small as one hundredth of an inch or even finer.
The equation in
This reduces to a position of 6.55 inches, which is in-between sensors 28 thirteen and fourteen.
When we look at another example, as shown in
This reduces to a position of 7.23 inches, which is very close to the 7.25 inch location of sensor fifteen 28.
The system is therefore capable of translating sensor data into a calculated position, which we will call a sensed position. There are still opportunities for error caused from outside factors such as sensor alignment variation and sensor spacing errors. One method for compensating for these errors is to create a database or table of sensed positions and corresponding real positions. This is a calibration that can be done to each sensor assembly after it is manufactured to remove such variations. One method for obtaining such data is to position a light source at a series of known, fixed real positions and save the sensed positions for each point. Another method is to start a light source at a known position and move it across the sensor 28 array at a known speed, saving positions at known time intervals from which the real position can be calculated. This is demonstrated in
The act of welding produces a bright, light emitting puddle 26 that can be tracked using the described speed sensor 10 system. However, the act of welding also has a tendency to produce sparks which also produce light as they move rapidly away from the puddle 26. This can produce errors in sensed position if not accounted for.
If the data set passes this first test, the sensor values for the second sensor 28 on either side of the center or peak sensor could be checked to ensure that they are less than a threshold values (e.g., 95%) of the peak. This will ensure that the curve has peaked and is beginning to drop off on both sides. If the dataset passes this test, the sensor values for the third sensor 28 on either side of the center or peak sensor 28 can be inspected to ensure they are less than a threshold value (e.g., 60%) of the peak. This continues to ensure that the curve is dropping at an expected rate. This series of checks can continue to ensure that the curve generated by the sensors 28 fits the expected shape and is not being affected by sparks or other light interference. It is of course practical to use other values for the thresholds, or to combine both a minimum and maximum threshold for any or all sensors 28, or to make other refinements to this test. The width of the curve can be impacted by the field of view of the sensors 28 and the distance from the sensor array 28n to the light source, such that the resulting curve can be wider or narrower depending on configuration. The values described here in the preferred embodiment are for an optimal 8 inch distance between the sensors 28 and the light source.
At the most basic level, a speed is simply a change in position divided by a change in time, or alternatively how long does it take to move a distance. When tracking speed of a slowly moving object, such as a weld puddle 26, accuracy can be improved by looking at a greater span of time and distance. For example, at a typical welding speed of 6 inches per minute, the weld puddle 26 will only travel 0.1 inch every second. If our resolution or precision is only 0.01 inch, then trying to calculate a speed every millisecond will not yield valid results.
In a preferred embodiment, the system captures and a position and timestamp forty times per second, or once every 25 milliseconds. These data points of a position and timestamp are grouped into 10-data point groups. In a perfect scenario, these would each encompass approximately one quarter second of time. In practice, as some data points are rejected for sparks or other anomalies, each time interval (i.e., Δt1, Δt2, etc. as seen in
In a preferred embodiment, the speed is presented to the user during the weld process. Speed is calculated over a four time interval window (current time interval and three earlier time intervals). This can be further filtered by the display system such that speed values are averaged over a longer interval, in a rolling average, so that timely feedback is provided, but smoothed enough to avoid confusing the user. In a preferred embodiment, six speed records are averaged to arrive at a displayed speed, resulting in a rolling average over the previous 1.5 seconds or more, at a 40 Hz sampling rate as described above.
This section describes the intended operation of a preferred embodiment only. Other embodiments or applications are foreseen which could modify the following description.
The welder 14 begins by preparing the weldment 11, which includes selecting and positioning appropriate metal pieces. The welder 14 will set up the welding equipment including adjusting parameters such as some combination of wire type, wire speed, voltage, current, and/or other settings as necessary to appropriately configure the equipment. The welder 14 will then turn on and position the speed sensor 10 above the weldment 11, ensuring that the sensors 28 are aimed at and are parallel to the weld joint 12. The welder 14 will turn on or apply power to the sensor array 28n. Through the user interface, the welder 14 can enter or select the desired welding parameters, which can take the form of a welding procedure specification (WPS), a common industry tool for specifying how a particular weld should be performed.
The welder 14 then performs the weld, while the speed sensor 10 collects data, calculates a speed, and transmits it to a user interface where it can be displayed to the welder 14 or saved for later review.
Once the weld is complete, the welder 14 can place another weldment 11 beneath the speed sensor 10 array and perform another weld.
Filing Document | Filing Date | Country | Kind |
---|---|---|---|
PCT/US15/50831 | 9/18/2015 | WO | 00 |
Number | Date | Country | |
---|---|---|---|
62052795 | Sep 2014 | US |