Control device, working device, control method, and computer program

JP7697248B2Active Publication Date: 2025-06-24BROTHER KOGYO KK
View PDF 5 Cites 0 Cited by

Patent Information

Application Number
JP2021061972
Authority / Receiving Office
JP · JP
Patent Type
Patents
Current Assignee / Owner
Filing Date
2021-03-31
Publication Date
2025-06-24
Estimated Expiration
2041-03-31

AI Technical Summary

Benefits of technology

【0022】 本開示の一実施形態に係る制御装置、工作装置、制御方法及びコンピュータプログラムにあっては、各工具の工具領域を演算し、アームの動作中、アーム領域を逐次演算する。アーム領域と工具領域とが干渉する場合、搬送装置を停止し、搬送装置が工具に接触することを抑制することができる。

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure 0007697248000001
    Figure 0007697248000001
  • Figure 0007697248000002
    Figure 0007697248000002
  • Figure 0007697248000003
    Figure 0007697248000003
Patent Text Reader

Abstract

To provide a control device, a machine-tool device, a control method and a computer program capable of suppressing a contact of a carrying device with a tool.SOLUTION: A control device controls operation of a machine tool that includes a tool magazine, and operation of a carrying device that carries in and out a workpiece to the machine tool and has an arm. The control device includes: a tool region calculating unit that calculates a tool region representing a region of a tool attached to the tool magazine; an arm region calculating unit that calculates an arm region representing the region of the arm; an interference determining unit that determines whether or not the tool region calculated by the tool region calculating unit and the arm region calculated by the arm region calculating unit interfere with each other; and a stop unit that stops the carrying device when the interference determining unit determines that the arm region interferes with the tool region.SELECTED DRAWING: Figure 19
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present technology relates to a control device, a working device, a control method, and a computer program for controlling the driving of a machine tool for processing a workpiece and a conveying device for conveying the workpiece.

Background Art

[0002] There is a working device having a machine tool for processing a workpiece and a conveying device for conveying the workpiece. An external device can be connected to the working device. The operator operates the external device to teach operations to the machine tool and the conveying device (see, for example, Patent Document 1).

Prior Art Documents

Patent Documents

[0003]

Patent Document 1

Summary of the Invention

Problems to be Solved by the Invention

[0004] The conveying device includes an arm. The machine tool includes a tool magazine for storing a plurality of tools. When the arm is placed inside the machine tool and the operation of the arm is taught to the working device, there is a risk that the arm may contact the tool.

[0005] The present disclosure has been made in view of such circumstances, and an object thereof is to provide a control device, a working device, a control method, and a computer program capable of suppressing contact between the conveying device and the tool.

Means for Solving the Problems

[0006] A control device according to an embodiment of the present disclosure is a control device that has a machine tool having a tool magazine, carries work into and out of the machine tool, and controls the operation of a transfer device having an arm. The control device includes a tool area calculation unit that calculates a tool area indicating an area of a tool mounted on the tool magazine, an arm area calculation unit that calculates an arm area indicating an area of the arm, an interference determination unit that determines whether or not the tool area calculated by the tool area calculation unit and the arm area calculated by the arm area calculation unit interfere with each other, and a stop unit that stops the transfer device when the interference determination unit determines that the arm area interferes with the tool area.

[0007] In one embodiment of the present disclosure, the tool area of each tool is calculated, and the arm area is sequentially calculated during the operation of the arm. When the arm area and the tool area interfere with each other, the transfer device is stopped.

[0008] The control device according to an embodiment of the present disclosure includes a first determination unit that determines whether or not an end point on the tool area side in the arm area is at a first interference possible position where it can interfere with the boundary of the tool area, and a second determination unit that determines whether or not an end point on the arm area side in the tool area is at a second interference possible position where it can interfere with the boundary of the arm area. When the first determination unit determines that the end point on the tool area side in the arm area is not at the first interference possible position and the second determination unit determines that the end point on the arm area side in the tool area is not at the second interference possible position, it is determined that the arm area does not interfere with the tool area.

[0009] In one embodiment of the present disclosure, when it is determined that the end point on the tool area side in the arm area is not at the first interference possible position and the end point on the arm area side in the tool area is not at the second interference possible position, it is determined that the arm area does not interfere with the tool area.

[0010] The control device according to an embodiment of the present disclosure includes: a third determination unit that determines whether or not the arm region and the tool region overlap when the interference determination unit determines that the end point on the tool region side in the arm region is at the first interference possible position by the first determination unit, or when the interference determination unit determines that the end point on the arm region side in the tool region is at the second interference possible position by the second determination unit; a fourth determination unit that determines whether or not the arm region and the tool region interfere based on a first condition corresponding to the first interference possible position or a second condition corresponding to the second interference possible position when the third determination unit determines that the arm region and the tool region do not overlap; and a fifth determination unit that determines whether or not the arm region and the tool region interfere based on a third condition different from the first condition and the second condition when the third determination unit determines that the arm region and the tool region overlap.

[0011] In an embodiment of the present disclosure, when it is determined that the end point on the tool region side in the arm region is at the first interference possible position, or when it is determined that the end point on the arm region side in the tool region is at the second interference possible position, it is further determined whether or not the arm region and the tool region overlap. When the arm region and the tool region do not overlap, it is determined whether or not the arm region and the tool region interfere based on the first condition or the second condition. When the arm region and the tool region overlap, it is determined whether or not the arm region and the tool region interfere based on the third condition.

[0012] The control device according to an embodiment of the present disclosure includes: a tool region determination unit that determines whether or not the tool region is arranged at a non-interference position that cannot be reached by the arm region when the arm is deployed; and a first determination unit that excludes the tool region from the target of interference determination when the tool region determination unit determines that the tool region is arranged at the non-interference position, and determines that the tool region is the target of interference determination when the tool region determination unit determines that the tool region is not arranged at the non-interference position.

[0013] In one embodiment of the present disclosure, when the tool region is arranged at a non-interference position that cannot be reached by the arm region when the arm is deployed, the tool region is excluded from the target of interference determination. Only the tool region not arranged at the non-interference position is targeted for interference determination.

[0014] A control device according to an embodiment of the present disclosure includes a non-interference determination unit that determines whether or not the posture of the arm region is a non-interference posture in which the arm region cannot reach the tool region when the arm is deployed, and when the non-interference determination unit determines that the posture of the arm region is the non-interference posture, the arm region is excluded from the target of interference determination, and when the non-interference determination unit determines that the posture of the arm region is not the non-interference posture, a second determination unit that determines the arm region as the target of interference determination.

[0015] In one embodiment of the present disclosure, when the posture of the arm region is a non-interference posture in which the arm region cannot reach the tool region when the arm is deployed, the arm region is excluded from the target of interference determination. The arm region is targeted for interference determination only when the posture of the arm region is not the non-interference posture.

[0016] A working device according to an embodiment of the present disclosure includes the above-described control device.

[0017] In one embodiment of the present disclosure, the tool region of each tool is calculated, and the arm region is sequentially calculated during the operation of the arm. When the arm region and the tool region interfere with each other, the transfer device is stopped.

[0018] A control method according to an embodiment of the present disclosure is a control method for controlling the operation of a transfer device having an arm for loading and unloading a workpiece to and from a machine tool having a tool magazine, calculating a tool region indicating the region of a tool mounted on the tool magazine, sequentially calculating an arm region indicating the region of the arm, determining whether or not the calculated tool region and the calculated arm region interfere with each other when the arm enters the machine tool, and stopping the transfer device when it is determined that the arm region interferes with the tool region.

[0019] In one embodiment of the present disclosure, the tool area of each tool is calculated, and during the operation of the arm, the arm area is sequentially calculated. When the arm area and the tool area interfere with each other, the transfer device is stopped.

[0020] A computer program according to an embodiment of the present disclosure is a computer program executable by a control device that controls the operation of a transfer device having an arm and loading and unloading a workpiece to and from a machine tool having a tool magazine, wherein the control device calculates a tool area indicating the area of a tool mounted on the tool magazine, sequentially calculates an arm area indicating the area of the arm, determines whether the calculated tool area and the calculated arm area interfere with each other when the arm enters the machine tool, and executes a process of stopping the transfer device when it is determined that the arm area interferes with the tool area.

