Device for acquiring position data of workpiece, control device, robot system, method, and computer program

Through the matching of the workpiece model and the shape detection sensor detection data, combined with the verification of the confirmation area, the error matching problem in the acquisition of the workpiece position data is solved, and the accuracy of the robot operation is improved.

CN119403659APending Publication Date: 2025-02-07FANUC LTD
View PDF 5 Cites 0 Cited by

Patent Information

Application Number
CN202280097045.8
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2022-06-21
Publication Date
2025-02-07

AI Technical Summary

Technical Problem

In the prior art, the detection data of the workpiece model and the shape detection sensor are easily mismatched, resulting in the inability to accurately obtain the position data of the workpiece, affecting the accuracy of the robot's operation.

Method used

By matching the workpiece model with the workpiece shape data contained in the detection data, the position data is obtained, and when the object shape data in the detection data exists in the determined confirmation area, the position data is cancelled to avoid incorrect matching.

Benefits of technology

It effectively avoids location data failure caused by wrong matching and improves the accuracy of robot operations.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN119403659A_ABST
    Figure CN119403659A_ABST
Patent Text Reader

Abstract

In the prior art, a workpiece model is mismatched with detection data of a shape detection sensor. At this time, accurate position data of the workpiece cannot be acquired, and it may be impossible to accurately execute work on the workpiece. A device (50) for acquiring position data of a workpiece on the basis of detection data from a shape detection sensor (14) is provided with: a position data acquisition unit (44) for acquiring position data by matching a workpiece model, which is obtained by modeling a workpiece, with shape data of the workpiece included in the detection data, said shape data being obtained by modeling the workpiece; the workpiece model determines a confirmation area corresponding to the area which cannot be entered; and a position data cancelling unit (46) that invalidates the position data acquired by the position data acquisition unit (44) when the shape data of the object included in the detection data is present in a confirmation region specified by the workpiece model in which the position data acquisition unit (44) matches the shape data of the workpiece.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present disclosure relates to an apparatus, a control apparatus, a robot system, a method, and a computer program for acquiring position data of a workpiece. Background Art

[0002] There is known an apparatus that matches a workpiece model obtained by modeling the workpiece with detection data of a shape detection sensor that detects the shape of the workpiece, thereby acquiring position data of the workpiece (for example, Patent Document 1).

[0003] Prior art literature

[0004] Patent Literature

[0005] Patent Document 1: Japanese Patent Application Publication No. 2017-102529 Summary of the invention

[0006] Problems to be solved by the invention

[0007] In the past, there was a case where the workpiece model was incorrectly matched with the detection data of the shape detection sensor. In this case, accurate position data of the workpiece could not be obtained, and it might be impossible to accurately perform the operation on the workpiece.

[0008] Means for solving problems

[0009] In one embodiment of the present disclosure, a device is provided for acquiring position data of a workpiece based on detection data of a shape detection sensor for detecting the shape of an object and a workpiece, wherein the workpiece is adjacent to the object and has an area that the object cannot enter, wherein the device comprises: a position data acquisition unit for acquiring position data by matching a workpiece model with shape data of the workpiece contained in the detection data, wherein the workpiece model is obtained by modeling the workpiece and the workpiece model defines a confirmation area corresponding to the inaccessible area; and a position data cancellation unit for invalidating the position data acquired by the position data acquisition unit when shape data of the object contained in the detection data exists in the confirmation area determined by the workpiece model matched by the position data acquisition unit with the shape data of the workpiece.

[0010] In other embodiments of the present disclosure, a method is provided for obtaining position data of a workpiece based on detection data of a shape detection sensor that detects the shape of the object and the workpiece, wherein the workpiece is adjacent to the object and has an area that the object cannot enter, wherein a processor performs the following actions: obtaining the position data by matching a workpiece model with the shape data of the workpiece contained in the detection data, wherein the workpiece model is obtained by modeling the workpiece and the workpiece model determines a confirmation area corresponding to the inaccessible area; and when shape data of the object contained in the detection data exists in the confirmation area determined by the workpiece model that matches the shape data of the workpiece, invalidating the obtained position data.

[0011] Effects of the Invention

[0012] According to the present disclosure, it is possible to avoid using position data obtained as a result of mismatching between the workpiece model and the shape data to cause the robot to perform work on the workpiece, thereby improving the work accuracy of the robot. BRIEF DESCRIPTION OF THE DRAWINGS

[0013] Figure 1 This is a schematic diagram of a robot system according to one embodiment.

[0014] Figure 2 yes Figure 1 Block diagram of the robot system shown.

[0015] Figure 3 This is a perspective view of a workpiece according to one embodiment.

[0016] Figure 4 This is a flowchart showing an example of the operation flow of the robot system.

[0017] Figure 5 This is an example of detection data detected by the shape detection sensor.

[0018] Figure 6 Yes means Figure 4 A flowchart of an example of the process of step S2 in .

[0019] Figure 7 Indicates that Figure 3 A three-dimensional image of a workpiece model obtained by modeling the workpiece.

[0020] Figure 8 express Figure 8 A top view of the workpiece model is shown.

[0021] Fig. 9 Indicates that the artifact model is Figure 5 The detection data shown matches the status.

[0022] Fig.10 Indicates that the artifact model is Figure 5 The status shown shows a mismatch in the detection data.

[0023] Fig.11 Yes means Figure 4 A flowchart of an example of the process of step S3 in .

[0024] Fig.12 Yes means Figure 4 Flowchart of another example of the process of step S3 in .

[0025] Fig.13 Indicates from Figure 5 The inspection data shown is in a state where one shape data is deleted.

[0026] Fig.14 Yes means Figure 2 A block diagram of other functions of the robotic system is shown.

[0027] Fig.15 This is a flowchart showing an example of a method of setting a confirmation area for a workpiece model.

[0028] Fig.16 Indicates the status of setting multiple confirmation areas for the workpiece model.

[0029] Fig.17 Yes means Figure 2 A block diagram of other functions of the robot system shown.

[0030] Fig.18 This is a flowchart showing another example of the method of setting the confirmation area for the workpiece model.

[0031] Fig.19 Indicates the state of quantizing the workpiece model into unit voxels.

[0032] Fig. 20 It is used for Fig.18 A diagram illustrating the simulation of step S51 in FIG. DETAILED DESCRIPTION

[0033] Hereinafter, embodiments of the present disclosure will be described in detail with reference to the accompanying drawings. In addition, in the various embodiments described below, the same elements are marked with the same reference numerals, and repeated descriptions are omitted. Figure 1 as well as Figure 2 , a robot system 10 according to an embodiment will be described. The robot system 10 includes a robot 12 , a shape detection sensor 14 , and a control device 16 .

[0034] In this embodiment, the robot 12 is a vertical multi-joint robot, and includes a robot base 18, a rotary body 20, a lower arm 22, an upper arm 24, a wrist 26, and an end effector 28. The robot base 18 is fixed on the floor of the work unit. The rotary body 20 is provided on the robot base 18 in a manner that allows it to rotate around a vertical axis.

[0035] The lower arm 22 is provided on the rotating body 20 so as to be rotatable around a horizontal axis, and the upper arm 24 is provided on the front end of the lower arm 22 so as to be rotatable. The wrist 26 includes a wrist base 26a provided on the front end of the upper arm 24 so as to be rotatable around two axes orthogonal to each other, and a wrist flange 26b provided on the wrist base 26a so as to be rotatable around a wrist axis A1.

[0036] The end effector 28 is detachably mounted on the wrist flange 26b. The end effector 28 is, for example, a robot manipulator capable of holding the workpiece W, a welding torch for welding the workpiece W, or a laser processing head for laser processing the workpiece W, and performs a predetermined operation on the workpiece W (workpiece operation, welding, or laser processing).

[0037] A servo motor 30 is provided on each component of the robot 12 (the robot base 18, the rotary body 20, the lower arm 22, the upper arm 24, and the wrist 26). Figure 2 ). These servo motors 30 rotate the movable elements (rotating body 20, lower arm 22, upper arm 24, wrist 26, wrist flange 26b) of the robot 12 according to the command from the control device 16. As a result, the robot 12 can move the end effector 28 and place it at an arbitrary position.

[0038] The shape detection sensor 14 detects the shape of an object such as a workpiece W. In the present embodiment, the shape detection sensor 14 is a three-dimensional vision sensor having an imaging sensor (CMOS, CCD, etc.) and an optical lens (collimating lens, focusing lens, etc.) for guiding an image of a subject to the imaging sensor, and is fixed to the end effector 28 (or the wrist flange 26 b).

[0039] The shape detection sensor 14 is configured to capture a subject image along the optical axis A2 and measure a distance d to the subject image. The shape detection sensor 14 may be fixed relative to the end effector 28 so that the optical axis A2 and the wrist axis A1 are parallel to (or orthogonal to) each other. The shape detection sensor 14 supplies the detected detection data DD to the control device 16.

[0040] like Figure 1As shown, a robot coordinate system C1 and a tool coordinate system C2 are set for the robot 12. The robot coordinate system C1 is a control coordinate system for controlling the actions of each movable element of the robot 12. In the present embodiment, the robot coordinate system C1 is fixed relative to the robot base 18 so that its origin is arranged at the center of the robot base 18 and its z-axis is parallel to (specifically, coincident with) the rotation axis of the rotating body 20.

[0041] On the other hand, the tool coordinate system C2 is a control coordinate system that specifies the position and posture of the end effector 28 in the robot coordinate system C1. In the present embodiment, the tool coordinate system C2 is set relative to the end effector 28 so that its origin (so-called TCP) is arranged at the working position (for example, the workpiece holding position, welding position, or laser beam emission port) of the end effector 28 and its z-axis is parallel to (specifically, coincident with) the wrist axis A1.

