Control unit and computer-readable recording medium

The control unit addresses the issue of vibrations and reduced accuracy in industrial machines by using a curvature-based curve to smoothly control feed speed through corner parts, ensuring precise and vibration-free operation.

DE112022007248T5Pending Publication Date: 2025-03-13FANUC LTD
View PDF 0 Cites 0 Cited by

Patent Information

Application Number
DE112022007248
Authority / Receiving Office
DE · DE
Patent Type
Applications
Current Assignee / Owner
Filing Date
2022-08-23
Publication Date
2025-03-13

AI Technical Summary

Technical Problem

Existing methods for smoothing corner parts in industrial machine paths often lead to vibrations and reduced processing accuracy due to uncontrolled feed speed changes.

Method used

A control unit that references a curvature-based curve to smoothly accelerate and decelerate feed axes along corner sections, ensuring continuous speed control and reduced vibrations.

Benefits of technology

The solution effectively prevents wave-shaped speed curves, reduces vibrations, and enhances processing accuracy by smoothly transitioning through corner parts.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure 00000000_0000_ABST
    Figure 00000000_0000_ABST
Patent Text Reader

Abstract

A control device according to the present disclosure comprises: an analyzer that analyzes instructions from a control program; a corner detector that, based on the analysis result by the analyzer, detects a corner segment where the direction of a moving route becomes discontinuous; a reference curve shaper that performs acceleration / deceleration processing on movements before and after the corner segment on the moving route and that generates as a reference curve a curve obtained by overlapping the movements by an amount corresponding to a predetermined overlap period; a corner curve shaper that generates a moving route that is curved by inserting a curve into the corner segment that passes through at least one predetermined reference position on the reference curve;and a curve velocity planner that generates a velocity plan with respect to the motion on the curved moving route. The curve velocity planner determines the velocity at the reference position during the motion on the motion path based on the motion velocity at the reference position on the reference curve.
Need to check novelty before this filing date? Find Prior Art

Description

[TECHNICAL FIELD]

[0001] The present invention relates to a control unit and a computer-readable recording medium. [BACKGROUND]

[0002] In an industrial machine, such as a multi-axis machine tool, when the tool is moved along a path where a machining point is discontinuous, such as a right-angled corner, the feed rate at a corner part is reduced or the shape of the corner part is rounded to prevent the occurrence of impacts when passing through the corner (e.g. patent literature 1). [STATE OF THE ART DOCUMENT][PATENT LITERATURE]

[0003] [Patent Literature 1] Japanese Patent Publication No. H9-190211 [SUMMARY OF THE INVENTION][PROBLEMS THAT THE INVENTION IS INTENDED TO SOLVE]

[0004] To round off the shape of the corner section, a method for inputting a circular arc, a spline curve, or a clothoid curve can be used. However, if no speed control is provided in such a case, the speed curve of each feed axis will have a wavy shape. This can lead to vibrations due to changes in acceleration or a reduction in machining accuracy.

[0005] Therefore, it is not only important to round off the shape of the corner part, but also to control the feed rate. [Means to solve the problem]

[0006] To solve the problem described above, a control unit according to the present disclosure refers to a reference curve formed on the basis of the shape of a corner part and determines the curvature of the corner part and the distribution of a velocity traveling along the corner part. The reference curve is formed by uniformly accelerating and decelerating each feed axis along the shape of the corner part.

[0007] One aspect of the present disclosure is a control device for driving a feed axis of an industrial machine based on a control program, comprising: an analyzer for analyzing a command in the control program; a corner detector for detecting a corner section where the direction of a motion path is discontinuous, based on a result of an analysis performed by the analyzer; a reference curve former for performing acceleration / deceleration processing on motions on motion paths before and after the corner section, in order to form a curve as a reference curve in which the motion paths overlap by a predetermined overlap time; a corner curve former for generating a curved motion path on the corner section by inserting a curve that passes at least one predetermined reference position on the reference curve;and a curve velocity planner for generating a velocity plan with respect to a motion on the curved motion path, wherein the curve velocity planner determines a velocity at the reference position while moving along the motion path, based on a motion velocity at the reference position on the reference curve.