[0021] In one embodiment of the present disclosure, the tool area of each tool is calculated, and during the operation of the arm, the arm area is sequentially calculated. When the arm area and the tool area interfere with each other, the transfer device is stopped.

Advantages of the Invention

[0022] In a control device, a working device, a control method, and a computer program according to an embodiment of the present disclosure, the tool area of each tool is calculated, and during the operation of the arm, the arm area is sequentially calculated. When the arm area and the tool area interfere with each other, the transfer device is stopped, and it is possible to prevent the transfer device from contacting the tool.

Brief Description of the Drawings

[0023]

Figure 1

Figure 2

Figure 3

Figure 4

Figure 5

Figure 6

Figure 7

Figure 8

Figure 9

Figure 10

Figure 11

Figure 12

Figure 13

Figure 14

Figure 15

Figure 16

Figure 17

Figure 18

Figure 19

Figure 20

Figure 21

Figure 22

Figure 23

Figure 24

Figure 25

Figure 26

Figure 27

Figure 28

Figure 29

Figure 30

Figure 31

Figure 32

Embodiments for Carrying Out the Invention

[0024] Hereinafter, the present invention will be described based on the drawings showing the working device according to the embodiments. FIG. 1 is a perspective view schematically showing the working device, and FIG. 2 is a front sectional view schematically showing the working device. In the following description, the up-down, front-back, left-right directions of the drawings are used.

[0025] As shown in FIGS. 1 and 2, the working device includes a machine tool 1 and a conveying device 20. The machine tool 1 includes a base 2 and a column 3 provided on the base 2. The column 3 supports a spindle head (not shown) so as to be movable up and down. The spindle head rotatably supports a spindle 4 with the vertical direction as the rotation axis direction. A spindle motor 5 is provided at the upper end of the spindle head. The spindle 4 rotates by driving the spindle motor 5.

[0026] The column 3 supports a turret-type tool magazine 6. The tool magazine 6 is arranged on the front side of the spindle head. A plurality of tools 7 are held around the tool magazine 6. A magazine motor 17 (see FIG. 5) is provided in the tool magazine 6. By driving the magazine motor 17, the tool magazine 6 indexes the tool 7 to the exchange position. By moving the spindle head up and down, the tool 7 is attached to and detached from the spindle 4. A table 15 movable in the left-right direction and the front-rear direction is arranged below the spindle 4. The table 15 includes a jig 15a. The jig 15a holds and releases the workpiece 16.

[0027] A cover 8 covers the front side, rear side, right side, and left side of the machine tool 1. A door 9 is provided on the front surface of the cover 8. An operation unit 11 for receiving an operator's operation and a display unit 12 for displaying an image are provided on the right side of the door 9. A control device 10 is provided on the rear side of the cover 8. A side door 13 is provided on the right surface of the cover 8.

[0028] FIG. 3 is a partially enlarged perspective view schematically showing the conveying device 20, and FIG. 4 is a partially enlarged right side view schematically showing the conveying device 20. The conveying device 20 is arranged on the right side of the side door 13. The conveying device 20 includes a support portion 30, a first arm 31, a second arm 32, and a hand 33.

[0029] At the upper end of the support part 30, a first speed reducer 31a is provided. The first speed reducer 31a is connected to a first motor 36 (see Fig. 5). The output shaft of the first speed reducer 31a rotates in the front-rear direction as the rotation axis direction and protrudes rearward. The first arm 31 is located on the rear side of the first speed reducer 31a. One end of the first arm 31 is connected to the output shaft of the first speed reducer 31a. On the rear side of the other end of the first arm 31, a second speed reducer 32a is provided. The second speed reducer 32a is connected to a second motor 37 (see Fig. 5). The output shaft of the second speed reducer 32a rotates in the front-rear direction as the rotation axis direction and protrudes rearward. One end of the second arm 32 is connected to the output shaft of the second speed reducer 32a. By driving the first motor 36, the first arm 31 rotates around the rotation axis of the first speed reducer 31a, and by driving the second motor 37, the second arm 32 rotates around the rotation axis of the second speed reducer 32a.

[0030] A third speed reducer 33a is provided at the other end of the second arm 32. The third speed reducer 33a is connected to a third motor 38 (see Fig. 5). The output shaft of the third speed reducer 33a rotates in the front-rear direction as the rotation axis direction and protrudes rearward. The hand 33 is connected to the output shaft of the third speed reducer 33a. The hand 33 includes a rotation plate 34 in an L shape when viewed from the front and two gripping parts 35. The gripping parts 35 are arranged at each end of the rotation plate 34. The gripping part 35 has two opposing plate parts. One plate part is fixed to the rotation plate 34, and the other plate part is provided on the rotation plate 34 so as to be able to approach and separate from the one plate part. The other plate part approaches the one plate part to grip the workpiece 16. The other plate part separates from the one plate part to release the workpiece 16.

[0031] The J1 axis 31b shown in Fig. 4 is the rotation axis of the first speed reducer 31a, the J2 axis 32b is the rotation axis of the second speed reducer 32a, and the J3 axis 33b is the rotation axis of the third speed reducer 33a.

[0032] The transfer device 20 includes a drive system 40 having a saddle 41 that drives in the front-rear direction of the machine. The drive system 40 supports the support portion 30. The base 2 is connected to the drive system 40 and supports the drive system 40. The drive system 40 has a linear guide and a ball screw, and is configured such that the transfer device 20 moves linearly in the front-rear direction. Further, a fourth motor 42 (see FIG. 5) is provided via a coupling to the ball screw.

[0033] An air cylinder 50 is provided above the first speed reducer 31a. The air cylinder 50 connects the side door 13 and the transfer device 20. By this connection, when the transfer device 20 is driven forward, the side door 13 is opened, and it becomes possible for the first arm 31, the second arm 32, and the hand 33 to enter the machine tool. Also, when the transfer device 20 is driven backward, the side door 13 closes.

[0034] FIG. 5 is a block diagram of the working device. The control device 10 includes a CPU 10a, a RAM 10b, a storage unit 10c, etc. The storage unit 10c is a non-volatile memory, a hard disk, etc. The non-volatile memory is, for example, an EPROM, an EEPROM, etc. The storage unit stores a control program, stores the dimensions of the first arm 31, the second arm 32, and the hand 33, and also stores a table showing the dimensions of each tool 7, each position Pn in the circumferential direction of the tool magazine 6, and the relationship between each position Pn and each tool 7 mounted at each position Pn. The CPU 10a reads the control program stored in the storage unit 10c into the RAM and controls the operation of the working device.

[0035] The first motor 36 includes an encoder 36a. The second motor 37 includes an encoder 37a. The third motor 38 includes an encoder 38a. The fourth motor 42 includes an encoder 42a. The magazine motor 17 includes an encoder 17a.

[0036] The CPU 10a outputs drive signals to the first motor 36, the second motor 37, the third motor 38, the fourth motor 42, and the magazine motor 17. Each of the encoders 36a, 37a, 38a, 42a, and 17a outputs the position of each motor to the control device 10. The CPU 10a calculates the front-back, left-right, up-down positions of the first arm 31, the second arm 32, and the hand 33 based on the positions of the first motor 36, the second motor 37, the third motor 38, and the fourth motor 42. Also, the CPU 10a calculates the positions of the respective tools 7 based on the position of the magazine motor 17.

[0037] An external device, for example, a teaching device 51 can be connected to the control device 10. By operating the teaching device 51, the control device 10 can be taught the operations of the first arm 31, the second arm 32, and the hand 33. The control device 10 drives the first arm 31, the second arm 32, and the hand 33 according to the teaching from the teaching device 51. The control device 10 determines whether the arm interferes with the tool during teaching, and if it determines that interference occurs, stops the transfer device 20.

[0038] Hereinafter, the interference determination process by the control device 10 will be described. In the following description, the X direction indicates the left-right direction, with the right side being the positive side and the left side being the negative side. The Y direction indicates the front-back direction, with the rear side being the positive side and the front side being the negative side. The Z direction indicates the up-down direction, with the upper side being the positive side and the lower side being the negative side.

[0039] The first arm 31 cannot come into contact with the tool 7, and the hand 33 is the part that the operator of the teaching device 51 pays attention to, and interference is unlikely to occur. The second arm 32 can come into contact with the tool 7, and compared with the hand 33, it is the part where the operator loses attention, and interference is likely to occur. Therefore, in the interference determination process, it is determined whether there is interference between the second arm 32 and the tool 7.