[0042] When moving the end effector 28, the control device 16 sets the tool coordinate system C2 in the robot coordinate system C1, and generates instructions to the servo motors 30 of the robot 12 so that the end effector 28 is configured to the position and posture represented by the set tool coordinate system C2. In this way, the control device 16 can position the end effector 28 to any position and posture in the robot coordinate system C1.

[0043] On the other hand, a sensor coordinate system C3 is set for the shape detection sensor 14. The sensor coordinate system C3 is a control coordinate system that specifies the position and posture of the shape detection sensor 14 in the robot coordinate system C1 (that is, the position and direction of the optical axis A2). In the present embodiment, the sensor coordinate system C3 is set relative to the shape detection sensor 14 so that its origin is arranged at the center of the imaging sensor of the shape detection sensor 14 and its z axis is parallel to (specifically, coincident with) the optical axis A2. The sensor coordinate system C3 specifies the coordinates of each pixel of the detection data DD (or the imaging sensor) detected by the shape detection sensor 14.

[0044] The positional relationship between the sensor coordinate system C3 and the tool coordinate system C2 is known through calibration, so the coordinates of the sensor coordinate system C3 and the coordinates of the tool coordinate system C2 can be transformed into each other via a known transformation matrix (for example, a homogeneous transformation matrix). In addition, the positional relationship between the tool coordinate system C2 and the robot coordinate system C1 is known, so the coordinates of the sensor coordinate system C3 and the coordinates of the robot coordinate system C1 can be transformed into each other via the tool coordinate system C2. That is, the position and posture of the shape detection sensor 14 in the robot coordinate system C1 (specifically, the coordinates of the sensor coordinate system C3) are known.

[0045] The control device 16 controls the actions of the robot 12. Specifically, Figure 2 As shown, the control device 16 is a computer having a processor 32, a memory 34, and an I / O interface 36. The processor 32 has a CPU or a GPU, etc., is connected to the memory 34 and the I / O interface 36 via a bus 38 so as to be communicable, communicates with these components, and performs calculation processing for realizing various functions described later.

[0046] The memory 34 has a RAM or a ROM, etc., and stores various data temporarily or permanently. The memory 34 can be composed of a storage medium such as a volatile memory, a non-volatile memory, a magnetic storage medium, or an optical storage medium. The I / O interface 36 has, for example, an Ethernet (registered trademark) port, a USB port, an optical fiber connector, or an HDMI (registered trademark) terminal, and communicates data with external devices by wire or wirelessly under the instruction from the processor 32. Each servo motor 30 and the shape detection sensor 14 of the robot 12 are connected to the I / O interface 36 in a communicative manner.

[0047] In addition, the control device 16 is provided with a display device 40 and an input device 42. The display device 40 and the input device 42 are connected to the I / O interface 36 so as to be communicable. The display device 40 has a liquid crystal display or an organic EL display, etc., and can display various data visually under the instruction from the processor 32.

[0048] The input device 42 includes a push button, a switch, a keyboard, a mouse, or a touch panel, and receives data input from an operator. In addition, the display device 40 and the input device 42 may be integrally assembled in the housing of the control device 16, or may be a computer (PC, etc.) separate from the housing of the control device 16 and externally placed in the housing.

[0049] In this embodiment, the processor 32 obtains the position data of the workpiece W in the robot coordinate system C1 based on the detection data DD of the shape detection sensor 14 for detecting the shapes of the plurality of workpieces W bulked in the container B. Figure 3 As shown, in this embodiment, each workpiece W includes a shaft portion S, a flange portion F fixedly provided at one end of the shaft portion S, and a hole H penetrating the shaft portion S and the flange portion F in the axial direction.

[0050] When bulked in the container B, one workpiece W1 abuts against another workpiece W2 adjacent to the workpiece W1, but the parts of the other workpiece W2 (i.e., the shaft portion S and the flange portion F) cannot enter the hole H of the workpiece W1. That is, in the present embodiment, each workpiece W has a hole H as a region into which other workpieces W (objects) cannot enter.

[0051] Next, refer to Figure 4The functions of the robot system 10 are described below. When the processor 32 receives a work start instruction from an operator, a host controller, or a computer program PG, it starts Figure 4 In step S1 , the processor 32 obtains detection data DD detected by the shape detection sensor 14 .

[0052] Specifically, the processor 32 operates the robot 12 to position the shape detection sensor 14 at a photographing position where the bulk workpieces W in the container B are within the detection range of the shape detection sensor 14. The processor 32 also operates the shape detection sensor 14 to photograph the workpieces W in the container B, thereby detecting detection data DD displayed by the workpieces W.

[0053] Figure 5 An example of imaging the detection data DD is shown. Figure 5 In the detection data DD shown, for ease of understanding, only two adjacent workpieces W1 and W2 among the workpieces W in the container B are shown. However, it should be understood that actually three or more bulk workpieces W can be shown in the detection data DD.

[0054] In this embodiment, the detection data DD is three-dimensional point group image data, including a plurality of workpieces W n Shape data SD n (n=1, 2, 3, ...) (in Figure 5 The shape data SD1 of the workpiece W1 and the shape data SD2 of the workpiece W2 are shown in FIG. n With workpiece W n The point group of visual features (edges, faces, etc.) of the shape data SD is composed of each point having the information of the distance d mentioned above. n Each point of the point group can be expressed as the three-dimensional coordinates (X S , Y S , Z S ). The processor 32 obtains detection data DD detected by the shape detection sensor 14 from the shape detection sensor 14 .

[0055] In step S2, the processor 32 acquires the position data PD of the workpiece W. That is, in the present embodiment, the processor 32 serves as a position data acquisition unit 44 ( Fig.14 ) to function. Figure 6 The processor 32 functions as the position data acquisition unit 44 and executes Figure 6 The process of step S2 is shown.

[0056] After starting at step S2 , the processor 32 acquires a workpiece model WM obtained by modeling the workpiece W at step S11 . Figure 7 An example of the workpiece model WM is shown. The workpiece model WM includes a shaft model SM obtained by modeling the shaft S, a flange model FM obtained by modeling the flange F, and a hole model HM obtained by modeling the hole H.

[0057] The workpiece model WM includes, for example: a CAD model WM of the workpiece W C ; Represent the CAD model WM with point groups (or normals) C Point group model WM of model components (edges, faces, etc.) P CAD Model WM C The CAD model WM is a three-dimensional CAD model that is prepared in advance by an operator using a CAD device (not shown). The processor 32 can obtain the CAD model WM from the CAD device. C , according to a predetermined image generation algorithm, the CAD model WM C The model components of the point group are assigned to generate the point group model WM P .

[0058] In this embodiment, the processor 32 generates workpiece models WM (for example, point group models WM ) of a plurality of postures observed from different virtual sight lines VL in step S11. P ).For example, Figure 7 The workpiece model WM is shown in a first posture when the workpiece model WM is viewed from the inclined virtual sight line direction VL.

[0059] on the other hand, Figure 8 The processor 32 generates the workpiece model WM in the second posture when the workpiece model WM is viewed from the virtual line of sight direction VL parallel to the central axis of the workpiece model WM. Figure 7 and Figure 8 The workpiece model WM is in various postures when the workpiece model WM is viewed from various virtual sight lines VL as shown.

[0060] In addition, the workpiece models WM of the generated multiple postures may only have model data of the front side that can be visually confirmed when observed from the virtual sight line direction VL, and do not have model data of the back side that cannot be visually confirmed when observed from the virtual sight line direction VL. Figure 7 The workpiece model WM in the first posture shown is a point group model WM P When Figure 7 The model data of the point group of the model component on the front side of the paper that can be visually confirmed in the figure is generated, while on the other hand, the model component on the back side of the paper that cannot be visually confirmed (i.e., from Figure 7The model data of the point group of the back edge and the surface when observing the virtual line of sight direction VL. With this structure, the amount of data of the workpiece model WM to be generated can be reduced.

[0061] A workpiece coordinate system C4 is set for each generated workpiece model WM. The workpiece coordinate system C4 is a control coordinate system that defines the position and posture of the workpiece model WM. Figure 7 and Figure 8 In the example shown, the workpiece coordinate system C4 is set relative to the workpiece model WM so that its origin is arranged at the opening center of the hole model HM opened on the end surface of the shaft model SM and its z axis coincides with the central axis of the hole model HM (or the workpiece model WM).

[0062] Furthermore, the processor 32 can receive an input for setting the workpiece coordinate system C4 for the workpiece model WM from the operator via the input device 42. The processor 32 stores the generated workpiece models WM in a plurality of postures in the memory 34 together with the setting information of the workpiece coordinate system C4.

[0063] Here, for each of the workpiece models WM in the plurality of postures generated, a confirmation area VE is predetermined. In the present embodiment, the hole model HM of the workpiece model WM (i.e., an area on the model corresponding to an area in the workpiece W that cannot be entered by other workpieces W) is determined as the confirmation area VE. In addition, a method for setting the confirmation area VE for the workpiece model WM will be described later.

[0064] In step S12, the processor 32 performs preprocessing PP on the detection data DD acquired in step S1. For example, as preprocessing PP, the processor 32 may perform the following processing: deleting invalid point groups (for example, point groups existing outside the container B or points from the workpiece W) from the detection data DD among the point groups included in the detection data DD; n Shape data SD n The point group exceeds the specified distance and deviates significantly).

[0065] In step S13, the processor 32 performs a rough search RS. Specifically, as a rough search RS, the processor 32 sequentially arranges the workpiece models WM of the plurality of postures generated in step S11 in the virtual space defined by the sensor coordinate system C3 of the detection data DD, and aligns the workpiece models WM with the shape data SD included in the detection data DD. n match.