[0008] Another aspect of the present disclosure is a computer-readable recording medium that records a program for operating a computer as a control unit for driving a feed axis of an industrial machine based on a control program, wherein the computer is operated as: an analyzer for analyzing an instruction in the control program; a corner detector for detecting a corner part where a direction of a motion path is discontinuous, based on a result of an analysis performed by the analyzer; a reference curve former for performing acceleration / deceleration processing on motions on motion paths before and after the corner part, in order to form a curve as a reference curve in which the motion paths overlap by a predetermined overlap time;a corner curve shaper for generating a curved motion path on the corner part by inserting a curve that passes at least one predetermined reference position on the reference curve; and a curve velocity planner for generating a velocity plan with respect to a motion on the curved motion path, wherein the curve velocity planner determines a velocity at the reference position as it moves along the motion path, based on a motion velocity at the reference position on the reference curve. [Impact of the invention]

[0009] According to one aspect of the present disclosure, the curvature of the corner part and the speed at which the corner part is to be traversed are determined on the basis of the reference curve in order to prevent a velocity waveform of each feed axis from becoming wavy and to reduce shocks, thereby improving machining accuracy. [BRIEF DESCRIPTION OF THE DRAWINGS] Fig. Figure 1 is a schematic hardware configuration diagram of a control unit according to an embodiment of the present invention; Fig. Figure 2 is a block diagram that schematically shows the functions of the control unit according to the present invention; Fig. Figure 3 shows an example of a corner piece in a motion path; Fig. Figure 4 is a diagram showing an example of the relationship between the driving speeds on the motion paths when forming a reference curve; Fig. Figure 5 shows an example of a reference curve formed by a reference curve former; and Fig. Figure 6 shows an example of a curve that was inserted into the corner part by a corner curve former 130. [TYPE OF IMPLEMENTATION OF THE INVENTION]

[0010] One embodiment of the present invention will now be described with reference to the accompanying drawings.

[0011] Fig. Figure 1 is a schematic hardware configuration diagram showing the main components of a control unit according to an embodiment of the present invention. A control unit 1 according to the invention can be used as a control unit for controlling industrial machines, such as machine tools and robots, in which a movable object is moved by the drive of a motor. The following description describes an example of a control unit 1 that controls a relative position between a tool and a workpiece in order to control a machine tool for machining the workpiece.

[0012] The control unit 1 of the present invention includes a central processing unit (CPU) 11, which is a processor for controlling the entire control unit 1. The CPU 11 reads a system program stored in a read-only memory (ROM) 12 via a bus 22 in order to control the entire control unit 1 according to the system program. A random access memory (RAM) 13 is configured to temporarily store calculation data, data to be displayed, and various externally entered data.

[0013] A non-volatile memory 14 is configured, for example, with a memory chip or a solid-state drive (SSD) backed up by a battery (not shown in the figure), so that the memory conditions can be maintained even when a power source of the control unit 1 is switched off. The non-volatile memory 14 is configured to store, for example, control programs and data read from an external device 72 via an interface 15, data and control programs entered via an input device 71, and various data acquired by an industrial machine 3. The control programs and the various data stored in the non-volatile memory 14 can be transferred to the RAM 13 when they are executed / used. In addition, the ROM 12 stores various system programs, such as known analysis programs, in advance.

[0014] Interface 15 is configured to connect the CPU 11 in the control unit 1 to the external device 72, e.g., a USB device. Control programs, parameters, and other data used to control the industrial machine 3 can be read from the external device 72. Furthermore, control programs, parameters, etc., processed in the control unit 1 can be saved to external storage media via the external device 72. A programmable logic controller (PLC) 16 is configured to send signals via an I / O unit 17, according to the sequence programs stored in the control unit 1, to the industrial machine 3 and to external devices of the industrial machine 3 (e.g., a turret, a robot drive, sensors attached to the industrial machine 3) in order to control the industrial machine 3 and the external devices.In addition, the PLC 16 receives signals from various switches of an operator panel located on the main body of the industrial machine 3, and signals from external devices, performs the necessary signal processing and then transmits the signals to the CPU 11.

[0015] A display unit 70 is configured to show various data read into a memory, data acquired through the execution of control programs, system programs, and the like, which are output via an interface 18. The input unit 71 is configured with a keyboard, a pointing device, or similar and serves to transmit commands, data, and other information, corresponding to the operations performed by an operator, to the CPU 11 via an interface 19.