[0040] FIG. 6 is a schematic front view showing the first arm 31, the second arm 32, and the second arm region 132, and FIG. 7 is a schematic left side view showing the dimensions of the second arm region 132. The storage unit 10c stores in advance the length D1 of the first arm 31, the length D2 of the second arm 32, the vertical width D3 of the second arm 32, and the horizontal width D4 of the second arm 32. The CPU 10a calculates the coordinates of the second arm region 132 indicating the region of the second arm 32 based on D1 to D4.

[0041] The second arm region 132 is a rectangular parallelepiped region surrounding the second arm 32. D2 to D4 determine the lengths of three mutually perpendicular sides of the second arm region 132, and determine the volume and shape. The coordinates of the second arm region 132 are determined by the volume and shape of the second arm region 132, the length D1, the position of the first arm 31 around the J1 axis 31b, the front-rear position of the support portion 30, the position of the second arm region 132 around the J2 axis 32b, and the like.

[0042] FIG. 8 is an explanatory diagram for explaining the tool region. The CPU 10a calculates the tool region F for each tool 7. The tool 7 includes a tool holder 7a and a blade portion 7b. The tool holder 7a and the blade portion 7b are cylindrical. As shown on the left side of FIG. 8, when the diameter A of the tool holder 7a is larger than the diameter C of the blade portion 7b, the CPU 10a calculates the coordinates of a rectangular parallelepiped region having a horizontal dimension A, a front-rear dimension A, and a vertical dimension B, that is, the tool region F. In the interference determination process, it is determined whether there is interference between the second arm region 132 and the tool region F.

[0043] As shown on the right side of FIG. 8, when the diameter C of the blade portion 7b is larger than the diameter A of the tool holder 7a, the CPU 10a calculates a rectangular parallelepiped region having a horizontal dimension C, a front-rear dimension C, and a vertical dimension B, that is, the tool region F.

[0044] FIG. 9 is a front view schematically showing the positions of the respective tools 7 when the central axis of the tool magazine 6 is horizontal. K in FIG. 9 and FIG. 10 described later indicates the central axis or the center point of the tool magazine 6.

[0045] The CPU 10a calculates the coordinates of the tool 7 mounted on the tool magazine 6. At the peripheral part of the tool magazine 6, positions P1, P2, P3, ···, Pn for mounting the tool 7 are arranged at equal intervals in the circumferential direction. The tool magazine 6 is inclined such that the central axis K extending in the front-rear direction descends as it faces forward. The tool magazine 6 is inclined at an angle of θm with respect to the Z axis (see Fig. 13). The CPU 10a first calculates the position Pn in a state where the central axis K is horizontal, that is, in a state where θm is 0.

[0046] As shown in Fig. 9, the X, Y, and Z coordinates of the center point of the tool magazine 6 are set as the origin (0, 0, 0). The position P1 is the lowest position of the tool magazine 6 and is a position on the axis of the spindle. The X, Y, and Z coordinates of the position P1 are (0, 0, -R). Here, R is the radius of the tool magazine 6. The angle between the positions Pn-1 and Pn is 360° / U. Here, U is the maximum number of tools 7 that can be mounted on the tool magazine 6. The positions P2, P3, ···, Pn are positions where the angle is shifted by 360° / U counterclockwise in the front view with respect to the position P1 as a reference.

[0047] Let the X coordinate of the position Pn be Xn and the Z coordinate be Zn. Xn = R·sin((n - 1)·360° / U) Zn = -R·cos((n - 1)·360° / U) The CPU 10a calculates the X and Z coordinates of the positions P2, P3, ···, Pn based on the above formulas. Since the central axis K is horizontal, the Y coordinate is 0 for any position Pn.

[0048] FIG. 10 is a front view schematically showing a tool magazine 6 and a tool area F when the central axis of the tool magazine 6 is horizontal, and FIG. 11 is a right side view schematically showing a configuration near a position P1 when the central axis of the tool magazine 6 is horizontal. The CPU 10a adds the tool area F of each tool 7 to each position Pn and calculates the X, Y, and Z coordinates of the tip point of the tool area F. The tip point of the tool area F is the center point of the tip surface of the tool area F. The tip surface is the surface farther from the central axis K of the tool area F. The position of the center point of the surface on the opposite side of the tip surface of the tool area F is the position Pn. As shown in FIG. 11, the tool area F is inclined with respect to the tool magazine 6 so that the tip faces forward. The angle formed by the tool area F and the plane perpendicular to the Y axis is θt. At the position P1, the X, Y, and Z coordinates of the tip point Q1 of the tool area F are Q1(0, -Bsinθt, -(R + Bcosθt)).