[0066] At this time, the processor 32 repeatedly displaces the position of the workpiece model WM arranged in the sensor coordinate system C3 by a predetermined displacement amount. And, each time the position of the workpiece model WM is displaced, the processor 32 obtains the characteristic point Fm of the workpiece model WM and the shape data SD nThe consistency α of the feature points Fs.

[0067] The consistency α includes, for example, the distance error between the feature point Fm and the feature point Fs corresponding to the feature point Fm. In this case, the more consistent the feature point Fm is with the feature point Fs in the sensor coordinate system C3, the smaller the consistency α is. Alternatively, the consistency α may include the similarity indicating the similarity between the feature point Fm and the feature point Fs corresponding to the feature point FPm. In this case, the more consistent the feature point Fm is with the feature point Fs in the sensor coordinate system C3, the larger the consistency α is.

[0068] Then, the processor 32 compares the obtained degree of match α with a threshold value α predetermined for the degree of match α. th When the consistency α exceeds the threshold α th When (i.e., α≤α th Or α≥α th ), it is determined that the workpiece model WM and the shape data SD in the sensor coordinate system C3 n Approximately matches.

[0069] Fig. 9 The processor 32 obtains the coordinate Q1 of the sensor coordinate system C3 in the workpiece coordinate system C4 set for the workpiece model WM matched with the shape data SD1 as the rough search RS. S (X1 S , Y1 S , Z1 S , W1 S , P1 S , R1 S ). The coordinate Q1 S (X1 S , Y1 S , Z1 S ) represents the origin position of the workpiece coordinate system C4 in the sensor coordinate system C3, (W1 S , P1 S , R1 S ) represents the posture (so-called yaw, pitch, and roll) of the workpiece coordinate system C4 in the sensor coordinate system C3.

[0070] Then, the processor 32 converts the coordinate Q1 of the sensor coordinate system C3 into S Transformed into coordinate Q1 of robot coordinate system C1 R (X1 R , Y1 R , Z1 R , W1 R , P1 R , R1 R ), get the coordinate Q1R As the initial position data PD 1_1 The initial position data PD 1_1 Indicates the estimated values ​​of the position and posture of the workpiece W1 in the robot coordinate system C1.

[0071] Similarly, the processor 32 obtains other workpieces W that appear in the detection data DD. n Initial position data PD 1_n Assume that the detection data DD includes the shape data SD1 of the workpiece W1, the shape data SD2 of the workpiece W2, and so on. n Shape data SD n (n is a positive integer), the processor 32 obtains the initial position data PD of the workpiece W1 1_1 , the initial position data PD of workpiece W2 1_2 , ...workpiece W n Initial position data PD 1_n Thus, the processor 32 makes the workpiece model WM and the shape data SD n Matching, thereby obtaining the workpiece W n Location data PD 1_n .

[0072] In step S14, the processor 32 performs a fine search PR. Specifically, the processor 32 performs a fine search PR on the workpiece W that appears in the detection data DD. n The processor 32 uses the initial position data PD obtained in step S13 1_n Based on the specified matching algorithm (e.g., ICP: Iterative Closest Point and other mathematical optimization algorithms), the workpiece model WM and shape data SD are searched in the sensor coordinate system C3. n Highly matched location.

[0073] For example, the processor 32 obtains the initial position data PD in the sensor coordinate system C3 1_n Point group model WM as workpiece model WM configuration P The point group and the shape data SD included in the detection data DD n The consistency β of the three-dimensional point group. For example, the consistency β includes: the point group model WM P Point group and shape data SD n The distance error of the three-dimensional point group, or the point group model WM P Point group and shape data SD n The similarity of a three-dimensional point group.

[0074] Then, the processor 32 compares the obtained degree of consistency β with a threshold value β predetermined for the degree of consistency β. thWhen the consistency β exceeds the threshold β th When (for example, β≤β th Or β ≥ β th ), it is determined that the workpiece model WM (for example, the point group model WM P ) and shape data SD n On the other hand, when the consistency β does not exceed the threshold β th When the position of the workpiece model WM arranged in the sensor coordinate system C3 is displaced by a predetermined amount, the processor 32 calculates the degree of coincidence β each time the position of the workpiece model WM is displaced, and compares it with the threshold β. th Make a comparison.

[0075] When the consistency β exceeds the threshold β th When the processor 32 obtains: the fine search PR and the shape data SD n Coordinate Q2 of the workpiece coordinate system C4 set by the highly matched workpiece model WM in the sensor coordinate system C3 S (X2 S , Y2 S , Z2 S , W2 S , P2 S , R2 S ).

[0076] Then, the processor 32 converts the coordinate Q2 of the sensor coordinate system C3 into S Transformed into coordinate Q2 of robot coordinate system C1 R (X2 R , Y2 R , Z2 R , W2 R , P2 R , R2 R ), get the coordinate Q2 R As workpiece W n Location data PD 2_n The position data PD 2_n Represents the workpiece W in the robot coordinate system C1 n High-precision position and posture.

[0077] As a result of step S14, the processor 32 obtains the plurality of workpieces W that appear in the detection data DD. n Location data PD 2_n The processor 32 converts the acquired position data PD 2_n The detection result data DT is stored in the memory 34. Table 1 below schematically shows an example of the data structure of the detection result data DT.

[0078] [Table 1]

[0079]

[0080] Table 1

[0081] In the detection result data DT shown in Table 1, n Location data PD 2_n (Specifically, coordinate Q2 S (X2 R , Y2 R , Z2 R , W2 R , P2 R , R2 R )) Store consistency β together n , plane ratio γ n And the exposure rate δ n The detection result parameter PM is a parameter indicating the position data PD. 2_n Workpiece W executed at n Shape data SD n The parameters of the matching result with the workpiece model WM. Specifically, the consistency β n It is determined that the workpiece model WM and the shape data SD are aligned by the fine search PR in step S14. n The degree of consistency when the height is matched.

[0082] Plane scale n For example: In the refinement search PR and shape data SD n In the matched workpiece model WM, the largest plane model (specifically, the plane point group model WM P ) in the entire workpiece model WM (specifically, the entire point group model WM P ) in the plane. It can also be replaced by the plane ratio γ n Yes: Indicates that the shape data SD that matches the workpiece model WM is searched through the fine search PR n The point group of the largest plane contained in the shape data SD n The proportion of the whole (specifically, the point group of the whole).

[0083] Exposure rate δ n For example, by fine-tuning the search PR and shape data SD n The area of ​​the workpiece model WM that matches the shape data SD n Point group matching point group model WM P point group) relative to the shape data SD n The entirety of the matched workpiece model WM (specifically, the point group model WMP of all point groups).

[0084] Processor 32 and position data PD 2_n Get the test result parameters PM (consistency β n , plane ratio γ n And the exposure rate δ n ), and with the position data PD 2_n The detection result parameters PM are associated with each other and stored in the memory 34 as the detection result data DT. n , plane ratio γ n And the exposure rate δ n , and may have other arbitrary parameters.

[0085] In step S15, the processor 32 performs post-processing OP on the detection result data DT. For example, as the post-processing OP, the processor 32 may perform: deleting the position data PD whose detection result parameter PM does not meet the prescribed reference from the detection result data DT; 2_n processing.

[0086] Specifically, in the consistency β n , plane ratio γ n Or exposure rate δ n If the value does not exceed the specified reference value, the processor 32 may determine that the detection result parameter PM does not meet the reference value, and delete the position data PD associated with the detection result parameter PM from the detection result data DT. 2_n As described above, the processor 32 functions as the position data acquisition unit 44 and executes Figure 6 Step S2 shown in the figure, obtain the workpiece W n Location data PD 1_n , PD 2_n .

[0087] Refer again Figure 4 In step S3, the processor 32 verifies the workpiece model WM and the shape data SD n Here, in the above steps S13 and S14, the workpiece model WM and the shape data SD n When matching, the processor 32 sometimes matches the workpiece model WM with the shape data SD n Mismatch, thus, the matched workpiece model WM and shape data SD n There is a mismatch between them.

[0088] Fig.10 An example of a state where such a mismatch occurs is shown. Fig.10In the example shown, when the processor 32 matches the workpiece model WM with the shape data SD1 of the workpiece W1 represented in the detection data DD, the flange model FM of the workpiece model WM matches the shape data SD1 of the flange F in the shape data SD1 of the workpiece W1 .

[0089] On the other hand, the shaft model SM of the workpiece model WM does not match the shape data SD1 of the shaft S of the workpiece W1. As a result, a part of the point group of the shape data SD2 of the other workpiece W2 exists in the hole model HM of the workpiece model WM set as the above-mentioned confirmation area VE.

[0090] In this embodiment, in step S3, the processor 32 verifies whether a shape data SD2 of the workpiece W2 existing in the confirmation area VE is generated. Fig.10 When a mismatch occurs, the position data PD obtained as the detection result data DT is changed to 2_n That is, in this embodiment, the processor 32 makes the position data PD 2_n Invalid position data canceling unit 46 ( Figure 2 ) to perform its function.

[0091] Below, refer to Fig.11 Step S3 will be described. The processor 32 functions as the position data canceling unit 46 and executes Fig.11 After step S3 is started, in step S21, the processor 32 is used to determine the workpiece W stored in the detection result data DT. n Location data PD 2_n The number "n" is set to "1".

[0092] In step S22, the processor 32 calculates the workpiece W n Location data PD 2_n The shape data SD within the confirmation area VE determined in the workpiece model WM matched at the time m (e.g., m≠n) the amount of data DA n Assume that, at the beginning of step S22, the number "n" is set to n=1 (ie, the first time step S22 is executed), the processor 32 calculates the position data PD of the workpiece W1. 2_1 The shape data SD within the confirmation area VE determined in the workpiece model WM matched at the time m The amount of data DA1.

