靜止于一位置處時接收到的GPS信號集 合可包含多個數(shù)據(jù)塊。衛(wèi)星獲取模塊216可W分析每一數(shù)據(jù)塊來確定提供了 GPS信號的GPS 衛(wèi)星的數(shù)量和身份。
[0042] 在各實施例中,衛(wèi)星獲取模塊216可W使用每一數(shù)據(jù)塊中的GPS信號的每一時間子 區(qū)間(例如,每毫秒)的互相關(guān)矩陣。互相關(guān)矩陣的各行可包括不同多普勒頻率,且各列可包 括不同碼相位。因此,假定(Xk)表示使用第k毫秒信號的運樣的矩陣,貝化化)= ki, ^k)],其 中CiJ是矩陣的第Q J)個元素。
[0043] 為檢測相關(guān)尖峰,衛(wèi)星獲取模塊216可W取多個相關(guān)矩陣C(1)、C(2)、……、C(n)的 元素級絕對值的總和,并標識總和中的最高尖峰(即,峰值尖峰)。因此,給定I(Xk) I = Ici,J (k) I,衛(wèi)星獲取模塊216可W計算:
[0044]
…
[0045] 隨后,衛(wèi)星獲取模塊216可W將C的最高值(例如,Ml)與次最高值M2相比較。如果Ml〉 aM2(預(yù)定a(即,闊值差)),則衛(wèi)星獲取模塊216可W確定對應(yīng)的衛(wèi)星被獲取,且Mi的列索引可 表示碼相位。
[0046] 在獲取了來自足夠數(shù)量的GI^衛(wèi)星的數(shù)據(jù)塊時,位置計算模塊218可W計算電子設(shè) 備104的位置定位114。位置計算模塊218可W甚至在接收到的GI^信號很弱或間歇時計算位 置定位114。弱或間歇的GI^信號可能缺少可解碼定位數(shù)據(jù),如時間戳或星歷數(shù)據(jù)。相反,位 置計算模塊218可W使用粗時間導(dǎo)航技術(shù)來計算位置定位114。一般而言,粗時間導(dǎo)航可被 表達為W下方程:
[0047]
(2)
[0048] 其中Pi表示距飛行時間的距離測量(使用碼相位和參考位置),(Xl,yl,Zl)表示衛(wèi) 星i在信號離開衛(wèi)星i時的位置,(Vxl,Vyl,Vzl)表示要計算的電子設(shè)備的位置。此外,AT表示 粗時間誤差,即電子設(shè)備的時間戳與衛(wèi)星的在信號離開衛(wèi)星時的時間戳之差,且T表示公共 偏移,它是被用來測量衛(wèi)星的飛行時間的電子設(shè)備的內(nèi)部時鐘與標準時鐘之間的差異。
[0049] 因此,位置計算模塊218可W在位置定位計算中使用W下未知數(shù):a)(x,y,z),它 是電子設(shè)備104在笛卡爾坐標中的=維位置;(2)bk,塊k的內(nèi)部時鐘公共偏移;(3)ck,被分析 的整個塊集合的粗時間誤差的變量集合。在一些情況下,Ck可W用表示與整個塊集合相關(guān) 聯(lián)的粗時間誤差的變量來替換,例如在整個塊集合的開始處設(shè)置的變量。
[0050] 位置計算模塊218可W使用每一所獲取的衛(wèi)星的偽距導(dǎo)航方程來計算位置定位 114。換言之,如果在塊k中獲取了衛(wèi)星S,則位置計算模塊218可W應(yīng)用導(dǎo)航方程Ds(x,y,z, bk,Ck) = cU ? C,其中Ds是衛(wèi)星S與電子設(shè)備104之間的距離,CU是根據(jù)對應(yīng)的碼相位估計的從 衛(wèi)星S到電子設(shè)備104的信號傳播時間,且C是光速。因而,只要導(dǎo)航方程的總數(shù)大于未知數(shù) 的總數(shù),則位置計算模塊218就可計算出電子設(shè)備104的位置(x,y,z)。
[0051] 在替換實施例中,由GI^定位器108的一個或多個模塊執(zhí)行的功能可W用硬件而不 是軟件指令來實現(xiàn)。例如,一個或多個固定的硬件邏輯電路可實現(xiàn)由一個或多個模塊所執(zhí) 行的功能。
[0052] 應(yīng)用220可W允許電子設(shè)備106執(zhí)行各功能。應(yīng)用220可包括操作系統(tǒng)。操作系統(tǒng)可 包括使電子設(shè)備104能夠經(jīng)由各種輸入(例如,用戶控件、網(wǎng)絡(luò)接口、和/或存儲器設(shè)備)來接 收數(shù)據(jù)并且能夠使用處理器202來處理數(shù)據(jù)W生成輸出的組件。操作系統(tǒng)還可包括呈現(xiàn)輸 出(例如,在電子顯示器上顯示圖像、在存儲器中存儲數(shù)據(jù)、將數(shù)據(jù)發(fā)送給另一電子設(shè)備等) 的一個或多個組件。操作系統(tǒng)可W允許用戶使用用戶接口與應(yīng)用220交互W及針對應(yīng)用220 執(zhí)行任務(wù)。另外,操作系統(tǒng)可包括執(zhí)行一般與操作系統(tǒng)相關(guān)聯(lián)的各種其他功能的其他組件, 如支持存儲在存儲器208中的各模塊的執(zhí)行。
[0053] 在各實施例中,應(yīng)用220可包括使用由GPS定位器108獲得的位置定位114來執(zhí)行功 能的應(yīng)用。例如,應(yīng)用220可包括將由GPS定位器108獲得的位置定位報告給遠程應(yīng)用或服務(wù) 的位置管理應(yīng)用。遠程應(yīng)用或服務(wù)可W將位置定位與其他數(shù)據(jù)相關(guān)聯(lián),如地圖數(shù)據(jù)、電子設(shè) 備104的用戶的購物或瀏覽習(xí)慣、公司位置數(shù)據(jù),等等。在一些情況下,遠程應(yīng)用或服務(wù)可W 將與位置定位相關(guān)的內(nèi)容提供回電子設(shè)備104。該內(nèi)容可由電子設(shè)備104上的位置管理應(yīng)用 來顯示。
[0054] 在其他實施例中,應(yīng)用220可包括使GPS定位器108能夠?qū)⒂蒅PS定位器108的一個 或多個模塊所執(zhí)行的數(shù)據(jù)處理卸載到遠程計算設(shè)備的應(yīng)用。例如,該應(yīng)用可W使遠程服務(wù) 器能夠執(zhí)行由位置計算模塊218實現(xiàn)的計算。運樣的計算卸載可W減輕電子設(shè)備104的計算 需求和能耗。在運樣的示例中,該應(yīng)用可包括與遠程計算設(shè)備上的計算應(yīng)用對接的應(yīng)用程 序接口 (API)。
[0化5] 在附加實施例中,應(yīng)用220還可包括能夠基于GPS定位器108所產(chǎn)生的多個位置定 位來計算電子設(shè)備104的中間位置的位置逼近應(yīng)用。例如,位置逼近應(yīng)用可W使用測量到的 值,如電子設(shè)備104的慣性、速率、速度等等,結(jié)合一個或多個位置定位來在各位置定位之間 逼近電子設(shè)備104的位置。
[0056] 數(shù)據(jù)存儲212可W存儲由GPS定位器108的各模塊和應(yīng)用210所使用的數(shù)據(jù)。例如, 數(shù)據(jù)存儲212可W存儲由GPS定位器108獲得的數(shù)據(jù)塊222、由GPS定位器108生成的位置定位 224,等等。在其他示例中,數(shù)據(jù)存儲212可W存儲與位置定位相關(guān)聯(lián)的內(nèi)容、由位置逼近應(yīng) 用所逼近的位置,等等。
[0057] 在各實施例中,GPS定位器108和/或電子設(shè)備104上的各其他應(yīng)用被配置成在獲得 來自電子設(shè)備104的用戶的許可之后執(zhí)行位置獲取和/或基于定位的內(nèi)容供應(yīng)功能。例如, 在開始位置獲取或一系列位置獲取之前,GPS定位器108可W使用戶接口 204顯示對話框。該 對話框可向電子設(shè)備104的用戶請求許可來獲得電子設(shè)備104的位置。進而,用戶可W通過 選擇確認選項來提供許可或通過選擇對話框的取消選項來拒絕許可。W此方式,可W向用 戶128給予選擇退出位置獲取的機會。在另一示例中,在基于電子設(shè)備104的位置提供內(nèi)容 之前,應(yīng)用可W使用戶接口 204顯示向電子設(shè)備104的用戶請求許可的對話框。進而,用戶可 W通過選擇確認選項來提供許可或通過選擇對話框的取消選項來拒絕許可。通過使用運樣 的對話框,電子設(shè)備104的用戶可W保護他或她的隱私。
[0058] 盡管GPS定位器108在上文被描述為使用來自高增益有向天線的GPS信號來計算位 置定位,但GPS定位器108也可使用從全向天線獲取的GPS信號。假若使用全向天線獲取的 GPS信號具有與由高增益有向天線所提供的GI^信號相同的屬性,GPS定位器108就可W執(zhí)行 運樣的計算。此外,因為GPS定位器108使用高增益有向天線來獲取GI^信號,所WGPS定位器 108可W抗局部GF*S信號干擾。
[0059] 示例過程
[0060] 圖3和4描述了 W下各示例過程:使用電子設(shè)備的高增益有向天線W在數(shù)個時間區(qū) 間期間在多個方向上獲取來自GPS衛(wèi)星的GPS信號,并將運些GI^信號相組合W確定電子設(shè) 備的位置。每一示例過程中描述操作的次序并不旨在解釋為限制,并且任何數(shù)量的所描述 的操作可W按任何次序和/或并行組合W實現(xiàn)每一過程。此外,圖3與4中的每一個中的操作 可W用硬件、軟件和/或其組合來實現(xiàn)。在軟件的上下文中,各個操作可表示在由一個或多 個處理器執(zhí)行時使得一個或多個處理器執(zhí)行既定操作的計算機可執(zhí)行指令。該一個或多個 處理器可被包括在各個體計算設(shè)備中或被包括在例如作為云的一部分的多個計算設(shè)備中。 一般而言,計算機可執(zhí)行指令包括使得執(zhí)行特定功能或?qū)崿F(xiàn)特定抽象數(shù)據(jù)類型的例程、程 序、對象、組件、數(shù)據(jù)結(jié)構(gòu)等。在其他實施例中,每一示例過程的操作可W由硬件邏輯電路來 執(zhí)行,如專用集成電路。
[0061] 圖3是解說用于使用通過高增益有向天線獲取的多個GPS信號來確定位置的示例 過程300的流程圖。在框302,GPS定位器108可W經(jīng)由電子設(shè)備104的天線106在特定方向上 掃描GI^信號。天線106可W是可由GPS定位器108操縱W指向多個方向的高增益有向天線。 例如,天線106可W由GI^定位器108來電子地或機械地瞄準。
[0062] 在框304,GPS定位器108可W在一時間區(qū)間期間獲得來自特定方向的GPS信號。在 至少一個實施例中,時間區(qū)間可具有數(shù)百毫秒的歷時長度。由GI^定位器108獲得的GPS信號 可W是缺少可解碼定位數(shù)據(jù)(如時間戳或星歷數(shù)據(jù))的部分GPS信號。然而,運樣的GPS信號 可W提供對應(yīng)的GPS衛(wèi)星的一個或多個碼相位,如GPS衛(wèi)星102(1 )-102(N)。
[0063] 在框306,GPS定位器108可W分析GPS信號來確定提供GPS信號的GI^衛(wèi)星的數(shù)量。 換言之,GPS定位器108可W確定由GI^定位器108在