The present invention relates to a phase detection device detecting phases of a sine wave signal and a cosine wave signal having phases in accordance with the position of a measured object and a position detection device having the phase detection device.
Various position detection devices detecting the position of the measured object by generating a sine wave (sin θ) signal having a phase (e) in accordance with the position of the measured object and a cosine wave (cos θ) signal (=another sine wave signal deviated in phase by π/2 relative to the sine wave signal) and detecting phases of those signals are known. For example, a position detection device having an encoder and a position detection device having an amplitude modulation type resolver are known.
Patent Literature 1 discloses the art of calculating a tangent (y=tan θ) from a sine wave signal and a cosine wave signal output from an amplitude modulation type resolver and calculating an arc tangent (θ=tan−1y) of that tangent to thereby calculate the phase θ.
Patent Document 1: Japanese Patent Publication (A) No. 9-257410
For the calculation of the arctangent, for example, a method of holding data linking the tangent and the arctangent to thereby specify the arctangent corresponding to a tangent may be considered. In this case, however, a large volume of data must be held. Further, calculation of an arctangent by an operation equation can be considered as well. In this case, however, when trying to calculate it with a good precision, the amount of computation become enormous and the circuit etc. are complicated as well.
Accordingly, preferably a phase detection device capable of detecting a phase by a simple configuration and a position detection device having the phase detection device are provided.
A phase detection device of the present invention is a phase detection device detecting a phase in accordance with a position of a measured object based on a sine wave signal and a cosine wave signal having the phase, having a sine wave sign judgment part judging a sign of the sine wave signal, a cosine wave sign judgment part judging a sign of the cosine wave signal, a magnitude judgment part judging a magnitude relationship between an absolute value of the sine wave signal and an absolute value of the cosine wave signal, a section specifying part configured to specify which of eight sections obtained by dividing a range from 0 to 2π for each π/4 from 0 contains the phase based on the judgment results of the sine wave sign judgment part, the cosine wave sign judgment part, and the magnitude judgment part, an arctangent calculation part configured to adjust signs of the sine wave signal and the cosine wave signal and make one of the cosine wave signal and the cosine wave signal a sine wave and make the other a cosine wave so that a combination of the sign of the sine wave, the sign of the cosine wave, and the magnitude relationship between the absolute value of the sine wave and the absolute value of the cosine wave becomes constant regardless of which of the eight sections contains the phase, and calculate the arctangent of the tangent based on the sine wave and cosine wave according to a procedure common to the eight sections, and a phase calculation part configured to calculate the phase based on the range of the section specified by the section specifying part and the arctangent calculated by the arctangent calculation part.
Preferably, the arctangent calculation part is configured to calculate a value obtained by dividing a smaller value between the absolute value of the sine wave signal and the absolute value of the cosine wave signal by a larger value as the tangent or arctangent.
Preferably, the arctangent calculation part holds data linking the tangent and a correction value comprised by a difference between the tangent and the arctangent, specifies the corresponding correction value from among the data using the value obtained by dividing the smaller value between the absolute value of the sine wave signal and the absolute value of the cosine wave signal by the larger value as the tangent, and adds that specified correction value to the divided value to calculate the arctangent.
Preferably, the device has a counter counting a number of cycles of the sine wave signal and the cosine wave signal by incrementing the count when the phase sequentially calculated by the phase calculation part exceeds a predetermined reference phase in one direction and decrementing the count when the phase exceeds the reference phase in the other direction and an output part outputting the number of cycles counted by the counter and the phase calculated by the phase calculation part in accordance with an input of a predetermined read signal.
Preferably, the device has a sine wave A/D converter generating a digital type sine wave signal having n2-2 bits of information showing a signal level of the sine wave signal and a cosine wave A/D converter generating a digital type cosine wave signal having n2-2 bits of information showing the signal level of the cosine wave signal, wherein the arctangent calculation part is configured to generate a digital type phase signal having n2 bits of information showing the phase based on the digital type sine wave signal and the digital type cosine wave signal, the counter is configured to generate a digital type cycle number signal having n1 bits of information showing the number of cycles based on the phase signal, and the output part is configured to simultaneously output, to n1+n2 lines, digital type detection signals of n1+n2 bits of information comprised of the n1 bits of information showing the number of cycles and the n2 bits of information showing the phase.
A position detection device of the present invention has a detector outputting a sine wave signal and a cosine wave signal having a phase in accordance with a position of a measured object, a phase detection device detecting the phase based on the sine wave signal and the cosine wave signal output from the detector, and a position calculation device calculating the position of the measured object based on the phase detected by the phase detection device, wherein the phase detection device has a sine wave sign judgment part judging a sign of the sine wave signal, a cosine wave sign judgment part judging a sign of the cosine wave signal, a magnitude judgment part judging a magnitude relationship between an absolute value of the sine wave signal and an absolute value of the cosine wave signal, a section specifying part configured to specify which of eight sections obtained by dividing a range from 0 to 2π for each π/4 from 0 contains the phase based on the judgment results of the sine wave sign judgment part, the cosine wave sign judgment part, and the magnitude judgment part, an arctangent calculation part configured to adjust signs of the sine wave signal and the cosine wave signal and make one of the cosine wave signal and the cosine wave signal a sine wave and make the other a cosine wave so that a combination of the sign of the sine wave, the sign of the cosine wave, and the magnitude relationship between the absolute value of the sine wave and the absolute value of the cosine wave becomes constant regardless of which of the eight sections contains the phase, and calculate the arctangent of the tangent based on the sine wave and cosine wave according to a procedure common to the eight sections, and a phase calculation part configured to calculate the phase based on the range of the section specified by the section specifying part and the arctangent calculated by the arctangent calculation part.
According to the present invention, a phase can be detected by a simple configuration.
1 . . . phase detection device, 21S . . . sine wave sign judgment part, 21C . . . cosine wave sign judgment part, 23 . . . magnitude judgment part, 27 . . . section specifying part, 37 . . . arctangent calculation part, 35 . . . phase calculation part, Obj . . . measured object, Ssa . . . sine wave signal, and Sca . . . cosine wave signal.
The position detection device 1 has an encoder 3 as the detector outputting a sine wave signal Ssa and a cosine wave signal Sca having a phase θ in accordance with the position x of the measured object Obj, a phase detection device 5 calculating the phase θ of the sine wave signal Ssa and the cosine wave signal Sca output from the encoder 3, and a CPU 7 reading the phase calculated by the phase detection device 5.
The encoder 3 is configured by for example a so-called linear encoder. The encoder 3 has a detected part 9 and a detection part 11 capable of relative movement with respect to the detected part 9. The detection part 11 outputs the sine wave signal Ssa and the cosine wave signal Sca having a phase θ in accordance with the position relative to the detected part 9. One of the detected part 9 and detection part 11 is fixed with respect to the measured object Obj.
When the encoder 3 is configured by, for example, a magnetic type linear encoder, in the detected part 9, an N pole and an S pole are alternately aligned along the X-axis direction. The detection part 11 includes, for example, an MR element or a Hall IC, detects a magnetic field of the detected part 9, and outputs an electric signal. When the position in the X-axis direction of the detection part 11 relative to the detected part 9 changes, the position relationship with respect to the N pole and the S pole changes, and the signal level of the electric signal output by the detection part 11 changes as well. Due to this, a sine wave signal Ssa and the cosine wave signal Sca having the phase θ in accordance with the position are output.
Further, for example, when it is configured by an optical type linear encoder, the lattice is arranged along the X-axis direction in the detected part 9. The detection part 11 includes a detection part side scale in which the lattice is arranged along the X-axis direction and a light receiving element receiving the light transmitted through the lattice of the detected part 9 and lattice of the detection part side scale. When the position in the X-axis direction of the detection part 11 relative to the detected part 9 changes, the light receiving amount of the light receiving element changes, and the signal level of the electric signal output by the detection part 11 changes as well. Due to this, a sine wave signal Ssa and cosine wave signal Sca having a phase θ in accordance with the position are output.
The sine wave signal Ssa is an analog signal where the signal level is represented by V0 x sin θ or −V0 x sin θ when the voltage which becomes the reference (not limited to so-called reference potential) is assumed to be 0. Below, an explanation will be given assuming that the sine wave signal Ssa is represented by V0 x sin θ.
The cosine wave signal Sca is an analog signal where the signal level is represented by V0 x cos θ or −V0 x cos θ when the voltage which becomes the reference (not limited to so-called reference potential) is assumed to be 0 and. Below, an explanation will be given assuming that the cosine wave signal Sca is represented by −V0 x cos θ.
The phase θ is, for example, proportional to the position x. The V0 is, for example, a constant voltage with respect to the voltage which becomes the reference in a case where the detector is configured by an encoder as in the present embodiment. Further, for example, when the detector is configured by an amplitude modulation type resolver, it fluctuates by a cycle of an excitation signal input to the resolver.
In the present application, the signs and absolute values of the sine wave sin θ (or −sin θ) and cosine wave −cos θ (or cos θ) indicated by the sine wave signal Ssa and the cosine wave signal Sca are sometimes abbreviated as the signs and absolute values of the sine wave signal Ssa and the cosine wave signal Sca. Further, an explanation will be sometimes given of the sine wave signal Ssa and the cosine wave signal Sca while appropriately omitting V0.
Note that, the cosine wave signal Sca is a signal deviated from the sine wave signal Ssa by exactly π/2 in phase, therefore it can be considered that the encoder 3 outputs two sine wave signals which are deviated in phase by exactly π/2 or can be considered that the encoder 3 outputs two cosine wave signals deviated in phase by exactly π/2.
The phase detection device 5 has a sine wave A/D converter 13S converting the sine wave signal Ssa from the encoder 3 from analog to digital and outputting a digital type sine wave signal Ssd and a cosine wave A/D converter 13C converting the cosine wave signal Sca from the encoder 3 from analog to digital and outputting a digital type cosine wave signal Scd (hereinafter, these will be sometimes simply referred to as the “A/D converter 13” and not differentiated).
Note that, below, the analog type sine wave signal Ssa and the digital type sine wave signal Ssd will be sometimes simply referred to as the “sine wave signal Ss” and not differentiated, and the analog type cosine wave signal Sca and the digital type cosine wave signal Scd will be sometimes simply referred to as the “cosine wave signal Sc” and not differentiated
The digital type sine wave signal Ssd and cosine wave signal Scd contain, for example, information concerning signal levels of the analog type sine wave signal Ssa and cosine wave signal Sca as information of a predetermined number of bits (for example, 8 bits). The digital type sine wave signal Ssd and cosine wave signal Scd are, for example, binary digital signals. Signal levels of the sine wave signal Ssd and cosine wave signal Scd are represented by binary numbers. Note that, the digital type sine wave signal Ssd and cosine wave signal Scd may be multi-value digital signals as well.
Note that, the signal levels (voltages) of the analog type sine wave signal Ssa and cosine wave signal Sca and numerical values indicated by the information contained by the digital type sine wave signal Ssd and cosine wave signal Scd may be appropriately linked. For example, a range from −10 to 10V of the signal level of the analog signal is linked with a range of 8 bits of binary numbers (−28-1 to 28-1−1) indicated by digital signals.
The sine wave signal Ss and the cosine wave signal Sc are frequency functions. Therefore, even when phases are equal, the numbers of cycles are sometimes different. Namely, where the number of cycles is n, V0 x sin θ=V0 x sin(θ+2πn) in the sine wave signal Ssa, and −V0 x cos θ=−V0 x cos(θ+2πn) in the cosine wave signal Sca. Note that, θ+2πn is the phase as well. Then, even when phases are equal, if the number of cycles n differs, the position x differs.
Therefore, the phase detection device 5 has an in-cycle phase calculation part 15 calculating the phase θ in the cycle (hereinafter, phase θ: determined to 0 to 2π), a cycle number calculation part 17 calculating the number of cycles n, and an output part 19 outputting the phase θ calculated by the in-cycle phase calculation part 15 and the number of cycles n calculated by the cycle number calculation part 17.
The in-cycle phase calculation part 15 calculates the phase θ based on the sine wave signal Ssd and the cosine wave signal Scd from the A/D converter 13 and outputs a digital type phase signal Sθ containing the information of that phase θ. The cycle number calculation part 17 calculates the number of cycles n based on the phase signal Sθ and outputs a digital type cycle number signal Sn containing the information of that number of cycles n. The output part 19 outputs a detection signal Sdt containing the information contained by the phase signal Sθ and the cycle number signal Sn based on these signals.
The CPU 7 outputs a predetermined read signal Sr to the output part 19 at an appropriate timing and requests the output of the detection signal Sdt. The CPU 7 calculates the position x of the measured object Obj based on the phase θ and number of cycles n contained in the detection signal Sdt. Then, it performs position control of the measured object Obj in the X-axis direction based on the position x, displays the position x on a not shown monitor, or executes other various processing in accordance with the position x. Note that, it may output the detection signal Sdt from the output part 19 to the CPU 7 at an appropriate timing without outputting the read signal Sr from the CPU 7 as well.
Note that, when the position detection device 1 is included in a machine tool or other industrial machine, for example, the phase detection device 5 is included in an interpolator, and the CPU 7 is included in a controller. Note that the phase detection device 5 of the present embodiment calculates the phase by calculating the arctangent as will be explained later, therefore can be reduced in size in comparison with a phase detection device that generates interpolation pulses by using a plurality of resistors and comparators, counts those interpolation pulses, and detects the phase. Also, it is also possible to include the phase detection device 5 in the controller to eliminate the interpolator.
Eight sections obtained by dividing the range from 0 to 2π for each π/4 from 0 will be defined as a first section P1 to an eighth section P8 (hereinafter, these will be sometimes simply referred to as the “section P” and not differentiated). The first section P1 to the eighth section P8 differ from each other in the combination of the sign of the sine wave, the sign of the cosine wave, and the magnitude relationship between the absolute value of the sine wave and the absolute value of the cosine wave (which is larger).
The first column of the table shown in
In
Accordingly, in one section P (θg to θg+π/4), when the signs of the sine wave and the cosine wave are adjusted and the sine wave and the cosine wave are switched with each other according to need so that the sign of the sine wave, the sign of the cosine wave, and the magnitude relationship between the absolute value of the sine wave and the absolute value of the cosine wave coincide regardless of which of the sections P be one section P described before, by the procedure common to the eight sections, an in-section phase θ′ (0 to π/4) in one section P described before can be calculated from the sine wave sin θ and the cosine wave −cos θ in one section P described before. Then, if the calculated in-section phase θ′ (0 to π/4) is converted to a phase θ (θg to θg+π/4) by considering the position etc. of one section P described before, the phase θ is calculated.
Specifically, for example, consider to make the sign of the sine wave, the sign of the cosine wave, and the magnitude relationship between the absolute value of the sine wave and the absolute value of the cosine wave match with the sine wave sin θ′ and the cosine wave cos θ′ (here, not −cos θ) within the range from 0 to π/4. When performing this, in odd number sections (first section: θg=0, third section: θg=π/2, fifth section: θg=n, and seventh section: θg=πx3/2), if the in-section phase θ′ (0 to π/4) is calculated by a procedure equivalent to the calculation of the phase θ′ based on the sine wave sin θ′ and the cosine wave cos θ′ within the range from 0 to π/4, and the in-section phase θ′ is added to the phase θg (offset phase θs) on a border on the left side in each section, the phase θ is calculated.
Further, in even number sections (second section: θg=π/4, fourth section: θg=πx3/4, sixth section: θg=πx5/4, and eighth section: θg=πx7/4), if the in-section phase θ′ (0 to π/4) is calculated by a procedure equivalent to the calculation of the phase θ′ based on the sine wave sin θ′ and the cosine wave cos θ′ within the range from 0 to π/4, and the in-section phase θ′ is subtracted from the phase θg+π/4 (offset phase θs) on a border on the right side in each section, the phase θ is calculated.
Note that, when the phase θ is the phase on the border, the phase θ may be calculated as the phase of any of the sections P on the right side and the left side of this phase θ as well.
In the rightmost column (sixth column) of the table shown in
In the first section P1 to the eighth section P8, if a larger value between the absolute value of the sine wave sin θ and the absolute value of the cosine wave −cos θ is determined as the cosine wave, and the smaller value is determined as the sine wave, with respect to the sine wave sin θ′ and the cosine wave cos θ′ within the range from 0 to π/4, the sign of the sine wave, the sign of the cosine wave, and the magnitude relationship between the absolute value of the sine wave and the absolute value of the cosine wave coincide. Then, by a procedure calculating the tangent based on the sine wave sin θ′ and the cosine wave cos θ′ within the range from 0 to π/4 and calculating the arctangent of the tangent, the in-section phase θ′ is calculated.
In the range where θ′<<1, θ′32 tan θ′ stands. On the other hand, the range from 0 to π/4 is the range of 0<tan θ′<1. Accordingly, approximately, the tangent tan θ′=sin θ′/cos θ′ calculated from the sine wave and the cosine wave can be defined as the phase θ′.
However, with this method, there is error. For example, assuming an approximate arctangent θ0 is the phase θ′ to the tangent y0, an error of exactly a difference Δθ between the arctangent θ0 and an actual arctangent θ1 arises. Therefore, data linking the approximate arctangent θ0 (=tan θ′=y=tangent) and the difference Δθ between the approximate arctangent θ0 and the arctangent θ′ (=tan−1y) and holding the same is prepared, a difference (correction amount) Δθ corresponding to the calculated approximate arctangent θ0 is specified, and the correction amount Δθ is added to the approximate arctangent θ0.
The sine wave signal Ssd output from the sine wave A/D converter 13S is input to the sine wave sign judgment part 21S. Further, the cosine wave signal Scd output from the cosine wave A/D converter 13C is input to the cosine wave sign judgment part 21C. Note that, below, the sine wave sign judgment part 21S and the cosine wave sign judgment part 21C sometimes will not be differentiated and will be simply referred to as the “sign judgment part 21”.
The sign judgment part 21 differentiates the signs of the numerical values A and B indicated by information of a predetermined number of bits (for example, 8 bits) contained in the digital type sine wave signal Ssd and cosine wave signal Scd. Note that, the numerical values A and B show signal levels of the analog type sine wave signal Ssa and cosine wave signal Sca, and the differentiation of signs of the numerical values A and B is equivalent to the differentiation of signs of signal levels of the analog type sine wave signal Ssa and cosine wave signal Sca. Then, the sign judgment part 21 outputs signals in accordance with the judgment results. The signals output from the sign judgment part 21 are for example binary digital signals. As shown in
Further, the sine wave signal Ssd output from the sine wave A/D converter 13S is input to the sine wave absolute value calculation part 23S, and the cosine wave signal Scd output from the cosine wave A/D converter 13C is input to the cosine wave absolute value calculation part 23C. Note that, below, the sine wave absolute value calculation part 23S and cosine wave absolute value calculation part 23C will be sometimes simply referred to as the “absolute value calculation part 23” without differentiation.
The absolute value calculation part 23 calculates absolute values |A| and |B| of the numerical values A and B indicated by the information contained in the sine wave signal Ssd and the cosine wave signal Scd. Note that, this operation is equivalent to the calculation of absolute values of signal levels of the analog type sine wave signal Ssa and cosine wave signal Sca. Then, the absolute value calculation part 23 outputs signals in accordance with the calculation results. The signals output from the absolute value calculation part 23 are, for example, binary digital signals containing the absolute values |A| and |B| as information of predetermined bits of numerical values (for example, 8 bits).
The magnitude judgment part 25 differentiates the magnitude relationship of the absolute values |A| and |B| calculated by the absolute value calculation part 23. Note that, this operation is equivalent to the differentiation of the magnitude relationship of the absolute values of signal levels of the analog type sine wave signal Ssa and cosine wave signal Sca. Then, the magnitude judgment part 25 outputs signals in accordance with the calculation results. The signals output from the magnitude judgment part 25 are, for example, binary digital signals. As shown in
The section specifying part 27 specifies which of the first section P1 to the eighth section P8 contains the phase θ of the sine wave signal Ss and the cosine wave signal Sc based on the judgment results of the sign judgment part 21 and the magnitude judgment part 25, that is, the sign of the sine wave signal Ss, the sign of the cosine wave signal Sc, and the magnitude relationship between the absolute value of the sine wave signal Ss and the absolute value of the cosine wave signal Sc. Then, it outputs signals in accordance with the specifying results. The signals output from the section specifying part 27 are, for example, binary digital signals containing information of numerical values of 0 to 7 (numerical values of 3 bits) linked with the first section P1 to the eighth section P8.
An substitution part 29 performs a predetermined substitution operation in order to handle one of the sine wave signal Ss and the cosine wave signal Sc as the sine wave sin θ′ within the range from 0 to π/4 and handle the other as the cosine wave cos θ′ within the range from 0 to π/4 based on the judgment result of the magnitude judgment part 25, that is, the magnitude relationship between the absolute value of the sine wave signal Ss and the absolute value of the cosine wave signal Sc. For example, C=|B| and D=|A| are determined when the absolute value |A| is the absolute value |B| or more, while C=|A| and D=|B| are determined when the former is less than the latter. C is the value handled as the sine wave sin θ′, and D is the value handled as the cosine wave cos θ′.
A division part 31 performs computation of E=C/D. This is equivalent to the computation of tangent (tan θ′)=sine wave (sin θ′)/cosine wave (cos θ′). Namely, E corresponds to the tangent tan θ′, and the division part 31 calculates the tangent. Note that, as explained above, approximation of θ′=tan θ′ can be carried out, therefore it is also possible to consider that the division part 31 calculates an approximate arctangent. The numerical value E is calculated as, for example, a numerical value of 7 bits, and the range from 0 to π/4 of the in-section phase θ′ is assigned to 0 to 27. The division part 31 outputs the information of the numerical value E by binary digital signals.
The correction part 33 corrects the numerical value E corresponding to the approximate arctangent calculated by the division part 31 based on the correction data D1 as explained with reference to
The phase calculation part 35 converts the numerical value G corresponding to the in-section phase θ′ calculated by the correction part 33 to a numerical value I corresponding to the phase θ based on the section specified by the section specifying part 27. Specifically, for example, this is as follows. As offset data D3, the information specifying the section P, a numerical value H of a predetermined number of bits (for example, 10 bits) corresponding to an offset phase θs, and information indicating which of addition or subtraction is to be carried out are stored in correspondence. The phase calculation part 35 specifies the numerical value H and the computation (addition or subtraction) corresponding to the section specified by the section specifying part 27 based on the offset data D3. Then, the specified numerical value H is added or subtracted with respect to the numerical value G calculated by the correction part 33 to thereby calculate the numerical value I. This is equivalent to setting the offset phase θs and adding or subtracting the offset phase θs and the in-section phase θ′ in accordance with which of sections P is specified, and thereby calculating the phase θ. Then, the phase calculation part 35 outputs a phase signal Sθ in accordance with that calculated numerical value I. The phase signal Sθ is, for example, a binary digital signal containing the numerical value I as the information of the numerical value of a predetermined number of bits (for example, 10 bits).
Note that, the absolute value calculation part 23, magnitude judgment part 25, substitution part 29, division part 31, correction part 33, and correction data D1 (storing means holding this) configure the arctangent calculation part 37 calculating the arctangent of the tangent where the signs of the sine wave signal Ssa and cosine wave signal Sca are adjusted and one of the sine wave signal Ssa and the cosine wave signal Sca is made to be a sine wave and the other is made to be a cosine wave so that the combination of the sign of the sine wave, the sign of the cosine wave, and the magnitude relationship between the absolute value of the sine wave and the absolute value of the cosine wave become constant regardless of which of eight sections contains the phase θ.
The phase θ is calculated at a predetermined time interval Δt by the in-cycle phase calculation part 15. The time interval Δt may be appropriately set. For example, it is 500 ns. Assuming that the position x and the phase θ are proportional, and the measured object Obj moves at a constant velocity toward one in the X-axis direction, as shown in
On the other hand, the CPU 7 outputs the read signal Sr to the output part 19 not periodically according to need or periodically by a predetermined cycle (for example, 50 μs) and acquires a detection signal Sdt containing the information of the phase θ. Accordingly, for example, assuming that the CPU7 acquires the phase θ calculated by the in-cycle phase calculation part 15 at a time t1 and a time t2 as shown in
Therefore, the phase detection device 5 outputting the detection signal Sdt to the CPU 7 has the cycle number calculation part 17 counting the number of cycles n. Specifically, the cycle number calculation part 17 acquires the phase θ calculated by the in-cycle phase calculation part 15 at each time interval Δt and judges whether or not the phase θ exceeds the reference phase 0 (2π) during the time interval Δt. Namely, it judges if the phase θ changes from 2π to 0 and the phase θ changes from 0 to 2π during the time interval Δt. When judging that the phase θ changes from 2π to 0, it increments the number of cycles n by 1, while when judging that the phase θ changes from 0 to 2π, it decrements the number of cycles n.
Note that, the number of cycles n may be decremented by 1 when judging that the phase θ changes from 0 to 2π, while the number of cycles n may be incremented by 1 when judging that the phase θ changes from 2π to 0 as well. An initial value of the number of cycles n is set according to an appropriate method at the time of activation etc. of the position detection device 1. For example, a user may appropriately input it, the position detection device 1 may appropriately set it by calibration, or the position detection device 1 may set the number of cycles n stored at the time of suspension of the previous activation to the initial value.
The cycle number calculation part 17 has a cross-border judgment part 41 judging whether or not the phase θ exceeds the reference phase 0 (2π) and a counter 43 counting the number of cycles n based on the judgment result of the cross-border judgment part 41.
To the cross-border judgment part 41, the phase signal Sθ from the in-cycle phase calculation part 15 is input for each time interval Δt. In the previous data D5, the phase θ indicated by the information contained in the phase signal Sθ input to the cross-border judgment part 41 the previous time is held. When the phase signal Sθ is input, the cross-border judgment part 41 compares the phase θ indicated by the information contained in the phase signal Sθ and the phase θ held in the previous data D5 and judges whether or not the phase θ exceeds the reference phase 0. Then, it outputs the signal in accordance with the judgment result to the counter 43 and updates the phase θ held in the previous data D5 by the phase θ indicated by the information contained in this time input phase signal Sθ.
The cross-border judgment part 41, for example, judges whether or not the phase θ exceeds the reference phase 0 based on the change of the numerical value I explained with reference to
The cross-border judgment part 41 outputs the judgment result, for example, by a binary digital signal containing 1 bit of information. Namely, when the phase θ exceeds the reference phase from 2π to 0, it outputs the signal at the signal level of true (1), while when the phase θ exceeds the reference phase from 2π to 0, it outputs the signal at the signal level of false (0). Note that, the correspondence of the direction of exceeding the reference phase and truth may be vice versa. Further, three types of judgment results of a case where the phase θ does not exceed the reference phase, a case where the phase θ exceeds the reference phase from 2π to 0, and a case where the phase θ exceeds the reference phase from 2π to 0 may be contained in 2 bits of information and output by binary digital signals as well. The time interval at which the cross-border judgment part 41 acquires the phase θ and makes its judgment may be different from the time interval at which the in-cycle phase calculation part 15 calculates the phase θ as well.
The counter 43 is configured by, for example, a counter capable of setting the initial value and capable of switching increment or decrement. The counter 43 is set in the initial value according to an appropriate method as explained above. Then, when the signal indicating that the phase θ exceeds the reference phase from 2π to 0 is input from the cross-border judgment part 41, it increments the count, while when the signal indicating that the phase θ exceeds the reference phase from 0 to 2π is input, it decrements the count. Note that, the correspondence of the direction in which the phase θ exceeds the reference phase and increment or decrement may be vice versa.
The counter 43 outputs the cycle number signal Sn containing the information of the number of cycles n. The cycle number signal Sn is, for example, a binary digital signal containing the number of cycles n as 6 bits of information.
As shown in
On the other hand, as shown in
Accordingly, when the detection signal Sdt containing the information indicating the number of cycles n and the information indicating the phase θ is output from the output part 19 to the CPU 7, the information of each bit of the information of n0 bits of the detection signal Sdt is assigned to each of n0 lines 49 of the bus line 47 and is simultaneously output from the output part 19 to the CPU 7.
The phase θ is the information of n2 bits (for example, 10 bits), therefore the phase of the section P (for example, 0 to π/4) obtained by dividing the range (0 to 2π) of the phase θ to eight is the information of (n2−3) bits (for example, 7 bits) (2″/8=27). Here, the digital type sine wave signal Ssd and cosine wave signal Scd, for example, hold signal levels of the analog type sine wave signal Ssa and cosine wave signal Sca as the information of (n2-2) bits (for example, 8 bits). The signal levels of the analog type sine wave signal Ssa and cosine wave signal Sca are the sign, therefore the absolute values are represented as the information of (n2−3) bits (for example, 7 bits). Accordingly, the division number of θ in one section P and the division number of the absolute values of the sine wave signal Ss and cosine wave signal Sc coincide. As a result, there is no waste in the resolution of the signal levels of the sine wave signal Ssa and cosine wave signal Sca and the resolution of phases.
Note that, the bit number (division number of 0 to 2π) n2 of the phase θ is determined based on, for example, the precision required in the control of the position x of the measured object Obj. For example, in order to control the position x of the measured object Obj within a range of an error Δx, the position detection device 1 must be able to detect the change of Δx in the position x of the measured object Obj. Accordingly, the bit number n2 of the phase θ is set so that 2π/n2 becomes not more than the amount of fluctuation of the phase θ in accordance with the change of Δx of the position x.
According to the above embodiment, the device has the section specifying part 27 specifying which of the first section P1 to the eighth section P8 contains the phase θ based on the sign of the sine wave signal Ssa, the sign of the cosine wave signal Sca, and the magnitude relationship between the absolute value of the sine wave signal Ssa and the absolute value of the cosine wave signal Sca, the arctangent calculation part 37 calculating the arctangent (θ′=tan−1y) of the tangent (y=tan θ′) when adjusting the signs of the sine wave signal Ssa and the cosine wave signal Sca and making one of the sine wave signal Ssa and the cosine wave signal Sca a sine wave and making the other a cosine wave so that the sign of the sine wave, the sign of the cosine wave, and the magnitude relationship between the absolute value of the sine wave and the absolute value of the cosine wave coincide regardless of which of the sections P contains the phase θ, and the phase calculation part 35 calculating the phase θ (=θs+θ′ or θs−θ′) based on the range of the section P specified by the section specifying part 27 (specified according to the offset phase θs) and the arctangent calculated by the arctangent calculation part 37 (θ′=tan−1y), therefore the arctangent can be calculated according to a procedure common to the eight sections. As a result, simplification and smaller size of the phase detection device 5 are achieved. For example, where the arctangent is specified from the tangent based on the data linking the tangent and the arctangent, the amount of data becomes ⅛.
The arctangent calculation part 37 calculates a value obtained by dividing a smaller value between the absolute value of the sine wave signal Ssa and the absolute value of the cosine wave signal Sca by the larger value as the tangent or arctangent, therefore can calculate the arctangent within the range where the tangent (tan θ′) becomes 0 to 1 (the range where the phase is 0 to π/4), so a load of the arctangent calculation part 37 can be lightened and reduced. Namely, the tangent (tan θ) is a function having a value within a range from 0 to ∞. For example, when the phase is π/4 to π/2, a large number of bits is required in order to hold the value of the tangent, and the amount of computation is large as well. However, the computation is carried out within a range where the tangent is 0 to 1, therefore a large number of bits is not required in order to hold the value of the tangent, and the amount of computation is small as well. Further, within the range from 0 to π/4, the tangent is the approximate value of the arctangent, therefore it is possible to use the tangent as the arctangent.
The arctangent calculation part 37 holds correction data D1 linking the tangent y=tan θ′ (=approximate arctangent) and the correction value Δθ comprised by a difference between the tangent tan θ′ and the arctangent θ′=tan−1y, specifies the correction value Δθ corresponding to the calculated tan θ′ from the correction data D1, adds that specified correction value Δθ to tan θ′, and thereby calculates the arctangent tan−1y. As explained above, within the range from 0 to π/4, the difference between tan θ′ and θ′ is small, therefore the number of bits of the held correction value Δθ may be small.
The phase detection device 5 has the counter 43 incrementing the count when the phase θ sequentially calculated by the in-cycle phase calculation part 15 exceeds the reference phase 0 (2π) in one direction and decrementing the count when the phase θ exceeds the reference phase 0 in the other direction and the output part 19 outputting the count number n counted by the counter 43 and the phase θ calculated by the in-cycle phase calculation part 15 in response to the input of the read signal Sr from the CPU 7. Therefore, even when the time interval of the read signal Sr is longer than the time of 1 cycle, CPU 7 can specify the position x indicated by θ+2πn.
The A/D converter 13 generates the sine wave signal Ssd and the cosine wave signal Scd as digital signals having information of n2−2 bits (for example, 8 bits) indicating the signal levels of the analog type sine wave signal Ssa and cosine wave signal Sca, the arctangent calculation part 37 generates the phase signal Se having information of n2 bits (for example, 10 bits) indicating the phase θ based on the sine wave signal Ssd and the cosine wave signal Scd, the counter 43 of the cycle number calculation part 17 generates the cycle number signal Sn having information of n1 bits (for example, 6 bits) indicating the count value n based on the phase signal Sθ, and the output part 19 simultaneously outputs the digital signals of information of n1+n2 bits (for example, 16 bits) comprised by information of n1 bits indicating the count value n and information of n2 bits indicating the phase θ to n1+n2 (for example, 16) lines 49 based on the phase signal Sθ and the cycle number signal Sn, therefore there is no waste in the resolution of the signal levels of the sine wave signal Ssa and cosine wave signal Sca and the resolution of phases, and simultaneous output from the bus line 47 is possible, thereby the phase θ can be efficiently detected.
The present invention is not limited to the above embodiment and may be worked in various ways.
The measured object is not limited to one linearly moving. It may be one rotating as well. Further, the detector outputting the sine wave signal and cosine wave signal having phases in accordance with the position of the measured object is not limited to ones detecting the position in the axial direction such as a linear encoder, but may be one detecting the position in a rotation direction such as a rotary encoder and a resolver as well.
Note that, the detector detecting the position in the rotation direction may be one where 1 cycle of the sine wave signal and cosine wave signal output from the detector corresponds to one rotation of the measured object, may be one where a plurality of cycles of the sine wave signal and cosine wave signal output from the detector correspond to one rotation of the measured object, or may be one where 1 cycle of the sine wave signal and cosine wave signal output from the detector corresponds to several rotations of the measured object.
The cycle number calculation part is not an indispensable requirement of the present invention. For example, it is not necessary to calculate the number of cycles so far as the movement range of the measured object corresponds to the range in 1 cycle of the sine wave signal and cosine wave signal.
The procedure common to eight sections for calculating the arctangent is not limited to the method of calculating the arctangent based on sin θ and cos θ within the range from 0 to π/4. Note, by utilizing the calculation procedure of the phase in 0 to π/4, various effects are obtained as explained above.
In the embodiment, the tangent calculated by converting the sine wave and cosine wave of each section to the sine wave and cosine wave within the range from 0 to π/4 was not used as the arctangent as it was, but corrected. However, where a high precision is not required, the calculated tangent may be utilized as the arctangent as it is as well.
The reference phase which becomes the reference when counting the number of cycles is not limited to 0 (2π), but may be an appropriate value. Note, if 0 (2π), the computation is easy.
The digital type sine wave signal, cosine wave signal, phase signal, cycle number signal, and detection signal may have information of appropriate bit numbers and are not limited to those exemplified in the embodiment.
Number | Date | Country | Kind |
---|---|---|---|
2007-079529 | Mar 2007 | JP | national |
Filing Document | Filing Date | Country | Kind | 371c Date |
---|---|---|---|---|
PCT/JP2008/055656 | 3/26/2008 | WO | 00 | 9/25/2009 |