[0093] For example, in Fig.10In the example shown, as described above, within the confirmation area VE of the workpiece model WM that is erroneously matched to the shape data SD1 of the workpiece W1, there is a point group of the shape data SD2 of the workpiece W2, which is an object adjacent to the workpiece W1. Therefore, at this time, the processor 32 calculates the data amount DA1 of the point group of the shape data SD2 within the confirmation area VE determined in the workpiece model WM.

[0094] Specifically, the processor 32 calculates the number of points of the shape data SD2 arranged in the confirmation area VE in the sensor coordinate system C3 as the data amount DA1. n Location data PD 2_n The shape data SD within the confirmation area VE determined in the workpiece model WM matched at the time m The amount of data DA n .

[0095] In step S23, the processor 32 calculates the data amount DA in the previous step S22. n , determine when obtaining workpiece W n Location data PD 2_n Whether the shape data SD exists in the confirmation area VE of the workpiece model WM matched at the time m Specifically, the processor 32 calculates the data amount DA in the previous step S22 by n and the data volume DA of the workpiece model WM w Substitute into the following formula 1 to calculate the mismatch parameter ε n .

[0096] ε n =DA n / DA w …(Formula 1)

[0097] The mismatch parameter ε obtained by calculation of formula 1 is n It is a quantitative representation of the workpiece model WM and shape data SD n As described above, the confirmation area VE is determined for the workpiece model WM so as to correspond to the area that other objects (for example, the workpiece W2) cannot enter. Therefore, for example Fig. 9 As shown, when the workpiece model WM and the shape data SD1 of the workpiece W1 are properly matched, a point group of the shape data SD2 of the workpiece W2 which is another object adjacent to the workpiece W1 does not substantially exist in the confirmation area VE of the workpiece model WM.

[0098] On the other hand, Fig.10As shown in FIG. 1 , when the workpiece model WM and the shape data SD1 are mismatched, the point group of the shape data SD2 exists in the confirmation area VE of the workpiece model WM. Therefore, the mismatch parameter ε1 is obtained based on the data volume DA1 of the shape data SD2 in the confirmation area VE and the above-mentioned formula 1, thereby quantitatively verifying Fig.10 As shown, there is a mismatch between the workpiece model WM and the shape data SD1 of the workpiece W1.

[0099] In step S23, the processor 32 determines the mismatch parameter ε obtained as described above. n Is it a predetermined threshold ε? th Above (i.e., ε n ≥ε th ), in ε n ≥ε th When the shape data SD is determined to exist in the confirmation area VE m (i.e., is). On the other hand, in ε n <ε th , the processor 32 determines as no.

[0100] In addition, the above formula 1 can also be corrected to ε n =DA n / DA w × 100. In addition, the calculation is not limited to the above formula 1, and it is also possible to use the data volume DA n Any operation to obtain the quantitative representation of the workpiece model WM and shape data SD n The mismatch parameter is the degree of mismatch.

[0101] Alternatively, the processor 32 may not calculate the mismatch parameter ε n , but the data volume DA calculated in the previous step S22 n is a predetermined threshold DA th above (i.e., DA n ≥DA th ), the processor 32 proceeds to step S24 when the determination is yes, and proceeds to step S25 when the determination is no.

[0102] In step S24, the processor 32 functions as the position data canceling unit 46 to invalidate the position data PD of the workpiece W acquired in step S2. Hereinafter, a case where the number "n" is set to n=1 at the start of step S24 will be described.

[0103] like Fig.10As shown in FIG. 1 , when the workpiece model WM and the shape data SD1 are mismatched, the workpiece coordinate system C4 set for the workpiece model WM does not accurately represent the position and posture of the workpiece W1 shown in the detection data DD. Therefore, it is assumed that the processor 32 uses the position data PD obtained based on the mismatched workpiece coordinate system C4 in step S5 described later. 2_1 When the robot 12 is caused to perform work on the workpiece W1 , the work cannot be performed with high accuracy.

[0104] Therefore, in this embodiment, the processor 32 functions as the position data canceling unit 46 in step S24 to avoid using the position data PD obtained as a result of the mismatch in the control of step S5 described later. 2_1 , so that the position data PD 2_1 invalid.

[0105] As an example, the processor 32 deletes the position data PD of the workpiece W1 from the detection result data DT generated in the above step S2. 2_1 As another example, the processor 32 processes the position data PD of the workpiece W1 stored in the detection result data DT. 2_1 The invalid flag FL is assigned.

[0106] In this case, when the processor 32 executes step S5 described later, the position data PD of the detection result data DT is read. 2_1 When the reference is given to the position data PD 2_1 The invalid flag FL ignores the position data PD 2_1 As a result, the processor 32 cancels the job for the workpiece W1 in step S5.

[0107] Thus, in step S24, the processor 32 causes the position data PD stored in the detection result data DT to be 2_n Invalidate (for example, delete or set invalid flag FL), thereby avoiding the use of position data PD obtained as a result of mismatch in the control of step S5 described later. 2_1 .

[0108] In step S25, the processor 32 determines whether the number "n" set at this point in time is n=n MAX The n MAX is the workpiece W obtained in step S2 n Location data PD 2_n The total number of workpieces W (or the total number of workpieces W shown in the detection data DD obtained in the previous step S1) n When the processor 32 determines that it is yes, it ends Fig.11 On the other hand, the flow shown in the figure proceeds to step S26 when the determination is negative.

[0109] In step S26, the processor 32 increases the number "n" by "1" (n=n+1). Then, the processor 32 returns to step S22. In this way, the processor 32 repeatedly executes the loop of steps S22 to S26, so that the position data PD stored in the detection result data DT is 2_n The position data PD obtained as a result of the mismatch 2_n It is invalid until it is determined to be yes in step S25.

[0110] Refer again Figure 4 In step S4, the processor 32 determines the position data PD 2_n Specifically, the processor 32 determines the detection result data DT after executing the above-mentioned step S3 as formal control data used in the control of step S5 described later, and stores it in the memory 34 (for example, RAM).

[0111] In step S5, the processor 32 refers to the detection result data DT determined in step S4 and operates the robot 12 to perform the detection on the workpiece W. n Assume that, in the above step S24, the position data PD of the workpiece W1 is 2_1 is invalidated, while the position data PD of the workpiece W2 2_2 Not invalidated.

[0112] In this case, the processor 32 cancels the operation on the workpiece W1 and refers to the position data PD of the workpiece W2 stored in the detection result data DT. 2_2 , the robot 12 is moved, and the end effector 28 (ie, the origin of the tool coordinate system C2) is determined as the position data PD 2_2 The position and posture shown (i.e., the coordinate Q2 of the robot coordinate system C1) R (X2 R , Y2 R , Z2 R , W2 R , P2 R , R2 R )), the end effector 28 is used to perform work on the workpiece W2.

[0113] In step S6, the processor 32 determines whether the operation for all the workpieces W in the container B has been completed. If the processor 32 determines that it is yes, the process ends. Figure 4In the process shown, when the determination result is negative, the process returns to step S1. In this way, the processor 32 repeatedly executes the loop of steps S1 to S6, obtains the detection data DD newly detected by the shape detection sensor 14 in step S1, and executes steps S2 to S5 according to the new detection data DD until the determination result is positive in step S6.

[0114] As described above, in this embodiment, the processor 32 functions as the position data acquisition unit 44 and the position data cancellation unit 46 to acquire the position of the workpiece W based on the detection data DD of the shape detection sensor 14. n Location data PD 1_n , PD 2_n Therefore, the position data acquisition unit 44 and the position data cancellation unit 46 constitute a unit for acquiring the position data of the workpiece W based on the detection data DD of the shape detection sensor 14. n Location data PD 1_n , PD 2_n Device 50( Figure 2 ).

[0115] In the device 50, the position data acquisition unit 44 compares the workpiece model WM that defines the confirmation area VE corresponding to the area where the object (for example, other workpiece W2) cannot enter with the workpiece W included in the detection data DD. n Shape data SD n Match and obtain the workpiece W n Location data PD 1_n , PD 2_n (Steps S13, S14).

