The present invention relates to a work measuring method and a welding system.
In the related art, an object to be welded (hereinafter also referred to as “work”) is prepared at a predetermined position and welded by using a welding robot. In this case, for the purpose of automatic welding and the like of the work, there is a need to facilitate measurement of the shape and installation condition of the work and achieve labor-saving. To measure the position of the work, for example, point cloud data acquired by using a time-of-flight (ToF) sensor is used.
As an example of measuring the dimensions of a work in a welding system, Japanese Unexamined Patent Application Publication No. 2010-162554 discloses a configuration in which a measurement program is selected in accordance with the shape of an object to be measured (hereinafter referred to as “measurement object”) and the measurement object is measured using a sensor included in a welding robot. As an example of measuring a measurement object, Japanese Unexamined Patent Application Publication No. 2010-276485 discloses a configuration in which three-dimensional data of a measurement object placed on a glass table is measured by a laser measuring device and the three-dimensional shape of the entire measurement object, as seen from multiple viewpoints, is acquired.
For example, in the technique disclosed in Japanese Unexamined Patent Application Publication No. 2010-162554, a touch sensor is assumed to be used as a sensor. In operation of the sensor according to the measurement program, if there is some distance between the start position of measurement by the sensor and the actual installation position of the measurement object, it takes time to carry out measurement due to an unnecessary measurement operation. In the technique disclosed in Japanese Unexamined Patent Application Publication No. 2010-162554, the measurement program is to be switched from one to another in accordance with the shape of the measurement object, and this involves manual selection of the measurement program. Additionally, if there is a work installation error in a positioner, incorrect dimensions may be measured. The configuration disclosed in Japanese Unexamined Patent Application Publication No. 2010-276485 requires many sensors, and this may increase the cost and size of the device.
An object of the present invention is to accurately measure the configuration of a measurement object while making the time required to measure the measurement object shorter than before.
An aspect of the present invention has the following configuration to solve the problems described above. That is, a work measuring method for measuring a work including a columnar member and a diaphragm and held by a positioner includes an acquiring step of acquiring point cloud data on a surface of the work held by the positioner and photographed in a predetermined direction, a detecting step of identifying a portion where distribution of the point cloud data changes in a three-dimensional coordinate system of the positioner and detecting the portion as a boundary position between the columnar member and the diaphragm, and a deriving step of deriving the number of columnar members and diaphragms included in the work on the basis of the boundary position detected in the detecting step.
Another aspect of the present invention has the following configuration. That is, a welding system includes a welding robot including a welding torch, a welding control device configured to control the welding robot, a positioner configured to hold a work including a columnar member and a diaphragm, and a sensor configured to photograph the work in a predetermined direction to acquire point cloud data. The welding control device includes an acquiring unit configured to acquire point cloud data on a surface of the work held by the positioner and photographed by the sensor in the predetermined direction, a detecting unit configured to identify a portion where distribution of the point cloud data changes in a three-dimensional coordinate system of the positioner and detect the portion as a boundary position between the columnar member and the diaphragm, and a calculating unit configured to calculate a dimension and position of the work on the basis of the boundary position detected by the detecting unit.
The present invention makes it possible to accurately measure the configuration of a measurement object while making the time required to measure the measurement object shorter than before.
Hereinafter, embodiments for carrying out the present invention will be described with reference to the drawings. Each of the embodiments to be described is an example for explaining the present invention, and is not intended to be interpreted as limiting the present invention. Not all components described in the embodiments are necessarily essential for solving the problems to be solved by the present invention. In the drawings, the same constituent elements are assigned the same reference numerals to indicate their correspondence relations. In the embodiments, the terms “first” and “second” are merely used for distinction from other elements, and are not intended to be interpreted as specific elements in a limited manner. Accordingly, these terms may be interpreted as appropriate in accordance with the combination or the number of constituent elements.
An embodiment according to the present invention will now be described with reference to the drawings.
The welding device 1 is configured in such a way that the welding robot 3 welds a work W held by the positioner 2. The welding control device 8 is configured to cause the controller 9 to control the welding robot 3. The welding control device 8 may be configured to control moving units 11 and 12 to control the relative position of the welding robot 3 and the work W. The welding control device 8 is also configured to control the rotational operation of the positioner 2 and the photographing operation of the camera 10. In the present embodiment, the welding control device 8 is described as one that controls the overall operation related to welding. Alternatively, different controllers may be provided for respective devices to perform welding in a coordinated manner.
As illustrated in
The welding robot 3 is configured to have various functions for welding various weld joints of the work W held by the positioner 2. For example, an arc welding robot may be used as the welding robot 3. The welding robot 3 includes a multi-joint arm 4, a welding torch 5 supported by the arm 4, a welding wire 6 fed to the tip of the welding torch 5, and a sensor 7 (second sensor) capable of position detection at the tip of the welding torch 5.
The sensor 7 is disposed near the distal end of the welding robot 3. By moving the welding robot 3, the sensor 7 measures the coordinates of a preset detection position on the work W as measurement data. The sensor 7 may be of any type that is capable of measuring the coordinates of the work W as measurement data. The sensor 7 may be a non-contact position detection sensor, such as a laser sensor, or a contact position detection sensor, such as a touch sensor. In the present embodiment, the sensor 7 will be described as one that provides a touch sensing function for measuring the position and shape of the work W. The measurement data measured by the sensor 7 may include coordinate information at positions other than the detection position.
The controller 9 is configured to control the welding robot 3 in accordance with a measurement program and a welding program that are defined in advance. Specifically, by moving the welding robot 3 on the basis of the measurement program, the sensor 7 included in the welding robot 3 measures the coordinates of the detection position on the work W as measurement data. The work W is welded by moving the welding robot 3 on the basis of the welding program. The measurement program and the welding program are provided by the welding control device 8.
The camera 10 is used to photograph the work W before welding and identify, for example, the shape, dimensions, and position of the work W. The camera 10 is configured to be capable of acquiring point cloud data on the surface of the work W as three-dimensional data. A sensor, such as a time-of-flight (ToF) camera, a stereo camera, or a light detection and ranging (LiDAR) sensor, can be used as the camera 10. These sensors have different characteristics and thus may be used depending on the measurement environment and type of the work W (measurement object). In the present embodiment, the camera 10 is installed above the work W and the positioner 2, and is configured to be capable of photographing the work W placed below the camera 10. The installation position and the photographing direction of the camera 10 are not limited to those described above, and may be set to any position and direction in accordance with the axis about which the work W is rotated by the positioner 2.
A ToF camera that can be used as the camera 10 is configured to irradiate the measurement object with laser light and measure the reflected laser light with an imaging element to calculate the distance for each pixel. The measurable distance of the ToF camera is from about several tens of centimeters (cm) to several meters (m). A stereo camera is configured to use a plurality of images taken by a plurality of (e.g., two) cameras to calculate the distance from the parallax between the images. The measurable distance of the stereo camera is from about several tens of centimeters (cm) to several meters (m). A LiDAR sensor is configured to irradiate the surrounding area with laser light and measure the reflected laser light to calculate the distance. The measurable distance of the LiDAR sensor is from about several tens of centimeters (cm) to several tens of meters (m).
The moving units 11 and 12 are configured to move the welding robot 3 in at least one of directions parallel and orthogonal to the direction of the rotation axis of the work W held by the positioner 2. Specifically, a carriage may be used as the moving unit 11, and a rail may be used as the moving unit 12. The moving unit 12 is configured to travel along the moving unit 11 parallel to the rotation axis of the positioner 2 to move the welding robot 3 disposed on the moving unit 12 in the direction parallel to the axial direction of the work W. The moving unit 12 is configured to be movable in the direction orthogonal to the moving unit 11 to move the welding robot 3 disposed on the moving unit 12 in the direction orthogonal to the axial direction of the work W.
In the present embodiment, the following three three-dimensional coordinate systems are used: a robot coordinate system which is the coordinate system of the welding robot 3, a positioner coordinate system which is the coordinate system of the positioner 2, and a camera coordinate system which is the coordinate system of the camera 10. These three-dimensional coordinate systems are associated with each other in such a way that coordinate values can be transformed. The coordinate systems may each be relatively defined with respect to another one, or may each be defined as an absolute coordinate system. When a specific coordinate system is to be described, the coordinate system will be specified.
In
The control unit 301 may be constituted, for example, by at least one of a central processing unit (CPU), a graphical processing unit (GPU), a micro-processing unit (MPU), a digital signal processor (DSP), and a field-programmable gate array (FPGA). The storage unit 302 is constituted by a volatile memory, such as a random-access memory (RAM), or by a non-volatile memory, such as a hard disk drive (HDD) or a read-only memory (ROM). The control unit 301 reads and executes various programs stored in the storage unit 302 to perform various functions described below.
The IF unit 303 is an interface for connection to an external device. The IF unit 303 is configured to control transmission to and reception from the external device. The IF unit 303 is connected to, for example, the controller 9 and the positioner 2.
The communication unit 304 is a component for communication with external devices and various sensors. Communication by the communication unit 304 may be either wired or wireless, and the communication standard is not limited. The UI unit 305 is configured to receive operations from the user and display a measurement result. The UI unit 305 may include, for example, a mouse and a keyboard (not illustrated), or may be constituted by a touch panel display that integrates a display unit and an operation unit. The components of the welding control device 8 are connected by an internal bus (not illustrated) so as to be capable of communicating with each other.
A data acquiring unit 401 is configured to acquire point cloud data of the work W (measurement object) through the camera 10. The data acquiring unit 401 is configured to also acquire various types of data measured by a touch sensing function using the sensor 7 at the distal end of the welding robot 3. A data mode control unit 402 is configured to control operation mode in the welding system 100. For example, the data mode control unit 402 may control mode and parameters related to measurement of the work W performed before welding, and may also control mode and parameters used during welding.
A preprocessing unit 403 is configured to perform preprocessing on point cloud data acquired. The preprocessing performed here may vary depending on the point cloud data to be used. Examples of the preprocessing include filter processing, outlier removal processing, clustering, and coordinate transformation. A program generating unit 404 is configured to modify a general-purpose welding program or sensing program stored in advance on the basis of the measurement result to generate a program appropriate for the work W to be welded.
An estimation unit 405 is configured to estimate the shape of the work W using point cloud data acquired. Details of the estimation will be described later on below. An estimation result holding unit 406 is configured to hold, as an estimation result, the shape and position of the work W estimated through estimation performed by the estimation unit 405. A data managing unit 407 is configured to hold predefined information about the work W and data related to welding operation.
A sensing program holding unit 408 is configured to hold a sensing program for sensing performed using the sensor 7 at the distal end of the welding robot 3. A welding program holding unit 409 is configured to hold a welding program used in welding performed using the welding robot 3.
A robot control unit 410 is configured to cause the controller 9 to control the welding robot 3, by using the welding program and the sensing program, to perform various operations. The robot control unit 410 may be configured to also control the moving units 11 and 12. A positioner control unit 411 is configured to control the positioner 2 holding the work W, by using the welding program and the sensing program, to perform a rotational operation and the like. A camera control unit 412 is configured to control a measurement operation performed by the camera 10.
An example of measuring the work W according to the present embodiment will be described using
In
A solid line 700 represents the position coordinate of the surface of the work W estimated from the point cloud data. P2 and P3 of the work W indicate actual connection positions of the column 21 and the diaphragms 22. As illustrated in
A description will now be given of how an installation error of the work W with respect to the positioner 2 according to the present embodiment is to be dealt with. Assume that the position at which the work W is held by the positioner 2 deviates from the rotation axis of the positioner 2. In this case, as illustrated in
In the present embodiment, such an installation error of the positioner 2 is taken into account, and the positioner 2 is rotated to perform multiple measurements. The installation error is corrected on the basis of the results of the multiple measurements.
In the present embodiment, an installation error is corrected by averaging the values obtained by multiple measurements. Thus, with the influence of the installation error eliminated by H=(h1+h2)/2, the diameter H of the column 21 can be calculated. Other rotation angles may be used depending on the direction of the installation error. For example, the rotation angle of the positioner 2 may be 90 degrees or 270 degrees. The number of measurements is not limited to two, and more measurements may be performed in consideration of measurement accuracy.
With the point cloud data obtained by the camera 10, approximate dimensions and installation position of each component of the work W can be identified. On the basis of this result, the welding robot 3 can be brought closer to the work W. In welding, the position of the tip of the welding torch 5 can be controlled with higher precision. More precise position detection is thus performed by touch sensing using the sensor 7 at the distal end of the welding robot 3. In other words, with the point cloud data obtained by the camera 10, it is possible to estimate the dimensions and installation position of the work W with a certain degree of precision, move the welding robot 3 to the vicinity of the work W, and adjust the start position of touch sensing. The time required for touch sensing by the sensor 7 can thus be reduced.
After the dimensions and installation position of the work W are estimated with a certain degree of precision by the technique using the point cloud data described above, the region R and the groove are precisely measured by touch sensing of the sensor 7, and the dimensions and installation position of the work W can be corrected. It is thus possible to accurately identify the welding position of the work W and achieve more precise automatic welding.
A flow of welding, including work measurement processing, according to the present embodiment will now be described.
In step S901, the welding control device 8 sets a measurement mode. The measurement mode may be a mode designated by the user, or may be a mode defined in advance. For example, it may be possible to set a measurement mode in which multiple measurements are performed by varying the rotation angle of the positioner 2 as described above, or a measurement mode in which only a single measurement is performed.
In step S902, the welding control device 8 photographs the work W using the camera 10 to acquire point cloud data. If the size of the work W is smaller than a predetermined size, the point cloud data may be acquired in one photographing operation. If the size of the work W is greater than a predetermined size, a plurality of pieces of point cloud data may be acquired in a plurality of photographing operations and integrated. In the present step, in photographing, the photographing range and the photographing angle may be adjusted by the welding control device 8 in accordance with the position of the positioner 2, or may be defined in accordance with the measurement mode set in step S901.
In step S903, the welding control device 8 performs preprocessing on the point cloud data acquired in step S902. Examples of the preprocessing include filter processing, outlier removal processing, clustering, and coordinate transformation. The preprocessing in the present step may be omitted, as long as necessary processing is performed in accordance with the configuration of the point cloud data acquired in step S902.
Filter processing may be processing in which point clouds included in point cloud data are resampled at regular intervals by using, for example, a known voxel grid filter to make a point cloud density per predetermined volume uniform. Outlier removal processing may be processing of removing outliers that may degrade measurement accuracy. The outliers may be identified from statistical information, such as the mean and variance of neighboring point clouds, or may be identified from the number of neighboring point clouds that are present within a predetermined radius. Clustering may be processing, for example, that divides point clouds included in point cloud data into a plurality of groups on the basis of distance, and deletes groups including point clouds fewer than or equal to a predetermined threshold, so that point clouds other than those representing the shape of the work W are removed. Coordinate transformation transforms the camera coordinate system of the camera 10 into a predetermined coordinate system on the basis of the photographing position and the photographing angle of the camera 10. The predetermined coordinate system may be, for example, the positioner coordinate system of the positioner 2. Parameters required for transforming the coordinate system may be derived, for example, through calibration in advance.
In step S904, the welding control device 8 estimates the dimensions and shape of the work W by using the point cloud data processed in step S903. The estimation here may include estimating the installation position of the work W and the number of the columns 21 and the diaphragms 22 included in the work W. In the present embodiment, as illustrated in
As illustrated in
In step S905, the welding control device 8 determines whether the measurement has been completed. For example, the determination may be made on the basis of whether a number of measurements defined on the basis of the mode set in step S901 have been performed. Alternatively, the welding control device 8 may receive an operation from the user and determine that the measurement has been completed on the basis of the operation. If the measurement has been completed (YES in step S905), the process of the welding control device 8 proceeds to step S907. If the measurement has not been completed (NO in step S905), the process of the welding control device 8 proceeds to step S906.
In step S906, the welding control device 8 controls the rotation of the positioner 2 to a predefined rotation angle. The rotation angle may be defined, for example, in accordance with the mode set in step S901. Specifically, when the first rotation angle is 0 degrees about the z axis of the positioner coordinate system, then 180 degrees, 90 degrees, 270 degrees, and the like may be appropriately used. The process of the welding control device 8 then returns to step S902 and is repeated.
In step S907, the welding control device 8 corrects the estimation result and calculates the installation error. Specifically, the correction and the calculation are performed as described using
In step S908, the welding control device 8 generates a touch sensing program on the basis of the estimation result. The touch sensing program is a general-purpose program defined in advance. The touch sensing program is generated by adjusting parameters for the work W on the basis of the dimensions and installation position of the work W based on the estimation result.
In step S909, the welding control device 8 operates the welding robot 3 and the like on the basis of the touch sensing program generated in step S908 to measure more precise dimensions and position of the work W with the sensor 7 installed at the distal end of the welding robot 3.
In step S910, the welding control device 8 generates a welding program on the basis of the dimensions and position of the work W measured in step S909. The welding program is a general-purpose program defined in advance. The welding program is generated by adjusting parameters for the work W on the basis of the more precise dimensions and installation position of the work W based on the measurement result.
In step S911, the welding control device 8 operates the welding robot 3 and the like on the basis of the welding program generated in step S910 to perform welding on the work W. After completion of the welding, the present processing flow ends.
The present embodiment can thus accurately measure the configuration of the measurement object while making the time required to measure the measurement object shorter than before. In particular, it is possible to easily estimate the number and positions of the columns and diaphragms of the work with a certain degree of precision, and reduce the time required to operate the welding robot to perform measurement.
The present embodiment can also be implemented by a process in which a program or an application for performing the function of at least one embodiment described above is fed to a system or an apparatus using a network or a storage medium and at least one processor in a computer of the system or apparatus reads and executes the program.
The present embodiment may be implemented by a circuit that performs at least one function. Examples of the circuit that performs at least one function include an application-specific integrated circuit (ASIC) and a field-programmable gate array (FPGA).
As described above, the present specification discloses the following.
(1) A work measuring method for measuring a work (e.g., work W) including a columnar member (e.g., column 21) and a diaphragm (e.g., diaphragm 22) and held by a positioner (e.g., positioner 2) includes an acquiring step of acquiring point cloud data on a surface of the work held by the positioner and photographed in a predetermined direction (e.g., y axis direction of the positioner coordinate system), a detecting step of identifying a portion where distribution of the point cloud data changes in a three-dimensional coordinate system of the positioner and detecting the portion as a boundary position (e.g., P2, P3) between the columnar member and the diaphragm, and a deriving step of deriving the number of columnar members and diaphragms included in the work on the basis of the boundary position detected in the detecting step.
With this configuration, it is possible to accurately measure the configuration of a measurement object while making the time required to measure the measurement object shorter than before. In particular, it is possible to easily estimate the number and positions of the columns and diaphragms of the work with a certain degree of precision, and reduce the time required to operate the welding robot to perform measurement.
(2) In the work measuring method according to (1), in the detecting step, the point cloud data is projected onto a plane (yz plane) parallel to the predetermined direction and defined by a first axis (e.g., y axis of the positioner coordinate system) corresponding to the predetermined direction and a second axis (e.g., z axis of the positioner coordinate system) orthogonal to the first axis, and a change point of the point cloud data is detected as a boundary position between the columnar member and the diaphragm.
With this configuration, it is possible to accurately measure the configuration of a measurement object while making the time required to measure the measurement object shorter than before. In particular, the work can be measured on the basis of the position at which the work is held by the positioner.
(3) The work measuring method according to (2) further includes a calculating step of calculating a dimension and position of the work on the basis of the boundary position detected in the detecting step.
With this configuration, the dimension and position of the work can be identified with a certain degree of precision before the welding robot is operated to perform measurement, and the start position of measurement using the welding robot can be adjusted on the basis of the identified dimension and position of the work. It is thus possible to shorten the time for measurement performed by the sensor installed in the welding robot.
(4) In the work measuring method according to (3), in the calculating step, at least one of a diameter of the columnar member, a length of the columnar member, and a plate thickness of the diaphragm is calculated.
With this configuration, the dimensions of the column and the diaphragm of the work can be measured before the welding robot is operated to perform measurement.
(5) In the work measuring method according to (3), in the acquiring step, a plurality of pieces of point cloud data are acquired by rotating the work a predetermined rotation angle about the second axis with the positioner, and in the calculating step, the dimension and position of the work are calculated on the basis of the plurality of pieces of point cloud data.
With this configuration, a more precise measurement is achieved by taking into consideration an installation error of the work with respect to the positioner.
(6) In the work measuring method according to (2), in the detecting step, the boundary position is detected by using a part of point cloud data projected onto a plane (e.g., xz plane) orthogonal to the predetermined direction and defined by the second axis and a third axis (e.g., x axis of the positioner coordinate system) orthogonal to the first axis and the second axis. The part of the point cloud data is in a predetermined range from a center in a direction of the third axis.
By thus removing point cloud data in a region where the measurement accuracy may be degraded depending on the configuration of the sensor, the configuration of the work can be derived with higher accuracy.
(7) The work measuring method according to (3) further includes a correcting step of correcting, through sensing, at least one of the dimension and position of the work calculated in the calculating step.
With this configuration, in a welding system, correction can be performed by more precise sensing on the basis of a measurement result coarsely obtained.
(8) A welding system (e.g., welding system 100) includes a welding robot (e.g., welding robot 3) including a welding torch (e.g., welding torch 5), a welding control device (e.g., welding control device 8) configured to control the welding robot, a positioner (e.g., positioner 2) configured to hold a work (e.g., work W) including a columnar member (e.g., column 21) and a diaphragm (e.g., diaphragm 22), and a sensor (e.g., camera 10) configured to photograph the work in a predetermined direction to acquire point cloud data. The welding control device includes an acquiring unit (e.g., control unit 301, IF unit 303, data acquiring unit 401) configured to acquire point cloud data on a surface of the work held by the positioner and photographed by the sensor in the predetermined direction, a detecting unit (e.g., control unit 301, estimation unit 405) configured to identify a portion where distribution of the point cloud data changes in a three-dimensional coordinate system of the positioner and detect the portion as a boundary position between the columnar member and the diaphragm, and a calculating unit (e.g., control unit 301, estimation unit 405) configured to calculate a dimension and position of the work on the basis of the boundary position detected by the detecting unit.
With this configuration, it is possible to accurately measure the configuration of a measurement object while making the time required to measure the measurement object shorter than before.
(9) In the welding system according to (8), the welding torch includes a second sensor (e.g., sensor 7), and the welding control device includes a correcting unit (e.g., control unit 301, program generating unit 404) configured to correct, through sensing by the second sensor, at least one of the dimension and position of the work calculated by the calculating unit.
With this configuration, the dimension and position of the work can be identified with a certain degree of precision before the welding robot is operated to perform measurement, and the start position of measurement using the welding robot can be adjusted on the basis of the identified dimension and position of the work. It is thus possible to shorten the time for measurement performed by the sensor installed in the welding robot.
Number | Date | Country | Kind |
---|---|---|---|
2023-101761 | Jun 2023 | JP | national |