WO2024189814A1 - 数値制御装置、数値制御方法、および数値制御プログラム - Google Patents
数値制御装置、数値制御方法、および数値制御プログラム Download PDFInfo
- Publication number
- WO2024189814A1 WO2024189814A1 PCT/JP2023/010010 JP2023010010W WO2024189814A1 WO 2024189814 A1 WO2024189814 A1 WO 2024189814A1 JP 2023010010 W JP2023010010 W JP 2023010010W WO 2024189814 A1 WO2024189814 A1 WO 2024189814A1
- Authority
- WO
- WIPO (PCT)
- Prior art keywords
- vibration
- unit
- ball screw
- numerical control
- control device
- Prior art date
Links
- 238000000034 method Methods 0.000 title claims description 50
- 238000005520 cutting process Methods 0.000 claims abstract description 189
- 230000007246 mechanism Effects 0.000 claims abstract description 99
- 238000003754 machining Methods 0.000 claims abstract description 23
- 230000008859 change Effects 0.000 claims description 106
- 230000033001 locomotion Effects 0.000 claims description 70
- 230000001186 cumulative effect Effects 0.000 claims description 21
- 230000006866 deterioration Effects 0.000 abstract description 24
- 238000012545 processing Methods 0.000 description 81
- 238000013523 data management Methods 0.000 description 41
- 238000004364 calculation method Methods 0.000 description 26
- 238000010586 diagram Methods 0.000 description 24
- 238000005259 measurement Methods 0.000 description 23
- 238000004458 analytical method Methods 0.000 description 22
- 238000012423 maintenance Methods 0.000 description 18
- 230000001133 acceleration Effects 0.000 description 15
- 230000008569 process Effects 0.000 description 15
- 238000003860 storage Methods 0.000 description 13
- 238000013500 data storage Methods 0.000 description 6
- 230000004048 modification Effects 0.000 description 6
- 239000004519 grease Substances 0.000 description 5
- 230000000694 effects Effects 0.000 description 4
- 230000008878 coupling Effects 0.000 description 3
- 238000010168 coupling process Methods 0.000 description 3
- 238000005859 coupling reaction Methods 0.000 description 3
- 238000005516 engineering process Methods 0.000 description 3
- 230000006870 function Effects 0.000 description 3
- 230000007257 malfunction Effects 0.000 description 3
- 238000005096 rolling process Methods 0.000 description 2
- 230000006399 behavior Effects 0.000 description 1
- 230000005540 biological transmission Effects 0.000 description 1
- 238000004590 computer program Methods 0.000 description 1
- 230000002542 deteriorative effect Effects 0.000 description 1
- 230000010354 integration Effects 0.000 description 1
- 239000004973 liquid crystal related substance Substances 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
- 238000004904 shortening Methods 0.000 description 1
Images
Classifications
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B23—MACHINE TOOLS; METAL-WORKING NOT OTHERWISE PROVIDED FOR
- B23B—TURNING; BORING
- B23B1/00—Methods for turning or working essentially requiring the use of turning-machines; Use of auxiliary equipment in connection with such methods
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B23—MACHINE TOOLS; METAL-WORKING NOT OTHERWISE PROVIDED FOR
- B23Q—DETAILS, 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
- B23Q5/00—Driving or feeding mechanisms; Control arrangements therefor
- B23Q5/22—Feeding members carrying tools or work
- B23Q5/34—Feeding other members supporting tools or work, e.g. saddles, tool-slides, through mechanical transmission
- B23Q5/38—Feeding other members supporting tools or work, e.g. saddles, tool-slides, through mechanical transmission feeding continuously
- B23Q5/40—Feeding other members supporting tools or work, e.g. saddles, tool-slides, through mechanical transmission feeding continuously by feed shaft, e.g. lead screw
- B23Q5/42—Mechanism associated with headstock
Definitions
- This disclosure relates to a numerical control device, a numerical control method, and a numerical control program for controlling a machine tool.
- Machine tools that perform cutting processes cut the workpiece by bringing the tool into contact with the workpiece and causing relative movement between the tool and the workpiece.
- vibration cutting may be performed in which the cutting is performed while the tool is vibrated at a low frequency.
- vibration cutting it is possible to cut the workpiece while breaking up the chips by creating sections in the path of the tool's movement where cutting of the workpiece by the tool is interrupted.
- breaking up the chips into short pieces it is possible to prevent a decrease in machining accuracy due to the chips becoming entangled in the workpiece or the tool.
- by breaking up the chips into short pieces it is possible to reduce damage to the workpiece caused by the chips coming into contact with the workpiece.
- Patent Document 1 discloses a device that displays the operating status of a drive mechanism that moves a moving body linearly via a ball screw, and that displays information about the movement of the moving body on the ball screw by classifying it according to the type of axial motion. According to the device disclosed in Patent Document 1, by displaying the operating status by classifying axial motion into cutting feed, which moves the moving body when the workpiece is being cut, and fast forward, which moves the moving body when the workpiece is not being cut, it becomes possible to grasp the deterioration status due to wear of the ball screw.
- the present disclosure has been made in consideration of the above, and aims to provide a numerical control device that can grasp the deterioration status of the drive mechanism caused by vibration cutting for a machine tool that performs machining including vibration cutting.
- the numerical control device disclosed herein is a numerical control device that controls a machine tool that performs machining including vibration cutting using a drive mechanism.
- the numerical control device disclosed herein includes an estimation unit that estimates the remaining life of the mechanical components that make up the drive mechanism based on the execution time of vibration cutting.
- the numerical control device disclosed herein has the effect of making it possible to grasp the deterioration status of the drive mechanism of a machine tool that performs machining including vibration cutting, due to vibration cutting.
- FIG. 1 is a diagram showing a configuration example of a numerical control device according to a first embodiment
- FIG. 1 is a diagram showing a configuration example of a drive mechanism provided in a machine tool controlled by a numerical control device according to a first embodiment
- FIG. 3 is a diagram showing an example of the configuration of a bearing provided in the drive mechanism shown in FIG. 2
- FIG. 1 is a diagram for explaining a relationship between an operation coefficient and a lifespan referred to in an estimation unit of a numerical control device according to a first embodiment.
- FIG. 1 is a diagram for explaining a relationship between a vibration condition and an operation coefficient referred to in an estimation unit of a numerical control device according to a first embodiment.
- FIG. 13 is a diagram showing an example of a calculation result of an accumulated time and an effective operation coefficient by the numerical control device according to the first embodiment
- 1 is a flowchart showing an example of a procedure of a process executed by a numerical control device according to a first embodiment.
- FIG. 13 is a diagram showing an example of a display of a remaining life estimated by the numerical control device according to the first embodiment;
- FIG. 13 is a diagram showing an example of a warning display in the numerical control device according to the first embodiment;
- FIG. 1 is a diagram showing an example of vibration conditions that are preset in the numerical control device according to the first embodiment;
- FIG. 1 is a diagram for explaining a change in vibration waveform due to a change in vibration conditions in the first embodiment;
- FIG. 13 is a diagram showing an example of a result of measuring the duration of vibration cutting by the numerical control device according to the second embodiment
- 11 is a flowchart showing an example of a procedure of a process executed by a numerical control device according to a second embodiment.
- FIG. 1 is a diagram showing an example of a hardware configuration of a control calculation unit included in a numerical control device according to a first or second embodiment;
- Embodiment 1. 1 is a diagram showing an example of the configuration of a numerical control device 1 according to a first embodiment.
- the numerical control (NC) device 1 is a computer that controls a machine tool that performs cutting processing.
- the machine tool that is the object of control by the numerical control device 1 performs processing including vibration cutting.
- the machine tool performs vibration cutting by vibrating a driven body using a drive mechanism.
- the numerical control device 1 comprises an input operation unit 2, an output unit 3, and a control calculation unit 4.
- FIG. 1 shows the numerical control device 1 and a drive unit 7, which is a component of a machine tool.
- the drive unit 7 is connected to the control calculation unit 4.
- the numerical control device 1 generates various commands according to a machining program.
- the numerical control device 1 controls the machine tool by outputting the various generated commands to the drive unit 7.
- the drive unit 7 may be an element independent of the machine tool.
- the machine tool is an NC machine tool.
- the machine tool cuts the workpiece by bringing the tool into contact with the workpiece and moving the tool and the workpiece relative to each other.
- the machine tool processes the workpiece into a desired shape by removing unnecessary parts from the workpiece by cutting.
- the machine tool processes the workpiece using the tool while moving the tool and the workpiece relatively by two or more drive axes.
- the machine tool processes the workpiece by, for example, moving the tool in two directions, the X-axis direction and the Z-axis direction, by the drive unit 7 while rotating the workpiece by the drive unit 7.
- the X-axis is, for example, a vertical axis.
- the Z-axis is, for example, an axis parallel to the horizontal plane.
- the X-axis and Z-axis are perpendicular to each other. Note that the X-axis is not limited to an axis in the vertical direction, and the Z-axis is not limited to an axis parallel to the horizontal plane. The X-axis and Z-axis can be set appropriately according to the configuration of the machine tool.
- the drive unit 7 includes a servo motor 71x, a detector 72x, and a servo control unit 73x.
- the servo motor 71x constitutes an X-axis drive mechanism.
- the X-axis drive mechanism is a drive mechanism that drives a tool for cutting a workpiece or a workpiece in the X-axis direction.
- the X-axis drive mechanism is a drive mechanism that drives a tool in the X-axis direction.
- the servo motor 71x is a power source for the X-axis drive mechanism.
- the detector 72x detects the rotational position and rotational speed of the servo motor 71x.
- the detector 72x outputs position information indicating the rotational position of the servo motor 71x and speed information indicating the rotational speed of the servo motor 71x to the servo control unit 73x.
- the numerical control device 1 outputs a command to drive the tool in the X-axis direction to the servo control unit 73x.
- the servo control unit 73x performs feedback (FB) control of the servo motor 71x based on the command from the numerical control device 1 and the position information and speed information from the detector 72x.
- the drive unit 7 operates the tool in the X-axis direction by FB control of the servo motor 71x.
- the drive unit 7 also outputs information indicating the vibration movement amount in the X-axis direction to the numerical control device 1 by outputting position information detected by the detector 72x during vibration cutting to the numerical control device 1.
- the vibration movement amount is the movement amount of the tool relative to the workpiece during vibration cutting.
- the vibration movement amount information output from the drive unit 7 to the numerical control device 1 is referred to as the FB vibration movement amount.
- the drive unit 7 outputs the FB vibration movement amount in the X-axis direction to the numerical control device 1.
- the drive unit 7 includes a servo motor 71z, a detector 72z, and a servo control unit 73z.
- the servo motor 71z constitutes a Z-axis drive mechanism.
- the Z-axis drive mechanism is a drive mechanism that drives a tool for cutting a workpiece or a workpiece in the Z-axis direction.
- the Z-axis drive mechanism is a drive mechanism that drives a tool in the Z-axis direction.
- the servo motor 71z is a power source for the Z-axis drive mechanism.
- the detector 72z detects the rotational position and rotational speed of the servo motor 71z.
- the detector 72z outputs position information indicating the rotational position of the servo motor 71z and speed information indicating the rotational speed of the servo motor 71z to the servo control unit 73z.
- the numerical control device 1 outputs a command to drive the tool in the Z-axis direction to the servo control unit 73z.
- the servo control unit 73z performs feedback control of the servo motor 71z based on the command from the numerical control device 1 and the position information and speed information from the detector 72z.
- the drive unit 7 operates the tool in the Z-axis direction by feedback control of the servo motor 71z.
- the drive unit 7 also outputs the amount of feedback vibration movement in the Z-axis direction to the numerical control device 1 by outputting position information detected by the detector 72z during vibration cutting to the numerical control device 1.
- the machine tool has one or more tool rests.
- the drive mechanism drives the tool rest and the tool.
- the tool rest and the tool are driven objects driven by the drive mechanism.
- the tool is attached to the tool rest.
- the drive unit 7 has a set of servo motors 71x, 71z, detectors 72x, 72z, and servo control units 73x, 73z for each tool rest.
- the drive unit 7 includes a spindle motor 71s, a detector 72s, and a spindle control unit 73s.
- the spindle motor 71s rotates the spindle.
- the spindle is the axis that rotates the workpiece.
- the detector 72s detects the rotational position and rotational speed of the spindle motor 71s.
- the detector 72s outputs position information indicating the rotational position of the spindle motor 71s and speed information indicating the rotational speed of the spindle motor 71s to the spindle control unit 73s.
- the numerical control device 1 outputs a command to rotate the spindle to the spindle control unit 73s.
- the spindle control unit 73s performs feedback control of the spindle motor 71s based on the command from the numerical control device 1 and the position information and speed information from the detector 72s.
- the drive unit 7 rotates the workpiece by feedback control of the spindle motor 71s.
- the machine tool may be one that machines one workpiece, or one that machines two or more workpieces simultaneously.
- the drive unit 7 is provided with two or more sets of spindle motor 71s, detector 72s, and spindle control unit 73s.
- the machine tool is provided with, for example, two or more tool rests.
- the input operation unit 2 is an input means for inputting information to the control calculation unit 4.
- the input operation unit 2 includes devices such as a keyboard, a touch panel, buttons, or a mouse.
- the input operation unit 2 is operated, for example, by a machine tool operator or a machine tool maintenance technician.
- the input operation unit 2 accepts information such as commands, machining program numbers, or parameters related to vibration cutting, and inputs the accepted information to the control calculation unit 4.
- the output unit 3 is an output means that outputs the information processed by the control calculation unit 4.
- the output unit 3 includes a display means such as a liquid crystal display device.
- the output unit 3 displays the information processed by the control calculation unit 4 on a screen.
- the output unit 3 is not limited to being equipped with a display means.
- the output unit 3 may also be equipped with an audio device such as a speaker.
- the output unit 3 may also output information to a device external to the numerical control device 1.
- the numerical control device 1 may be connected to a network, and the output unit 3 may transmit information via the network to a display device connected to the network or a computer connected to the network.
- the control calculation unit 4 includes an input control unit 41, a data setting unit 42, a memory unit 43, an output control unit 44, an analysis processing unit 45, a control signal processing unit 46, a PLC (Programmable Logic Controller) circuit unit 47, an interpolation processing unit 48, an acceleration/deceleration processing unit 49, an axis data input/output unit 50, and a data management unit 51.
- the PLC circuit unit 47 is disposed inside the control calculation unit 4, but the PLC circuit unit 47 may be disposed outside the control calculation unit 4.
- the input control unit 41 accepts information input from the input operation unit 2 and outputs the accepted information to the data setting unit 42.
- the data setting unit 42 stores the information from the input control unit 41 in the memory unit 43. In other words, the input information accepted by the input operation unit 2 is written to the memory unit 43 via the input control unit 41 and the data setting unit 42.
- the storage unit 43 is a device for storing data, such as a non-volatile memory or a hard disk.
- the storage unit 43 includes a parameter storage area 431, a machining program storage area 432, a display data storage area 433, and a shared area 434.
- the parameter storage area 431 stores various parameters used in the processing of the control calculation unit 4. Specifically, the parameter storage area 431 stores control parameters for operating the numerical control device 1, servo parameters, tool data, parameters related to vibration cutting, and the like.
- the machining program memory area 432 stores machining programs, which are NC programs used to machine the workpiece.
- the machining programs stored in the machining program memory area 432 include one or more blocks.
- the machining programs include commands such as movement commands, which are commands to move the tool, and rotation commands, which are commands to rotate the spindle.
- the display data memory area 433 stores screen display data, which is data for the screen displayed by the output unit 3.
- the shared area 434 stores data that is temporarily used when the control calculation unit 4 executes each process. For example, the machining program number accepted by the input operation unit 2 is written to the shared area 434 of the memory unit 43 via the input control unit 41 and the data setting unit 42.
- the output control unit 44 causes the output unit 3 to display the screen display data stored in the display data memory area 433 of the memory unit 43.
- the analysis processing unit 45, the control signal processing unit 46, and the interpolation processing unit 48 are connected to each other via the memory unit 43, and information is written and read via the memory unit 43.
- the explanation of the mediation of the memory unit 43 with regard to the writing and reading of information between the analysis processing unit 45, the control signal processing unit 46, and the interpolation processing unit 48 may be omitted.
- the analysis processing unit 45 is connected to the memory unit 43.
- the analysis processing unit 45 refers to the machining program number written in the shared area 434.
- the analysis processing unit 45 receives a machining program number selected from the shared area 434, it reads out the machining program indicated by the selected machining program number from the machining program memory area 432 and performs analysis processing on each block of the machining program, i.e., each line of the machining program.
- the analysis processing unit 45 analyzes various codes such as S codes, which are commands for the rotation speed of the spindle motor 71s, G codes, which are commands related to axis movement, which is the movement of the tool, and M codes, which are machine operation commands.
- S codes which are commands for the rotation speed of the spindle motor 71s
- G codes which are commands related to axis movement, which is the movement of the tool
- M codes which are machine operation commands.
- the analysis processing unit 45 obtains the rotation speed of the spindle by analyzing the S code included in the machining program. The analysis processing unit 45 writes the obtained rotation speed in the shared area 434.
- the analysis processing unit 45 analyzes the G-code included in the machining program to obtain the movement conditions, which are the conditions for tool feed.
- Such movement conditions include the speed at which the tool post moves in each of the X-axis and Z-axis directions, and the position to which the tool post moves in each of the X-axis and Z-axis directions.
- the analysis processing unit 45 writes the obtained movement conditions in the shared area 434.
- the analysis processing unit 45 analyzes the G-code included in the machining program to obtain vibration conditions, which are conditions for vibration in vibration cutting.
- the vibration conditions include a vibration frequency, which is a frequency at which the tool is vibrated in vibration cutting, and an amplitude at which the tool is vibrated in vibration cutting.
- the analysis processing unit 45 writes the obtained vibration conditions in the shared area 434.
- the control signal processing unit 46 is connected to the PLC circuit unit 47, and receives signal information from the PLC circuit unit 47, such as relays that operate the machine tool.
- the control signal processing unit 46 writes the received signal information into the shared area 434.
- the interpolation processing unit 48 refers to the signal information written into the shared area 434 during machining operations.
- the control signal processing unit 46 reads the auxiliary command from the shared area 434 and sends the auxiliary command to the PLC circuit unit 47.
- the auxiliary command is a command other than a command to operate a drive axis, which is a numerically controlled axis.
- the auxiliary command is, for example, an M code or a T code.
- the interpolation processing unit 48 is connected to the memory unit 43, the acceleration/deceleration processing unit 49, and the data management unit 51.
- the interpolation processing unit 48 reads the movement conditions and vibration conditions from the shared area 434. Based on the read movement conditions and the read vibration conditions, the interpolation processing unit 48 generates an X-axis command vibration movement amount, which is a command for the vibration movement amount in the X-axis direction, and a Z-axis command vibration movement amount, which is a command for the vibration movement amount in the Z-axis direction.
- the X-axis command vibration movement amount and the Z-axis command vibration movement amount are collectively referred to as command vibration movement amount.
- the interpolation processing unit 48 writes the generated command vibration movement amount in the shared area 434 and outputs the generated command vibration movement amount to the acceleration/deceleration processing unit 49.
- the acceleration/deceleration processing unit 49 is connected to the interpolation processing unit 48 and the axis data input/output unit 50.
- the acceleration/deceleration processing unit 49 acquires the command vibration movement amount from the interpolation processing unit 48, and converts the command vibration movement amount into a movement command per unit time that takes into account acceleration/deceleration according to a pre-specified acceleration/deceleration pattern.
- the acceleration/deceleration processing unit 49 outputs the movement command per unit time to the axis data input/output unit 50.
- the axis data input/output unit 50 is connected to the acceleration/deceleration processing unit 49 and the drive unit 7.
- the axis data input/output unit 50 acquires a movement command per unit time from the acceleration/deceleration processing unit 49, and outputs the movement command per unit time to the drive unit 7.
- the axis data input/output unit 50 also acquires an FB vibration movement amount from the drive unit 7, and outputs the FB vibration movement amount to the acceleration/deceleration processing unit 49.
- the acceleration/deceleration processing unit 49 acquires an FB vibration movement amount from the axis data input/output unit 50, and outputs the FB vibration movement amount to the interpolation processing unit 48.
- the interpolation processing unit 48 includes a measurement unit 481, an estimation unit 482, a vibration condition change unit 483, a waveform generation unit 484, a vibration movement amount generation unit 485, a machining program change unit 487, and a stroke operation execution unit 488.
- the measuring unit 481 measures the execution time for which vibration cutting is performed.
- the estimating unit 482 estimates the remaining lifespan of the mechanical components that make up the drive mechanism based on the execution time of vibration cutting and an operation coefficient based on the vibration conditions of vibration cutting. Alternatively, the estimating unit 482 estimates the remaining lifespan of the mechanical components that make up the drive mechanism based on the number of vibrations of the micro-vibrations associated with vibration cutting.
- the numerical control device 1 estimates the deterioration status of the drive mechanism caused by vibration cutting by estimating the remaining lifespan of the mechanical components in the estimating unit 482.
- micro-vibrations associated with vibration cutting are vibrations based on the vibration conditions that vibrate the tool in vibration cutting, and are, for example, vibrations that are transmitted to the mechanical components that make up the drive mechanism while vibration cutting is being performed.
- the transmission of the micro-vibrations associated with vibration cutting to the mechanical components that make up the drive mechanism is a factor that has a significant impact on the deterioration of the mechanical components that make up the drive mechanism.
- the vibration condition change unit 483 proposes changes to the vibration conditions based on the remaining life estimated by the estimation unit 482, and also accepts instructions to change the vibration conditions, and changes the vibration conditions according to the change instructions.
- the waveform generating unit 484 acquires vibration conditions from the analysis processing unit 45, and generates a vibration waveform, which is a basic vibration waveform, based on the acquired vibration conditions.
- the waveform generating unit 484 generates a vibration waveform based on the changed vibration conditions.
- the vibration movement amount generating unit 485 determines the vibration movement amount, for example in the Z-axis direction, based on the vibration waveform generated by the waveform generating unit 484 and the tool movement path. Specifically, the vibration movement amount generating unit 485 generates the vibration movement amount in the Z-axis by determining the vibration forward position and the vibration backward position for each vibration.
- the vibration forward position is a position that is forward from a position on the tool movement path by a distance equivalent to the amplitude shown in the vibration waveform.
- the vibration backward position is a position that is backward from a position on the tool movement path by a distance equivalent to the amplitude shown in the vibration waveform.
- the vibration movement amount generating unit 485 generates a command vibration movement amount by determining the vibration movement amount.
- the command vibration movement amount generated by the vibration movement amount generation unit 485 is sent to the drive unit 7 via the acceleration/deceleration processing unit 49 and the axis data input/output unit 50.
- the drive unit 7 performs vibration cutting based on the command vibration movement amount sent from the vibration movement amount generation unit 485.
- the drive unit 7 performs vibration cutting by controlling the servo motor 71z based on the Z-axis command vibration movement amount, for example.
- the machining program change unit 487 which is the second change unit, changes the machining program. Details of the change of the machining program by the machining program change unit 487 will be described later.
- the stroke operation execution unit 488 causes the drive mechanism to execute stroke operation that rotates the bearing.
- the data management unit 51 manages data for estimating the deterioration status of the drive mechanism.
- the data management unit 51 includes a ball screw data management unit 511 that manages data for estimating the deterioration status of the ball screw, and a bearing data management unit 512 that manages data for estimating the deterioration status of the bearings.
- Fig. 2 is a diagram showing an example of the configuration of the drive mechanism provided in a machine tool controlled by the numerical control device 1 according to the first embodiment.
- Fig. 2 shows an example of the configuration of drive mechanism 8z, which is a Z-axis drive mechanism.
- the X-axis drive mechanism has a similar configuration to drive mechanism 8z.
- the drive mechanism 8z includes a servo motor 71z, a ball screw 81z, a table 82z which is a tool rest, and support mechanisms 83z1 and 83z2.
- the drive mechanism 8z is a mechanism that converts the rotational motion of the ball screw 81z, which is a mechanical component that rotates by receiving power from the servo motor 71z, into the linear motion of the table 82z.
- the tool is attached to the table 82z. The tool is not shown in FIG. 2.
- the drive mechanism 8z moves the tool in the Z-axis direction together with the table 82z.
- the shaft 711z of the servo motor 71z and the ball screw 81z are connected via a coupling 84z.
- the power of the servo motor 71z is transmitted to the ball screw 81z via the coupling 84z.
- the ball screw 81z rotates by receiving the power of the servo motor 71z.
- the center line of the shaft 711z, which is the center of rotation, and the center line of the ball screw 81z, which is the center of rotation, are coincident with each other.
- the center line of the shaft 711z and the center line of the ball screw 81z are parallel to the Z axis.
- the support mechanism 83z1 rotatably supports one end of the ball screw 81z.
- the support mechanism 83z2 rotatably supports the other end of the ball screw 81z.
- the table 82z moves in a linear direction due to the rotation of the ball screw 81z in the nut 85z.
- the drive mechanism 8z converts the rotational motion of the servo motor 71z into linear motion using the ball screw 81z and the nut 85z.
- a number of balls 86z which are rolling elements, are placed between the screw groove of the ball screw 81z and the screw groove of the nut 85z.
- the balls 86z rotate between the screw groove of the ball screw 81z and the screw groove of the nut 85z, allowing the ball screw 81z to rotate smoothly relative to the nut 85z.
- the double-headed arrow 87 in FIG. 2 indicates that the table 82z can move in the Z-axis direction.
- the tool moves in the Z-axis direction together with the table 82z.
- the support mechanism 83z1 has a built-in bearing for smoothly rotating the ball screw 81z relative to the support mechanism 83z1.
- the support mechanism 83z2 has a built-in bearing for smoothly rotating the ball screw 81z relative to the support mechanism 83z2.
- Two bearings are built into the servo motor 71z for smoothly rotating the shaft 711z.
- FIG. 3 is a diagram showing an example of the configuration of a bearing provided in the drive mechanism shown in FIG. 2.
- FIG. 3 shows an example of the configuration of bearing 712z, which is a bearing inside servo motor 71z.
- Bearing 712z which is a bearing inside servo motor 71z, the bearing inside support mechanism 83z1, and the bearing inside support mechanism 83z2 have the same configuration.
- FIG. 3 shows a cross section perpendicular to the center line of shaft 711z.
- the bearing 712z includes an outer ring 713z and an inner ring 714z.
- the inner ring 714z is fixed to the shaft 711z.
- the inner ring 714z rotates together with the shaft 711z.
- a plurality of balls 715z which are rolling elements, are mounted between the outer ring 713z and the inner ring 714z.
- the rotation of the balls 715z between the outer ring 713z and the inner ring 714z allows the inner ring 714z and the shaft 711z to rotate smoothly relative to the outer ring 713z.
- the double-headed arrow 716 shown in FIG. 3 indicates that the shaft 711z is rotatable.
- the double-headed arrow 717 shown in FIG. 3 indicates that the balls 715z are rotatable.
- the ball screw 81z may deteriorate due to the load it receives when the drive mechanism 8z is operated.
- Deterioration of the ball screw 81z refers to, for example, the occurrence of so-called flaking, in which the surface peels off, in the screw groove of the ball screw 81z. Flaking of the ball screw 81z can be a factor in deteriorating the positioning accuracy of the driven body by the drive mechanism 8z, and if it deteriorates further, it will reach the end of its life and require replacement of the ball screw 81z.
- the numerical control device 1 estimates the remaining life of the ball screw 81z, which is a mechanical component, by the estimation unit 482.
- the numerical control device 1 estimates the deterioration of the ball screw 81z by estimating the remaining life of the ball screw 81z.
- the remaining life is the period remaining until the end of the life.
- the estimation unit 482 estimates the remaining life of the ball screw 81z, which is a mechanical component, based on an operation coefficient that is based on the execution time of vibration cutting and the vibration conditions of vibration cutting.
- the estimation unit 482 estimates the remaining life based on the vibration frequency and the execution time measured by the measurement unit 481.
- the estimation unit 482 refers to the relationship between the life of the ball screw 81z and an operation coefficient that represents the mode of operation of the drive mechanism 8z in vibration cutting, and estimates the remaining life of the ball screw 81z based on a cumulative value that is a result of accumulating the execution time, and an effective operation coefficient that is an operation coefficient obtained from vibration conditions that are conditions for vibration in vibration cutting.
- the operation coefficient in this disclosure is a coefficient that is related to, for example, the frequency and magnitude of micro-vibrations associated with vibration cutting.
- the cumulative value that is a result of accumulating the execution time is also referred to as the cumulative time.
- the cumulative time for the ball screw 81z refers to the cumulative time since the use of the currently used ball screw 81z began.
- FIG. 4 is a diagram for explaining the relationship between the operation coefficient referenced in the estimation unit 482 of the numerical control device 1 according to the first embodiment and the lifespan.
- FIG. 4 shows an example of a graph showing the relationship between the operation coefficient of the ball screw 81z and the lifespan of the ball screw 81z.
- the vertical axis represents the lifespan
- the horizontal axis represents the operation coefficient.
- the unit of lifespan is "hours (h)."
- L is the life (h)
- Nm is the average rotational speed (min -1 )
- C is the basic dynamic load rating (N)
- Fm is the average axial load (N)
- ⁇ is the operation coefficient.
- the operation coefficient is set to a value within the range of 1.0 to 1.2.
- the operation coefficient is set to a value within the range of 1.2 to 1.5.
- the operation coefficient is set to a value within the range of 1.5 to 2.0.
- the operation coefficient of the ball screw used in the machine tool is set to a value within the range of 1.2 to 2.0, depending on the operating conditions of the machine tool.
- the operation coefficient changes depending on the vibration conditions of vibration cutting.
- FIG. 5 is a diagram for explaining the relationship between the vibration conditions referenced in the estimation unit 482 of the numerical control device 1 according to the first embodiment and the operation coefficient.
- FIG. 5 shows a table showing the relationship between the amplitude at which the driven body is vibrated in vibration cutting, the vibration frequency in vibration cutting, and the operation coefficient of the ball screw 81z.
- the unit of amplitude is " ⁇ m" and the unit of vibration frequency is "Hz.”
- the values of the operation coefficients shown in FIG. 5 are calculated in advance, for example, by actually operating the machine tool. Data representing the relationship between the amplitude and vibration frequency and the operation coefficient of the ball screw 81z is registered in advance in the parameter storage area 431.
- the estimation unit 482 estimates the remaining life of the ball screw 81z by referring to the relationship between the amplitude and vibration frequency and the operation coefficient of the ball screw 81z as shown in FIG. 5. Note that the relationship between the amplitude and vibration frequency and the operation coefficient of the ball screw 81z shown in FIG. 5 is one example. In other words, the value of the operation coefficient of the ball screw 81z for the amplitude and vibration frequency is not limited to the value shown in FIG. 5.
- the drive mechanism 8z is capable of vibrating the driven body at each of a plurality of positions in the direction of the center line of the ball screw 81z.
- the interval between each position of the ball screw 81z is, for example, equal to the thread pitch of the ball screw 81z. In other words, the interval between each position of the ball screw 81z is equal to the amount of movement of the driven body when the ball screw 81z is rotated 360 degrees.
- the interval between each position of the ball screw 81z is, for example, 6 mm.
- the interval between each position of the ball screw 81z may be different from the thread pitch of the ball screw 81z and can be set arbitrarily. However, it is better for the interval between each position of the ball screw 81z to be smaller.
- the measurement unit 481 measures the execution time of vibration cutting at each position of the ball screw 81z.
- the interpolation processing unit 48 sends the measurement results by the measurement unit 481 to the data management unit 51.
- the ball screw data management unit 511 calculates the cumulative time of vibration cutting for each position of the ball screw 81z by tallying up the execution time of vibration cutting for each position of the ball screw 81z. In this way, the ball screw data management unit 511 calculates the cumulative time of vibration cutting due to the vibration of the driven body at each of the multiple positions on the ball screw 81z.
- the ball screw data management unit 511 also calculates an effective operating coefficient for each position of the ball screw 81z.
- the ball screw data management unit 511 calculates the effective operating coefficient for each of the multiple positions based on the cumulative time calculated for each of the multiple positions and the vibration conditions when the driven body is vibrated at each of the multiple positions.
- the multiple positions of the ball screw 81z are n positions from P x1 to P xn , where n is an integer equal to or greater than 2.
- the accumulated time values for each position from P x1 to P xn and the effective operation coefficients for each position from P x1 to P xn are stored in the shared area 434.
- the ball screw data management unit 511 adds the execution time value measured for the vibration cutting due to the vibration of the driven body at P x1 to the accumulated time value stored for P x1 . In this way, the ball screw data management unit 511 updates the accumulated time for P x1 .
- vibration cutting due to the vibration of the driven body at P x1 is referred to as vibration cutting of P x1 .
- the ball screw data management unit 511 updates the accumulated time for P x1 every time vibration cutting of P x1 is executed.
- the ball screw data management unit 511 obtains the operation coefficient of the ball screw 81z when the vibration cutting of P x1 is performed based on the amplitude and vibration frequency, which are the vibration conditions in the vibration cutting of P x1 .
- the ball screw data management unit 511 obtains the operation coefficient for the vibration cutting of P x1 by referring to the relationship between the amplitude and vibration frequency and the operation coefficient of the ball screw 81z as shown in FIG. 5.
- the ball screw data management unit 511 obtains the values of the amplitude and vibration frequency by, for example, reading the vibration conditions written in the shared area 434 by the analysis processing unit 45 from the shared area 434 via the interpolation processing unit 48. When the vibration frequency and the amplitude are measured by the measurement unit 481, the ball screw data management unit 511 may obtain the values of the vibration frequency and the amplitude from the measurement unit 481.
- the ball screw data management unit 511 calculates an effective operation coefficient for P x1 by calculating a weighted average of the operation coefficients calculated each time vibration cutting of P x1 is performed. For example, assuming that vibration cutting of P x1 has been performed k times since the currently used ball screw 81z began to be used, the ball screw data management unit 511 calculates the effective operation coefficient for P x1 by the following formula (2), where k is an integer of 2 or more.
- Effective operation coefficient for P x1 ⁇ (Execution time of vibration cutting of the first P x1 ⁇ operation coefficient for vibration cutting of the first P x1 )+...+(Execution time of vibration cutting of the kth P x1 ⁇ operation coefficient for vibration cutting of the kth P x1 ) ⁇ /(Cumulative time for P x1 )...(2)
- the ball screw data management unit 511 updates the effective operation coefficient for P x1 every time vibration cutting of P x1 is performed.
- the ball screw data management unit 511 calculates the accumulated time and effective operation coefficient for each of the multiple positions of the ball screw 81z other than P x1 in the same manner as for P x1 . In this manner, the ball screw data management unit 511 calculates the accumulated time for each of the multiple positions of the ball screw 81z and the effective operation coefficient for each of the multiple positions of the ball screw 81z.
- the effective operation coefficient is calculated by referring to the relationship between the amplitude and vibration frequency and the operation coefficient of the ball screw 81z, but the method of calculating the effective operation coefficient is not limited to this.
- FIG. 6 is a diagram showing an example of the calculation results of the accumulated time and the effective operation coefficient by the numerical control device 1 according to the first embodiment.
- FIG. 6 shows a bar graph representing the accumulated time for each of multiple positions on the ball screw 81z.
- the numerical value shown above each bar graph represents the effective operation coefficient for each of the multiple positions.
- the ball screw position is each of the multiple positions on the ball screw 81z represented by the distance from a reference position of the ball screw 81z.
- the vertical axis represents the accumulated time of vibration cutting.
- the horizontal axis represents the ball screw position.
- the unit of the accumulated time is "hours (h)"
- the unit of the ball screw position is "mm".
- vibration cutting with a ball screw position of 120 mm is case (A)
- vibration cutting with a ball screw position of 126 mm is case (B)
- vibration cutting with a ball screw position of 132 mm is case (C).
- the cumulative time is 4,300 hours and the effective operation coefficient is 1.6.
- the cumulative time is 4,800 hours and the effective operation coefficient is 1.56.
- the cumulative time is 4,500 hours and the effective operation coefficient is 1.65.
- the notations "(A)", “(B)", and "(C)” represent case (A), case (B), and case (C), respectively.
- the estimation unit 482 estimates the life of each of the multiple positions of the ball screw 81z based on the effective operating coefficient for each of the multiple positions of the ball screw 81z.
- the estimation unit 482 estimates the life of each of the multiple positions of the ball screw 81z by referring to the relationship between the operating coefficient of the ball screw 81z and the life of the ball screw 81z as shown in FIG. 4.
- the estimation unit 482 estimates the remaining life at each of the multiple positions of the ball screw 81z by subtracting the accumulated time calculated by the ball screw data management unit 511 from the time that is the estimated life for each position of the ball screw 81z. In this way, the estimation unit 482 estimates the remaining life of the ball screw 81z based on the accumulated time and the effective operation coefficient, with reference to the relationship between the operation coefficient of the ball screw 81z and the life of the ball screw 81z. The estimation unit 482 estimates the remaining life based on the effective operation coefficient calculated based on the vibration frequency and amplitude, and the accumulated time that is the result of accumulating the execution time.
- the estimation unit 482 compares the remaining life estimated for each of the multiple positions with a preset first threshold value.
- the first threshold value is a threshold value for determining whether or not the ball screw 81z needs to be replaced. If the remaining life estimated for each of the multiple positions includes a remaining life equal to or less than the first threshold value, the interpolation processing unit 48 instructs the output control unit 44 via the storage unit 43 to output a warning that the ball screw 81z needs to be replaced.
- the output control unit 44 receives an instruction from the interpolation processing unit 48, it reads screen display data for displaying a warning that the ball screw 81z needs to be replaced from the display data storage area 433, and outputs the read screen display data to the output unit 3.
- the output unit 3 displays the warning indicated by the screen display data.
- the numerical control device 1 outputs a warning indicating that the ball screw 81z needs to be replaced when the remaining life estimated for, for example, a specific position among the multiple positions includes a remaining life equal to or less than the first threshold value. This allows the numerical control device 1 to inform the operator or the maintenance person of the machine tool that it is time to replace the ball screw 81z.
- the estimation unit 482 compares the remaining life estimated for each of the multiple positions with a preset second threshold value.
- the second threshold value is a threshold value for determining whether or not to propose a change in vibration conditions in vibration cutting. If the remaining life estimated for each of the multiple positions includes a remaining life equal to or less than the second threshold value, the estimation unit 482 instructs the vibration condition change unit 483 to calculate life extension conditions.
- the life extension conditions are vibration conditions that are expected to extend the life of the ball screw 81z compared to when future vibration cutting is performed under the current vibration conditions.
- the vibration condition change unit 483 calculates the life extension conditions according to the instructions from the estimation unit 482.
- the vibration condition change unit 483 also instructs the output control unit 44 via the storage unit 43 to propose changing the vibration conditions to the calculated life extension conditions.
- the output control unit 44 reads screen display data for displaying a message encouraging the user to change the vibration conditions from the display data storage area 433, and outputs the read screen display data to the output unit 3.
- the output unit 3 displays a message encouraging the user to change the vibration conditions according to the screen display data.
- the vibration condition change unit 483 proposes a change to the vibration conditions for vibration cutting based on the remaining life estimated by the estimation unit 482.
- the numerical control device 1 accepts an instruction to change the proposed vibration conditions on a screen displayed on the output unit 3.
- the operator inputs an instruction to change the vibration conditions to the numerical control device 1 by operating the input operation unit 2.
- the input control unit 41 sends an instruction to change the vibration conditions to the interpolation processing unit 48 via the data setting unit 42 and the memory unit 43.
- the vibration condition change unit 483 changes the vibration conditions in accordance with the instruction to change the vibration conditions.
- the numerical control device 1 causes the machine tool to perform vibration cutting under the changed vibration conditions. By changing the vibration conditions to the calculated life extension conditions, the numerical control device 1 can take measures to extend the life of the ball screw 81z.
- FIG. 7 is a flowchart showing an example of the procedure of the process executed by the numerical control device 1 according to the first embodiment.
- the vibration frequency before the vibration conditions are changed is assumed to be, for example, 90.9 Hz.
- the numerical control device 1 appropriately calculates an effective operating coefficient for each of multiple positions in the ball screw 81z from the vibration conditions of the performed vibration cutting, i.e., the vibration frequency and vibration amplitude, etc.
- the measurement unit 481 measures the execution time of vibration cutting.
- the machine tool performs vibration cutting when the vibration cutting mode, which is one of the operating modes of the machine tool, is on. For example, when the measurement unit 481 receives a command to start cutting while the vibration cutting mode is on, it starts measuring the execution time of vibration cutting.
- the measurement unit 481 ends measuring the execution time of vibration cutting. For example, when the measurement unit 481 receives a command to end cutting while the vibration cutting mode is on, it ends measuring the execution time of vibration cutting.
- the measurement unit 481 measures the execution time of vibration cutting at each of the multiple positions on the ball screw 81z.
- the execution time values measured by the measurement unit 481 are sent to the data management unit 51.
- the ball screw data management unit 511 reads out the accumulated time values stored for each of the multiple positions from the shared area 434, and adds the execution time value measured in step S1 to the read accumulated time value.
- the ball screw data management unit 511 stores the accumulated time value to which the execution time value has been added in the shared area 434. This updates the accumulated time value stored in the shared area 434.
- step S2 the estimation unit 482 estimates the remaining life at each of the multiple positions of the ball screw 81z.
- the estimation unit 482 reads out the effective operation coefficient for each of the multiple positions of the ball screw 81z from the shared area 434, and estimates the life at each of the multiple positions of the ball screw 81z based on the effective operation coefficient.
- the estimation unit 482 reads out the accumulated time value for each of the multiple positions of the ball screw 81z from the shared area 434, and estimates the remaining life at each of the multiple positions of the ball screw 81z by subtracting the accumulated time from the estimated life.
- the estimation unit 482 stores the remaining life estimation results for each of the multiple positions of the ball screw 81z in the shared area 434.
- the output control unit 44 reads out the remaining life estimation results for each of the multiple positions of the ball screw 81z from the shared area 434.
- the output control unit 44 also reads out screen display data for displaying the remaining life for each of the multiple positions of the ball screw 81z from the display data storage area 433.
- the output control unit 44 outputs the screen display data reflecting the remaining life estimation results to the output unit 3.
- the output unit 3 displays the remaining life in accordance with the screen display data. Specific examples of the display of the remaining life will be described later.
- step S3 the estimation unit 482 determines whether the remaining life estimated in step S2 is equal to or less than a first threshold value.
- the first threshold value is, for example, 0 hours. When the first threshold value is 0 hours, the remaining life being equal to or less than the first threshold value means that the estimated life has passed. Note that the first threshold value is not limited to 0 hours, and may be a value greater than 0 hours.
- step S4 the output unit 3 outputs a warning indicating that the ball screw 81z needs to be replaced.
- the output unit 3 displays a warning screen including a message warning that the ball screw 81z needs to be replaced. A specific example of the warning screen will be described later.
- step S5 the estimation unit 482 determines whether the remaining life estimated in step S2 is equal to or less than the second threshold.
- the second threshold is, for example, 3000 hours.
- the second threshold is not limited to 3000 hours, and may be a value greater than 3000 hours or less than 3000 hours.
- step S5 If the remaining life for at least one of the multiple positions is equal to or less than the second threshold value (step S5, Yes), the estimation unit 482 instructs the vibration condition change unit 483 to calculate the life extension condition.
- step S6 the vibration condition change unit 483 calculates the life extension condition. The method of calculating the life extension condition will be described in detail later.
- the vibration condition change unit 483 proposes changing the vibration condition to the calculated life extension condition.
- step S7 the vibration condition change unit 483 changes the vibration conditions according to the instruction to change the vibration conditions.
- step S7 the numerical control device 1 ends the processing according to the procedure shown in FIG. 7.
- step S5, No the numerical control device 1 ends the process according to the procedure shown in FIG. 7. If no changes are made to the proposed vibration conditions, the numerical control device 1 ends the process according to the procedure shown in FIG. 7 without changing the vibration conditions. If the numerical control device 1 does not issue a warning or change the vibration conditions, after ending the process according to the procedure shown in FIG. 7, it executes the process according to the procedure shown in FIG. 7 again.
- FIG. 8 is a diagram showing an example of the remaining lifespan estimated by the numerical control device 1 according to the first embodiment.
- FIG. 8 shows a state in which a bar graph showing the remaining lifespan is displayed on a screen displayed by the output unit 3.
- a curve graph showing the relationship between the operation coefficient of the ball screw 81z and the lifespan of the ball screw 81z is displayed together with the bar graph showing the remaining lifespan.
- Such a curve graph is the same as the graph shown in FIG. 4.
- FIG. 8 shows three bar graphs showing the remaining lifespan for the above cases (A), (B), and (C) as an example of the remaining lifespan. Note that in FIG.
- the notations “(A)”, “(B)”, and “(C)” represent cases (A), (B), and (C), respectively, and are added for the purpose of explanation.
- the notations “(A)”, “(B)", and “(C)” in FIG. 8 are not included in the display on the screen.
- the bar graph for case (A) is shown centered at "1.6” on the horizontal axis. "1.6” is the effective operating coefficient for case (A). "120” shown in the bar graph for case (A) indicates that the ball screw position for case (A) is 120 mm.
- the toned portion of the bar graph for case (A) represents the cumulative time of vibration cutting at a ball screw position of 120 mm up to the present.
- the dashed portion of the bar graph for case (A) represents the time from the present onwards during which vibration cutting is possible at a ball screw position of 120 mm, i.e., the remaining life for a ball screw position of 120 mm.
- "3700" shown in the bar graph for case (A) represents a remaining life of 3700 hours.
- the bar graph for case (B) is shown centered at "1.56" on the horizontal axis. "1.56” is the effective operating coefficient for case (B).
- "126” shown in the bar graph for case (B) indicates that the ball screw position for case (B) is 126 mm.
- the toned portion of the bar graph for case (B) indicates the accumulated time of vibration cutting at ball screw position 126 mm up to the present.
- the dashed portion of the bar graph for case (B) indicates the time from the present onwards when vibration cutting is possible at ball screw position 126 mm, i.e., the remaining life for ball screw position 126 mm.
- "4300” shown in the bar graph for case (B) indicates that the remaining life is 4300 hours.
- the bar graph for case (C) is shown centered at "1.65" on the horizontal axis. "1.65" is the effective operating coefficient for case (C).
- "132" shown in the bar graph for case (C) indicates that the ball screw position for case (C) is 132 mm.
- the toned portion of the bar graph for case (C) indicates the accumulated time of vibration cutting at ball screw position 132 mm up to the present.
- the dashed portion of the bar graph for case (C) indicates the time from the present onwards during which vibration cutting is possible at ball screw position 132 mm, i.e., the remaining life for ball screw position 132 mm.
- "3000" shown in the bar graph for case (C) indicates that the remaining life is 3000 hours.
- a mark 31 indicating that the remaining life is equal to or less than the second threshold is displayed on the bar graph for case (C).
- the mark 31 shown in Figure 8 is a star-shaped mark.
- the shape of the mark 31 is not limited to a star and may be any shape.
- the output unit 3 may indicate that the remaining life is equal to or less than the second threshold by a method other than displaying the mark 31.
- the indication that the remaining life is equal to or less than the second threshold may be any method that allows an operator or maintenance person to recognize that the remaining life is equal to or less than the second threshold.
- the remaining life for each position of the ball screw 81z is shown by a bar graph and a numerical value indicating the remaining life in hours, but the manner in which the remaining life is displayed is not limited to that shown in FIG. 8.
- the remaining life may be displayed in any manner that allows an operator or maintenance person to recognize the remaining life for each position of the ball screw 81z.
- the output unit 3 may display the remaining life only by a numerical value indicating the remaining life in hours.
- the vibration condition change unit 483 calculates the life extension conditions for case (C). A method for calculating the life extension conditions will be described later.
- the output unit 3 displays a message 32 including wording encouraging a change in the vibration conditions on the screen.
- the remaining life will be extended from 3000 hours to 3270 hours by changing the vibration conditions to the calculated life extension conditions.
- the message 32 includes wording about the life of the ball screw 81z being extended from 3000 hours to 3270 hours.
- the message 32 also includes wording encouraging advance arrangements for the ball screw 81z.
- the operator or maintenance personnel can recognize the need to change the vibration conditions for vibration cutting.
- the operator or maintenance personnel can determine whether or not to change the vibration conditions while considering the need for changing the vibration conditions.
- the output unit 3 displays on the screen a button 33 for selecting a change in vibration conditions and a button 34 for selecting not to change the vibration conditions.
- a button 33 for selecting a change in vibration conditions
- a button 34 for selecting not to change the vibration conditions.
- Message 32 and buttons 33, 34 are displayed when the remaining lifespan estimated for each of the multiple positions includes a remaining lifespan equal to or less than the second threshold. Note that the layout of the screen on which the remaining lifespan is displayed is not limited to that shown in FIG. 8. The position or size on the screen of the remaining lifespan display, message 32, and buttons 33, 34 may be any desired one.
- FIG. 9 is a diagram showing an example of a warning display in the numerical control device 1 according to the first embodiment.
- FIG. 9 shows a warning screen displayed by the output unit 3, in which a warning message 36 is displayed.
- the message 36 includes a statement encouraging replacement of the ball screw 81z.
- the warning screen is displayed when the remaining life estimated for each of the multiple positions includes a remaining life equal to or less than a first threshold value.
- a curve graph showing the relationship between the operation coefficient of the ball screw 81z and the lifespan of the ball screw 81z is displayed on the warning screen.
- This curve graph is the same as the graph shown in FIG. 4.
- a bar graph showing the accumulated time for each of a plurality of positions in the ball screw 81z is displayed together with the curve graph.
- three bar graphs showing the accumulated time for three cases are shown as an example of the display of the accumulated time.
- the three cases are case (A'), case (B'), and case (C'). Note that in FIG.
- Case (A') is vibration cutting with a ball screw position of 120 mm and an effective operation coefficient of 1.6. Case (A') has the same ball screw position and effective operation coefficient as case (A) above, but the accumulated time is different from case (A).
- Case (B') is vibration cutting with a ball screw position of 126 mm and an effective operation coefficient of 1.56. Case (B') is the same ball screw position and effective operation coefficient as case (B) above, but the accumulated time is different from case (B).
- Case (C') is vibration cutting with a ball screw position of 132 mm and an effective operation coefficient of 1.65. Case (C') is the same ball screw position and effective operation coefficient as case (C) above, but the accumulated time is different from case (C).
- the effective operation coefficients are 1.56, 1.6, and 1.65, but even if the effective operation coefficient value is different from this case, a judgment similar to this case is possible.
- the difference between the lifespan shown by the curve graph, i.e., the estimated lifespan, and the accumulated time shown by the bar graph corresponds to the remaining lifespan.
- the remaining lifespan In the example shown in FIG. 9, of cases (A'), (B'), and (C'), only case (A') satisfies the requirement that the remaining lifespan is equal to or less than the first threshold value of 0 hours.
- a mark 35 indicating that the remaining life is equal to or less than the first threshold is displayed on the bar graph for case (A').
- the mark 35 shown in FIG. 9 is a star-shaped mark.
- the shape of the mark 35 is not limited to a star and may be any shape.
- the output unit 3 may indicate that the remaining life is equal to or less than the first threshold by a method other than the display of the mark 35.
- the indication that the remaining life is equal to or less than the first threshold may be any method that allows an operator or maintenance personnel to recognize that the remaining life is equal to or less than the first threshold.
- a graph showing the life span is displayed on the warning screen together with message 36, but the output unit 3 may be configured to display only message 36 on the warning screen.
- FIG. 10 is a diagram showing an example of vibration conditions that are preset in the numerical control device 1 according to the first embodiment.
- FIG. 10 shows an example of vibration conditions that enable vibration cutting, i.e., conditions that enable chips to be broken. Both the vibration conditions before and after the change are vibration conditions that are selected from a plurality of vibration conditions that are preset as vibration conditions that enable vibration cutting.
- the preset vibration conditions are the number of vibrations per one spindle rotation, the spindle rotation speed, and the vibration frequency.
- the set of preset vibration conditions is the set of the number of vibrations per one spindle rotation, the spindle rotation speed, and the vibration frequency.
- the unit of the number of vibrations per one spindle rotation is "revolutions”
- the unit of the spindle rotation speed is "r/min”
- the unit of the vibration frequency is "Hz”.
- the vibration frequency is uniquely determined from the number of vibrations per one spindle rotation and the spindle rotation speed.
- the vibration condition change unit 483 selects one of a number of sets of preset vibration conditions as the changed vibration conditions, i.e., the life extension conditions. In the changed vibration conditions, at least one of the number of vibrations per spindle revolution, the spindle rotation speed, and the vibration frequency is changed from the vibration conditions before the change.
- the vibration condition change unit 483 calculates, as the life extension condition, a vibration condition that at least reduces the vibration frequency compared to before the vibration condition was changed. Note that, since the vibration frequency is uniquely determined by the number of vibrations per rotation of the spindle and the spindle rotation speed, the vibration frequency is changed by changing at least one of the number of vibrations per rotation of the spindle and the spindle rotation speed.
- the vibration conditions before the change are a vibration frequency of "1.5 times” per spindle rotation, a spindle rotation speed of "3636 r/min", and a vibration frequency of "90.9 Hz”.
- the vibration conditions after the change are a vibration frequency of "1.5 times” per spindle rotation, a spindle rotation speed of "3333 r/min”, and a vibration frequency of "83.3 Hz”.
- the spindle rotation speed is changed from “3636 r/min” to "3333 r/min”
- the vibration frequency is changed from "90.9 Hz” to "83.3 Hz”. Because the vibration frequency after the change is smaller than the vibration frequency before the change, the changed vibration conditions make it possible to extend the life of the ball screw 81z.
- the spindle rotation speed approximately the same as before the change and reduce the number of vibrations per spindle rotation.
- the number of vibrations per spindle rotation will be reduced, and the chips will be longer than in the above example.
- the numerical control device 1 may display a warning to the operator or maintenance personnel on the output unit 3.
- the method of calculating the life extension conditions is not limited to the above method.
- the vibration condition change unit 483 may input a desired life extension time to the numerical control device 1, and change at least one of the number of vibrations per rotation of the spindle and the spindle rotation speed by back-calculating from the input life extension time.
- Figure 11 is a diagram for explaining the change in vibration waveform due to a change in vibration conditions in embodiment 1.
- the upper part of Figure 11 shows an example of a vibration waveform before the vibration conditions are changed.
- the lower part of Figure 11 shows an example of a vibration waveform after the vibration conditions are changed.
- the vertical axis represents the axial position and the horizontal axis represents time.
- the axial position is the position of the driven body in the vibration direction.
- the vibration condition changing unit 483 By changing the vibration conditions in the vibration condition changing unit 483, as shown in FIG. 11, it is possible to lower the vibration frequency while maintaining the state in which a whirlpool area occurs even after the vibration conditions are changed.
- This enables the numerical control device 1 to calculate vibration conditions that enable the life of mechanical components to be extended while satisfying the conditions that enable vibration cutting, i.e., the conditions that enable cutting while breaking up the chips.
- the vibration waveform shown in FIG. 11 may be based on either a vibration waveform based on a command value or a vibration waveform based on an FB value, as long as the vibration waveform based on the actual measurement value satisfies the conditions that enable vibration cutting.
- the vibration condition change unit 483 estimates that the remaining life can be extended from 3000 hours to 3270 hours, and displays a message 32 including text about the life of the ball screw 81z being extended from 3000 hours to 3270 hours.
- the numerical control device 1 can take measures to extend the life of the ball screw 81z while still allowing vibration cutting to be performed by changing the vibration conditions to life extension conditions calculated based on the estimated remaining life.
- the estimation unit 482 estimates the remaining life of the ball screw 81z based on the accumulated time, which is the result of accumulating the execution time of vibration cutting, and the effective operation coefficient.
- the estimation unit 482 may estimate the remaining life of the ball screw 81z based on the accumulated number, which is the result of accumulating the number of vibrations of the driven body in vibration cutting, and the effective operation coefficient.
- the estimation unit 482 estimates the remaining life of the ball screw 81z based on the accumulated value, which is the result of accumulating the execution time or the number of vibrations, and the effective operation coefficient.
- the accumulated number for the ball screw 81z refers to the accumulated number since the use of the currently used ball screw 81z began.
- the estimation unit 482 obtains the value of the vibration frequency by multiplying the vibration frequency by the execution time of vibration cutting.
- the estimation unit 482 may obtain the value of the vibration frequency by counting the vibration frequency.
- the estimation unit 482 may count the vibration frequency based on a vibration waveform, which is a basic vibration waveform generated by the waveform generation unit 484, for example.
- the numerical control device 1 By using the numerical control device 1 to estimate the remaining life of the ball screw 81z based on the cumulative value, which is the result of accumulating the execution time or the number of vibrations, and the effective operation coefficient, the operator or maintenance personnel can grasp the deterioration status of the ball screw 81z caused by vibration cutting.
- the numerical control device 1 calculates the life extension conditions using the vibration condition change unit 483, and changes the vibration conditions to extend the life of the ball screw 81z.
- the numerical control device 1 may also extend the life of the ball screw 81z by changing the position at which the driven body is vibrated during vibration cutting.
- the machining program change unit 487 changes the position at which the driven body is vibrated during vibration cutting based on the cumulative values tallied for each of the multiple positions on the ball screw 81z.
- step S5 shown in FIG. 7 when the remaining life of at least one of the multiple positions of the ball screw 81z is equal to or less than the second threshold value, the machining program modification unit 487 proposes a change to the machining program based on the cumulative time tallied for each of the multiple positions, and accepts an instruction to change the machining program, and modifies the machining program in accordance with the change instruction. By modifying the machining program, the machining program modification unit 487 modifies the position at which the driven body is vibrated in vibration cutting.
- the estimation unit 482 instructs the machining program modification unit 487 to select a machining program.
- the machining program modification unit 487 refers to the description of vibration cutting in the machining program stored in the machining program storage area 432 and analyzes the position at which the driven body is to be vibrated. Based on the analysis result, the machining program modification unit 487 selects, for example, a machining program that performs machining including vibration cutting at a position among the multiple positions of the ball screw 81z whose remaining life is greater than the second threshold.
- the machining program modification unit 487 selects, for example, a machining program to propose as the modified machining program from among the machining programs stored in the machining program storage area 432.
- the machining program change unit 487 selects a position from among the multiple positions of the ball screw 81z where the accumulated time does not exceed a preset upper limit time, and selects a machining program that vibrates the driven body at that position. For example, assume that the upper limit time is set to 4000 hours, and the accumulated time for each ball screw position is calculated as shown in FIG. 6. In this case, a machining program is selected in which the position at which the driven body is vibrated is a position where the remaining life is estimated to be greater than the second threshold value. For example, since the accumulated time exceeds 4000 hours in the ball screw position range of 120 mm to 132 mm, the machining program change unit 487 selects a ball screw position outside the range of 120 mm to 132 mm. The machining program change unit 487 selects a machining program that vibrates the driven body at the selected ball screw position.
- the machining program change unit 487 instructs the output control unit 44 via the storage unit 43 to propose a change to the selected machining program.
- the output control unit 44 Upon receiving an instruction from the machining program change unit 487, the output control unit 44 reads screen display data for displaying a message encouraging the user to change the machining program from the display data storage area 433, and outputs the read screen display data to the output unit 3.
- the output unit 3 displays a message encouraging the user to change the machining program in accordance with the screen display data. In this way, the machining program change unit 487 proposes a change to the machining program based on the cumulative time tallied for each of the multiple positions.
- the numerical control device 1 accepts the proposed instruction to change the machining program on the screen displayed on the output unit 3.
- the operator inputs the instruction to change the machining program to the numerical control device 1 by operating the input operation unit 2.
- the input control unit 41 sends the instruction to change the machining program to the interpolation processing unit 48 via the data setting unit 42 and the memory unit 43.
- the machining program change unit 487 changes the machining program in accordance with the instruction to change the machining program.
- the numerical control device 1 causes the machine tool to perform vibration cutting in accordance with the changed machining program.
- the numerical control device 1 can take measures to extend the life of the ball screw 81z by changing the position at which the driven body is vibrated and performing vibration cutting.
- the numerical control device 1 can effectively reduce uneven wear of the ball screw 81z by changing the position at which the driven body is vibrated. This allows the numerical control device 1 to extend the life of the ball screw 81z.
- the estimation unit 482 includes an estimation unit 482 that estimates the remaining life of mechanical components that constitute the drive mechanism based on the execution time for which vibration cutting was performed or the number of vibrations of the driven body in vibration cutting.
- An operator or maintenance person can know in advance when to replace the mechanical components by checking the remaining life estimation result by the estimation unit 482. This allows the operator or maintenance person to take appropriate measures to avoid a malfunction before a malfunction occurs in the drive mechanism. An operator or maintenance person can take appropriate measures to avoid a malfunction before the drive mechanism breaks down.
- the deterioration status of the ball screw 81z which is a mechanical component, caused by vibration cutting can be grasped.
- an operator or maintenance person can take appropriate measures appropriate to the deterioration status of the ball screw 81z.
- measures can be taken to reduce uneven wear of the ball screw 81z caused by vibration cutting. By being able to reduce uneven wear of the ball screw 81z, it is possible to avoid shortening the life of the ball screw 81z due to uneven wear.
- the numerical control device 1 has the effect of making it possible to grasp the deterioration status of the drive mechanism caused by vibration cutting for the drive mechanism of a machine tool that performs machining including vibration cutting.
- Embodiment 2 an example of estimating the remaining life of at least one of a bearing built into a servo motor and a bearing that rotatably supports a ball screw will be described.
- the operation described in the second embodiment is realized by the numerical control device 1 shown in Fig. 1.
- the processing executed by the numerical control device 1 will be described using as an example vibration cutting in which a driven body is vibrated in the Z-axis direction.
- the bearings 712z inside the servo motor 71z and the bearings inside the support mechanisms 83z1 and 83z2 will need to be replaced sooner due to their increased wear.
- the driven body may continue to vibrate at a certain position, so the bearings may wear in a manner different from that of normal cutting.
- the wear caused by vibration cutting is the same for the bearings of the nut 85z as it is for the bearings inside the support mechanisms 83z1 and 83z2, or the bearing 712z inside the servo motor 71z.
- the estimation unit 482 estimates the remaining life of at least one of the mechanical components, the bearing 712z inside the servo motor 71z and the bearing that rotatably supports the ball screw 81z.
- the estimation unit 482 determines the period during which the vibration of the driven body can be continued at the current position as the remaining life of the mechanical component, based on a continuation value that is the execution time or the number of vibrations for vibration cutting by continuing the vibration of the driven body at a fixed position. Vibration of the driven body at a fixed position refers to vibrating the driven body around a fixed position.
- the estimation unit 482 estimates the remaining life of the mechanical components based on a duration value, which is the execution time for vibration cutting by continuing to vibrate the driven body at a fixed position.
- the duration value which is the execution time for vibration cutting by continuing to vibrate the driven body at a fixed position
- the bearing 712z built into the servo motor 71z and the bearing that rotatably supports the ball screw 81z will not be distinguished from each other, and will simply be referred to as a bearing.
- the bearing data management unit 512 sets a lifespan, which is the time during which vibration of the driven body can be performed continuously at each of a plurality of positions on the ball screw 81z.
- the lifespan set by the bearing data management unit 512 is the lifespan of the bearing with the shortest lifespan among the bearings mounted on the drive mechanism 8z. It is desirable that the lifespan set in the bearing data management unit 512 be determined, for example, by actually performing vibration cutting using a machine tool.
- the lifespan may also be set in the bearing data management unit 512 to a time specified by an operator.
- the measurement unit 481 measures the duration of vibration cutting that vibrates the driven body at the current position of the driven body. If the position at which the driven body vibrates during vibration cutting moves, the measurement unit 481 resets the duration measured for the position before the movement and measures the duration for the position after the movement. The measurement unit 481 measures the duration for each of multiple positions on the ball screw 81z. The measurement unit 481 sends the measurement results of the duration to the bearing data management unit 512.
- the estimation unit 482 estimates the remaining life of the bearing based on the measured duration.
- the remaining life is the time during which vibration cutting, which vibrates the driven body at the current position of the driven body, can be continued.
- the estimation unit 482 compares the measured duration with a preset reference time.
- the reference time is, for example, a time equivalent to 80% of the life set by the bearing data management unit 512. If the measured duration is equal to or greater than the reference time, the estimation unit 482 estimates that the remaining life of the bearing will soon expire.
- the reference time may be any time shorter than the life set by the bearing data management unit 512, and is not limited to a time equivalent to 80% of the life.
- the estimation unit 482 instructs the stroke operation execution unit 488 to perform stroke operation by rotating the ball screw 81z.
- the stroke operation execution unit 488 receives an instruction from the estimation unit 482, it waits for the machining by the machine tool to finish, and outputs a command for stroke operation before the next machining starts.
- the command for stroke operation is output to the drive unit 7 via the acceleration/deceleration processing unit 49 and the axis data input/output unit 50.
- the drive mechanism 8z executes stroke operation according to the command for stroke operation.
- the bearing data management unit 512 resets the duration measured for the position of the driven body before the stroke operation. Stroke operation refers to an operation that rotates the bearing by 360 degrees or more and does not involve large axial movement.
- the numerical control device 1 causes the drive mechanism 8z to perform stroke operation before the remaining life of the bearing expires. Stroke operation allows grease to be distributed throughout the entire bearing, making it possible to reduce bearing wear. According to the second embodiment, there is no need to periodically perform operations with large amounts of movement, so the time that machining is stopped can be reduced. This makes it possible to reduce bearing wear while minimizing the decrease in efficiency of the overall machining performed by the machine tool.
- FIG. 12 is a diagram showing an example of the results of measuring the duration of vibration cutting by the numerical control device 1 according to the second embodiment.
- FIG. 12 shows a bar graph representing the duration for each position on the ball screw 81z.
- the vertical axis represents the duration of vibration cutting.
- the horizontal axis represents the ball screw position.
- the unit of duration is "hours (h)", and the unit of ball screw position is "mm”.
- the life set in the bearing data management unit 512 is assumed to be 30 hours.
- the reference time is assumed to be 24 hours, which is 80% of the life set by the bearing data management unit 512.
- FIG. 12 shows three bar graphs representing the duration measured for each ball screw position of 125.7 mm, 126 mm, and 126.3 mm.
- the interval between each ball screw position when measuring the duration must be an interval equivalent to the amount of movement of the driven body when the ball screw 81z rotates less than one revolution.
- the duration is measured with the interval between each ball screw position equivalent to less than one revolution of the ball screw 81z, that is, an interval equivalent to less than 360 degrees of rotation of the bearing.
- the duration is measured with the interval between each ball screw position set to 0.3 mm, which is an interval equivalent to 1/20 revolution of the ball screw 81z.
- the duration for the ball screw position 126 mm is assumed to be 25 hours. In the example shown in FIG. 12, the requirement that the measured duration for the ball screw position 126 mm is equal to or greater than the reference time is satisfied. Since the duration for the ball screw position 126 mm is equal to or greater than the reference time, the numerical control device 1 causes the drive mechanism 8z to perform a stroke operation.
- FIG. 13 is a flowchart showing an example of the processing procedure executed by the numerical control device 1 according to the second embodiment.
- an example of the processing executed by the numerical control device 1 when vibration cutting is performed by a machine tool will be described.
- the vibration frequency of the vibration cutting before the change is assumed to be, for example, 90.9 Hz, the same as in the first embodiment.
- the bearing data management unit 512 sets a lifespan, which is the time during which the vibration of the driven body can be performed continuously at each of multiple positions on the ball screw 81z.
- step S11 the measurement unit 481 measures the duration of vibration cutting.
- the measurement unit 481 measures the duration of vibration cutting that vibrates the driven body at the current position of the driven body.
- the measurement unit 481 measures the duration for each of the multiple positions on the ball screw 81z.
- step S12 the estimation unit 482 determines whether the duration measured in step S11 is equal to or greater than the reference time. If the duration is equal to or greater than the reference time (Yes in step S12), in step S13, the estimation unit 482 instructs the stroke operation execution unit 488 to perform stroke operation.
- the stroke operation execution unit 488 causes the drive mechanism 8z to perform stroke operation. This causes the numerical control device 1 to end the processing according to the procedure shown in FIG. 13.
- step S12, No the numerical control device 1 ends the processing according to the procedure shown in FIG. 13. After ending the processing according to the procedure shown in FIG. 13, the numerical control device 1 executes the processing according to the procedure shown in FIG. 13 again.
- the estimation unit 482 estimates the remaining life of the bearing based on the measured duration.
- the estimation unit 482 may also estimate the remaining life of the bearing based on the continuation number, which is the number of vibrations for vibration cutting by continuing to vibrate the driven body at a fixed position.
- the estimation unit 482 determines the period during which vibration of the driven body can be continued at the current position as the remaining life of the bearing, based on the continuation value, which is the execution time or the number of vibrations for vibration cutting by continuing to vibrate the driven body at a specified position.
- the estimation unit 482 obtains the value of the number of continuous occurrences by multiplying the vibration frequency by the duration of vibration cutting.
- the estimation unit 482 may obtain the value of the number of continuous occurrences by counting the number of vibrations.
- the estimation unit 482 may count the number of continuous occurrences based on a vibration waveform, which is a basic vibration waveform generated by the waveform generation unit 484, for example.
- the estimation unit 482 estimates the remaining life of the bearing, which is a mechanical component that constitutes the drive mechanism, based on the execution time of vibration cutting.
- the estimation unit 482 determines the time during which vibration cutting, which vibrates the driven body at the current position of the driven body, can be continued as the remaining life of the bearing.
- the numerical control device 1 causes the drive mechanism to perform stroke operation based on the estimation result of the remaining life of the bearing. Since the numerical control device 1 can perform stroke operation according to the remaining life of the bearing, it is possible to avoid bearing wear due to uneven grease. By reducing bearing wear, it is possible to prevent the bearing from needing to be replaced prematurely. This makes it possible to delay deterioration of the drive mechanism caused by vibration cutting.
- the numerical control device 1 has the effect of making it possible to grasp the deterioration status of the drive mechanism caused by vibration cutting for the drive mechanism of a machine tool that performs machining including vibration cutting.
- the vibration condition change unit 483 may change the vibration conditions to extend the remaining life based on the remaining life of the bearing estimated by the estimation unit 482, similar to the first embodiment, without changing the position where vibration cutting is performed. Specifically, in order to extend the remaining life, the vibration condition change unit 483 changes the vibration conditions so that the vibration frequency is smaller than 90.9 Hz, which is the vibration frequency of vibration cutting before the change.
- the numerical control device 1 performs vibration cutting by vibrating the tool, but this is not limited to the above.
- the numerical control device 1 may perform vibration cutting by vibrating the workpiece.
- FIG. 14 is a diagram showing an example of the hardware configuration of the control calculation unit 4 included in the numerical control device 1 according to the first or second embodiment.
- the control calculation unit 4 is realized by a control circuit 100 shown in FIG. 14.
- the control circuit 100 includes a processor 101 and a memory 102.
- the control circuit 100 is a circuit in which the processor 101 executes software.
- the control and calculation unit 4 is realized by software, firmware, or a combination of software and firmware.
- the software or firmware is written as a program and stored in the memory 102.
- the processor 101 reads and executes the program stored in the memory 102 to realize each function of the control and calculation unit 4.
- the control circuit 100 has a memory 102 for storing a program that will result in the processing of the control and calculation unit 4 being executed.
- This program is a numerical control program that causes a computer to execute the procedures and methods of the control and calculation unit 4.
- the memory 102 is also used as a temporary memory when the processor 101 executes various processes.
- the processor 101 may be a CPU (Central Processing Unit), a processing device, an arithmetic unit, a microprocessor, a microcomputer, a processor, a DSP (Digital Signal Processor), or a system LSI (Large Scale Integration).
- the memory 102 may be, for example, a RAM (Random Access Memory), a ROM (Read Only Memory), a flash memory, an EPROM (Erasable Programmable Read Only Memory), or an EEPROM (registered trademark) (Electrically Erasable Programmable Read Only Memory), or a non-volatile or volatile semiconductor memory, or a magnetic disk, a flexible disk, an optical disk, a compact disk, a mini disk, or a DVD (Digital Versatile Disc).
- the program executed by the processor 101 may be a computer program product having a computer-readable and non-transitory recording medium that includes a plurality of instructions executable by a computer for performing data processing.
- the program executed by the processor 101 causes the computer to execute the plurality of instructions to perform data processing.
- the control calculation unit 4 may be realized by dedicated hardware. Also, some of the functions of the control calculation unit 4 may be realized by dedicated hardware, and other parts of the functions of the control calculation unit 4 may be realized by software or firmware.
Landscapes
- Engineering & Computer Science (AREA)
- Mechanical Engineering (AREA)
- Numerical Control (AREA)
Abstract
数値制御装置(1)は、駆動機構により振動切削を含む加工を行う工作機械を制御する。数値制御装置(1)は、駆動機構を構成する機構部品の残り寿命を推定する推定部(482)を備える。推定部(482)は、振動切削の実行時間に基づいて、機構部品の残り寿命を推定する。数値制御装置(1)によると、振動切削を含む加工を行う工作機械の駆動機構について、振動切削に起因する駆動機構の劣化の状況を把握することが可能となる。
Description
本開示は、工作機械を制御する数値制御装置、数値制御方法、および数値制御プログラムに関する。
切削加工を行う工作機械は、ワークに工具を接触させながら工具およびワークの相対運動を行わせることで、ワークを切削する。ワークの表面を削る切削加工では、工具を低周波で振動させながら切削を行う振動切削が行われることがある。振動切削によると、工具によるワークの切削を中断させる区間を工具の移動経路に生じさせることで、切り屑を分断しながらワークを切削することが可能となる。切り屑が短く分断されることによって、ワークまたは工具に切り屑が絡みつくことによる加工精度の低下を防止することができる。また、切り屑が短く分断されることによって、切り屑がワークに接触することによるワークの傷付きを低減できる。
切削加工を行う工作機械については、工具またはワークを移動させる駆動機構の稼働が困難となるよりも前に部品交換といったメンテナンスを計画的に実行するために、駆動機構の劣化の状況を把握可能であることが望まれる。
特許文献1には、ボールねじを介して移動体を直線移動させる駆動機構の稼働状態を表示する装置に関し、ボールねじにおける移動体の移動についての情報を軸動作の種類ごとに分類して表示することが開示されている。特許文献1に開示されている装置によると、ワークを切削しているときに移動体を移動させる切削送りとワークを切削しているとき以外において移動体を移動させる早送りとに軸動作を分類して稼働状態を表示することによって、ボールねじの摩耗による劣化の状況を把握することが可能となる。
振動切削では被駆動体を振動させながら切削が行われることから、振動切削を行う場合における被駆動体の動作は、振動切削以外の通常の切削の場合とは異なる。このため、振動切削を行う場合、駆動機構を構成する機構部品の劣化の態様は、通常の切削の場合とは異なることとなる。上記特許文献1の技術では、切削送りおよび早送りといった通常の切削が行われる場合における劣化の状況を把握することは可能である一方、振動切削による劣化への影響については考慮されていない。そのため、上記特許文献1の技術では、振動切削を含む加工を行う工作機械の駆動機構について、振動切削に起因する駆動機構の劣化の状況を把握することができないという問題があった。
本開示は、上記に鑑みてなされたものであって、振動切削を含む加工を行う工作機械の駆動機構について、振動切削に起因する駆動機構の劣化の状況を把握することができる数値制御装置を得ることを目的とする。
上述した課題を解決し、目的を達成するために、本開示にかかる数値制御装置は、駆動機構により振動切削を含む加工を行う工作機械を制御する数値制御装置である。本開示にかかる数値制御装置は、振動切削の実行時間に基づいて、駆動機構を構成する機構部品の残り寿命を推定する推定部を備える。
本開示にかかる数値制御装置によると、振動切削を含む加工を行う工作機械の駆動機構について、振動切削に起因する駆動機構の劣化の状況を把握することが可能となる、という効果を奏する。
以下に、実施の形態にかかる数値制御装置、数値制御方法、および数値制御プログラムを図面に基づいて詳細に説明する。
実施の形態1.
図1は、実施の形態1にかかる数値制御装置1の構成例を示す図である。数値制御(Numerical Control:NC)装置1は、切削加工を行う工作機械を制御するコンピュータである。数値制御装置1による制御の対象である工作機械は、振動切削を含む加工を行う。工作機械は、駆動機構により被駆動体を振動させることによる振動切削を行う。
図1は、実施の形態1にかかる数値制御装置1の構成例を示す図である。数値制御(Numerical Control:NC)装置1は、切削加工を行う工作機械を制御するコンピュータである。数値制御装置1による制御の対象である工作機械は、振動切削を含む加工を行う。工作機械は、駆動機構により被駆動体を振動させることによる振動切削を行う。
数値制御装置1は、入力操作部2、出力部3、および制御演算部4を備える。図1には、数値制御装置1と、工作機械の構成要素である駆動部7とを示す。駆動部7は、制御演算部4に接続されている。数値制御装置1は、加工プログラムに従って各種指令を生成する。数値制御装置1は、生成された各種指令を駆動部7へ出力することによって、工作機械を制御する。なお、駆動部7は、工作機械とは独立した要素であっても良い。
工作機械は、NC工作機械である。工作機械は、ワークに工具を接触させながら工具およびワークの相対運動を行わせることで、ワークを切削する。工作機械は、切削によりワークから不要な部分を除去することによって、ワークを目的の形状へ加工する。実施の形態1において、工作機械は、2軸以上の駆動軸によって工具とワークとを相対的に移動させながら、工具を用いてワークを加工する。実施の形態1において、工作機械は、例えば、駆動部7によりワークを回転させながら駆動部7によりX軸方向とZ軸方向との2方向へ工具を移動させることによって、ワークを加工する。X軸は、例えば鉛直方向の軸である。Z軸は、例えば水平面に平行な軸である。X軸とZ軸とは、互いに垂直である。なお、X軸は鉛直方向の軸に限られず、Z軸は水平面に平行な軸に限られないものとする。X軸およびZ軸は、工作機械の構成に合わせて適宜設定可能である。
駆動部7は、サーボモータ71x、検出器72x、およびサーボ制御部73xを備える。サーボモータ71xは、X軸駆動機構を構成する。X軸駆動機構は、ワークを切削する工具またはワークをX軸方向へ駆動する駆動機構である。実施の形態1では、X軸駆動機構は、工具をX軸方向へ駆動する駆動機構とする。サーボモータ71xは、X軸駆動機構の動力源である。検出器72xは、サーボモータ71xの回転位置とサーボモータ71xの回転速度とを検出する。検出器72xは、サーボモータ71xの回転位置を示す位置情報とサーボモータ71xの回転速度を示す速度情報とをサーボ制御部73xへ出力する。
数値制御装置1は、工具をX軸方向へ駆動するための指令をサーボ制御部73xへ出力する。サーボ制御部73xは、数値制御装置1からの指令と、検出器72xからの位置情報および速度情報とに基づいて、サーボモータ71xのフィードバック(FeedBack:FB)制御を行う。駆動部7は、サーボモータ71xのFB制御により、X軸方向に工具を動作させる。また、駆動部7は、振動切削の際に検出器72xにより検出された位置情報を数値制御装置1へ出力することにより、X軸方向についての振動移動量を示す情報を数値制御装置1へ出力する。振動移動量は、振動切削におけるワークに対する工具の移動量である。以下、駆動部7から数値制御装置1へ出力される振動移動量の情報を、FB振動移動量と称する。すなわち、駆動部7は、X軸方向についてのFB振動移動量を数値制御装置1へ出力する。
駆動部7は、サーボモータ71z、検出器72z、およびサーボ制御部73zを備える。サーボモータ71zは、Z軸駆動機構を構成する。Z軸駆動機構は、ワークを切削する工具またはワークをZ軸方向へ駆動する駆動機構である。実施の形態1では、Z軸駆動機構は、工具をZ軸方向へ駆動する駆動機構とする。サーボモータ71zは、Z軸駆動機構の動力源である。検出器72zは、サーボモータ71zの回転位置とサーボモータ71zの回転速度とを検出する。検出器72zは、サーボモータ71zの回転位置を示す位置情報とサーボモータ71zの回転速度を示す速度情報とをサーボ制御部73zへ出力する。
数値制御装置1は、工具をZ軸方向へ駆動するための指令をサーボ制御部73zへ出力する。サーボ制御部73zは、数値制御装置1からの指令と、検出器72zからの位置情報および速度情報とに基づいて、サーボモータ71zのFB制御を行う。駆動部7は、サーボモータ71zのFB制御により、Z軸方向に工具を動作させる。また、駆動部7は、振動切削の際に検出器72zにより検出された位置情報を数値制御装置1へ出力することにより、Z軸方向についてのFB振動移動量を数値制御装置1へ出力する。
工作機械は、1つまたは2つ以上の刃物台を備える。駆動機構は、刃物台および工具を駆動する。刃物台および工具は、駆動機構により駆動される被駆動体である。工具は、刃物台に取り付けられている。駆動部7には、刃物台ごとに、サーボモータ71x,71z、検出器72x,72z、およびサーボ制御部73x,73zの組が備えられる。
駆動部7は、主軸モータ71s、検出器72s、および主軸制御部73sを備える。主軸モータ71sは、主軸を回転させる。主軸は、ワークを回転させる軸である。検出器72sは、主軸モータ71sの回転位置と主軸モータ71sの回転速度とを検出する。検出器72sは、主軸モータ71sの回転位置を示す位置情報と主軸モータ71sの回転速度を示す速度情報とを主軸制御部73sへ出力する。
数値制御装置1は、主軸を回転させるための指令を主軸制御部73sへ出力する。主軸制御部73sは、数値制御装置1からの指令と、検出器72sからの位置情報および速度情報とに基づいて、主軸モータ71sのFB制御を行う。駆動部7は、主軸モータ71sのFB制御により、ワークを回転動作させる。
工作機械は、1つのワークを加工するものでも、2つ以上のワークを同時に加工するものでも良い。工作機械が2つ以上のワークを同時に加工するものである場合、駆動部7には、主軸モータ71s、検出器72s、および主軸制御部73sの組が2つ以上備えられる。工作機械が2つ以上のワークを同時に加工するものである場合、工作機械には、例えば、2つ以上の刃物台が備えられる。
入力操作部2は、制御演算部4に情報を入力する入力手段である。入力操作部2は、例えば、キーボード、タッチパネル、ボタン、またはマウスといった機器を備える。入力操作部2は、例えば、工作機械のオペレータ、または工作機械の保守員によって操作される。入力操作部2は、コマンド、加工プログラム番号、または、振動切削に関連するパラメータといった情報を受け付け、受け付けた情報を制御演算部4へ入力する。
出力部3は、制御演算部4によって処理された情報を出力する出力手段である。出力部3は、例えば、液晶表示装置などの表示手段を備える。出力部3は、制御演算部4によって処理された情報を画面に表示する。なお、出力部3は、表示手段を備えるものに限られない。出力部3は、スピーカ等の音声デバイスを備えるものでも良い。また、出力部3は、数値制御装置1の外部の装置へ情報を出力するものであっても良い。例えば、数値制御装置1がネットワークに接続され、ネットワークに接続された表示装置、または、ネットワークに接続されたコンピュータへ、出力部3がネットワークを介して情報を送信することとしても良い。
制御演算部4は、入力制御部41、データ設定部42、記憶部43、出力制御部44、解析処理部45、制御信号処理部46、PLC(Programmable Logic Controller)回路部47、補間処理部48、加減速処理部49、軸データ入出力部50、およびデータ管理部51を備える。図1に示す構成では制御演算部4の内部にPLC回路部47が配置されることとしたが、制御演算部4の外部にPLC回路部47が配置されても良い。
入力制御部41は、入力操作部2から入力される情報を受け付けて、受け付けた情報をデータ設定部42へ出力する。データ設定部42は、入力制御部41からの情報を記憶部43に記憶させる。すなわち、入力操作部2が受け付けた入力情報は、入力制御部41およびデータ設定部42を介して記憶部43に書き込まれる。
記憶部43は、不揮発性メモリまたはハードディスクといった、データを保存する装置である。記憶部43は、パラメータ記憶エリア431、加工プログラム記憶エリア432、表示データ記憶エリア433、および共有エリア434を備える。
パラメータ記憶エリア431には、制御演算部4の処理に使用される各種パラメータが格納される。具体的には、パラメータ記憶エリア431には、数値制御装置1を動作させるための制御パラメータ、サーボパラメータ、工具データ、および振動切削に関するパラメータなどが格納される。
加工プログラム記憶エリア432には、ワークの加工に用いられるNCプログラムである加工プログラムが格納される。加工プログラム記憶エリア432に格納される加工プログラムは、1以上のブロックを含む。なお、実施の形態1では、加工プログラムは、工具を移動させる指令である移動指令、および、主軸を回転させる指令である回転指令といった指令を含む。
表示データ記憶エリア433には、出力部3により表示される画面のデータである画面表示データが格納される。共有エリア434には、制御演算部4が各処理を実行する際に一時的に使用するデータが格納される。例えば、入力操作部2が受け付けた加工プログラム番号は、入力制御部41およびデータ設定部42を介して記憶部43の共有エリア434に書き込まれる。
出力制御部44は、記憶部43の表示データ記憶エリア433に格納された画面表示データを出力部3に表示させる。
制御演算部4では、解析処理部45、制御信号処理部46、および補間処理部48が、記憶部43を介して互いに接続されており、記憶部43を介して情報の書き込みおよび情報の読み出しが行われる。以下、解析処理部45、制御信号処理部46、および補間処理部48の間の情報の書き込みおよび読み出しに関し、記憶部43が介されることについての説明を省略する場合がある。
解析処理部45は、記憶部43に接続されている。解析処理部45は、共有エリア434に書き込まれた加工プログラム番号を参照する。解析処理部45は、共有エリア434内から選択された加工プログラム番号を共有エリア434から受け付けると、選択された加工プログラム番号に示される加工プログラムを加工プログラム記憶エリア432内から読み出し、加工プログラムの各ブロック、すなわち加工プログラムの各行について解析処理を行う。解析処理部45は、主軸モータ71sの回転速度の指令であるSコード、工具の移動である軸移動等に関する指令であるGコード、および、機械動作指令であるMコードといった各種コードを解析する。解析処理部45は、加工プログラムの各行の解析処理を終えると、各種コードの解析結果を共有エリア434に書き込む。
解析処理部45は、加工プログラムにSコードが含まれている場合、加工プログラムに含まれているSコードを解析することによって、主軸の回転速度を取得する。解析処理部45は、取得された回転速度を共有エリア434に書き込む。
解析処理部45は、加工プログラムにGコードが含まれている場合、加工プログラムに含まれているGコードを解析することによって、工具送りの条件である移動条件を取得する。かかる移動条件は、X軸方向およびZ軸方向の各々についての刃物台を移動させる速度、ならびに、X軸方向およびZ軸方向の各々についての刃物台の移動先の位置等が含まれる。解析処理部45は、取得された移動条件を共有エリア434に書き込む。
また、解析処理部45は、振動切削についてのGコードが加工プログラムに含まれている場合、加工プログラムに含まれているGコードを解析することによって、振動切削における振動についての条件である振動条件を取得する。振動条件には、振動切削において工具を振動させる周波数である振動周波数と、振動切削において工具を振動させる振幅とが含まれる。解析処理部45は、取得された振動条件を共有エリア434に書き込む。
制御信号処理部46は、PLC回路部47に接続されており、PLC回路部47から、工作機械を動作させるリレーなどの信号情報を受け付ける。制御信号処理部46は、受け付けた信号情報を共有エリア434に書き込む。補間処理部48は、共有エリア434に書き込まれた信号情報を加工運転時に参照する。また、制御信号処理部46は、解析処理部45によって共有エリア434に補助指令が出力されると、共有エリア434から補助指令を読み出し、PLC回路部47へ補助指令を送る。補助指令は、数値制御軸である駆動軸を動作させる指令以外の指令である。補助指令は、例えば、MコードまたはTコードである。
補間処理部48は、記憶部43、加減速処理部49、およびデータ管理部51に接続されている。補間処理部48は、移動条件および振動条件が共有エリア434に書き込まれると、共有エリア434から移動条件および振動条件を読み出す。補間処理部48は、読み出された移動条件と読み出された振動条件とに基づいて、X軸方向への振動移動量の指令であるX軸指令振動移動量とZ軸方向への振動移動量の指令であるZ軸指令振動移動量とを生成する。以下、X軸指令振動移動量とZ軸指令振動移動量とを総称して、指令振動移動量とも記載する。補間処理部48は、生成された指令振動移動量を共有エリア434に書き込むとともに、生成された指令振動移動量を加減速処理部49へ出力する。
加減速処理部49は、補間処理部48および軸データ入出力部50に接続されている。加減速処理部49は、補間処理部48から指令振動移動量を取得し、指令振動移動量を、あらかじめ指定された加減速パターンに従って加減速が考慮された単位時間当たりの移動指令へ変換する。加減速処理部49は、単位時間当たりの移動指令を軸データ入出力部50へ出力する。
軸データ入出力部50は、加減速処理部49および駆動部7に接続されている。軸データ入出力部50は、加減速処理部49から単位時間当たりの移動指令を取得し、単位時間当たりの移動指令を駆動部7へ出力する。また、軸データ入出力部50は、駆動部7からFB振動移動量を取得し、FB振動移動量を加減速処理部49へ出力する。加減速処理部49は、軸データ入出力部50からFB振動移動量を取得し、FB振動移動量を補間処理部48へ出力する。
補間処理部48は、計測部481、推定部482、振動条件変更部483、波形生成部484、振動移動量生成部485、加工プログラム変更部487、およびストローク運転実行部488を備える。
計測部481は、振動切削が実行された実行時間を計測する。推定部482は、振動切削の実行時間、および振動切削の振動条件に基づく運転係数に基づいて、駆動機構を構成する機構部品の残り寿命を推定する。または、推定部482は、振動切削に伴う微振動の振動回数に基づいて、駆動機構を構成する機構部品の残り寿命を推定する。数値制御装置1は、推定部482において機構部品の残り寿命を推定することによって、振動切削に起因する駆動機構の劣化の状況を推定する。なお、振動切削に伴う微振動とは、振動切削において工具を振動させる振動条件に基づく振動であり、例えば、振動切削が実行されている間に駆動機構を構成する機構部品に伝達される振動である。振動切削に伴う微振動が駆動機構を構成する機構部品に伝達されることは、駆動機構を構成する機構部品の劣化に大きな影響を与える要因となる。
第1の変更部である振動条件変更部483は、振動切削の振動条件を変更する。振動条件変更部483は、推定部482により推定された残り寿命に基づいて振動条件の変更を提案するとともに振動条件の変更指示を受け付け、変更指示に従って振動条件を変更する。
波形生成部484は、解析処理部45から振動条件を取得し、取得された振動条件に基づいて、振動の基本波形である振動波形を生成する。波形生成部484は、振動条件変更部483により振動条件が変更された場合、変更後の振動条件に基づいて振動波形を生成する。
振動移動量生成部485は、波形生成部484により生成された振動波形と、工具の移動経路とに基づいて、例えばZ軸方向の振動移動量を求める。具体的には、振動移動量生成部485は、振動前進位置と振動後退位置とを振動ごとに求めることによって、Z軸の振動移動量を生成する。振動前進位置は、工具の移動経路上の位置から、振動波形に示される振幅に相当する距離だけ前進した位置である。振動後退位置は、工具の移動経路上の位置から、振動波形に示される振幅に相当する距離だけ後退した位置である。振動移動量生成部485は、振動移動量を求めることによって、指令振動移動量を生成する。
振動移動量生成部485によって生成された指令振動移動量は、加減速処理部49および軸データ入出力部50を介して駆動部7へ送られる。駆動部7は、振動移動量生成部485から送られた指令振動移動量に基づいて振動切削を実行する。駆動部7は、例えば、Z軸指令振動移動量に基づいてサーボモータ71zを制御することによって振動切削を実行する。
第2の変更部である加工プログラム変更部487は、加工プログラムを変更する。加工プログラム変更部487による加工プログラムの変更の詳細については後述する。ストローク運転実行部488は、ベアリングを回転させるストローク運転を駆動機構に実行させる。
データ管理部51は、駆動機構の劣化の状況を推定するためのデータを管理する。データ管理部51は、ボールねじの劣化の状況を推定するためのデータを管理するボールねじデータ管理部511と、ベアリングの劣化の状況を推定するためのデータを管理するベアリングデータ管理部512とを備える。
次に、駆動機構の構成例について説明する。図2は、実施の形態1にかかる数値制御装置1によって制御される工作機械に備えられる駆動機構の構成例を示す図である。図2には、Z軸駆動機構である駆動機構8zの構成例を示す。X軸駆動機構は、駆動機構8zと同様の構成を備える。
駆動機構8zは、サーボモータ71z、ボールねじ81z、刃物台であるテーブル82z、および支持機構83z1,83z2を備える。駆動機構8zは、サーボモータ71zの動力を受けて回転する機構部品であるボールねじ81zの回転運動をテーブル82zの直線運動へ変換させる機構である。工具は、テーブル82zに取り付けられる。図2では、工具の図示を省略する。駆動機構8zは、テーブル82zとともに工具をZ軸方向へ移動させる。
サーボモータ71zのシャフト711zとボールねじ81zとは、カップリング84zを介して連結されている。サーボモータ71zの動力は、カップリング84zを介してボールねじ81zへ伝達される。ボールねじ81zは、サーボモータ71zの動力を受けて回転する。シャフト711zの回転中心である中心線と、ボールねじ81zの回転中心である中心線とは、互いに一致している。シャフト711zの中心線とボールねじ81zの中心線とは、Z軸に平行である。支持機構83z1は、ボールねじ81zの一端を回転可能に支持する。支持機構83z2は、ボールねじ81zの他端を回転可能に支持する。
テーブル82zは、ナット85zにおけるボールねじ81zの回転によって直線方向へ移動する。駆動機構8zは、ボールねじ81zおよびナット85zによって、サーボモータ71zの回転運動を直線運動に変換する。ボールねじ81zのねじ溝とナット85zのねじ溝との間には、転動体である複数のボール86zが入れられている。ボールねじ81zのねじ溝とナット85zのねじ溝との間においてボール86zが回転することによって、ボールねじ81zはナット85zに対して円滑に回転可能である。図2に示す両矢印87は、テーブル82zがZ軸方向の移動が可能であることを表す。工具は、テーブル82zとともにZ軸方向へ移動する。
支持機構83z1には、支持機構83z1に対してボールねじ81zを円滑に回転させるためのベアリングが内蔵されている。支持機構83z2には、支持機構83z2に対してボールねじ81zを円滑に回転させるためのベアリングが内蔵されている。サーボモータ71zの内部には、シャフト711zを円滑に回転させるための2つのベアリングが内蔵されている。
図3は、図2に示す駆動機構に備えられるベアリングの構成例を示す図である。図3には、サーボモータ71zの内部のベアリングであるベアリング712zの構成例を示す。サーボモータ71zの内部のベアリングであるベアリング712zと、支持機構83z1の内部のベアリングと、支持機構83z2の内部のベアリングとは、互いに同様の構成を備える。図3には、シャフト711zの中心線に垂直な断面を示す。
ベアリング712zは、外輪713zおよび内輪714zを備える。内輪714zは、シャフト711zに固定されている。内輪714zは、シャフト711zとともに回転する。外輪713zと内輪714zとの間には、転動体である複数のボール715zが実装されている。外輪713zと内輪714zとの間においてボール715zが回転することによって、内輪714zおよびシャフト711zは、外輪713zに対して円滑に回転可能である。図3に示す両矢印716は、シャフト711zが回転可能であることを表す。図3に示す両矢印717は、ボール715zが回転可能であることを表す。
駆動機構8zを長期にわたって稼働させると、ボールねじ81zは、駆動機構8zを稼働させる際に受ける荷重の影響によって、劣化を生じ得る。ボールねじ81zの劣化とは、例えば、表面が剥離するいわゆるフレーキングがボールねじ81zのねじ溝に生じることである。ボールねじ81zのフレーキングは、駆動機構8zによる被駆動体の位置決め精度を悪化させる要因となり得、さらに悪化が進むと寿命が到来し、ボールねじ81zの交換が必要になる。また、振動切削を行う場合は、ボールねじ81zのうち被駆動体を振動させる位置に偏りがあると、ボールねじ81zが部分的に摩耗するいわゆる片減りが生じる可能性がある。振動切削を行う場合、片減りによりボールねじ81zの寿命が短くなることがある。
以下、Z軸方向に被駆動体を振動させる振動切削を例として、数値制御装置1が実行する処理について説明する。実施の形態1では、数値制御装置1は、推定部482により機構部品であるボールねじ81zの残り寿命を推定する。数値制御装置1は、ボールねじ81zの残り寿命を推定することによって、ボールねじ81zの劣化を推定する。残り寿命とは、寿命を終えるまでの残された期間とする。
次に、実施の形態1においてボールねじ81zの残り寿命を推定する方法の詳細について説明する。ここでは、推定部482が、振動切削の実行時間および振動切削の振動条件に基づく運転係数に基づいて機構部品であるボールねじ81zの残り寿命を推定する例について説明する。
推定部482は、振動周波数と、計測部481により計測された実行時間とに基づいて残り寿命を推定する。推定部482は、ボールねじ81zの寿命と振動切削における駆動機構8zの動作の態様を表す運転係数との関係を参照して、実行時間を累積した結果である累積値と、振動切削における振動についての条件である振動条件から求まる運転係数である実効運転係数とに基づいて、ボールねじ81zの残り寿命を推定する。本開示における運転係数は、例えば、振動切削に伴う微振動の頻度および振動の大きさにも関係する係数である。以下の説明では、実行時間を累積した結果である累積値を、累積時間とも称する。ここで、ボールねじ81zについての累積時間とは、現在使用されているボールねじ81zの使用が開始されてからの累積時間とする。
図4は、実施の形態1にかかる数値制御装置1の推定部482において参照される運転係数と寿命との関係について説明するための図である。図4には、ボールねじ81zの運転係数とボールねじ81zの寿命との関係を表すグラフの例を示す。図4において、縦軸は寿命を表す。横軸は運転係数を表す。寿命の単位は「時間(h)」とする。
一般に使用されるボールねじについて、運転係数と寿命との関係は、次の式(1)により表される。
式(1)において、Lは寿命(h)、Nmは平均回転速度(min-1)、Cは基本動定格荷重(N)、Fmは軸方向平均荷重(N)、αは運転係数を表す。例えば、衝撃の無い静かな運転にボールねじが使用される場合、運転係数は、1.0から1.2までの範囲内の値とされる。普通の運転にボールねじが使用される場合、運転係数は、1.2から1.5までの範囲内の値とされる。衝撃を伴う運転にボールねじが使用される場合、運転係数は、1.5から2.0までの範囲内の値とされる。工作機械に使用されるボールねじの運転係数は、工作機械の運転条件にもよるが、1.2から2.0までの範囲内の値とされる。ただし、実施の形態1におけるボールねじ81zの場合、振動切削の振動条件によって運転係数が変化することとなる。
図4に示すグラフは、C=4400(N)、Fm=270(N)、およびNm=2100(min-1)として、運転係数を1.2から2.0までの範囲において変化させた場合におけるボールねじ81zの寿命を求めた結果を表す。図4に示すように、運転係数が大きいほど、ボールねじ81zの寿命は短くなる。なお、C、Fm、およびNmの各値は、工作機械の構成、または工作機械の使用条件によって変わる。このため、図4に示すグラフは、工作機械の構成、または工作機械の使用条件によって変わる。ボールねじ81zの運転係数とボールねじ81zの寿命との関係を表すデータは、パラメータ記憶エリア431にあらかじめ登録される。
図5は、実施の形態1にかかる数値制御装置1の推定部482において参照される振動条件と運転係数との関係について説明するための図である。図5には、振動切削において被駆動体を振動させる振幅および振動切削における振動周波数と、ボールねじ81zの運転係数との関係を表す表を示す。図5において、振幅の単位は「μm」、振動周波数の単位は「Hz」とする。
図5に示すように、振幅が大きいほど、運転係数は大きい値となる。また、振動周波数が大きいほど、運転係数は大きい値となる。図5に示す運転係数の各値は、例えば、工作機械を実際に稼働させることによりあらかじめ算出される。振幅および振動周波数とボールねじ81zの運転係数との関係を表すデータは、パラメータ記憶エリア431にあらかじめ登録される。
推定部482は、図5に示すような振幅および振動周波数とボールねじ81zの運転係数との関係を参照して、ボールねじ81zの残り寿命を推定する。なお、図5に示す振幅および振動周波数とボールねじ81zの運転係数との関係は一例であるものとする。すなわち、振幅および振動周波数に対するボールねじ81zの運転係数の値は、図5に示す値に限られない。
駆動機構8zは、ボールねじ81zの中心線の方向における複数の位置の各々で被駆動体を振動させることが可能である。ボールねじ81zの各位置の間隔は、例えば、ボールねじ81zのねじピッチに等しい。すなわち、ボールねじ81zの各位置の間隔は、ボールねじ81zを360度回転させたときの被駆動体の移動量に等しい。ここでは、ボールねじ81zの各位置の間隔は、例えば6mmであるものとする。ボールねじ81zの各位置の間隔は、ボールねじ81zのねじピッチとは異なるものであっても良く、任意に設定可能であるものとする。ただし、ボールねじ81zの各位置の間隔は、細かいほうが良い。
計測部481は、ボールねじ81zの各位置での振動切削の実行時間を計測する。補間処理部48は、計測部481による計測結果をデータ管理部51へ送る。ボールねじデータ管理部511は、振動切削の実行時間をボールねじ81zの位置ごとに集計することによって、振動切削の累積時間をボールねじ81zの位置ごとに算出する。このように、ボールねじデータ管理部511は、ボールねじ81zにおける複数の位置の各々について、当該位置での被駆動体の振動による振動切削の累積時間を算出する。
また、ボールねじデータ管理部511は、ボールねじ81zの位置ごとの実効運転係数を算出する。ボールねじデータ管理部511は、複数の位置の各々について算出された累積時間と、複数の位置の各々にて被駆動体を振動させたときの振動条件とに基づいて、複数の位置の各々についての実効運転係数を算出する。
ここで、ボールねじ81zにおける複数の位置が、Px1からPxnまでのn個の位置であるものとする。nは2以上の整数とする。Px1からPxnまでの各位置についての累積時間の値と、Px1からPxnまでの各位置についての実効運転係数とは、共有エリア434に保存される。
例えば、ボールねじデータ管理部511は、Px1での被駆動体の振動による振動切削が実行されると、Px1について保存されている累積時間の値に、Px1での被駆動体の振動による振動切削について計測された実行時間の値を加算する。これにより、ボールねじデータ管理部511は、Px1についての累積時間を更新する。以下の説明では、Px1での被駆動体の振動による振動切削を、Px1の振動切削と称する。ボールねじデータ管理部511は、Px1の振動切削が実行されるたびに、Px1についての累積時間を更新する。
ボールねじデータ管理部511は、Px1の振動切削が実行されたときのボールねじ81zの運転係数を、Px1の振動切削における振動条件である振幅および振動周波数に基づいて求める。ボールねじデータ管理部511は、図5に示すような振幅および振動周波数とボールねじ81zの運転係数との関係を参照することによって、Px1の振動切削についての運転係数を求める。なお、ボールねじデータ管理部511は、例えば、解析処理部45により共有エリア434に書き込まれた振動条件を、補間処理部48を介して共有エリア434から読み出すことによって、振幅および振動周波数の各値を取得する。振動周波数および振幅が計測部481によって計測される場合、ボールねじデータ管理部511は、振動周波数および振幅の各値を計測部481から取得しても良い。
ボールねじデータ管理部511は、Px1の振動切削が実行されるたびに求めた運転係数の加重平均を求めることにより、Px1についての実効運転係数を算出する。例えば、現在使用されているボールねじ81zの使用が開始されてからPx1の振動切削がk回実行されたとして、ボールねじデータ管理部511は、次の式(2)によりPx1についての実効運転係数を算出する。kは2以上の整数とする。
Px1についての実効運転係数={(1回目のPx1の振動切削の実行時間×1回目のPx1の振動切削についての運転係数)+・・・+(k回目のPx1の振動切削の実行時間×k回目のPx1の振動切削についての運転係数)}/(Px1についての累積時間) ・・・(2)
Px1についての実効運転係数={(1回目のPx1の振動切削の実行時間×1回目のPx1の振動切削についての運転係数)+・・・+(k回目のPx1の振動切削の実行時間×k回目のPx1の振動切削についての運転係数)}/(Px1についての累積時間) ・・・(2)
ボールねじデータ管理部511は、Px1の振動切削が実行されるたびに、Px1についての実効運転係数を更新する。ボールねじデータ管理部511は、ボールねじ81zの複数の位置のうちPx1以外の各位置についても、Px1の場合と同様に、累積時間および実効運転係数を算出する。このようにして、ボールねじデータ管理部511は、ボールねじ81zの複数の位置の各々についての累積時間と、ボールねじ81zの複数の位置の各々についての実効運転係数とを算出する。
なお、上記説明では、振幅および振動周波数とボールねじ81zの運転係数との関係を参照することによって実効運転係数を算出することとしたが、実効運転係数の算出方法はこれに限られないものとする。
図6は、実施の形態1にかかる数値制御装置1による累積時間と実効運転係数との算出結果の例を示す図である。図6には、ボールねじ81zにおける複数の位置の各々についての累積時間を表す棒グラフを示す。各棒グラフの上に示す数値は、複数の位置の各々についての実効運転係数を表す。ボールねじ位置とは、ボールねじ81zにおける複数の位置の各々を、ボールねじ81zの基準である位置からの距離により表したものとする。図6において、縦軸は振動切削の累積時間を表す。横軸はボールねじ位置を表す。図6において、累積時間の単位は「時間(h)」、ボールねじ位置の単位は「mm」とする。
図6において、ボールねじ位置120mmの振動切削をケース(A)、ボールねじ位置126mmの振動切削をケース(B)、および、ボールねじ位置132mmの振動切削をケース(C)とする。図6に示す例において、ケース(A)では、累積時間は4300時間、かつ、実効運転係数は1.6である。ケース(B)では、累積時間は4800時間、かつ、実効運転係数は1.56である。ケース(C)では、累積時間は4500時間、かつ、実効運転係数は1.65である。なお、図6において、「(A)」、「(B)」、および「(C)」の表記は、それぞれ、ケース(A)、ケース(B)、およびケース(C)を表している。
推定部482は、ボールねじ81zにおける複数の位置の各々についての実効運転係数に基づいて、ボールねじ81zの複数の位置の各々における寿命を推定する。推定部482は、図4に示されるようなボールねじ81zの運転係数とボールねじ81zの寿命との関係を参照することによって、ボールねじ81zの複数の位置の各々における寿命を推定する。
推定部482は、ボールねじ81zの位置ごとについて、寿命の推定結果である時間から、ボールねじデータ管理部511により算出された累積時間を差し引くことによって、ボールねじ81zの複数の位置の各々における残り寿命を推定する。このようにして、推定部482は、ボールねじ81zの運転係数とボールねじ81zの寿命との関係を参照して、累積時間と実効運転係数とに基づいてボールねじ81zの残り寿命を推定する。推定部482は、振動周波数および振幅に基づいて求まる実効運転係数と、実行時間を累積した結果である累積時間とに基づいて残り寿命を推定する。
推定部482は、複数の位置の各々について推定された残り寿命をあらかじめ設定された第1閾値と比較する。第1閾値は、ボールねじ81zの交換の要否を判断するための閾値である。複数の位置の各々について推定された残り寿命に第1閾値以下の残り寿命が含まれている場合、補間処理部48は、ボールねじ81zの交換が必要であることについての警告の出力を、記憶部43を介して出力制御部44へ指示する。出力制御部44は、補間処理部48からの指示を受けると、ボールねじ81zの交換が必要であることについての警告を表示するための画面表示データを表示データ記憶エリア433から読み出し、読み出された画面表示データを出力部3へ出力する。出力部3は、画面表示データに示される警告を表示する。このようにして、数値制御装置1は、複数の位置のうち、例えば所定の1つの位置について推定された残り寿命に第1閾値以下の残り寿命が含まれている場合に、ボールねじ81zの交換が必要であることを示す警告を出力する。これにより、数値制御装置1は、ボールねじ81zを交換する時期が到来したことを、オペレータ、または工作機械の保守員に知らせることができる。
推定部482は、複数の位置の各々について推定された残り寿命をあらかじめ設定された第2閾値と比較する。第2閾値は、振動切削における振動条件の変更を提案するか否かを判断するための閾値である。複数の位置の各々について推定された残り寿命に第2閾値以下の残り寿命が含まれている場合、推定部482は、延命条件の算出を振動条件変更部483に指示する。延命条件とは、今後の振動切削を現在の振動条件で実行する場合よりもボールねじ81zの寿命が延びることが見込まれる振動条件とする。
振動条件変更部483は、推定部482からの指示に従い、延命条件を算出する。また、振動条件変更部483は、算出された延命条件への振動条件の変更を提案することを、記憶部43を介して出力制御部44へ指示する。出力制御部44は、振動条件変更部483からの指示を受けると、振動条件の変更を促すメッセージを表示するための画面表示データを表示データ記憶エリア433から読み出し、読み出された画面表示データを出力部3へ出力する。出力部3は、画面表示データに従って振動条件の変更を促すメッセージを表示する。このようにして、振動条件変更部483は、推定部482により推定された残り寿命に基づいて振動切削の振動条件の変更を提案する。
数値制御装置1は、出力部3に表示される画面において、提案された振動条件への変更指示を受け付ける。オペレータは、入力操作部2を操作することによって、振動条件の変更指示を数値制御装置1へ入力する。入力制御部41は、データ設定部42および記憶部43を介して補間処理部48へ振動条件の変更指示を送る。振動条件変更部483は、振動条件の変更指示に従って振動条件を変更する。数値制御装置1は、変更後の振動条件での振動切削を工作機械に実行させる。数値制御装置1は、算出された延命条件へ振動条件を変更することによって、ボールねじ81zの寿命を延ばす措置を取ることができる。
次に、実施の形態1にかかる数値制御装置1によって実行される処理の手順について説明する。図7は、実施の形態1にかかる数値制御装置1によって実行される処理の手順の例を示すフローチャートである。ここでは、工作機械による振動切削が実行される場合において数値制御装置1によって実行される処理の例について説明する。以下の説明において、振動条件が変更される前における振動周波数は、例えば、90.9Hzであるものとする。また、数値制御装置1は、実行した振動切削の振動条件、すなわち振動周波数および振動振幅等から、ボールねじ81zにおける複数の位置の各々についての実効運転係数を適宜計算するものとする。
工作機械による振動切削が開始されると、ステップS1において、計測部481は、振動切削の実行時間を計測する。工作機械は、工作機械の運転モードの1つである振動切削モードがオンであるときに振動切削を実行する。例えば、計測部481は、振動切削モードがオンであるときにおいて切削開始の指令を受信すると、振動切削の実行時間の計測を開始する。計測部481は、工作機械による振動切削が終了すると、振動切削の実行時間の計測を終了する。例えば、計測部481は、振動切削モードがオンであるときにおいて切削終了の指令を受信すると、振動切削の実行時間の計測を終了する。
計測部481は、ボールねじ81zにおける複数の位置の各々での振動切削の実行時間を計測する。計測部481によって計測された実行時間の値は、データ管理部51へ送られる。ボールねじデータ管理部511は、複数の位置の各々について保存されている累積時間の値を共有エリア434から読み出し、読み出された累積時間の値に、ステップS1において計測された実行時間の値を加算する。ボールねじデータ管理部511は、実行時間の値が加算された累積時間の値を共有エリア434に保存する。これにより、共有エリア434に保存されている累積時間の値が更新される。
ステップS2において、推定部482は、ボールねじ81zの複数の位置の各々における残り寿命を推定する。推定部482は、ボールねじ81zにおける複数の位置の各々についての実効運転係数を共有エリア434から読み出し、実効運転係数に基づいて、ボールねじ81zの複数の位置の各々における寿命を推定する。推定部482は、ボールねじ81zにおける複数の位置の各々についての累積時間の値を共有エリア434から読み出し、推定された寿命から累積時間を差し引くことによって、ボールねじ81zの複数の位置の各々における残り寿命を推定する。
推定部482は、ボールねじ81zの複数の位置の各々における残り寿命の推定結果を共有エリア434へ保存する。出力制御部44は、ボールねじ81zの複数の位置の各々における残り寿命の推定結果を共有エリア434から読み出す。また、出力制御部44は、ボールねじ81zの複数の位置の各々における残り寿命を表示するための画面表示データを表示データ記憶エリア433から読み出す。出力制御部44は、残り寿命の推定結果が反映された画面表示データを出力部3へ出力する。出力部3は、画面表示データに従って残り寿命を表示する。残り寿命の表示の具体例については後述する。
ステップS3において、推定部482は、ステップS2において推定された残り寿命が第1閾値以下であるか否かを判断する。第1閾値は、例えば0時間とする。第1閾値が0時間である場合、残り寿命が第1閾値以下とは、推定される寿命を過ぎたことを意味する。なお、第1閾値は、0時間に限られず、0時間よりも大きい値であっても良い。
複数の位置のうちの少なくとも1つについての残り寿命が第1閾値以下である場合(ステップS3,Yes)、ステップS4において、出力部3は、ボールねじ81zの交換が必要であることを示す警告を出力する。例えば、出力部3は、ボールねじ81zの交換が必要であることを警告するメッセージを含む警告画面を表示する。警告画面の具体例については後述する。ステップS4を終えることにより、数値制御装置1は、図7に示す手順による処理を終了する。
複数の位置のいずれについても残り寿命が第1閾値以下ではない場合(ステップS3,No)、ステップS5において、推定部482は、ステップS2において推定された残り寿命が第2閾値以下であるか否かを判断する。第2閾値は、例えば3000時間とする。第2閾値は、3000時間に限られず、3000時間よりも大きい値、または3000時間よりも小さい値であっても良い。
複数の位置のうちの少なくとも1つについての残り寿命が第2閾値以下である場合(ステップS5,Yes)、推定部482は、延命条件の算出を振動条件変更部483へ指示する。ステップS6において、振動条件変更部483は、延命条件を算出する。延命条件を算出する方法についての詳細は後述する。また、振動条件変更部483は、算出された延命条件への振動条件の変更を提案する。
ここで、提案された振動条件への変更指示を数値制御装置1が受け付けたとする。提案された振動条件への変更指示を数値制御装置1が受け付けることによって、ステップS7において、振動条件変更部483は、振動条件の変更指示に従って振動条件を変更する。ステップS7を終えることにより、数値制御装置1は、図7に示す手順による処理を終了する。
複数の位置のいずれについても残り寿命が第2閾値以下ではない場合(ステップS5,No)、数値制御装置1は、図7に示す手順による処理を終了する。なお、提案された振動条件への変更が行われない場合、数値制御装置1は、振動条件を変更せずに、図7に示す手順による処理を終了する。数値制御装置1は、警告も振動条件の変更も行わない場合、図7に示す手順による処理を終了した後に、図7に示す手順による処理を再度実行する。
図8は、実施の形態1にかかる数値制御装置1により推定された残り寿命の表示例を示す図である。図8には、出力部3が表示する画面に、残り寿命を表す棒グラフが表示されている様子を示す。図8に示す例では、残り寿命を表す棒グラフとともに、ボールねじ81zの運転係数とボールねじ81zの寿命との関係を表す曲線グラフが表示されている。かかる曲線グラフは、図4に示すグラフと同じである。図8には、残り寿命の表示例として、上記のケース(A)、ケース(B)、およびケース(C)についての残り寿命を表す3本の棒グラフを示している。なお、図8において、「(A)」、「(B)」、および「(C)」の表記は、それぞれ、ケース(A)、ケース(B)、およびケース(C)を表しており、説明のために付したものとする。図8における「(A)」、「(B)」、および「(C)」の表記は、画面の表示には含まれないものとする。
ケース(A)についての棒グラフは、横軸の方向において「1.6」を中心とした位置に示されている。「1.6」は、ケース(A)についての実効運転係数である。ケース(A)についての棒グラフに示される「120」は、ケース(A)のボールねじ位置が120mmであることを表している。ケース(A)についての棒グラフのうちトーンが付された部分は、現在までにおける、ボールねじ位置120mmでの振動切削の累積時間を表す。ケース(A)についての棒グラフのうち破線の部分は、現在以降においてボールねじ位置120mmでの振動切削が可能な時間、すなわち、ボールねじ位置120mmについての残り寿命を表す。ケース(A)についての棒グラフに示される「3700」は、残り寿命が3700時間であることを表している。
ケース(B)についての棒グラフは、横軸の方向において「1.56」を中心とした位置に示されている。「1.56」は、ケース(B)についての実効運転係数である。ケース(B)についての棒グラフに示される「126」は、ケース(B)のボールねじ位置が126mmであることを表している。ケース(B)についての棒グラフのうちトーンが付された部分は、現在までにおける、ボールねじ位置126mmでの振動切削の累積時間を表す。ケース(B)についての棒グラフのうち破線の部分は、現在以降においてボールねじ位置126mmでの振動切削が可能な時間、すなわち、ボールねじ位置126mmについての残り寿命を表す。ケース(B)についての棒グラフに示される「4300」は、残り寿命が4300時間であることを表している。
ケース(C)についての棒グラフは、横軸の方向において「1.65」を中心とした位置に示されている。「1.65」は、ケース(C)についての実効運転係数である。ケース(C)についての棒グラフに示される「132」は、ケース(C)のボールねじ位置が132mmであることを表している。ケース(C)についての棒グラフのうちトーンが付された部分は、現在までにおける、ボールねじ位置132mmでの振動切削の累積時間を表す。ケース(C)についての棒グラフのうち破線の部分は、現在以降においてボールねじ位置132mmでの振動切削が可能な時間、すなわち、ボールねじ位置132mmについての残り寿命を表す。ケース(C)についての棒グラフに示される「3000」は、残り寿命が3000時間であることを表している。
図8に示す例では、ケース(A)、ケース(B)、およびケース(C)のうち、ケース(C)のみが、残り寿命が第2閾値である3000時間以下であるという要件を満足している。
図8に示す例では、ケース(C)についての棒グラフに、残り寿命が第2閾値以下であることを示すマーク31が表示されている。図8に示すマーク31は、星形のマークである。マーク31の形状は、星形に限られず任意であるものとする。出力部3は、残り寿命が第2閾値以下であることをマーク31の表示以外によって示すこととしても良い。残り寿命が第2閾値以下であることの表示は、残り寿命が第2閾値以下であることをオペレータまたは保守員が認識できるものであれば良い。
なお、図8に示す例では、ボールねじ81zの位置ごとにおける残り寿命を棒グラフと残り寿命である時間を示す数値とにより示すこととしたが、残り寿命の表示の態様は図8に示すものに限られない。残り寿命の表示は、オペレータまたは保守員がボールねじ81zの位置ごとにおける残り寿命を認識できるものであれば良い。例えば、出力部3は、残り寿命である時間を示す数値のみによって残り寿命を表示することとしても良い。
振動条件変更部483は、ケース(C)について延命条件を算出する。延命条件を算出する方法については後述する。図8に示す例では、出力部3は、振動条件の変更を促す文言を含むメッセージ32を画面に表示する。図8に示す例では、算出された延命条件へ振動条件が変更されることにより、残り寿命が3000時間から3270時間へ延びることが推定されたとする。メッセージ32には、ボールねじ81zの寿命を、3000時間から3270時間へ延ばせることについての文言が含まれる。また、メッセージ32には、ボールねじ81zの事前手配を促す文言が含まれる。
画面にメッセージ32が表示されることによって、オペレータまたは保守員は、振動切削の振動条件を変更することの必要性を認識することができる。オペレータまたは保守員は、振動条件を変更についての必要性を考慮しながら、振動条件を変更するか否かを判断することができる。
さらに、図8に示す例では、出力部3は、振動条件の変更を選択するためのボタン33と、振動条件を変更しないことを選択するためのボタン34とを画面に表示する。オペレータまたは保守員によってボタン33が押下されることによって、入力制御部41、データ設定部42、および記憶部43を介して補間処理部48へ、振動条件の変更が選択されたことを示す情報、すなわち振動条件の変更指示が送られる。振動条件変更部483は、振動条件の変更指示が入力されると、現在の振動条件から延命条件へ振動条件を変更する。一方、オペレータまたは保守員によってボタン34が押下されることによって、入力制御部41、データ設定部42、および記憶部43を介して補間処理部48へ、振動条件を変更しないことが選択されたことを示す情報が送られる。振動条件変更部483に当該情報が入力されると、現在の振動条件は変更されること無く維持される。
メッセージ32およびボタン33,34は、複数の位置の各々について推定された残り寿命に第2閾値以下の残り寿命が含まれている場合において表示される。なお、残り寿命が表示される画面のレイアウトは、図8に示すものに限られない。残り寿命の表示、メッセージ32、およびボタン33,34の各々について、画面における位置または大きさは、任意であるものとする。
図9は、実施の形態1にかかる数値制御装置1における警告の表示例を示す図である。図9には、出力部3が表示する警告画面に、警告であるメッセージ36が表示されている様子を示す。メッセージ36には、ボールねじ81zの交換を促す文言が含まれる。警告画面は、複数の位置の各々について推定された残り寿命に第1閾値以下の残り寿命が含まれている場合において表示される。
図9に示す例では、警告画面に、ボールねじ81zの運転係数とボールねじ81zの寿命との関係を表す曲線グラフが表示されている。かかる曲線グラフは、図4に示すグラフと同じである。また、図9に示す例では、当該曲線グラフとともに、ボールねじ81zにおける複数の位置の各々についての累積時間を表す棒グラフが表示されている。図9には、累積時間の表示例として、3つのケースについての累積時間を表す3本の棒グラフを示している。ここでは、当該3つのケースを、ケース(A’)、ケース(B’)、およびケース(C’)とする。なお、図9において、「(A’)」、「(B’)」、および「(C’)」の表記は、それぞれ、ケース(A’)、ケース(B’)、およびケース(C’)を表しており、説明のために付したものとする。図9における「(A’)」、「(B’)」、および「(C’)」の表記は、画面の表示には含まれないものとする。
ケース(A’)は、ボールねじ位置120mmの振動切削であって、実効運転係数が1.6とする。ケース(A’)は、上記ケース(A)とはボールねじ位置および実効運転係数の各々が同じであるが、累積時間が上記ケース(A)とは異なるものとする。ケース(B’)は、ボールねじ位置126mmの振動切削であって、実効運転係数が1.56とする。ケース(B’)は、上記ケース(B)とはボールねじ位置および実効運転係数の各々が同じであるが、累積時間が上記ケース(B)とは異なるものとする。ケース(C’)は、ボールねじ位置132mmの振動切削であって、実効運転係数が1.65とする。ケース(C’)は、上記ケース(C)とはボールねじ位置および実効運転係数の各々が同じであるが、累積時間が上記ケース(C)とは異なるものとする。ここでは、実効運転係数が1.56、1.6、および1.65であるケースについて説明したが、実行運転係数の値が本ケースとは異なる場合でも、本ケースと同様の判定は可能である。
図9において、曲線グラフにより示される寿命、すなわち推定される寿命と、棒グラフにより示される累積時間との差分が、残り寿命に相当する。図9に示す例では、ケース(A’)、ケース(B’)、およびケース(C’)のうち、ケース(A’)のみが、残り寿命が第1閾値である0時間以下であるという要件を満足しているとする。
図9に示す例では、ケース(A’)についての棒グラフに、残り寿命が第1閾値以下であることを示すマーク35が表示されている。図9に示すマーク35は、星形のマークである。マーク35の形状は、星形に限られず任意であるものとする。出力部3は、残り寿命が第1閾値以下であることをマーク35の表示以外によって示すこととしても良い。残り寿命が第1閾値以下であることの表示は、残り寿命が第1閾値以下であることをオペレータまたは保守員が認識できるものであれば良い。
警告画面にメッセージ36が表示されることによって、オペレータまたは保守員は、ボールねじ81zを交換する時期が到来したことを認識することができる。また、警告画面において、寿命を示すグラフがメッセージ36とともに表示されることにより、オペレータまたは保守員は、ボールねじ81zの劣化の状況を直感的に把握することができる。
なお、図9に示す例では、警告画面において、寿命を示すグラフがメッセージ36とともに表示されることとしたが、出力部3は、警告画面において、メッセージ36のみを表示することとしても良い。
次に、延命条件を算出する方法について説明する。ここでは、あらかじめ設定されている振動条件の組の中から延命条件とし得るパターンを選択することによって、延命条件を算出する例について説明する。
図10は、実施の形態1にかかる数値制御装置1においてあらかじめ設定されている振動条件の例を示す図である。図10には、振動切削を可能とする振動条件、すなわち、切り屑を分断可能とする条件の例を示している。変更前の振動条件および変更後の振動条件は、いずれも、振動切削を可能とする振動条件としてあらかじめ設定された複数の振動条件の中から選択された振動条件である。
図10に示す例において、あらかじめ設定されている振動条件は、主軸1回転当たりの振動回数、主軸回転速度、および振動周波数である。あらかじめ設定されている振動条件の組とは、主軸1回転当たりの振動回数、主軸回転速度、および振動周波数の組である。図10において、主軸1回転当たりの振動回数の単位は「回」、主軸回転速度の単位は「r/min」、振動周波数の単位は「Hz」とする。なお、振動周波数は、主軸1回転当たりの振動回数および主軸回転速度から一意に定まる。
振動条件変更部483は、あらかじめ設定されている振動条件の複数の組の1つを、変更後の振動条件、すなわち延命条件として選択する。変更後の振動条件では、変更前の振動条件から、主軸1回転当たりの振動回数、主軸回転速度、および振動周波数の少なくとも1つが変更される。
図4に示される関係から、運転係数を小さくさせることで、ボールねじ81zの寿命が延びることとなる。また、図5に示される関係から、振動周波数を小さくさせることで、運転係数を小さくさせることができる。このため、振動条件変更部483は、振動条件の変更前に比べて少なくとも振動周波数が小さくなるような振動条件を、延命条件として算出する。なお、主軸1回転当たりの振動回数および主軸回転速度から振動周波数が一意に定まることから、主軸1回転当たりの振動回数および主軸回転速度の少なくとも一方を変更することにより、振動周波数は変更される。
図10に示す例において、変更前の振動条件は、主軸1回転当たりの振動回数「1.5回」、主軸回転速度「3636r/min」、および、振動周波数「90.9Hz」である。変更後の振動条件は、主軸1回転当たりの振動回数「1.5回」、主軸回転速度「3333r/min」、および、振動周波数「83.3Hz」である。この例では、主軸回転速度が「3636r/min」から「3333r/min」へ変更され、かつ、振動周波数が「90.9Hz」から「83.3Hz」へ変更される。変更後の振動周波数が変更前の振動周波数よりも小さいため、変更後の振動条件により、ボールねじ81zの延命が可能となる。
なお、振動条件の変更が大きいほど、例えば、主軸1回転当たりの振動回数と主軸回転速度との双方が大きく変化するような場合は、振動条件の変更により加工条件が大きく変化することとなる。このため、ここで示す例では、主軸1回転当たりの振動回数は変更せずに、主軸回転速度のみを変更することとしている。
また、上記例の場合よりも寿命をさらに延ばしたい場合、主軸回転速度を変更前とほぼ同じとし、主軸1回転当たりの振動回数を減らすことも考えられる。例えば、主軸1回転当たりの振動回数を「1.5回」から「0.5回」へ変更し、主軸回転速度を「3636r/min」から「3529r/min」へ変更することが考えられる。この場合、主軸1回転当たりの振動回数が少なくなるため、上記例の場合よりも切り屑が長くなることとなる。例えば、振動条件の変更によって切り屑が長くなる場合に、数値制御装置1は、オペレータまたは保守員に対する注意喚起の表示を出力部3にて行うこととしても良い。
延命条件を算出する方法は、上記の方法に限られないものとする。例えば、振動条件変更部483は、所望の延命時間が数値制御装置1へ入力され、入力された延命時間からの逆算によって主軸1回転当たりの振動回数および主軸回転速度の少なくとも一方を変更することとしても良い。
次に、振動条件の変更による振動波形の変化について説明する。図11は、実施の形態1における振動条件の変更による振動波形の変化について説明するための図である。図11の上段には、振動条件の変更前における振動波形の例を示す。図11の下段には、振動条件の変更後における振動波形の例を示す。図11の上段および下段の各々において、縦軸は軸位置を表し、横軸は時間を表す。軸位置は、振動方向における被駆動体の位置とする。
図11において、変更前の振動周波数は90.9Hz、変更後の振動周波数は83.3Hzとする。CT1は、振動条件の変更前における振動周期を表す。CT2は、振動条件の変更後における振動周期を表す。図11の上段および下段の各々では、n周期目の振動波形であるCnと、n+1周期目の振動波形であるCn+1とを示している。nは任意の整数とする。図11の上段および下段の各々において、Sは、空振り領域を表す。空振り領域は、工具の移動経路のうちワークに接触せず切削が行われない領域、すなわち、工具が空振りする領域である。空振り領域では、それまで発生した切り屑が分断される。図11の上段および下段の各々において、空振り領域は、n周期目の振動波形よりも下の領域であって、かつ、n+1周期目の振動波形よりも上の領域である。
振動条件変更部483での振動条件の変更により、図11に示されるように、振動条件の変更後においても空振り領域が生じる状態を維持しながら、振動周波数を下げることが可能である。これにより、数値制御装置1は、振動切削を可能とする条件、すなわち、切り屑を分断しながらの切削を可能とする条件を満たしつつ、機構部品の延命が可能となる振動条件を算出することが可能となる。なお、図11に示される振動波形は、実測値に基づく振動波形が、振動切削を可能とする条件を満たしている限り、指令値に基づく振動波形、および、FB値に基づく振動波形のどちらを前提としても良い。
振動周波数を90.9Hzから83.3Hzへ下げることによって、振動条件の変更後における残り寿命は、変更前の振動条件が維持される場合と比べておよそ1.09倍(=90.9Hz/83.3Hz)延びることが期待できる。このため、図8に示すケース(C)では、振動条件の変更後も振動条件の変更前と同様の加工を行う場合において、残り寿命を3000時間から3270時間(=3000時間×1.09)へ、270時間延ばすことができる。振動条件変更部483は、残り寿命を3000時間から3270時間へ延ばし得ることを推定することにより、ボールねじ81zの寿命を3000時間から3270時間へ延ばせることについての文言を含むメッセージ32を表示させる。
数値制御装置1は、残り寿命の推定結果に基づいて算出された延命条件へ振動条件を変更することによって、振動切削を実行可能としつつ、ボールねじ81zの寿命を延ばす措置を取ることができる。
上記説明では、推定部482は、振動切削の実行時間を累積した結果である累積時間と実効運転係数とに基づいて、ボールねじ81zの残り寿命を推定することとした。推定部482は、振動切削における被駆動体の振動回数を累積した結果である累積回数と実効運転係数とに基づいて、ボールねじ81zの残り寿命を推定することしても良い。すなわち、推定部482は、実行時間または振動回数を累積した結果である累積値と実効運転係数とに基づいて、ボールねじ81zの残り寿命を推定する。ここで、ボールねじ81zについての累積回数とは、現在使用されているボールねじ81zの使用が開始されてからの累積回数とする。
推定部482は、例えば、振動周波数に振動切削の実行時間を乗算することによって振動回数の値を取得する。または、推定部482は、振動回数をカウントすることによって、振動回数の値を取得しても良い。推定部482は、例えば、波形生成部484により生成される振動の基本波形である振動波形に基づいて、振動回数をカウントしても良い。
数値制御装置1により、実行時間または振動回数を累積した結果である累積値と実効運転係数とに基づいてボールねじ81zの残り寿命を推定することによって、オペレータまたは保守員は、振動切削に起因するボールねじ81zの劣化の状況を把握することが可能となる。
上記説明では、数値制御装置1は、振動条件変更部483により延命条件を算出し、振動条件を変更することによってボールねじ81zの延命を図ることとした。数値制御装置1は、振動切削において被駆動体を振動させる位置を変更することによってボールねじ81zの延命を図ることとしても良い。加工プログラム変更部487は、ボールねじ81zにおける複数の位置の各々について集計された累積値に基づいて、振動切削において被駆動体を振動させる位置を変更する。
ここで、被駆動体を振動させる位置を変更する場合の具体例について説明する。図7に示すステップS5において、ボールねじ81zの複数の位置のうちの少なくとも1つについての残り寿命が第2閾値以下である場合において、加工プログラム変更部487は、複数の位置の各々について集計された累積時間に基づいて加工プログラムの変更を提案するとともに加工プログラムの変更指示を受け付け、変更指示に従って加工プログラムを変更する。加工プログラム変更部487は、加工プログラムを変更することによって、振動切削において被駆動体を振動させる位置を変更する。
具体例を挙げると、ボールねじ81zの複数の位置のうちの少なくとも1つについての残り寿命が第2閾値以下である場合において、推定部482は、加工プログラムの選定を加工プログラム変更部487に指示する。加工プログラム変更部487は、加工プログラム記憶エリア432に記憶されている加工プログラムにおける振動切削についての記述を参照し、被駆動体を振動させる位置を解析する。加工プログラム変更部487は、解析結果に基づいて、例えば、ボールねじ81zの複数の位置のうち残り寿命が第2閾値よりも大きい位置で振動切削を含む加工を実行する加工プログラムを選定する。加工プログラム変更部487は、例えば、加工プログラム記憶エリア432に記憶されている加工プログラムの中から、変更後の加工プログラムとして提案する加工プログラムを選定する。
加工プログラム変更部487は、ボールねじ81zの複数の位置の中から、累積時間があらかじめ設定された上限時間を超えていない位置を選定し、当該位置において被駆動体を振動させる加工プログラムを選定する。例えば、上限時間が4000時間と設定され、かつ、図6に示すように各ボールねじ位置についての累積時間が算出されたとする。この場合において、被駆動体を振動させる位置が、第2閾値よりも大きい残り寿命が推定された位置である加工プログラムを選定する。例えば、ボールねじ位置120mmから132mmの範囲では累積時間が4000時間を超えているため、加工プログラム変更部487は、120mmから132mmの範囲以外のボールねじ位置を選定する。加工プログラム変更部487は、選定された当該ボールねじ位置において被駆動体を振動させる加工プログラムを選定する。
加工プログラム変更部487は、選定された加工プログラムへの変更を提案することを、記憶部43を介して出力制御部44へ指示する。出力制御部44は、加工プログラム変更部487からの指示を受けると、加工プログラムの変更を促すメッセージを表示するための画面表示データを表示データ記憶エリア433から読み出し、読み出された画面表示データを出力部3へ出力する。出力部3は、画面表示データに従って加工プログラムの変更を促すメッセージを表示する。このようにして、加工プログラム変更部487は、複数の位置の各々について集計された累積時間に基づいて加工プログラムの変更を提案する。
数値制御装置1は、出力部3に表示される画面において、提案された加工プログラムへの変更指示を受け付ける。オペレータは、入力操作部2を操作することによって、加工プログラムの変更指示を数値制御装置1へ入力する。入力制御部41は、データ設定部42および記憶部43を介して補間処理部48へ加工プログラムの変更指示を送る。加工プログラム変更部487は、加工プログラムの変更指示に従って加工プログラムを変更する。数値制御装置1は、変更後の加工プログラムに従った振動切削を工作機械に実行させる。数値制御装置1は、被駆動体を振動させる位置を変更して振動切削を実行させることによって、ボールねじ81zの寿命を延ばす措置を取ることができる。
数値制御装置1は、被駆動体を振動させる位置を変更することによって、ボールねじ81zの片減りを効果的に低減させることができる。これにより、数値制御装置1は、ボールねじ81zの延命を図ることができる。
実施の形態1によると、推定部482は、振動切削が実行された実行時間、または、振動切削における被駆動体の振動回数に基づいて、駆動機構を構成する機構部品の残り寿命を推定する推定部482を備える。オペレータまたは保守員は、推定部482による残り寿命の推定結果を確認することにより、機構部品の交換時期をあらかじめ把握することができる。このため、オペレータまたは保守員は、駆動機構に不具合が発生するよりも前に、不具合を回避するために適切な対応をとることができる。オペレータまたは保守員は、駆動機構が故障するよりも前に、故障を回避するために適切な対応をとることができる。
実施の形態1では、機構部品であるボールねじ81zについて、振動切削に起因する劣化の状況を把握することができる。オペレータまたは保守員は、ボールねじ81zの劣化の状況を把握可能であることによって、ボールねじ81zの劣化の状況に見合った適切な対応をとることができる。また、ボールねじ81zにおける複数の位置の各々について劣化の状況を把握可能であることによって、振動切削に起因するボールねじ81zの片減りを低減させる措置を取り得る。ボールねじ81zの片減りを低減できることによって、片減りによるボールねじ81zの寿命の短縮化を回避することができる。
以上により、実施の形態1にかかる数値制御装置1によると、振動切削を含む加工を行う工作機械の駆動機構について、振動切削に起因する駆動機構の劣化の状況を把握することが可能となる、という効果を奏する。
実施の形態2.
実施の形態2では、サーボモータに内蔵されるベアリングと、ボールねじを回転可能に支持するベアリングとの少なくとも1つの残り寿命を推定する例について説明する。実施の形態2で説明する動作は、図1に示す数値制御装置1により実現される。実施の形態2では、実施の形態1と同様に、Z軸方向に被駆動体を振動させる振動切削を例として、数値制御装置1が実行する処理について説明する。
実施の形態2では、サーボモータに内蔵されるベアリングと、ボールねじを回転可能に支持するベアリングとの少なくとも1つの残り寿命を推定する例について説明する。実施の形態2で説明する動作は、図1に示す数値制御装置1により実現される。実施の形態2では、実施の形態1と同様に、Z軸方向に被駆動体を振動させる振動切削を例として、数値制御装置1が実行する処理について説明する。
図2に示す駆動機構8zは、サーボモータ71zにより、ある回転位置から一定の角度範囲以下においてシャフト711zおよびボールねじ81zを動作させることによって、被駆動体を振動させる。被駆動体を同じ位置の近くで連続して振動させる場合、被駆動体を振動させる時間が長くなるに従い、サーボモータ71zの内部のベアリング712zにおいてグリスが徐々に偏ることとなる。ベアリング712zの全体にグリスが行き渡らなくなると、ベアリング712zの摩耗が早まることとなる。支持機構83z1,83z2の内部のベアリングでも、サーボモータ71zの内部のベアリング712zの場合と同様に、被駆動体を振動させる時間が長くなるに従いグリスが徐々に偏り、ベアリングの摩耗が早まることとなる。サーボモータ71zの内部のベアリング712zおよび支持機構83z1,83z2の内部のベアリングは、摩耗が早まることによって交換時期が早まることになる。振動切削では、一定の位置における被駆動体の振動が継続される場合があることから、ベアリングには、通常の切削の場合とは異なる態様の摩耗が生じ得る。なお、振動切削による摩耗については、ナット85zのベアリングについても、支持機構83z1,83z2の内部のベアリング、または、サーボモータ71zの内部のベアリング712zの場合と同様である。
実施の形態2では、推定部482は、サーボモータ71zの内部のベアリング712zと、ボールねじ81zを回転可能に支持するベアリングとの少なくとも1つである機構部品の残り寿命を推定する。推定部482は、一定の位置での被駆動体の振動を継続させることによる振動切削についての実行時間または振動回数である継続値に基づいて、現在の位置での被駆動体の振動を継続可能である期間を機構部品の残り寿命として求める。一定の位置での被駆動体の振動とは、一定の位置を中心として被駆動体を振動させることを指すものとする。
次に、実施の形態2においてサーボモータ71zの内部のベアリング712zおよび支持機構83z1,83z2の内部のベアリングの少なくとも1つである機構部品の残り寿命を推定する方法の詳細について説明する。ここでは、推定部482が、一定の位置での被駆動体の振動を継続させることによる振動切削についての実行時間である継続値に基づいて、機構部品の残り寿命を推定する例について説明する。以下の説明では、一定の位置での被駆動体の振動を継続させることによる振動切削についての実行時間である継続値を、継続時間とも称する。また、以下の説明では、サーボモータ71zに内蔵されるベアリング712zとボールねじ81zを回転可能に支持するベアリングとを区別せずに、単にベアリングと称するものとする。
ベアリングデータ管理部512は、ボールねじ81zにおける複数の位置の各々にて被駆動体の振動を連続して実行可能な時間である寿命を設定する。ベアリングデータ管理部512により設定される寿命は、駆動機構8zに搭載されているベアリングのうち最も寿命が短いベアリングについての寿命とする。ベアリングデータ管理部512に設定される寿命は、例えば、工作機械により実際に振動切削を行うことによって決定されることが望ましい。ベアリングデータ管理部512には、オペレータによって指定された時間が寿命として設定されることとしても良い。
計測部481は、振動切削が開始されると、被駆動体の現在の位置で被駆動体を振動させる振動切削についての継続時間を計測する。振動切削において被駆動体が振動する位置が移動した場合、計測部481は、移動前の位置について計測された継続時間をリセットし、移動後の位置についての継続時間を計測する。計測部481は、ボールねじ81zにおける複数の位置の各々について、継続時間を計測する。計測部481は、継続時間の計測結果をベアリングデータ管理部512へ送る。
推定部482は、計測された継続時間に基づいて、ベアリングの残り寿命を推定する。実施の形態2において、残り寿命とは、被駆動体の現在の位置で被駆動体を振動させる振動切削を継続可能な時間である。実施の形態2では、推定部482は、計測された継続時間とあらかじめ設定された基準時間とを比較する。基準時間は、例えば、ベアリングデータ管理部512により設定される寿命の80%に相当する時間とする。推定部482は、計測された継続時間が基準時間以上である場合に、近いうちにベアリングの残り寿命が尽きるものと推定する。なお、基準時間は、ベアリングデータ管理部512により設定される寿命よりも短い時間であれば良く、寿命の80%に相当する時間に限られないものとする。
推定部482は、計測された継続時間が基準時間以上である場合に、ボールねじ81zの回転によるストローク運転をストローク運転実行部488へ指示する。ストローク運転実行部488は、推定部482からの指示が入力されると、工作機械による機械加工が終了するのを待って、次の機械加工が始まるまでの間に、ストローク運転のための指令を出力する。ストローク運転のための指令は、加減速処理部49および軸データ入出力部50を経て駆動部7へ出力される。駆動機構8zは、ストローク運転のための指令に従って、ストローク運転を実行する。駆動機構8zにストローク運転を実行させると、ベアリングデータ管理部512は、ストローク運転の前における被駆動体の位置について計測された継続時間をリセットする。ストローク運転とは、ベアリングを360度以上回転させる運転であって、大きな軸移動を伴わない運転を指す。
このようにして、数値制御装置1は、ベアリングの残り寿命が尽きる前に駆動機構8zにストローク運転を実行させる。ストローク運転によって、ベアリングの全体にグリスを行き渡らせることができるため、ベアリングの摩耗を低減させることが可能となる。実施の形態2によると、移動量が大きい運転を定期的に行う必要が無いため、加工を停める時間が少なくて済む。これにより、工作機械による加工全体についての効率低下を少なくしつつ、ベアリングの摩耗を低減させることができる。
図12は、実施の形態2にかかる数値制御装置1により振動切削の継続時間を計測した結果の例を示す図である。図12には、ボールねじ81zにおける位置ごとについての継続時間を表す棒グラフを示す。図12において、縦軸は振動切削の継続時間を表す。横軸はボールねじ位置を表す。図12において、継続時間の単位は「時間(h)」、ボールねじ位置の単位は「mm」とする。
例えば、ベアリングデータ管理部512に設定される寿命が30時間であるものとする。また、基準時間は、ベアリングデータ管理部512により設定される寿命の80%に相当する時間である24時間とする。図12には、125.7mm、126mm、および126.3mmの各ボールねじ位置について計測された継続時間を表す3本の棒グラフを示している。継続時間を計測する際における各ボールねじ位置の間隔は、ボールねじ81zの回転が1回転未満の回転である場合における被駆動体の移動量に相当する間隔である必要がある。言い換えると、各ボールねじ位置の間隔を、ボールねじ81zの1回転未満の回転に相当する間隔、すなわち、ベアリングの360度未満の回転に相当する間隔として、継続時間が計測される。ここでは、各ボールねじ位置の間隔を、ボールねじ81zの1/20回転に相当する間隔である0.3mmとして、継続時間が計測されるものとする。
図12に示す例において、ボールねじ位置126mmについての継続時間が25時間であるものとする。図12に示す例では、ボールねじ位置126mmについて、計測された継続時間が基準時間以上であるという要件を満足している。数値制御装置1は、ボールねじ位置126mmについての継続時間が基準時間以上であることから、駆動機構8zにストローク運転を実行させる。
次に、実施の形態2にかかる数値制御装置1によって実行される処理の手順について説明する。図13は、実施の形態2にかかる数値制御装置1によって実行される処理の手順の例を示すフローチャートである。ここでは、工作機械による振動切削が実行される場合において数値制御装置1によって実行される処理の例について説明する。また、数値制御装置1において、変更前の振動切削の振動周波数は、例えば、実施の形態1と同様の90.9Hzであるものとする。
図13に示される手順による処理の前提として、ベアリングデータ管理部512は、ボールねじ81zにおける複数の位置の各々にて被駆動体の振動を連続して実行可能な時間である寿命を設定する。
ステップS11において、計測部481は、振動切削の継続時間を計測する。計測部481は、振動切削が開始されると、被駆動体の現在の位置で被駆動体を振動させる振動切削についての継続時間を計測する。計測部481は、ボールねじ81zにおける複数の位置の各々について、継続時間を計測する。
ステップS12において、推定部482は、ステップS11において計測された継続時間が基準時間以上であるか否かを判断する。継続時間が基準時間以上である場合(ステップS12,Yes)、ステップS13において、推定部482は、ストローク運転実行部488へストローク運転を指示する。ストローク運転実行部488は、駆動機構8zにストローク運転を実行させる。これにより、数値制御装置1は、図13に示す手順による処理を終了する。
継続時間が基準時間以上ではない場合(ステップS12,No)、数値制御装置1は、図13に示す手順による処理を終了する。数値制御装置1は、図13に示す手順による処理を終了した後に、図13に示す手順による処理を再度実行する。
上記説明では、推定部482は、計測された継続時間に基づいて、ベアリングの残り寿命を推定することとした。推定部482は、一定の位置での被駆動体の振動を継続させることによる振動切削についての振動回数である継続回数に基づいて、ベアリングの残り寿命を推定することとしても良い。すなわち、推定部482は、所定の位置での被駆動体の振動を継続させることによる振動切削についての実行時間または振動回数である継続値に基づいて、現在の位置での被駆動体の振動を継続可能である期間をベアリングの残り寿命として求める。
推定部482は、例えば、振動周波数に振動切削の継続時間を乗算することによって継続回数の値を取得する。または、推定部482は、振動回数をカウントすることによって、継続回数の値を取得しても良い。推定部482は、例えば、波形生成部484により生成される振動の基本波形である振動波形に基づいて、継続回数をカウントしても良い。
実施の形態2によると、推定部482は、振動切削の実行時間に基づいて、駆動機構を構成する機構部品であるベアリングの残り寿命を推定する。推定部482は、被駆動体の現在の位置で被駆動体を振動させる振動切削を継続可能な時間を、ベアリングの残り寿命として求める。数値制御装置1は、ベアリングの残り寿命の推定結果に基づいて駆動機構にストローク運転を実行させる。数値制御装置1は、ベアリングの残り寿命に応じてストローク運転を実行させることができるため、グリスの偏りによるベアリングの摩耗を回避することが可能となる。ベアリングの摩耗を低減できることによって、ベアリングの交換時期が早まることを防ぐことができる。このため、振動切削に起因する駆動機構の劣化を遅らせることが可能となる。
以上により、実施の形態2にかかる数値制御装置1によると、振動切削を含む加工を行う工作機械の駆動機構について、振動切削に起因する駆動機構の劣化の状況を把握することが可能となる、という効果を奏する。
なお、実施の形態2において、推定部482が推定したベアリングの残り寿命に基づいて、実施の形態1と同様に、振動条件変更部483が、振動切削を実行する位置を変えないで、残り寿命を延ばすように振動条件を変更してもよい。具体的には、振動条件変更部483は、残り寿命を延ばすために、変更前の振動切削の振動周波数である90.9Hzよりも振動周波数が小さくなるように振動条件を変更する。
実施の形態1,2では、数値制御装置1は、工具を振動させて振動切削を実行することとしたが、これに限られない。数値制御装置1は、例えば、ワークを振動させて振動切削を実行するようにしても良い。
次に、数値制御装置1が備える制御演算部4のハードウェア構成について説明する。図14は、実施の形態1または2にかかる数値制御装置1が備える制御演算部4のハードウェア構成例を示す図である。
制御演算部4は、図14に示される制御回路100により実現される。制御回路100は、プロセッサ101とメモリ102とを備える。制御回路100は、プロセッサ101がソフトウェアを実行する回路である。
制御演算部4は、ソフトウェア、ファームウェア、またはソフトウェアとファームウェアとの組み合わせにより実現される。ソフトウェアまたはファームウェアはプログラムとして記述され、メモリ102に格納される。制御回路100では、メモリ102に記憶されたプログラムをプロセッサ101が読み出して実行することにより、制御演算部4の各機能を実現する。すなわち、制御回路100は、制御演算部4の処理が結果的に実行されることになるプログラムを格納するためのメモリ102を備える。このプログラムは、制御演算部4の手順および方法をコンピュータに実行させる数値制御プログラムである。メモリ102は、プロセッサ101が各種処理を実行する際の一時メモリにも使用される。
プロセッサ101は、CPU(Central Processing Unit)、処理装置、演算装置、マイクロプロセッサ、マイクロコンピュータ、プロセッサ、DSP(Digital Signal Processor)、またはシステムLSI(Large Scale Integration)などである。メモリ102は、例えば、RAM(Random Access Memory)、ROM(Read Only Memory)、フラッシュメモリ、EPROM(Erasable Programmable Read Only Memory)、またはEEPROM(登録商標)(Electrically Erasable Programmable Read Only Memory)等の、不揮発性または揮発性の半導体メモリ、あるいは、磁気ディスク、フレキシブルディスク、光ディスク、コンパクトディスク、ミニディスクまたはDVD(Digital Versatile Disc)等が該当する。
プロセッサ101が実行するプログラムは、コンピュータで実行可能な、データ処理を行うための複数の命令を含むコンピュータ読取り可能かつ非遷移的な(non-transitory)記録媒体を有するコンピュータプログラムプロダクトであっても良い。プロセッサ101が実行するプログラムは、複数の命令がデータ処理を行うことをコンピュータに実行させる。
制御演算部4は、専用のハードウェアにより実現されても良い。また、制御演算部4の機能の一部を専用のハードウェアで実現し、制御演算部4の機能の他の一部をソフトウェアまたはファームウェアで実現するようにしても良い。
以上の各実施の形態に示した構成は、本開示の内容の一例を示すものである。各実施の形態の構成は、別の公知の技術と組み合わせることが可能である。各実施の形態の構成同士が適宜組み合わせられても良い。本開示の要旨を逸脱しない範囲で、各実施の形態の構成の一部を省略または変更することが可能である。
1 数値制御装置、2 入力操作部、3 出力部、4 制御演算部、7 駆動部、8z 駆動機構、31,35 マーク、32,36 メッセージ、33,34 ボタン、41 入力制御部、42 データ設定部、43 記憶部、44 出力制御部、45 解析処理部、46 制御信号処理部、47 PLC回路部、48 補間処理部、49 加減速処理部、50 軸データ入出力部、51 データ管理部、71s 主軸モータ、71x,71z サーボモータ、72s,72x,72z 検出器、73s 主軸制御部、73x,73z サーボ制御部、81z ボールねじ、82z テーブル、83z1,83z2 支持機構、84z カップリング、85z ナット、86z,715z ボール、87,716,717 両矢印、100 制御回路、101 プロセッサ、102 メモリ、431 パラメータ記憶エリア、432 加工プログラム記憶エリア、433 表示データ記憶エリア、434 共有エリア、481 計測部、482 推定部、483 振動条件変更部、484 波形生成部、485 振動移動量生成部、487 加工プログラム変更部、488 ストローク運転実行部、511 ボールねじデータ管理部、512 ベアリングデータ管理部、711z シャフト、712z ベアリング、713z 外輪、714z 内輪。
Claims (13)
- 駆動機構により振動切削を含む加工を行う工作機械を制御する数値制御装置であって、
前記振動切削の実行時間に基づいて、前記駆動機構を構成する機構部品の残り寿命を推定する推定部を備えることを特徴とする数値制御装置。 - 前記推定部は、前記実行時間および前記振動切削の振動条件に基づく運転係数に基づいて前記機構部品の残り寿命を推定することを特徴とする請求項1に記載の数値制御装置。
- 前記駆動機構は、動力を受けて回転する前記機構部品であるボールねじの回転運動を被駆動体の直線運動へ変換させる機構であって、
前記推定部は、前記ボールねじの残り寿命を推定することを特徴とする請求項1または2に記載の数値制御装置。 - 前記推定部は、前記機構部品の寿命と前記振動切削における前記駆動機構の動作の態様を表す運転係数との関係を参照して、前記実行時間を累積した結果である累積値と、前記振動切削における振動についての条件である振動条件から求まる前記運転係数である実効運転係数とに基づいて、前記残り寿命を推定することを特徴とする請求項3に記載の数値制御装置。
- 前記駆動機構は、前記ボールねじの回転中心である軸の方向における複数の位置の各々で前記被駆動体を振動させることが可能であって、
複数の前記位置の各々について、前記位置での前記被駆動体の振動による前記振動切削の前記累積値が算出され、
前記推定部は、複数の前記位置の各々について算出された前記累積値に基づいて前記ボールねじの前記残り寿命を推定することを特徴とする請求項4に記載の数値制御装置。 - 複数の前記位置の各々について算出された前記累積値と、複数の前記位置の各々にて前記被駆動体を振動させたときの前記振動条件とに基づいて、複数の前記位置の各々についての前記実効運転係数が算出され、
前記推定部は、算出された前記実効運転係数と複数の前記位置の各々について集計された前記累積値とに基づいて前記ボールねじの前記残り寿命を推定することを特徴とする請求項5に記載の数値制御装置。 - 推定された前記残り寿命に基づいて前記振動切削の振動条件の変更を提案し、かつ、前記振動条件の変更指示に従って前記振動条件を変更する第1の変更部を備えることを特徴とする請求項1から6のいずれか1つに記載の数値制御装置。
- 複数の前記位置の各々について集計された前記累積値に基づいて、前記振動切削において前記被駆動体を振動させる位置を変更する第2の変更部を備えることを特徴とする請求項5または6に記載の数値制御装置。
- 前記機構部品は、ベアリングを含み、
前記推定部は、前記ベアリングの残り寿命を推定することを特徴とする請求項1または2に記載の数値制御装置。 - 前記駆動機構は、ボールねじの回転中心である中心線の方向における複数の位置の各々で被駆動体を振動させることが可能であって、
前記推定部は、所定の前記位置での前記被駆動体の振動を継続させることによる前記振動切削についての前記実行時間である継続値に基づいて、現在の前記位置での前記被駆動体の振動を継続可能である期間を前記機構部品の前記残り寿命として求めることを特徴とする請求項9に記載の数値制御装置。 - 前記機構部品の前記残り寿命の推定結果に基づいて前記駆動機構にストローク運転を実行させるストローク運転実行部を備えることを特徴とする請求項10に記載の数値制御装置。
- 駆動機構により振動切削を含む加工を行う工作機械について、前記振動切削の実行時間に基づいて、前記駆動機構を構成する機構部品の残り寿命を推定するステップを含むことを特徴とする数値制御方法。
- 駆動機構により振動切削を含む加工を行う工作機械について、前記振動切削の実行時間に基づいて、前記駆動機構を構成する機構部品の残り寿命を推定するステップをコンピュータに実行させることを特徴とする数値制御プログラム。
Priority Applications (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
PCT/JP2023/010010 WO2024189814A1 (ja) | 2023-03-15 | 2023-03-15 | 数値制御装置、数値制御方法、および数値制御プログラム |
JP2024515955A JPWO2024189814A1 (ja) | 2023-03-15 | 2023-03-15 | |
JP2025038060A JP2025085026A (ja) | 2023-03-15 | 2025-03-11 | 数値制御装置および数値制御方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
PCT/JP2023/010010 WO2024189814A1 (ja) | 2023-03-15 | 2023-03-15 | 数値制御装置、数値制御方法、および数値制御プログラム |
Publications (1)
Publication Number | Publication Date |
---|---|
WO2024189814A1 true WO2024189814A1 (ja) | 2024-09-19 |
Family
ID=92754766
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
PCT/JP2023/010010 WO2024189814A1 (ja) | 2023-03-15 | 2023-03-15 | 数値制御装置、数値制御方法、および数値制御プログラム |
Country Status (2)
Country | Link |
---|---|
JP (2) | JPWO2024189814A1 (ja) |
WO (1) | WO2024189814A1 (ja) |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2012092910A (ja) * | 2010-10-27 | 2012-05-17 | Jtekt Corp | 工作機械の主軸状態検出装置 |
JP2020170365A (ja) * | 2019-04-03 | 2020-10-15 | ファナック株式会社 | 数値制御装置 |
JP2021056880A (ja) * | 2019-09-30 | 2021-04-08 | ファナック株式会社 | 診断装置及び診断方法 |
JP6916409B1 (ja) * | 2020-01-16 | 2021-08-11 | ファナック株式会社 | 数値制御装置 |
-
2023
- 2023-03-15 WO PCT/JP2023/010010 patent/WO2024189814A1/ja active Application Filing
- 2023-03-15 JP JP2024515955A patent/JPWO2024189814A1/ja active Pending
-
2025
- 2025-03-11 JP JP2025038060A patent/JP2025085026A/ja active Pending
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2012092910A (ja) * | 2010-10-27 | 2012-05-17 | Jtekt Corp | 工作機械の主軸状態検出装置 |
JP2020170365A (ja) * | 2019-04-03 | 2020-10-15 | ファナック株式会社 | 数値制御装置 |
JP2021056880A (ja) * | 2019-09-30 | 2021-04-08 | ファナック株式会社 | 診断装置及び診断方法 |
JP6916409B1 (ja) * | 2020-01-16 | 2021-08-11 | ファナック株式会社 | 数値制御装置 |
Also Published As
Publication number | Publication date |
---|---|
JP2025085026A (ja) | 2025-06-03 |
JPWO2024189814A1 (ja) | 2024-09-19 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP6698604B2 (ja) | 数値制御システム、及び工具状態検知方法 | |
JP3883485B2 (ja) | 工具折損あるいは予知検出装置 | |
JP5955479B1 (ja) | 表示装置 | |
JP4261470B2 (ja) | 制御装置 | |
JP6898079B2 (ja) | 工作機械およびその制御方法 | |
CN106020129B (zh) | 数控装置及其控制方法 | |
JP2020123191A (ja) | 数値制御システム | |
JP2009080752A (ja) | 衝突検出機能を有する工作機械の制御装置 | |
US20230052323A1 (en) | Machine tool and information processing device | |
JP2006154998A (ja) | 制御装置 | |
WO2024189814A1 (ja) | 数値制御装置、数値制御方法、および数値制御プログラム | |
JP5777931B2 (ja) | 主軸ユニット駆動装置、及び主軸ユニット駆動方法 | |
JP7599594B1 (ja) | 数値制御装置および数値制御方法 | |
WO2020084671A1 (ja) | 保守支援システム、数値制御装置および保守支援システムの制御方法 | |
JP2020013433A (ja) | 数値制御装置、数値制御方法、及び数値制御プログラム | |
JP5056307B2 (ja) | Nc制御機器および記録媒体 | |
JP2003271213A (ja) | 移動軸監視装置、移動軸監視方法、移動軸監視プログラムおよびその移動軸監視プログラムを記録したコンピュータ読取り可能な記録媒体 | |
JP7369257B1 (ja) | 工作機械 | |
JP7695368B2 (ja) | 診断装置、及びプログラムを記録した記録媒体 | |
JP4037087B2 (ja) | 数値制御工作機械のねじ切り制御方法および制御装置とそれを組み込んだ数値制御工作機械 | |
JPH0569656B2 (ja) | ||
JP2010257116A (ja) | 工作機械 | |
JP2020154921A (ja) | 数値制御装置と制御方法 | |
CN120359474A (zh) | 数控装置 | |
CN111796553B (zh) | 数值控制装置和数值控制系统 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
WWE | Wipo information: entry into national phase |
Ref document number: 2024515955 Country of ref document: JP |
|
121 | Ep: the epo has been informed by wipo that ep was designated in this application |
Ref document number: 23927435 Country of ref document: EP Kind code of ref document: A1 |