[0116] Then, the position data acquisition unit 44 compares the position of the workpiece W with the workpiece W. n Shape data SD n The shape data SD of the object included in the detection data DD exists in the confirmation area VE determined by the matched workpiece model. m (For example, Fig.10 When the shape data SD2 of the workpiece W2 is obtained (the result of determination YES in step S23), the position data PD obtained by the position data acquisition unit 44 is 2_n Invalid (step S24).

[0117] According to this structure, it is possible to avoid using the robot 12 as Fig.10 The position data PD obtained by the mismatch result is shown in 2_n To execute the workpiece W n As a result, the operation accuracy of the robot 12 can be improved.

[0118] In the device 50, the position data canceling unit 46 calculates the position data cancellation unit 46 corresponding to the shape data SD nThe shape data SD of the object in the confirmation area VE determined by the matched workpiece model WM m The amount of data DA n (Step S22), and based on the calculated data volume DA n Determine whether the shape data SD exists in the confirmation area VE m (Step S23) According to this configuration, the amount of data DA that cannot exist in the confirmation area VE when appropriate matching is performed is calculated. n , can quantitatively verify the workpiece model WM and shape data SD n As a result, the presence or absence of the mismatch can be effectively detected.

[0119] In addition, in the device 50, the position data canceling unit 46 uses the data amount DA calculated in step S22 n and the data volume DA of the workpiece model WM w To perform a predetermined operation (specifically, the operation of the above-mentioned formula 1), it is determined whether the shape data SD of the object exists in the confirmation area VE. m (Step S23).

[0120] According to this configuration, a quantitative expression of the workpiece model WM and the shape data SD is obtained by a predetermined operation (the operation of Formula 1). n The mismatch parameter (e.g., the mismatch parameter ε n Or data volume DA n ), the mismatch can be verified by the parameter. Therefore, the presence or absence of the mismatch can be detected with higher accuracy.

[0121] Next, refer to Fig.12 ,right Figure 4 Another method of step S3 in the embodiment is described below. Fig.12 In step S3 shown in the figure, after step S21 or S26, in step S31, the processor 32 processes the workpiece W n Location data PD 2_n , determine whether the data volume DA is calculated in step S22 n .

[0122] As an example, the processor 32 performs the following operations according to the workpiece W. n Location data PD 2_n The associated detection result parameter PM determines whether it is necessary to calculate the data volume DA in step S22 n Here, the position data PD is obtained 2_n The detection result parameter PM at the time of β is correlated with the probability of the above mismatch. n , plane ratio γ n Or exposure rate δn When the consistency is high, the probability of mismatch may become lower. On the other hand, n , plane ratio γ n Or exposure rate δ n When it is significantly lower, the probability of mismatch may increase.

[0123] Therefore, in step S31, the processor 32 compares the position data PD 2_n The consistency β associated with the test result data DT is stored in n , plane ratio γ n Or exposure rate δ n If the data amount DA exceeds the predetermined threshold, it is determined that there is no need to execute the subsequent step S22 to calculate the data amount DA n (ie, No). On the other hand, the processor 32 determines the consistency β n , plane ratio γ n Or exposure rate δ n If the data amount DA is less than the predetermined threshold, it is determined that the subsequent step S22 needs to be executed to calculate the data amount DA n (ie, yes).

[0124] As another example, in step S31, the processor 32 obtains the workpiece W n Location data PD 2_n At least one of the position and posture of the workpiece model WM matched at the time of the match is determined, and it is determined whether the data amount DA needs to be calculated in step S22 n Here, according to the workpiece W shown in the detection data DD n Shape data SD n The positions or postures of the matched workpiece models WM may have different probabilities of causing the above-mentioned mismatch.

[0125] For example, in the detection data DD, the workpiece model WM is aligned with the shape data SD located close to the shape data of the container A (that is, the point group representing the visual features of the container A). n Alternatively, in the detection data DD, the workpiece model WM is aligned with the shape data SD located at a position farther away from the positive direction of the z-axis of the sensor coordinate system C3 (or the negative direction of the z-axis of the robot coordinate system C1) (i.e., a position closer to the bottom surface of the container A). n When matching, the probability of mismatching may increase.

[0126] Therefore, in this embodiment, the processor 32 generates the position data PD 2_n (That is, coordinate Q2 R (X2 R , Y2 R , Z2 R , W2R , P2 R , R2 R )) is within the specified coordinate range QR, it is determined that it is necessary to execute the subsequent step S22 to calculate the data amount DA n (That is, yes.) As an example, the coordinate range QR can be determined as a range that is a predetermined distance away from the coordinates of the shape data of the container A included in the detection data DD in the robot coordinate system C1.

[0127] As another example, the coordinate range QR may be relative to the acquired position data PD 2_n : Coordinate Q2 R (X2 R , Y2 R , Z2 R , W2 R , P2 R , R2 R ) in the z coordinate: Z2 R , was determined to be Z2 R ≤Z th The range of coordinates is defined by the threshold Z th For example, it can also be determined as follows: from the workpiece W included in the detection data DD n Shape data SD n The coordinates of a point located at the end of the positive z-axis direction of the robot coordinate system C1 in the point group, which is separated by a predetermined distance in the negative z-axis direction of the robot coordinate system C1.

[0128] In position data PD 2_n The coordinates of Q2 R (X2 R , Y2 R , Z2 R , W2 R , P2 R , R2 R ) is within the coordinate range QR, the processor 32 determines that it is necessary to execute the following step S22 to calculate the data amount DA n (ie, yes).

[0129] In addition, in matching Figure 7 When the workpiece model WM is in the first posture shown in FIG. 1 , the probability of mismatching may be reduced. On the other hand, when matching Figure 8 When the workpiece model WM is in the second posture shown in FIG. 1 , the probability of mismatch may increase. Therefore, in the present embodiment, the processor 32 acquires the position data PD 2_n The posture of the workpiece model WM to be matched is a predetermined reference posture (e.g., Figure 8 When the second posture is determined to be necessary to execute the subsequent step S22 to calculate the data amount DA n(ie, yes).

[0130] On the other hand, when the posture of the matched workpiece model WM is not the reference posture, the processor 32 determines that it is not necessary to execute the subsequent step S22 to calculate the data amount DA n Thus, in step S31, the processor 32 determines whether to calculate the data amount DA based on the detection result parameter PM representing the matching result or the posture of the matched workpiece model WM. n .

[0131] The processor 32 proceeds to step S22 when the determination is yes, and proceeds to step S32 when the determination is no. In addition, the processor 50 may determine in step S31 whether the position data PD 2_n The coordinates of Q2 R Whether it is in the coordinate range QR, and whether the posture of the matched workpiece model WM is the reference posture. Then, the processor 50 can R If the workpiece model WM is within the coordinate range QR and the posture is the reference posture, it is determined to be YES.

[0132] If the determination result is negative in step S31 or S23, in step S32, the processor 32 deletes the workpiece W from the detection data DD. n Shape data SD n Assuming that the number "n" is set to n=1, the position data PD for the workpiece W1 is 2_1 In step S31 or S23, the result is NO. In this case, the processor 32 obtains the Fig. 9 In the detection data DD shown, the point group of the shape data SD1 of the workpiece W1 is deleted. Fig.13 The detection data DD from which the shape data SD1 is deleted in this manner is schematically shown.

[0133] Then, the processor 32 increases the number "n" to "2" in step S26, and the position data PD of the next workpiece W2 is 2_2 Execute steps S31, S22 to S24. Assume that the position data PD of the workpiece W2 is 2_2 If the determination result in step S31 is YES, steps S22 and S23 are executed.

[0134] In this case, if Fig.13 As shown, the processor 32 executes step S22 based on the detection data DD from which the shape data SD1 is deleted, and calculates the position data PD of the workpiece W2. 2_2 Other workpieces W adjacent to the workpiece W2 within the confirmation area VE determined by the workpiece model WM matched at the time m (not shown) shape data SD mNext, in step S23, the processor 32 determines, based on the data volume DA2, whether to obtain the position data PD of the workpiece W2. 2_2 Whether the shape data SD of the workpiece Wm exists in the confirmation area VE of the workpiece model WM matched at the time m .

[0135] As mentioned above, in Fig.12 In the illustrated embodiment, the position data canceling unit 46 determines whether to calculate the data amount DA based on the detection result parameter PM or the posture of the matched workpiece model WM. n (Step S31) According to this configuration, for the position data PD estimated to have a low probability of causing the above-mentioned mismatch, 2_n , steps S22 to S24 can be omitted, thus the cycle time of step S3 can be reduced.

[0136] In addition, Fig.12 In the embodiment shown, the position data acquisition unit 44 matches the workpiece model WM with the shape data SD1 of the workpiece W1 (third workpiece) different from the workpiece W2 included in the detection data DD to acquire the position data PD of the workpiece W1. 1_1 , PD 2_1 (Step S1) The position data acquisition unit 44 acquires the position data PD of the workpiece W1. 1_1 , PD 2_1 Thereafter, the position data canceling unit 46 deletes the shape data SD1 of the workpiece W1 from the detection data DD (step S32 ).

[0137] Then, the position data canceling unit 46 determines whether there is an object (for example, another workpiece W1) included in the detection data DD from which the shape data SD1 of the workpiece W1 is deleted in the confirmation area VE determined for the workpiece model WM matching the shape data SD2 of the workpiece W2. m ) shape data SD m (Step S23).

[0138] According to this configuration, after deleting the shape data SD1 that does not need to be verified for mismatch (ie, steps S22 to S24), it is possible to obtain the position data PD of the next workpiece W2. 2_2 The mismatch verification between the workpiece model WM matched at the time and the shape data SD2 of the workpiece W2 can be performed. Therefore, the mismatch verification can be performed with higher accuracy.

[0139] In addition, you can also Fig.12 In the process shown in FIG. 1 , step S31 is omitted. When the processor 32 determines that step S23 is negative, step S32 is executed. Alternatively, Fig.12In the illustrated flow, step S32 is omitted, and when the processor 32 makes a negative determination in step S31 or S23 , the process proceeds to step S25 .

[0140] Next, refer to Fig.14 as well as Fig.15 , other functions of the robot system 10 are described. In this embodiment, the processor 32 executes Figure 4 Before the process of Fig.15 The process shown. Fig.15 The process shown in the figure starts when the processor 32 receives a confirmation area setting instruction from an operator, a host controller or a computer program PG. In step S41, the processor 32 obtains the workpiece model WM (CAD model WM C or point group model WM P ) and displayed on the display device 40.

[0141] In step S42, the processor 32 determines whether the input IP1 for designating the confirmation area VE for the workpiece model WM has been accepted. Specifically, the operator visually confirms the workpiece model WM (CAD model WM C or point group model WM P ), and operates the input device 42 to provide the processor 32 with an input IP1 for specifying the confirmation area VE for the workpiece model WM.

[0142] As described above, each workpiece W in bulk in the container B has an area (hole H in this embodiment) that other workpieces W (objects) cannot enter, and the confirmation area VE is set to the workpiece model WM as an area corresponding to the inaccessible area. The operator manually specifies the area of ​​the workpiece model WM corresponding to the inaccessible area among the areas of the workpiece model WM.

[0143] In the present embodiment, the operator operates the input device 42 to provide the processor 32 with an input IP1 for designating the hole model HM of the workpiece model WM as the confirmation area VE. At this time, the processor 32 may also change the posture of the workpiece model WM displayed on the display device 40 (i.e., the virtual line of sight direction VL for viewing the workpiece model WM) according to the input operation of the input device 42 by the operator.

[0144] When the input device 42 receives the input IP1, the processor 32 determines that it is yes and proceeds to step S43. On the other hand, when it determines that it is no, it proceeds to step S44. Thus, in this embodiment, the first input receiving unit 52 ( Fig.14 ) to perform its function.

[0145] In step S43, the processor 32 sets the confirmation area VE for the workpiece model WM according to the input IP1 received in the previous step S42. Assume that in the previous step S42, the input IP1 for specifying the hole model HM of the workpiece model WM is received. Figure 7 As shown, the processor 32 sets the entire area of ​​the hole model HM as the confirmation area VE based on the input IP1.

[0146] The processor 32 stores the data of the set confirmation area VE in the memory 34 as, for example, coordinate data of the workpiece coordinate system C4 in association with the model data of the workpiece model WM. Thus, in the present embodiment, the processor 32 functions as a confirmation area setting unit 54 ( ) that sets the confirmation area VE for the workpiece model WM based on the input IP1. Fig.14 ) to perform its function.