[0049] FIG. 12 is a right side view schematically showing a configuration near a position P2 when the central axis of the tool magazine 6 is horizontal. When the X, Y, and Z coordinates of the above-mentioned position P2 are (xP2, yP2, zP2), the X, Y, and Z coordinates of the tip point Q2 are (xP2 + B·cosθt·sin(360° / U), yP2 - Bsinθt, zP2 - B·cosθt·cos(360° / U). The coordinates of the positions P3, P4, ···, Pn, and the tip points Q3, Q4, ···, Qn are the same.

[0050] Next, the CPU 10a converts the coordinates of the positions P1, P2, P3, ···, Pn. Specifically, the coordinates are converted so that they correspond to the position of the tool magazine 6 inclined at an angle θm with respect to the Z axis such that it descends as the central axis K faces forward.

[0051] FIG. 13 is a right side view for explaining the coordinate conversion of the position P1. As shown in FIG. 13, let the position after the coordinate conversion of the position P1 be P1'. Let the difference in the Y direction between the position P1 and the position P1' be Δy, then Δy = Rsinθm Let the difference in the Z direction between the position P1 and the position P1' be Δz, then Δz = R(1 - cosθm) Therefore, the X, Y, and Z coordinates of position P1' are (0, Rsinθm, -Rcosθm). Also, the X, Y, and Z coordinates of the tip point Q1 after coordinate transformation are (0, Rsinθm, -(Rcosθm + B)).

[0052] Figure 14 is a right side view for explaining the coordinate transformation of position P2. Let the position after the coordinate transformation of position P2 be P2'. If the difference in the Y direction between position P2 and position P2' is Δy, then Δy = Rcos(360° / U)·sinθm If the difference in the Z direction between position P2 and position P2' is Δz, then Δz = Rcos(360° / U)·(1 - cosθm) Therefore, the X, Y, and Z coordinates of position P2' are (Rsin(360° / U), Rcos(360° / U)·sinθm, -Rcos(360° / U)·cosθm). The coordinate transformation of positions P3, ···, Pn is the same as that of position P2.

[0053] Figure 15 is a right side view for explaining the coordinate transformation of the tip point Q2. Let the tip point after the coordinate transformation be Q2'. Point G is the intersection of the angle bisector of ∠Q2KQ2' and the line segment Q2Q2'. Point H is the intersection of the straight line parallel to the Z - axis passing through K and the straight line parallel to the Y - axis passing through Q2. If ∠Q2KQ2' is θa and ∠Q2KH is θb, then |Q2Q2'| = 2|KQ2|sin(θa / 2), θb = cos -1 (|KH| / |KQ2|). Since the coordinates of Q2 are known, |KQ2| is also known. Since the coordinates of H can be calculated from the coordinates of K and Q2, |KH| can also be calculated. Also ∠Q2′Q2I = 90° - θb - ((180° - θa) / 2) = (θa / 2) - cos -1 (|KH| / |KQ2|) becomes.

[0054] If the difference in the Y direction between the tip point Q2 and the tip point Q2' is Δy, then Δy = |Q2Q2'|·cos∠Q2'Q2I = 2|KQ2|·sin(θa / 2)·cos(θa / 2 - cos -1 (|KH| / |KQ2|)) is obtained. Let the difference in the Z direction between the tip point Q2 and the tip point Q2' be Δz, then Δz = |Q2Q2'|·sin∠Q2'Q2I = 2|KQ2|·sin(θa / 2)·sin(θa / 2 - cos -1 (|KH| / |KQ2|)) is obtained. Therefore, the X, Y, and Z coordinates of the tip point Q2' are (xP2 + B·cosθt·sin(360° / U), yP2 - Bsinθt + Δy, zP2 - B·cosθt·cos(360° / U) + Δz). For the coordinates of the tip points Q3', Q4', ···, Qn' after coordinate transformation of the tip points Q3, Q4, ···, Qn, calculations are performed in the same manner as for the tip point Q2.

[0055] FIG. 16 is a front view showing the tool magazine 6 and the tool area F. The control device 10 determines whether each tool area F is arranged at a non-interference position where the second arm 32 cannot reach when the first arm 31 and the second arm 32 are deployed. In this embodiment, since the transfer device 20 is arranged on the right side of the machine tool 1, the tool area F located on the left side of the tool magazine 6 is at a non-interference position (refer to the tool area F indicated by hatching in FIG. 16). Note that when the transfer device 20 is arranged on the left side of the machine tool 1, the tool area F located on the right side of the tool magazine 6 is at a non-interference position.

[0056] The determination as to whether the tool area F is at a non-interference position is performed, for example, as follows. In the tool area F, the X coordinates of the position P'n and the tip point Q'n are compared, and if the X coordinate of the tip point Q'n is smaller than the X coordinate of the position P'n, it is determined that the tool area F is at a non-interference position. The control device 10 excludes the tool area F determined to be at a non-interference position from the objects of interference determination.

[0057] FIG. 17 is a front view showing the first arm 31, the second arm 32, and the second arm region 132. The control device 10 determines whether or not the posture of the second arm region 132 is a non-interference posture where it is impossible to reach the tool region F. For example, as shown in FIG. 17, when the tip of the second arm region 132 is located on the right side of the first arm 31, the second arm region 132 is located outside the machine tool 1, so the posture of the second arm region 132 is a non-interference posture.

[0058] In the XZ plane, the control device 10 determines whether the angle formed by the Z-axis side of the X-axis and the lower surface extending in the longitudinal direction of the second arm region 132, that is, when an extension line is drawn from the lower surface of the second arm region 132 toward the X-axis, the angle θn formed by the extension line and the left-side portion from the intersection of the extension line and the X-axis is smaller than the angle θs formed by the Z-axis side of the X-axis and the lower surface extending in the longitudinal direction of the tool region F, that is, when an extension line is drawn from the lower surface of the tool region F toward the X-axis, the angle formed by the extension line and the left-side portion from the intersection of the extension line and the X-axis (see FIG. 18), or whether the angle θn formed by the Z-axis side of the X-axis and the lower surface of the second arm region 132 is larger than the angle θs formed by the Z-axis side of the X-axis and the lower surface of the tool region F. The control device 10 performs interference determination for the case of the first inclination state and the case of the second inclination state, respectively. Details of the first inclination state and the second inclination state will be described later.

[0059] FIG. 18 is a front view schematically showing the tool region F and the second arm region 132 when in the first inclination state and θc is less than 90°. As shown in FIG. 18, in the XZ plane, the magnitude of the inclination of the tool region F is larger than the magnitude of the inclination of the second arm region 132. That is, it is in the first inclination state. As shown in FIG. 18, let the left end of the upper surface Ta along the longitudinal direction of the tool region F be T1, and the remaining three corners be T2, T3, and T4 in the counterclockwise direction. The surface between the corners T3 and T4 is the right surface Tb. Let the left end of the upper surface Aa along the longitudinal direction of the second arm region 132 be A1, and the remaining three corners be A2, A3, and A4 in the counterclockwise direction. The surface between the corners A1 and A2 is the left surface Ab.

[0060] θc is the angle formed by the upper surface Aa of the second arm region 132 and the upper surface Ta of the tool region F. The angle θc is an angle formed clockwise from the upper surface Aa. In FIG. 18, θc is less than 90°.

[0061] FIG. 19 is a front view schematically showing the interference state between the second arm region 132 and the tool region F when in the first inclined state and θc is less than 90°. As shown in FIG. 19, when θc is less than 90°, there are five interference states A to E as the interference state between the second arm region 132 and the tool region F. The interference state A is a state where the corner A2 contacts the upper surface Ta. The interference state B is a state where the corner T4 contacts the left surface Ab. The interference state C is a state where the corner A1 contacts the right surface Tb. The interference state D is a state where the corner T3 contacts the upper surface Aa. The interference state E is a state where the second arm region 132 and the tool region F overlap.

[0062] The interference states A and C are states where the end points A1 or A2 on the tool region F side in the second arm region 132 are in the first interference possible positions. The CPU 10a that determines whether it is the interference states A and C constitutes the first determination unit. The interference states B and D are states where the end points T3 or T4 on the second arm region 132 side in the tool region F are in the second interference possible positions. The CPU 10a that determines whether it is the interference states B and D constitutes the second determination unit.

[0063] Hereinafter, the X, Y, and Z coordinates of each corner are denoted by attaching x, y, and z to each corner. For example, the X, Y, and Z coordinates of the corner A1 are A1x, A2y, and A3z, respectively. In order to be in the interference state A, it is necessary to satisfy at least the following condition A. Condition A: A2x ≤ T4x and min{T1z, T4z} ≤ A2z Note that min{T1z, T4z} indicates the smaller one of T1z and T4z. In order to be in the interference state B, it is necessary to satisfy at least the following condition B. Condition B: min{A1x, A2x} ≤ T4x ≤ max{A1x, A2x} That is, min{A1x, A2x} indicates the smaller one of A1x and A2x, and max{A1x, A2x} indicates the larger one of A1x and A2x.

[0064] In order to be in the interference state C, it is necessary to satisfy at least the following condition C. Condition C: min{T4x, T3x} ≤ A1x ≤ max{T4x, T3x}, and T3z ≤ A1z ≤ T4z That is, min{T4x, T3x} indicates the smaller one of T4x and T3x, and max{T4x, T3x} indicates the larger one of T4x and T3x.

[0065] In order to be in the interference state D, it is necessary to satisfy at least the following condition D. Condition D: A1x ≤ T3x ≤ A4x, and min{A1z, A4z} ≤ T3z ≤ max{A1z, A4z} That is, min{A1z, A4z} indicates the smaller one of A1z and A4z, and max{A1z, A4z} indicates the larger one of A1z and A4z.

[0066] When in the first inclination state and θc is less than 90°, if it does not conform to any of the above conditions A to D, the second arm region 132 and the tool region F do not interfere.

[0067] When it conforms to the above condition A and T1x = T4x, there is a possibility of being in the interference state A, and there is no possibility of being in the interference state E. When it conforms to condition A, and T1x ≠ T4x, and A2 is below the line segment T1T4, there is a possibility of being in the interference state E.

[0068] When it conforms to the above condition B and A1x = A2x, there is a possibility of being in the interference state B, and there is no possibility of being in the interference state E. When it conforms to condition B, and A1x > A2x, and T4 is below the line segment A1A2, the interference state E occurs. When it conforms to condition B, and A1x < A2x, and T4 is above the line segment A1A2, there is a possibility of being in the interference state E.

[0069] When the above condition C is met and T4x = T3x, there is a possibility of interference state C and no possibility of interference state E. When the condition C is met, and T4x > T3x, and A1 is above the line segment T4T3, there is a possibility of interference state E. When the condition C is met, and T4x < T3x, and A1 is below the line segment T4T3, there is a possibility of interference state E.

[0070] When the above condition D is met and A1x = A4x, there is a possibility of interference state D and no possibility of interference state E. When the condition D is met, and A1x ≠ A4x, and T3 is below A1A4, there is a possibility of interference state E. When it is determined that any of the above conditions A to D is satisfied, the CPU 10a that further determines whether or not it corresponds to the interference state E constitutes a third determination unit.

[0071] FIG. 20 is a perspective view showing each vertex of the second arm region 132. The second arm region 132 has a rectangular parallelepiped shape, and the corners A1 to A4 respectively correspond to the vertices A1 to A4. Vertices A5 to A8 are arranged at positions facing the vertices A1 to A4 in the Y direction. When there is a possibility of the above interference states A to E, the control device 10 determines whether or not the tool region F and the second arm region 132 interfere based on the following conditions.

[0072] FIG. 21 is a right side view for explaining whether or not it corresponds to the interference state A. When there is a possibility of the interference state A, the control device 10 calculates the Y coordinate Tay having the same Z coordinate as the Z coordinate A2z of the vertex A2 on the upper surface Ta. It is determined whether or not the calculated Tay exists on the line segment A2A6. When Tay exists on the line segment A2A6, it is determined that the tool region F and the second arm region 132 interfere, and when Tay does not exist on the line segment A2A6, it is determined that the tool region F and the second arm region 132 do not interfere. Whether or not Tay exists on the line segment A2A6 corresponds to the first condition.

[0073] FIG. 22 is a right side view for explaining whether or not it corresponds to the interference state B. When there is a possibility of the interference state B, the control device 10 calculates the Z coordinate T4z of the corner T4 in the tool region F. Here, the Z coordinate T4z of the corner T4 indicates the Z coordinates T4z of the respective points of the angle extending in the Y direction from the vertex T4 (see the interference state B in FIG. 19) on the XZ plane. The control device 10 calculates each Y coordinate value T4y of the Z coordinate T4z and determines whether or not there exists a Y coordinate value T4y satisfying A2y ≦ T4y ≦ A6y. When there exists a Y coordinate value T4y satisfying A2y ≦ T4y ≦ A6y, it is determined that the tool region F and the second arm region 132 interfere with each other. When there does not exist a Y coordinate value T4y satisfying A2y ≦ T4y ≦ A6y, it is determined that the tool region F and the second arm region 132 do not interfere with each other. Whether or not there exists a Y coordinate value T4y satisfying A2y ≦ T4y ≦ A6y corresponds to the second condition.

[0074] FIG. 23 is a right side view for explaining whether or not it corresponds to the interference state C. When there is a possibility of the interference state C, the control device 10 calculates, on the right surface Tb, the Y coordinate Tby having the same Z coordinate as the Z coordinate A1z of the vertex A1. It is determined whether or not the calculated Tby exists on the line segment A1A5. When the Tby exists on the line segment A1A5, it is determined that the tool region F and the second arm region 132 interfere with each other. When the Tby does not exist on the line segment A1A5, it is determined that the tool region F and the second arm region 132 do not interfere with each other. Whether or not the Tby exists on the line segment A1A5 corresponds to the first condition.

[0075] FIG. 24 is a right side view for explaining whether or not it corresponds to the interference state D. When there is a possibility of the interference state D, the control device 10 calculates the Z coordinate T3z of the corner T3 of the tool area F. Here, the Z coordinate T3z of the corner T3 indicates the Z coordinates T3z of the respective points of the angle extending in the Y direction from the vertex T3 on the XZ plane (see the interference state D in FIG. 19). The control device 10 calculates each Y coordinate value T3y of the Z coordinate T3z, and determines whether or not there exists a Y coordinate value T3y that satisfies A2y ≦ T3y ≦ A6y. When there exists a Y coordinate value T3y that satisfies A2y ≦ T3y ≦ A6y, it is determined that the tool area F and the second arm area 132 interfere with each other, and when there does not exist a Y coordinate value T3y that satisfies A2y ≦ T3y ≦ A6y, it is determined that the tool area F and the second arm area 132 do not interfere with each other. Whether or not there exists a Y coordinate value T3y that satisfies A2y ≦ T3y ≦ A6y corresponds to the second condition.

[0076] FIG. 25 is a right side view for explaining whether or not it corresponds to the interference state E. When there is a possibility of the interference state E, the control device 10 calculates the minimum X coordinate Axmin in the arm area 132 that overlaps the tool area F on the XY plane, and calculates the maximum Y coordinate Ty at Axmin in the tool area F. The control device 10 determines whether or not Ty < A2y. When Ty is not < A2y, it is determined that the tool area F and the second arm area 132 interfere with each other, and when Ty < A2y, it is determined that the tool area F and the second arm area 132 do not interfere with each other. Whether or not Ty < A2y corresponds to the third condition.

[0077] The CPU 10a that determines whether or not the tool area F and the second arm area 132 interfere with each other based on the first condition or the second condition constitutes a fourth determination unit. The CPU 10a that determines whether or not the tool area F and the second arm area 132 interfere with each other based on the third condition constitutes a fifth determination unit.

[0078] FIG. 26 is a front view schematically showing the tool area F and the second arm area 132 when it is in the first inclination state and θc is 90° or more. In FIG. 26, θc is 90° or more. FIG. 27 is a front view schematically showing the interference state between the second arm region 132 and the tool region F when in the first inclined state and when θc is 90° or more. As shown in FIG. 27, when θc is 90° or more, there are three interference states F to H as the interference state between the second arm region 132 and the tool region F. In interference state F, corner A1 is in contact with the upper surface Ta. In interference state G, corner T4 is in contact with the upper surface Aa. In interference state H, the second arm region 132 and the tool region F overlap each other.

[0079] In interference state F, the end point A1 on the tool region F side in the second arm region 132 is in the first interference possible position. The CPU 10a that determines whether it is in interference state F constitutes the first determination unit. In interference state G, the end point T4 on the second arm region 132 side in the tool region F is in the second interference possible position. The CPU 10a that determines whether it is in interference state G constitutes the second determination unit.

[0080] In order to be in interference state F, it is necessary to satisfy at least the following condition F. Condition F: T1x ≦ A1x ≦ T4x, and T4z ≦ A1z ≦ T1z In order to be in interference state G, it is necessary to satisfy at least the following condition G. Condition G: A1x ≦ T4x ≦ A4x, and A1z ≦ T4z ≦ A4z In the first inclined state and when θc is 90° or more, when neither of the above conditions F and G is satisfied, the second arm region 132 and the tool region F do not interfere with each other.

[0081] When the above condition F is satisfied and T1x = T4x, there is a possibility of being in interference state F and no possibility of being in interference state H. When condition F is satisfied, T1x ≠ T4x, and A1 is below the line segment T1T4, there is a possibility of being in interference state H.

[0082] When the above condition G is met and A1z = A4z, there is a possibility of interference state G and no possibility of interference state H. When condition G is met, A1z ≠ A4z, and T4 is below the line segment A1A4, there is a possibility of interference state H. When it is determined that the above condition F or G is satisfied, the CPU 10a that further determines whether or not it corresponds to the interference state H constitutes a third determination unit.

[0083] When there is a possibility of interference state F, the control device 10 calculates the Y coordinate Tay having the same Z coordinate as the Z coordinate A1z of the vertex A1 on the upper surface Ta. It is determined whether the calculated Tay exists on the line segment A1A5. When Tay exists on the line segment A1A5, it is determined that the tool region F and the second arm region 132 interfere with each other. When Tay does not exist on the line segment A1A5, it is determined that the tool region F and the second arm region 132 do not interfere with each other. Whether Tay exists on the line segment A1A5 corresponds to the first condition.

[0084] When there is a possibility of interference state G, the control device 10 calculates the Z coordinate T4z of the corner T4 of the tool region F. Here, the Z coordinate T4z of the corner T4 indicates the Z coordinates T4z of the points of the corner extending in the Y direction from the vertex T4 (refer to the interference state G in FIG. 27) on the XZ plane. The control device 10 calculates each Y coordinate value T4y of the Z coordinate T4z and determines whether there is a Y coordinate value T4y that satisfies A1y ≤ T4y ≤ A5y. When there is a Y coordinate value T4y that satisfies A1y ≤ T4y ≤ A5y, it is determined that the tool region F and the second arm region 132 interfere with each other. When there is no Y coordinate value T4y that satisfies A1y ≤ T4y ≤ A5y, it is determined that the tool region F and the second arm region 132 do not interfere with each other. Whether there is a Y coordinate value T4y that satisfies A1y ≤ T4y ≤ A5y corresponds to the second condition.

[0085] When there is a possibility of interference state H, in the same manner as when there is a possibility of interference state E, it is determined whether the tool region F and the second arm region 132 interfere with each other (refer to FIG. 25).

[0086] FIG. 28 is a front view schematically showing a tool region F and a second arm region 132 in a second inclined state where θc is less than 90°. As shown in FIG. 28, in the XZ plane, the magnitude of the inclination of the tool region F is smaller than the magnitude of the inclination of the second arm region 132. That is, it is in the second inclined state. As shown in FIG. 28, let the left end of the upper surface Ta along the longitudinal direction of the tool region F be T1, and the remaining three corners be T2, T3, and T4 in the counterclockwise direction. The surface between corners T3 and T4 is the right surface Tb. The surface between corners T2 and T3 is the lower surface Tc. Let the left end of the upper surface Aa along the longitudinal direction of the second arm region 132 be A1, and the remaining three corners be A2, A3, and A4 in the counterclockwise direction. The surface between corners A1 and A2 is the left surface Ab. The surface between corners A2 and A3 is the lower surface Ac.

[0087] FIG. 29 is a view showing an interference state between the second arm region 132 and the tool region F in a second inclined state where θc is less than 90°. As shown in FIG. 29, when θc is less than 90°, there are five interference states A' to E' as the interference state between the second arm region 132 and the tool region F. The interference state A' is a state where the corner T4 contacts the lower surface Ac. The interference state B' is a state where the corner A2 contacts the right surface Tb. The interference state C' is a state where the corner T3 contacts the left surface Ab. The interference state D' is a state where the corner A1 contacts the lower surface Tc. The interference state E' is a state where the second arm region 132 and the tool region F overlap.

[0088] The interference states A' and C' are states where the endpoints T3 or T4 on the second arm region 132 side in the tool region F are in the second interference possible positions. The CPU 10a that determines whether it is the interference states A' and C' constitutes a second determination unit. The interference states B' and D' are states where the endpoints A1 or A2 on the tool region F side in the second arm region 132 are in the first interference possible positions. The CPU 10a that determines whether it is the interference states A and C constitutes a first determination unit.

[0089] In order to be in the interference state A', it is necessary to satisfy at least the following condition A'. Condition A: A2x ≤ T4x and min{A2z, A3z} ≤ T4z Note that min{A2z, A3z} indicates the smaller value between A2z and A3z. In order to enter the interference state B′, it is necessary to satisfy at least the following condition B′. Condition B: min{T4x, T3x} ≤ A2x ≤ max{T4x, T3x} Note that min{T4x, T3x} indicates the smaller value between T4x and T3x, and max{T4x, T3x} indicates the larger value between T4x and T3x.

[0090] In order to enter the interference state C′, it is necessary to satisfy at least the following condition C′. Condition C′: min{A1x, A2x} ≤ T3x ≤ max{A1x, A2x} and A2z ≤ T3z ≤ A1z Note that min{A1x, A2x} indicates the smaller value between A1x and A2x, and max{A1x, A2x} indicates the larger value between A1x and A2x.

[0091] In order to enter the interference state D′, it is necessary to satisfy at least the following condition D′. Condition D′: T2x ≤ A1x ≤ T3x and min{T3z, T2z} ≤ A1z ≤ max{T3z, T2z} Note that min{T3z, T2z} indicates the smaller value between T3z and T2z, and max{T3z, T2z} indicates the larger value between T3z and T2z.

[0092] When in the second inclination state and θc is less than 90°, if it does not meet any of the above conditions A′ to D′, the second arm region 132 and the tool region F do not interfere.

[0093] When it meets the above condition A′ and A2x = A3x, there is a possibility of entering the interference state A′, and there is no possibility of entering the interference state E′. When it meets the condition A′, A2x ≠ A3x, and T4 is above the line segment A2A3, there is a possibility of entering the interference state E′.

[0094] When it meets the above condition B′ and T4x = T3x, there is a possibility of interference state B′, and there is no possibility of interference state E′. When it meets the condition B′, T4x > T3x, and A2 is below the line segment T4T3, an interference state E′ will occur. When it meets the condition B, T4x < T3x, and A2 is above the line segment T4T3, there is a possibility of interference state E′.

[0095] When it meets the above condition C′ and A1x = A2x, there is a possibility of interference state C′, and there is no possibility of interference state E′. When it meets the condition C′, A1x > A2x, and T3 is below the line segment A1A2, there is a possibility of interference state E′. When it meets the condition C′, A1x < A2x, and T3 is above the line segment A1A2, there is a possibility of interference state E′.

[0096] When it meets the above condition D′ and T3x = T2x, there is a possibility of interference state D′, and there is no possibility of interference state E′. When it meets the condition D′, T3x ≠ T2x, and A1 is above the line segment T3T2, there is a possibility of interference state E′. When it is determined that any of the above conditions A′ to D′ is satisfied, the CPU 10a that further determines whether it meets the interference state E′ constitutes a third determination unit.

[0097] Similar to FIG. 20, the second arm region 132 is in the shape of a rectangular parallelepiped, and the corners A1 to A4 respectively correspond to the vertices A1 to A4. Vertices A5 to A8 are arranged at positions facing the vertices A1 to A4 in the Y direction. When there is a possibility of the above interference states A′ to E′, the control device 10 determines whether the tool region F and the second arm region 132 interfere based on the following conditions.

[0098] When there is a possibility of the interference state A', the control device 10 calculates the Z coordinate T4z of the corner T4 of the second arm region 132. Here, the Z coordinate T4z of the corner T4 indicates the Z coordinates T4z of the points of the corner extending in the Y direction from the vertex T4 on the XZ plane (refer to the interference state A' in FIG. 29). The control device 10 calculates each Y coordinate value T4y of the Z coordinate T4z, and determines whether there exists a Y coordinate value T4y that satisfies A2y ≤ T4y ≤ A6y. If there exists a Y coordinate value T4y that satisfies A2y ≤ T4y ≤ A6y, it is determined that the tool region F and the second arm region 132 interfere with each other. If there does not exist a Y coordinate value T4y that satisfies A2y ≤ T4y ≤ A6y, it is determined that the tool region F and the second arm region 132 do not interfere with each other. Whether there exists a Y coordinate value T4y that satisfies A2y ≤ T4y ≤ A6y corresponds to the second condition.