[0016] An axis 30 control circuit for controlling axes in industrial machine 3 is configured to receive a motion command for an axis from CPU 11 and then output the command for the axis to a servo amplifier 40. Upon receiving this command, the servo amplifier 40 drives a servo motor 50, which is configured to move each of the moving objects in industrial machine 3 along the axis. A position / speed detector is integrated into the servo motor 50 for the axis to feed a position / speed feedback signal back from the position / speed detector to the axis 30 control circuit. The axis 30 control circuit performs feedback control for the position and speed of the servo motor 50. Although the hardware configuration diagram in Fig. Figure 1 shows only one control circuit for axis 30, one servo amplifier 40, and one servo motor 50; these are actually intended for the number of axes in the industrial machine 3 to be controlled. For example, if a typical machine tool with three linear axes is being controlled, three pairs of control circuit for axis 30, servo amplifier 40, and servo motor 50 are provided to move a spindle attached to a tool and a workpiece relative to the directions of the three linear axes (X-axis, Y-axis, Z-axis).

[0017] A control circuit of spindle 60 is configured to receive a spindle rotation command and send a spindle speed signal to a spindle amplifier 61. Upon receiving the spindle speed signal, the spindle amplifier 61 is configured to rotate a spindle motor 62 in the industrial machine 3 at a predefined speed to drive the spindle. A position encoder 63 is coupled to the spindle motor 62. The position encoder 63 is synchronized with the spindle rotation to output a feedback pulse, which is then read by the CPU 11.

[0018] Fig. Figure 2 is a block diagram schematically illustrating the functions of the control unit 1 according to an embodiment of the present invention. The control unit 1 according to the invention controls a relative position between a rotating tool and a workpiece in order to bring the tool into contact with the workpiece for cutting the workpiece. The various functions of the control unit 1 according to the embodiment are implemented such that the CPU 11, which is located in the Fig. The control unit 1 shown contains the system programs that execute the operation of the components of the control unit 1.

[0019] The control unit 1 of the embodiment comprises an analyzer 100, a corner detector 110, a reference curve former 120, a corner curve former 130, a curve speed planner 140, an accelerator / deceleration unit for each axis 150, and a controller 160. Furthermore, a control program 200, intended for controlling the industrial machine 3, is previously stored in RAM 13 and non-volatile memory 14 in the control unit 1.

[0020] The analyzer 100 is configured to read blocks of a control program 200 sequentially. The analyzer 100 then analyzes the commands originating from these read blocks. For example, the control program 200 contains commands for a stroke, a motion path, and a feed axis's speed. The analyzer 100 evaluates these commands to generate data on a motion command for controlling the position of each servo motor 50. If the control program 200 contains a rotation speed command for the spindle, data on a spindle rotation command for controlling the rotation of the spindle motor 62 is generated. It is desirable for the analyzer 100 to perform the analysis by previewing the blocks. The analyzer 100 outputs the generated command data to the corner detector 110.