[0147] In addition, the processor 32 may also generate the workpiece model WM obtained in step S41, Figure 7 and Figure 8 The workpiece models WM of the plurality of postures shown in FIG. 1 are respectively set with the confirmation area VE for the workpiece models WM of the plurality of postures generated according to the input IP1. Figure 7 and Figure 8 As shown in FIG. 1 , the confirmation area VE is set for each workpiece model WM in each posture.

[0148] The processor 32 stores the data of the confirmation area VE set for each posture of the workpiece model WM in the memory 34 in association with the workpiece model WM of each posture. Figure 6 In step S2 of the present invention, the processor 32 functions as the position data acquisition unit 44. In step S11, the processor 32 refers to the data of the confirmation area VE set according to the posture of the workpiece model WM to generate a plurality of workpiece models WM in each of the postures in which the confirmation area VE is set. Then, in steps S13 and S14, the processor 32 compares the workpiece models WM in the plurality of postures generated with the workpiece WM appearing in the detection data DD. n Shape data SD n match.

[0149] Refer again Fig.15 In step S44, the processor 32 determines whether a threshold value ε used in the above step S23 has been received for the confirmation area VE set for the workpiece model WM at that time. th (or threshold DA th Specifically, the operator operates the input device 42 to set the confirmation area VE set for the workpiece model WM at this time point to be used to specify the mismatch parameter ε in the above-mentioned step S23. n (or data volume DAn ) is compared with the threshold ε th (or threshold DA th )'s input IP2 is provided to processor 32.

[0150] The processor 32 functions as the first input accepting unit 52, and accepts the input IP2 from the operator through the input device 42. The processor 32 determines YES when the input IP2 is accepted and proceeds to step S45, while it determines NO when the processor 32 proceeds to step S46.

[0151] In step S45, the processor 32 sets a threshold value ε for the confirmation area VE set for the workpiece model WM based on the input IP2 accepted in the previous step S44. th (or DA th ). The processor 32 sets the threshold ε th (or DA th ) is associated with the model data of the workpiece model WM and the data of the confirmation area VE and stored in the memory 34.

[0152] In step S46 , the processor 32 determines whether the input IP3 for modifying or deleting the confirmation area VE set to the workpiece model WM at that time is received. Specifically, the processor 32 displays the workpiece model WM and the confirmation area VE set to the workpiece model WM at that time on the display device 40 .

[0153] The operator visually confirms the workpiece model WM and the confirmation area VE displayed on the display device 40, and operates the input device 42 to provide the input IP3 for correcting the confirmation area VE to the processor 32. At this time, as the input IP3 for correcting the confirmation area VE, the operator can operate the input device 42 to input the coordinate value of the confirmation area VE in the workpiece coordinate system C4, or can also move, expand or reduce the confirmation area VE by dragging and dropping the confirmation area VE in the workpiece coordinate system C4. Alternatively, the operator visually confirms the workpiece model WM and the confirmation area VE displayed on the display device 40, and operates the input device 42 to provide the input IP3 for deleting the set confirmation area VE to the processor 32.

[0154] When the processor 32 receives the input IP3 through the input device 42, it determines that it is yes and proceeds to step S47. On the other hand, when it determines that it is no, it proceeds to step S48. Thus, in this embodiment, the processor 32 serves as the second input receiving unit 56 ( ) that receives the input IP3 for modifying or deleting the confirmation area VE. Fig.14 ) to perform its function.

[0155] In step S47, the processor 32 corrects or deletes the confirmation area VE set for the workpiece model WM at that time point based on the input IP3 received in the previous step S46, thereby updating the data of the confirmation area VE (for example, the coordinate data of the workpiece coordinate system C4) stored in the memory 34. Then, the processor 32 returns to step S42.

[0156] In step S48, the processor 32 determines whether an input IP4 for approving the confirmation area VE set for the workpiece model WM at that time point has been received. Specifically, the processor 32 displays the workpiece model WM and the confirmation area VE set for the workpiece model WM at that time point on the display device 40 together with an approval button image for approving the confirmation area VE.

[0157] The operator visually checks the workpiece model WM and the confirmation area VE displayed on the display device 40, and operates the input device 42 to provide the input IP4 of the operation approval button image to the processor 32. The processor 32 functions as the second input receiving unit 56 ( Fig.14 ) performs the function and accepts input IP4 through input device 42.

[0158] When the processor 32 receives the input IP4, it determines that it is yes and ends the process. Fig.15 In the flow shown in FIG. 1 , on the other hand, if the determination is negative, the process returns to step S42. In this way, the processor 32 repeatedly executes steps S42 to S47, and sequentially executes the setting, correction or deletion of the confirmation area VE and the threshold ε. th (or DA th ) is set until it is determined to be yes in step S48.

[0159] according to Fig.15 The operator can set the confirmation area VE and threshold ε arbitrarily for the workpiece model WM. th (or DA th ).exist Fig.15 After the process, the processor 32 executes according to the above-mentioned job start instruction Figure 4 Then, the processor 32 performs the following steps according to the Fig.15 The process sets the workpiece model WM of the confirmation area VE and executes the above-mentioned steps S2 and S3.

[0160] As described above, in this embodiment, the processor 32 functions as the position data acquisition unit 44, the position data cancellation unit 46, the first input receiving unit 52, the confirmation area setting unit 54, and the second input receiving unit 56. Fig.15 In the process of setting the confirmation area VE for the workpiece model WM, Figure 4 In the process of obtaining the workpiece W according to the detection data DD of the shape detection sensor 14n Location data PD 1_n , PD 2_n .

[0161] Therefore, the position data acquisition unit 44, the position data cancellation unit 46, the first input receiving unit 52, the confirmation area setting unit 54, and the second input receiving unit 56 constitute a system for acquiring the workpiece W based on the detection data DD of the shape detection sensor 14. n Location data PD 1_n , PD 2_n Device 60( Fig.14 ).

[0162] In the device 60 , the first input accepting unit 52 accepts the input IP1 for designating the confirmation area VE for the workpiece model WM (step S42 ), and the confirmation area setting unit 54 sets the confirmation area VE for the workpiece model WM based on the input IP1 accepted by the first input accepting unit 52 (step S43 ).

[0163] According to this configuration, the operator can arbitrarily set a confirmation area VE corresponding to the inaccessible area for the workpiece model WM after examining the area that other objects (e.g., other workpieces W) cannot enter in the workpiece W. As a result, the confirmation area VE focused on in the mismatch verification in the above-mentioned step S3 can be appropriately set.

[0164] In addition, in the apparatus 60, when executing the above-mentioned step S2, the position data acquisition unit 44 generates the workpiece models WM of a plurality of postures for matching (step S11), and the confirmation area setting unit 54 sets the confirmation area VE for the workpiece models WM of each posture (step S43). According to this structure, when the workpiece models WM of a plurality of postures are generated and matched with the shape data SD n During matching, the confirmation area VE can be appropriately set in the workpiece model WM in each posture.

[0165] In addition, in the device 60, the second input receiving unit 56 receives an input IP3 for correcting or deleting the confirmation area VE set by the confirmation area setting unit 54, or an input IP4 for accepting the confirmation area VE (step S46 or S48). According to this structure, the operator can appropriately correct, delete or accept the set confirmation area VE, thereby easily setting a desired confirmation area VE.

[0166] In step S42, the processor 32 may also receive a request from the operator to designate a plurality of confirmation areas VE. j (j=1, 2, 3, ...). For example, Fig.16 As shown, the operator may also operate the input device 42 to designate three confirmation areas VE1, VE2, and VE3 in the hole model HM.

[0167] exist Fig.16 In the example shown, a confirmation area VE1 is specified in one opening area of ​​the hole model HM, and a confirmation area VE2 is specified in another opening area of ​​the hole model HM. Furthermore, a confirmation area VE3 is specified in the central area of ​​the hole model HM between the confirmation area VE1 and the confirmation area VE2. The processor 32 may receive an input IP1 for specifying such confirmation areas VE1, VE2, and VE3 in step S42, and specify the confirmation areas VE1, VE2, and VE3 in the hole model HM in step S43.

[0168] In this case, the operator can specify different threshold values ​​ε for the confirmation areas VE1, VE2, and VE3 in step S44. th_m (or DA th_m ). For example, the operator operates the input device 42 to set a threshold value ε for the confirmation area VE1. th_1 , set a threshold ε for the confirmation area VE2 th_2 , set the threshold ε for the confirmation area VE3 th_3 In this case, the threshold ε th_3 can be set below the threshold ε th_1 and ε th_2 The value of .

