The present invention relates to an automatic welding system, an automatic welding method, a welding assistance device, and a program.
Patent Literature 1 discloses a technique which involves moving a tip of a welding wire along a groove while weaving the tip of the welding wire between an upper end and a lower end of the groove, stopping the travel of a welding torch in the process of weaving the tip of the welding wire from the lower end to the upper end of the groove, stopping the weaving of the tip of the welding wire at the upper end of the groove, reducing the amount of power supplied to the welding wire while moving the welding torch, and increasing the travel speed of the welding torch, the weaving speed of the tip of the welding wire, and the amount of power supplied to the welding wire in the process of weaving the tip of the welding wire from the upper end to the lower end of the groove.
The technique described in Patent Literature 1 involves varying the travel speed of the welding torch, the weaving speed of the welding wire, and the amount of power supplied to the welding wire. However, Patent Literature 1 does not concern a positional relation to a molten pool. This means that the welding torch or the welding wire may move ahead of, or lag behind, the molten pool that often changes its range.
The present invention has been made in view of the circumstances described above. An object of the present invention is to provide an automatic welding system, an automatic welding method, a welding assistance device, and a program that are capable of enabling, in horizontal welding, a welding torch to be kept at a proper position with respect to a molten pool.
In arc welding performed in a groove while a welding torch is being weaved in a front downward direction and a rear upward direction in an alternating manner when a welding direction is a frontward direction, an automatic welding system, an automatic welding method, a welding assistance device, and a program according to the present invention determine the amount of correction of welding speed on the basis of a distance between an arc and a leading end of a molten pool when the distance is in a predetermined range. The groove extends in a horizontal direction between two workpieces to be welded which are aligned in a vertical direction.
The foregoing and other objects, features, and advantages of the present invention will be apparent from the following detailed description and the accompanying drawings.
An embodiment of the present invention will now be described on the basis of the drawings. Throughout the drawings, the same components are designated by the same characters and the description thereof will be omitted as appropriate. In the present description, components collectively referred to are designated by reference characters without subscripts, whereas components individually referred to are designated by reference characters with subscripts.
A welding robot 3 included in the automatic welding system 100 performs arc welding while moving a welding torch 31 in a frontward direction (welding direction) in a groove G extending in a horizontal direction (front-rear direction) between two workpieces U and L to be welded (hereinafter referred to as workpieces U and L) aligned in a vertical direction (up-down direction). A molten pool P is formed near the tip of the welding torch 31.
The gap between the workpieces U and L (i.e., width of the groove G) is, for example, about 3 mm to 10 mm. The workpieces U and L may or may not be provided with a backing member attached thereto. The shape of the groove G is not limited to a V shape shown. The groove G may have an X-shape or other shapes.
The arc welding is, for example, tungsten inert gas (TIG) welding, or may be, for example, metal inert gas (MIG) welding or metal active gas (MAG) welding.
The welding robot 3 performs arc welding while weaving the welding torch 31 in a front downward direction and a rear upward direction in an alternating manner. This motion, which simulates manipulation of electrode by a highly skilled welder, aims to reduce sagging of the molten pool P.
The camera 2 captures an arc produced at the tip of the welding torch 31 and the molten pool P to generate an image. The camera 2 also captures an image of a wire (filler metal) (not shown) fed toward the arc. The camera 2 is disposed frontward of the welding torch 31 and moves together with the welding torch 31 in the frontward direction. To restrict entry of arc light, a bandpass filter that transmits only near infrared light of about 950 nm is attached to a lens of the camera 2. The camera 2 is a video camera configured to generate a video image containing a plurality of time-series still images (frames). The camera 2 is not limited to this. The camera 2 may be a still camera configured to generate a plurality of time-series still images through periodic photographing.
As illustrated in
The welding assistance device 1 includes a controller 10. The controller 10 is a computer that includes, for example, a central processing unit (CPU), a random access memory (RAM), a read only memory (ROM), a non-volatile memory, and an input/output interface. The CPU of the controller 10 executes information processing in accordance with a program loaded from the ROM or non-volatile memory into the RAM.
The controller 10 includes an acquiring unit 11, a detecting unit 12, and a determining unit 13. These functional units are implemented when the CPU of the controller 10 executes information processing in accordance with a program loaded from the ROM or non-volatile memory into the RAM. For example, the program may be supplied through an information storage medium, such as an optical disk or a memory card, or may be supplied through a communication network, such as the Internet or a LAN.
The learning device 6 includes a controller 60, similarly to the welding assistance device 1. The controller 60 includes an acquiring unit 61, a learning unit 62, and a storage unit 63. The learning device 6 may be constituted by one or more server computers.
The database 5 is accessible from the welding assistance device 1 and the learning device 6. A learned model 51 built by the learning device 6 is stored in the database 5 in such a way that it can be read by the welding assistance device 1.
As illustrated in these drawings, the leading end of the molten pool has two protrusions (upper and lower protrusions) positioned one above the other and protruding frontward, and a recess recessed rearward between the two protrusions. Due to sagging of the molten pool, the tip of the lower protrusion is located frontward of the tip of the upper protrusion.
Poor welding may result if the welding torch moves ahead of, or lags behind, the molten pool. It is thus important to keep the welding torch at a proper position with respect to the molten pool.
However, due to the influence of various factors, such as welding distortion and installation error, the groove width and the weld line may deviate from design values. Since this may change the accumulation conditions of the molten pool, it is not easy to keep the welding torch at a proper position with respect to the molten pool. This is particularly so when the welding torch is weaved in directions including the welding direction.
In the present embodiment, as described below, the amount of correction of welding speed is determined on the basis of a camera image. This makes it possible to keep the welding torch at a proper position with respect to the molten pool.
First, the controller 60 creates many data sets including a learning image and positional coordinates of each feature point and a visibility flag of each feature point (see S11 in
Next, the controller 60 acquires some of the data sets as training data (S12; operation of the acquiring unit 61).
Next, the controller 60 executes machine learning using the acquired training data (S13; operation of the learning unit 62). Specifically, by using the learning image as input data and using the positional coordinates and the visibility flag of each feature point as teacher data, the controller 60 builds, through machine learning, a learned model for estimating the positional coordinates and accuracy of each feature point from an image.
The model is, for example, a convolutional neural network that includes a convolutional layer, a pooling layer, a fully connected layer, and an output layer. It is particularly preferable to use a deep neural network that combines multiple layers of neurons. The output layer includes elements each corresponding to the positional coordinates and the visibility flag of each feature point. That is, the output layer includes a total of 11 elements for the positions of the feature points and a total of 7 elements for the visibility of the feature points. For example, an identity function is used for the elements for the positions of the feature points. For the elements for visibility, for example, a softmax function is used, and an output value represented by a real number between 0 and 1 can be used as a value indicating the accuracy of the feature point. Specifically, the controller 60 inputs the learning image into the model, performs calculation, outputs the positional coordinates and accuracy of each feature point as output data from the model, calculates the difference between the output data and the teacher data, and performs learning in such a way as to reduce the difference.
Next, the controller 60 acquires, as test data, another data set different from the training data (S14), and evaluates the learned model using the acquired test data (S15).
Then, if the evaluated learned model is at a predetermined level or above, the controller 60 stores the learned model in the database 5 (S16) and ends the learning phase.
The convolutional neural network illustrated is merely an example, and the layer structure is not limited to this. The number of convolutional, pooling, and fully connected layers may differ from that shown. Instead of machine learning, another technique, such as pattern matching, may be used to detect feature points.
First, the controller 10 acquires camera images from the camera 2 (S21; operation of the acquiring unit 11). Specifically, the controller 10 sequentially acquires, as camera images, a plurality of time-series still images (frames) contained in a video image generated by the camera 2.
Next, the controller 10 estimates the positional coordinates and accuracy of each feature point in the camera image using a learned model built in the learning phase (S22; operation of the detecting unit 12). Specifically, the controller 10 inputs, as input data, the plurality of time-series camera images into the learned model in sequence, performs calculation, and outputs the positional coordinates and accuracy of each feature point. As described above, there are seven feature points including the pool lead top (tip of the upper protrusion), the pool lead bottom (tip of the lower protrusion), the pool lead recess (rear end of the recess), the arc center, the wire, the pool upper end, and the pool lower end (see
Next, the controller 10 calculates a distance LeadX between the arc and a leading end of the molten pool and a distance dY between the arc and the upper end of the molten pool (S23). Specifically, the distance LeadX is the distance between the arc center and a leading end of the molten pool in the x direction (front-rear direction). The leading end of the molten pool, used to define the distance LeadX, is any one of the pool lead top, the pool lead bottom, and the pool lead recess. The pool lead bottom is located at the foremost position due to sagging of the molten pool, and may not be visible due to obstruction by arc light. Accordingly, it is preferable to use the pool lead top or the pool lead recess located above the pool lead bottom. It is particularly preferable to use the pool lead top which is located at the uppermost position and has high visibility. That is, it is preferable that the distance LeadX be a distance between the arc center and the pool lead top in the x direction (see
If the accuracy of any feature point used to calculate the distance LeadX and the distance dY is less than or equal to a threshold, the calculation of the distance LeadX and the distance dY is skipped.
Thus, since the distance LeadX periodically changes as described above, the amount of correction of welding speed cannot be calculated simply by using the distance LeadX. Accordingly, in the present embodiment, the amount of correction of welding speed is calculated when the distance LeadX is in a predetermined range. Specifically, in the present embodiment, the amount of correction of welding speed is calculated when the distance LeadX is in the closest range. In other words, the amount of correction of welding speed is calculated when the distance dY is in the farthest range.
To achieve this, as illustrated in
Next, the controller 10 applies the calculated amount of correction of welding speed (527). Specifically, the controller 10 outputs the calculated amount of correction of welding speed to the welding robot 3 (see
In the embodiment described above, in horizontal welding which involves weaving of the welding torch 31 in directions including the welding direction (frontward direction), the welding torch 31 can be kept at a proper position with respect to the molten pool P. This makes it possible to achieve high quality automatic welding.
In the embodiment described above, the controller 10 calculates the amount of correction of welding speed when the distance LeadX is in the closest range. However, the configuration is not limited to this. For example, the controller 10 may calculate the amount of correction of welding speed when the distance LeadX is in the farthest range or in the middle range (near the center of amplitude).
In the embodiment described above, the controller 10 determines whether the distance dY is in the farthest range to determine whether the distance LeadX is in the closest range. Alternatively, the determination as to whether the distance LeadX is in the closest range may be directly made. Note however that using the distance dY between the arc center and the pool upper end having high visibility enables more accurate determination.
Although the controller 10 uses the distance dY between the arc center and the pool upper end in the embodiment described above, the configuration is not limited to this. The controller 10 may use the distance between the arc center and the pool lower end and determine whether this distance is in the closest range to determine whether the distance LeadX is in the closest range.
In the embodiment described above, the controller 10 estimates the positional coordinates of the arc center from the camera image. However, the configuration is not limited to this. For example, the controller 10 may determine the positional coordinates of the arc center on the basis of positional data of the welding torch 31 provided by the controller of the welding robot 3.
Although embodiments of the present invention have been described, the present invention is not limited to the embodiments described above. Various changes can be made to the present invention by those skilled in the art.
For example, as illustrated in
First, the controller 10 acquires camera images from the camera 2 (S21). The controller 10 then estimates the positional coordinates and accuracy of each feature point in the camera image using a learned model (S22).
Next, the controller 10 calculates the width of the groove G on the basis of the detected positions of the pool upper end and the pool lower end (S33). Thus, by detecting the positions on the basis of the camera image, the change of the groove width can be followed in substantially real time. The width of the groove G may be a gap between the pool upper end and the pool lower end, or may be, for example, a value obtained by multiplying the gap by a predetermined ratio. The configuration is not limited to this. The width of the groove G may be directly calculated by extracting the edge of the workpieces U and L from the camera image.
Next, the controller 10 shifts a weld line WL upward as the calculated width of the groove G increases (S34 to S38: operation of the adjusting unit). This makes it possible to reduce sagging of the molten pool. Specifically, if the width of the groove G is less than a threshold w2 (S34: YES), the controller 10 sets a weld line WL1 on a center line GC of the groove G (S35). If the width of the groove G is greater than or equal to the threshold w2 and less than a threshold w3 (S34: NO, S36: YES), the controller 10 sets a weld line WL2 at a position above the weld line WL1 (S37). If the width of the groove G is greater than or equal to the threshold w3 (S34: NO, S36: NO), the controller 10 sets a weld line WL3 at a position above the weld line WL2 (S38). The weld line WL is a projected line along which the welding torch 31 travels to enable welding to proceed. The welding torch 31 is weaved in a front downward direction and a rear upward direction in an alternating manner, with the weld line WL at the center.
Shifting the weld line WL upward enables automatic welding even when the workpieces U and L are deformed or the groove is non-linear. In the case of using a welding robot that is not capable of asymmetrically setting the weaving width, the bridging properties of the molten pool can be properly maintained by adjusting the weaving width, with the weld line positioned at the groove center.
In addition to shifting the weld line WL upward, the controller 10 may bring the weaving angle of the welding torch 31 closer to being vertical, or may increase the weaving amplitude, as the width of the groove G increases.
The configuration is not limited to this. As illustrated in
First, the controller 10 acquires camera images from the camera 2 (S21). The controller 10 then estimates the positional coordinates and accuracy of each feature point in the camera image using a learned model (S22).
Next, the controller 10 calculates the center of the groove G on the basis of the detected positions of the pool upper end and the pool lower end (S43). The center of the groove G is at the midpoint between the pool upper end and the pool lower end. The configuration is not limited to this. The center of the groove G may be directly calculated by extracting the edge of the workpieces U and L from the camera image.
Next, if the gap between the detected position of the wire and the center of the groove G is greater than or equal to a threshold, the controller 10 shifts the weld line WL toward the center of the groove G (S44 to S47: operation of the adjusting unit). The position of the wire represents the position of the weld line WL. Specifically, if a difference obtained by subtracting the height of the center of the groove G from the height of the wire is greater than a positive threshold (S44: YES), that is, if the position of the wire is above the center of the groove G and the gap between them is greater than the threshold, the controller 10 shifts the weld line WL downward (S45). On the other hand, if a difference obtained by subtracting the height of the center of the groove G from the height of the wire is smaller than a negative threshold (S44: NO, S46: YES), that is, if the position of the wire is below the center of the groove G and the gap between them is greater than the threshold, the controller 10 shifts the weld line WL upward (S47). Thus, even when the groove G is inclined, for example, by welding the workpieces U and L on a plate, the weld line WL can follow the center of the groove G. Since the weld line WL is shifted only when there is large deviation, improved stability of control is achieved.
The present description discloses techniques according to various aspects. Major techniques among them will now be summarized.
An automatic welding system according to an aspect includes a welding robot configured to perform arc welding in a groove while weaving a welding torch in a front downward direction and a rear upward direction in an alternating manner when a welding direction is a frontward direction, the groove extending in a horizontal direction between two workpieces to be welded, the two workpieces being aligned in a vertical direction; a camera configured to capture an image of an arc and a molten pool produced in the groove by the arc welding; a detecting unit configured to detect a position of a leading end of the molten pool in a camera image captured by the camera; and a determining unit configured to determine the amount of correction of welding speed on the basis of a distance between the arc and the leading end of the molten pool when the distance is in a predetermined range.
An automatic welding method according to another aspect includes performing arc welding in a groove while weaving a welding torch in a front downward direction and a rear upward direction in an alternating manner when a welding direction is a frontward direction, the groove extending in a horizontal direction between two workpieces to be welded, the two workpieces being aligned in a vertical direction; capturing, with a camera, an image of an arc and a molten pool produced in the groove by the arc welding; detecting a position of a leading end of the molten pool in a camera image captured by the camera; and determining the amount of correction of welding speed on the basis of a distance between the arc and the leading end of the molten pool when the distance is in a predetermined range.
A welding assistance device according to another aspect includes an acquiring unit configured to acquire a camera image generated by a camera that captures an image of an arc and a molten pool produced in a groove by arc welding performed while a welding torch is being weaved in a front downward direction and a rear upward direction in an alternating manner when a welding direction is a frontward direction, the groove extending in a horizontal direction between two workpieces to be welded, the two workpieces being aligned in a vertical direction; a detecting unit configured to detect a position of a leading end of the molten pool in the camera image; and a determining unit configured to determine the amount of correction of welding speed on the basis of a distance between the arc and the leading end of the molten pool when the distance is in a predetermined range.
A program according to another aspect is configured to cause a computer to function as an acquiring unit configured to acquire a camera image generated by a camera that captures an image of an arc and a molten pool produced in a groove by arc welding performed while a welding torch is being weaved in a front downward direction and a rear upward direction in an alternating manner when a welding direction is a frontward direction, the groove extending in a horizontal direction between two workpieces to be welded, the two workpieces being aligned in a vertical direction; a detecting unit configured to detect a position of a leading end of the molten pool in the camera image; and a determining unit configured to determine the amount of correction of welding speed on the basis of a distance between the arc and the leading end of the molten pool when the distance is in a predetermined range.
With the techniques described above, it is possible, in horizontal welding, to keep the welding torch at a proper position with respect to the molten pool.
The present application is based on Japanese Patent Application No. 2019-208569, filed Nov. 19, 2019, and Japanese Patent Application No. 2020-137800, filed Aug. 18, 2020, the contents of which are incorporated in the present application.
To express the present invention, the present invention has been appropriately and fully described through the description of the embodiments with reference to the drawings. However, it should be understood that it is easy for those skilled in the art to change and/or modify the embodiments described above. Therefore, as long as changes or modifications made by those skilled in the art do not depart from the scope of the claimed invention, the changes and modifications are interpreted as being included in the claimed invention.
The present invention can provide an automatic welding system, an automatic welding method, a welding assistance device, and a program.
Number | Date | Country | Kind |
---|---|---|---|
2019-208569 | Nov 2019 | JP | national |
2020-137800 | Aug 2020 | JP | national |
Filing Document | Filing Date | Country | Kind |
---|---|---|---|
PCT/JP2020/038535 | 10/12/2020 | WO |