WO2023042249A1 - 工作機械、制御方法、および制御プログラム - Google Patents

工作機械、制御方法、および制御プログラム Download PDF

Info

Publication number
WO2023042249A1
WO2023042249A1 PCT/JP2021/033695 JP2021033695W WO2023042249A1 WO 2023042249 A1 WO2023042249 A1 WO 2023042249A1 JP 2021033695 W JP2021033695 W JP 2021033695W WO 2023042249 A1 WO2023042249 A1 WO 2023042249A1
Authority
WO
WIPO (PCT)
Prior art keywords
tool
tools
state
magazine
machine
Prior art date
Application number
PCT/JP2021/033695
Other languages
English (en)
French (fr)
Inventor
靖隆 加藤
Original Assignee
Dmg森精機株式会社
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Dmg森精機株式会社 filed Critical Dmg森精機株式会社
Priority to PCT/JP2021/033695 priority Critical patent/WO2023042249A1/ja
Priority to EP21957433.2A priority patent/EP4403299A1/en
Priority to JP2023547956A priority patent/JPWO2023042249A1/ja
Priority to CN202180102304.7A priority patent/CN117999149A/zh
Publication of WO2023042249A1 publication Critical patent/WO2023042249A1/ja

Links

Images

Classifications

    • BPERFORMING OPERATIONS; TRANSPORTING
    • B23MACHINE TOOLS; METAL-WORKING NOT OTHERWISE PROVIDED FOR
    • B23QDETAILS, COMPONENTS, OR ACCESSORIES FOR MACHINE TOOLS, e.g. ARRANGEMENTS FOR COPYING OR CONTROLLING; MACHINE TOOLS IN GENERAL CHARACTERISED BY THE CONSTRUCTION OF PARTICULAR DETAILS OR COMPONENTS; COMBINATIONS OR ASSOCIATIONS OF METAL-WORKING MACHINES, NOT DIRECTED TO A PARTICULAR RESULT
    • B23Q17/00Arrangements for observing, indicating or measuring on machine tools
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B23MACHINE TOOLS; METAL-WORKING NOT OTHERWISE PROVIDED FOR
    • B23QDETAILS, COMPONENTS, OR ACCESSORIES FOR MACHINE TOOLS, e.g. ARRANGEMENTS FOR COPYING OR CONTROLLING; MACHINE TOOLS IN GENERAL CHARACTERISED BY THE CONSTRUCTION OF PARTICULAR DETAILS OR COMPONENTS; COMBINATIONS OR ASSOCIATIONS OF METAL-WORKING MACHINES, NOT DIRECTED TO A PARTICULAR RESULT
    • B23Q17/00Arrangements for observing, indicating or measuring on machine tools
    • B23Q17/09Arrangements for observing, indicating or measuring on machine tools for indicating or measuring cutting pressure or for determining cutting-tool condition, e.g. cutting ability, load on tool
    • B23Q17/0995Tool life management
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B23MACHINE TOOLS; METAL-WORKING NOT OTHERWISE PROVIDED FOR
    • B23QDETAILS, COMPONENTS, OR ACCESSORIES FOR MACHINE TOOLS, e.g. ARRANGEMENTS FOR COPYING OR CONTROLLING; MACHINE TOOLS IN GENERAL CHARACTERISED BY THE CONSTRUCTION OF PARTICULAR DETAILS OR COMPONENTS; COMBINATIONS OR ASSOCIATIONS OF METAL-WORKING MACHINES, NOT DIRECTED TO A PARTICULAR RESULT
    • B23Q3/00Devices holding, supporting, or positioning work or tools, of a kind normally removable from the machine
    • B23Q3/155Arrangements for automatic insertion or removal of tools, e.g. combined with manual handling
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B23MACHINE TOOLS; METAL-WORKING NOT OTHERWISE PROVIDED FOR
    • B23QDETAILS, COMPONENTS, OR ACCESSORIES FOR MACHINE TOOLS, e.g. ARRANGEMENTS FOR COPYING OR CONTROLLING; MACHINE TOOLS IN GENERAL CHARACTERISED BY THE CONSTRUCTION OF PARTICULAR DETAILS OR COMPONENTS; COMBINATIONS OR ASSOCIATIONS OF METAL-WORKING MACHINES, NOT DIRECTED TO A PARTICULAR RESULT
    • B23Q3/00Devices holding, supporting, or positioning work or tools, of a kind normally removable from the machine
    • B23Q3/155Arrangements for automatic insertion or removal of tools, e.g. combined with manual handling
    • B23Q3/157Arrangements for automatic insertion or removal of tools, e.g. combined with manual handling of rotary tools