[0169] In this case, in the above-mentioned step S22, the processor 32 calculates the shape data SD in the confirmation area VE1. m The amount of data DA n_1 , confirm the shape data SD in area VE2 m The amount of data DA n_2 , and confirm the shape data SD in the area VE3 m The amount of data DA n_3 .

[0170] Next, in step S23, the processor 32 calculates the mismatch parameter ε of the confirmation area VE1 by performing the calculation of the above equation 1. n_1 (=DA n_1 / DA w ), confirm the mismatch parameter ε of region VE2 n_2 (=DA n_2 / DA w ), and confirm the mismatch parameter ε of region VE3 n_3 (=DA n_3 / DA w ). In addition, the processor 32 may also convert the obtained mismatch parameter ε into n_1 , ε n_2 and ε n_3 The threshold value ε set in step S45 th_1 , εth_2 and ε th_3 Compare them separately, in ε n_1 ≥ε th_1 , ε n_2 ≥ε th_2 or ε n_3 ≥ε th_3 , it is judged as yes.

[0171] Here, when setting Fig.16 The workpiece models WM and shape data SD of the plurality of confirmation areas VE1, VE2, and VE3 are shown. n When matching, it is estimated that other shape data SD is likely to exist in the confirmation areas VE1 and VE2 close to the opening of the hole model HM. m On the other hand, it is estimated that the shape data SD is unlikely to exist in the confirmation area VE3 set as the central area of ​​the hole model HM. m The point group.

[0172] Therefore, by setting the threshold ε as above th_3 Set to below the threshold ε th_1 and ε th_2 The workpiece model WM and shape data SD can be verified in detail by confirming the areas VE1, VE2 and VE3. n In addition, the threshold ε th_1 and ε th_2 Can be set to the same value as each other.

[0173] Furthermore, in the above-mentioned embodiment, the case where the region in which other objects (e.g., other workpieces W) cannot enter in the workpiece W is the hole H is described. However, the present invention is not limited thereto, and the solid portion of the workpiece W (i.e., the solid portion of the shaft portion S or the flange portion F) may also become the region in which other objects (e.g., other workpieces W) cannot enter. Therefore, in the above-mentioned step S42, as the region corresponding to the inaccessible region, the operator may set the solid portion of the shaft portion model SM or the flange portion model FM as the confirmation region VE in the workpiece model WM.

[0174] Alternatively, the operator may set the hole model HM of the workpiece model WM as the confirmation area VE1 and the solid part of the workpiece model WM as the confirmation area VE2 in step S42. In this case, the operator may specify different threshold values ​​ε for the confirmation area VE1 set for the hole model HM and the confirmation area VE2 set for the solid part of the workpiece model WM in step S44. th_1 and ε th_2 (or threshold DA th_1 and DA th_2 ).

[0175] In addition, you can also Fig.15 In the flow shown in FIG. 4 , step S42 is omitted. In this case, in step S43, the processor 32 generates the workpiece model WM obtained in step S41, respectively. Figure 7 and Figure 8 The workpiece models WM in the plurality of postures shown are analyzed, and thereby the confirmation area VE is automatically set for each of the workpiece models WM in each posture. In this case, the first input accepting unit 52 can be omitted from the device 60.

[0176] The following describes a method for automatically setting the confirmation area VE. Fig.15 In step S42, in step S43, the confirmation area setting unit 54 is functioned to automatically set the confirmation area VE for the workpiece model WM based on the workpiece model WM.

[0177] As an example, the processor 50 sets an envelope shape model covering the workpiece model WM from the outside for the workpiece model WM. Furthermore, the processor 50 may automatically set an area existing inside the workpiece model WM at a predetermined distance from the boundary between the set envelope shape model and the workpiece model WM as the confirmation area VE.

[0178] As another example, the processor 50 analyzes the workpiece model WM in step S43 to extract the solid portion of the workpiece model WM (the solid portion of the shaft portion S or the flange portion F). Furthermore, the processor 50 may automatically set the extracted solid portion as the confirmation area VE.

[0179] As another example, in step S43, the processor 50 arranges a virtual surface model (a model of a virtual surface of a plane or a curved surface) on the workpiece model WM in the virtual three-dimensional space defined by the workpiece coordinate system C4. In addition, the processor 50 extracts an area (for example, a hole model HM) that is enclosed by the virtual surface model and changes into a solid area. The processor 50 can automatically set the extracted area as the confirmation area VE. As described above, the processor 50 functions as the confirmation area setting unit 54, and automatically sets the confirmation area VE for the workpiece model WM according to the workpiece model WM.

[0180] In addition, you can also Fig.15 In the process shown in FIG. 4 , step S44 is omitted. In this case, the processor 32 may set the threshold ε to th (or threshold DA th ) is automatically set to, for example, a predetermined constant. Alternatively, Fig.15 In the illustrated flow, steps S46 to S48 are omitted. In this case, the second input accepting unit 56 can be omitted from the device 60 .

[0181] Next, refer to Fig.17 as well as Fig.18 , another function of the robot system 10 is described. In this embodiment, the processor 32 executes Fig.18 Instead of the process shown Fig.15 In addition, Fig.18 In the process shown, Fig.15 The same process is marked with the same step number and repeated description is omitted.

[0182] exist Fig.18 In the flow shown, after step S41, in step S51, the processor 32 executes a simulation SL for making a plurality of workpiece models WM abut against each other. Specifically, the processor 32 first converts the workpiece model WM obtained in step S41 into a simulation SL. Fig.19 As shown in FIG. 1 , the solid part of the workpiece model WM (specifically, the shaft model SM and the flange model FM) is quantized into voxels VX, which are cubes of unit volume. S , the hole model HM of the workpiece model WM is quantized into voxels VX H .

[0183] Then, if Fig. 20 As shown, the processor 32 repeatedly executes the simulation SL for making the quantized workpiece model WM2 contact the quantized workpiece model WM1 in various postures and from various directions. That is, in the present embodiment, the processor 32 serves as a simulation execution unit 58 ( Fig.17 ) to perform its function.

[0184] In step S52, the processor 32 functions as the confirmation region setting unit 54, and sets the confirmation region VE for the workpiece model WM2 based on the simulation result of step S51. Specifically, when the processor 32 performs one simulation SL in step S51, at least one voxel VX in the solid part of the workpiece model WM2 is set. S Enter a voxel VX of the hole model HM of the workpiece model WM1 H When the voxel VX H The score SC increases by "1".

[0185] The score SC indicates that, in the simulation SL of step S51, the voxel VX of the workpiece model WM2 S Enter a voxel VX of the workpiece model WM1 H Therefore, the voxel VX H The initial value of the score SC is SC=0. In a simulation of step S51, the voxel VX of the workpiece model WM2 SEnter a voxel VX of the workpiece model WM1 H When the voxel VX H The score SC increases by "1", becoming SC=1.

[0186] Each time the processor 32 executes the simulation SL in step S51, it calculates the voxel VX H Then, when all simulations SL of step S51 are completed, the processor 32 converts each voxel VX of the workpiece model WM1 into H Substitute the score SC into the following formula 2, for each voxel VX H Calculate the score determination value η.

[0187] η=SC / i…(Formula 2)

[0188] Here, i in Formula 2 represents the number of times SL is simulated (in other words, the number of workpiece models WM2 used to simulate various postures of SC). In addition, the processor 32 functions as a confirmation area setting unit 54 to determine the value of each voxel VX obtained by the calculation of Formula 2. H Is the score determination value η of the predetermined threshold η th Below, η≤η will be satisfied th Voxel VX H Set to confirm area VE. As a result, Fig.19 The voxel VX of the hole model HM is shown H At least one (for example, all) of the areas are set as confirmation areas VE.

[0189] In addition, the above-mentioned formula 2 may be modified to a formula such as η=SC / i×100. In addition, the processor 32 may determine whether the above-mentioned score SC is a predetermined threshold value SC. th Below, SC≤SC th Voxel VX H Thus, the processor 32 functions as the confirmation area setting unit 54 in step S52, and sets the confirmation area VE for the workpiece model WM based on the simulation result of step S51 (specifically, the score SC and the score determination value η).

[0190] After step S52, the processor 32 executes the following process: execute the above steps S42 to S48, specify a further confirmation area VE based on the confirmation area VE set according to the simulation result (step S42), or set a threshold ε for the confirmation area VE. th or DA th (Step S45), or the confirmation area VE is corrected or deleted (Step S47), or approval is given to the confirmation area VE (Step S48).

[0191] As described above, in this embodiment, the processor 32 functions as the position data acquisition unit 44, the position data cancellation unit 46, the first input receiving unit 52, the confirmation area setting unit 54, the second input receiving unit 56, and the simulation execution unit 58. Fig.18 After setting the confirmation area VE for the workpiece model WM, execute Figure 4 The process of obtaining the workpiece W according to the detection data DD of the shape detection sensor 14 n Location data PD 1_n , PD 2_n .

[0192] Therefore, the position data acquisition unit 44, the position data cancellation unit 46, the first input receiving unit 52, the confirmation area setting unit 54, the second input receiving unit 56, and the simulation execution unit 58 constitute a unit for acquiring the workpiece W based on the detection data DD of the shape detection sensor 14. n Location data PD 1_n , PD 2_n Device 70( Fig.16 ).

[0193] In the device 70, the simulation execution unit 58 executes the simulation SL (step S51) of bringing the workpiece model WM2 (object model) into contact with the workpiece model WM1, and the confirmation area setting unit 54 sets the confirmation area VE for the workpiece model WM based on the simulation result (score SC, score determination value η) executed by the simulation execution unit 58. According to this configuration, the confirmation area VE can be automatically set for the workpiece model WM with high accuracy.

