本發明涉及通信領域,尤其涉及一種室內定位方法和定位設備。
背景技術:
無線定位技術是無線通信領域的研究熱點。其中,WIFI(wireless fidelity,無線連接)定位技術是無線定位技術中的一個重要分支,在許多重要場合得到廣泛的應用,比如醫院、博物館、商場等。
現有的WIFI室內定位算法主要有利用接收信號強度RSSI(received signal strength indication,接收的信號強度指示)和電磁波傳播時間TOA(time of arrival)兩種方法來定位。
對于利用接收信號強度RSSI進行定位,其原理是利用AP(access point,接入點)或基站定期發送的WIFI信標信號中包含的接收信號強度的信息,根據其衰減程度,從而計算出電磁波的傳播距離。但是由于無線信號在大氣環境中傳播時,接收信號強度不只隨著傳播距離的增加而衰減,還會受到墻壁等介質阻擋而衰減,因此有時測量仍會有誤差。
對于利用電磁波傳播時間TOA進行定位,其原理是通過測量信號傳輸時間得到發送方和接收方之間的距離。在室內應用中,嚴重的多徑和非視距現象造成測距誤差較大,因此需要能夠準確估計測距誤差大小,然后通過距離修正、權值設置等方法來提高定位精度。而測距誤差大小主要取決于傳輸信道的狀態,但是在實際的定位過程中,傳輸信道狀態無法獲知,使得測距誤差難于估計準確,因此最終測量結果仍有較大誤差。
技術實現要素:
本發明的實施例提供一種定位方法和定位設備,用于解決現有WIFI室內定位方法定位不準確的問題。
為達到上述目的,本發明的實施例采用如下技術方案:
第一方面,提供了一種定位方法,該方法包括:
定位設備的第i個接收天線接收由發射設備發送的N個信道上的子載波,其中,所述定位設備具有M個接收天線,M≥3,0<i≤M,M、N、i為正整數;
所述定位設備對所述N個信道上的子載波進行物理層的信道估計,得到所述第i個接收天線對應的所述N個信道的信道狀態;
所述定位設備根據所述第i個接收天線對應的所述N個信道的信道狀態得到所述第i個接收天線對應的所述N個信道的殘余時間;
所述定位設備根據所述第i個接收天線對應的所述N個信道的殘余時間來計算所述第i個接收天線與所述發射設備之間的距離;
所述定位設備根據所述M個接收天線與所述發射設備之間的距離對所述發射設備進行定位。
第二方面,提供了一種定位設備,包括:
接收單元,用于通過第i個接收天線接收由發射設備發送的N個信道上的子載波,其中,所述定位設備具有M個接收天線,M≥3,0<i≤M,M、N、i為正整數;
估計單元,用于對所述N個信道上的子載波進行物理層的信道估計,得到所述第i個接收天線對應的所述N個信道的信道狀態;
獲取單元,用于根據所述第i個接收天線對應的所述N個信道的信道狀態得到所述第i個接收天線對應的所述N個信道的殘余時間;
計算單元,用于根據所述第i個接收天線對應的所述N個信道的殘余時間來計算所述第i個接收天線與所述發射設備之間的距離;
定位單元,用于根據所述M個接收天線與所述發射設備之間的距離對所述發射設備進行定位。
本發明的實施例提供的定位方法和定位設備,通過多天線的定位設備的每個接收天線均接收發射設備發送的N個信道的子載波,然后對每個信道的子載波進行信道估計得到每個信道的子載波的信道狀態,通過每個信道的信道狀態計算每個信道的殘余時間,通過每個信道的殘余時間計算該接收天線與發射設備之間的距離,不需要用信號強度來進行定位,解決了現有WIFI室內定位方法定位不準確的問題。本發明實施例實現了用一個定位設備和發射設備即可實現定位,算法可以直接用于現有的設備,無需對現有設備進行改動,同時保證了方案的靈活性和算法的可靠性。
附圖說明
為了更清楚地說明本發明實施例或現有技術中的技術方案,下面將對實施例或現有技術描述中所需要使用的附圖作簡單地介紹,顯而易見地,下面描述中的附圖僅僅是本發明的一些實施例,對于本領域普通技術人員來講,在不付出創造性勞動的前提下,還可以根據這些附圖獲得其他的附圖。
圖1為本發明的實施例提供的定位系統的結構示意圖;
圖2為本發明的實施例提供的一種定位方法的流程示意圖;
圖3為本發明的實施例提供的獲取殘余時間的流程示意圖;
圖4為本發明的實施例提供的根據殘余時間計算距離的流程示意圖;
圖5為本發明的實施例提供的采用智能算法計算全局最優解的流程示意圖;
圖6為本發明的實施例提供的一種定位裝置的結構示意圖。
具體實施方式
下面將結合本發明實施例中的附圖,對本發明實施例中的技術方案進行清楚、完整地描述,顯然,所描述的實施例僅僅是本發明一部分實施例,而不是全部的實施例?;诒景l明中的實施例,本領域普通技術人員在沒有做出創造性勞動前提下所獲得的所有其他實施例,都屬于本發明保護的范圍。
參照圖1中所示,本發明實施例提供了一種定位系統,包括:發射設備11和定位設備12,發射設備11用于發射WIFI信號,定位設備12用于接收WIFI信號,并根據WIFI信號進行定位。其中,當定位設備12為終端時,發射設備為AP;當定位設備12為AP時,發射設備為終端。
本發明實施例提供的定位方法和定位設備,通過多天線的定位設備的每個接收天線均接收發射設備發送的N個信道的子載波,然后對每個信道的子載波進行信道估計得到每個信道的子載波的信道狀態,通過每個信道的信道狀態計算每個信道的殘余時間,通過每個信道的殘余時間計算該接收天線與發射設備之間的距離,不需要用信號強度來進行定位,解決了現有WIFI室內定位方法定位不準確的問題。
實施例1、
本發明實施例提供了一種定位方法,應用于上述定位系統,參照圖2中所示,該方法包括S101-S105:
S101、定位設備的第i個接收天線接收由發射設備發送的N個信道上的子載波,其中,定位設備具有M個接收天線,M≥3,0<i≤M,M、N、i為正整數。
WIFI的信道頻率包括2.4G和5G,示例性的,以WIFI的2.4G為例,共有如表1所示的13個信道,即N=13。
表1
定位設備為具有M個接收天線的多天線設備,定位設備的每個天線均接收上述N個信道上的子載波。
S102、定位設備對N個信道上的子載波進行物理層的信道估計,得到第i個接收天線對應的N個信道的信道狀態。
對于每個接收天線所接收到的N個信道,定位設備的接收機的數字處理單元會根據802.11系列協議的前導和導頻對每個信道的信道狀態進行估計,求出信道參數H。H一般表示為幅度和相位的變化關系,表達式為:
H=ae-j2πfτ
其中,a代表信號幅度,f代表子載波的頻率,τ代表電磁波傳播的時間,e代表自然對數,j代表虛數。
具體的,對于N個信道中的第k個信道,上述公式可以表示為:
其中,Hk,i為定位設備的第i個接收天線對應的N個信道中第k個信道的信道狀態,ak為第k個信道的子載波的幅度,fk為第k個信道的子載波的頻率,τk,i為第i個接收天線接收的第k個信道的子載波的傳輸時間,0<k≤N,k為正整數。
S103、定位設備根據第i個接收天線對應的N個信道的信道狀態得到第i個接收天線對應的N個信道的殘余時間。
具體的,參照圖3中所示,步驟S103包括步驟S1031-S1032:
S1031、定位設備根據第i個接收天線對應的N個信道中第k個信道的信道狀態Hk,i,得到第k個信道的殘余相位
由于正弦函數的周期性,信道狀態H中的相位部分-2πfτ也是按照2π周期性變化的。
S1032、定位設備根據第i個接收天線對應的第k個信道的殘余相位△hk,i得到第i個接收天線對應的第k個信道的殘余時間為
由于1/f等于電磁波的周期,所以單個信道的傳輸時間τ對該信道的載波周期取余即得到該信道的殘余時間。
S104、定位設備根據第i個接收天線對應的N個信道的殘余時間來計算第i個接收天線與發射設備之間的距離。
具體的,參照圖4中所示,步驟S104包括步驟S1041-S1042:
S1041、定位設備計算(L1,i,…,Lk,i,…,LN,i)的全局最優解,使N個信道的值最接近,其中,Lk,i為第i個接收天線對應的第k個信道的子載波波長的倍數并且為正整數,為根據第k個信道計算得到的第i個接收天線與發射設備之間的距離,c為光速。
對于第i個接收天線所接收的第k個信道來說,為該信道的子載波的波長,即表示在Lk,i倍個子載波波長加上該信道的殘余時間對應距離后得到的該信道子載波的傳輸距離,這樣N個信道中每個信道都會對應一個傳輸距離,而實際上這些傳輸距離應該是相等的,這樣就需要找到向量(L1,i,…,Lk,i,…,LN,i)的最優解,以滿足N個信道的值最接近。
S1042、根據(L1,i,…,Lk,i,…,LN,i)的全局最優解得到第i個接收天線與發射設備之間的距離為
對于第i個接收天線,得到向量(L1,i,…,Lk,i,…,LN,i)的最優解后,取N個信道的傳輸距離的平均值作為最終的距離。
優選的,可以采用智能算法通過第i個接收天線對應的N個信道的殘余時間計算第i個接收天線與發射設備之間的距離,智能算法可以包括:模擬退火、遺傳算法、禁忌搜索、神經網絡等多種算法,從不同的角度和策略實現了改進,用于求解全局最優解。
示例性的,當所采用的智能算法為遺傳算法時,參照圖5中所示,步驟S1041包括步驟S10411-S10417:
S10411、初始化N個正整數作為N維初始解向量(l1,i,…,lk,i,…,lN,i),其中,lk,i表示第k個信道的初始解。
S10412、設置評價函數為的方差小于預定閾值。
S10413、根據評價函數求解得到可行解向量。
S10414、從可行解中按照選擇規則選出兩組解向量作為兩組交配對象。
S10415、對兩組交配對象使用交叉規則,得出兩組交配結果。
S10416、對兩組交配結果進行變異運算得到新生兒向量。
S10417、對新生兒向量根據評價函數重新求解,直到迭代次數達到預定次數后即得到向量(L1,i,…,Lk,i,…,LN,i)的全局最優解。
S105、定位設備根據M個接收天線與發射設備之間的距離對發射設備進行定位。
具體的,定位設備可以按照三邊測量算法根據M個接收天線與發射設備之間的距離對發射設備進行定位。示例性的,以M=3為例,假設已知3個接收天線A、B和C的位置分別為A(x1,y1)、B(x2,y2)、C(x3,y3),接收天線A測量的待定位點的距離為d1,接收天線B測量的待定位點的距離為d2,接收天線C測量的待定位點的距離為d3,則分別以(x1,y1)為圓心以d1為半徑作圓,以(x2,y2)為圓心以d2為半徑作圓,以(x3,y3)為圓心以d3為半徑作圓,這三個圓的交點即為待定位點位置(x0,y0)。
本發明實施例提供的定位方法,通過多天線的定位設備的每個接收天線均接收發射設備發送的N個信道的子載波,然后對每個信道的子載波進行信道估計得到每個信道的子載波的信道狀態,通過每個信道的信道狀態計算每個信道的殘余時間,通過每個信道的殘余時間計算該接收天線與發射設備之間的距離,不需要用信號強度來進行定位,解決了現有WIFI室內定位方法定位不準確的問題。本發明實施例實現了用一個定位設備和發射設備即可實現定位,算法可以直接用于現有的設備,無需對現有設備進行改動,同時保證了方案的靈活性和算法的可靠性。
實施例2、
本發明實施例提供了一種定位設備,應用于上述定位方法,作為圖1中所示的定位設備12,參照圖6中所示,該設備包括:
接收單元1201,用于通過第i個接收天線接收由發射設備發送的N個信道上的子載波,其中,定位設備具有M個接收天線,M≥3,0<i≤M,M、N、i為正整數;
估計單元1202,用于對接收單元1201所接收的N個信道上的子載波進行物理層的信道估計,得到第i個接收天線對應的N個信道的信道狀態;
獲取單元1203,用于根據估計單元1202估計的第i個接收天線對應的N個信道的信道狀態得到第i個接收天線對應的N個信道的殘余時間;
計算單元1204,用于根據獲取單元1203所獲取的第i個接收天線對應的N個信道的殘余時間來計算第i個接收天線與發射設備之間的距離;
定位單元1205,用于根據計算單元1204所得到的M個接收天線與發射設備之間的距離對發射設備進行定位。
在一種可能的設計中,獲取單元1203具體用于:
根據第i個接收天線對應的N個信道中第k個信道的信道狀態Hk,i,得到第k個信道的殘余相位其中,ak為第k個信道的子載波的幅度,fk為第k個信道的子載波的頻率,τk,i為第i個接收天線接收的第k個信道的子載波的傳輸時間,0<k≤N,k為正整數;
根據第i個接收天線對應的第k個信道的殘余相位△hk,i得到第i個接收天線對應的第k個信道的殘余時間
在一種可能的設計中,計算單元1204具體用于:
計算(L1,i,…,Lk,i,…,LN,i)的全局最優解,使N個信道的值最接近,其中,Lk,i為第i個接收天線對應的第k個信道的子載波波長的倍數并且為正整數,為根據第k個信道計算得到的第i個接收天線與發射設備之間的距離,c為光速;
根據(L1,i,…,Lk,i,…,LN,i)的全局最優解得到第i個接收天線與發射設備之間的距離為
在一種可能的設計中,計算單元1204具體用于:
初始化N個正整數作為N維初始解向量(l1,i,…,lk,i,…,lN,i),其中,lk,i表示第k個信道的初始解;
設置評價函數為的方差小于預定閾值;
根據評價函數求解得到可行解向量;
從可行解中按照選擇規則選出兩組解向量作為兩組交配對象;
對兩組交配對象使用交叉規則,得出兩組交配結果;
對兩組交配結果進行變異運算得到新生兒向量;
對新生兒向量根據評價函數重新求解,直到迭代次數達到預定次數后即得到向量(L1,i,…,Lk,i,…,LN,i)的全局最優解。
在一種可能的設計中,定位單元1205具體用于:
按照三邊測量算法根據M個接收天線與發射設備之間的距離對發射設備進行定位。
由于本發明實施例中的定位設備可以應用于上述定位方法,因此,其所能獲得的技術效果也可參考上述方法實施例,本發明實施例在此不再贅述。
需要說明的是,估計單元、獲取單元、計算單元和定位單元可以為單獨設立的處理器,也可以集成在控制器的某一個處理器中實現,此外,也可以以程序代碼的形式存儲于控制器的存儲器中,由控制器的某一個處理器調用并執行以上估計單元、獲取單元、計算單元和定位單元的功能。這里所述的處理器可以是一個中央處理器(英文全稱:central processing unit,英文簡稱:CPU),或者是特定集成電路(英文全稱:application specific integrated circuit,英文簡稱:ASIC),或者是被配置成實施本發明實施例的一個或多個集成電路。
應理解,在本發明的各種實施例中,上述各過程的序號的大小并不意味著執行順序的先后,各過程的執行順序應以其功能和內在邏輯確定,而不應對本發明實施例的實施過程構成任何限定。
本領域普通技術人員可以意識到,結合本文中所公開的實施例描述的各示例的單元及算法步驟,能夠以電子硬件、或者計算機軟件和電子硬件的結合來實現。這些功能究竟以硬件還是軟件方式來執行,取決于技術方案的特定應用和設計約束條件。專業技術人員可以對每個特定的應用來使用不同方法來實現所描述的功能,但是這種實現不應認為超出本發明的范圍。
所屬領域的技術人員可以清楚地了解到,為描述的方便和簡潔,上述描述的系統、裝置和單元的具體工作過程,可以參考前述方法實施例中的對應過程,在此不再贅述。
在本申請所提供的幾個實施例中,應該理解到,所揭露的系統、設備和方法,可以通過其它的方式實現。例如,以上所描述的設備實施例僅僅是示意性的,例如,所述單元的劃分,僅僅為一種邏輯功能劃分,實際實現時可以有另外的劃分方式,例如多個單元或組件可以結合或者可以集成到另一個系統,或一些特征可以忽略,或不執行。另一點,所顯示或討論的相互之間的耦合或直接耦合或通信連接可以是通過一些接口,設備或單元的間接耦合或通信連接,可以是電性,機械或其它的形式。
所述作為分離部件說明的單元可以是或者也可以不是物理上分開的,作為單元顯示的部件可以是或者也可以不是物理單元,即可以位于一個地方,或者也可以分布到多個網絡單元上。可以根據實際的需要選擇其中的部分或者全部單元來實現本實施例方案的目的。
另外,在本發明各個實施例中的各功能單元可以集成在一個處理單元中,也可以是各個單元單獨物理存在,也可以兩個或兩個以上單元集成在一個單元中。
所述功能如果以軟件功能單元的形式實現并作為獨立的產品銷售或使用時,可以存儲在一個計算機可讀取存儲介質中?;谶@樣的理解,本發明的技術方案本質上或者說對現有技術做出貢獻的部分或者該技術方案的部分可以以軟件產品的形式體現出來,該計算機軟件產品存儲在一個存儲介質中,包括若干指令用以使得一臺計算機設備(可以是個人計算機,服務器,或者網絡設備等)執行本發明各個實施例所述方法的全部或部分步驟。而前述的存儲介質包括:U盤、移動硬盤、只讀存儲器(英文全稱:read-only memory,英文簡稱:ROM)、隨機存取存儲器(英文全稱:random access memory,英文簡稱:RAM)、磁碟或者光盤等各種可以存儲程序代碼的介質。
以上所述,僅為本發明的具體實施方式,但本發明的保護范圍并不局限于此,任何熟悉本技術領域的技術人員在本發明揭露的技術范圍內,可輕易想到變化或替換,都應涵蓋在本發明的保護范圍之內。因此,本發明的保護范圍應以所述權利要求的保護范圍為準。