Computing device and computer readable storage medium
By acquiring and transforming the position deviation values of the spindle and the slave axis in the computing device, calculating and outputting the deviation amount, the problem of inaccurate calculation of the deviation between the spindle and the tilting slave axis is solved, and high-precision synchronous control and error correction are achieved.
Patent Information
- Application Number
- CN202380095930.7
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2023-03-24
- Publication Date
- 2025-10-31
AI Technical Summary
In the case of a master spindle and a slave spindle that is tilted relative to the master spindle, the prior art cannot accurately calculate the amount of deviation between the master spindle and the slave spindle.
The positional deviation values of the master and slave axes are obtained by the computing device, and transformed into deviations in a common coordinate system. The deviations are calculated by the computing unit and the results are output by the output unit, thereby achieving synchronous control of the master and slave axes.
It can accurately calculate the deviation between the spindle and the driven axis, achieve high-precision synchronous control, reduce the control load of the numerical control device, and improve machining accuracy.
Smart Images

Figure CN120883158A_ABST
Abstract
Description
Technical Field
[0001] This disclosure relates to computing devices and computer-readable storage media. Background Technology
[0002] Previously, in multi-axis machine tools, there were known techniques for synchronous control of the spindle and the slave axis (e.g., Patent Document 1). When the spindle and the slave axis move along an axis of a coordinate system, the deviation between the spindle and the slave axis is calculated by subtracting the position deviation of the other axis from the position deviation of the spindle and the slave axis.
[0003] Existing technical documents
[0004] Patent documents
[0005] Patent Document 1: Japanese Patent Application Publication No. 2003-131712 Summary of the Invention
[0006] The problem that the invention aims to solve
[0007] However, when the slave axis is configured at an angle relative to the master axis, simply subtracting the positional deviation of the other from the positional deviation of the master axis cannot accurately calculate the deviation. Therefore, a technique is needed that can accurately calculate the deviation between the master axis and the slave axis configured at an angle relative to the master axis.
[0008] Methods for solving problems
[0009] The computing device disclosed herein includes: an acquisition unit that acquires a first value representing a positional deviation of a main axis and a second value representing a positional deviation of a slave axis disposed at a predetermined angle relative to the main axis; a transformation unit that performs at least one of transforming the first value acquired by the acquisition unit into a third value representing a positional deviation of the main axis in a predetermined coordinate system and transforming the second value acquired by the acquisition unit into a fourth value representing a positional deviation of the slave axis in the predetermined coordinate system; a calculation unit that calculates the deviation between the positional deviation of the main axis and the positional deviation of the slave axis in the predetermined coordinate system based on the first and fourth values, the second and third values, or the third and fourth values; and an output unit that outputs the deviation calculated by the calculation unit.
[0010] The computer-readable storage medium of this disclosure stores commands to cause a computer to perform the following processes: acquiring a first value representing the positional deviation of a spindle and a second value representing the positional deviation of a slave axis configured with a predetermined tilt angle relative to the spindle; performing at least one of transforming the acquired first value into a third value representing the positional deviation of the spindle in a predetermined coordinate system and transforming the acquired second value into a fourth value representing the positional deviation of the slave axis in the predetermined coordinate system; calculating a deviation between the positional deviation of the spindle and the positional deviation of the slave axis in the predetermined coordinate system based on the first and fourth values, the second and third values, or the third and fourth values; and outputting the calculated deviation. Attached Figure Description
[0011] Figure 1 This is a diagram used to illustrate an example of a system containing a computing device.
[0012] Figure 2 This is a block diagram illustrating an example of the hardware structure of a computing device.
[0013] Figure 3 This is a block diagram illustrating an example of the function of a computing device.
[0014] Figure 4 This is a diagram used to illustrate the tilt of the control axis.
[0015] Figure 5A It is a diagram used to illustrate positional deviation.
[0016] Figure 5B It is a diagram used to illustrate positional deviation.
[0017] Figure 6A It is a diagram used to illustrate the positional deviation of the tilt axis.
[0018] Figure 6B It is a diagram used to illustrate the positional deviation of the tilt axis.
[0019] Figure 7A This is a diagram used to illustrate an example of a processing machine.
[0020] Figure 7B This is a diagram used to illustrate an example of a processing machine.
[0021] Figure 8A This is a diagram used to illustrate an example of a processing machine.
[0022] Figure 8B This is a diagram used to illustrate an example of a processing machine.
[0023] Figure 9 This is a flowchart illustrating an example of a process performed on a computing device.
[0024] Figure 10This is a block diagram illustrating an example of the hardware structure of a machining machine.
[0025] Figure 11 This is a block diagram illustrating an example of the function of a computing device installed in a numerical control unit.
[0026] Figure 12 This is a flowchart illustrating an example of a process performed on a computing device. Detailed Implementation
[0027] Hereinafter, a computing device and a computer-readable storage medium according to embodiments of the present disclosure will be described with reference to the accompanying drawings. Furthermore, in the following description, structures having the same or similar functions will be labeled with the same reference numerals. And, sometimes, repeated descriptions of these structures will be omitted.
[0028] In this application, "based on XX" means "at least based on XX," but also includes cases where it is based on other elements besides XX. Furthermore, "based on XX" is not limited to the direct use of XX, but also includes cases based on information obtained through calculations or processing of XX. "XX" can be any element (e.g., any information).
[0029] Figure 1 This is an example illustrating a system containing a computing device. The system includes a computing device 1 and a processing machine 2. The computing device 1 and the processing machine 2 are interconnected via a network N.
[0030] The computing device 1 calculates the deviation between multiple control axes that are arranged at an angle to each other in the machining machine 2. The computing device 1 is installed, for example, in a PC (Personal Computer), server, or portable terminal.
[0031] Processing machine 2 refers to machine tools, laser processing machines, and 3D printers. Machine tools include, for example, machining centers, lathes, and multi-functional machining centers. Control axes include, for example, the X, Y, and Z axes. Deviation will be explained in detail later.
[0032] The machining machine 2 has multiple systems. In each system, the control axes move according to the machining program. The control axes in each system move in multiple different coordinate systems, for example. However, the control axes in each system can also move in a common coordinate system. The machining machine 2 with multiple systems is, for example, a lathe with an upper tool post and a lower tool, or a multi-head machining center.
[0033] The machining machine 2 is equipped with a numerical control device 3. The numerical control device 3 is a device for controlling the machining machine 2. For example, the numerical control device 3 controls the movement of the control axes of the machining machine 2.
[0034] Network N connects computing device 1 to processing machine 2 via wired or wireless means. Network N is, for example, an Internet connection or a LAN (Local Area Network).
[0035] Figure 2 This is a block diagram illustrating an example of the hardware structure of a computing device 1. The computing device 1 includes, for example, a hardware processor 101, a bus 102, a ROM (Read Only Memory) 103, a RAM (Random Access Memory) 104, a non-volatile memory 105, an interface 106, an input / output device 107, and a communication device 108.
[0036] The hardware processor 101 is a processor that uses system programs to control the entire computing device 1. The hardware processor 101 reads system programs and the like stored in ROM 103 via bus 102. The hardware processor 101 is, for example, a CPU (Central Processing Unit) or an electronic circuit.
[0037] Bus 102 is a communication path that connects the various hardware components of computing device 1 to each other. The various hardware components of computing device 1 exchange data via bus 102.
[0038] ROM103 is a storage device for storing system programs, etc. ROM103 is a computer-readable storage medium.
[0039] RAM 104 is a storage device for temporary storage of various data. RAM 104 functions as a working area for the hardware processor 101 to process various data.
[0040] Non-volatile memory 105 is a storage device that retains data even when the power supply to the computing device 1 is cut off. For example, non-volatile memory 105 stores a program for calculating deviations. Non-volatile memory 105 is a computer-readable storage medium. Non-volatile memory 105 may be, for example, a battery-backed memory or an SSD (Solid State Drive).
[0041] Interface 106 connects bus 102 to input / output device 107. Interface 106, for example, sends various data processed by hardware processor 101 to input / output device 107.
[0042] The input / output device 107 receives various data via the interface 106, enabling the monitor to display these data. Additionally, the input / output device 107 receives various data inputs and sends these data, for example, to the hardware processor 101 via the interface 106.
[0043] Input / output device 107 may include, for example, a monitor, a keyboard, and a mouse. Input / output device 107 may also be a touch panel. When input / output device 107 is a touch panel, it may be, for example, a capacitive touch panel. The touch panel is not limited to capacitive touch panels; other types of touch panels may also be used.
[0044] The communication device 108 is a device for communicating with the machining machine 2 via the network N. The communication device 108 transmits and receives data with the numerical control device 3 that controls the machining machine 2.
[0045] Figure 3 This is a block diagram illustrating an example of the function of the computing device 1. The computing device 1 includes, for example, an acquisition unit 111, a conversion unit 112, a calculation unit 113, an output unit 114, and a determination unit 115. The acquisition unit 111, conversion unit 112, calculation unit 113, output unit 114, and determination unit 115 are implemented, for example, by a hardware processor 101 using a system program stored in ROM 103 and a deviation calculation program stored in non-volatile memory 105, etc., for computational processing.
[0046] The acquisition unit 111 acquires a first value representing the position deviation of the main shaft and a second value representing the position deviation of the slave shaft configured with a predetermined tilt angle relative to the main shaft.
[0047] A spindle is a control axis that moves according to instructions based on a machining program. For example, a spindle is a control axis included in a first system.
[0048] The slave axis is a control axis that operates based on the commands of the master axis that it replicates. For example, the slave axis operates based on pulse signals generated by replicating pulse signals directed at the master axis. That is, the master and slave axes are controlled synchronously. In other words, the slave axis is a control axis that follows the master axis. The slave axis may be, for example, a control axis included in a second system, different from the first system.
[0049] Figure 4 This is a diagram used to illustrate the tilt of control axes. At least one of the axes and the main axis is tilted relative to an orthogonal axis. An orthogonal axis is three axes that are mutually orthogonal. An orthogonal axis may, for example, consist of two mutually orthogonal axes arranged horizontally and one axis orthogonal to those two axes. Figure 4 In the example shown, the X-axis and Yi-axis are orthogonal axes. The Yi-axis is a virtual axis.
[0050] For example, the Y-axis is positioned at an angle relative to the horizontally positioned X-axis. An axis positioned at an angle relative to an orthogonal axis is called an inclined axis. Figure 4 In the example shown, the Y-axis is the tilt axis. Furthermore, a coordinate system that includes a tilt axis is called a tilted coordinate system.
[0051] Even when the control axis is tilted, the coordinate values on the orthogonal axis are used to specify the movement command in the machining program. For example, when moving the structure of the machining machine 2 along the Y-axis, the coordinate values of the Yi axis, which is orthogonal to the X-axis, are used to specify the movement command. At this time, the numerical control device 3 transforms the coordinate values of the Yi axis specified by the machining program into coordinate values of the Y-axis to move the structure. That is, the numerical control device 3 transforms the coordinate values in the orthogonal coordinate system into coordinate values in the tilted coordinate system to control the control axis. Furthermore, the orthogonal coordinate system is a coordinate system with three mutually orthogonal axes.
[0052] Figure 5A and Figure 5B This is a diagram used to illustrate positional deviations. Here, the positional deviations along the orthogonal axes are explained. Furthermore, Figure 5A The Xm axis and Ym axis in the diagram are the X-axis and Y-axis of the principal axis of the first system, respectively. Figure 5B The Xs and Ys axes in the diagram represent the X and Y axes of the slave axis in the second system, respectively. The first system, for example, includes a first spindle head. The second system, for example, includes a second spindle head.
[0053] Position deviation is the difference between the commanded value and the actual amount of movement of a structure such as a spindle head along the control axis.
[0054] For example, during a control cycle in the execution of the machining program, a movement command is output to move the first spindle head along the Ym axis from position 0 to position 100. The movement command is, for example, a pulse signal.
[0055] However, during this control cycle, sometimes the first spindle head can only reach position 60. That is, sometimes the amount of movement corresponding to the pulse signal output in a certain control cycle is not performed. In this case, the position deviation of the Ym axis is 40. In other words, the first value representing the position deviation of the spindle is 40.
[0056] When a movement command is output to move the first spindle head from position 0 to position 100 along the Ym axis, the same movement command is also output to the Ys axis. That is, a movement command is output to move the second spindle head from position 0 to position 100 along the Ys axis. During the control cycle until the first spindle head reaches position 60, the second spindle head may sometimes only reach position 50, for example. At this time, the position deviation of the Ys axis is 50. In other words, the second value representing the position deviation of the slave axis is 50.
[0057] Next, the deviation will be explained. The deviation represents the difference between the positional deviation of the master spindle and the positional deviation of the slave spindle. When the master and slave spindles are orthogonal axes, the deviation represents the difference between a first value and a second value. Figure 5A and Figure 5BIn the example shown, the deviation is 10. The deviation represents the magnitude of the synchronization error.
[0058] Figure 6A and Figure 6B Used to illustrate the positional deviation of the tilt axis. Figure 6A In this diagram, the Yi axis is a virtual axis orthogonal to the Xm axis. The Xm and Ym axes are the X and Y axes, respectively, belonging to the principal axes of the first system. The Ym axis is tilted at 30° relative to the Yi axis. In other words, the angle between the Xm and Ym axes is 60°.
[0059] Figure 6B The Yi axis in the diagram is a virtual axis orthogonal to the Xs axis. The Xs axis and Ys axis are the X-axis and Y-axis of the slave axes of the second system, respectively. The Ys axis is tilted at 45° relative to the Yi axis. In other words, the angle between the Xs axis and the Ys axis is 45°.
[0060] When the machining program based on the first system moves the first spindle head along the Ym axis, the command value of the Yi axis is transformed into the command value of the Ym axis. That is, the command value in the orthogonal coordinate system is transformed into the command value in the inclined coordinate system. In addition, the command value in the inclined coordinate system shown below is the command value after rounding to the second decimal place.
[0061] For example, when the first spindle head is moved from position 0 on the Yi axis to position 100, the command value 100 for the first spindle head is transformed into a command value 115.5 on the Ym axis. When the movement command to move the first spindle head to position 115.5 on the Ym axis is executed, the first spindle head moves, for example, to position 69.3 on the Ym axis. That is, the movement amount of the first spindle head is 69.3. At this time, the position deviation of the first spindle head on the Ym axis is 46.2.
[0062] When the first spindle head moves along the Ym axis, the second spindle head moves synchronously with the first spindle head. In this case, the command value of the Ym axis is transformed into the command value of the Yi axis, and the command value of the Yi axis is transformed into the command value of the Ys axis. That is, the command value in the tilt coordinate system of the first spindle head is transformed into the command value in the orthogonal coordinate system, and the command value in the orthogonal coordinate system is transformed into the command value in the tilt coordinate system of the second spindle head.
[0063] For example, in an orthogonal coordinate system, if the second spindle head is moved from position 0 on the Yi axis to position 100, the command value 100 for the Yi axis is transformed into a command value 141.4 for the Ys axis. After executing the movement command to move the second spindle head to position 141.4 on the Ys axis, the second spindle head moves, for example, to position 70.7 on the Ys axis. That is, the movement of the second spindle head is 70.7. At this time, the position deviation of the second spindle head on the Ys axis is 70.7. Here, we return... Figure 3 Explanation.
[0064] The transformation unit 112 performs at least one of the following transformations: transforming the first value obtained by the acquisition unit 111 into a third value representing the position deviation of the principal axis in a predetermined coordinate system, and transforming the second value obtained by the acquisition unit 111 into a fourth value representing the position deviation of the slave axis in the predetermined coordinate system. That is, the transformation unit 112 transforms the position deviations of the principal axis and the slave axis into position deviations of the principal axis and the slave axis in a common coordinate system. The predetermined coordinate system is an inclined coordinate system or an orthogonal coordinate system.
[0065] For example, when the principal axis is contained in an inclined coordinate system, the transformation unit 112 transforms the position deviation of the principal axis into the position deviation of the orthogonal axis. That is, the position deviation of the principal axis in the transformed orthogonal coordinate system is a third value. Figure 6A In the example shown, the transformation unit 112 transforms the position deviation of the Ym axis 46.2 into the position deviation of the Yi axis 40.
[0066] Furthermore, when the slave axis is contained in an inclined coordinate system, the transformation unit 112 transforms the position deviation of the slave axis into the position deviation of the orthogonal axis. That is, the position deviation of the slave axis in the transformed orthogonal coordinate system is the fourth value. Figure 6B In the example shown, the transformation unit 112 transforms the position deviation of the Ys axis 70.7 into the position deviation of the Yi axis 50.
[0067] Furthermore, when the principal axis is contained in an orthogonal coordinate system and the slave axis is contained in an inclined coordinate system, the transformation unit 112 does not perform a transformation of the position deviation of the principal axis. Also, when the principal axis is contained in an inclined coordinate system and the slave axis is contained in an orthogonal coordinate system, the transformation unit 112 does not perform a transformation of the position deviation of the slave axis.
[0068] The transformation unit 112 can also transform either the position deviation of the principal axis or the position deviation of the slave axis into the position deviation of the other coordinate system. For example, if the principal axis is contained in an orthogonal coordinate system and the slave axis is contained in an inclined coordinate system, the transformation unit 112 can transform the position deviation of the principal axis into the position deviation of the inclined coordinate system. Alternatively, if the principal axis is contained in an inclined coordinate system and the slave axis is contained in an orthogonal coordinate system, the transformation unit 112 can also transform the position deviation of the slave axis into the position deviation of the inclined coordinate system.
[0069] Alternatively, sometimes the principal axis is contained in a first tilted coordinate system, and the slave axis is contained in a second tilted coordinate system different from the first tilted coordinate system. In this case, the transformation unit 112 can transform the position deviation of the principal axis in the first tilted coordinate system into the position deviation of the slave axis in the second tilted coordinate system. Alternatively, the transformation unit 112 can also transform the position deviation of the slave axis in the second tilted coordinate system into the position deviation of the principal axis in the first tilted coordinate system. Alternatively, the transformation unit 112 can also transform the position deviation of the principal axis and the position deviation of the slave axis into the position deviation of a third coordinate system different from the first and second coordinate systems.
[0070] The calculation unit 113 calculates the deviation between the position deviation of the principal axis and the position deviation of the slave axis in the predetermined coordinate system based on the first value and the fourth value, the second value and the third value, or the third value and the fourth value.
[0071] When the principal axis is contained in an orthogonal coordinate system and the slave axis is contained in an inclined coordinate system, the calculation unit 113 calculates the deviation based on the first value and the fourth value. The calculation unit 113 calculates the deviation by finding the difference between the first value and the fourth value, or the absolute value of the difference between the first value and the fourth value.
[0072] When the principal axis is contained in an inclined coordinate system and the slave axis is contained in an orthogonal coordinate system, the calculation unit 113 calculates the deviation based on the second and third values. The calculation unit 113 calculates the deviation by finding the difference between the second and third values, or the absolute value of the difference between the second and third values.
[0073] When the principal axis is contained in a first tilted coordinate system and the slave axis is contained in a second tilted coordinate system different from the first coordinate system, the calculation unit 113 calculates the deviation based on the second value and the fourth value. The calculation unit 113 calculates the deviation by finding the difference between the second value and the fourth value, or the absolute value of the difference between the second value and the fourth value.
[0074] exist Figure 6A as well as Figure 6B In the example shown, the calculation unit 113 calculates the deviation based on the second and fourth values. The value of the deviation calculated by the calculation unit 113 is 10.
[0075] The output unit 114 outputs the deviation amount calculated by the calculation unit 113. For example, the output unit 114 outputs the deviation amount to the monitor of the input / output device 107.
[0076] The determination unit 115 compares the deviation calculated by the calculation unit 113 with a predetermined threshold to determine whether a synchronization error has occurred between the master and slave axes. For example, the determination unit 115 determines whether a synchronization error has occurred in each control cycle.
[0077] The threshold can be set as a parameter, for example. The parameter can be stored, for example, in a predetermined area of the non-volatile memory 105.
[0078] For example, if the deviation calculated by the calculation unit 113 exceeds a predetermined threshold, the determination unit 115 determines that a synchronization error has occurred. If the deviation calculated by the calculation unit 113 is below the predetermined threshold, the determination unit 115 determines that no synchronization error has occurred.
[0079] If the determination unit 115 determines that a synchronization error has occurred, the output unit 114 outputs information indicating that a synchronization error has occurred. For example, the output unit 114 causes the monitor of the input / output device 107 to display the information indicating that a synchronization error has occurred.
[0080] Figure 7A and Figure 7B This is an example illustrating the machining machine 2. The machining machine 2, for example, has a first system and a second system. The first system includes a first spindle head H1. The second system includes a second spindle head H2. Both the first spindle head H1 and the second spindle head H2 are arranged in the same direction when viewed from the workpiece W. The first spindle head H1 and the second spindle head H2 are, for example, arranged above the workpiece W.
[0081] The coordinate system of the first system is an inclined coordinate system. Specifically, the Ym axis is configured with an inclination of θ1° relative to the Ymi axis. The Ymi axis is a virtual axis orthogonal to the Xm axis. θ1°, for example, represents the angle of installation error that occurs during the installation of machinery.
[0082] The second system's coordinate system is also an inclined coordinate system. Specifically, the Ys axis is configured with an inclination of θ2° relative to the Ysi axis, different from θ1°. The Ysi axis is a virtual axis orthogonal to the Xs axis. θ2°, for example, represents the angle that introduces installation errors during machinery installation.
[0083] Furthermore, the Xm and Xs axes are arranged parallel to each other. Additionally, the Z-axis is a shared axis between the tilted coordinate systems of both the first and second systems.
[0084] Figure 8A and Figure 8B This is a diagram illustrating an example of a machining machine 2. The machining machine 2, for example, has a first system and a second system. The first system includes a first spindle head H1. The second system includes a second spindle head H2. The first spindle head H1 and the second spindle head H2 are respectively arranged in different directions when viewed from the workpiece W. The first spindle head H1 is, for example, arranged above the workpiece W. The second spindle head H2 is, for example, arranged below the workpiece W.
[0085] The coordinate system of the first system is an inclined coordinate system. Specifically, the Ym axis is configured with an inclination of θ1° relative to the Ymi axis. The Ymi axis is a virtual axis orthogonal to the Xm axis. θ1° is, for example, an angle representing the installation error that occurs during the installation of machinery.
[0086] The second system's coordinate system is also an inclined coordinate system. Specifically, the Ys axis is configured with an inclination of θ2° relative to the Ysi axis, different from θ1°. The absolute values of θ1 and θ2 are equal; that is, θ1 = -θ2 holds true. The Ysi axis is a virtual axis orthogonal to the Xs axis. θ2°, for example, represents the angle of installation error that occurs during machinery installation.
[0087] Furthermore, the Xm and Xs axes are arranged parallel to each other. The positive and negative directions of the Xm and Xs axes are opposite to each other. Additionally, the Zm and Zs axes are arranged parallel to each other. The Zm and Zs axes can be formed by the Z-axis shared by the tilted coordinate systems of the first and second systems.
[0088] Figure 9 This is a flowchart illustrating an example of a process executed in computing device 1. In computing device 1, firstly, the acquisition unit 111 acquires a first value and a second value (step SA1).
[0089] Next, the transformation unit 112 performs at least one of transforming the first value into the third value and transforming the second value into the fourth value (step SA2).
[0090] Next, the calculation unit 113 calculates the deviation (step SA3). Next, the output unit 114 outputs the deviation (step SA4).
[0091] Next, the determination unit 115 determines whether a synchronization error has occurred (step SA5). Then, the output unit 114 outputs the determination result (step SA6). In addition, the process from step SA1 to step SA6 is repeatedly executed for each control cycle, and the process ends when the execution of the machining program ends.
[0092] Next, an example will be described where the computing device 1 is installed in the numerical control device 3. In this case, the computing device 1 performs control of the machining machine 2.
[0093] Figure 10 This is a block diagram illustrating an example of the hardware structure of machining machine 2. Machining machine 2 includes a numerical control device 3, an input / output device 4, a servo amplifier 5, a servo motor 6, a spindle amplifier 7, a spindle motor 8, and auxiliary equipment 9.
[0094] The numerical control device 3 is a device for controlling the machining machine 2. The numerical control device 3 includes, for example, a hardware processor 301, a bus 302, a ROM (Read Only Memory) 303, a RAM (Random Access Memory) 304, and a non-volatile memory 305.
[0095] The hardware processor 301 is a processor that uses system programs to control the entire numerical control device 3. The hardware processor 301 reads system programs and the like stored in ROM 303 via bus 302. The hardware processor 301 is, for example, a CPU or electronic circuit.
[0096] Bus 302 is a communication path that connects the various hardware components of the numerical control device 3. The various hardware components of the numerical control device 3 exchange data via bus 302.
[0097] ROM303 is a storage device for storing system programs, etc. ROM303 is a computer-readable storage medium.
[0098] RAM304 is a storage device for temporary storage of various data. RAM304 functions as a working area for the hardware processor 301 to process various data.
[0099] The non-volatile memory 305 is a storage device that retains data even when the power supply to the numerical control device 3 is cut off. For example, the non-volatile memory 305 stores a program for calculating deviations. The non-volatile memory 305 is a computer-readable storage medium. The non-volatile memory 305 may be, for example, a battery-backed memory or an SSD.
[0100] The numerical control device 3 also includes an interface 306, an axis control circuit 307, a spindle control circuit 308, a PLC (Programmable Logic Controller) 309, and an I / O unit 310.
[0101] Interface 306 connects bus 302 to input / output device 4. Interface 306, for example, sends various data processed by hardware processor 301 to input / output device 4.
[0102] Input / output device 4 receives various data via interface 306, enabling the display to show these data. Additionally, input / output device 4 accepts various data inputs and sends these data, for example, to hardware processor 301 via interface 306.
[0103] The input / output device 4 is, for example, a touch panel. When the input / output device 4 is a touch panel, it is, for example, a capacitive touch panel. The touch panel is not limited to capacitive touch panels; other types of touch panels may also be used. The input / output device 4 is located on the control panel (not shown) that houses the numerical control device 3.
[0104] The axis control circuit 307 is a circuit used to control the servo motor 6. The axis control circuit 307 receives control commands from the hardware processor 301 and sends various commands for driving the servo motor 6 to the servo amplifier 5. For example, the axis control circuit 307 sends torque commands for controlling the torque of the servo motor 6 to the servo amplifier 5.
[0105] Servo amplifier 5 receives instructions from axis control circuit 307 and supplies current to servo motor 6.
[0106] The servo motor 6 is driven by receiving current from the servo amplifier 5. A servo motor 6 is provided corresponding to each control axis of the machining center 2. When the machining center 2 is a 5-axis machine tool, the servo motor 6 includes, for example, a servo motor for the X-axis, a servo motor for the Y-axis, a servo motor for the Z-axis, a servo motor for the A-axis, and a servo motor for the C-axis. In this case, an axis control circuit 307 and a servo amplifier 5 are provided for each servo motor 6.
[0107] The servo motor 6 is connected, for example, to a ball screw for moving the structure of the machining machine 2. Driven by the servo motor 6, the structure of the machining machine 2, such as the spindle head, moves along a predetermined control axis.
[0108] The servo motor 6 has a built-in encoder (not shown) for detecting the position and feed speed of the control axis. Position feedback information and speed feedback information, respectively indicating the position and feed speed of the control axis detected by the encoder, are fed back to the axis control circuit 307. Thus, the axis control circuit 307 performs feedback control on each control axis.
[0109] The spindle control circuit 308 is a circuit used to control the spindle motor 8. The spindle control circuit 308 receives control commands from the hardware processor 301 and sends commands to the spindle amplifier 7 to drive the spindle motor 8. For example, the spindle control circuit 308 sends a spindle speed command to the spindle amplifier 7 to control the rotational speed of the spindle motor 8.
[0110] The spindle amplifier 7 receives instructions from the spindle control circuit 308 and supplies current to the spindle motor 8.
[0111] The spindle motor 8 is driven by receiving current from the spindle amplifier 7. The spindle motor 8 is connected to the spindle, causing the spindle to rotate.
[0112] In addition, Figure 10 The diagram only shows the servo motor 6 and spindle motor 8 that enable one system to operate. However, when the machining machine 2 has multiple systems, the machining machine 2 has a servo motor 6 and a spindle motor 8 corresponding to each of the multiple systems.
[0113] PLC 309 is a device that executes ladder diagram programs to control auxiliary equipment 9. PLC 309 sends commands to auxiliary equipment 9 via I / O unit 310.
[0114] I / O unit 310 is the interface connecting PLC 309 and auxiliary device 9. I / O unit 310 sends instructions received from PLC 309 to auxiliary device 9.
[0115] Auxiliary device 9 is installed in machining machine 2 and is a device that performs auxiliary actions in machining machine 2. Auxiliary device 9 operates based on instructions received from I / O unit 310. Auxiliary device 9 can also be a device located around machining machine 2. Auxiliary device 9 is, for example, a tool changing device, a coolant spraying device, or a door opening / closing drive device.
[0116] Figure 11 This is a block diagram illustrating an example of the function of the computing device 1 installed in the numerical control device 3. The computing device 1, in addition to... Figure 3 In addition to the functions shown, it also includes a control unit 116. The control unit 116 controls each control axis of the machining machine 2 based on the machining program.
[0117] The control unit 116 replicates the movement of the spindle to control the slave axis. The control unit 116 replicates pulse signals for the spindle and controls the slave axis based on the replicated pulse signals.
[0118] For example, in Figure 6A as well as Figure 6B In the example shown, the control unit 116 replicates the movement amount 115.5 of the Ym axis to generate the movement amount 141.4 of the Ys axis. The control unit 116 controls the Ys axis, which is a slave axis, based on the generated movement amount 141.4.
[0119] The control unit 116 uses the deviation calculated by the calculation unit 113 to correct the movement of the driven shaft. That is, the control unit 116 performs control to make the movement of the driven shaft match the movement of the main shaft. For example, the control unit 116 increases the torque of the driven shaft to make the movement of the driven shaft match the movement of the main shaft.
[0120] exist Figure 6A as well as Figure 6BIn the example shown, the deviation in the orthogonal coordinate system is 10. The control unit 116 transforms this deviation 10 into a deviation 14.1 on the Ys axis. The control unit 116 uses the transformed deviation 14.1 to correct the movement of the slave axis. For example, the control unit 116 performs the correction of the movement of the slave axis in the next control cycle after the control cycle in which the deviation is calculated.
[0121] Figure 12 This is a flowchart illustrating an example of a process performed in the computing device 1 installed in the numerical control device 3.
[0122] First, the control unit 116 controls the control axis according to the machining program (step SB1). Next, the acquisition unit 111 acquires the first value and the second value (step SB2).
[0123] Next, the transformation unit 112 performs at least one of transforming the first value into the third value and transforming the second value into the fourth value (step SB3).
[0124] Next, the calculation unit 113 calculates the deviation (step SB4). Next, the output unit 114 outputs the deviation (step SB5).
[0125] Next, the determination unit 115 determines whether a synchronization error has occurred (step SB6). Next, the output unit 114 outputs the determination result (step SB7). Next, the control unit 116 corrects the movement of the driven axis (step SB8). In addition, the processing from step SB1 to step SB8 is repeated for each control cycle, and the processing ends when the execution of the machining program is completed.
[0126] As described above, the computing device 1 includes: an acquisition unit 111 that acquires a first value representing the position deviation of the main spindle and a second value representing the position deviation of the slave axis disposed at a predetermined angle relative to the main spindle; a transformation unit 112 that performs at least one of transforming the first value acquired by the acquisition unit 111 into a third value representing the position deviation of the main spindle in a predetermined coordinate system and transforming the second value acquired by the acquisition unit 111 into a fourth value representing the position deviation of the slave axis in a predetermined coordinate system; a calculation unit 113 that calculates the deviation between the position deviation of the main spindle and the position deviation of the slave axis in the predetermined coordinate system based on the first and fourth values, the second and third values, or the third and fourth values; and an output unit 114 that outputs the deviation calculated by the calculation unit 113.
[0127] Additionally, the computer-readable storage medium stores commands that cause a computer to perform the following processes: acquiring a first value representing the positional deviation of the main spindle and a second value representing the positional deviation of the slave axis configured with a predetermined tilt angle relative to the main spindle; performing at least one of transforming the acquired first value into a third value representing the positional deviation of the main spindle in a predetermined coordinate system and transforming the acquired second value into a fourth value representing the positional deviation of the slave axis in the predetermined coordinate system; calculating the deviation between the positional deviation of the main spindle and the positional deviation of the slave axis in the predetermined coordinate system based on the first and fourth values, the second and third values, or the third and fourth values; and outputting the calculated deviation.
[0128] Therefore, the computing device 1 or computer can calculate the amount of deviation between the positional deviation of the spindle and the positional deviation of the slave axis, which is tilted relative to the spindle. That is, even if the tilt angles of the spindle and the slave axis are different, the amount of deviation between the spindle and the slave axis can be calculated.
[0129] Furthermore, the predetermined coordinate system is either an inclined coordinate system or an orthogonal coordinate system. Therefore, the computing device 1 can calculate the deviation in various coordinate systems. Thus, the computing device 1 can easily perform error correction between the master axis and the slave axis.
[0130] Furthermore, the computing device 1 also includes a determination unit 115 that compares the deviation amount with a predetermined threshold to determine whether a synchronization error has occurred between the master and slave axes. Therefore, the computing device 1 does not need to perform error correction when synchronization error is permissible. As a result, the computing device 1 can reduce the control load of the numerical control device 3.
[0131] Furthermore, the computing device 1 also includes a control unit 116 that replicates the movement of the spindle to control the slave axis. Therefore, the computing device 1 is capable of synchronously controlling the spindle and the slave axis.
[0132] Furthermore, the control unit 116 uses the deviation calculated by the calculation unit 113 to correct the movement of the driven axis. That is, the calculation unit 1 can correct the synchronization error between the spindle and the driven axis. Therefore, the calculation unit 1 can control the machining machine 2 with high precision.
[0133] This disclosure has been described in detail, but it is not limited to the various embodiments described above. These embodiments can be modified, supplemented, altered, or partially deleted in various ways without departing from the spirit of this disclosure, or from the scope of patent protection and the spirit of this disclosure derived from its equivalents. Furthermore, these embodiments can also be implemented in combination.
[0134] The following are notes indicating embodiments of the present disclosure.
[0135] Postscript (1)
[0136] A computing device includes: an acquisition unit that acquires a first value representing a positional deviation of a principal axis and a second value representing a positional deviation of a slave axis disposed at a predetermined angle relative to the principal axis; a transformation unit that performs at least one of transforming the first value acquired by the acquisition unit into a third value representing a positional deviation of the principal axis in a predetermined coordinate system and transforming the second value acquired by the acquisition unit into a fourth value representing a positional deviation of the slave axis in the predetermined coordinate system; a calculation unit that calculates a deviation between the positional deviation of the principal axis and the positional deviation of the slave axis in the predetermined coordinate system based on the first value and the fourth value, the second value and the third value, or the third value and the fourth value; and an output unit that outputs the deviation calculated by the calculation unit.
[0137] Postscript (2)
[0138] According to the computing device described in Appendix (1), the predetermined coordinate system is an inclined coordinate system or an orthogonal coordinate system.
[0139] Postscript (3)
[0140] According to the computing device described in appendix (1) or (2), the computing device further includes a determination unit that compares the deviation amount with a predetermined threshold to determine whether a synchronization error has occurred between the master axis and the slave axis.
[0141] Postscript (4)
[0142] The computing device according to any one of the appendices (1) to (3) further comprises a control unit that replicates the movement of the main spindle to control the slave spindle.
[0143] Postscript (5)
[0144] According to the computing device described in Appendix (4), the control unit uses the deviation calculated by the computing unit to correct the movement of the slave shaft.
[0145] Postscript (6)
[0146] A computer-readable storage medium stores commands that cause a computer to perform the following processes: acquiring a first value representing a positional deviation of a spindle and a second value representing a positional deviation of a slave axis configured with its axis tilted at a predetermined angle relative to the spindle; performing at least one of transforming the acquired first value into a third value representing a positional deviation of the spindle in a predetermined coordinate system and transforming the acquired second value into a fourth value representing a positional deviation of the slave axis in the predetermined coordinate system; calculating a deviation between the positional deviation of the spindle and the positional deviation of the slave axis in the predetermined coordinate system based on the first value and the fourth value, the second value and the third value, or the third value and the fourth value; and outputting the calculated deviation.
[0147] Explanation of reference numerals in the attached figures
[0148] 1 Computing device
[0149] 101 Hardware Processor
[0150] 102 bus
[0151] 103 ROM
[0152] 104 RAM
[0153] 105 Non-volatile memory
[0154] 106 interface
[0155] 107 Input / Output Devices
[0156] 108 Communication devices
[0157] 111 Acquisition Department
[0158] 112 Transformer
[0159] 113 Computing Department
[0160] 114 Output Section
[0161] 115 Judgment Department
[0162] 116 Control Department
[0163] 2. Processing machine
[0164] 3. Numerical control device
[0165] 301 Hardware Processor
[0166] 302 bus
[0167] 303 ROM
[0168] 304 RAM
[0169] 305 Non-volatile memory
[0170] 306 interface
[0171] 307-axis control circuit
[0172] 308 Spindle Control Circuit
[0173] 309 PLC
[0174] 310 I / O Units
[0175] 4. Input / output devices
[0176] 5 Servo Amplifier
[0177] 6 servo motors
[0178] 7. Spindle Amplifier
[0179] 8. Spindle motor
[0180] 9. Auxiliary equipment.
Claims
1. A computing device, characterized in that, have: The acquisition unit acquires a first value representing the positional deviation of the main shaft and a second value representing the positional deviation of the slave shaft configured with a predetermined tilt angle relative to the main shaft; The transformation unit performs at least one of the following operations: transforming the first value obtained by the acquisition unit into a third value representing the position deviation of the principal axis in a predetermined coordinate system, and transforming the second value obtained by the acquisition unit into a fourth value representing the position deviation of the slave axis in the predetermined coordinate system. The calculation unit calculates the deviation between the position deviation of the principal axis and the position deviation of the slave axis in the predetermined coordinate system based on the first value and the fourth value, the second value and the third value, or the third value and the fourth value. as well as The output unit outputs the deviation calculated by the calculation unit.
2. The computing device according to claim 1, characterized in that, The predetermined coordinate system is an inclined coordinate system or an orthogonal coordinate system.
3. The computing device according to claim 1 or 2, characterized in that, The computing device further includes a determination unit that compares the deviation amount with a predetermined threshold to determine whether a synchronization error has occurred between the master axis and the slave axis.
4. The computing device according to any one of claims 1 to 3, characterized in that, The computing device also includes a control unit that replicates the movement of the main spindle to control the slave axis.
5. The computing device according to claim 4, characterized in that, The control unit uses the deviation calculated by the calculation unit to correct the movement of the slave shaft.
6. A computer-readable storage medium, characterized in that, It stores commands that cause the computer to perform the following processes: Obtain a first value representing the positional deviation of the main spindle and a second value representing the positional deviation of the slave shaft configured with a predetermined tilt angle relative to the main spindle; Perform at least one of the following: transforming the first value obtained into a third value representing the position deviation of the principal axis in the predetermined coordinate system, and transforming the second value obtained into a fourth value representing the position deviation of the slave axis in the predetermined coordinate system; Based on the first value and the fourth value, the second value and the third value, or the third value and the fourth value, calculate the deviation between the position deviation of the principal axis and the position deviation of the slave axis in the predetermined coordinate system; as well as Output the calculated deviation.
Citation Information
Patent Citations
Multi-axial synchronous control device
JP2003131712A