[0194] In the present embodiment, the case where the simulation SL is executed in step S51 to make the two workpiece models WM1 and WM2 abut against each other is described. However, the present invention is not limited to this. The processor 32 may also execute in step S51 to make three or more workpiece models WM k (k=1, 2, 3, ...) Pseudo SLs abutting against each other.

[0195] Alternatively, the processor 32 may, in step S51, Figure 1 The container model BM shown in the figure is a container B in which a plurality of workpiece models WM are simulated and bulked. k , execute to make bulk multiple workpiece model WM k Simulation SL that repeatedly changes the configuration and posture.

[0196] In addition, the processor 32 may also execute the computer program PG pre-stored in the memory 34. Figure 4 , Fig.15 or Fig.18In addition, the functions of the device 50, 60 or 70 (i.e., the position data acquisition unit 44, the position data cancellation unit 46, the first input receiving unit 52, the confirmation area setting unit 54, the second input receiving unit 56 and the simulation execution unit 58) executed by the processor 32 may also be functional modules implemented by the computer program PG. The computer program PG may also be provided in the form of a computer-readable non-temporary recording medium such as a semiconductor memory, a magnetic recording medium or an optical recording medium.

[0197] In addition, in the above-mentioned embodiment, a situation is described in which the functions of device 50, 60 or 70 (i.e., position data acquisition unit 44, position data cancellation unit 46, first input acceptance unit 52, confirmation area setting unit 54, second input acceptance unit 56 and simulation execution unit 58) are installed in the control device 16.

[0198] However, the function of the device 50, 60 or 70 may be installed in, for example, a teaching device (a teaching pendant or a tablet-type portable terminal, etc.) or any other computer such as a PC that teaches the robot 12 the operation for the operation of step S5. In this case, the processor of the teaching device or the computer such as the PC functions as the device 50, 60 or 70.

[0199] In addition, in the above embodiment, Figure 4 In the process of FIG. 1 , the processor 32 performs step S3 after step S2 (more specifically, step S15). However, the processor 32 may also perform step S3 after step S2 (more specifically, step S15). Figure 6 Step S3 is performed after step S13 or S14 in .

[0200] For example, when executing step S3 after step S13, the processor 32 performs the following operations in step S22 ( Fig.11 or Fig.12 ), calculate the workpiece W n Initial position data PD 1_n The shape data SD within the confirmation area VE determined by the workpiece model WM matched at the time m The amount of data DA n Then, when the processor 32 determines YES in step S23, in step S24, the workpiece W acquired in step S13 may be n Initial position data PD 1_n Invalidate (e.g., delete).

[0201] In addition, the coarse search RS of step S13 and the fine search PR of step S14 are examples of a method for obtaining the position data PD of the workpiece W. Any correction may be applied to the coarse search RS or the fine search PR, and the position data PD of the workpiece W may be obtained by any other method without performing the coarse search RS and the fine search PR.

[0202] In addition, you can Figure 4 , Figure 6 , Fig.11 , Fig.12 , Fig.15 or Fig.18 Various changes can be made to the process shown. For example, Figure 6 In the process shown in FIG. 1 , step S12 or S15 is omitted. In addition, step S3 ( Fig.11 , Fig.12 ) Step S22 is omitted, and the processor 32 in step S23 determines the matching workpiece model WM according to the confirmed area VE and the shape data SD m The coordinates of the sensor coordinate system C3 of the point group are used to determine whether the shape data SD exists in the confirmation area VE. m .

[0203] Furthermore, in the above-described embodiment, a case is described in which an object adjacent to a workpiece W (for example, workpiece W1) is a second workpiece W (workpiece W2) different from the workpiece W. However, not limited thereto, an object adjacent to a workpiece W may be, for example, a fixture disposed in a container B, or a convex portion protruding from the inner wall of the container B. In this case, for example, when an object such as a fixture or a convex portion cannot enter the hole H of the workpiece W, the hole model HM of the workpiece model WM corresponding to the hole H may be determined as the above-described confirmation area VE. In addition, Figure 3 The workpiece W shown is an example and may have any other shape.

[0204] In addition, in the above embodiment, the shape detection sensor 14 is fixed to the end effector 28 (or the wrist flange 26b) and is moved by the robot 12. However, it is not limited to this, and the shape detection sensor 14 may be fixed to a known position of the robot coordinate system C1 using, for example, a support structure. In addition, the shape detection sensor 14 is not limited to a three-dimensional visual sensor, and may also be a laser scanner capable of detecting the three-dimensional shape of an object.

[0205] Alternatively, the shape detection sensor 14 may also include a two-dimensional camera and a distance sensor capable of measuring the distance d to the object. Figure 5The three-dimensional point group image data shown may also include two-dimensional image data captured by a two-dimensional camera and a data set of distance d measured by a distance measuring sensor, or may be any other type of image data (eg, distance image data).

[0206] In addition, the robot 12 is not limited to a vertical articulated robot, but may be any type of robot such as a horizontal articulated robot, a parallel link robot, etc. The present disclosure has been described above by using the embodiments, but the above embodiments do not limit the invention involved in the claims.

[0207] Explanation of symbols

[0208] 10 Robotic System

[0209] 12 Robot

[0210] 14 Shape Detection Sensor

[0211] 16 Control Devices

[0212] 32 processors

[0213] 44 Position data acquisition unit

[0214] 46 Position data cancellation unit

[0215] 50, 60, 70 devices

[0216] 52 First input receiving unit

[0217] 54 Confirm area setting section

[0218] 56 Second input receiving unit

[0219] 58 simulation execution unit.

Claims

1. A device for obtaining position data of a workpiece based on detection data of a shape detection sensor for detecting the shape of an object and a workpiece, wherein: The workpiece is adjacent to the object and has an area that the object cannot enter, characterized in that: The device has: a position data acquisition unit that acquires the position data by matching a workpiece model with shape data of the workpiece included in the detection data, wherein the workpiece model is obtained by modeling the workpiece and the workpiece model defines a confirmation area corresponding to the inaccessible area; and A position data cancelling unit invalidates the position data acquired by the position data acquiring unit when shape data of the object included in the detection data exists in the confirmation area determined by the workpiece model matched with the shape data of the workpiece by the position data acquiring unit.

2. The device according to claim 1, characterized in that The device also has: a first input accepting unit that accepts an input for designating the confirmation area in the workpiece model; and A confirmation area setting unit sets the confirmation area for the workpiece model based on the input accepted by the first input accepting unit.

3. The device according to claim 1, characterized in that The device further includes a confirmation area setting unit that automatically sets the confirmation area for the workpiece model based on the workpiece model.

4. The device according to claim 3, characterized in that The device further comprises: a simulation execution unit that executes a simulation of bringing an object model into contact with the workpiece model, wherein the object model is obtained by modeling the object. The confirmation region setting unit sets the confirmation region in the workpiece model based on a simulation result executed by the simulation execution unit.

5. The device according to any one of claims 2 to 4, characterized in that: The position data acquisition unit generates the workpiece models in a plurality of postures in order to perform the matching. The confirmation region setting unit sets the confirmation region for the workpiece model in each of the postures.

6. The device according to any one of claims 2 to 5, characterized in that: The device further includes a second input accepting unit that accepts an input for correcting, deleting, or approving the confirmation area set by the confirmation area setting unit.

7. The device according to any one of claims 1 to 6, characterized in that: The position data canceling unit calculates the data volume of the shape data of the object in the confirmation area specified by the workpiece model subjected to the matching, The position data canceling unit determines whether or not the shape data of the object exists in the confirmation area based on the calculated data amount.

8. The device according to claim 7, characterized in that The position data canceling unit determines whether the shape data of the object exists in the confirmation area by performing a predetermined operation using the calculated data amount and the data amount of the workpiece model.

9. The device according to claim 7 or 8, characterized in that The position data canceling unit determines whether to calculate the data amount based on a detection result parameter indicating a result of the matching or a posture or position of a workpiece model subjected to the matching.

10. The device according to any one of claims 1 to 9, characterized in that: The object is a second workpiece different from the workpiece.

11. The device according to any one of claims 1 to 10, characterized in that: The position data acquisition unit acquires the position data of a third workpiece different from the workpiece by matching the workpiece model with shape data of a third workpiece included in the detection data. After the position data acquisition unit acquires the position data of the third workpiece, the position data cancellation unit deletes the shape data of the third workpiece from the detection data. The position data canceling unit determines whether or not the shape data of the object included in the detection data from which the shape data of the third workpiece is deleted exists in the confirmation area specified by the matched workpiece model.

12. A robot control device, characterized in that: have: The device according to any one of claims 1 to 11.

13. A robot system, characterized in that: have: A robot, which performs a specified operation on a workpiece; a shape detection sensor that detects the shape of the workpiece; and The control device according to claim 12 controls the robot to perform the specified task based on the detection data of the shape detection sensor.

14. A method for obtaining position data of a workpiece based on detection data of a shape detection sensor for detecting the shape of an object and a workpiece, wherein: The workpiece is adjacent to the object and has an area that the object cannot enter, characterized in that: The processor performs the following actions: Acquiring the position data by matching a workpiece model with shape data of the workpiece included in the inspection data, wherein the workpiece model is obtained by modeling the workpiece and the workpiece model defines a confirmation area corresponding to the inaccessible area; When the shape data of the object included in the detection data exists in the confirmation area specified by the workpiece model matched with the shape data of the workpiece, the acquired position data is invalidated.

15. A computer program, characterized in that The processor is caused to execute the method of claim 14.

Citation Information

Patent Citations

  • Workpiece position posture calculator and handling system

    JP2017102529A

  • Apparatus and method for verifying control program through simulation

    CN101097440A

  • Position posture identification device, position posture identification method and position posture identification program

    CN112276935A

  • Workpiece pick-up apparatus

    US20130211593A1

  • Control apparatus, control system, robot system, control method, and computer program

    US20250214249A1