Robot system and robot control method for adjusting position of coolant nozzle
09902070 ยท 2018-02-27
Assignee
Inventors
Cpc classification
B23Q11/1076
PERFORMING OPERATIONS; TRANSPORTING
G05B2219/50248
PHYSICS
B23Q17/249
PERFORMING OPERATIONS; TRANSPORTING
Y10S901/09
GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
Y10S901/47
GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
International classification
B23Q17/24
PERFORMING OPERATIONS; TRANSPORTING
B23Q11/10
PERFORMING OPERATIONS; TRANSPORTING
Abstract
A robot system which can adjust the position of a coolant nozzle at a lower cost, that is, a robot system which comprises a robot, a robot controller which controls the operation of the robot, and a notification part which notifies the type of the workpiece which is processed by the machine tool to the robot controller. The robot controller determines the target position of the coolant nozzle with respect to the workpiece to be processed based on the type of the workpiece which is obtained from the notification part and makes the coolant nozzle move by the robot so as to place the coolant nozzle at the target position.
Claims
1. A robot system for adjusting a position of a coolant nozzle provided at a machine tool, the robot system comprising: a robot; a robot controller configured to control an operation of the robot; and a notification part configured to notify the robot controller of a type of a workpiece to be processed by the machine tool, wherein the robot controller is configured to: determine a target position of the coolant nozzle with respect to the workpiece when processing, based on the type of the workpiece acquired from the notification part; and control the robot to move the coolant nozzle to arrange the coolant nozzle at the target position, and the robot is configured to perform both adjusting the position of the coolant nozzle and changing the workpiece.
2. The robot system according to claim 1, wherein the robot controller is further configured to: calculate a difference between the target position and a current position of the coolant nozzle; and control the robot to move the coolant nozzle so that the calculated difference becomes smaller.
3. The robot system according to claim 2, further comprising: an imaging part, wherein the robot controller is further configured to identify the current position of the coolant nozzle based on an image of the coolant nozzle imaged by the imaging part, and calculate the difference.
4. The robot system according to claim 1, further comprising: an imaging part, wherein the notification part is configured to identify the type of the workpiece based on an image of the workpiece imaged by the imaging part, and notify the robot controller of the identified type of the workpiece.
5. The robot system according to claim 3, wherein the imaging part is mounted at a robot arm of the robot.
6. The robot system according to claim 1, further comprising: a storage which pre-stores the target position in association with the type of the workpiece, wherein the robot controller is further configured to read out from the storage the target position corresponding to the type of the workpiece acquired from the notification part.
7. The robot system according to claim 1, wherein the notification part is built in an external device or a host controller connected to the robot controller.
8. A robot control method of adjusting a position of a coolant nozzle provided at a machine tool by a robot, the robot control method comprising: acquiring a type of a workpiece to be processed by the machine tool; determining a target position of the coolant nozzle with respect to the workpiece set at the machine tool, based on the acquired type of the workpiece; moving the coolant nozzle by the robot to arrange the coolant nozzle at the target position; and changing the workpiece by the robot.
9. A robot system for adjusting a position of a coolant nozzle provided at a machine tool, the robot system comprising: a robot; a robot controller configured to control an operation of the robot; and a notification part configured to notify the robot controller of a type of workpiece which is predetermined in accordance with a feature of a workpiece to be processed by the machine tool, wherein the robot controller is configured to: based on the type of workpiece acquired from the notification part, determine a target position of the coolant nozzle with respect to the workpiece, wherein a coolant from the coolant nozzle located at the target position is dischargeable on a processing point where the machine tool processes the workpiece; and control the robot to move the coolant nozzle to arrange the coolant nozzle at the target position.
10. A robot control method of adjusting a position of a coolant nozzle provided at a machine tool by a robot, the robot control method comprising: acquiring a type of workpiece which is predetermined in accordance with a feature of a workpiece to be processed by the machine tool; based on the acquired type of workpiece, determining a target position of the coolant nozzle with respect to the workpiece, wherein a coolant from the coolant nozzle located at the target position is dischargeable on a processing point where the machine tool processes the workpiece; and moving the coolant nozzle by the robot to arrange the coolant nozzle at the target position.
Description
BRIEF DESCRIPTION OF THE DRAWINGS
(1)
(2)
(3)
(4)
(5)
(6)
(7)
(8)
(9)
(10)
(11)
(12)
DETAILED DESCRIPTION
(13) Below, embodiments of the invention will be explained in detail based on the drawings. First, referring to
(14) The robot system 10 includes a robot 12, a robot controller 14, a notification part 16, an imaging part 18, and a storage 20. The robot 12 is e.g. a vertical multi-articulated robot, and includes a robot base 22, a swivel drum 24, a robot arm 26, and a robot hand 28. The robot base 22 is fixed to a floor of a work cell. The swivel drum 24 is attached to the robot base 22 so as to be able to swivel about the vertical axis.
(15) The robot arm 26 includes a lower arm 30 rotatably attached to the swivel drum 24, and a forearm 32 rotatably attached to the distal end of the lower arm 30. The robot hand 28 is attached to the distal end of the forearm 32 via a wrist 34. The robot hand 28 can grip and release an object.
(16) In this embodiment, the robot controller 14 and storage 20 are built in the robot control device 36. The robot controller 14 sends commands to servo motors (not shown) built in the robot 12 so as to control the operation of the robot 12.
(17) The storage 20 is comprised of e.g. an electrically erasable and programmable nonvolatile memory such as EEPROM, or a random access memory capable of being read out or written on at a high speed such as DRAM or SRAM.
(18) The imaging part 18 is mounted at the robot arm 26. The imaging part 18 includes an imaging element comprised of e.g. a CCD or CMOS sensor. The imaging part 18 converts an image of an object which passes through a lens into an electrical signal, and outputs it as image data.
(19) The imaging part 18 images a coolant nozzle 62 and workpiece W explained below in accordance with a command from the robot controller 14, and transmits the image data to the robot controller 14.
(20) In this embodiment, a PC (personal computer) 38 as an external device installed outside of the robot control device 36 performs the function of the notification part 16. Note that, the function of the notification part 16 will be explained later.
(21) The robot controller 14 is communicatively connected to the imaging part 18, storage 20, and PC 38 via a bus 40.
(22) Next, the machine tool 50 will be explained. The machine tool 50 processes the workpiece W set on the jig J. The machine tool 50 includes a spindle 52, a tool 54, a spindle drive part 56, a machine tool controller 58, and coolant nozzle 62. The spindle 52 extends in the vertical direction, and holds the tool 54 at its bottom end.
(23) The machine tool controller 58 directly or indirectly controls each component of the machine tool 50. The machine tool controller 58 is communicatively connected to the robot controller 14. The robot controller 14 and machine tool controller 58 communicate with each other so as to execute the process on the workpiece W.
(24) The spindle drive part 56 includes e.g. a servo motor, and moves the spindle 52 in the vertical direction in accordance with a command from the machine tool controller 58. Further, the spindle drive part 56 rotates the spindle 52 about the vertical axis in accordance with a command from the machine tool controller 58.
(25) The coolant nozzle 62 is attached to a spindle head (not shown) of the machine tool 50 via an attachment 60. The spindle head is fastened to the work cell, and holds the spindle 52 so as to be movable in the vertical direction.
(26) In this embodiment, the coolant nozzle 62 is a hollow tubular member extending along the axis O.sub.1, and is rotatably attached to the front end 60a of the attachment 60 via a rotary shaft 64.
(27) The rotary shaft 64 extends in the front-rear direction, and the coolant nozzle 62 can rotate about the rotary shaft 64. The coolant nozzle 62 is connected to a coolant supply device (not shown) installed outside of the machine tool 50. The coolant supplied from the coolant supply device passes through the inside of the coolant nozzle 62, and is discharged from the discharge port 62a provided at the front end of the coolant nozzle 62.
(28) Next, the operation of the machine tool 50 will be explained. When processing the workpiece W, the machine tool controller 58 sends a command to the spindle drive part 56 so as to downwardly move the spindle 52 toward the workpiece W. As a result, the front end of the tool 54 contacts the upper surface of the workpiece W at the processing point P.
(29) When processing the workpiece W, it is necessary to supply the coolant to the processing point P. Therefore, the coolant nozzle 62 must be suitably positioned with respect to the workpiece W so that the coolant discharged from the coolant nozzle 62 impinges on the processing point P when processing the workpiece W.
(30) In this embodiment, the robot system 10 adjusts the position of the coolant nozzle 62 by means of the robot 12, in order to appropriately position the coolant nozzle 62 with respect to the workpiece W.
(31) Below, referring to
(32) At step S1, the robot controller 14 acquires the type of the workpiece W from the notification part 16. For example, the type of the workpiece W is pre-set by the user in accordance with the dimension or shape of the workpiece before processing. As an example, the types of workpiece W are classified as in the table shown below, in accordance with the dimension and shape of the workpiece W before processing.
(33) TABLE-US-00001 TABLE 1 Type of workpiece Type A Type B Type C Shape Columnar Square-colum- Rectangular shape nar shape plate shape Height in verti- 50 mm 80 mm 2 mm cal direction
(34) The user operates the PC 38 to input the type of the workpiece W to be processed. The PC 38 functions as the notification part 16 so as to notify the robot controller 15 of information relating to the type of the workpiece W designated by the user.
(35) At step S2, the robot controller 14 determines the target position of the coolant nozzle 62 with respect to the workpiece W, based on the type of the workpiece W received from the PC 38. The target position corresponds to a position of the coolant nozzle 62 with respect to the workpiece W in which the coolant discharged from the coolant nozzle 62 can impinge on the processing point P.
(36) The state where the coolant nozzle 62 is arranged at the target position is shown in
(37) The injection path of the coolant A discharged from the coolant nozzle 62 depends on the flow rate of the discharged coolant (i.e., the supply pressure of the coolant by the coolant supply device), and on the inclined angle of the coolant nozzle 62 with respect to the virtual axis O.sub.2.
(38) Therefore, by experimentally obtaining in advance the relationship among the flow rate of the coolant, the inclined angle , and the injection path of the coolant in these conditions, it is possible to feed the coolant from the coolant nozzle 62 to the desired position.
(39) For example, if the type of the workpiece W is set by the user as shown in the following Table 1, since the types A to C have respectively different heights in the vertical direction, the coordinates of the processing point P are different among the types A to C.
(40) Therefore, the target positions of the coolant nozzle 62, i.e., the angles .sub.t, for the types A to C are different. In this embodiment, the storage 20 pre-stores the relationship between the type of the workpiece W and the angle .sub.t. For example, the storage 20 pre-stores a data table shown below.
(41) TABLE-US-00002 TABLE 2 Type of workpiece Type A Type B Type C Angle .sub.t 45 48 10
(42) The robot controller 14 reads out from the storage 20 the angle .sub.t corresponding to the type of the workpiece W received from the PC 38, and determines the position of the coolant nozzle 62 corresponding to the read-out angle .sub.t as the target position of the coolant nozzle 62.
(43) At step S3, the robot controller 14 arranges the coolant nozzle 62 at the target position determined at step S2. This step S3 will be explained with reference to
(44) After starting step S3, at step S11, the robot controller 14 images the coolant nozzle 62. Specifically, the robot controller 14 operates the robot 12 so as to move the imaging part 18 to rear side of the coolant nozzle 62.
(45) Then, the robot controller 14 sends a command to the imaging part 18 so as to image the coolant nozzle 62 from rear side. The imaging part 18 sends the image data of the coolant nozzle 62 to the robot controller 14.
(46) At step S12, the robot controller 14 calculates the difference between the target position determined at step S2 and the current position of the coolant nozzle 62. For example, assuming that the coolant nozzle 62 is arranged at the current position indicated by the solid line P.sub.0 in
(47) The axis O.sub.3 of the coolant nozzle 62 arranged at the current position is inclined with respect to the virtual axis O.sub.2 by an angle .sub.0. In this embodiment, the robot controller 14 calculates the angle .sub.0 based on the image data of the coolant nozzle 62 imaged at step S11 and on the coordinate and visual line data of the imaging part 18 at step S11. Then, the robot controller 14 calculates the difference .sub.0(=.sub.t.sub.0) between the angle .sub.t and the angle .sub.0.
(48) At step S13, the robot controller 14 moves the coolant nozzle 62 by the robot 12. Specifically, the robot controller 14 sends commands to the servo motors built in the robot 12 so as to move the robot hand 28 to the position of the coolant nozzle 62 and grip the coolant nozzle 62.
(49) For example, the robot controller 14 moves the robot hand 28 to the position of the coolant nozzle 62 based on the image data of the coolant nozzle 62 imaged at step S11 and on the coordinate and visual line data of the imaging part 18.
(50) Then, the robot controller 14 operates the robot hand 28 so as to rotate the coolant nozzle 62 about the rotary shaft 64 in a direction where the difference .sub.0 calculated at step S12 becomes smaller (in this embodiment, the clockwise direction as seen from front side of
(51) At step S14, the robot controller 14 sends a command to the imaging part 18 so as to image the coolant nozzle 62, similar as step S11.
(52) At step S15, the robot controller 14 calculates the difference between the current position of the coolant nozzle 62 at this time and the target position, similar as step S12. Specifically, the robot controller 14 calculates the angle .sub.1 at this time, and then calculates the difference .sub.1(=.sub.t.sub.1) between the angle .sub.t and angle .sub.1 based on the image data of the coolant nozzle 62 imaged at step S14.
(53) At step S16, the robot controller 14 determines whether the coolant nozzle 62 is arranged at the target position. Specifically, the robot controller 14 determines whether the difference .sub.1 calculated at step S15 is zero.
(54) When the difference .sub.1 calculated at step S15 is zero, the robot controller 14 determines that the coolant nozzle 62 is arranged at the target position (i.e., determines YES), and proceeds to step S17.
(55) On the other hand, when the difference .sub.1 calculated at step S15 is not zero, the robot controller 14 determines that the coolant nozzle 62 is not arranged at the target position (i.e., determines NO), and returns to step S14.
(56) Note that, at this step S16, the robot controller 14 may determine YES when the difference .sub.1 calculated at step S15 is within the range between predetermined threshold values. For example, assuming that the clockwise direction seen from front side of
(57) At step S17, the robot controller 14 sends commands to the servo motors built in the robot 12 so as to stop the operation of the robot 12, and ends the flow shown in
(58) Referring again to
(59) At step S5, the machine tool controller 58 drives the tool 54 to process the workpiece W. Specifically, the machine tool controller 58 sends a command to the spindle drive part 56 to downwardly move the spindle 52 toward the workpiece W so as to contact the spindle 52 with the workpiece W at the processing point P.
(60) Then, the machine tool controller 58 sends a command to the coolant supply device so as to supply the coolant to the coolant nozzle 62. At this time, since the coolant nozzle 62 is suitably arranged at the target position by step S3, the discharged coolant A can impinge on the processing point P as shown in
(61) At step S6, the robot controller 14 removes the workpiece W from the machine tool 50. Specifically, the robot controller 14 sends commands to the servo motors built in the robot 12 so as to grip the processed workpiece W by the robot hand 28, and convey it to a predetermined location in accordance with the robot program.
(62) At step S7, the robot controller 14 determines whether there is another command for process on workpiece received from the user. When determining that there is another command for process on workpiece (i.e., determining YES), the robot controller 14 proceeds to step S8. On the other hand, when determining that all of the commands for process on workpiece received from the user are executed (i.e., determining NO), the robot controller 14 ends the flow shown in
(63) At step S8, the robot controller 14 determines whether the type of the workpiece W to be processed is changed. Specifically, the robot controller 14 determines whether the type of the workpiece W is changed in above another command for process recognized at step S7.
(64) When determining that the type of the workpiece W is changed (i.e., judging YES), the robot controller 14 returns to step S1. On the other hand, when determining that the type of the workpiece W is not changed (i.e., determining NO), the robot controller 14 returns to step S3.
(65) As explained above, in this embodiment, the coolant nozzle 62 is arranged at the target position by means of the robot 12. According to this configuration, the coolant nozzle 62 can be precisely arranged at the target position, so it is possible to reliably feed the coolant to the processing point P.
(66) Further, in this embodiment, the robot 12 performs the operations of adjusting the position of the coolant nozzle 62 (step S3) and changing the workpiece W (steps S4 and S6). According to this configuration, it is not necessary to additionally provide a drive device for moving the coolant nozzle 62. Therefore, it is possible to simplify the hardware configuration, so it is possible to reduce the costs.
(67) Further, in this embodiment, the robot controller 14 calculates the difference between the target position and current position of the coolant nozzle 62, and arranges the coolant nozzle 62 at the target position based on the difference. It is possible to automatically arrange the coolant nozzle 62 at the target position by programming such operation, which is advantageous for automation of the process on the workpiece W.
(68) Further, in this embodiment, the robot controller 14 calculates the above-mentioned difference based on the image obtained by the imaging part 18. According to this configuration, it is possible to calculate the difference automatically and accurately.
(69) Note that, in the above-mentioned embodiment, the robot controller 14 receives the type of the workpiece W designated by the user via the PC 38 installed outside of the robot control device 36.
(70) However, the robot controller 14 may receive the type of the workpiece W from the host controller. In this case, the host controller is communicatively connected to the robot controller 14, and functions as the notification part 16.
(71) Further, in the above-mentioned embodiment, the imaging part 18 is mounted at the robot arm 26. However, the imaging part 18 may be fixedly arranged at any position in the work cell. For example, when capturing the image shown in
(72) Next, referring to
(73) The robot system 100 includes the robot 12, a robot controller 102, a notification part 104, a first imaging part 106, a second imaging part 108, a third imaging part 109, and the storage 20. In this embodiment, the robot controller 102, notification part 104, and storage 20 are built in the robot control device 36.
(74) Each of the first imaging part 106, second imaging part 108, and third imaging part 109 includes an imaging element such as a CCD or CMOS sensor, similar as the above-mentioned imaging part 18.
(75) The first imaging part 106 and second imaging part 108 are respectively fixed to two predetermined positions in the work cell, and image the coolant nozzle 110 explained below from different angles.
(76) As an example, the first imaging part 106 is arranged at frontward of the coolant nozzle 110, while the second imaging part 108 is arranged upward of the coolant nozzle 110. On the other hand, the third imaging part 109 is fastened to the robot arm 26. The third imaging part 109 images the workpiece W set on the jig J.
(77) The robot controller 102 is communicatively connected to the first imaging part 106, second imaging part 108, third imaging part 109, storage 20, and notification part 104, via the bus 40.
(78) The coolant nozzle 110 is attached to the spindle head (not shown) via the attachment 60. Below, referring to
(79) The coolant nozzle 110 includes a shape memory type multi-articulated arm 112, and a discharge tube 114 provided at the distal end of the multi-articulated arm 112. The multi-articulated arm 112 can arrange the discharge tube 114 provided at the distal end thereof at arbitrary positions. The discharge tube 114 is a hollow tubular member extending along the axis O.sub.4, and has a discharge port 114a at the distal end thereof.
(80) Next, referring to
(81) The operation flow shown in
(82) After starting the operation flow shown in
(83) At step S21, the robot controller 102 sends a command to the third imaging part 109 so as to image the workpiece W set on the jig J at step S4. The third imaging part 109 sends image data of the workpiece W to the robot controller 102.
(84) At step S22, the notification part 104 identifies the type of the workpiece W based on the image of the workpiece W imaged at step S21. As an example, the notification part 104 analyzes the captured image of the workpiece W, and searches for a characteristic point in the image.
(85) The characteristic point is a point which shows an edge of an object or a location in a still image where a significant change in brightness occurs, and which has some sort of change in the still image. The storage 20 pre-stores data of characteristic points of various types of workpiece. Note that, the characteristic points of various workpieces W stored in the storage 20 are searched through based on the image captured by the second imaging part 108 under the same conditions as in step S21.
(86) The notification part 104 compares the characteristic points in the image of the workpiece W imaged at step S21 with the characteristic points of various workpieces pre-stored in the storage 20, and identifies the type of the imaged workpiece W. Then, the notification part 104 notifies the identified type of the workpiece W to the robot controller 102.
(87) At step S23, the robot controller 102 determines the target position of the coolant nozzle 110 with respect to the workpiece W, based on the type of the workpiece W acquired at step S22.
(88) The target position corresponds to a position of the coolant nozzle 110 with respect to the workpiece W in which the coolant discharged from the discharge port 114a of the coolant nozzle 110 can impinge on the processing point P.
(89) The injection path of the coolant discharged from the coolant nozzle 110 according to this embodiment depends on the flow rate of the discharged coolant (i.e., the supply pressure of the coolant by the coolant supply device), on the position of the discharge tube 114, and on the inclined angle of the axis O.sub.4 of the discharge tube 114 with respect to the z-axis.
(90) For example, the position of the discharge tube 114 and the inclined angle of the axis O.sub.4 with respect to the z-axis can be evaluated by a coordinate of an intersection point Q.sub.1 between the axis O.sub.4 and the distal end face of the discharge tube 114, and a coordinate of an intersection point Q.sub.2 between the axis O.sub.4 and the proximal end face of the discharge tube 114.
(91) Therefore, by experimentally obtaining in advance the relationship among the flow rate of the coolant, the coordinates of the intersection points Q.sub.1 and Q.sub.2, and the injection path of the coolant in these conditions, it is possible to feed the coolant from the coolant nozzle 110 to the desired position.
(92) For example, if the types of workpiece W are set as shown in Table 1, the storage 20 pre-stores the coordinates of the intersection points Q.sub.1-t and Q.sub.2-t, at which the coolant discharged from the discharge port 114a can impinge on the processing point P, in association with the types A to C of workpiece W. For example, the storage 20 pre-stores a data table shown below:
(93) TABLE-US-00003 TABLE 3 Type of workpiece Type A Type B Type C Coordinate of (x.sub.11, y.sub.11, z.sub.11) (x.sub.12, y.sub.12, z.sub.12) (x.sub.13, y.sub.13, z.sub.13) point Q.sub.1t Coordinate of (x.sub.21, y.sub.21, z.sub.21) (x.sub.22, y.sub.22, z.sub.22) (x.sub.23, y.sub.23, z.sub.23) point Q.sub.2t
(94) The robot controller 102 reads out from the storage 20 the coordinates of the intersection points Q.sub.1-t and Q.sub.2-t corresponding to the type of the workpiece W identified at step S22, and determines the position of the discharge tube 11 corresponding to the read-out coordinates of the intersection points Q.sub.1-t and Q.sub.2-t as the target position of the coolant nozzle 110.
(95) At step S24, the robot controller 102 arranges the coolant nozzle 110 at the target position determined at step S23. This step S24 will be explained with reference to
(96) After starting step S24, at step S31, the robot controller 102 sends commands to the first imaging part 106 and the second imaging part 108 so as to image the coolant nozzle 110.
(97) Specifically, the first imaging part 106 images the coolant nozzle 110 from frontward of it, and sends the image data to the robot controller 102. Further, the second imaging part 108 images the coolant nozzle 110 from upward of it, and sends the image data to the robot controller 102.
(98) At step S32, the robot controller 102 calculates the difference between the target position determined at step S23 and the current position of the coolant nozzle 110.
(99) Specifically, the robot controller 102 calculates the coordinates of the intersection points Q.sub.1-0 and Q.sub.2-0 of the discharge tube 114 at the current time, based on the image data of the coolant nozzle 110 imaged from two different angles at step S31, on the coordinates of the first imaging part 106 and second imaging part 108, and on the visual line data of the first imaging part 106 and second imaging part 108.
(100) Then, the robot controller 102 calculates the difference Q.sub.1-0 between the coordinate of the intersection point Q.sub.1-t corresponding to the target position and the coordinate of Q.sub.1-0 corresponding to the current position, and the difference Q.sub.2-0 between the coordinate of the intersection point Q.sub.2-t corresponding to the target position and the coordinate of Q.sub.2-0 corresponding to the current position.
(101) At step S33, the robot controller 102 moves the coolant nozzle 110 by the robot 12. Specifically, the robot controller 102 sends commands to the servo motors built in the robot 12 so as to move the robot hand 28 to the position of the discharge tube 114 and grip the discharge tube 114.
(102) Then, the robot controller 102 operates the robot 12 (e.g. the robot hand 28) so as to move the discharge tube 114 in a direction in which the differences Q.sub.1-0 and Q.sub.2-0 calculated at step S32 became smaller.
(103) At step S34, the robot controller 102 sends commands to the first imaging part 106 and second imaging part 108 so as to image the coolant nozzle 110, similar as step S31.
(104) At step S35, the robot controller 102 calculates the difference between the current position of the coolant nozzle 110 at this time and the target position, similar as step S32. Specifically, the robot controller 102 calculates the coordinates of the intersection points Q.sub.1-1 and Q.sub.2-1 of the discharge tube 114 at this time, based on the image data of the coolant nozzle 110 imaged at step S34.
(105) Then, the robot controller 102 calculates the difference Q.sub.1-1 between the coordinate of the intersection point Q.sub.1-t corresponding to the target position and the coordinate of Q.sub.1-1 corresponding to the current position, and the difference Q.sub.2-1 between the coordinate of the intersection point Q.sub.2-t corresponding to the target position and the coordinate of Q.sub.2-1 corresponding to the current position.
(106) At step S36, the robot controller 102 determines whether the coolant nozzle 110 is arranged at the target position. Specifically, the robot controller 102 determines whether the differences Q.sub.1-1 and Q.sub.2-1 calculated at step S35 are zero (or within a range between predetermined threshold values).
(107) When the differences Q.sub.1-1 and Q.sub.2-1 calculated at step S35 are zero (or within range of predetermined threshold value), the robot controller 102 determines that the coolant nozzle 110 is arranged at the target position (i.e., determines YES), and proceeds to step S17.
(108) On the other hand, when the differences Q.sub.1-1 and Q.sub.2-1 calculated at step S35 are not zero (or within the range of the predetermined threshold values), the robot controller 102 determines that the coolant nozzle 110 is not arranged at the target position (i.e., determines NO), and returns to step S34. After the end of step S24, the robot controller 102 sequentially executes steps S5 to S8, similar as the flow shown in
(109) As explained above, according to this embodiment, since the coolant nozzle 110 has a shape memory type multi-articulated arm 112, the discharge tube 114 can be arranged at an arbitrary position. Therefore, the coolant can be fed to an arbitrary position, so a broader range of workpieces W can be processed.
(110) Further, in this embodiment, the coolant nozzle 110 is arranged at the target position by means of the robot 12. According to this configuration, the coolant nozzle 110 can be arranged at the target position with a high precision, so it is possible to reliably feed the coolant to the processing point P.
(111) Further, in this embodiment, the robot 12 performs the operations of adjusting the position of the coolant nozzle 110 (step S24) and changing workpiece W (steps S4 and S6). According to this configuration, it is not necessary to additionally provide a drive device for moving the coolant nozzle 110. Therefore, it is possible to simplify the configuration of the apparatus, so the cost can be lowered.
(112) Further, in this embodiment, the robot controller 102 identifies the type of the workpiece W based on the image of the workpiece W imaged by the third imaging part 109 (step S22). According to this configuration, the robot controller 102 can automatically identify the type of the workpiece W without the user's designation, which is advantageous for automation of the process on the workpiece W.
(113) Note that, in the above-mentioned embodiments, single coolant nozzle 62 or 110 is provided. However, a plurality of coolant nozzles may be provided.
(114) In this case, the robot hand may be configured so as to simultaneously grip the plurality of coolant nozzles. In this case, the robot controller can arrange the coolant nozzles at target positions thereof by an operation flow similar to
(115) Further, in the above-mentioned embodiments, the types of workpiece are defined as shown in Table 1. However, the type of workpiece can be defined in accordance with various parameters, such as the material or hardness of the workpiece W, the coordinate of the processing point P, etc.
(116) Further, in the above-mentioned embodiments, the processing point P is set to the contact point between the tool 54 and workpiece W at the start of processing. However, the processing point P may be set to the front end point of the tool 54 after a predetermined time has elapsed from the start of processing.
(117) Further, in the above-mentioned embodiments, the machine tool 50 processes the workpiece W by the tool 54 which moves in the vertical direction. However, the machine tool may be e.g. a milling machine which machines the outer circumference of a workpiece.
(118) Further, in the embodiment shown in
(119) Further, in the above-mentioned embodiments, the storage 20 is built in the robot control device 36. However, the storage 20 may be provided as an external device separated from the robot control device 36.
(120) Further, in the above-mentioned embodiments, the robot system 10, 100 includes the imaging part 18, 106, 108, 109 and storage 20. However, the imaging part and storage may be excluded from the robot system. Such a robot system 120 is shown in
(121) This robot system 120 includes a robot 122, a robot controller 124 which controls the robot 122, and a notification part 126 which notifies the robot controller 124 of a type of a workpiece to be processed by the machine tool.
(122) In this embodiment, the robot controller 124 acquires from the notification part 126 information of a processing point P included in a processing program, as information of the type of the workpiece.
(123) Then, the robot controller 124 can determine the angle t of the coolant nozzle 62 shown in
(124) Above, embodiments of the invention were used to explain the invention, but the above embodiments do not limit the inventions according to the claims. Further, combinations of the features which are explained in the embodiments of the invention may also be included in the technical scope of the invention. However, not all of the combinations of these features are necessarily essential for the solution of the invention. Further, the fact that the above embodiments can be changed or improved in various ways would be clear to a person skilled in the art.
(125) Further, it should be noted that the operations, routines, steps, stages, and other processing in the system and method in the claims, specification, and drawings, unless particularly clearly indicated by before, in advance of, etc. or the output of prior processing being used for later processing, can be realized in any order. In the flow of operations in the claims, specification, and drawings, even if explained using first, next, then, etc. for convenience, this does not mean the execution in this order is essential.