POSITIONING DEVICE, POSITIONING SYSTEM, MOBILE TERMINAL, AND POSITIONING METHOD
20210333354 · 2021-10-28
Assignee
Inventors
Cpc classification
G01S5/0294
PHYSICS
G01S5/14
PHYSICS
G01S5/26
PHYSICS
G01S5/10
PHYSICS
International classification
Abstract
A positioning device operates in cooperation with a signal receiver for receiving a plurality of signal waves arriving from at least one synchronous transmission unit including a plurality of signal transmitters that operates in synchronization with each other. The positioning device includes: a time-of-arrival detecting unit for detecting time of arrival of each of the plurality of signal waves on the basis of a reception signal output from the signal receiver and a distance difference calculating unit for calculating a difference in distance from the plurality of signal transmitters to the signal receiver as a set of observation values on the basis of a difference in the time of arrival that has been detected; and a positioning arithmetic unit. The positioning arithmetic unit calculates a time series of an estimation state vector indicating position information of the signal receiver by executing a positioning arithmetic operation based on a nonlinear Kalman filter using a time series of an observation vector indicating the set of the observation values and known position information of the plurality of signal transmitters.
Claims
1. A positioning device for operating in cooperation with a signal receiver for receiving a plurality of signal waves arriving from at least one synchronous transmitter comprising a plurality of signal transmitters that operates in synchronization with each other, the positioning device comprising: processing circuitry configured to detect time of arrival of each of the plurality of signal waves on a basis of a reception signal output from the signal receiver; calculate a difference in distance from the plurality of signal transmitters to the signal receiver as a set of observation values on a basis of a difference in the time of arrival that has been detected; and calculate an estimation state vector indicating position information of the signal receiver by executing a positioning arithmetic operation based on a nonlinear Kalman filter using an observation vector indicating the set of the observation values and known position information of the plurality of signal transmitters.
2. The positioning device according to claim 1, wherein the at least one synchronous transmitter includes a plurality of synchronous transmitters, each of the plurality of synchronous transmitters includes M signal transmitters (M is an integer greater than or equal to 2), and the processing circuitry calculates the set of the observation values for each of the synchronous transmitters.
3. The positioning device according to claim 1, wherein the processing circuitry is further configured to execute a correlation process between the reception signal and a reference signal; and calculate, as the time of arrival, time that corresponds to a peak having an amplitude or power greater than or equal to a threshold value among a plurality of peaks appearing in an output signal to which the correlation processing is executed.
4. The positioning device according to claim 3, wherein the processing circuitry sets the threshold value on a basis of a peak other than the peak having a maximum amplitude among the plurality of peaks.
5. The positioning device according to claim 1, wherein the processing circuitry estimates time of arrival of each of the plurality of signal waves by executing a maximum likelihood estimating process.
6. The positioning device according to claim 1, wherein the processing circuitry estimates time of arrival of each of the plurality of signal waves by executing a maximum likelihood estimating process using predicted time of arrival of each of the plurality of signal waves.
7. The positioning device according to claim 1, wherein the processing circuitry calculates a plurality of candidates for the estimation state vector by executing a positioning arithmetic operation based on the nonlinear Kalman filter, calculates a plurality of evaluation values each indicating a likelihood of the plurality of candidates, and selects at least one candidate from among the plurality of candidates on a basis of the plurality of evaluation values.
8. The positioning device according to claim 1, wherein the plurality of signal waves is sound waves in a non-audible range.
9. A mobile terminal comprising the positioning device according to claim 1 and the signal receiver.
10. A positioning system comprising the at least one synchronous transmitter and a mobile terminal including the positioning device according to claim 1 and the signal receiver.
11. A positioning method executed in a positioning device for operating in cooperation with a signal receiver for receiving a plurality of signal waves arriving from at least one synchronous transmitter comprising a plurality of signal transmitters that operates in synchronization with each other, the positioning method comprising: detecting time of arrival of each of the plurality of signal waves on a basis of a reception signal output from the signal receiver; calculating a difference in distance from the plurality of signal transmitters to the signal receiver as a set of observation values on a basis of a difference in the time of arrival that has been detected; and calculating an estimation state vector indicating position information of the signal receiver by executing a positioning arithmetic operation based on a nonlinear Kalman filter using an observation vector indicating the set of the observation values and known position information of the plurality of signal transmitters.
Description
BRIEF DESCRIPTION OF DRAWINGS
[0011]
[0012]
[0013]
[0014]
[0015]
[0016]
[0017]
[0018]
[0019]
[0020]
DESCRIPTION OF EMBODIMENTS
[0021] Hereinafter, various embodiments of the present invention will be described in detail with reference to the drawings. Note that components denoted by the same symbol throughout the drawings have the same configuration and the same function.
First Embodiment
[0022]
[0023] The signal transmission system 1 includes N synchronous transmission units 12.sub.1, . . . , 12.sub.N for transmitting a plurality of signal waves for positioning and a transmission information supplying unit 11 for supplying transmission information necessary for transmission of the plurality of signal waves to the synchronous transmission units 12.sub.1, . . . , 12.sub.N. Here, N is an integer greater than or equal to 2. It is based on the premise that the synchronous transmission units 12.sub.1, . . . , 12.sub.N all have the same configuration.
[0024] An n-th synchronous transmission unit 12.sub.n includes M signal transmitters Tx.sub.n, 1, Tx.sub.n, 2, . . . , Tx.sub.n, M and a time synchronization unit 14.sub.n for causing the M signal transmitters Tx.sub.n, 1, Tx.sub.n, 2, . . . , Tx.sub.n, M to operate in synchronization with each other. Here, n is an integer in a range of 1 to N indicating the number of the synchronous transmission unit 12.sub.n, and M is an integer greater than or equal to 3 indicating the number of the signal transmitters Tx.sub.n, 1 to Tx.sub.n, M. The transmission information supplying unit 11 supplies control signals D.sub.n, 1, . . . , D.sub.n, M for specifying a waveform pattern of a signal wave to be transmitted from the signal transmitters Tx.sub.n, 1, Tx.sub.n, 2, . . . , Tx.sub.n, M, respectively, to the signal transmitters Tx.sub.n, 1, Tx.sub.n, 2, . . . , Tx.sub.n, M, respectively. The signal transmitters Tx.sub.n, 1, Tx.sub.n, 2, . . . , Tx.sub.n, M operate in synchronization with each other and are capable of transmitting signal waves w.sub.n, 1, w.sub.n, 2, . . . , w.sub.n, M (for example, radio waves or sound waves in a non-audible range) having waveform patterns specified by the control signals D.sub.n, 1, . . . , D.sub.n, M at transmission timing specified by the synchronous transmission unit 12.sub.n.
[0025] In the present embodiment, the time synchronization unit 14.sub.n implements time synchronization among the signal transmitters Tx.sub.n, 1, Tx.sub.n, 2, . . . , Tx.sub.n, M. Meanwhile, time synchronization among the synchronous transmission units 12.sub.1, . . . , 12.sub.N is not always necessary.
[0026] Such a synchronous transmission unit 12.sub.n can be used by being incorporated into an audio output device such as a stereo music player.
[0027] Note that the transmission information supplying unit 11 of the present embodiment is a component separate from the synchronous transmission units 12.sub.1, . . . , 12.sub.N, however, it is not limited thereto.
[0028] Next, with reference to
[0029] Note that the transmission information supplying unit 30 of the present embodiment is a component separate from the positioning device 31, however, it is not limited thereto. The transmission information supplying unit 30 may be incorporated in the positioning device 31.
[0030] The signal receiver Rx includes a reception sensor 21 for detecting the signal waves w.sub.1,1 to w.sub.1, M, . . . , w.sub.N, 1 to w.sub.N, M arriving from the synchronous transmission units 12.sub.1, . . . , 12.sub.N, and a reception signal processing unit 22 for generating a digital reception signal by performing analog signal processing such as amplification and analog-to-digital conversion on an analog reception signal output from the reception sensor 21. In a case where sound waves in a non-audible range are output from the synchronous transmission units 12.sub.1, . . . , 12.sub.N, the reception sensor 21 of the signal receiver Rx is only required to be composed of, for example, a microphone having sensitivity in the non-audible range. The digital reception signal (hereinafter, simply referred to as “reception signal”) output from the reception signal processing unit 22 is given to the positioning device 31.
[0031] Next, the configuration of the positioning device 31 will be described with reference to
[0032] As illustrated in
[0033] The ToA detecting unit 41 includes a correlation processing unit 43 and a ToA calculating unit 44. The correlation processing unit 43 executes a correlation process between the reference signal supplied from the transmission information supplying unit 30 and the reception signal. Such a correlation processing unit 43 may be configured by using, for example, a matched filter of known technology. In an output signal waveform of the correlation processing unit 43, a plurality of peaks appears which corresponds to the time of arrival of respective signal waves arriving from the signal transmitters Tx.sub.n, 1 to Tx.sub.n, M. The ToA calculating unit 44 can detect these peaks and calculate the time of arrival that corresponds to each of the peaks that have been detected. For example, the ToA calculating unit 44 can detect those peaks by comparing the amplitude or the power of an output signal of the correlation processing unit 43 with a threshold value TH.
[0034] The distance difference calculating unit 46 acquires the time of arrival detected by the ToA detecting unit 41 and is capable of calculating a difference in distance from the signal transmitters Tx.sub.n, 1 to Tx.sub.n, M to the signal receiver Rx (hereinafter referred to as “distance difference”) for each synchronous transmission unit 12.sub.n on the basis of a difference in the time of arrival (hereinafter referred to as “time of arrival difference”).
[0035] Here, let (x.sub.A, y.sub.A, z.sub.A), (x.sub.B, y.sub.B, z.sub.B), (x.sub.C, y.sub.C, z.sub.C), and (x.sub.D, y.sub.D, z.sub.D) be position coordinates of four signal transmitters Tx.sub.n, A, Tx.sub.n, B, Tx.sub.n, C, and Tx.sub.n, D, respectively, out of the signal transmitters Tx.sub.n, 1 to Tx.sub.n, M present in the positioning space IS (three-dimensional space), and let (x, y, z) be the position coordinates of the signal receiver Rx. Let r.sub.A, r.sub.B, r.sub.C, and r.sub.D be the distance between the four signal transmitters Tx.sub.n, A, Tx.sub.n, B, Tx.sub.n, C, and Tx.sub.n, D and the signal receiver Rx, respectively. Here, the distances r.sub.A, r.sub.B, r.sub.C, and r.sub.D are expressed by the following Equations 1.1, 1.2, 1.3, and 1.4, respectively.
r.sub.A=√{square root over ((x−x.sub.A).sup.2+(y−y.sub.A).sup.2+(z−z.sub.C).sup.2)} (1.1)
r.sub.B=√{square root over ((x−x.sub.B).sup.2+(y−y.sub.B).sup.2+(z−z.sub.B).sup.2)} (1.2)
r.sub.C=√{square root over ((x−x.sub.C).sup.2+(y−y.sub.C).sup.2+(z−z.sub.C).sup.2)} (1.3)
r.sub.D=√{square root over ((x−x.sub.D).sup.2+(y−y.sub.D).sup.2+(z−z.sub.D).sup.2)} (1.1)
[0036] Let c be the propagation velocity of a signal wave in the positioning space IS, and among the four signal transmitters Tx.sub.n, A, Tx.sub.n, B, Tx.sub.n, C, Tx.sub.n, D, let δ.sub.AB be the time of arrival difference of signal waves between the signal transmitters Tx.sub.n, A and Tx.sub.n, B, let δ.sub.AC be the time of arrival difference of signal waves between the signal transmitters Tx.sub.n, A and Tx.sub.n, C, and let δ.sub.AD be the time of arrival difference of signal waves between the signal transmitters Tx.sub.n, A and Tx.sub.n, D. Here, a three-dimensional observation vector z, having distance differences z.sub.AB, z.sub.AC, and z.sub.AD as elements, expressed in the following Equations 2 can be obtained.
[0037] The distance difference calculating unit 46 can calculate, for example, a three-dimensional observation vector z.sup.s (k) at the time t.sub.k on the basis of Equations 2. Here, the superscript s represents the number of each observation vector obtained by one time of transmission of the synchronous transmission units 12.sub.1, . . . , 12.sub.N.
[0038] The positioning arithmetic unit 51 can measure the position information of the signal receiver Rx by executing a positioning arithmetic operation based on a nonlinear Kalman filter using the observation vector z.sup.s (k). As illustrated in
[0039] All or some of the functions of the positioning device 31 described above may be implemented by a single or a plurality of processors including a semiconductor integrated circuit such as a digital signal processor (DSP), an application specific integrated circuit (ASIC), or a field-programmable gate array (FPGA). Alternatively, all or some of the functions of the positioning device 31 may be implemented by a single or a plurality of processors including an arithmetic device such as a central processing unit (CPU) or a graphics processing unit (GPU) for executing program codes of software or firmware. Further alternatively, all or some of the functions of the positioning device 31 can be implemented by a single or a plurality of processors including a combination of a semiconductor integrated circuit such as a DSP, an ASIC, or an FPGA and an arithmetic device such as a CPU or a GPU.
[0040]
[0041] The memory 72 includes a work memory used when the processor 71 executes digital signal processing and a temporary storage memory in which data used in the digital signal processing is loaded. For example, the memory 72 is only required to include a semiconductor memory such as a flash memory and an SDRAM. The memory 72 can be used as the signal memory unit 40 and the hypothesis storage unit 65 in
[0042] Note that although the number of processors 71 is one in the example of
[0043] Next, the configuration and the operation of the positioning device 31 described above will be described with reference to
[0044] First, in the positioning device 31, the number k that represents the current time t.sub.k is set to 1 (step ST1). Next, the ToA detecting unit 41 selects one synchronous transmission unit 12.sub.n from the synchronous transmission units 12.sub.1, . . . , 12.sub.N (step ST11) and detects time of arrival of signal waves w.sub.n, 1 to w.sub.n, M propagated to the signal receiver Rx from signal transmitters Tx.sub.n, 1 to Tx.sub.n, M in the synchronous transmission unit 12.sub.n, respectively (step ST12).
[0045] Specifically, as described above, the correlation processing unit 43 executes the correlation process between the reference signal supplied from the transmission information supplying unit 30 and the reception signal read from the signal memory unit 40. The ToA calculating unit 44 detects peaks appearing in the output signal by comparing the amplitude or the power of the output signal of the correlation processing unit 43 with the threshold value TH and can calculate the time of arrival corresponding to each of the peaks that have been detected. In a case where there is no interference among the signal waves, an output signal waveform Pa of the correlation processing unit 43 is not distorted as illustrated in the example of
[0046] On the other hand, in a case where interference among signal waves occurs, as illustrated in the example of
[0047] However, in the example of
[0048] After step ST12 in
[0049] Then, if all of the synchronous transmission units 12.sub.1, . . . , 12.sub.N have been selected (YES in step ST13), the distance difference calculating unit 46 acquires the time of arrival detected by the ToA detecting unit 41 as described above and calculates distance differences based on the time of arrival difference for each synchronous transmission unit 12.sub.n (step ST21). At this point, the distance difference calculating unit 46 supplies an observation vector, containing the distance differences that have been calculated as elements, to the positioning arithmetic unit 51.
[0050] The positioning arithmetic unit 51 executes a positioning arithmetic operation based on a nonlinear Kalman filter according to the procedure illustrated in
[0051] Here, it is based on the premise that a motion model of the signal receiver Rx (mobile terminal 2), which is the target, is given by the following Equation 3.1 and that the observation model is given by the following Equation 3.2.
Φ(k)=f(Φ(k−1))+w(k−1) (3.1)
z.sup.s(k)=h(Φ(k))+v(k) (3.2)
[0052] Here, Φ(k) denotes a state vector of the target at time t.sub.k, and f ( ) and h ( ) are each a nonlinear function vector. Term w (k−1) represents a system noise vector indicating the ambiguity of the motion velocity of the target, the average value of the system noise vector w (k−1) is 0, and the covariance matrix thereof is denoted by Q.sub.k. Meanwhile, v (k) denotes an observation noise vector, the average value of the observation noise vector v (k) is 0, and the covariance matrix thereof is denoted by R.sub.k.
[0053] The state vector Φ(k) of the target is a six-dimensional vector whose elements are, for example, the three-dimensional positional components x (k), y (k), and z (k) and velocity components dx (k)/dt, dy (k)/dt, and dz (k)/dt as expressed in the following Equation 4.
[0054] Here, the superscript T is a symbol representing transposition.
[0055] For example, if the motion of the target is approximated by a constant velocity linear motion, Equation 3.1 can be expressed as the following Equation 5.
Φ(k)=F.sub.k.Math.Φ(k−1)+w(k−1) (5)
[0056] Value F.sub.k in Equation 5 can be represented by a matrix of six rows and six columns as expressed in the following Equation 6.
[0057] Here, τ.sub.k denotes the sampling interval (=t.sub.k−t.sub.k-1), and I.sub.3×3 denotes a unit matrix of three rows and three columns.
[0058] The covariance matrix Q.sub.k of the system noise vector w (k) is as expressed in the following Equation 7 (q denotes the power spectral density of the system noise, which is a constant value).
[0059] Here, let us assume that an estimation state vector indicating an estimated state of the target at past time t.sub.k-1 is expressed as φ.sup.i (k−1|k−1) and that an estimation error covariance matrix corresponding thereto is expressed as P.sup.i (k−1|k−1). The superscript i is an integer greater than or equal to 1 indicating the number of the estimation state vector. Here, an i-th hypothesis H.sup.i (k−1|k−1) at the time t.sub.k-1 is defined as the following Equation 8.
H.sup.j(k−1|k−1)={c.sup.j(k−1),ϕ.sup.j(k−1|k−1),P.sup.i(k−1|k−1)} (8)
[0060] Here, c.sup.i (k−1) is an evaluation value indicating the likelihood of the hypothesis H.sup.i (k−1|k−1). The hypothesis H.sup.i (k−1|k−1) in Equation 8 is a combination of the estimation state vector φi (k−1|k−1), the estimation error covariance matrix P.sup.i (k−1|k−1), and the evaluation value c.sup.i (k−1).
[0061] The hypothesis storage unit 65 stores the hypothesis H.sup.i (k−1|k−1) at the past time t.sub.k-1 with respect to the current time t.sub.k. Note that a hypothesis Hi (0|0) at time to is given as an initial parameter.
[0062] With reference to
[0063] Specifically, the track prediction unit 66 can calculate a prediction state vector φ.sup.i (k|k−1) as expressed in the following Equation 9.
ϕ.sup.i(k|k−1)=f(ϕ.sup.i(k−1|k−1)) (9)
[0064] The track prediction unit 66 can also calculate a prediction error covariance matrix P.sup.i (k−1|k−1) as expressed in the following Equation 10.
P.sup.i(k|k−1)=F.sub.k-1.Math.P.sup.i(k−1|k−1).Math.F.sub.k-1.sup.T+Q.sub.k (10)
[0065] Value F.sub.k-1 in Equation 10 is a partial differential matrix (Jacobian) as expressed in the following Equation 11.
[0066] After step ST32, the track prediction unit 66 generates a prediction hypothesis H.sup.i (k|k−1) as expressed in the following Equation 12 using the prediction state vector φ.sup.i (k|k−1) and the prediction error covariance matrix P.sup.i (k−1|k−1) calculated in step ST32 (step ST33).
H.sup.i(k|k−1)={c.sup.i(k−1),ϕ.sup.i(k|k−1),P.sup.i(k|k−1)} (12)
[0067] The prediction hypothesis H.sup.i (k|k−1) in Equation 12 is a combination of the prediction state vector φ.sup.i (k|k−1), the prediction error covariance matrix P.sup.i (k|k−1), and the evaluation value c.sup.i (k−1). Next, the correlation hypothesis generating unit 61 calculates two types of correlation hypotheses M.sup.(i, s)(k|k−1) and M.sup.(i, 0)(k|k−1) as expressed in the following Equations 13.1 and 13.2 using the observation vector z.sup.s (k) and the prediction hypothesis H.sup.i (k|k−1) (step ST34).
M.sup.(i,s)(k|k−1)={c.sup.i(k−1),ϕ.sup.i(k|k−1),P.sup.i(k|k−1),z.sup.s(k)} (13.1)
M.sup.(i,0)(k|k−1)={c.sup.i(k−1),ϕ.sup.i(k|k−1),P.sup.i(k|k−1),z.sup.0(k)} (13.2)
[0068] Here, z.sup.0 (k) is a sign indicating for convenience that the observation vector z.sup.s(k) (s=1,2, . . . ) is not assigned. The correlation hypothesis M.sup.(i, s) (k|k−1) in Equation 13.1 is a combination of the prediction state vector φ.sup.i (k|k−1), the prediction error covariance matrix P.sup.i (k|k−1), the evaluation value c.sup.i (k−1), and an assigned observation vector z.sup.s (k), and the correlation hypothesis M.sup.(i,0) (k|k−1) in Equation 13.2 is a combination of the prediction state vector φ.sup.i (k|k−1), the prediction error covariance matrix P.sup.i (k|k−1), the evaluation value c.sup.i (k−1), and the sign z.sup.0 (k).
[0069] Next, the correlation hypothesis evaluating unit 62 calculates new evaluation values c.sup.i (k) and d.sup.i (k) of the correlation hypotheses M.sup.(i, s)(k|k−1) and M.sup.(i, 0)(k|k−1) for all combinations of (i, s) and updates the correlation hypotheses M.sup.(i, s)(k|k−1) and M.sup.(i, 0)(k|k−1) (step ST35).
[0070] Specifically, for example, new evaluation values c.sup.i (k) and d.sup.i (k) can be calculated on the basis of the following Equations 14.1 and 14.2.
c.sup.i(k)=c.sup.i(k−1)×g.sup.i(k)×p.sub.D (14.1)
d.sup.i(k)=c.sup.i(k−1)×β.sub.FT×(1−p.sub.D) (14.2)
[0071] Here, g.sup.i (k) is the likelihood of a track, p.sub.D is a detection probability, and OFT is a preset false detection occurrence rate.
[0072] The updated correlation hypotheses N.sup.(i, s) (k|k−1) and N.sup.(i, 0) (k|k−1) are expressed by the following Equations 15.1 and 15.2.
N.sup.(i,s)(k|k−1)={c.sup.i(k),ϕ.sup.i(k|k−1),P.sup.i(k|k−1),z.sup.s(k)} (15.1)
N.sup.(i,0)(k|k−1)={d.sup.i(k),ϕ.sup.i(k|k−1),P.sup.i(k|k−1),z.sup.0(k)} (15.2)
[0073] Here, the updated correlation hypothesis N.sup.(i, s) (k|k−1) is a combination of the prediction state vector φ.sup.i (k|k−1), the prediction error covariance matrix P.sup.i (k|k−1), the assigned observation vector z.sup.s (k), and the updated evaluation value c.sup.i (k), and the updated correlation hypothesis N.sup.(i, 0) (k|k−1) is a combination of the prediction state vector φ.sup.i (k|k−1), the prediction error covariance matrix P.sup.i (k|k−1), the sign z.sup.0 (k), and the updated evaluation value d (k).
[0074] Next, the hypothesis update unit 63 calculates the estimation state vectors φ.sup.(i, s) (k|k) and φ.sup.(i, 0) (k|k) and the estimation error covariance matrices P.sup.(i, s) (k|k) and P.sup.(i,0) (k|k) at the current time t.sub.k using the updated correlation hypotheses N.sup.(i, s) (k|k−1) and N.sup.(i,0) (k|k−1) for all the combinations of (i, s) (step ST36).
[0075] Specifically, the estimation state vectors φ.sup.(i, s) (k|k) and φ.sup.(i, 0) (k|k) can be calculated on the basis of the following Equations 16.1 and 16.2.
ϕ.sup.(i,s)(k|k)=ϕ.sup.i(k|k−1)+K.sub.k.sup.i[z.sup.s(k)−h(ϕ.sup.i(k|k−1))] (16.1)
ϕ.sup.(i,0)(k|k)=ϕ.sup.i(k|k−1) (16.2)
[0076] Here, K.sub.k.sup.j is an extended Kalman gain matrix, and H.sub.k is a partial differential matrix (Jacobian). The extended Kalman gain matrix K.sub.k.sup.j is expressed by the following Equation 17.
K.sub.k.sup.i=P.sup.i(k|k−1)H.sub.k.sup.T[H.sub.kP.sup.i(k|k−1)H.sub.k.sup.T+R.sub.k].sup.−1 (17)
[0077] The partial differential matrix H.sub.k is expressed by the following Equation 18.
[0078] Furthermore, the estimation error covariance matrices P.sup.(i, s) (k|k) and P.sup.(i,0) (k|k) can be calculated by the following Equations 19.1 and 19.2.
P.sup.(i,s)(k|k)=P.sup.i(k|k−1)−K.sub.k.sup.iH.sub.kP.sup.i(k|k−1) (19.1)
P.sup.(i,0)(k|k)=P.sup.i(k|k−1) (19.2)
[0079] After step ST36, the hypothesis update unit 63 calculates hypothesis candidates H.sup.(i,s) (k|k) and H.sup.(i, 0) (k|k) at the current time t.sub.k as expressed in the following Equations 20.1 and 20.2 using the estimation state vectors φ.sup.(i, s) (k|k) and φ.sup.(i, 0) (k|k) and the estimation error covariance matrices P.sup.(i,s) (k|k) and P.sup.(i,0) (k|k) calculated in step ST36 (step ST37).
H.sup.(i,s)(k|k)={c.sup.i(k),ϕ.sup.(i,s)(k|k),P.sup.(i,s)(k|k)} (20.1)
H.sup.(i,0)(k|k)={d.sup.i(k),ϕ.sup.(i,0)(k|k),P.sup.(i,0)(k|k)} (20.2)
[0080] Here, the hypothesis candidate H.sup.(i, s) (k|k) is a combination of the estimation state vector φ.sup.(i, s) (k|k), the estimation error covariance matrix P.sup.(i, s) (k|k), and the evaluation value c.sup.i (k), and the hypothesis candidate H.sup.(i, 0) (k|k) is a combination of the estimation state vector φ.sup.(i, 0) (k|k), the estimation error covariance matrix P.sup.(i,0) (k|k), and the evaluation value d.sup.i (k).
[0081] After step ST37, the hypothesis selection unit 64 selects at least one hypothesis candidate having a relatively high evaluation value from among the hypothesis candidates H.sup.(i, s) (k|k) and H.sup.(i, 0) (k|k) at the current time t.sub.k (step ST39) and stores the hypothesis candidate that has been selected in the hypothesis storage unit 65 as a hypothesis H.sup.i (k|k) at the time t.sub.k (step ST39). Here, the superscript i of the hypothesis H.sup.i (k|k) is a reassigned (renumbered) number, which is an integer greater than or equal to 1.
[0082] Meanwhile, the track determination unit 68 determines a track of a hypothesis candidate (estimation state vector) having the highest evaluation value as the track at the current time t.sub.k among the hypothesis candidates H.sup.(i, s) (k|k) and H.sup.(i, 0) (k|k) at the current time t.sub.k that have been generated in step ST37 (step ST40). The data of the track (track data) that has been determined is output to the outside.
[0083] After step ST40, the positioning arithmetic unit 51 determines whether or not to continue the positioning arithmetic operation (step ST41), and if it is determined to continue the positioning arithmetic operation (YES in step ST41), the time number k is incremented (step ST42), and the positioning process is returned to step ST11 in
[0084] As described above, according to the first embodiment, the positioning arithmetic unit 51 can calculate the estimation state vector φ.sup.i (k|k) indicating the position information of a target by executing the positioning arithmetic operation based on a nonlinear Kalman filter using the observation vector z.sup.s (k) and known position information of the signal transmitters Tx.sub.n, 1 to Tx.sub.n, M, and thus highly accurate position information can be measured even in the positioning space IS where no GNSSs can be used.
[0085] Furthermore, in the present embodiment, since a server that provides auxiliary information as disclosed in Patent Literature 1 is not required, it is possible to keep the configuration cost of the positioning system low. Furthermore, since the distance difference calculating unit 46 calculates an observation vector indicating a set of distance differences for each synchronous transmission unit 12.sub.n, and the positioning arithmetic unit 51 executes a positioning arithmetic operation based on the nonlinear Kalman filter using the observation vector, it is possible to calculate the estimation state vector φ.sup.i (k|k) with high accuracy even when time synchronization is not performed among the synchronous transmission units 12.sub.1, . . . , 12.sub.N. Therefore, since the cost required for time synchronization among the synchronous transmission units 12.sub.1, . . . , 12.sub.N can be reduced, it is possible to keep the configuration cost of the positioning system low.
Second Embodiment
[0086] Next, a second embodiment of the present invention will be described.
[0087] The ToA detecting unit 42 of the present embodiment includes a correlation processing unit 43, a ToA calculating unit 44, and a maximum likelihood estimating unit 45. The maximum likelihood estimating unit 45 has a function of estimating the time of arrival of each of a plurality of signal waves by executing a process based on the maximum likelihood estimation method (maximum likelihood estimating process) for each synchronous transmission unit 12.sub.n. In a case where the influence of interference among signal waves is not negligible, there are cases where the ToA calculating unit 44 calculates time of arrival with low accuracy or cannot calculate time of arrival required to obtain an observation vector z.sup.i (k). Even in such a case, the maximum likelihood estimating unit 45 can calculate the maximum likelihood estimation value of the time of arrival.
[0088] The track prediction unit 67 of the present embodiment has the same function as the track prediction unit 66 of the first embodiment and further has a function of calculating the prediction state vector φ.sup.i (k|k−1) of a target (signal receiver Rx) at the current time t.sub.k before the positioning arithmetic operation is executed. The maximum likelihood estimating unit 45 can execute the maximum likelihood estimating process using a predicted position included in the prediction state vector φ.sup.i (k|k−1).
[0089] The operation of the positioning device 32 of the second embodiment will be described with reference to
[0090] With reference to
[0091] Thereafter, the ToA detecting unit 42 executes steps ST11 to ST14 in a similar manner to the case of the first embodiment (
[0092] If it is determined that the maximum likelihood estimating process is executed (YES in step ST15), the maximum likelihood estimating unit 45 acquires known position information of the signal transmitters Tx.sub.1, 1 to Tx.sub.1, M, . . . , Tx.sub.N, 1 to Tx.sub.N, M from the transmission information supplying unit 30 and calculates predicted time of arrival T.sub.p, 1, T.sub.p, 2, . . . , T.sub.p, I of the respective signal waves propagated from the signal transmitters Tx.sub.1, 1 to Tx.sub.1, M, . . . , Tx.sub.N, 1 to Tx.sub.N, M to the signal receiver Rx using the known position information and the predicted position of the signal receiver Rx calculated in step ST2 (step ST14). Here, I is a positive integer indicating the number pieces of time of arrival to be predicted.
[0093] Next, the maximum likelihood estimating unit 45 acquires a reception signal from the signal memory unit 40 and a reference signal from the transmission information supplying unit 30 and calculates a maximum likelihood estimation value of time of arrival by executing the maximum likelihood estimating process, in which the predicted time of arrival T.sub.p, 1, T.sub.p, 2, . . . , T.sub.p, I is the initial value, using the reception signal and the reference signal (step ST17). Then, the distance difference calculating unit 46 calculates distance differences based on the maximum likelihood estimation value of the time of arrival (step ST21). Thereafter, step ST31 is executed in a similar manner to the case of the first embodiment (
[0094] In step ST17, the maximum likelihood estimating unit 45 is only required to calculate a maximum likelihood estimation amount <t.sub.ToA> of a time of arrival vector that maximizes the likelihood function Ω (t.sub.ToA) related to the time of arrival vector t.sub.ToA as expressed in the following Equation 21 by executing a repetitive calculation based on a known maximum likelihood estimation algorithm such as the steepest descent method, the Newton-Raphson method, or the Broyden-Fletcher-Goldfarb-Shanno algorithm (BFGS method).
[0095] The time of arrival vector t.sub.ToA in Equation 21 is expressed by the following Equation 22.
t.sub.ToA=[T.sub.1,T.sub.2, . . . ,T.sub.I] (22)
[0096] Here, T.sub.1, T.sub.2, . . . , T.sub.1 are variables of the time of arrival that correspond to predicted time of arrival T.sub.p, 1, T.sub.p, 2, . . . , T.sub.p, I, respectively.
[0097] For example, a likelihood function Ω (t.sub.ToA) as expressed in the following Equation 23 can be used.
[0098] Here, σ.sup.2 denotes the dispersion of noise power, L denotes the number of samples of the reception signal acquired from the signal memory unit 40, w denotes a vector of L rows and 1 column having the sample values of the reception signal as elements, A (t.sub.ToA) denotes a matrix, S denotes a vector, and a superscript H is a symbol representing an Hermitian conjugate.
[0099] The matrix A (t.sub.ToA) of Equation 23 is, for example, expressed by the following Equation 24.
A(t.sub.ToA)=[r.sub.1(T.sub.1),r.sub.2(T.sub.2), . . . ,r.sub.1(T.sub.1)].sup.T (24)
[0100] Here, r.sub.1 (T.sub.1), . . . , and r.sub.1 (T.sub.1) are vectors obtained by sampling L sample values from each of I reference signals. The matrix A (t.sub.ToA) has L rows and I columns.
[0101] Moreover, for example, the vector S in Equation 23 is expressed by the following Equation 25 when the amplitude and the initial phase of an i-th reference signal are denoted as a.sub.i and η.sub.i, respectively.
S=[a.sub.1e.sup.jη.sup.
[0102] As described above, according to the second embodiment, even when the ToA calculating unit 44 calculates time of arrival with low accuracy or when time of arrival that is required for obtaining the observation vector z.sup.i (k) cannot be calculated, the maximum likelihood estimating unit 45 can calculate the maximum likelihood estimation value of the time of arrival. This makes it possible to provide a highly reliable positioning system.
[0103] Furthermore, in the present embodiment, the maximum likelihood estimating unit 45 executes the maximum likelihood estimating process using the predicted time of arrival T.sub.p, 1, T.sub.p, 2, . . . , T.sub.p, I as initial values (step ST17), the time required for the search for the time of arrival can be shortened, and the calculation amount of the maximum likelihood estimating process can also be reduced.
[0104] Note that, in order to reduce the possibility that the search result will be a local solution when the predicted time of arrival T.sub.p, 1, T.sub.p, 2, . . . , T.sub.p, I is used as the initial values, the maximum likelihood estimating unit 45 may sample, a plurality of times, a sampling value from I normal distributions in which the predicted time of arrival T.sub.p, 1, T.sub.p, 2, . . . , T.sub.p, 1 are used as the average value and execute the maximum likelihood estimating process in which the sample values are used as the initial values.
[0105] Furthermore, all or some of the functions of the positioning device 32 described above can be implemented by a single or a plurality of processors including a semiconductor integrated circuit such as a DSP, an ASIC, or an FPGA. Alternatively, all or some of the functions of the positioning device 32 may be implemented by a single or a plurality of processors including an arithmetic device such as a CPU or a GPU that executes program codes of software or firmware. Further alternatively, all or some of the functions of the positioning device 32 can be implemented by a single or a plurality of processors including a combination of a semiconductor integrated circuit such as a DSP, an ASIC, or an FPGA and an arithmetic device such as a CPU or a GPU. The hardware configuration of the positioning device 32 may be implemented by the signal processing circuit 70 illustrated in
[0106] Although the first and second embodiments of the present invention have been described above with reference to the drawings, the first and second embodiments are examples of the present invention, and there may be various embodiments other than the first and second embodiments and modifications thereof. Within the scope of the present invention, the present invention may include a flexible combination of the first and second embodiments, a modification of any component of the embodiments, or omission of any component in the embodiments.
INDUSTRIAL APPLICABILITY
[0107] A positioning device, a mobile terminal, a positioning system, and a positioning method according to the present invention are capable of measuring highly accurate position information even in an environment where no GNSSs can be used and thus are suitable for use in a navigation system that uses positioning information of a mobile terminal in an indoor space or an underground space as well as in a hybrid positioning system that uses a combination of a plurality of types of positioning technology.
REFERENCE SIGNS LIST
[0108] IS: positioning space, 1: signal transmission system, 2, 3: mobile terminal, 11, 11.sub.n: transmission information supplying unit, 12.sub.1, . . . , 12.sub.N, 13.sub.n: synchronous transmission unit, Tx.sub.1,1 to Tx.sub.N,M: signal transmitter, 141, . . . , 14.sub.N: time synchronization unit, Rx: signal receiver, 21: reception sensor, 22: reception signal processing unit, 30: transmission information supplying unit, 31, 32: positioning device, 32: positioning device, 40: signal memory unit, 41, 42: time of arrival (ToA) detecting unit, 43: correlation processing unit, 44: time of arrival (ToA) calculating unit, 45: maximum likelihood estimating unit, 46: distance difference calculating unit, 51, 52: positioning arithmetic unit (tracking processing unit), 61: correlation hypothesis generating unit, 62: correlation hypothesis evaluating unit, 63: hypothesis update unit, 64: hypothesis selection unit, 65: hypothesis storage unit, 66, 67: track prediction unit, 68: track determination unit, 70: signal processing circuit, 71: processor, 72: memory, 73: storage device, 74: input and output interface, 75: signal path