Trajectory control device
10481580 ยท 2019-11-19
Assignee
Inventors
Cpc classification
G05B19/402
PHYSICS
G05B2219/33221
PHYSICS
G05B19/404
PHYSICS
G05B19/4062
PHYSICS
International classification
G05B19/4062
PHYSICS
G05B19/404
PHYSICS
B23Q15/22
PERFORMING OPERATIONS; TRANSPORTING
Abstract
A trajectory control device that controls a trajectory of a movable portion of a processing machine so as to follow a command path accurately. The trajectory control device includes an integrated-length calculation unit that calculates an integrated command length being a length integrated from a start position along a command path, a simulated servo-response filter unit that calculates an integrated response length, a reference-response calculation unit that calculates a reference response position, a response compensation unit that calculates a corrected command position on each of the plurality of axes, and a servo control unit that controls each of the plurality of axes.
Claims
1. A trajectory control device that controls a trajectory of a movable portion of a processing machine driven by a plurality of axes, the trajectory control device comprising: circuitry configured to calculate an integrated command length, being a length integrated from a start position, along a command path defined as a history of a command position with respect to each of the plurality of axes, calculate an integrated response length by applying a first filter to the integrated command length, the first filter simulating a servo response of the processing machine with respect to the plurality of axes, calculate a reference response position, the reference response position being a position on the command path, at which a length from the start position along the command path is equal to the integrated response length, and calculate a corrected command position on each of the plurality of axes by applying a second filter to the reference response position, the second filter being applied with respect to respective coordinate values in each of the plurality of axes, and the second filter having inverse characteristics of the servo response; and a servo controller that controls each of the plurality of axes by outputting a drive torque based on the corrected command position, wherein the movable portion of a processing machine is configured to process a workpiece as the servo controller controls each of the plurality of axes by outputting the drive torque based on the corrected command position.
2. The trajectory control device according to claim 1, wherein a transfer function of the servo controller is same as a transfer function of the circuitry, which is used when simulating the servo response to calculate the integrated response length.
3. The trajectory control device according to claim 2, wherein the circuitry configured by a two degree-of-freedom controller using a normative model, and a transfer function of the normative model and the transfer function of the circuitry are the same.
4. The trajectory control device according to claim 3, wherein the second filter is a filter represented by an inverse transfer function that is an inverse of the transfer function of the normative model.
5. The trajectory control device according to claim 1, wherein the servo controller is configured to input the corrected command position as well as a speed signal and a position signal of a driving part for driving the plurality of axes, the servo controller includes a normative model configured to generate a model acceleration, a model position and a model speed in response to the corrected command position, and the servo controller outputs the drive torque based on a positional difference between the model position and the position signal, a speed difference between the model speed and the speed signal and the model acceleration.
6. The trajectory control device according to claim 5, wherein the normative model includes a first model-gain multiplier configured to multiply a first subtracted value by a first model gain and output as a first multiplied value, the first subtracted value being obtained by subtracting the model position from the corrected command position, and a second model-gain multiplier configured to multiply a second subtracted value by a second model gain and output as the model acceleration, the second subtracted value being obtained by subtracting the model speed from the first multiplied value, and the servo controller includes a position configured to execute proportional control on a third subtracted value that is obtained by subtracting the position signal from the model position, and a speed controller configured to execute proportional-integral control on a fourth subtracted value that is obtained by subtracting the speed signal from the model speed.
Description
BRIEF DESCRIPTION OF DRAWINGS
(1)
(2)
(3)
(4)
(5)
(6)
(7)
(8)
(9)
(10)
(11)
(12)
(13)
(14)
(15)
(16)
(17)
(18)
(19)
(20)
(21)
(22)
DESCRIPTION OF EMBODIMENTS
(23) Embodiments of a trajectory control device according to the present invention will be explained below in detail with reference to the accompanying drawings. Note that the embodiments illustrated below are examples and the present invention is not limited to the embodiments.
First Embodiment
(24)
(25) In
(26) The drive of the X-axis motor and the Y-axis motor is controlled by a trajectory control device 1 illustrated in
(27) Command positions on the X axis and the Y axis are input to the trajectory control device 1 as a move command. In the trajectory control device 1, the command positions on the X axis and the Y axis are input to the integrated-length calculation unit 2, and an integrated command length is output. The integrated command length is input to the simulated servo-response filter unit 3. An output from the simulated servo-response filter unit 3 is input to the reference-response calculation unit 4 together with the command positions on the X axis and the Y axis, so as to calculate an X-axis reference response position and a Y-axis reference response position. The X-axis reference response position and the Y-axis reference response position are respectively input to the X-axis response compensation unit 6 and the Y-axis response compensation unit 7, and an X-axis corrected command position and a Y-axis corrected command position are respectively output. The X-axis corrected command position and the Y-axis corrected command position are respectively input to the X-axis servo control unit 8 and the Y-axis servo control unit 9, and an X-axis motor drive torque and a Y-axis motor drive torque are respectively output.
(28) The X-axis servo control unit 8 and the Y-axis servo control unit 9 have the same configuration, and a block diagram thereof is illustrated in
(29) In
(30) The first model gain K.sub.1 and the second model gain K.sub.2 are set to have the same value for the X-axis servo control unit 8 and the Y-axis servo control unit 9. Therefore, the normative models of the X-axis servo control unit 8 and the Y-axis servo control unit 9 have the same transfer function.
(31) As illustrated in
(32) The mechanical system 13 is driven by this motor torque signal, and the motor speed signal and the motor position signal are output to the servo control unit 11. In the present embodiment, as illustrated in
(33) The servo control unit 11 is a two degree-of-freedom controller using the normative model, and followability to the command and responsiveness to disturbance can be designed independently. The followability to the command is determined by the first model gain K.sub.1 and the second model gain K.sub.2, and the responsiveness to disturbance is determined by the design of the position controller 27 and the speed controller 29.
(34) A response of the servo system is controlled to follow a model position that is an output of the normative model 12, regardless of the actual characteristics of the control object. In the present embodiment, because the normative models having the same transfer function are used for the X-axis servo control system and the Y-axis servo control system, a response of the servo control system controlled by the X-axis servo control unit 8 and a response of the servo control system controlled by the Y-axis servo control unit 9 are identical. These responses can be represented by the transfer function of the normative model.
(35) The integrated-length calculation unit 2 calculates an integrated command length integrated along the command path from a start position, the command path being defined by the history of the command position on each of the movable axes. The calculation of the integrated command length is performed in the following manner. It is assumed that the command position is updated once every one constant control cycle T, and an nth (n is zero or a natural number) command position is represented by Pcn. Pcn is a coordinate having two elements of an X-axis direction component and a Y-axis direction component, and a coordinate value thereof is represented by (xcn, ycn) Further, a start position of the movement is represented by Pc0, and a coordinate thereof is represented by (xc0, yc0). An integrated command length Lcn at the nth command position is obtained by integrating a geometric norm of a vector from the start position, the vector being from an (n1)th command position Pc(n1) that is a previous value of the command position (a previous command position) to the current command position Pcn. The geometric norm is a square-root of sum of squares of respective elements of the vector. This is represented by the following equation (1).
(36)
(37)
(38) The simulated servo-response filter unit 3 activates a filter on the integrated command length Lcn, the filter simulating the servo response. The servo response is generally represented by the form of the transfer function. In the present embodiment, the simulated servo-response filter unit 3 is configured such that the servo response of the servo system controlled by the servo control unit 11 and the servo response of the simulated servo-response filter unit 3 become identical. When two degree-of-freedom control using the normative model is applied to the servo control unit 11, the servo response of the servo control unit 11 becomes a response represented by the transfer function of the normative model. As described above, the X-axis servo control unit 8 and the Y-axis servo control unit 9 have the same configuration, and use the same control gain (the first model gain K.sub.1 and the second model gain K.sub.2). Therefore, the X-axis normative model and the Y-axis normative model are configured as filters having the same configuration. In the case of the servo control unit 11 illustrated in
(39)
(40) An output of the low-pass filter can be obtained by expressing the transfer function of the equation (2) in a format of a differential equation, a difference equation, a transfer function, or the like and calculating its solution by numerical calculation. When a command form is known, an analytical solution can be obtained by integral calculation. Specifically, the analytical solution is obtained by performing inverse Laplace transformation with respect to a product of the transfer function and Laplace transformation of a given input.
(41) A time t is represented by t=nT (T is a control cycle). When it is assumed that the integrated command length at the time t is Lc(t), an output of the simulated servo-response filter unit 3 when the integrated command length Lc(t) is input, that is, an integrated response length Lr(t) is represented by the following equation (3).
[Equation 3]
L.sub.r(t)=F.sup.1[G.sub.m(s)F[L.sub.c(t)]](3)
(42) Here, F[g(t)] denotes Laplace transformation of a time function g(t), and F.sup.1[G(s)] denotes inverse Laplace transformation of a function G(s) of a region s (a complex domain).
(43)
(44) Subsequently, the reference-response calculation unit 4 calculates a reference response position, being a position on the command path, at which a length along the command path from the start position is equal to the integrated response length Lr(t). When it is assumed that the nth reference response position is Prn, a coordinate (xrn, yrn) thereof is obtained in the following manner.
(45) First, the nth integrated response length Lrn is compared with the past integrated command lengths Lc1 to Lcn including the nth integrated command length Lcn, to determine on what number of segments of the command path a response reference point is. That is, k (k is a natural number) is obtained to have a value at which Lrn is equal to or larger than Lc(k1) and smaller than Lck. Because the Lck monotonously increases with an increase of k, k can be uniquely obtained. Subsequently, a segment from a start point to an end point thereof, to which the reference response position belongs, is linearly interpolated by using a ratio defined by the integrated response length Lrn, and then a coordinate of the reference response position is determined. The coordinate (xrn, yrn) of the reference response position is obtained by the following equation (4).
(46)
(47) For the case of n=1 to 3, a relation among the command path, the integrated response length Lrn, and the reference response position Prn is schematically illustrated in
(48) Subsequently, the X-axis response compensation unit 6 and the Y-axis response compensation unit 7 respectively activate the filter having inverse characteristics of the servo response with respect to the X-axis component and the Y-axis component of the reference response position Prn. The servo response considered here is assumed to be the same as that of the servo control system controlled by the servo control unit 11. Therefore, a filter having a response with inverse characteristics of the normative model 12 is activated.
(49)
(50) The transfer function between an input and an output of the response compensation unit 40 is represented by the following equation (5).
(51)
(52) As indicated by the equation (5), the equation (5) represents an inverse transfer function of the transfer function of the normative model in the equation (2), and the response compensation unit 40 has inverse characteristics of the normative model.
(53) In
(54) As described in the present embodiment, by executing the servo control after activating the response compensation unit 40 at the reference response position, the response positions on the respective movable axes acquired as a result of the servo control are caused to follow the reference response position. Because the reference response position is on the command path, the response positions on the respective movable axes are controlled to follow the reference response position on the command path without any error. Further, the corrected command position, which is an output of the response compensation unit 40, becomes the same position as the original position, if the moving direction does not change (if the command path is linear). On the other hand, if the moving direction changes (if the command path is curved), a position different from the original command position is output by the action of the response compensation unit 40, which is for the sake of suppressing occurrence of trajectory errors.
Example 1
(55) Effects of the present embodiment are described by using an Example. As the command path, a command path is used where a radius of a circular arc portion has a corner R shape of 1 millimeter (mm) (that is, a shape configured by a circular arc with a radius of 1 millimeter and two linear portions putting the circular arc therebetween). A trajectory of the command position, that is, the command path used in the present Example and a trajectory of the response position when correction of the command position is not performed are illustrated in
(56) In a graph of
(57) Subsequently, simulation results of a trajectory of the corrected command position and a trajectory of the corrected response position when correction of the command position is performed are illustrated in
(58)
(59) From
(60) From
(61) As described above, according to the present embodiment, if the normal direction acceleration of the move command changes transitionally, or even if the moving direction of the move command changes from moment to moment, the reference response position and the corrected command position are obtained based on the integrated response length. Accordingly, the trajectory of the movable portion can be controlled so that the corrected response position accurately follows the commanded path.
(62) Accordingly, calculation of the corrected command position can be performed stably.
(63) Because the corrected command position can be calculated without obtaining the servo response of each axis, a calculation amount can be reduced.
(64) Furthermore, the corrected command position can be calculated based on only the past history of the command position, without look-ahead of the move command. Accordingly, arithmetic processing is simplified, and such a case can be avoided that the machining time becomes long due to look-ahead.
(65) Further, by using the two degree-of-freedom controller using the normative model for the servo control unit, the response of the servo control unit can be matched with the response of the normative model, regardless of the characteristics of the control object.
(66) Furthermore, by using a filter represented by the inverse transfer function of the transfer function of the normative model for the response compensation unit, the actual position on each movable axis can accurately follow the reference response position which is a position along the command path. Accordingly, the trajectory can be controlled so that a trajectory error from the command path does not occur.
(67) As described above, according to the present embodiment, when trajectory control is to be executed in a two-dimensional plane, occurrence of trajectory errors can be suppressed, thereby enabling to perform machining highly accurately.
Second Embodiment
(68)
(69) In
(70) The machining head 74, the X-axis movable portion 71, and the Y-axis movable portion 72 in
(71) The X-axis motor, the Y-axis motor, and the Z-axis motor is driven and controlled by the trajectory control device 101 illustrated in
(72) The present embodiment is different from the first embodiment in that the number of movable axes to be controlled is three, and the Z axis is newly added. Other configurations (the configurations of the X axis and the Y axis) are the same as those in the first embodiment. Further, a Z-axis response compensation unit 108 and a Z-axis servo control unit 111 have the same configuration as those of the X axis and the Y axis.
(73) In the following explanations, different points from the first embodiment are described. If it is assumed that a coordinate of the nth command position Pcn is (xcn, ycn, zcn) by using the coordinate values on the X axis, the Y axis, and the Z axis, the integrated command length Lcn in an integrated-length calculation unit 102 can be obtained by the following equation (6).
(74)
(75) The coordinate of the reference response position (xrn, yrn, zrn) in a reference-response calculation unit 104 can be obtained by the following equation (7).
(76)
(77) As described above, other configurations in the present embodiment are the same as those in the first embodiment.
(78) An X-axis response compensation unit 106, a Y-axis response compensation unit 107, and a Z-axis response compensation unit 108 are configured in the same manner as the response compensation unit 40 illustrated in
(79) Further, a Z-axis servo control unit 111 has the same configuration as those of an X-axis servo control unit 109 and a Y-axis servo control unit 110, and a block diagram thereof is as illustrated in
(80) Outputs of the X-axis response compensation unit 106, the Y-axis response compensation unit 107, and the Z-axis response compensation unit 108 are respectively input to the X-axis servo control unit 109, the Y-axis servo control unit 110, and the Z-axis servo control unit 111, as the corrected command positions on the X axis, the Y axis, and the Z axis. The X-axis servo control unit 109, the Y-axis servo control unit 110, and the Z-axis servo control unit 111 respectively execute the servo control in the same manner as described in the first embodiment, and calculate and output the motor drive torque of the X axis, the Y axis, and the Z axis, thereby driving the X-axis motor, the Y-axis motor, and the Z-axis motor, respectively.
Example 2
(81) Effects of the present embodiment are described by using an Example. As the command path, when being projected to an XY plane, a command path having a spiral shape with a circular arc of a radius of 5 millimeters is illustrated. It is assumed that while the X axis and the Y axis are performing one circular motion in the XY plane, the command path moves 10 millimeters in the Z direction.
(82) A trajectory of the command position, that is, the command path used in the present Example, and a trajectory of the response position when correction of the command position is not performed are illustrated in
(83) The respective graphs in
(84) The first model gain (control gain) K.sub.1 in the normative models of the servo control units of the X axis, the Y axis, and the Z axis is respectively set to 40 rad/s, and the second model gain (control gain) K.sub.2 is set to four times the first model gain (control gain) K.sub.1. The control cycle T is set to 2 milliseconds.
(85) Simulation results of a trajectory at the corrected command position and a trajectory at the corrected response position when correction of the command position is performed are illustrated in
(86) When correction of the command position is performed, the trajectory of the original command position approximately matches the trajectory of the response position, and to distinguish the both cases, dots are added to a waveform of the corrected response position in
(87)
(88) From
(89) It is also understood from
(90) As described above, according to the present embodiment, even when the trajectory control is performed in a three-dimensional space such as in a three-axis vertical machining center, identical effects to those of the first embodiment can be acquired. Even in this case, highly accurate machining can be performed, while suppressing occurrence of trajectory errors.
Third Embodiment
(91)
(92) In
(93) In the present embodiment, a rotary table having a B axis rotating around the Y axis, and a C axis rotating around the Z axis is further provided, and by placing a workpiece on the rotary table, a tool direction (a tool posture) with respect to the workpiece can be controlled. A C-axis movable portion 85 functions as a rotary table, and is driven by a C-axis motor (not illustrated). A C-axis drive mechanism including the C-axis movable portion 85 and the C-axis motor is attached to a B-axis movable portion 84 and is driven by a B-axis motor (not illustrated). A B-axis drive mechanism including the B-axis movable portion 84 and the B-axis motor is attached to the processing machine body. It is assumed that a central axis of rotation of the B axis is parallel to the Y axis, and when a rotation angle of the B axis is 0, a central axis of rotation of the C axis is parallel to the Z axis.
(94) The motors of the X axis, the Y axis, the Z axis, the B axis, and the C axis is driven and controlled by the trajectory control device 201 illustrated in
(95) The different points from the second embodiment are described below. When it is assumed that the coordinate of the nth command position Pcn is (xcn, ycn, zcn, bcn, ccn) by using coordinate values on respective axes of the X axis, the Y axis, the Z axis, the B axis, and the C axis, the integrated command length Lcn in an integrated-length calculation unit 202 can be obtained by the following equation (8).
(96)
(97) Subsequently, the coordinate of the reference response position (xrn, yrn, zrn, brn, crn) in a reference-response calculation unit 204 can be obtained by the following equation (9).
(98)
(99) As described above, other configurations of the present embodiment are the same as those in the second embodiment. An X-axis response compensation unit 206, a Y-axis response compensation unit 207, a Z-axis response compensation unit 208, a B-axis response compensation unit 209, and a C-axis response compensation unit 210 are configured in the same manner as the response compensation unit 40 illustrated in
(100) Furthermore, a B-axis servo control unit 214 and a C-axis servo control unit 215 have the same configuration as those of an X-axis servo control unit 211, a Y-axis servo control unit 212, and a Z-axis servo control unit 213, and a block diagram thereof is as illustrated in
(101) Outputs of the X-axis response compensation unit 206, the Y-axis response compensation unit 207, the Z-axis response compensation unit 208, the B-axis response compensation unit 209, and the C-axis response compensation unit 210 are input to the X-axis servo control unit 211, the Y-axis servo control unit 212, the Z-axis servo control unit 213, the B-axis servo control unit 214, and the C-axis servo control unit 215, respectively, as X-axis, Y-axis, Z-axis, B-axis, and C-axis corrected command positions. The X-axis servo control unit 211, the Y-axis servo control unit 212, the Z-axis servo control unit 213, the B-axis servo control unit 214, and the C-axis servo control unit 215 execute the servo control in the same manner as in the first embodiment to calculate and output the motor drive torque of the X axis, the Y axis, the Z axis, the B axis, and the C axis, thereby driving the X-axis motor, the Y-axis motor, the Z-axis motor, the B-axis motor, and the C-axis motor, respectively.
Example 3
(102) Effects of the present embodiment are described by using an Example. As the command path, such a path is assumed that a path of a tool tip as viewed from the workpiece is a straight line, and a tool posture changes in the meantime. A coordinate system, in which the axial directions of the X axis, the Y axis, and the Z axis of the machine are respectively the X-, Y-, and Z-coordinate axis directions is defined as a machine coordinate system. A coordinate system that operates simultaneously with rotation of the table, in which when the B axis and the C axis are both 0 degree, the coordinate axis directions thereof match the machine coordinate system, is defined as a table coordinate system.
(103) As an example, it is assumed that a coordinate value at the rotation center of a B-axis rotation table is (100 mm, 200 mm, 300 mm) in the machine coordinate system, and a coordinate at the rotation center of a C-axis rotation table is (100 mm, 200 mm, 400 mm) in the machine coordinate system. A position of the rotation center of the C-axis rotation table is set as an origin of the table coordinate system. In the table coordinate system, it is assumed that a coordinate value at the tool tip position moves from (0 mm, 200 mm, 0 mm) to (200 mm, 0 mm, 0 mm), and the tool posture during this movement changes from a direction of (0, 1, 1) to a direction of (1, 0, 1) as a vector expression.
(104) To realize such a path of the tool tip, the respective axes of the machine need to move in a complicated path. Accordingly, the tool tip position and a tool posture vector in the table coordinate system are converted to a tool position (coordinate values at a position on the respective X, Y, and Z axes) and a rotation axis angle (coordinate values on the respective B and C rotation axes) in the machine coordinate system for each control cycle, and the coordinate values on the respective X, Y, Z, B, and C axes acquired by conversion are used as the command positions on the respective axes. The conversion can be uniquely performed by using a geometrical relation.
(105) Time changes of the command position used in the present Example and the response position when correction of the command position is not performed are illustrated in
(106) Subsequently, simulation results of a time change of the corrected command position and a time change of the corrected response position when correction of the command position is performed are illustrated in
(107) From
(108) In the time change of the position on each movable axis, evaluation of the trajectory error cannot be performed. Therefore, the response position and the corrected command position are converted from the machine coordinate system to the table coordinate system, thereby performing the evaluation.
(109) A trajectory of the command position and a trajectory of the response position when correction of the command position is not performed, in the table coordinate system are illustrated in
(110) Subsequently, a trajectory of the corrected command position and a trajectory of the corrected response position, when correction of the command position is performed, in the table coordinate system are illustrated in
(111)
(112) From
(113) From
(114) Furthermore, as illustrated in
(115) As described above, according to the present embodiment, even if the trajectory control of the tool position and the posture is executed as in the five-axis processing machine, identical effects to those of the first embodiment can be acquired. Even in this case, highly accurate machining can be performed, while suppressing occurrence of trajectory errors.
(116) In the present embodiment, a case where there are two axes of rotation on the table side has been described. However, the present invention is also applicable to a case where there are two axes of rotation on the tool side, or a case where the tool side and the table side respectively have one axis of rotation. Identical effects can be acquired by appropriately selecting and applying a conversion formula between a coordinate value in the mechanical coordinate system and a coordinate value in the table coordinate system.
(117) Further, in the present embodiment, the two axes of rotation are the B axis that rotates around the Y axis and the C axis that rotates around the Z axis. However, an axis that rotates around another axis in other directions can be used. Identical effects can be acquired by applying an appropriate value to the conversion formula between the coordinate value in the mechanical coordinate system and the coordinate value in the table coordinate system.
(118) In the first to third embodiments described above, cases where the number of movable axes is two, three, and five are described. However, identical effects can be acquired even if the number of movable axes is four or six or more. In these cases, it is sufficient if the integrated-length calculation unit calculates the integrated length corresponding to the number of movable axes, and the response compensation units and the servo control units are installed for the number corresponding to the number of movable axes.
REFERENCE SIGNS LIST
(119) 1, 101, 201 trajectory control device, 2, 102, 202 integrated-length calculation unit, 3, 103, 203 simulated servo-response filter unit, 4, 104, 204 reference-response calculation unit, 6, 106, 206 X-axis response compensation unit, 7, 107, 207 Y-axis response compensation unit, 8, 109, 211 X-axis servo control unit, 9, 110, 212 Y-axis servo control unit, 11 servo control unit, 12 normative model, 40 response compensation unit, 61, 71, 81 X-axis movable portion, 62, 72, 82 Y-axis movable portion, 73, 83 Z-axis movable portion, 84 B-axis movable portion, 85 C-axis movable portion, 108, 208 Z-axis response compensation unit, 111 Z-axis servo control unit, 209 B-axis response compensation unit, 210 C-axis response compensation unit, 213 Z-axis servo control unit, 214 B-axis servo control unit, 215 C-axis servo control unit.