[0021] The corner detector 110 is configured to detect a corner segment where the direction of the movement path is discontinuous, based on the data from the motion command input by the analyzer 100. In this description, a corner segment is a section between two successive movement paths P1 and P2 where the direction of movement path P1 before this segment is discontinuously related to the direction of movement path P2 after this segment. Fig. Figure 3 shows an example of a corner piece. The example in Fig. Figure 3 shows that the direction of the movement path P1 in front of the corner part is connected at an approximately right angle to the direction of the movement path P2 behind the corner part. In addition to the in Fig. In the angles shown in Figure 3, the corner section C can also be connected at a more acute or obtuse angle. Furthermore, the motion paths P1 and P2 in front of and behind the corner section are not necessarily straight, but can be curved. The corner detector 110 detects a connection point between the motion paths based on the data from the motion command input by the analyzer 100. If an angle formed by the motion paths in front of and behind the connection point is equal to or less than a predefined angle θ, the detector detects a connection point. th (θ th If the angle is less than 180°, this connection point is recognized as a corner part, to give an example.

[0022] The reference curve former 120 is configured to form a reference curve in which a motion path P1 intersects with a motion path P2, the paths being those in front of and behind a corner segment C detected by the corner detector 110. The reference curve is used to form a curve to be inserted into the corner segment. According to the embodiment, the reference curve is a curve along which a moving object moves when acceleration / deceleration processing is applied to the motion along the motion paths P1 and P2 in front of and behind the corner segment C, and when the motion paths P1 and P2 are further overlapped by an overlap time t0. The overlap time t0 is set such that any path error of the reference curve falls within the range of a predefined acceptable error. Fig. Figure 4 is a diagram showing the relationship between a motion velocity on motion path P1 and a motion velocity on motion path P2 when forming the reference curve. As shown in Fig. As shown in Figure 4, the reference curve shaper 120 performs acceleration / deceleration on motion paths P1 and P2 before and after the corner section to achieve repeated uniform acceleration. It then determines a curve that will be a motion path of the moving object when the motion on motion path P2 begins after the corner section at the overlap time t0 before the point at which the motion on motion path P1 ends before the corner section, thus forming the reference curve. The overlap time t0 can be determined by using a time constant applied to each axis as a reference value. Fig. Figure 5 shows an example of the reference curve generated by the Reference Curve Former 120. The reference curve is formed by synthesizing motions in which the motion velocities in the directions of motion paths P1 and P2 before and after the corner portion are uniformly accelerated / decelerated. Thus, even if the moving object is moved along this reference curve at a synthesized velocity, the ripples of the velocity component in the direction of each motion path and the velocity and acceleration components in each feed axis are suppressed, and fluctuations in velocity change do not occur.

[0023] The Corner Curve Former 130 is configured to create a curve based on the reference curve formed by the Reference Curve Former 120 and generates a motion path in which the formed curve is inserted into the corner portion detected by the Corner Detector 110. The Corner Curve Former 130 forms a curve that passes at least one predetermined reference position on the reference curve. The predetermined reference position could, for example, be the point of greatest curvature on the reference curve.

[0024] Fig. Figure 6 shows an example of a curve inserted into the corner part by the Corner Curve Former 130. The example in Fig. Figure 6 shows a position where the curvature on the reference curve P r The largest point is designated as reference position R1, and a curve passing through reference position R1 is formed. In this case, the corner curve shaper 130 adds a curve P. ithrough the reference position R1 into the corner part C, where the curve P i The system has a predetermined point Ps as the starting point on the motion path in front of the corner segment and a predetermined point Pe as the endpoint on the motion path behind the corner segment. The positions of the starting point Ps and the endpoint Pe can be closer to the corner segment than the positions where the reference curve P r with the motion paths P1, P2. That is, the curve is formed by using a second acceleration / deceleration time constant that is smaller than the acceleration / deceleration time constant used to form the reference curve. The curve with the smaller acceleration / deceleration time constant is formed while the position with the large curvature is set, so that a path error e pThe curve can be reduced without increasing the impacts so much. Then the movement path P1 before the corner section is replaced by a movement path P1. whose endpoint is point Ps, and the movement path P2 after the corner section is replaced by a movement path P 2' The existing motion path is replaced by a new one whose starting point is point Pe. The inserted curve only needs to have the position, velocity, and acceleration at both ends that correspond to the motion paths P. 1' , P 2' The curves before and after the corner portion are nearly continuous. Furthermore, it is desirable that the inserted curve can be differentiated two or more times. Such a curve insertion is generally known, for example, from Japanese patent publications H9-190211 and H10-320026 and is therefore not described in detail here.

[0025] The predetermined reference position on the reference curve, to which the Corner Curve Former 130 refers while forming a curve to be inserted into the corner part, can be, for example, a position closer to the corner part. A curve passing through this position will have a path error equal to that of the reference curve. Furthermore, the reference position can be a position where the reference curve exhibits the greatest local curvature, i.e., where the rate of change of curvature is zero. The Corner Curve Former 130 can define multiple positions on the reference curve as reference positions.

[0026] The Curve Speed ​​Planner 140 is configured to create a speed plan for movement along the curve inserted by the Corner Curve Shaper 130. When creating a speed plan, the Curve Speed ​​Planner 140 sets the speed when passing through the reference position to a speed that is nearly identical to the speed when traveling along the reference curve. Regarding the speeds at the other positions on the curve, a speed plan can be created so that acceleration / deceleration is performed in such a way that repeated, uniform acceleration occurs.

[0027] The accelerator / decelerator for each axis 150 calculates a stroke for each control cycle of each axis of the industrial machine 3 based on the motion path created by the corner curve former 130 and the velocity plan created by the curve velocity planner 140, in order to perform the acceleration / deceleration on the calculated stroke.

[0028] Then the control unit 160 controls the motor for each component of the industrial machine 3 on the basis of the stroke processed by the accelerator / deceleration unit for each axis 150, and the data via a spindle rotation command.

[0029] Since the control unit 1, with the configuration described above, can determine the speed for passing the corner section in such a way that the rate of change of speed varies monotonically in each direction as the moving object travels along the path with the curved corner section, the behavior in each direction is stabilized and the machine vibrations are reduced. Furthermore, an improvement in the accuracy of machining the corner section is expected.

[0030] The present invention has been described with reference to the embodiment described above, but the present invention is not limited to this embodiment. Thus, the present invention can be implemented in various aspects by modifying the invention accordingly.

[0031] For example, the embodiment described above shows the example in which the starting point Ps and the endpoint Pe of the curve to be inserted are closer to the corner part than the positions where the reference curve P r with the movement paths P1' and P 2' is in contact. However, the starting point Ps and the endpoint Pe of the curve to be inserted should be further away from the corner part than the position where the reference curve P is located. r is in contact with the motion paths P1', P2' so that the time for traversing the curve can be shortened. This is because the jerk, which is in a direction perpendicular to the motion paths P1', P 2' occurs, is reduced, and as a result, the speed when driving through the corner can be further increased. [LIST OF REFERENCE MARKS] 1 control unit 3 Industrial Machine 11 CPU 12 ROM 13 RAM 14 Non-volatile memory 15, 18, 19 interface 16 PLC 17 I / O units 22 Bus 30 Control circuit of the axis 40 servo amplifiers 50 servo motor 60 Spindle control circuit 61 spindle amplifiers 62 Spindle motor 63 Position Encoders 70 Display unit 71 Input device 72 External device 100 Analyzer 110 corner detector 120 formers for reference curves 130 Corner Curve Formers 140 planners for curve speed 150 accelerators / decelerants for each axis 160 control 200 tax program

Claims

[1] A control device for driving a feed axis of an industrial machine based on a control program, comprising: an analyzer for analyzing an instruction in the control program; a corner detector for detecting a corner part where the direction of a moving path is discontinuous based on a result of an analysis performed by the analyzer; a reference curve former for performing acceleration / deceleration processing of movements on movement paths in front of and behind the corner part to form curves overlapping by a predetermined overlap time as a reference curve; a corner curve former for generating a curved motion path on the corner part by inserting a curve that passes at least one predetermined reference position on the reference curve; and a curve speed planner for creating a speed plan for a movement on the curved movement path, wherein the curve speed planner determines a speed at the reference position while moving along the motion path based on a movement speed at the reference position on the reference curve. [2] The control device according to claim 1, wherein the reference position includes a position where a curvature on the reference curve is the largest. [3] The control device according to claim 1, wherein the reference position includes a position closest to the corner part on the reference curve. [4] The control device according to claim 1, wherein the reference position includes a position at which a local curvature on the reference curve is largest. [5] The control device according to claim 1, wherein the acceleration / deceleration processing of the movements on the movement paths in front of and behind the corner part by the reference curve shaper is performed so that the acceleration is continuously accelerated / decelerated. [6] The control apparatus of claim 1, wherein the overlap time is determined based on the time of an acceleration / deceleration time constant applied to each axis. [7] The control device according to claim 1, wherein the curve speed planner sets the speed at the reference position during movement along the movement path to be approximately equal to the movement speed at the reference position on the reference curve. [8] The control device according to claim 1, wherein the corner curve shaper forms a curve by using a second acceleration / deceleration time constant that is smaller than the acceleration / deceleration time constant used in forming the reference curve, and such that a distance from the corner to a point where the curvature is greatest corresponds to that of the reference curve. [9] A computer-readable recording medium recording a program for operating a computer as a control device for driving a feed axis of an industrial machine based on a control program, the computer being operated as: an analyzer for analyzing an instruction in the control program; a corner detector for detecting a corner part at which a direction of a movement path is discontinuous based on a result of an analysis performed by the analyzer; a reference curve former for performing acceleration / deceleration processing of movements on movement paths in front of and behind the corner part to form curves overlapping by a predetermined overlap time as a reference curve; a corner curve former for generating a curved motion path on the corner part by inserting a curve that passes at least one predetermined reference position on the reference curve; and a curve speed planner for creating a speed plan for a movement on the curved path and wherein the curve speed planner determines a speed at the reference position while moving along the motion path based on a movement speed at the reference position on the reference curve.