[0099] When there is a possibility of the interference state B', the control device 10 calculates, on the right surface Tb, the Y coordinate Tby having the same Z coordinate as the Z coordinate A2z of the vertex A2. It is determined whether the calculated Tby exists on the line segment A2A6. If Tby exists on the line segment A2A6, it is determined that the tool region F and the second arm region 132 interfere with each other. If Tby does not exist on the line segment A2A6, it is determined that the tool region F and the second arm region 132 do not interfere with each other. Whether Tby exists on the line segment A2A6 corresponds to the first condition.

[0100] When there is a possibility of the interference state C', the control device 10 calculates the Z coordinate T3z of the corner T3 of the tool region F. Here, the Z coordinate T3z of the corner T3 indicates the Z coordinates T3z of the points of the corner extending in the Y direction from the vertex T3 on the XZ plane (refer to the interference state C' in FIG. 29). The control device 10 calculates each Y coordinate value T3y of the Z coordinate T3z, and determines whether there exists a Y coordinate value T3y that satisfies A2y ≤ T3y ≤ A6y. If there exists a Y coordinate value T3y that satisfies A2y ≤ T3y ≤ A6y, it is determined that the tool region F and the second arm region 132 interfere with each other. If there does not exist a Y coordinate value T3y that satisfies A2y ≤ T3y ≤ A6y, it is determined that the tool region F and the second arm region 132 do not interfere with each other. Whether there exists a Y - coordinate value T3y satisfying A2y ≤ T3y ≤ A6y corresponds to the second condition.