Definitions

  • the present disclosure relates to a machine tool, a machine tool control method, and a machine tool control program.
  • Patent Document 1 discloses a tool replacement time display device having a function of displaying the tool replacement time.
  • the tool change timing display device determines the tool change timing according to the workload of tool change.
  • the tool change time display device can be used to "change the cutting tools systematically and efficiently even if there are a large number of cutting tools to be replaced on a line with multiple pieces of equipment, and prevent equipment stoppages due to unreplaced cutting tools.” prevent”.
  • Patent Literature 1 does not disclose the technology.
  • a machine tool includes a magazine capable of holding a plurality of tools, a machine body for machining a workpiece using at least one of the plurality of tools, and a controller for controlling the machine.
  • the control unit executes a process of acquiring tool information regarding the plurality of tools.
  • the tool information defines a tool type and a tool state for each of the plurality of tools.
  • the states include an abnormal state and a normal state.
  • the control unit further performs a process of determining, as a recovery candidate, the tool in the abnormal state for which no tool of the same type in the normal state exists in the magazine, and Execute the defined process.
  • the machine tool further includes a drive section for driving the magazine.
  • the predetermined process includes a process of controlling the drive unit to move the recovery candidate tool to a predetermined position.
  • the machine tool further includes a display unit.
  • the predetermined process includes a process of displaying information about the recovery candidate tool on the display unit.
  • the abnormal condition includes a damaged condition indicating that the tool is damaged and an end-of-life condition indicating that the tool has reached the end of its life.
  • the damaged tool for which the same type of tool in the normal state does not exist in the magazine is compared with the tool in the expired state in which the same type of tool in the normal state does not exist in the magazine. are also preferentially determined as the collection candidates.
  • the abnormal state further includes a life warning state indicating that the tool's life has not expired and the remaining life of the tool is less than a predetermined threshold.
  • the tool in the life-expired state in which the same type of tool in the normal state does not exist in the magazine is the tool in the life warning state in which the same type of tool in the normal state does not exist in the magazine. are determined as the collection candidates preferentially.
  • the abnormal tool for which the same type of tool in the normal state does not exist in the magazine It is determined as the collection candidate with priority over the tool in the abnormal state.
  • the machine tool includes a magazine capable of holding a plurality of tools, and a machine body for machining a workpiece using at least one of the plurality of tools.
  • the control method includes obtaining tool information about the plurality of tools.
  • the tool information defines a tool type and a tool state for each of the plurality of tools.
  • the states include an abnormal state and a normal state.
  • the control method further comprises the step of determining, as a recovery candidate, the tool in the abnormal state for which no tool of the same type in the normal state exists in the magazine, based on the tool information; and a step of executing a defined process.
  • the machine tool includes a magazine capable of holding a plurality of tools, and a machine body for machining a workpiece using at least one of the plurality of tools.
  • the control program causes the machine tool to perform a step of acquiring tool information regarding the plurality of tools.
  • the tool information defines a tool type and a tool state for each of the plurality of tools.
  • the states include an abnormal state and a normal state.
  • the control program further instructs the machine tool to determine, based on the tool information, the abnormal tool for which no tool of the same type in the normal state exists in the magazine as a recovery candidate; Predetermined processing for the candidate tool is executed.
  • FIG. 4 is a diagram schematically showing a process of determining collection candidates from tools held in a magazine; It is a figure showing an example of functional composition of a machine tool. It is a figure which shows an example of the data structure of tool information. It is a figure which shows an example of a collection
  • FIG. 4 is a diagram schematically showing a process of determining collection candidates from tools held in a magazine; It is a figure showing an example of functional composition of a machine tool. It is a figure which shows an example of the data structure of tool information. It is a figure which shows an example of a collection
  • FIG. 4 is a diagram schematically showing a process of determining collection candidates from tools held in a magazine; It is
  • FIG. 2 is a diagram showing an example of the hardware configuration of a CPU (Central Processing Unit) unit; It is a figure which shows an example of the hardware constitutions of CNC (Computer Numerical Control) unit. It is a figure which shows an example of the hardware constitutions of a control panel. 4 is a flow chart showing part of the processing executed by the control unit of the machine tool;
  • CPU Central Processing Unit
  • CNC Computer Numerical Control
  • FIG. 1 is a diagram showing the appearance of a machine tool 100. As shown in FIG.
  • Machine tool as used in this specification is a concept that includes various devices equipped with the function of machining a workpiece.
  • the machine tool 100 may be a horizontal machining center or a vertical machining center.
  • machine tool 100 may be a lathe, an additional processing machine, or other cutting or grinding machine.
  • the machine tool 100 has a tool storage section 40A and a processing machine main body 40B.
  • 40 A of tool storage parts and the processing machine main body 40B are compartmentalized by the cover.
  • a magazine 150 and an ATC (Automatic Tool Changer) 160 are provided in the tool storage section 40A.
  • a main shaft 170 is provided in the processing machine main body 40B.
  • the processing machine body 40B uses at least one of the multiple tools held in the magazine 150 to process the workpiece. More specifically, the machine tool 100 drives the magazine 150 to move one tool corresponding to the machining process (hereinafter also referred to as "next tool”) to the first tool change position. The machine tool 100 also drives the spindle 170 to move the tool attached to the spindle 170 (hereinafter also referred to as "used tool") to the second tool change position. After that, the ATC 160 replaces the next used tool waiting at the first tool changing position with the used tool waiting at the second tool changing position. Tools are exchanged through a door D provided in a partition between the processing machine main body 40B and the tool storage section 40A. The door D is a sliding door, and is opened and closed by a drive source such as a motor. After that, the spindle 170 processes the workpiece using the mounted next-use tool.
  • the machine tool 100 is provided with an operation panel 400 .
  • the operation panel 400 includes a display 405 for displaying various information regarding machining, and operation keys 406 for accepting various operations for the machine tool 100 .
  • FIG. 2 is a diagram showing an example of a drive mechanism of the machine tool 100. As shown in FIG.
  • the machine tool 100 includes a control section 50, drive sections 110, 120, 130, a magazine 150, an ATC 160, and a spindle 170.
  • the direction of gravity is hereinafter also referred to as the "X-axis direction”.
  • One direction on the horizontal plane perpendicular to the X-axis is also referred to as "Y-axis direction”.
  • a direction perpendicular to both the X-axis direction and the Y-axis direction is referred to as a "Z-axis direction.”
  • control unit 50 means a device that controls the machine tool 100.
  • the device configuration of the control unit 50 is arbitrary.
  • the control section 50 may be composed of a single control unit, or may be composed of a plurality of control units. In the example of FIG. 2, the control section 50 is composed of a CPU unit 200 and a CNC unit 300 .
  • CPU unit 200 and CNC unit 300 communicate with each other via bus B, for example.
  • CPU unit 200 is, for example, a PLC (Programmable Logic Controller).
  • the CPU unit 200 controls the driving section 110 according to a predesigned PLC program.
  • the PLC program is written in, for example, a ladder program.
  • the drive unit 110 is a drive mechanism for rotating the magazine 150 .
  • the device configuration of the drive unit 110 is arbitrary.
  • the driving section 110 may be composed of a single driving unit, or may be composed of a plurality of driving units. In the example of FIG. 2, the driving section 110 is composed of a motor driver 111M and a motor 112M.
  • the motor driver 111M drives the magazine 150 according to control instructions from the CPU unit 200.
  • the magazine 150 is provided with a motor 112M.
  • the motor 112M may be a servo motor, a stepping motor, or any other type of motor.
  • the motor driver 111M receives input of the target rotation speed from the CPU unit 200 and controls the motor 112M.
  • the motor 112M rotationally drives the magazine 150 according to the output current from the motor driver 111M, and drives the specified next use tool T1 in the magazine 150 to the specified position.
  • Drive unit 120 is a drive mechanism for driving ATC 160 .
  • the device configuration of the drive unit 120 is arbitrary.
  • the driving section 120 may be composed of a single driving unit, or may be composed of a plurality of driving units. In the example of FIG. 2, the driving section 120 is composed of an ATC driver 121A and motors 122A and 122B.
  • the ATC driver 121A is, for example, a two-axis integrated driver, and controls driving of motors 122A and 122B connected to the ATC 160.
  • ATC 160 includes a central shaft 165 and arms 166 .
  • Arm 166 is, for example, a double arm capable of holding two tools at the same time. That is, the arm 166 includes a tool gripping portion 166A extending from the central axis 165 in one direction (for example, the X-axis direction) orthogonal to the axial direction of the central axis 165, and a tool gripping portion 166A extending from the central axis 165 in the direction opposite to the one direction. and an extending tool gripper 166B.
  • Each of the motors 122A and 122B may be a servo motor, a stepping motor, or other types of motors.
  • ATC driver 121A receives, for example, a target rotation speed input for motor 122A and a target rotation speed input for motor 122B from CPU unit 200, and controls motors 122A and 122B.
  • the motor 122A feeds and drives the arm 166 of the ATC 160 according to the output current from the ATC driver 121A, and drives the arm 166 to an arbitrary position in the axial direction of the center shaft 165.
  • the motor 122B rotates the arm 166 of the ATC 160 in accordance with the output current from the ATC driver 121A, and drives the arm 166 to an arbitrary rotation angle with the central axis 165 as the center of rotation.
  • the ATC 160 acquires the tool to be used next T1 from the magazine 150 based on receiving the tool replacement command. After that, the ATC 160 removes the used tool T2 from the spindle 170 and attaches the next tool T1 to the spindle 170 . After that, the ATC 160 stores the used tool T2 pulled out from the spindle 170 in the magazine 150 .
  • the CNC unit 300 Upon receiving a machining start command from the CPU unit 200, the CNC unit 300 starts executing a pre-designed machining program.
  • the machining program is written in, for example, an NC (Numerical Control) program.
  • the CNC unit 300 drives the driving section 130 according to the machining program.
  • the drive unit 130 is a drive mechanism for moving the main shaft 170 .
  • the device configuration of the drive unit 130 is arbitrary.
  • the driving section 130 may be composed of a single driving unit, or may be composed of a plurality of driving units.
  • the driving section 130 is composed of motor drivers 131B, 131C, 131X, 131Y and 131Z and motors 132B, 132C, 132X, 132Y and 132Z.
  • the motor driver 131B sequentially receives input of the target rotational speed from the CNC unit 300 and controls the motor 132B.
  • the motor 132B rotationally drives the main shaft 170 about the Y-axis direction.
  • the motor 132B may be an AC motor, a stepping motor, a servo motor, or any other type of motor.
  • the motor driver 131B calculates the actual rotational speed of the motor 132B from a feedback signal from an encoder (not shown) for detecting the rotational angle of the motor 132B. Then, the motor driver 131B increases the rotation speed of the motor 132B when the calculated actual rotation speed is lower than the target rotation speed, and increases the rotation speed of the motor 132B when the calculated actual rotation speed is higher than the target rotation speed. lower the Thus, the motor driver 131B brings the rotational speed of the motor 132B closer to the target rotational speed while sequentially receiving the feedback of the rotational speed of the motor 132B.
  • the motor driver 131C sequentially receives input of target positions from the CNC unit 300 and controls the motor 132C.
  • the motor 132C rotationally drives the main shaft 170 with the axial direction of the main shaft 170 as the center of rotation.
  • the motor 132C may be an AC motor, a stepping motor, a servo motor, or any other type of motor. Since the method of controlling motor 132C by motor driver 131C is the same as that of motor driver 131B, description thereof will not be repeated.
  • the motor driver 131X sequentially receives input of target positions from the CNC unit 300 and controls the motor 132X.
  • the motor 132X feeds and drives the main shaft 170 to move the main shaft 170 to an arbitrary position in the X-axis direction.
  • the motor 132X may be an AC motor, a stepping motor, a servo motor, or any other type of motor. Since the method of controlling motor 132X by motor driver 131X is the same as that of motor driver 131B, description thereof will not be repeated.
  • the motor driver 131Y sequentially receives input of target positions from the CNC unit 300 and controls the motor 132Y.
  • the motor 132Y feeds and drives the main shaft 170 to move the main shaft 170 to an arbitrary position in the Y-axis direction.
  • the motor 132Y may be an AC motor, a stepping motor, a servo motor, or any other type of motor. Since the method of controlling motor 132Y by motor driver 131Y is the same as that of motor driver 131B, description thereof will not be repeated.
  • the motor driver 131Z sequentially receives input of target positions from the CNC unit 300 and controls the motor 132Z.
  • the motor 132Z feeds and drives the main shaft 170 to move the main shaft 170 to an arbitrary position in the Z-axis direction.
  • the motor 132Z may be an AC motor, a stepping motor, a servo motor, or any other type of motor. Since the method of controlling motor 132Z by motor driver 131Z is the same as that of motor driver 131B, description thereof will not be repeated.
  • FIG. 3 is a diagram schematically showing the process of determining recovery candidates from among the tools held in the magazine 150 described above.
  • the magazine 150 holds various tools used for machining the workpiece.
  • the magazine 150 may hold tools in abnormal condition as well as tools in normal condition.
  • “Abnormal tool” means a tool that is not recommended for use in machining a workpiece.
  • tools in an abnormal state include tools that are damaged, tools that have reached the end of their life due to wear and the like, and tools that have a remaining life equal to or less than a predetermined time.
  • Types of tool damage include, for example, tool deformation due to excessive force, tool edge chipping, and tool breakage.
  • tool in normal state means a tool in a state that can be used for machining a workpiece.
  • a "normal tool” is a tool other than an abnormal tool.
  • a magazine 150 is provided with a plurality of pots for holding tools.
  • the number of pots provided in magazine 150 is arbitrary. In the example of FIG. 3, three pots P1-P3 are shown.
  • the pot P1 holds a tool T1 of tool type "A". It is assumed that the tool T1 is in an abnormal state in which it is not recommended to use it for machining the workpiece.
  • the pot P2 holds a tool T2 of tool type "A". That is, the tool T2 is of the same kind as the tool T1.
  • the tool T2 is in a normal state in which it can be used for machining a workpiece.
  • the pot P3 holds a tool T3 of tool type "B". It is assumed that the tool T3 is in an abnormal state in which it is not recommended to use it for machining the workpiece. Also, it is assumed that there is no normal tool of tool type “B” in the magazine 150 .
  • the machine tool 100 calls the tool T2 instead of the tool T1. can be used to proceed with the machining of the workpiece.
  • the machine tool 100 determines the priority of the tools to be collected according to the presence or absence of substitutable tools.
  • the control unit 50 of the machine tool 100 acquires tool information regarding each tool held in the magazine 150 .
  • the tool information defines at least the type of each tool held in the magazine 150 and the state of each tool.
  • the states include, for example, the above-described normal state and the above-described abnormal state.
  • the control unit 50 determines an abnormal tool for which there is no normal tool of the same type in the magazine 150 as a collection candidate.
  • the control unit 50 preferentially selects the tool T3 for which there is no substitutable tool as a recovery candidate over the tool T1 for which there is a substitutable tool.
  • the control unit 50 executes a predetermined process regarding the recovery candidate tool T3. Details of the processing will be described later.
  • the machine tool 100 can more appropriately determine the priority of the tools to be collected according to the presence or absence of substitutable tools. Thereby, the machine tool 100 can avoid stopping the machining of the workpiece. Alternatively, even if the machining of the work has stopped, the machine tool 100 can restart the machining of the work more quickly.
  • FIG. 4 is a diagram showing an example of the functional configuration of the machine tool 100. As shown in FIG.
  • control unit 50 of the machine tool 100 includes a monitoring unit 52, a determining unit 54, and an executing unit 56 as functional configurations. These configurations will be described in order below.
  • each functional configuration is arbitrary.
  • a part or all of the functional configuration shown in FIG. 4 may be implemented in the above-described CPU unit 200 (see FIG. 2), or may be implemented in the above-described CNC unit 300 (see FIG. 2), It may be mounted on the operation panel 400 (see FIG. 1) described above.
  • the monitoring unit 52 is implemented on the CNC 300 .
  • Each of determination unit 54 and execution unit 56 is implemented in CPU unit 200 or operation panel 400, for example.
  • part of the functional configuration shown in FIG. 4 may be implemented in an external device such as a server.
  • the monitoring unit 52 monitors the state of each tool housed inside the machine tool 100 .
  • the state of each tool is managed in tool information 224 shown in FIG. 5, for example.
  • FIG. 5 is a diagram showing an example of the data structure of the tool information 224. As shown in FIG.
  • the tool information 224 associates the identification information of the tool, the type of the tool, the state of the tool, and the remaining life of the tool for each pot number in the magazine 150 .
  • the pot number defined in the tool information 224 is information for uniquely identifying the storage location within the magazine 150. Typically, the pot number defined in the tool information 224 is pre-assigned to each pot.
  • the tool identification information defined in the tool information 224 is information for uniquely identifying the tool.
  • the identification information is assigned in advance by, for example, setting work by the user.
  • the identification information may be indicated by a tool number such as an ID, or may be indicated by a tool name.
  • the tool type defined in the tool information 224 is information for uniquely identifying the type of tool.
  • the tool type is assigned in advance by, for example, setting work by the user.
  • the tool type may be indicated by a type number such as an ID, or may be indicated by a type name.
  • the monitoring unit 52 monitors the worker's attachment/detachment of tools to/from the magazine 150, and sequentially updates the tool information 224. More specifically, the operator mounts the tool to be mounted on the magazine 150 . A barcode or QR code (registered trademark) reader (not shown) is provided near the position where the tool is attached, and the reader reads the barcode or QR code attached to the tool. read. As a result, the identification information of the tool to be mounted and the type of the tool are read. The monitoring unit 52 writes the read tool information and the read tool type to the tool information 224 after associating the read tool information and the read tool type with the pot number of the mounting location of the tool.
  • QR code registered trademark
  • the tool states defined in the tool information 224 include, for example, the above-described normal state and the above-described abnormal state.
  • Abnormal states include, for example, a "damaged state” indicating that the tool is damaged, an "expired state” indicating that the tool has reached the end of its life, and a state in which the tool has not reached its end of life and the tool has reached the end of its service life. and a "life warning condition” indicating that the remaining life is less than a predetermined threshold.
  • the damage sensor includes a pressure sensor provided on spindle 170 within machine tool 100 .
  • the pressure sensor detects the force applied to the spindle 170 during machining of the workpiece.
  • the monitoring unit 52 monitors the output value of the pressure sensor and determines that excessive force has been applied to the tool based on the fact that the output value exceeds a predetermined value. When the monitoring unit 52 determines that an excessive force is applied to the tool, it determines that the tool may be bent, and changes the state of the tool to "damaged state".
  • the damage sensor includes a tool contour measurement sensor.
  • the measuring sensors are, for example, distance sensors, touch sensors or other sensors capable of detecting the contour of the tool.
  • Machine tool 100 rotates a tool attached to spindle 170 in front of a distance sensor to obtain time-series data representing the outer shape of the tool from the distance sensor.
  • the monitoring unit 52 calculates the difference between the time-series data and a predetermined normal value, and determines that the tool is chipped when the absolute value of the difference result exceeds a predetermined value. When the monitoring unit 52 determines that the tool is chipped, it changes the state of the tool to "damaged state".
  • the damage sensor includes a camera for photographing tools within machine tool 100 .
  • the monitoring unit 52 determines whether or not the tool is damaged by performing predetermined image processing on the image obtained from the camera. When the monitoring unit 52 determines that the tool is damaged, it changes the state of the tool to "damaged state".
  • a trained model is generated in advance by a learning process using a learning data set.
  • the learning data set includes a plurality of learning images showing tools. Each learning image is associated with a label indicating whether or not a normal tool is shown (or a label indicating the type of damage).
  • the internal parameters of the trained model are optimized in advance by learning processing using such a learning data set.
  • CNN convolutional neural network
  • FCN full-layer convolutional neural network
  • support vector machine etc.
  • the monitoring unit 52 sequentially inputs partial images within the rectangular area to the learned model while shifting the rectangular area on the input image obtained from the camera. As a result, the learned model outputs the probability that the damaged tool appears in the input partial image. The monitoring unit 52 determines that a damaged tool is shown in the partial image in which the probability exceeds a predetermined value, and changes the state of the tool to "damaged state".
  • End of life state and “life warning state” are determined based on the machining program 322 of the machine tool 100, for example.
  • the monitoring unit 52 monitors the machining program 322 and determines whether each tool is being used for machining.
  • the monitoring unit 52 counts down the remaining life indicated in the tool information 224 for the tool in use. The remaining life of a new tool is determined in advance for each tool.
  • “Remaining life” here means the amount that can be used until the life of the tool expires.
  • the term “amount” is a concept that includes time, distance and number of times. In other words, the “remaining usable amount of the tool” is the remaining usable time of the tool until the end of the tool life, the remaining movable distance of the tool until the end of the tool life, and the remaining usable amount of the tool until the end of the tool life. It is a concept that includes the remaining usable number of times.
  • the machining program 322 of the machine tool 100 is defined in G code, and includes a tool change command for designating a tool to be mounted on the spindle 170, a drive command for rotating/feeding the spindle 170 and tools, and the like. include.
  • the monitoring unit 52 identifies the type of tool to be used for machining the workpiece based on the tool change command defined in the machining program 322 .
  • the monitoring unit 52 starts counting down the remaining life of the tool based on the execution of the drive command defined in the machining program 322 .
  • the monitoring unit 52 stops counting down the remaining life of the tool based on the execution of the stop command or the last command specified in the machining program 322 .
  • the monitoring unit 52 monitors the remaining life of each tool in the tool information 224 .
  • the monitoring unit 52 changes the state of the tool from “normal state” to "life warning state” in the tool information 224 when the remaining life of the tool falls below a predetermined threshold. In addition, the monitoring unit 52 changes the state of the tool from the "life warning state” to the “life end state” in the tool information 224 based on the fact that the remaining life of the tool has become zero.
  • the determination unit 54 determines a candidate tool to be collected from among the tools held in the magazine 150 according to the presence or absence of a substitutable tool.
  • an abnormal tool in which another normal tool of the same type is present in the magazine 150 will be referred to as an 'alternative abnormal tool'.
  • a tool that does not exist in the magazine 150 is also referred to as a "non-replaceable abnormal tool".
  • the abnormal states include the above-described "damaged state”, the above-described "end of life state”, and the above-described "life warning state”.
  • the determination unit 54 determines the priority of recovery candidate tools according to the recovery rule 226 shown in FIG.
  • FIG. 6 is a diagram showing collection rules 226 as an example.
  • the determining unit 54 determines an unreplaceable abnormal tool as a recovery candidate with priority over a substitutable abnormal tool. As a result, tools in an abnormal state that cannot be replaced are determined as recovery candidates with higher priority.
  • the determination unit 54 determines the priority of recovery candidates according to the tool state.
  • a damaged tool cannot be used for machining a workpiece.
  • tools whose life has expired are not recommended for use, but can still be used for machining. Therefore, damaged tools are preferably replaced preferentially over expired tools.
  • the determining unit 54 determines a damaged tool that cannot be replaced as a recovery candidate with priority over a tool that cannot be replaced and has expired.
  • the determination unit 54 determines the non-replaceable tool whose service life has expired, as a recovery candidate with priority over the non-replaceable tool in the service life warning state.
  • the determination unit 54 also determines the priority of recovery candidates for replaceable tools in an abnormal state.
  • the decision unit 54 decides a replaceable damaged tool as a recovery candidate with priority over a replaceable tool in an expired state.
  • the determining unit 54 determines the substitutable tool in the end of life state as a recovery candidate with priority over the substitutable tool in the life warning state.
  • the execution unit 56 executes a predetermined process for the recovery candidate tool determined by the determination unit 54 .
  • the execution unit 56 controls the above-described driving unit 110 (see FIG. 2) to move the recovery candidate tool to a predetermined position.
  • the control process is executed, for example, based on acceptance of collection operation by the user.
  • the collection operation is received, for example, at the operation panel 400 (see FIG. 1) described above.
  • FIG. 7 is a diagram showing the operation screen 410 of the operation panel 400.
  • FIG. Operation screen 410 is displayed, for example, on display 405 of operation panel 400 .
  • the operation screen 410 includes a display field 430, an automatic call button 440, and a selective call button 441.
  • the display field 430 displays part or all of the above-described tool information 224 (see FIG. 5).
  • the automatic call button 440 is a button for calling the recovery candidate tool determined by the determination unit 54 described above. More specifically, the execution unit 56 selects the tool having the highest recovery priority among the recovery candidate tools determined by the determination unit 54 based on the pressing of the automatic call button 440 on the operation screen 410. identify. Next, the execution unit 56 controls the drive unit 110 (see FIG. 2) described above to drive the identified tool to a predetermined position. After that, the operator can replace the tool moved to the predetermined position with a tool in a normal state.
  • the execution unit 56 controls the drive unit 110 (see FIG. 2) described above to move the tool with the second highest recovery priority among the recovery candidate tools to a predetermined position. After that, the operator replaces the tool moved to the predetermined position with a tool in a normal state.
  • the execution unit 56 moves the recovery candidate tools determined by the determination unit 54 to predetermined positions in order of priority.
  • the operator can preferentially replace an abnormal tool for which there is no substitutable tool.
  • the selection call button 441 is a button for calling a specific tool. The user can call the selected tool from the magazine 150 by selecting the tool information displayed in the display field 430 and pressing the select call button 441 .
  • the recovery candidate tools determined by the determining unit 54 are driven to predetermined positions in order of priority. Only the tools with the highest priority for recovery may be used, or only a predetermined number of tools with higher priority for recovery may be used.
  • FIG. 8 is a diagram showing an operation screen 410A according to the modification.
  • the operation screen 410A shown in FIG. 8 differs from the operation screen 410 shown in FIG. 7 above in that it further includes a display field 431 and an extraction button 442. Other points are the same as operation screen 410 shown in FIG. 7, and therefore description thereof will not be repeated below.
  • the execution unit 56 displays information on the recovery candidate tools determined by the determination unit 54 on the display 405 (display unit).
  • the information is displayed, for example, in display field 431 of operation screen 410A.
  • the information displayed in the display field 431 includes, for example, at least one of the pot number in the magazine 150, tool identification information, tool type, tool status, and remaining life of the tool.
  • the execution unit 56 displays the information about the recovery candidate tools determined by the determination unit 54 in the display field 431 in order of recovery priority.
  • the tool information displayed in the display field 431 is configured to be selectable. The user can call the selected tool from the magazine 150 by selecting the tool information displayed in the display column 431 and pressing the select call button 441 . This allows the user to check the tool information with the higher recovery priority and then perform the tool replacement work.
  • the execution unit 56 may display only one piece of tool information with the highest recovery priority in the display field 431 .
  • the execution unit 56 may display a predetermined number of pieces of tool information having a higher collection priority in the display column 431 .
  • FIG. 9 is a diagram showing an example of the hardware configuration of the CPU unit 200. As shown in FIG.
  • the CPU unit 200 includes a control circuit 201 , a ROM (Read Only Memory) 202 , a RAM (Random Access Memory) 203 , a communication interface 204 and an auxiliary storage device 220 . These components are connected to internal bus 209 .
  • the control circuit 201 is composed of, for example, at least one integrated circuit.
  • An integrated circuit is composed of, for example, at least one CPU, at least one GPU (Graphics Processing Unit), at least one ASIC (Application Specific Integrated Circuit), at least one FPGA (Field Programmable Gate Array), or a combination thereof can be
  • the control circuit 201 controls the operation of the CPU unit 200 by executing various programs such as the control program 222 .
  • the control program 222 is a program for implementing functions related to the functional configurations shown in FIG. 4 described above.
  • the control circuit 201 reads the control program 222 from the auxiliary storage device 220 or the ROM 202 to the RAM 203 based on the reception of the instruction to execute the control program 222 .
  • the RAM 203 functions as a working memory and temporarily stores various data necessary for executing the control program 222 .
  • a communication interface 204 is an interface for performing periodic communication with an external device using a field network.
  • the external device includes, for example, the motor driver 111M (see FIG. 2) and the ATC driver 121A (see FIG. 2).
  • As the field network for example, EtherCAT (registered trademark), EtherNet/IP (registered trademark), CC-Link (registered trademark), CompoNet (registered trademark), or the like is adopted.
  • the auxiliary storage device 220 is, for example, a storage medium such as a hard disk or flash memory.
  • Auxiliary storage device 220 stores control program 222, above-mentioned tool information 224, above-mentioned collection rule 226, and the like.
  • control program 222 the tool information 224, and the collection rule 226 is not limited to the auxiliary storage device 220, but the storage area (eg, cache memory) of the control circuit 201, the ROM 202, the RAM 203, the external device (eg, server) or the like.
  • control program 222 may be provided not as a standalone program but as part of an arbitrary program. In this case, various processes according to the present embodiment are implemented in cooperation with arbitrary programs. Even a program that does not include such a part of modules does not deviate from the gist of control program 222 according to the present embodiment. Furthermore, some or all of the functions provided by control program 222 may be implemented by dedicated hardware. Furthermore, the CPU unit 200 may be configured in the form of a so-called cloud service in which at least one server executes part of the processing of the control program 222 .
  • FIG. 10 is a diagram showing an example of the hardware configuration of the CNC unit 300. As shown in FIG.
  • the CNC unit 300 includes a control circuit 301, a ROM 302, a RAM 303, a communication interface 304, a communication interface 305, a fieldbus controller 306, and an auxiliary storage device 320. These components are connected to internal bus 309 .
  • the control circuit 301 is composed of, for example, at least one integrated circuit.
  • An integrated circuit may comprise, for example, at least one CPU, at least one ASIC, at least one FPGA, or a combination thereof.
  • the control circuit 301 controls the operation of the CNC unit 300 by executing various programs such as the machining program 322 .
  • the machining program 322 is a program for realizing workpiece machining.
  • the control circuit 301 reads the machining program 322 from the ROM 302 to the RAM 303 based on the acceptance of the instruction to execute the machining program 322 .
  • the RAM 303 functions as a working memory and temporarily stores various data necessary for executing the machining program 322 .
  • a LAN, WLAN, Bluetooth (registered trademark), or the like is connected to the communication interface 304 .
  • CNC unit 300 exchanges data with external devices via communication interface 304 .
  • the external device includes, for example, the operation panel 400 and a server (not shown).
  • a communication interface 305 is an interface for realizing communication with an external device.
  • CNC unit 300 exchanges data with external devices via communication interface 305 .
  • the external device includes various drive units (for example, the motor drivers 131B, 131C, 131X to 131Z, etc. described above) for machining a workpiece.
  • the fieldbus controller 306 is a communication unit for realizing communication with various units connected to the fieldbus.
  • An example of a unit connected to the fieldbus is the CPU unit 200 or the like.
  • the auxiliary storage device 320 is, for example, a storage medium such as a hard disk or flash memory.
  • the auxiliary storage device 320 stores a machining program 322 and the like.
  • the storage location of the machining program 322 is not limited to the auxiliary storage device 320, and may be stored in the storage area of the control circuit 301 (eg, cache memory), ROM 302, RAM 303, external device (eg, server), etc. good.
  • FIG. 11 is a diagram showing an example of the hardware configuration of the operation panel 400. As shown in FIG.
  • the operation panel 400 includes a control circuit 401, a ROM (Read Only Memory) 402, a RAM (Random Access Memory) 403, a communication interface 404, a display 405, operation keys 406, and an auxiliary storage device 420. These components are connected to internal bus 409 .
  • the control circuit 401 is composed of, for example, at least one integrated circuit.
  • An integrated circuit may be comprised of, for example, at least one CPU, at least one GPU, at least one ASIC, at least one FPGA, or combinations thereof.
  • the control circuit 401 controls the operation of the operation panel 400 by executing various programs such as the control program 422 .
  • Control program 422 defines commands for controlling operation panel 400 .
  • the control circuit 401 reads the control program 422 from the auxiliary storage device 420 or the ROM 402 to the RAM 403 based on the reception of the instruction to execute the control program 422 .
  • the RAM 403 functions as a working memory and temporarily stores various data necessary for executing the control program 422 .
  • the communication interface 404 is a communication unit for realizing communication using a LAN (Local Area Network) cable, WLAN, Bluetooth (registered trademark), or the like.
  • the operation panel 400 realizes communication with external devices such as the CNC unit 300 described above via the communication interface 404 .
  • the display 405 is, for example, a liquid crystal display, an organic EL display, or other display equipment.
  • the display 405 sends an image signal for displaying an image to the display 405 according to a command from the control circuit 401 or the like.
  • the display 405 is configured by a touch panel, for example, and receives various operations for the machine tool 100 by touch operations.
  • the operation key 406 is composed of a plurality of hardware keys and accepts various user operations on the operation panel 400. A signal corresponding to the pressed key is output to the control circuit 401 .
  • the auxiliary storage device 420 is, for example, a storage medium such as a hard disk or flash memory.
  • Auxiliary storage device 420 stores a control program 422 and the like.
  • the storage location of the control program 422 is not limited to the auxiliary storage device 420, but may be stored in the storage area of the control circuit 401 (for example, cache memory), ROM 402, RAM 403, external equipment (for example, server), or the like.
  • FIG. 12 is a flowchart showing part of the processing executed by control unit 50 of machine tool 100 .
  • the processing shown in FIG. 12 is implemented by the control unit 50 executing the above-described control program 222 (see FIG. 9) and the like. In other aspects, part or all of the processing may be performed by circuit elements or other hardware.
  • step S110 the control unit 50 determines whether or not an operation to extract recovery candidate tools from among the tools held in the magazine 150 has been received.
  • the extraction operation is accepted, for example, based on pressing of the extraction button 442 (see FIG. 8) described above. If control unit 50 determines that an operation for extracting recovery candidate tools has been accepted (YES in step S110), control unit 50 switches control to step S112. Otherwise (NO in step S110), control unit 50 executes the process of step S110 again.
  • the control unit 50 acquires the above-described tool information 224 (see FIG. 5).
  • the tool information 224 defines information for each tool held in the magazine 150 .
  • step S114 the control unit 50 functions as the above-described determination unit 54 (see FIG. 4), and based on the tool information 224 acquired in step S112, selects collection candidates from among the tools held in the magazine 150. Decide on tools. Since the method of determining the recovery candidate tools is as described above, the description thereof will not be repeated.
  • step S116 the control unit 50 functions as the execution unit 56 (see FIG. 4) described above, and displays the tool information related to the recovery candidate tool determined in step S114 in the display field 431 of the operation screen 410A. .
  • step S120 the control unit 50 determines whether or not a call operation has been received for the recovery candidate tool. As an example, the control unit 50 determines that the call operation has been accepted based on the selection of one or more pieces of tool information displayed in the display field 431 and the pressing of the selection call button 441 on the operation screen 410A. do. If control unit 50 determines that a call operation has been received for the collection candidate tool (YES in step S120), control is switched to step S122. Otherwise (NO in step S120), control unit 50 switches control to step S130.
  • step S122 the control unit 50 functions as the execution unit 56 (see FIG. 4) described above, and moves the recovery candidate tool selected in the display field 431 of the operation screen 410A to a predetermined position. After that, the control unit 50 terminates the processing shown in FIG. 12 .
  • step S130 the control unit 50 determines whether or not a cancel operation has been accepted.
  • the cancel operation is accepted, for example, when a cancel button (not shown) provided on the operation screen 410A is pressed. Alternatively, the cancel operation is accepted based on pressing of a button (not shown) for closing the operation screen 410A.
  • control unit 50 determines that a cancel operation has been received (YES in step S130), it ends the processing shown in FIG. Otherwise (NO in step S130), control unit 50 returns the control to step S120.
  • the machine tool 100 acquires the tool information 224 regarding each tool held in the magazine 150 .
  • the tool information 224 defines at least the type of each tool held in the magazine 150 and the state of each tool.
  • the states include, for example, the above-described normal state and the above-described abnormal state.
  • the control unit 50 determines an abnormal tool for which there is no normal tool of the same type in the magazine 150 as a collection candidate. As a result, the control unit 50 preferentially selects a tool for which no substitutable tool exists as a recovery candidate over a tool for which a substitutable tool exists.
  • the machine tool 100 can more appropriately determine the priority of the tools to be collected according to the presence or absence of substitutable tools. As a result, the machine tool 100 can avoid stopping the machining of the workpiece. Alternatively, even if the machining of the work has stopped, the machine tool 100 can restart the machining of the work more quickly.

Landscapes

  • Engineering & Computer Science (AREA)
  • Mechanical Engineering (AREA)
  • Numerical Control (AREA)
  • Automatic Tool Replacement In Machine Tools (AREA)

Abstract

工作機械(100)は、複数の工具を保持することが可能なマガジン(150)と、複数の工具の内の少なくとも1つの工具を用いてワークを加工するための加工機本体(40B)と、工作機械(100)を制御するための制御部(50)とを備える。制御部(50)は、複数の工具に関する工具情報(224)を取得する処理を実行する。工具情報(224)は、複数の工具の各々について工具の種別と工具の状態とを規定している。当該状態は、異常状態と正常状態とを含む。制御部(50)は、さらに、工具情報(224)に基づいて、正常状態である同種の工具がマガジン(150)内に存在しない異常状態の工具を回収候補として決定する処理と、回収候補の工具に関する予め定められた処理とを実行する。

Description

工作機械、制御方法、および制御プログラム
 本開示は、工作機械、工作機械の制御方法、および工作機械の制御プログラムに関する。
 特開2004-130451号公報(特許文献1)は、工具の交換時期を表示する機能を備えた工具交換時期表示装置を開示している。当該工具交換時期表示装置は、工具交換の作業負荷に応じて、工具の交換時期を決定する。これにより、当該工具交換時期表示装置は、「複数の設備が存在するラインで、交換対象の刃具数が多い場合でも、計画的かつ効率的に刃具の交換を行い、刃具未交換による設備停止を防ぐ」。
特開2004-130451号公報
 異常状態の工具が工作機械内にあったとしても、当該工具と同種の正常状態の工具が存在すれば、工作機械は、当該正常な工具を加工に代用することができる。一方で、代用可能な工具が工作機械内に存在しなければ、当該工作機械は、ワークの加工を進めることができない。この場合、工作機械は、新たな工具が装着されるまでワークの加工を停止しなければならない。
 したがって、代用可能な工具の有無に応じて回収対象の工具の優先度をより適切に決定することが望まれている。なお、特許文献1は、当該技術を開示するものではない。
 本開示の一例では、工作機械は、複数の工具を保持することが可能なマガジンと、上記複数の工具の内の少なくとも1つの工具を用いてワークを加工するための加工機本体と、上記工作機械を制御するための制御部とを備える。上記制御部は、上記複数の工具に関する工具情報を取得する処理を実行する。上記工具情報は、上記複数の工具の各々について工具の種別と工具の状態とを規定している。上記状態は、異常状態と正常状態とを含む。上記制御部は、さらに、上記工具情報に基づいて、上記正常状態である同種の工具が上記マガジン内に存在しない上記異常状態の工具を回収候補として決定する処理と、上記回収候補の工具に関する予め定められた処理とを実行する。
 本開示の一例では、上記工作機械は、さらに、上記マガジンを駆動するための駆動部を備える。上記予め定められた処理は、上記回収候補の工具を予め定められた位置に移動するように上記駆動部を制御する処理を含む。
 本開示の一例では、上記工作機械は、さらに、表示部を備える。上記予め定められた処理は、上記回収候補の工具に関する情報を上記表示部に表示する処理を含む。
 本開示の一例では、上記異常状態は、工具が損傷していることを示す損傷状態と、工具の寿命が尽きていることを示す寿命切れ状態とを含む。上記決定する処理は、上記正常状態である同種の工具が上記マガジン内に存在しない上記損傷状態の工具を、上記正常状態である同種の工具が上記マガジン内に存在しない上記寿命切れ状態の工具よりも、優先的に上記回収候補として決定する。
 本開示の一例では、上記異常状態は、さらに、工具の寿命が尽きておらず、かつ、工具の残寿命が所定閾値よりも少ないことを示す寿命警告状態を含む。上記決定する処理では、上記正常状態である同種の工具が上記マガジン内に存在しない上記寿命切れ状態の工具が、上記正常状態である同種の工具が上記マガジン内に存在しない上記寿命警告状態の工具よりも、優先的に上記回収候補として決定される。
 本開示の一例では、上記決定する処理では、上記正常状態である同種の工具が上記マガジン内に存在しない上記異常状態の工具が、上記正常状態である同種の工具が上記マガジン内に存在する上記異常状態の工具よりも、優先的に上記回収候補として決定される。
 本開示の他の例では、工作機械の制御方法が提供される。上記工作機械は、複数の工具を保持することが可能なマガジンと、上記複数の工具の内の少なくとも1つの工具を用いてワークを加工するための加工機本体とを備える。上記制御方法は、上記複数の工具に関する工具情報を取得するステップを備える。上記工具情報は、上記複数の工具の各々について工具の種別と工具の状態とを規定している。上記状態は、異常状態と正常状態とを含む。上記制御方法は、さらに、上記工具情報に基づいて、上記正常状態である同種の工具が上記マガジン内に存在しない上記異常状態の工具を回収候補として決定するステップと、上記回収候補の工具に関する予め定められた処理を実行するステップと備える。
 本開示の他の例では、工作機械の制御プログラムが提供される。上記工作機械は、複数の工具を保持することが可能なマガジンと、上記複数の工具の内の少なくとも1つの工具を用いてワークを加工するための加工機本体とを備える。上記制御プログラムは、上記工作機械に、上記複数の工具に関する工具情報を取得するステップを実行させる。上記工具情報は、上記複数の工具の各々について工具の種別と工具の状態とを規定している。上記状態は、異常状態と正常状態とを含む。上記制御プログラムは、上記工作機械に、さらに、上記工具情報に基づいて、上記正常状態である同種の工具が上記マガジン内に存在しない上記異常状態の工具を回収候補として決定するステップと、上記回収候補の工具に関する予め定められた処理とを実行させる。
 本発明の上記および他の目的、特徴、局面および利点は、添付の図面と関連して理解される本発明に関する次の詳細な説明から明らかとなるであろう。
工作機械の外観を示す図である。 工作機械の駆動機構の一例を示す図である。 マガジンに保持されている工具の中から回収候補を決定する処理を概略的に示す図である。 工作機械の機能構成の一例を示す図である。 工具情報のデータ構造の一例を示す図である。 回収ルールの一例を示す図である。 操作盤の操作画面を示す図である。 変形例に従う操作画面を示す図である。 CPU(Central Processing Unit)ユニットのハードウェア構成の一例を示す図である。 CNC(Computer Numerical Control)ユニットのハードウェア構成の一例を示す図である。 操作盤のハードウェア構成の一例を示す図である。 工作機械の制御部が実行する処理の一部を表わすフローチャートである。
 以下、図面を参照しつつ、本発明に従う各実施の形態について説明する。以下の説明では、同一の部品および構成要素には同一の符号を付してある。それらの名称および機能も同じである。したがって、これらについての詳細な説明は繰り返さない。なお、以下で説明される各実施の形態および各変形例は、適宜選択的に組み合わされてもよい。
 <A.工作機械100>
 まず、図1を参照して、実施の形態に従う工作機械100について説明する。図1は、工作機械100の外観を示す図である。
 本明細書でいう「工作機械」とは、ワークを加工する機能を備えた種々の装置を包含する概念である。工作機械100は、横形のマシニングセンタであってもよいし、立形のマシニングセンタであってもよい。あるいは、工作機械100は、旋盤であってもよいし、付加加工機であってもよいし、その他の切削機械や研削機械であってもよい。
 工作機械100は、工具収納部40Aと、加工機本体40Bとを有する。工具収納部40Aおよび加工機本体40Bは、カバーによって区画化されている。
 工具収納部40Aには、マガジン150と、ATC(Automatic Tool Changer)160とが設けられている。加工機本体40Bには、主軸170が設けられている。
 加工機本体40Bは、マガジン150に保持されている複数の工具の内の少なくとも1つを用いてワークを加工する。より具体的には、工作機械100は、マガジン150を駆動し、加工工程に応じた一の工具(以下、「次使用工具」ともいう。)を第1の工具交換位置に移動する。また、工作機械100は、主軸170を駆動し、主軸170に装着されている工具(以下、「使用済工具」ともいう。)を第2の工具交換位置に移動する。その後、ATC160は、第1の工具交換位置で待機している次使用工具と、第2の工具交換位置で待機している使用済工具とを交換する。工具の交換は、加工機本体40Bと工具収納部40Aとの間の仕切に設けられているドアDを介して行なわれる。ドアDは、スライド式のドアであり、モータなどの駆動源により開閉される。その後、主軸170は、装着された次使用工具を用いてワークを加工する。
 また、工作機械100には、操作盤400が設けられている。操作盤400は、加工に関する各種情報を表示するためのディスプレイ405と、工作機械100に対する各種操作を受け付ける操作キー406とを含む。
 <B.工作機械100の駆動機構>
 次に、図2を参照して、工作機械100の各種構成について説明する。図2は、工作機械100の駆動機構の一例を示す図である。
 図2に示されるように、工作機械100は、制御部50と、駆動部110,120,130と、マガジン150と、ATC160と、主軸170とを含む。
 説明の便宜のために、以下では、重力方向を「X軸方向」とも称する。X軸に直交する水平面上の一方向を「Y軸方向」とも称する。X軸方向およびY軸方向の両方に直交する方向を「Z軸方向」と称する。
 本明細書でいう「制御部50」とは、工作機械100を制御する装置を意味する。制御部50の装置構成は、任意である。制御部50は、単体の制御ユニットで構成されてもよいし、複数の制御ユニットで構成されてもよい。図2の例では、制御部50は、CPUユニット200と、CNCユニット300とで構成されている。
 CPUユニット200およびCNCユニット300は、たとえば、バスBを介して互いに通信を行なう。CPUユニット200は、たとえば、PLC(Programmable Logic Controller)である。
 CPUユニット200は、予め設計されているPLCプログラムに従って、駆動部110を制御する。当該PLCプログラムは、たとえば、ラダープログラムで記述されている。
 駆動部110は、マガジン150を回転駆動するための駆動機構である。駆動部110の装置構成は、任意である。駆動部110は、単体の駆動ユニットで構成されてもよいし、複数の駆動ユニットで構成されてもよい。図2の例では、駆動部110は、モータドライバ111Mと、モータ112Mとで構成されている。
 モータドライバ111Mは、CPUユニット200からの制御指令に従って、マガジン150を駆動する。マガジン150には、モータ112Mが設けられている。モータ112Mは、サーボモータであってもよいし、ステッピングモータであってもよいし、その他の種類のモータであってもよい。
 より具体的な処理として、モータドライバ111Mは、目標回転速度の入力をCPUユニット200から受け、モータ112Mを制御する。モータ112Mは、モータドライバ111Mからの出力電流に従ってマガジン150を回転駆動し、マガジン150内の指定された次使用工具T1を指定された位置に駆動する。
 また、CPUユニット200は、予め設計されているPLCプログラムに従って、駆動部120を制御する。駆動部120は、ATC160を駆動するための駆動機構である。駆動部120の装置構成は、任意である。駆動部120は、単体の駆動ユニットで構成されてもよいし、複数の駆動ユニットで構成されてもよい。図2の例では、駆動部120は、ATCドライバ121Aと、モータ122A,122Bとで構成されている。
 ATCドライバ121Aは、たとえば、2軸一体型のドライバであり、ATC160に接続されるモータ122A,122Bの駆動を制御する。ATC160は、中心軸165と、アーム166とを含む。アーム166は、たとえば、同時に2つの工具を保持できるダブルアームである。すなわち、アーム166は、中心軸165の軸方向に直交する一方向(たとえば、X軸方向)に中心軸165から延出している工具把持部166Aと、当該一方向の反対方向に中心軸165から延出している工具把持部166Bとを有する。
 モータ122A,122Bの各々は、サーボモータであってもよいし、ステッピングモータであってもよいし、その他の種類のモータであってもよい。ATCドライバ121Aは、たとえば、モータ122Aの目標回転速度の入力と、モータ122Bの目標回転速度の入力とのそれぞれをCPUユニット200から受け、モータ122A,122Bのそれぞれを制御する。モータ122Aは、ATCドライバ121Aからの出力電流に従ってATC160のアーム166を送り駆動し、中心軸165の軸方向の任意の位置にアーム166を駆動する。モータ122Bは、ATCドライバ121Aからの出力電流に従ってATC160のアーム166を回転駆動し、中心軸165を回転中心として任意の回転角度にアーム166を駆動する。
 一例として、ATC160は、工具の交換命令を受けたことに基づいて、マガジン150から次使用工具T1を取得する。その後、ATC160は、使用済工具T2を主軸170から抜き取るとともに、次使用工具T1を主軸170に装着する。その後、ATC160は、主軸170から抜き取った使用済工具T2をマガジン150に収納する。
 CNCユニット300は、CPUユニット200からの加工開始指令を受けたことに基づいて、予め設計されている加工プログラムの実行を開始する。当該加工プログラムは、たとえば、NC(Numerical Control)プログラムで記述されている。CNCユニット300は、当該加工プログラムに従って、駆動部130を駆動する。
 駆動部130は、主軸170を移動するための駆動機構である。駆動部130の装置構成は、任意である。駆動部130は、単体の駆動ユニットで構成されてもよいし、複数の駆動ユニットで構成されてもよい。図2の例では、駆動部130は、モータドライバ131B,131C,131X,131Y,131Zと、モータ132B,132C,132X,132Y,132Zとで構成されている。
 モータドライバ131Bは、CNCユニット300から目標回転速度の入力を逐次的に受け、モータ132Bを制御する。モータ132Bは、Y軸方向を中心として主軸170を回転駆動する。モータ132Bは、交流モータであってもよいし、ステッピングモータであってもよいし、サーボモータであってもよいし、その他の種類のモータであってもよい。
 モータ132Bがサーボモータである場合、モータドライバ131Bは、モータ132Bの回転角度を検知するためのエンコーダ(図示しない)のフィードバック信号からモータ132Bの実回転速度を算出する。そして、モータドライバ131Bは、算出した実回転速度が目標回転速度よりも小さい場合にはモータ132Bの回転速度を上げ、算出した実回転速度が目標回転速度よりも大きい場合にはモータ132Bの回転速度を下げる。このように、モータドライバ131Bは、モータ132Bの回転速度のフィードバックを逐次的に受けながらモータ132Bの回転速度を目標回転速度に近付ける。
 モータドライバ131Cは、CNCユニット300から目標位置の入力を逐次的に受け、モータ132Cを制御する。モータ132Cは、主軸170の軸方向を回転中心として主軸170を回転駆動する。モータ132Cは、交流モータであってもよいし、ステッピングモータであってもよいし、サーボモータであってもよいし、その他の種類のモータであってもよい。モータドライバ131Cによるモータ132Cの制御方法は、モータドライバ131Bと同様であるので、その説明については繰り返さない。
 モータドライバ131Xは、CNCユニット300から目標位置の入力を逐次的に受け、モータ132Xを制御する。モータ132Xは、主軸170を送り駆動し、X軸方向の任意の位置に主軸170を移動する。モータ132Xは、交流モータであってもよいし、ステッピングモータであってもよいし、サーボモータであってもよいし、その他の種類のモータであってもよい。モータドライバ131Xによるモータ132Xの制御方法は、モータドライバ131Bと同様であるので、その説明については繰り返さない。
 モータドライバ131Yは、CNCユニット300から目標位置の入力を逐次的に受け、モータ132Yを制御する。モータ132Yは、主軸170を送り駆動し、Y軸方向の任意の位置に主軸170を移動する。モータ132Yは、交流モータであってもよいし、ステッピングモータであってもよいし、サーボモータであってもよいし、その他の種類のモータであってもよい。モータドライバ131Yによるモータ132Yの制御方法は、モータドライバ131Bと同様であるので、その説明については繰り返さない。
 モータドライバ131Zは、CNCユニット300から目標位置の入力を逐次的に受け、モータ132Zを制御する。モータ132Zは、主軸170を送り駆動し、Z軸方向の任意の位置に主軸170を移動する。モータ132Zは、交流モータであってもよいし、ステッピングモータであってもよいし、サーボモータであってもよいし、その他の種類のモータであってもよい。モータドライバ131Zによるモータ132Zの制御方法は、モータドライバ131Bと同様であるので、その説明については繰り返さない。
 <C.概要>
 図3を参照して、工具の回収処理の概略について説明する。図3は、上述のマガジン150に保持されている工具の中から回収候補を決定する処理を概略的に示す図である。
 マガジン150は、ワークの加工に用いられる種々の工具を保持している。マガジン150は、正常状態の工具だけでなく、異常状態の工具を保持している可能性がある。
 「異常状態の工具」とは、ワークの加工に用いることが推奨されない状態の工具を意味する。一例として、異常状態の工具は、損傷が生じている工具と、摩耗などにより寿命が尽きた工具と、残寿命が所定時間以下の工具とを含む。工具の損傷の種類としては、たとえば、過大な力がかかったことによる工具の変形、工具の刃欠け、および工具の折損などが挙げられる。
 これに対して、「正常状態の工具」とは、ワークの加工に用いることが可能な状態の工具を意味する。典型的には、「正常状態の工具」とは、異常状態の工具以外の工具である。
 なお、摩耗などにより寿命が尽きた工具と、残寿命が所定時間以下の工具とは、使用が推奨されないだけで、加工に用いること自体は可能である。そのため、摩耗などにより寿命が尽きた工具と、残寿命が所定時間以下の工具とは、「異常状態の工具」ではなく、「正常状態の工具」とみなされてもよい。
 マガジン150には、工具を保持するための複数のポットが設けられている。マガジン150に設けられているポットの数は、任意である。図3の例では、3つのポットP1~P3が示されている。
 ポットP1は、工具種別「A」の工具T1を保持している。工具T1は、ワークの加工に用いることが推奨されない異常状態であるとする。
 ポットP2は、工具種別「A」の工具T2を保持している。すなわち、工具T2は、工具T1と同種である。工具T2は、ワークの加工に用いることが可能な正常状態である。
 ポットP3は、工具種別「B」の工具T3を保持している。工具T3は、ワークの加工に用いることが推奨されない異常状態であるとする。また、工具種別「B」である正常状態の工具は、マガジン150内に存在しないものとする。
 加工プログラムにおいて工具T3が呼び出された場合には、代用可能な他の工具が存在しないため、作業者は、新たに工具種別「B」の工具をマガジン150に装着する必要がある。この場合、新たな工具の装着が完了するまで、工作機械100は、ワークの加工を進めることができない。
 一方で、加工プログラムにおいて異常状態の工具T1が呼び出された場合には、異常状態の工具T1と同種である正常状態の工具T2が存在するので、工作機械100は、工具T1の代わりに工具T2を用いてワークの加工を進めることができる。
 このように、代用可能な工具が存在しない工具T3の交換の優先度は、代用可能な工具が存在する工具T1の交換の優先度よりも高い。そこで、工作機械100は、代用可能な工具の有無に応じて回収対象の工具の優先度を決定する。
 より具体的には、まず、工作機械100の制御部50は、マガジン150に保持されている各工具に関する工具情報を取得する。当該工具情報は、マガジン150に保持されている各工具の種別と、当該各工具の状態とを少なくとも規定している。当該状態は、たとえば、上述の正常状態と上述の異常状態とを含む。次に、制御部50は、当該取得した工具情報に基づいて、正常状態である同種の工具がマガジン150内に存在しない異常状態の工具を回収候補として決定する。これにより、制御部50は、代用可能な工具が存在する工具T1よりも代用可能な工具が存在しない工具T3を優先して回収候補とする。その後、制御部50は、回収候補の工具T3に関する予め定められた処理を実行する。当該処理の詳細については後述する。
 以上の処理により、工作機械100は、代用可能な工具の有無に応じて回収対象の工具の優先度をより適切に決定することができる。これにより、工作機械100は、ワークの加工が停止することを回避できる。あるいは、たとえワークの加工が停止してしまった場合であっても、工作機械100は、ワークの加工をより早く再開することができる。
 <D.工作機械100の機能構成>
 次に、図4~図7を参照して、工作機械100の機能構成について説明する。図4は、工作機械100の機能構成の一例を示す図である。
 図4に示されるように、工作機械100の制御部50は、機能構成として、監視部52と、決定部54と、実行部56とを含む。以下では、これらの構成について順に説明する。
 なお、各機能構成の配置は、任意である。図4に示される機能構成の一部または全部は、上述のCPUユニット200(図2参照)に実装されてもよいし、上述のCNCユニット300(図2参照)に実装されてもよいし、上述の操作盤400(図1参照)に実装されてもよい。一例として、監視部52は、CNC300に実装される。決定部54および実行部56の各々は、たとえば、CPUユニット200または操作盤400に実装される。他の例として、図4に示される機能構成の一部は、サーバーなどの外部装置に実装されてもよい。
 (D1.監視部52)
 まず、図5を参照して、図4に示される監視部52の機能について説明する。
 監視部52は、工作機械100内に収納されている各工具の状態を監視する。各工具の状態は、たとえば、図5に示される工具情報224において管理する。図5は、工具情報224のデータ構造の一例を示す図である。
 工具情報224は、マガジン150内のポット番号ごとに、工具の識別情報と、当該工具の種別と、当該工具の状態と、当該工具の残寿命とを対応付けている。
 工具情報224に規定されているポット番号は、マガジン150内の収納場所を一意に特定するための情報である。典型的には、工具情報224に規定されているポット番号は、ポットごとに予め割り振られている。
 工具情報224に規定されている工具の識別情報は、工具を一意に特定するための情報である。当該識別情報は、たとえば、ユーザによる設定作業によって予め割り振られている。当該識別情報は、IDなどの工具番号で示されてもよいし、工具名で示されてもよい。
 工具情報224に規定されている工具種別は、工具の種類を一意に特定するための情報である。当該工具種別は、たとえば、ユーザによる設定作業によって予め割り振られている。当該工具種別は、IDなどの種別番号で示されてもよいし、種別名で示されてもよい。
 監視部52は、作業者によるマガジン150への工具の脱着作業を監視し、工具情報224を逐次的に更新する。より具体的には、作業者は、装着対象の工具をマガジン150に装着する。当該工具を装着する位置の付近には、バーコードまたはQRコード(登録商標)の読み取り装置(図示しない)が設けられており、当該読み取り装置は、工具に付されているバーコードまたはQRコードを読み取る。これにより、装着対象の工具の識別情報や工具の種別が読み取られる。監視部52は、読み取られた工具情報と、読み取られた工具種別とを、工具の装着場所のポット番号に対応付けた上で、工具情報224に書き込む。
 工具情報224に規定されている工具の状態は、たとえば、上述の正常状態と、上述の異常状態とを含む。異常状態は、たとえば、工具が損傷していることを示す「損傷状態」と、工具の寿命が尽きていることを示す「寿命切れ状態」と、工具の寿命が尽きておらず、かつ工具の残寿命が所定閾値よりも少ないことを示す「寿命警告状態」とを含む。
 工具が「損傷状態」であるか否かは、たとえば、工作機械100内に設けられている損傷センサによって検出される。一例として、当該損傷センサは、工作機械100内の主軸170に設けられている圧力センサを含む。当該圧力センサは、ワークの加工中に主軸170にかかる力を検出する。監視部52は、当該圧力センサの出力値を監視し、当該出力値が所定値を超えたことに基づいて、工具に過大な力がかかったと判断する。監視部52は、工具に過大な力がかかったと判断した場合、工具が曲がってしまった可能性があると判断し、当該工具の状態を「損傷状態」に変更する。
 他の例として、上記損傷センサは、工具外形の測定センサを含む。当該測定センサは、たとえば、距離センサ、タッチセンサ、または、工具の外形を検出することが可能なその他のセンサである。一例として、距離センサを用いて工具の損傷を検出する例について説明する。工作機械100は、主軸170に装着されている工具を距離センサの前で回転させることで、当該距離センサから工具の外形を表わす時系列データを取得する。監視部52は、当該時系列データと予め定められた正常値との差分を算出し、当該差分結果の絶対値が所定値を超えている場合に、工具が刃欠けしていると判断する。監視部52は、工具が刃欠けしていると判断した場合、当該工具の状態を「損傷状態」に変更する。
 他の例として、上記損傷センサは、工作機械100内の工具を撮影するためのカメラを含む。監視部52は、当該カメラから得られた画像に対して所定の画像処理を実行することで、工具が損傷しているか否かを判断する。監視部52は、工具が損傷していると判断した場合、当該工具の状態を「損傷状態」に変更する。
 一例として、損傷している工具が画像に写っているか否かは、学習済みモデルを用いて認識される。学習済みモデルは、学習用データセットを用いた学習処理により予め生成されている。学習用データセットは、工具が写っている複数の学習用画像を含む。各学習用画像には、正常な工具が写っているか否かを示すラベル(あるいは、損傷の種別を示すラベル)が関連付けられている。学習済みモデルの内部パラメータは、このような学習用データセットを用いた学習処理により予め最適化されている。
 学習済みモデルを生成するための学習手法には、種々の機械学習アルゴリズムが採用され得る。一例として、当該機械学習アルゴリズムとして、ディープラーニング、コンボリューションニューラルネットワーク(CNN)、全層畳み込みニューラルネットワーク(FCN)、サポートベクターマシンなどが採用される。
 監視部52は、カメラから得られた入力画像上において矩形領域をずらしながら、当該矩形領域内の部分画像を学習済モデルに順次入力する。その結果、当該学習済モデルは、入力された部分画像に損傷している工具が写っている確率を出力する。監視部52は、当該確率が所定値を超えた部分画像に損傷している工具が写っていると判断し、当該工具の状態を「損傷状態」に変更する。
 「寿命切れ状態」と、「寿命警告状態」とは、たとえば、工作機械100の加工プログラム322に基づいて判断される。より具体的な処理として、監視部52は、加工プログラム322を監視し、各工具が加工に使用されているか否かを判断する。監視部52は、使用中の工具については、工具情報224に示される残寿命をカウントダウンする。工具の新品時における残寿命は、工具ごとに予め決められている。
 ここでいう「残寿命」とは、工具の寿命が尽きるまでの使用可能量を意味する。「量」との用語は、時間、距離、および回数を含む概念である。すなわち、「工具の残りの使用可能量」は、工具寿命が尽きるまでの工具の残りの使用可能時間と、工具寿命が尽きるまでの工具の残りの移動可能距離と、工具寿命が尽きるまでの工具の残りの使用可能回数とを含む概念である。
 工具の残寿命の監視方法の一例について説明する。工作機械100の加工プログラム322は、Gコードで規定されており、主軸170に装着する工具を指定するための工具交換命令や、主軸170や工具を回転駆動/送り駆動するための駆動命令などを含む。監視部52は、加工プログラム322に規定されている工具交換命令に基づいて、ワークの加工に用いられる工具の種別を特定しておく。次に、監視部52は、加工プログラム322に規定されている駆動命令が実行されたことに基づいて、当該工具の残寿命のカウントダウンを開始する。続いて、監視部52は、加工プログラム322に規定されている停止命令または最終行の命令が実行されたことに基づいて、当該工具の残寿命のカウントダウンを停止する。これにより、監視部52は、工具情報224において各工具の残寿命を監視する。
 監視部52は、工具の残寿命が所定閾値を下回った場合に、工具情報224において工具の状態を「正常状態」から「寿命警告状態」に変更する。また、監視部52は、工具の残寿命がゼロになったことに基づいて、工具情報224において工具の状態を「寿命警告状態」から「寿命切状態」に変更する。
 (D2.決定部54)
 次に、図6を参照して、図4に示される決定部54の機能について説明する。
 決定部54は、マガジン150に保持されている工具の中から、代用可能な工具の有無に応じて、回収候補の工具を決定する。
 以下では、説明の便宜のために、正常状態である同種の他の工具がマガジン150内に存在する異常状態の工具を「代替可能な異常状態の工具」とも称し、正常状態である同種の工具がマガジン150内に存在しない工具を「代替不可能な異常状態の工具」とも称する。当該異常状態は、上述の「損傷状態」と、上述の「寿命切れ状態」と、上述の「寿命警告状態」とを含む。
 一例として、決定部54は、図6に示される回収ルール226に従って、回収候補の工具の優先度を決定する。図6は、一例としての回収ルール226を示す図である。
 より具体的には、決定部54は、代替不可能な異常状態の工具を代替可能な異常状態の工具よりも優先的に回収候補として決定する。これにより、代替不可能な異常状態の工具がより優先的に回収候補として決定される。
 代替不可能な異常状態の工具が複数ある場合には、決定部54は、工具状態に応じて回収候補の優先度を決定する。
 より具体的には、損傷状態の工具は、ワークの加工に用いることができない。一方で、寿命切れ状態の工具は、使用が推奨されないだけで、加工に用いること自体は可能である。そのため、損傷状態の工具は、寿命切れ状態の工具よりも優先的に交換されることが好ましい。この点に鑑みて、決定部54は、代替不可能な損傷状態の工具を、代替不可能な寿命切れ状態の工具よりも、優先的に回収候補として決定する。
 また、寿命切れ状態の工具は、寿命警告状態の工具よりも早急に交換される必要がある。そこで、決定部54は、代替不可能な寿命切れ状態の工具を、代替不可能な寿命警告状態の工具よりも、優先的に回収候補として決定する。
 好ましくは、決定部54は、代替可能な異常状態の工具についても回収候補の優先度を決定する。一例として、決定部54は、代替可能な損傷状態の工具を、代替可能な寿命切れ状態の工具よりも、優先的に回収候補として決定する。また、決定部54は、代替可能な寿命切れ状態の工具を、代替可能な寿命警告状態の工具よりも、優先的に回収候補として決定される。
 (D3.実行部56)
 次に、図7を参照して、図4に示される実行部56の機能について説明する。実行部56は、決定部54によって決定された回収候補の工具に関して予め定められた処理を実行する。
 一例として、実行部56は、回収候補の工具を予め定められた位置に移動するように上述の駆動部110(図2参照)を制御する。当該制御処理は、たとえば、ユーザによる回収操作を受け付けたことに基づいて実行される。当該回収操作は、たとえば、上述の操作盤400(図1参照)において受け付けられる。
 図7は、操作盤400の操作画面410を示す図である。操作画面410は、たとえば、操作盤400のディスプレイ405に表示される。
 図7に示されるように、操作画面410は、表示欄430と、自動呼出ボタン440と、選択呼出ボタン441とを含む。表示欄430には、上述の工具情報224(図5参照)の一部または全部が表示される。
 自動呼出ボタン440は、上述の決定部54によって決定された回収候補の工具を呼び出すためのボタンである。より具体的には、実行部56は、操作画面410の自動呼出ボタン440が押下されたことに基づいて、決定部54によって決定された回収候補の工具の中で回収の優先度が最も高い工具を特定する。次に、実行部56は、上述の駆動部110(図2参照)を制御し、当該特定された工具を予め定められた位置に駆動する。その後、作業者は、当該予め定められた位置に移動された工具を正常状態の工具と交換することができる。
 続いて、実行部56は、上述の駆動部110(図2参照)を制御し、回収候補の工具の中で回収の優先度が2番目に高い工具を予め定められた位置に移動させる。その後、作業者は、当該予め定められた位置に移動された工具を正常状態の工具と交換する。
 このように、実行部56は、決定部54によって決定された回収候補の工具を優先度の順に予め定められた位置に移動させる。これにより、作業者は、代用可能な工具が存在しない異常状態の工具を優先的に交換することができる。
 選択呼出ボタン441は、特定の工具を呼び出すためのボタンである。ユーザは、表示欄430に表示されている工具情報を選択した上で選択呼出ボタン441を押下することで、当該選択した工具をマガジン150から呼び出すことができる。
 なお、上述では、決定部54によって決定された回収候補の工具が優先度の順に予め定められた位置に駆動される例について説明を行なったが、予め定められた位置に駆動される工具は、回収の優先度が最も高い工具だけでもよいし、回収の優先度がより高い所定数の工具だけでもよい。
 <E.変形例>
 次に、図8を参照して、上述の操作画面410の変形例について説明する。図8は、変形例に従う操作画面410Aを示す図である。
 図8に示される操作画面410Aは、表示欄431と、抽出ボタン442とをさらに含む点で、上述の図7に示される操作画面410と異なる。その他の点については、図7に示される操作画面410と同じであるので、以下では、それらの点については説明を繰り返さない。
 本例では、ユーザが抽出ボタン442を押下したことに基づいて、実行部56は、決定部54によって決定された回収候補の工具に関する情報をディスプレイ405(表示部)に表示する。当該情報は、たとえば、操作画面410Aの表示欄431に表示される。表示欄431に表示される情報は、たとえば、マガジン150内のポット番号と、工具識別情報と、工具種別と、工具の状態と、工具の残寿命との少なくとも1つを含む。
 好ましくは、実行部56は、決定部54によって決定された回収候補の工具に関する情報を回収の優先度の順に表示欄431に表示する。表示欄431に表示される工具情報は、選択可能に構成される。ユーザは、表示欄431に表示されている工具情報を選択した上で選択呼出ボタン441を押下することで、当該選択した工具をマガジン150から呼び出すことができる。これにより、ユーザは、回収の優先度がより高い工具情報を確認した上で工具の交換作業を行なうことができる。
 なお、実行部56は、回収の優先度が最も高い1つの工具情報のみを表示欄431に表示してもよい。あるいは、実行部56は、回収の優先度がより高い所定数の工具情報を表示欄431に表示してもよい。
 <F.CPUユニット200のハードウェア構成>
 図9を参照して、上述の図2に示されるCPUユニット200のハードウェア構成について説明する。図9は、CPUユニット200のハードウェア構成の一例を示す図である。
 CPUユニット200は、制御回路201と、ROM(Read Only Memory)202と、RAM(Random Access Memory)203と、通信インターフェイス204と、補助記憶装置220とを含む。これらのコンポーネントは、内部バス209に接続される。
 制御回路201は、たとえば、少なくとも1つの集積回路によって構成される。集積回路は、たとえば、少なくとも1つのCPU、少なくとも1つのGPU(Graphics Processing Unit)、少なくとも1つのASIC(Application Specific Integrated Circuit)、少なくとも1つのFPGA(Field Programmable Gate Array)、またはそれらの組み合わせなどによって構成され得る。
 制御回路201は、制御プログラム222などの各種プログラムを実行することでCPUユニット200の動作を制御する。制御プログラム222は、上述の図4に示される各機能構成に係る機能を実現するためのプログラムである。制御回路201は、制御プログラム222の実行命令を受け付けたことに基づいて、補助記憶装置220またはROM202からRAM203に制御プログラム222を読み出す。RAM203は、ワーキングメモリとして機能し、制御プログラム222の実行に必要な各種データを一時的に格納する。
 通信インターフェイス204は、フィールドネットワークを用いて外部機器と定周期通信を行なうためのインターフェイスである。当該外部機器は、たとえば、上述のモータドライバ111M(図2参照)や上述のATCドライバ121A(図2参照)などを含む。フィールドネットワークとしては、たとえば、EtherCAT(登録商標)、EtherNet/IP(登録商標)、CC-Link(登録商標)、またはCompoNet(登録商標)などが採用される。
 補助記憶装置220は、たとえば、ハードディスクやフラッシュメモリなどの記憶媒体である。補助記憶装置220は、制御プログラム222、上述の工具情報224、および上述の回収ルール226などを格納する。
 なお、制御プログラム222、工具情報224、および回収ルール226の格納場所は、補助記憶装置220に限定されず、制御回路201の記憶領域(たとえば、キャッシュメモリ)、ROM202、RAM203、外部機器(たとえば、サーバー)などに格納されていてもよい。
 また、制御プログラム222は、単体のプログラムとしてではなく、任意のプログラムの一部に組み込まれて提供されてもよい。この場合、本実施の形態に従う各種の処理は、任意のプログラムと協働して実現される。このような一部のモジュールを含まないプログラムであっても、本実施の形態に従う制御プログラム222の趣旨を逸脱するものではない。さらに、制御プログラム222によって提供される機能の一部または全部は、専用のハードウェアによって実現されてもよい。さらに、少なくとも1つのサーバーが制御プログラム222の処理の一部を実行する所謂クラウドサービスのような形態でCPUユニット200が構成されてもよい。
 <G.CNCユニット300のハードウェア構成>
 次に、図10を参照して、上述の図2に示されるCNCユニット300のハードウェア構成について説明する。図10は、CNCユニット300のハードウェア構成の一例を示す図である。
 CNCユニット300は、制御回路301と、ROM302と、RAM303と、通信インターフェイス304と、通信インターフェイス305と、フィールドバスコントローラ306と、補助記憶装置320とを含む。これらのコンポーネントは、内部バス309に接続される。
 制御回路301は、たとえば、少なくとも1つの集積回路によって構成される。集積回路は、たとえば、少なくとも1つのCPU、少なくとも1つのASIC、少なくとも1つのFPGA、またはそれらの組み合わせなどによって構成され得る。
 制御回路301は、加工プログラム322などの各種プログラムを実行することでCNCユニット300の動作を制御する。加工プログラム322は、ワーク加工を実現するためのプログラムである。制御回路301は、加工プログラム322の実行命令を受け付けたことに基づいて、ROM302からRAM303に加工プログラム322を読み出す。RAM303は、ワーキングメモリとして機能し、加工プログラム322の実行に必要な各種データを一時的に格納する。
 通信インターフェイス304には、LAN、WLAN、またはBluetooth(登録商標)などが接続される。CNCユニット300は、通信インターフェイス304を介して外部機器とデータをやり取りする。当該外部機器は、たとえば、操作盤400やサーバー(図示しない)などを含む。
 通信インターフェイス305は、外部機器との通信を実現するためのインターフェイスである。一例として、CNCユニット300は、通信インターフェイス305を介して外部機器とデータをやり取りする。当該外部機器は、ワーク加工のための各種駆動ユニット(たとえば、上述のモータドライバ131B,131C,131X~131Zなど)などを含む。
 フィールドバスコントローラ306は、フィールドバスに接続される各種ユニットとの通信を実現するための通信ユニットである。当該フィールドバスに接続されるユニットの一例として、CPUユニット200などが挙げられる。
 補助記憶装置320は、たとえば、ハードディスクやフラッシュメモリなどの記憶媒体である。補助記憶装置320は、加工プログラム322などを格納する。なお、加工プログラム322の格納場所は、補助記憶装置320に限定されず、制御回路301の記憶領域(たとえば、キャッシュメモリ)、ROM302、RAM303、外部機器(たとえば、サーバー)などに格納されていてもよい。
 <H.操作盤400のハードウェア構成>
 次に、図11を参照して、上述の図2に示される操作盤400のハードウェア構成について説明する。図11は、操作盤400のハードウェア構成の一例を示す図である。
 操作盤400は、制御回路401と、ROM(Read Only Memory)402と、RAM(Random Access Memory)403と、通信インターフェイス404と、ディスプレイ405と、操作キー406と、補助記憶装置420とを含む。これらのコンポーネントは、内部バス409に接続される。
 制御回路401は、たとえば、少なくとも1つの集積回路によって構成される。集積回路は、たとえば、少なくとも1つのCPU、少なくとも1つのGPU、少なくとも1つのASIC、少なくとも1つのFPGA、またはそれらの組み合わせなどによって構成され得る。
 制御回路401は、制御プログラム422などの各種プログラムを実行することで操作盤400の動作を制御する。制御プログラム422は、操作盤400を制御するための命令を規定している。制御回路401は、制御プログラム422の実行命令を受け付けたことに基づいて、補助記憶装置420またはROM402からRAM403に制御プログラム422を読み出す。RAM403は、ワーキングメモリとして機能し、制御プログラム422の実行に必要な各種データを一時的に格納する。
 通信インターフェイス404は、LAN(Local Area Network)ケーブル、WLAN、またはBluetooth(登録商標)などを用いた通信を実現するための通信ユニットである。一例として、操作盤400は、通信インターフェイス404を介して、上述のCNCユニット300などの外部機器との通信を実現する。
 ディスプレイ405は、たとえば、液晶ディスプレイ、有機ELディスプレイ、またはその他の表示機器である。ディスプレイ405は、制御回路401などからの指令に従って、ディスプレイ405に対して、画像を表示するための画像信号を送出する。ディスプレイ405は、たとえば、タッチパネルで構成されており、工作機械100に対する各種操作をタッチ操作で受け付ける。
 操作キー406は、複数のハードウェアキーで構成され、操作盤400に対する各種のユーザ操作を受け付ける。押下されたキーに応じた信号が制御回路401に出力される。
 補助記憶装置420は、たとえば、ハードディスクやフラッシュメモリなどの記憶媒体である。補助記憶装置420は、制御プログラム422などを格納する。制御プログラム422の格納場所は、補助記憶装置420に限定されず、制御回路401の記憶領域(たとえば、キャッシュメモリ)、ROM402、RAM403、外部機器(たとえば、サーバー)などに格納されていてもよい。
 <I.フローチャート>
 次に、図12を参照して、工作機械100の制御構造について説明する。図12は、工作機械100の制御部50が実行する処理の一部を表わすフローチャートである。
 図12に示される処理は、制御部50が上述の制御プログラム222(図9参照)などを実行することにより実現される。他の局面において、処理の一部または全部が、回路素子またはその他のハードウェアによって実行されてもよい。
 ステップS110において、制御部50は、マガジン150に保持されている工具の中から回収候補の工具を抽出する操作を受け付けたか否かを判断する。当該抽出操作は、たとえば、上述の抽出ボタン442(図8参照)が押下されたことに基づいて受け付けられる。制御部50は、回収候補の工具を抽出する操作を受け付けたと判断した場合(ステップS110においてYES)、制御をステップS112に切り替える。そうでない場合には(ステップS110においてNO)、制御部50は、ステップS110の処理を再び実行する。
 ステップS112において、制御部50は、上述の工具情報224(図5参照)を取得する。上述のように、工具情報224には、マガジン150に保持されている各工具の情報が規定されている。
 ステップS114において、制御部50は、上述の決定部54(図4参照)として機能し、ステップS112で取得した工具情報224に基づいて、マガジン150内に保持されている工具の中から回収候補の工具を決定する。回収候補の工具の決定方法については上述の通りであるので、その説明については繰り返さない。
 ステップS116において、制御部50は、上述の実行部56(図4参照)として機能し、ステップS114で決定された回収候補の工具に係る工具情報を上述の操作画面410Aの表示欄431に表示する。
 ステップS120において、制御部50は、回収候補の工具について呼び出し操作を受け付けたか否かを判断する。一例として、制御部50は、表示欄431に表示されている工具情報が1つ以上選択され、かつ、操作画面410Aの選択呼出ボタン441が押下されたことに基づいて、呼び出し操作を受け付けたと判断する。制御部50は、回収候補の工具について呼び出し操作を受け付けたと判断した場合(ステップS120においてYES)、制御をステップS122に切り替える。そうでない場合には(ステップS120においてNO)、制御部50は、制御をステップS130に切り替える。
 ステップS122において、制御部50は、上述の実行部56(図4参照)として機能し、上述の操作画面410Aの表示欄431において選択された回収候補の工具を予め定められた位置に移動させる。その後、制御部50は、図12に示される処理を終了する。
 ステップS130において、制御部50は、キャンセル操作を受け付けたか否かを判断する。当該キャンセル操作は、たとえば、上述の操作画面410Aに設けられているキャンセルボタン(図示しない)が押下されたことに基づいて受け付けられる。あるいは、当該キャンセル操作は、上述の操作画面410Aを閉じるボタン(図示しない)が押下されたことに基づいて受け付けられる。制御部50は、キャンセル操作を受け付けたと判断した場合(ステップS130においてYES)、図12に示される処理を終了する。そうでない場合には(ステップS130においてNO)、制御部50は、制御をステップS120に戻す。
 <J.まとめ>
 以上のようにして、工作機械100は、マガジン150に保持されている各工具に関する工具情報224を取得する。工具情報224は、マガジン150に保持されている各工具の種別と、当該各工具の状態とを少なくとも規定している。当該状態は、たとえば、上述の正常状態と上述の異常状態とを含む。次に、制御部50は、当該取得した工具情報224に基づいて、正常状態である同種の工具がマガジン150内に存在しない異常状態の工具を回収候補として決定する。これにより、制御部50は、代用可能な工具が存在する工具よりも代用可能な工具が存在しない工具を優先して回収候補とする。
 これにより、工作機械100は、代用可能な工具の有無に応じて回収対象の工具の優先度をより適切に決定することができる。結果として、工作機械100は、ワークの加工が停止することを回避できる。あるいは、たとえワークの加工が停止してしまった場合であっても、工作機械100は、ワークの加工をより早く再開することができる。
 今回開示された実施の形態は全ての点で例示であって制限的なものではないと考えられるべきである。本発明の範囲は上記した説明ではなくて請求の範囲によって示され、請求の範囲と均等の意味および範囲内での全ての変更が含まれることが意図される。
 40A 工具収納部、40B 加工機本体、50 制御部、52 監視部、54 決定部、56 実行部、100 工作機械、110 駆動部、111M モータドライバ、112M モータ、120 駆動部、121A ATCドライバ、122A モータ、122B モータ、130 駆動部、131B モータドライバ、131C モータドライバ、131X モータドライバ、131Y モータドライバ、131Z モータドライバ、132B モータ、132C モータ、132X モータ、132Y モータ、132Z モータ、150 マガジン、165 中心軸、166 アーム、166A 工具把持部、166B 工具把持部、170 主軸、200 CPUユニット、201 制御回路、202 ROM、203 RAM、204 通信インターフェイス、209 内部バス、220 補助記憶装置、222 制御プログラム、224 工具情報、226 回収ルール、300 CNCユニット、301 制御回路、302 ROM、303 RAM、304 通信インターフェイス、305 通信インターフェイス、306 フィールドバスコントローラ、309 内部バス、320 補助記憶装置、322 加工プログラム、400 操作盤、401 制御回路、402 ROM、403 RAM、404 通信インターフェイス、405 ディスプレイ、406 操作キー、409 内部バス、410 操作画面、410A 操作画面、420 補助記憶装置、422 制御プログラム、430 表示欄、431 表示欄、440 自動呼出ボタン、441 選択呼出ボタン、442 抽出ボタン。

Claims (8)

  1.  工作機械であって、
     複数の工具を保持することが可能なマガジンと、
     前記複数の工具の内の少なくとも1つの工具を用いてワークを加工するための加工機本体と、
     前記工作機械を制御するための制御部とを備え、
     前記制御部は、
      前記複数の工具に関する工具情報を取得する処理を実行し、前記工具情報は、前記複数の工具の各々について工具の種別と工具の状態とを規定しており、前記状態は、異常状態と正常状態とを含み、
     前記制御部は、さらに、
      前記工具情報に基づいて、前記正常状態である同種の工具が前記マガジン内に存在しない前記異常状態の工具を回収候補として決定する処理と、
      前記回収候補の工具に関する予め定められた処理とを実行する、工作機械。
  2.  前記工作機械は、さらに、前記マガジンを駆動するための駆動部を備え、
     前記予め定められた処理は、前記回収候補の工具を予め定められた位置に移動するように前記駆動部を制御する処理を含む、請求項1に記載の工作機械。
  3.  前記工作機械は、さらに、表示部を備え、
     前記予め定められた処理は、前記回収候補の工具に関する情報を前記表示部に表示する処理を含む、請求項1または2に記載の工作機械。
  4.  前記異常状態は、
      工具が損傷していることを示す損傷状態と、
      工具の寿命が尽きていることを示す寿命切れ状態とを含み、
     前記決定する処理は、前記正常状態である同種の工具が前記マガジン内に存在しない前記損傷状態の工具を、前記正常状態である同種の工具が前記マガジン内に存在しない前記寿命切れ状態の工具よりも、優先的に前記回収候補として決定する、請求項1~3のいずれか1項に記載の工作機械。
  5.  前記異常状態は、さらに、工具の寿命が尽きておらず、かつ、工具の残寿命が所定閾値よりも少ないことを示す寿命警告状態を含み、
     前記決定する処理では、前記正常状態である同種の工具が前記マガジン内に存在しない前記寿命切れ状態の工具が、前記正常状態である同種の工具が前記マガジン内に存在しない前記寿命警告状態の工具よりも、優先的に前記回収候補として決定される、請求項4に記載の工作機械。
  6.  前記決定する処理では、前記正常状態である同種の工具が前記マガジン内に存在しない前記異常状態の工具が、前記正常状態である同種の工具が前記マガジン内に存在する前記異常状態の工具よりも、優先的に前記回収候補として決定される、請求項1~3のいずれか1項に記載の工作機械。
  7.  工作機械の制御方法であって、
     前記工作機械は、
      複数の工具を保持することが可能なマガジンと、
      前記複数の工具の内の少なくとも1つの工具を用いてワークを加工するための加工機本体とを備え、
     前記制御方法は、
      前記複数の工具に関する工具情報を取得するステップを備え、前記工具情報は、前記複数の工具の各々について工具の種別と工具の状態とを規定しており、前記状態は、異常状態と正常状態とを含み、
     前記制御方法は、さらに、
      前記工具情報に基づいて、前記正常状態である同種の工具が前記マガジン内に存在しない前記異常状態の工具を回収候補として決定するステップと、
      前記回収候補の工具に関する予め定められた処理を実行するステップと備える、制御方法。
  8.  工作機械の制御プログラムであって、
     前記工作機械は、
      複数の工具を保持することが可能なマガジンと、
      前記複数の工具の内の少なくとも1つの工具を用いてワークを加工するための加工機本体とを備え、
     前記制御プログラムは、前記工作機械に、
      前記複数の工具に関する工具情報を取得するステップを実行させ、前記工具情報は、前記複数の工具の各々について工具の種別と工具の状態とを規定しており、前記状態は、異常状態と正常状態とを含み、
     前記制御プログラムは、前記工作機械に、さらに、
      前記工具情報に基づいて、前記正常状態である同種の工具が前記マガジン内に存在しない前記異常状態の工具を回収候補として決定するステップと、
      前記回収候補の工具に関する予め定められた処理とを実行させる、制御プログラム。
PCT/JP2021/033695 2021-09-14 2021-09-14 工作機械、制御方法、および制御プログラム WO2023042249A1 (ja)

Priority Applications (4)

Application Number Priority Date Filing Date Title
PCT/JP2021/033695 WO2023042249A1 (ja) 2021-09-14 2021-09-14 工作機械、制御方法、および制御プログラム
EP21957433.2A EP4403299A1 (en) 2021-09-14 2021-09-14 Machine tool, control method, and control program
JP2023547956A JPWO2023042249A1 (ja) 2021-09-14 2021-09-14
CN202180102304.7A CN117999149A (zh) 2021-09-14 2021-09-14 机床、控制方法以及控制程序

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/JP2021/033695 WO2023042249A1 (ja) 2021-09-14 2021-09-14 工作機械、制御方法、および制御プログラム

Publications (1)

Publication Number Publication Date
WO2023042249A1 true WO2023042249A1 (ja) 2023-03-23

Family

ID=85601940

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2021/033695 WO2023042249A1 (ja) 2021-09-14 2021-09-14 工作機械、制御方法、および制御プログラム

Country Status (4)

Country Link
EP (1) EP4403299A1 (ja)
JP (1) JPWO2023042249A1 (ja)
CN (1) CN117999149A (ja)
WO (1) WO2023042249A1 (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102629698B1 (ko) * 2023-09-11 2024-01-25 (재)대구기계부품연구원 기상측정을 이용한 공구의 마모량 예측방법 및 예측 시스템

Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS61178151A (ja) * 1985-02-01 1986-08-09 Yamazaki Mazak Corp 数値制御装置
JPH0643920A (ja) * 1992-07-23 1994-02-18 Fanuc Ltd 工具管理方式
JPH10100033A (ja) * 1996-09-30 1998-04-21 Toyoda Mach Works Ltd 工具選択方法および該方法を用いた工作機械
JP2000084775A (ja) * 1998-09-08 2000-03-28 Toyoda Mach Works Ltd 工具マガジン装置
JP2004130451A (ja) 2002-10-10 2004-04-30 Toyota Motor Corp 工具交換時期表示装置
KR20130068737A (ko) * 2011-12-16 2013-06-26 두산인프라코어 주식회사 공구 매거진의 공구 상태 확인 장치 및 방법
WO2020012547A1 (ja) * 2018-07-10 2020-01-16 三菱電機株式会社 数値制御装置
JP6775704B1 (ja) * 2020-07-28 2020-10-28 Dmg森精機株式会社 工具セットアップ装置、工具セットアップ装置の制御方法、および工具セットアップ装置の制御プログラム

Patent Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS61178151A (ja) * 1985-02-01 1986-08-09 Yamazaki Mazak Corp 数値制御装置
JPH0643920A (ja) * 1992-07-23 1994-02-18 Fanuc Ltd 工具管理方式
JPH10100033A (ja) * 1996-09-30 1998-04-21 Toyoda Mach Works Ltd 工具選択方法および該方法を用いた工作機械
JP2000084775A (ja) * 1998-09-08 2000-03-28 Toyoda Mach Works Ltd 工具マガジン装置
JP2004130451A (ja) 2002-10-10 2004-04-30 Toyota Motor Corp 工具交換時期表示装置
KR20130068737A (ko) * 2011-12-16 2013-06-26 두산인프라코어 주식회사 공구 매거진의 공구 상태 확인 장치 및 방법
WO2020012547A1 (ja) * 2018-07-10 2020-01-16 三菱電機株式会社 数値制御装置
JP6775704B1 (ja) * 2020-07-28 2020-10-28 Dmg森精機株式会社 工具セットアップ装置、工具セットアップ装置の制御方法、および工具セットアップ装置の制御プログラム

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102629698B1 (ko) * 2023-09-11 2024-01-25 (재)대구기계부품연구원 기상측정을 이용한 공구의 마모량 예측방법 및 예측 시스템

Also Published As

Publication number Publication date
EP4403299A1 (en) 2024-07-24
JPWO2023042249A1 (ja) 2023-03-23
CN117999149A (zh) 2024-05-07

Similar Documents

Publication Publication Date Title
EP1758004B1 (en) NC Machine Tool
EP3309637B1 (en) Control system for controlling operation of a numerically controlled machine tool, and back-end and front-end control devices for use in such system
US9778646B2 (en) Robot controller for controlling robot which supplies and discharges workpiece
JP6569825B1 (ja) 数値制御装置
US20220378560A1 (en) Dental machining system for predicting the wear condition of a dental tool
WO2023042249A1 (ja) 工作機械、制御方法、および制御プログラム
JP2021142613A (ja) 工具管理システム、工具寸法測定装置、および端末
JP7001855B1 (ja) 工具搬送システム、工具搬送システムの制御方法、および工具搬送システムの制御プログラム
CN114667202A (zh) 数控装置、机器学习装置及数控方法
JP7017537B2 (ja) 工作機械、加工システムおよび管理システム
JP2021109289A (ja) 工作機械、工作機械の制御方法、および工作機械の制御プログラム
US20230415287A1 (en) Tool Transport System, Control Method for Tool Transport System, and Control Program for Tool Transport System
KR20190051154A (ko) 공구 매거진의 이상 공구 교환방법
US20240217043A1 (en) Tool transfer system, control method, and control program
JPS6199529A (ja) パンチプレスの工具寿命管理装置
JP2004054701A (ja) 機械の稼働状況監視システム並びに数値制御装置及びプログラム
JP7001854B1 (ja) 工具搬送システム、工具搬送システムの制御方法、および工具搬送システムの制御プログラム
JP7055928B1 (ja) 工作機械、制御方法、および制御プログラム
JP7088742B2 (ja) 加工システム、加工機、加工機の制御方法及びプログラム
EP4068020A1 (en) Display control system
JP6966604B1 (ja) 工作機械、工作機械の制御方法、および、工作機械の制御プログラム
WO2023199408A1 (ja) 数値制御装置およびコンピュータ読み取り可能な記憶媒体
KR100254185B1 (ko) 공작기계의가공공구확인방법
JP2023067294A (ja) ワーク加工装置
JP2022131366A (ja) 工作機械、表示制御方法、および表示制御プログラム

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 21957433

Country of ref document: EP

Kind code of ref document: A1

WWE Wipo information: entry into national phase

Ref document number: 2023547956

Country of ref document: JP

WWE Wipo information: entry into national phase

Ref document number: 202180102304.7

Country of ref document: CN

WWE Wipo information: entry into national phase

Ref document number: 2021957433

Country of ref document: EP

NENP Non-entry into the national phase

Ref country code: DE

ENP Entry into the national phase

Ref document number: 2021957433

Country of ref document: EP

Effective date: 20240415