Position control system of a machine tool control drive based on motor and object position
11079734 · 2021-08-03
Assignee
Inventors
Cpc classification
G05B2219/34319
PHYSICS
G05B2219/50216
PHYSICS
International classification
Abstract
Respective amounts of movement of feed axes corresponding to first and second position controllers are determined, and if a value obtained by dividing a smaller amount of movement by a larger amount of movement, in the two amounts of movement, falls within a prescribed reference range, a position controller for the feed axis with the smaller amount of movement selects a detected motor position as a position feedback value and a position controller for the other feed axis selects a detected object position as a position feedback value.
Claims
1. A position control system for controlling a position of a controlled object by driving a plurality of motors provided respective for a plurality of feed axes, the system comprising: a plurality of object position detectors, each provided for each of the plurality of feed axes, each object position detector detecting a position, in a movement direction of the relevant axis, of the controlled object as a detected object position; a plurality of motor position detectors, each provided for each of the plurality of feed axes, each motor position detector detecting a position of a motor driving the relevant feed axis as a detected motor position; a position controller provided for each of the plurality of feed axes, each position controller controlling driving of the motor that drives the relevant feed axis so that a difference between a position feedback value and a command position is eliminated; and a numerical controller that outputs the command positions to the plurality of position controllers, respectively, wherein the position controller for a feed axis, a value of which falls within a prescribed reference range, the value being obtained by dividing an amount of movement of the feed axis by a larger amount in amounts of movements of the plurality of feed axes than the amount of movement of the feed axis, selects a value based on the detected motor position as the position feedback value, and the position controller for a feed axis, having the value obtained by the division falling outside the prescribed reference range, selects a value based on the detected object position as the position feedback value.
2. The position control system according to claim 1, wherein each position controller stores a difference between the detected object position and the detected motor position at a timing of switching of the position feedback value from the value based on the detected object position to the value based on the detected motor position, as an initial difference, and during selection of the value based on the detected motor position, employs a value obtained by the detected motor position and the initial difference being added up as the position feedback value.
Description
BRIEF DESCRIPTION OF DRAWINGS
(1) Embodiments of the present disclosure will be described by reference to the following figures, wherein:
(2)
(3)
(4)
(5)
(6)
(7)
(8)
EMBODIMENTS
(9) Embodiments of the present invention will be described below with reference to the drawings.
Embodiment 1
(10)
(11)
(12)
(13) If the amount of movement on the first position controller 101a side is larger (if the amount of movement of the first feed axis is larger), the position control loop selector 304 proceeds to the processing in S31, and if not (if the amount of movement of the second feed axis is larger or the first feed axis and the second feed axis are equal to each other in amount of movement), the position control loop selector 304 proceeds to the processing in S32. In S31 (where the amount of movement of the first feed axis is larger), the position control loop selector 304 determines whether or not a value obtained by dividing the amount of n-th movement of the feed axis controlled by the second position controller 101b by the amount of n-th movement of the feed axis controlled by the first position controller 101a (larger movement amount) falls within a reference range of “more than 0 but less than K.” If the value obtained by the division falls within the reference range, the position control loop selector 304 proceed to S33, and if not, the position control loop selector 304 proceed to the processing in S34. Here, the reference range can freely be determined by a party utilizing the present invention. For example, where θ is an angle formed between a vector of movement of an object and a vector of movement of the feed axis with the larger amount of movement, if a range of the angle θ in which no intended striped pattern attributable to an interpolation error of a linear encoder is generated in a machined surface is 0°<θ<5°, the reference range is more than 0 but less than K=tan 5°=0.0875. Here, in the processing in S31, the result of the calculation being 0 means that the feed axis on the position controller 101b side is in a halting state.
(14) In S32 (where the amount of movement of the second feed axis is larger or the first feed axis and the second feed axis are equal to each other in amount of movement), also, the position control loop selector 304 determines whether or not a value obtained by dividing the amount of n-th movement of the feed axis controlled by the first position controller 101a by the amount of n-th movement of the feed axis controlled by the position controller 101b (larger movement amount) falls within the reference range of “more than 0 and less than K.” If the value obtained by the division falls within the reference range, the position control loop selector 304 proceeds to the processing in S35, and if not, the position control loop selector 304 proceeds to the processing in S36.
(15) In S34 and S36, since the condition that “a value obtained by dividing an amount of movement of a feed axis by a larger movement amount falls within the reference range” is not satisfied, switching signals Ca, Cb for providing a command to employ detected object positions Pda, Pdb as position control loop inputs are fed out to the first and second position control loop switches 120a, 120b, respectively. On the other hand, in S33, since the value obtained by dividing the amount of movement of the second feed axis by the amount of movement of the first feed axis with the larger movement amount falls within the reference range, the position control loop selector 304 outputs a signal Cb for providing a command to employ the detected motor position Pmb as a position control loop input, to the signal second position controller 101b and outputs a signal Ca for providing a command to employ the detected motor position Pma as a position control loop input, to the first position controller 101a.
(16) Likewise, in S35, since the value obtained by dividing the amount of movement of the first feed axis by the amount of movement of the second feed axis with the larger movement amount falls within the reference range, the position control loop selector 304 outputs a signal Ca for providing a command to employ the detected motor position Pma as a position control loop input, to a first position controller 101a and outputs a signal Cb for providing a command to employ a detected motor position Pmb as a position control loop input, to the second position controller 101b. The processing in the position control loop selector 304 is performed in such a manner as described above.
(17) Although in the above description, only the case where one controlled object is driven by two orthogonal feed axes has been taken as an example, the technique disclosed in the present specification may be employed for the case where one controlled object is driven by more feed axes. For example, it is possible that where an orthogonal three-axis, X-, Y-, and Z-axis configuration is employed for feed axes in a machining center of a machine tool, for each of the feed axes, a value obtained by an amount of n-th movement of the feed axis by a larger movement amount is calculated, whether or not the value falls within a reference range is determined, and for a feed axis, the movement amount of which falls within the reference range, a switching signal C for selecting a detected motor position Pm as a position control loop input is output.
Embodiment 2
(18) Next, another embodiment will be described. Embodiment 2 is different from Embodiment 1 in that the processing in each position control loop switch 120 illustrated in
(19) As described above, the position control loop switch 120a described in Embodiment 2 is configured to perform processing for updating an initial difference D, which is a difference between Pda and Pma, at a timing of transition of the switching signal Ca from the position control loop selector 304 from Pda selection to Pma selection, and if the switching signal Ca is one for providing a command to select Pma, outputting “Pma.sub.n+D” as a position control loop input and in any other case, outputting Pda.sub.n. Although in Embodiment 2, the processing in the position control loop switch 120a has been described, it should be understood that processing similar to the above is also performed in the position control loop switch 120b.
(20) Embodiments of the present invention have been described taking the examples above. As a result of employment of either of the embodiments, where machining is performed with a plurality of feed axes in synchronization with each other, even if extremely gentle inclined surface machining or extremely gentle tapered surface machining is performed, a detected position of a linear encoder 103 that causes a machined striped pattern; that is, a defect in texture of a machined surface, is not employed for the feed axis with a smaller amount of movement in a plurality of feed axes, enabling reduction of striped unevenness in the machined surface. Furthermore, addition of Embodiment 2 enables reduction of striped unevenness in the machined surface while enjoying an advantage of direct detection of a current position of a controlled object, which is an original purpose of mounting of linear encoders 103.
(21) Although some modes of the present invention have been described as embodiments, the present invention is not limited only to such modes. For example, in the above description, the position control loop selector 304 are described as a component inside the numerical controller 102; however, control is performed with the first position controller 101a and the second position controller 101b in synchronization with each other, and thus, an alternation of components so that the first position controller 101a and the second position controller 101b monitor amounts of movement of each other and each position controller 101 itself determines whether or not a value obtained by dividing an amount of movement of a relevant feed axis by an amount of movement of the other feed axis falls within a reference range and selects a position control loop input (position feedback value) according to a result of the determination falls within the technique of the present invention. In other words, the position control loop selector 304 may be provided not in the numerical controller 102 but in each of the position controllers 101.
REFERENCE SIGNS LIST
(22) 101 position controller, 102 numerical controller, 103 linear encoder, 104 subtractor, 108 subtractor, 105 velocity command calculator, 106 motor position detector, 107 differentiator, 111 adder, 112 current controller, 113 motor, 114 coupling, 115 ball screw, 116 ball screw nut, 117 controlled object, 118 detection head, 119 scale, 120 position control loop switch, 301 program input device, 302 program interpreter, 303 function generator, 304 position control loop selector, 601 tapered plug part, 602 tapered portion.