[0101] When there is a possibility of an interference state D′, the control device 10 calculates a Y - coordinate Tcy having the same Z - coordinate as the Z - coordinate A1z of the vertex A1 on the lower surface Tc. It is determined whether the calculated Tcy exists on the line segment A1A5. If Tcy exists on the line segment A1A5, it is determined that the tool region F and the second arm region 132 interfere with each other. If Tcy does not exist on the line segment A1A5, it is determined that the tool region F and the second arm region 132 do not interfere with each other. Whether Tcy exists on the line segment A1A5 corresponds to the first condition.

[0102] When there is a possibility of an interference state E′, similar to the case when there is a possibility of an interference state E, the control device 10 determines whether Ty < A2y. If Ty ≥ A2y, it is determined that the tool region F and the second arm region 132 interfere with each other. If Ty < A2y, it is determined that the tool region F and the second arm region 132 do not interfere with each other (see Fig. 25).

[0103] Fig. 30 is a front view schematically showing the tool region F and the second arm region 132 when in the second inclination state and θc ≥ 90°. In Fig. 30, θc ≥ 90°. Fig. 31 is a diagram showing the interference state between the second arm region 132 and the tool region F when in the second inclination state and θc ≥ 90°. As shown in Fig. 31, when θc ≥ 90°, there are three interference states F′ - H′ as the interference state between the second arm region 132 and the tool region F. The interference state F′ is a state where the corner T3 contacts the lower surface Ac. The interference state G′ is a state where the corner A2 contacts the lower surface Tc. The interference state H′ is a state where the second arm region 132 and the tool region F overlap.

[0104] The interference state F′ is a state where the end point T3 on the second arm region 132 side in the tool region F is at the second interference possible position. The CPU 10a that determines whether it is the interference state F′ constitutes a second determination unit. The interference state G′ is a state where the end point A2 on the tool region F side in the second arm region 132 is at the first interference possible position. The CPU 10a that determines whether it is the interference state G′ constitutes a first determination unit.

[0105] In order to be in the interference state F′, it is necessary to satisfy at least the following condition F. Condition F′: A2x ≦ T3x ≦ A3x, and A3z ≦ T3z ≦ A2z In order to be in the interference state G′, it is necessary to satisfy at least the following condition G′. Condition G′: T2x ≦ A2x ≦ T3x, and T2z ≦ A2z ≦ T3z In the second inclination state and when θc is 90° or more, if it does not meet any of the above conditions F′ and G′, the second arm region 132 and the tool region F do not interfere.

[0106] When it meets the above condition F′ and T2x = T3x, there is a possibility of being in the interference state F′, and there is no possibility of being in the interference state H′. When it meets the condition F′, T2x ≠ T3x, and A2 is above the line segment T2T3, there is a possibility of being in the interference state H′.

[0107] When it meets the above condition G′ and T3x = T4x, there is a possibility of being in the interference state G′, and there is no possibility of being in the interference state H′. When it meets the condition G′, T3x ≠ T4x, and A2 is below the line segment T3T4, there is a possibility of being in the interference state H. When it is determined that the above condition F′ or G′ is satisfied, the CPU 10a that further determines whether it meets the interference state H′ constitutes a third determination unit.

[0108] When there is a possibility of an interference state F', the control device 10 calculates the Z coordinate T3z of the corner T3 of the tool region F. Here, the Z coordinate T3z of the corner T3 indicates the Z coordinates T3z of the points of the angle extending in the Y direction from the vertex T3 on the XZ plane (refer to the interference state F' in Fig. 31). The control device 10 calculates each Y coordinate value T3y of the Z coordinate T3z and determines whether there is a Y coordinate value T3y that satisfies A2y ≤ T3y ≤ A6y. If there is a Y coordinate value T3y that satisfies A2y ≤ T3y ≤ A6y, it is determined that the tool region F and the second arm region 132 interfere. If there is no Y coordinate value T3y that satisfies A2y ≤ T3y ≤ A6y, it is determined that the tool region F and the second arm region 132 do not interfere. Whether there is a Y coordinate value T3y that satisfies A2y ≤ T3y ≤ A6y corresponds to the second condition.

[0109] When there is a possibility of an interference state G', the control device 10 calculates the Y coordinate Tcy having the same Z coordinate as the Z coordinate A2z of the vertex A2 on the lower surface Tc. It is determined whether the calculated Tcy exists on the line segment A2A5. If Tcy exists on the line segment A2A5, it is determined that the tool region F and the second arm region 132 interfere. If Tcy does not exist on the line segment A2A5, it is determined that the tool region F and the second arm region 132 do not interfere. Whether Tcy exists on the line segment A2A5 corresponds to the first condition.

[0110] When there is a possibility of an interference state H, in the same manner as when there is a possibility of an interference state E, it is determined whether the tool region F and the second arm region 132 interfere (refer to Fig. 25).

[0111] FIG. 32 is a flowchart for explaining the interference determination process by the control device 10. The control device 10 executes the interference determination process while the tool magazine 6 is stopped and the transfer device 20 is being taught. The CPU 10a calculates the coordinates of the tool area F for each tool 7 (S1). In step S1, the CPU 10a calculates the coordinates of the tool area F based on the detection value of the encoder 17a, that is, the rotational position of the tool magazine 6, the dimensions of the tool 7, the respective positions Pn in the circumferential direction of the tool magazine 6, a table showing the relationship between each tool 7 mounted at each position Pn, and the like.

[0112] The CPU 10a determines whether each tool area F is in a non-interference position as described above, and excludes the tool area F in the non-interference position from the target of the interference determination (S2, see FIG. 16). That is, the tool area F not in the non-interference position is determined as the target of the interference determination. The CPU 10a calculates the second arm area 132 (S3), and determines whether the posture of the second arm area 132 is a non-interference posture (S4, see FIG. 17). When the posture of the second arm area 132 is a non-interference posture (S4: YES), the CPU 10a returns the process to step S3. When the posture of the second arm area 132 is not a non-interference posture (S4: NO), the CPU 10a determines whether the second arm area 132 interferes with each tool area F (S5). The CPU 10a performing the process of step S2 constitutes a tool area determination unit and a first determination unit. The CPU 10a performing the process of step S4 constitutes a non-interference determination unit and a second determination unit.

[0113] In step S5, as described above, the CPU 10a executes the interference determination for the case of the first inclination state or the second inclination state. Also, the interference determination is executed for the case where θc is less than 90° or 90° or more.

[0114] When the second arm area 132 does not interfere with each tool area F (S5: NO), the CPU 10a returns the process to step S3. When the second arm area 132 interferes with the tool area F (S5: YES), the CPU 10a outputs a stop command to the transfer device 20 (S6) and ends the process.

[0115] If the posture of the second arm region 132 is not a non-interference posture (S4: NO), and the second arm region 132 does not interfere with each tool region F (S5: NO), the CPU 10a calculates the second arm region 132 again. That is, during the operation of the arm, the CPU 10a sequentially calculates the second arm region 132 and executes an interference determination.

[0116] In the machine tool according to the embodiment, the tool regions F of the respective tools 7 are calculated, and during the operation of the arm, the second arm region 132 is sequentially calculated. When the second arm region 132 and the tool region F interfere with each other, the transfer device 20 can be stopped to prevent the transfer device 20 from contacting the tool 7.

[0117] Also, when it is determined that neither the end point A1 or A2 on the tool region F side in the second arm region 132 is in the first interference possible position, and neither the end point T3 or T4 on the second arm region 132 side in the tool region F is in the second interference possible position, it is determined that the second arm region 132 does not interfere with the tool region F.

[0118] Also, when it is determined that the end point A1 or A2 on the tool region F side in the second arm region 132 is in the first interference possible position, or when it is determined that the end point T3 or T4 on the second arm region 132 side in the tool region F is in the second interference possible position, further, it is determined whether or not the second arm region 132 and the tool region F overlap. When the second arm region 132 and the tool region F do not overlap, it is determined whether or not the second arm region 132 and the tool region F interfere with each other based on the first condition or the second condition. When the second arm region 132 and the tool region F overlap, it is determined whether or not the second arm region 132 and the tool region F interfere with each other based on the third condition.

[0119] When the tool region F is arranged at a non-interference position where the second arm region 132 cannot reach when the arm is deployed, the tool region F is excluded from the object of the interference determination. Only the tool regions F that are not arranged at the non-interference position are the objects of the interference determination (see FIG. 16).

[0120] Also, when the posture of the second arm region 132 is a non-interference posture in which the second arm region 132 cannot reach the tool region F when the arm is deployed, the second arm region 132 is excluded from the target of interference determination. The second arm region 132 is made the target of interference determination only when the posture of the second arm region 132 is not a non-interference posture (see Fig. 17).

[0121] Also, first, interference determination in the XZ plane, that is, two-dimensional interference determination is performed. Only when it is determined that there may be interference in the two-dimensional interference determination, interference determination with the YZ plane and the XY plane added is performed. That is, in the two-dimensional determination, three-dimensional determination is performed only when there may be interference, so the amount of calculation can be reduced. By reducing the amount of calculation, the position of the moving arm can be sequentially calculated, and interference determination processing can be realized in real time.

[0122] The embodiments disclosed this time should be considered as illustrative in all respects and not restrictive. The technical features described in each embodiment can be combined with each other, and the scope of the present invention is intended to include all changes within the scope of the claims and the scope equivalent to the claims.

Explanation of Reference Numerals

[0123] 1 Machine tool 6 Tool magazine 7 Tool 10 Control device 10a CPU 10b RAM 10c Storage unit 16 Workpiece 20 Transfer device

Claims

1. In a machine tool having a tool magazine and a control device that controls the operation of a transfer device having an arm and that carries workpieces into and out of the machine tool, a tool area calculation unit that calculates a tool area indicating the area of a tool mounted on the tool magazine, and an arm area calculation unit that calculates an arm area indicating the area of the arm; an interference determination unit that determines whether or not the tool area calculated by the tool area calculation unit and the arm area calculated by the arm area calculation unit interfere with each other; a stop unit that stops the transfer device when the interference determination unit determines that the arm area interferes with the tool area; and the interference determination unit includes a first determination unit that determines whether or not an end point on the tool area side in the arm area is at a first interference possible position where it can interfere with the boundary of the tool area; and a second determination unit that determines whether or not an end point on the arm area side in the tool area is at a second interference possible position where it can interfere with the boundary of the arm area; and when the first determination unit determines that the end point on the tool area side in the arm area is not at the first interference possible position and the second determination unit determines that the end point on the arm area side in the tool area is not at the second interference possible position, it is determined that the arm area does not interfere with the tool area; the interference determination unit includes a third determination unit that determines whether or not the arm area and the tool area overlap when the first determination unit determines that the end point on the tool area side in the arm area is at the first interference possible position, or when the second determination unit determines that the end point on the arm area side in the tool area is at the second interference possible position; when the third determination unit determines that the arm area and the tool area do not overlap, a fourth determination unit that determines whether or not the arm area and the tool area interfere with each other based on a first condition corresponding to the first interference possible position or a second condition corresponding to the second interference possible position; when the third determination unit determines that the arm area and the tool area overlap, a fifth determination unit that determines whether or not the arm area and the tool area interfere with each other based on a third condition different from the first condition and the second condition; and the first condition is whether or not, in the second direction, the end point on the tool area side in the arm area is separated from the surface of the tool area that overlaps the arm area on a plane determined by a first direction axis and a third direction axis when the tool area and the arm area overlap on the plane; The second condition is that when the tool area and the arm area overlap on the plane defined by the first direction axis and the third direction axis, it is whether or not the coordinates of the corner of the tool area exist on the line segment between the two vertices of the arm area in the third direction. The third condition is that when the tool area and the arm area overlap on the plane defined by the second direction axis and the third direction axis, corresponding to the coordinates of the minimum second direction axis in the arm area, it is whether or not the coordinates of the maximum third direction axis in the tool area are smaller than the coordinates of the minimum third direction axis at the coordinates of the minimum second direction axis in the arm area. Control device.

2. A tool area determination unit that determines whether or not the tool area is arranged at a non-interference position that cannot be reached by the arm area when the arm is deployed; When the tool area determination unit determines that the tool area is arranged at the non-interference position, the tool area is excluded from the target of interference determination, and when the tool area determination unit determines that the tool area is not arranged at the non-interference position, the tool area is determined as the target of interference determination The first determination unit The control device according to claim 1, comprising:

3. The arm includes a first arm and a second arm. A door that can be opened and closed is provided between the arm and the tool magazine. When the door is open, the first arm is arranged adjacent to the tool magazine. A non-interference determination unit that determines whether or not the second arm is located on the opposite side of the tool magazine from the first arm; When the non-interference determination unit determines that the second arm is located on the opposite side of the tool magazine from the first arm, the arm area is excluded from the target of interference determination, and when the non-interference determination unit determines that the second arm is located on the tool magazine side from the first arm, the arm area is determined as the target of interference determination. The second determination unit The control device according to claim 1 or 2, comprising:

4. A working device including the control device according to any one of claims 1 to 3.

5. In a control method for controlling the operation of a transfer device having an arm that has a tool magazine and carries in and out a workpiece with respect to the working machine, Calculating a tool area indicating the area of the tool mounted on the tool magazine; Sequentially calculating an arm area indicating the area of the arm; When the arm enters the working machine, determining whether or not the calculated tool area and the calculated arm area interfere with each other. When it is determined that the arm region interferes with the tool region, stop the transfer device. In the determination of whether or not the arm region interferes with the tool region, determine whether or not the end point on the tool region side in the arm region is at a first interference possible position where it can interfere with the boundary of the tool region, determine whether or not the end point on the arm region side in the tool region is at a second interference possible position where it can interfere with the boundary of the arm region, When it is determined that the end point on the tool region side in the arm region is not at the first interference possible position and the end point on the arm region side in the tool region is not at the second interference possible position, determine that the arm region does not interfere with the tool region, When it is determined that the end point on the tool region side in the arm region is at the first interference possible position, or when it is determined that the end point on the arm region side in the tool region is at the second interference possible position, determine whether or not the arm region and the tool region overlap, When it is determined that the arm region and the tool region do not overlap, determine whether or not the arm region and the tool region interfere based on a first condition corresponding to the first interference possible position or a second condition corresponding to the second interference possible position, When it is determined that the arm region and the tool region overlap, determine whether or not the arm region and the tool region interfere based on a third condition different from the first condition and the second condition, The first condition is whether, when the tool region and the arm region overlap on a plane defined by a first direction axis and a third direction axis, in the second direction, the end point on the tool region side in the arm region is separated from the surface of the tool region that overlaps the arm region on the plane, The second condition is whether, when the tool region and the arm region overlap on a plane defined by the first direction axis and the third direction axis, in the third direction, the coordinates of the corner of the tool region exist on the line segment between the two vertices of the arm region, The third condition is whether, when the tool region and the arm region overlap on a plane defined by a second direction axis and a third direction axis, the coordinate of the maximum third direction axis in the tool region is smaller than the coordinate of the minimum third direction axis at the coordinate of the minimum second direction axis in the arm region corresponding to the minimum second direction axis coordinate in the arm region, Control method.

6. In a computer program executable by a control device that controls the operation of a transfer device having an arm and performs loading and unloading of a workpiece to and from a machine tool having a tool magazine, in the control device, calculate a tool area indicating the area of the tool mounted on the tool magazine, sequentially calculate an arm area indicating the area of the arm, when the arm enters the machine tool, determine whether the calculated tool area and the calculated arm area interfere with each other, when it is determined that the arm area interferes with the tool area, stop the transfer device, in the determination as to whether the arm area interferes with the tool area, determine whether the end point on the tool area side in the arm area is at a first interference possible position where it can interfere with the boundary of the tool area, determine whether the end point on the arm area side in the tool area is at a second interference possible position where it can interfere with the boundary of the arm area, when it is determined that the end point on the tool area side in the arm area is not at the first interference possible position and the end point on the arm area side in the tool area is not at the second interference possible position, determine that the arm area does not interfere with the tool area, when it is determined that the end point on the tool area side in the arm area is at the first interference possible position, or when it is determined that the end point on the arm area side in the tool area is at the second interference possible position, determine whether the arm area and the tool area overlap, when it is determined that the arm area and the tool area do not overlap, determine whether the arm area and the tool area interfere with each other based on a first condition corresponding to the first interference possible position or a second condition corresponding to the second interference possible position, when it is determined that the arm area and the tool area overlap, determine whether the arm area and the tool area interfere with each other based on a third condition different from the first condition and the second condition, the first condition is whether, when the tool area and the arm area overlap on a plane defined by a first direction axis and a third direction axis, in a second direction, the end point on the tool area side in the arm area is separated from the surface of the tool area overlapping the arm area on the plane, the second condition is whether, when the tool area and the arm area overlap on a plane defined by the first direction axis and the third direction axis, in a third direction, the coordinates of the corner of the tool area exist on a line segment between two vertices of the arm area, The third condition is that when the tool region and the arm region overlap on the plane defined by the second direction axis and the third direction axis, it corresponds to the coordinate of the minimum second direction axis in the arm region, and whether the coordinate of the maximum third direction axis in the tool region is smaller than the coordinate of the minimum third direction axis at the coordinate of the minimum second direction axis in the arm region. A computer program for executing processing.

Citation Information

Patent Citations

  • Method of interference check for robot

    JP1999254379A

  • Numerical control apparatus

    JP2005128686A

  • Control system, sub-controller and control method

    JP2019053439A

  • Arithmetic processing device, machining system, arithmetic processing method and computer program

    JP2019067153A

  • Method of controlling a gear cutting machine and gear cutting machine

    US20150134102A1