國 立 交 通 大 學
機 械 工 程 學 系
碩士論文
鎖相迴路應用於 GPS 定位系統之研究
Applying Phase Locked Loop to
Software-Defined Global Positioning System
研 究 生: 蔡鎮宇
指導教授: 陳宗麟 博士
鎖相迴路應用於 GPS 定位系統之研究
學生:蔡鎮宇 指導教授:陳宗麟 博士
國立交通大學機械工程學系 碩士班
摘要
在全球衛星定位系統中,需要接收衛星傳遞之訊號用以做定位使用,由於在 傳遞訊號時衛星與接收端之相對運動以及發射至接收訊號之時間,都會造成訊號 的頻率偏移以及訊號延遲的狀況,造成我們必須準確的鎖定訊號之頻率與其時間 延遲才有辦法順利得到定位所需資訊,因此我們利用鎖相迴路來完成此工作。 本論文首先為了分析鎖相迴路所能鎖定之頻率範圍,利用極限環方法來找出 在不同的控制器下所能鎖定之狀況,以及藉由系統轉移函數來分析如何設計系統 參數。由於希望將鎖相迴路之分析結果應用於軟體 GPS 追蹤系統,首先分析追 蹤系統中之迴圈,並且為了符合 GPS 所需之離散系統,將設計參數方法從連續 系統轉換至離散系統,最後應用於 GPS 追蹤系統。 此外為了將 GPS 系統應用於火箭,除分析衛星運動之外,也分析衛星運動 與火箭之速度與加速度對於衛星傳輸訊號之影響,在火箭速度 10 馬赫時都卜勒 頻率範圍為±21kHz,另外在火箭加速度 10G 時造成都卜勒頻率改變量可達 515.58Hz/s,最後藉由模擬找出不同的火箭移動狀況下所需要之系統共振頻率。 本論文利用 Matlab 軟體編譯 GPS 追蹤系統之演算法,並且利用分析出之設 計方法來設計系統參數,除了驗證演算法之可用性外,同時也觀察模擬結果是否 符合所設計之規格。最後為了改善 GPS 追蹤迴圈,提出藉由改變迴圈運作方式 來改善系統響應性能,並以模擬驗證。Applying Phase Locked Loop to Software-Defined
Global Positioning System
Student: Chen-Yu Tsai Advisor: Dr.Tsung-Lin Chen
Department of Mechanical Engineering National Chaio Tung University
Abstract
In Global Positioning Systems, we need to receive the signal transited by satellite for positioning. Because of the relative motion between satellite and receiver and transit time, it will cause the frequency shift and time-delay of the signal. We must lock the frequency and time-delay of the signal precisely for acquiring the information for positioning. So we need to reach the goal by using Phase Locked Loop.
This paper majors in the analysis of the frequency range which can be locked by Phase-Locked Loop, using limit cycle to understand the locking situation of different controllers, and designing system parameters by transfer function of the PLL system.
Because we hope to implement the analysis result of Phase-Locked Loop to software-defined GPS tracking system, we analyze the loops of tracking system and utilize the parameters designed method to tracking system. Besides, in order to implement the GPS system to rocket, we analyze the satellite motion, and the effect between satellite motion, rocket speed, rocket acceleration and the satellite transmit signal. The range of the Doppler frequency is about ±21kHz when rocket speed reach 10Ma,and the change of the Doppler frequency will reach 515.57Hz/s when rocket acceleration reach 10G.
Finally, we will use simulation to find the system nature frequency which is needed by different rocket moving situations. This paper using Matlab to compile the algorithm of software-defined GPS tracking system,and utilizing the designed method to design system parameters. We not only verify the feasibility of the algorithm, but also observe if the simulation results fit the designed specifications.
Finally, in order to improve GPS tracking systems, the method of changing the tracking loop is proposed in this paper, and will verified by simulation.
致謝
首先誠摯的感謝指導教授 陳宗麟博士,老師悉心的教導使我得以學習到相 關專業知識,不時的討論並指點我正確方向,使我在這些年中獲益匪淺,讓我了 解如何去面對各種問題並進行思考解決。老師對學問的嚴謹更是我學習的典範。 兩年裡的日子,實驗室裡共同的生活點滴都是非常美好的回憶,感謝眾位學 長、同學、學弟的共同砥礪,你/妳們的陪伴讓兩年的研究生活變得絢麗多彩。 感謝蔡俊胤、許齡元、張正暘、吳健彰學長們的督導與幫助,總能在我迷惘 時為我解惑,也感謝俊強、政寬、宜璇、雅惠同學的幫忙,恭喜我們順利走過這 兩年。實驗室的睿群、子成、冠豪、廷儒、博詮學弟們當然也不能忘記,你們的 幫忙我銘感在心。 女友思瑜在背後的默默支持更是我前進的動力,沒有思瑜的體諒與照顧,這 兩年的生活將是很不一樣的光景。 最後,謹以此論文獻給我摯愛的父親 蔡基礎先生與母親 劉明珠女士,感謝 他們多年來辛苦工作供我讀書,提供最好的環境與資源,讓我在學習的道路上能 順利前進,在此獻上最誠摯的感謝。目錄
摘要 ··· I ABSTRACT ··· II 致謝 ··· III 目錄 ··· IV 圖目錄 ··· VI 第一章 ··· - 1 - 緒論 ··· - 1 - 1.1 鎖相迴路回顧 ··· - 1 - 1.2 GPS 訊號處理 ··· - 2 - 1.3 文獻回顧 ··· - 4 - 1.4 研究動機 ··· - 7 - 第二章 ··· - 8 - 鎖相迴路介紹 ··· - 8 -2.1 鎖相迴路簡介(Phase Locked Loop) ··· - 8 -
2.2 鎖相迴路鎖定範圍分析 ··· - 10 -
2.3 二階鎖相迴路(Second-Order Phase Locked Loop) ··· - 12 -
2.4 系統參數設計 ··· - 14 -
-第三章 ··· - 16 -
GPS 訊號追蹤迴圈 ··· - 16 -
3.1 載波頻率追蹤迴圈(Carrier Tracking Loop) ··· - 17 -
3.2 碼追蹤迴圈(Code Tracking Loop) ··· - 18 -
3.3 完整追蹤迴圈 ··· - 20 - 3.4 追蹤迴圈推導 ··· - 21 - 第四章 ··· - 26 - GPS 應用於火箭影響 ··· - 26 - 4.1 衛星運動之分析 ··· - 26 - 4.2 衛星速度對於都卜勒頻率影響 ··· - 28 - 4.3 火箭對於都卜勒頻率之影響 ··· - 31 - 第五章 ··· - 32 - 模擬結果 ··· - 32 - 5.1 追蹤固定頻率 ··· - 32 - 5.2 設定安定時間 ··· - 36 - 5.3 追蹤變化頻率 ··· - 38 - 5.4 應用於火箭之設計 ··· - 41 - 5.5 改變迴圈以加速響應 ··· - 42 - 第六章 結論與未來方向 ··· - 44 - 6.1 結論 ··· - 44 - 6.2 未來方向 ··· - 44 - 參考文獻 ··· - 45 -
圖目錄
圖 1. 衛星訊號組成示意圖………..-2- 圖 2. GPSR 訊號處理流程………-3- 圖 3. 可變迴路增益值系統之系統流程圖………..-4- 圖 4. 頻率適應鎖相迴路系統架構………..-5- 圖 5. 頻寬適應演算法之追蹤系統………..-6- 圖 6. 基本鎖相迴路之方塊圖………..-8- 圖 7. 鎖相迴路系統模型 ……….………..-9- 圖 8. L(s)示意圖………...…………..-10-圖 9. 載波頻率追蹤迴圈(Carrier Tracking Loop) ……….……….…..-17-
圖 10. 碼追蹤迴圈(Code Tracking Loop) ………..……...-19-
圖 11. 碼追蹤迴圈之相關值………..-19- 圖 12. 完整追蹤迴圈………..-20- 圖 13. 簡化後追蹤迴圈………..-21- 圖 14. 衛星繞行地球之示意圖………..-27- 圖 15. 都卜勒速度對𝜃角作圖……….………..-29- 圖 16. 都卜勒速度改變量對角度𝜃作圖……….…………..-30- 圖 17. NCO 頻率與輸入固定頻率對時間作圖………...………..-33- 圖 18. NCO 頻率與輸入固定頻率之頻率差對時間作圖………..-33- 圖 19. NCO 頻率與輸入固定頻率之相位差對時間作圖………..-34- 圖 20. PRN 碼產生器之碼相位對時間作圖………..-34- 圖 21. PRN 碼產生器之碼相位與輸入訊號之碼相位對時間作圖………..-35- 圖 22. NCO 頻率與輸入變化頻率對時間作圖………..-38- 圖 23. NCO 頻率與輸入變化頻率之頻率差對時間作圖………..-38- 圖 24. NCO 頻率與輸入變化頻率之相位差對時間作圖………..-39- 圖 25. PRN 碼產生器之碼相位對時間作圖………...-40- 圖 26. PRN 碼產生器之碼相位與輸入訊號之碼相位對時間作圖………..-40- 圖 27. 輸入頻率變化率對共振頻率作圖………..-41- 圖 28. 改變迴圈運作方式示意圖………..-42- 圖 29. 兩種迴圈之響應時間比較………..-42- 圖 30. 改變迴圈方式之碼相位差值對時間作圖………..-42-
第一章
緒論
1.1 鎖相迴路回顧
鎖相迴路的觀念自 1930 年代由法國人 H. de Bellesize 所發明[1],到 1947 年 鎖相迴路才開始實際上的應用,如電視接收。接著到 1965 年類比積體電路發展 成功更廣為流傳,至今已有幾十年的歷史,大部分用來作為對時脈或者是頻率上 的精準控制。鎖相迴路在眾多領域皆有應用,如無線通信、廣播、電視等頻率的 調諧,或是數位產品中時脈部分的控制,皆可使用鎖相迴路來設計系統迴路。 目前的鎖相迴路,依照其發展型態大致可分為三種類別,以其實現方法的不 同來做為分類,若實現所使用的原件皆為類比原件,則分別為類比式鎖相迴路 (Analog Phase-locked Loop),若使用的原件部分為數位原件,部分為類比原件, 則分類為數位式鎖相迴路(Digital Phase-Locked Loop)、若以電腦軟體來實現鎖相 迴路,則為軟體式鎖相迴路(Software Phase-Locked Loop)。但大致上鎖相迴路的運作原理皆相同,其運作原理為藉由比較欲追蹤之訊號 與本地產生之訊號間所存在的相位差,將此相位差送入控制器後經過計算,將輸 出送至振盪器來改變本地訊號的頻率,使得兩者間之相位差逐漸縮小。當相位差 收斂到零時就完成頻率鎖定的工作。
1.2 GPS 訊號處理
一般 GPS 衛星發送出之訊號由導航訊息(Navigation Data)、測距碼、以及載 波(Carrier Wave)所組成之訊號。導航訊息是用來做為定位資訊使用,而測距碼可 以分為 C/A 碼(Coarse/Acquisition Cpde)和 P 碼(Precision Code),C/A 碼為較粗略 之電碼,開放民間使用,而 P 碼為精確之電碼,只限於軍方單位作使用。由於每 顆衛星之測距碼皆不相同,利用分別測距碼我們便可以知道訊號是哪顆衛星所傳 來的。 而載波主要是用來乘載導航訊息和測距碼,載波頻率可以分為 L1 載波和 L2 載波,在定位時所接收的是 L1 載波的部分,其頻率為 1575.42MHz,載波頻率 會設在這麼高的原因是因為頻率較高在傳遞時訊號比較不會收到干擾。C/A 碼頻 率為 1.023MHz,而導航訊息頻率為 50Hz。 圖 1. 衛星訊號組成示意圖 當本地從天線端接收到衛星所傳來之訊息時,必須經過一連串的處理流程, 如射頻前端、訊號擷取、訊號追蹤、解碼導航訊息,最後才有辦法達到定位的效 果,下面簡介 GPSR(Global Positioning System Receiver)之處理流程。
GPS 在射頻前端的部分會包含天線與射頻裝置,射頻前端目的主要在於降頻 與取樣,由於從衛星發射出來之載波頻率為 1575.42MHz,需要先將頻率做降頻 的動作,本論文的模擬環境設定取樣頻率為 16.368MHz,且降頻後的中頻訊號頻 率為 4.092MHz。 在經過降頻的處理之後進入訊號擷取(Acquisition),由於衛星繞行地球轉動, 與地球上之接收端存在著相對移動,因此訊號會受到都卜勒效應(Doppler Effect) 影響導致頻率偏移,且 GPS 訊號從衛星發射至接收端需要傳輸時間,造成 C/A 碼延遲,若想要得到訊號中導航訊息需要得到精確的載波頻率與 CA 碼相位來進 行解調,因此訊號擷取主要目的在於尋找輸入訊號的粗略的載波頻率與 CA 碼相 位。一般來說,經過訊號擷取步驟後能夠將估計之頻率與原訊號頻率差縮小至 ±100Hz內,而碼相位的部分能使差值縮小至 1 個 Chip 內。 之後將訊號擷取所得到的頻率與碼相位送至追蹤迴圈作為初使值,進行訊號 追蹤(Tracking)部分。訊號追蹤的主要目的在於對齊 CA 碼和鎖定載波頻率,並解調 出導航訊息以供定位,訊號追蹤透過兩個迴路來達到鎖定的效果,分別為載波追蹤 迴路與碼追蹤迴圈,此兩種迴圈皆是以鎖相迴路的概念與模型做設計。 經訊號追蹤後便可得到定位所需要的導航訊息,再經過檢查與處理後便可將此 用於解出用戶端位置與定位之途。 圖 2. GPSR 訊號處理流程
1.3 文獻回顧
有關於改善鎖相迴路性能方面有很多處可以著手,首先像是在縮短系統之響 應時間部分,S.Wanchana,T.Benjanarasuth,N.Komine,J.gamwiwit 在“Feedforward Adaptive Phase-Locked Loop for Process Control Systems”中提出利用欲追蹤之訊 號與振盪器輸出訊號兩者之間的差值來改變迴路的增益值[2]。 圖 3.為該篇論文所提出的可變迴路增益值系統之系統流程圖,經相位檢測器 比較出差值後送至迴路濾波器,之後計算出控制輸出後一方面傳至振盪器改變頻 率,而另一部分回授至 SLPC-151*E 控制器,在此控制器內會經過比較差值之大 小來改變 Adaptor 之增益值,其改變公式為 Kad = 1 + 𝐾𝑓𝜀 其中Kad為 Adaptor 之增益值,𝜀即為差值部分,當差值𝜀越大時,Kad值就越 大,由於系統之迴路增益值增大,會使得系統之響應速度變快;而最後當𝜀漸漸 地趨近於零時,Kad值會趨近於 1,不會因為將迴路增益值放的過大而使誤差值 增大。 圖 3.可變迴路增益值系統之系統流程圖
另外也有用於改善鎖定會有輸入頻率改變或者是輸入相位跳動之狀況,由 S. Shinnaka 所發表的 A New Frequency-Adaptive Phase-Estimation Method Based on a New PLL Structure for Single-Phase Signals 中提出一種新的鎖相迴路架構來 估測頻率與相位。[3]
圖 4. 頻率適應鎖相迴路系統架構
上圖為該篇論文所提出之架構,由 Two-phase signal generator 接收輸入訊號
後產生兩訊號,分別為領先(或落後)輸入訊號 90 度之vα,以及與輸入訊號同相 位之vβ,兩訊號產生方式為通過穩定的濾波器,如下 其中 為經由 Phase synchronizer 回授而得。 再經過 Vector Rotator 產生相位差之正弦與餘弦值,即為圖中之𝑅𝑇(𝜃̂ 𝛼)部分 [ννγ δ] = [ 𝑐𝑜𝑠𝜃̂𝛼 −𝑠𝑖𝑛𝜃̂𝛼 𝑠𝑖𝑛𝜃̂𝛼 𝑐𝑜𝑠𝜃̂𝛼 ] 𝑇 [νν𝛼 β] = [ Vcos(ωαt + ϕα− 𝜃̂𝛼) Vsin(ωαt + ϕα− 𝜃̂𝛼) ]
其中𝜃̂𝛼同樣為經由 Phase synchronizer 回授而得。經過鍵相器與 Phase
synchronizer 後便可計算出估測之頻率與相位值,再將估測之頻率與相位值回授 至迴圈中來改變系統。藉由每次迴圈回授來調整系統特性,使系統能夠更能適應 較為複雜之狀況。
此外,也有將鎖相迴路系統應用於 GPS 追蹤系統之文獻。由 Ping Lian,Gerard Lachapelle 所提出的 Improving Tracking Performance of PLL in High Dynamics Applications 中,利用相位檢測器之輸出調整控制器之頻寬。[4] 圖 5. 頻寬適應演算法之追蹤系統 上圖為作者所提出的頻寬適應演算法追蹤系統,一般在設計鎖相迴路時都是 選擇最大的頻寬,例如在不同的輸入頻率下需要的最小頻寬也不同,若頻寬範圍 為 20 至 40Hz,則直接選擇 40Hz 讓在所有的範圍中系統皆可鎖定。此架構依照 相位檢測器之輸出量來調整迴圈濾波器之頻寬,當差值較大時放大頻寬,使得系 統之響應速度得以加快,而當差值逐漸縮小後降低頻寬,使系統雜訊降低。藉由 此方法來使系統在不同的時間點有不同的特性,達到加速響應的效果。 但若衛星輸入訊號之雜訊過大時,此方法改善效果會較為不顯著,因為一開 始會先將系統之頻寬給放大,使系統過濾高頻的能力下降,雜訊的成分過多會使 得系統響應變差,更甚失去鎖定之功能。
1.4 研究動機
我們希望能夠藉由分析鎖相迴路系統之轉移函數,來找出設計系統內之參數 的方法,以便於使系統能夠符合規格所需要的。此外由於我們想要把 GPS 系統 應用在火箭上,相較於一般應用在生活用途中,如手機或是汽車導航,速度遠遠 比不上衛星移動速度,因此平常在分析 GPS 系統時都是將接收端視為固定點。 但火箭之速度與加速度快上許多,在分析時必須要把火箭運動狀況給考慮進去。 因此我們會分析並且去作推導來得知當 GPS 應用在火箭上時因火箭而造成之影 響量為何。 此外,由於衛星與接收端的位置不斷地在做改變,若接收端之處理訊號速度 過慢會使得 GPS 準確度下降,假若我們處理迴圈需要五分鐘,那我們在順利處 理完訊息後得到的資訊早就是五分鐘前的事情了。因此我們也需找尋方法使得系 統之響應時間能夠相對的縮短,以期能更快達成定位的效果。第二章
鎖相迴路介紹
2.1 鎖相迴路簡介(Phase Locked Loop)
在 GPS 訊號追蹤迴圈中,載波追蹤迴圈與碼追蹤迴圈皆是以鎖相迴路為架 構,這邊先對鎖相迴路做簡介。圖 6.為基本的鎖相迴路之方塊圖,所有的鎖相迴 路皆由此三部分構成,首先由振盪器產生訊號與原輸入訊號來做比較,在一般類 比式的鎖相迴路中是使用壓控振盪器(Voltage Controlled Oscillator, VCO),其產生 訊號之頻率藉由改變電壓來控制其輸出。 而在數位式的鎖相迴路中則是使用數值控制振盪器(Numerically Controlled Oscillator, NCO)來做為振盪器。再來經過相位檢測器產生一訊號,此訊號會與原 輸入訊號和振盪器所輸出之訊號兩者間之相位差成正比。最後,經由迴路濾波器 藉由相位檢測器之輸出計算出控制輸出送至振盪器,使振盪器改變其頻率,進而 達到鎖定之目的。 圖 6. 基本鎖相迴路之方塊圖
下面推導鎖相迴路之轉移函數[5]。首先令輸入訊號之相位為 𝜃𝑖(𝑡) = 𝜔𝑡 + 𝜃0,𝜔為輸入訊號之頻率。首先振盪器接收到控制輸入後改變其頻率 𝜔𝑣 = 𝜃̇𝑣 = 𝜔0+ 𝑘𝑣𝑢 (2.1) 其中𝜔0為振盪器之起始自然頻率,𝑘𝑣為振盪器之增益值。振盪器之相位的 部份我們可以從將式(2.1)做積分後得到 𝜃𝑣 = ∫(𝜔0+ 𝑘𝑣𝑢)𝑑𝑡 = 𝜔0t + 𝑘𝑣∫ 𝑢 𝑑𝑡 (2.2) 其中𝜃𝑓(𝑡) = 𝜃𝑣− 𝜔0𝑡 = 𝑘𝑣∫ 𝑢 𝑑𝑡,接著我們將𝜃𝑓作拉普拉斯轉換(Laplace Transform)後可以得到
Θ
𝑓(s) = 𝑘
𝑣𝑈(𝑠) ×
1 𝑠→
Θ𝑓(s) 𝑈(𝑠)=
𝑘𝑣 𝑠 (2.3) 可以從上式中發現振盪器之轉移函數為一積分器,因此我們便可以整理出鎖 相迴路之系統轉移函數為𝐻(𝑠) =
𝛩𝑓(𝑠) 𝛩𝑖(𝑠)=
𝑘𝑑𝐹(𝑠)𝑘𝑣⁄𝑠 1+𝑘𝑑𝐹(𝑠)𝑘𝑣⁄𝑠=
𝑘𝑑𝑘𝑣𝐹(𝑠) 𝑠+𝑘𝑑𝑘𝑣𝐹(𝑠) (2.4) 其中𝑘𝑑為相位檢測器之增益值,而𝐹(𝑠)則為迴路的濾波器,此濾波器會決定 整個鎖相迴路的階數以及其特性。 圖 7. 鎖相迴路系統模型2.2 鎖相迴路鎖定範圍分析
由 Jacob Tal 所發表的 On the Pull-In Range of Phase-Locked Loops 中提出,可 以利用極限環方法來求出鎖相迴路能夠鎖定之範圍[6]。 將圖 7.中之迴路濾波器與振盪器之轉移函數結合表示為 𝐿(𝑠) = 𝐹(𝑠) 𝑠 = 𝐺(𝑠) 𝑠𝑚 其中 m 值由濾波器之階數來決定,當濾波器無積分項時,m 值為 1,若有ㄧ 次積分則 m 值為 2,示意圖如下圖 圖 8. L(s)示意圖 圖中之 x 為相位檢測器之輸出,可以表示為 = (1 2) 𝑠𝑖𝑛 + 𝑠𝑖𝑛 𝑡 而θf為振盪器所輸出之相位值,可以表示為 𝜃𝑓 = 𝜃1− 𝑡 − 𝑠𝑖𝑛( 𝑡 + ) 由於L(s)為線性,因此我們可以將𝜃𝑓之前兩項視為 x 之前一項經過L(s)而得, 而𝜃𝑓之後一項為 x 之後一項經過L(s)而得。因此我們可以得知,把 x 之前項經過 G(s)所得到的 z 會等於𝜃𝑓做 m 次的微分後所得到的 z,由此可以推導出 −1 2𝐼( )𝐺(0)𝐾𝑣 = 𝑑𝑚 𝑑𝑡𝑚(𝜃1− 𝑡)
藉由上式我們便可以求出在使用不同的濾波器時,鎖相迴路所能鎖定之範圍。 首先看到使用 Active Lag Filter 的狀況下,Active Lag Filter 可表示為
𝐹(𝑠) =𝑠 + 𝑠 + 1 因此我們可以將 L(s)整理為 𝐿(𝑠) = 𝐾𝑣(𝑠 + ) 𝑠(𝑠 + 1) 其中𝐾𝑣為振盪器增益值,而 m 值為 1。𝐼( )為𝐿(𝑠)之虛部部分,可表示為 𝐼( ) = − Ω + 1 Ω(Ω + 1 ) 將𝐼( )代入上式後經整理可以得到 2 −
(
𝜔 − 𝜔 0)
+(
𝐾)
2 2 2 1 = 0 → =(
𝜔 − 𝜔0)
2 −(
𝐾)
2 2 2 1 由上式可以看出,當頻率差𝜔 − 𝜔0大於後項之根號值時, 會存在實數解, 即代表當系統進入穩態時會存在頻率差,沒有辦法使頻率差值為 0。接著我們看 到若使用 PI 控制器之狀況,PI 控制器可表示為 𝐹(𝑠) = 𝑠 + 1 1𝑠 同樣經由上述方式來推導後可以得到 𝐾𝑣 2Ω= 0 由上式可以看出沒有任何Ω能夠滿足上式,因此不存在 Limit Cycle。由上述 分析之後我們可以發現,若是我們使用 PI 控制器做為系統之迴圈濾波器,則理 論上鎖相迴路沒有鎖定範圍之限制。 因此在本論文中皆使用 PI 控制器來做為我們的迴路濾波器。2.3 二階鎖相迴路(Second-Order Phase Locked Loop)
在本論文中所使用的鎖相迴路皆為二階鎖相迴路,當中的迴路濾波器所使用 的是 PI 控制器,其轉移函數可以表示為𝐹(𝑠) =
𝑠+1 𝑠(2.5) 若將 PI 控制器之轉移函數代入式(2.4),可以得到系統之開路轉移函數為
𝐺(𝑠) = 𝑘
𝑑𝑘
𝑣(
𝑠+1 𝑠)
(2.6) 而系統之閉迴路轉移函數則為𝐻(𝑠) =
𝛩𝑓(𝑠) 𝛩𝑖(𝑠)=
𝑘𝑑𝑘𝑣 𝑠+𝑘𝑑𝑘𝑣=
𝑠+ 𝑠 + 𝑠+(2.7) 其中
𝜔
𝑛= √
𝑘𝑑𝑘𝑣, 𝜉 =
(2.8) 式(2.8)中之𝜔𝑛為系統共振頻率,而 𝜉 則為系統之阻尼。而誤差轉移函數(Error Transfer Function)可以從式(2.7)推得
H
e(𝑠) =
𝛩𝑖(𝑠)−𝛩𝑓(𝑠) 𝛩𝑖(𝑠)= 1 − 𝐻(𝑠) =
𝑠 𝑠 + 𝑠+ (2.9) (𝑠) = 𝜃𝑖(𝑠) − 𝜃𝑓(𝑠) = 𝜃𝑖(𝑠)𝐻 (𝑠) (2.10) 由上式與終值定理便可以推導出系統之穩態誤差(Steady-State Error, ess )為 𝑠𝑠 = i → (𝑡) = i 𝑠→0𝑠 (𝑠) (2.11)我們可以從系統之開路轉移函數來判斷出此鎖相迴路系統為形式 2 系 統(Type 2 System),形式 2 系統對於輸入為步階或是斜坡函數時,其穩態誤 差為 0。而當輸入為拋物線函數,此時系統會存在穩態誤差。接著下面推導 在不同的輸入訊號狀況下系統存在的穩態誤差量。 首先當輸入訊號為一固定頻率之訊號時,可將頻率與相位表示為 𝜔𝑖(𝑡) = 𝜔0 ⇒ 𝜃𝑖(𝑡) = ∫ 𝜔0𝑑𝑡 = 𝜔0𝑡 (2.12) 由上式可以看到當輸入訊號為一固定頻率之訊號,此時輸入為一斜坡函數, 接著將式(2.12)做拉普拉斯轉換後並帶入式(2.10)中可以得到
(𝑠) = 𝜃
𝑖(𝑠)𝐻
(𝑠) = (
𝑠) (
𝑠 𝑠 + 𝑠+) =
𝑠 + 𝑠+ (2.13) 𝑠𝑠 = i 𝑠→0𝑠 (𝑠) = i 𝑠→0( ω0𝑠 𝑠 + 2𝜉𝜔𝑛𝑠 + 𝜔𝑛 ) = 0 經過上述推導可以發現,當輸入訊號為一固定頻率之訊號,此時系統之穩態 誤差量為 0。 而當輸入訊號之頻率會隨時間作變化時,我們將頻率與相位表示為 𝜔𝑖(𝑡) = 𝜔0+ 𝜔̇0𝑡 ⇒ 𝜃𝑖(𝑡) = ∫ 𝜔𝑖𝑑𝑡 = 𝜔0𝑡 +1𝜔̇0𝑡 (2.14) 可以發現當輸入訊號之頻率會隨時間作變化時,輸入會變為一拋物線函數, 同樣將式(2.14)做拉普拉斯轉換後並帶入式(2.10)中可以得到(𝑠) = 𝜃
𝑖(𝑠)𝐻
(𝑠) = (
𝑠+ ̇ 𝑠)
𝑠 𝑠 + 𝑠+=
𝑠+ ̇ 𝑠(𝑠 + 𝑠+ ) (2.15) 𝑠𝑠= i
𝑠→0𝑠 (𝑠) = i
𝑠→0𝑠+ ̇ (𝑠 + 𝑠+ )
=
̇ (2.16) 經過推導後我們可以得知,當輸入訊號之頻率會隨時間作變化時,系統會存 在穩態誤差。2.4 系統參數設計
在二階鎖相迴路中,PI 控制器的參數設計會影響整個系統的特性。我們可 以利用安定時間(ts)的公式來做控制器的參數設計[7]。根據系統響應的函數,響 應的速率會依 1 𝜉𝜔⁄ 𝑛之值而定,因此定義訊號的時間常數 T = 1 𝜉𝜔⁄ 𝑛。因此,若 終值響應容許誤差為±1%,則安定時間 ts為t
s≅
4.6 (2.17) 其中將 𝜉 設為 0.707,我們可以藉由設定需要的安定時間來決定系統之共振 頻率。決定共振頻率後便可將式(2.8)經整理後可以用來決定 PI 控制器之參數 1以 及 此二參數值1
=
𝑘𝑑𝑘𝑣,
=
(2.18)
2.5 連續系統與離散系統
上述之分析皆是在連續時間的狀況下做推導,但是我們想要將此分析應用在 GPS 的系統設計上,由於 GPS 在處理訊號時,一次需要處理包含一整段完整 C/A 碼的訊號,因此我們必須要將系統轉換至離散時間的狀況下。因此我們將需將迴 圈中之低通濾波器與 PI 控制器轉至離散時間的形式。利用 Forward Euler Integration Rule 我們可以得知,要將系統從 S-domain 轉 換至 Z-domain,可以利用下式來做轉換
1 𝑠
=
1
將上式代入低通濾波器與 PI 控制器之轉移函數之後我們可以得到
𝐿( ) =
−(1− 𝑇 𝑇 ),
𝐹( ) =
+
( −1)𝑇(2.20) 上面即為低通濾波器與 PI 控制器在離散時間形式下之函數。我們將連續時 間形式與離散時間形式之鎖相迴路一起來進行模擬做比較,其中兩者之系統參數 設計皆一致,觀察在兩種不同狀況下響應有何不同,模擬結果如下 可以發現在使用相同的系統參數狀況下,兩種形式之模擬結果幾乎是相同的。 因此,為了方便我們設計,可以先在 S-domain 上做分析以及參數的設計。最後 在將系統轉換至 Z-domain,也就是離散時間形式下,來方便我們將鎖相迴路系 統應用於 GPS 系統上。
第三章
GPS 訊號追蹤迴圈
在此章中我們將介紹 GPS 訊號追蹤部分的系統,首先會簡介各迴圈運作方 式,接著進行推導。 一般 GPS 衛星發送出之訊號由導航訊息(Navigation Data)、測距碼、以及載 波(Carrier Wave)所組成之訊號,可表示如下: 𝑆(𝑡) = 𝐷(𝑡)𝐶(𝑡) cos(𝜔𝑡) (3.1) 其中𝐷(𝑡)為導航訊息(Navigation Data)部分,導航訊息包含了位置座標、軌 道資料、時間系統和…等訊息,藉由追蹤迴圈來對衛星輸出訊號作解調,得到導 航訊息後便可用來做為定位之用。而𝐶(𝑡)為測距碼的部分,在此處我們用的是 C/A 碼(Coarse/Acquisition Code),C/A 碼可以讓我們判斷出訊號是由哪一顆衛星 所發送的。而cos(𝜔𝑡)即為載波,當中載波頻率由於受到衛星繞地球轉動,產生 都卜勒效應,因此載波頻率𝜔為中頻頻率加上都卜勒頻率(Doppler Frequency)。整個 GPS 中的追蹤迴圈(Tracking Loop)可分為兩個部分: (1) 載波追蹤迴圈(Carrier Tracking Loop):用以追蹤載波頻率
(2) 碼追蹤迴圈(Code Tracking Loop) ):用以追蹤 C/A 碼之 Code Phase 下面就這兩個迴圈做介紹。
3.1 載波頻率追蹤迴圈(Carrier Tracking Loop)
載波頻率迴圈(Carrier Tracking Loop)在整個追蹤迴圈中是用來追蹤輸入衛 星訊號之頻率部分,此頻率會包括中頻頻率 4.092MHz,以及都卜勒頻率。下面 介紹載波頻率迴圈運作方式。
圖 9. 載波頻率追蹤迴圈(Carrier Tracking Loop)
圖 9.為載波頻率追蹤迴圈,接收到之衛星輸出訊號 𝑆(𝑡)經過乘上由碼追蹤迴 圈(Code Tracking Loop)送來對齊的 C/A 碼後,可以移除掉輸入訊號中之 C/A 碼。
𝑆(𝑡)𝐶̂(𝑡) = 𝐷(𝑡)𝐶(𝑡)𝐶̂(𝑡) cos(𝜔𝑡) = 𝐷(𝑡) cos(𝜔𝑡) 再來乘上由 NCO 回傳之訊號,此訊號頻率為經過迴圈計算後所得之頻率, 分為 sin 和 cos 兩部分,分別與解調後之輸入訊號作相乘後可得 𝐼(𝑡) = 𝐷(𝑡) 𝑐𝑜𝑠(𝜔𝑡) 𝑐𝑜𝑠(𝜔𝑡 + 𝜔𝑡) = 𝐷(𝑡) ×1 2 𝑐𝑜𝑠(2𝜔𝑡 + 𝜔𝑡) + 𝑐𝑜𝑠 ( 𝜔𝑡) 𝑄(𝑡) = 𝐷(𝑡) 𝑐𝑜𝑠(𝜔𝑡) 𝑠𝑖𝑛(𝜔𝑡 + 𝜔𝑡) = 𝐷(𝑡) ×1 2 𝑠𝑖𝑛(2𝜔𝑡 + 𝜔𝑡) − 𝑠𝑖𝑛 ( 𝜔𝑡)
得到 I 與 Q 之後送入低通濾波器(Low Passed Filter)濾除高頻項後可得 𝐼𝐿(𝑡) = 𝐷(𝑡) ×12𝑐𝑜𝑠 ( 𝜔𝑡) 𝑄𝐿(𝑡) = 𝐷(𝑡) ×12𝑠𝑖𝑛 ( 𝜔𝑡) 再將IL與QL送入鑑相器(Discriminator)後便可得到相位差值 𝜃 = 𝑎𝑟𝑐𝑡𝑎𝑛 ( 𝐷(𝑡) × 1 2 𝑠𝑖𝑛( 𝜔𝑡) 𝐷(𝑡) ×12 𝑐𝑜𝑠( 𝜔𝑡)) = 𝑎𝑟𝑐𝑡𝑎𝑛 ( 𝑠𝑖𝑛( 𝜔𝑡) 𝑐𝑜𝑠( 𝜔𝑡)) = arctan(𝑡𝑎𝑛( 𝜔𝑡)) = 𝜔𝑡
將此相位差值送入 Carrier Loop Filter 後可算出對應之值改變 NCO 之頻率, 進而使 NCO 輸出之頻率接近並且鎖定輸入衛星訊號之頻率。
3.2 碼追蹤迴圈(Code Tracking Loop)
由於接收到衛星傳來之訊號時不一定是從起頭開始,且 GPS 訊號從衛星發 射至接收端需要傳輸時間,造成 C/A 碼延遲。因此我們必須要分辨出 C/A 碼的 開頭在何處,而此起頭處即稱為碼相位(Code Phase),例如一個 C/A 碼的長度是 1023 個 Chips,若碼相位為第 5 個 Chip,則 C/A 碼順序為 1020、1021、1022、 1023、1、2、…。而碼追蹤迴圈(Code Tracking Loop)就是用來追蹤 C/A 碼之碼 相位部份,抓到 C/A 碼的碼相位才有辦法將衛星輸出訊號內之 C/A 碼部分消除, 以解出導航訊息供定位使用。下面介紹碼追蹤迴圈如何鎖定碼相位。
圖 10. 碼追蹤迴圈(Code Tracking Loop)
圖 10.為碼追蹤迴圈。首先輸入訊號先乘上由 NCO 回傳訊號之 sin 和 cos 兩 部分,得到 I 與 Q 之後分別乘上由 PRN 碼產生器(PRN Code Generator)所產生之 超前碼(Early Code)、即時碼(Prompt Code)、延遲碼(Late Code)三個部份,其中超 前碼與延遲碼分別為及時碼往前和往後移 0.5 個 Chips,之後比較相乘過後的超 前碼與延遲碼的相關值差值來決定下次迴圈 C/A 碼的頻率,藉由調整 C/A 碼的 頻率來改變下次迴圈的起頭,減少 C/A 碼開頭的誤差並達到鎖定的效果。圖 11. 為碼追蹤迴圈之相關值,在(a)中即時碼與輸入訊號之 C/A 碼對齊時,可以看到 兩者間的相關值會是最高;在(b)中延遲碼之相關值最高,此時需要降低 C/A 碼 頻率來移動起頭,使即時碼對齊 C/A 碼。 圖 11. 碼追蹤迴圈之相關值
3.3 完整追蹤迴圈
完整的追蹤迴路即包含上面所介紹的載波頻率追蹤迴圈和碼追蹤迴圈兩個 部分。圖 12.為完整追蹤迴圈圖,上半部虛線框為碼追蹤迴圈部份,下半部虛線 框則為載波追蹤迴圈部份。訊號經由碼追蹤迴圈來追蹤碼相位後,由 PRN 碼產 生器產生與原始訊號相同之即時碼送至載波頻率追蹤迴圈以解調訊號內之 C/A 碼;同時訊號也會經由載波頻率追蹤迴圈內之 NCO 鎖定並輸出與衛星輸出訊號 相同頻率之訊號,送至碼追蹤迴圈使迴圈得以順利鎖定解出導航訊息。 圖 12. 完整追蹤迴圈 由圖 12.可以得知,在此完整的追蹤迴圈內需要 11 個乘法器來處理訊號,而 在迴圈裡,這些乘法器通常是最花時間的部分。因此有了圖 13.此種經過簡化後 的追蹤迴圈,將碼追蹤迴圈所產生之IP以及QP送至載波追蹤迴圈作使用,省去了 載波追蹤迴圈裡面的三個乘法器,使得整體計算時間下降,下面將進行詳細推導, 並在第五章模擬結果中以此架構來進行模擬。圖 13. 簡化後追蹤迴圈
3.4 追蹤迴圈推導
一開始衛星輸出訊號由導航訊息、C/A 碼、和載波所組成 𝑆(𝑡) = 𝐷(𝑡)𝐶(𝑡) 𝑐𝑜𝑠(𝜔𝑡) = 𝐷(𝑡)𝐶(𝑡) 𝑐𝑜𝑠(𝜔𝐼𝐹𝑡 + 𝜔𝐷𝑡) (3.2) 其中𝜔𝐼𝐹為中頻頻率 4.092MHz,𝜔𝐷為都卜勒頻率(Doppler Frequency),而導 航訊息部份,由於一次迴圈所處理的訊號長度 1msec,而導航訊息長度為 20msec, 因此在推導時可以先將導航訊息視為常數。一開始先乘上由 NCO 回傳訊號之 sin 和 cos 兩部分,經積化和差整理後
I(t) = D(t)C(t) ×1 cos(2ωIFt + ωt) + cos ( ωt) (3.3)
Q(t) = D(t)C(t) ×1 sin(2ωIFt + ωt) − sin ( ωt) (3.4)
接著進行計算相關值的動作,將 I 與 Q 分別乘上超前碼、即時碼、以及延遲 碼並作加總,便可以得到IE、IP、IL、QE、Q𝑃、Q𝐿等六個相關值。下面式子為 I 與 Q 乘上由 PRN 碼產生器輸出之超前碼(E)、即時碼(P)、以及延遲碼(L)三部分。
I(t) × E = 1D(t)C(t)Ĉ(t − τ)(cos ωhight + cos ωt) (3.5) 𝑄(𝑡) × 𝐸 = 1𝐷(𝑡)𝐶(𝑡)𝐶̂(𝑡 − )(𝑠𝑖𝑛 𝜔ℎ𝑖𝑔ℎ𝑡 − 𝑠𝑖𝑛 𝜔𝑡) (3.6) I(t) × P =1𝐷(𝑡)𝐶(𝑡)𝐶̂(𝑡)(𝑐𝑜𝑠 𝜔ℎ𝑖𝑔ℎ𝑡 + 𝑐𝑜𝑠 𝜔𝑡) (3.7) 𝑄(𝑡) × 𝑃 =1𝐷(𝑡)𝐶(𝑡)𝐶̂(𝑡)(𝑠𝑖𝑛 𝜔ℎ𝑖𝑔ℎ𝑡 − 𝑠𝑖𝑛 𝜔𝑡) (3.8) I(t) × L =1𝐷(𝑡)𝐶(𝑡)𝐶̂(𝑡 + )(𝑐𝑜𝑠 𝜔ℎ𝑖𝑔ℎ𝑡 + 𝑐𝑜𝑠 𝜔𝑡) (3.9) 𝑄(𝑡) × 𝐿 = 1𝐷(𝑡)𝐶(𝑡)𝐶̂(𝑡 + )(𝑠𝑖𝑛 𝜔ℎ𝑖𝑔ℎ𝑡 − 𝑠𝑖𝑛 𝜔𝑡) (3.10) 其中𝜔ℎ𝑖𝑔ℎ = 2𝜔𝐼𝐹+ 𝜔,即為高頻項;𝐶̂(𝑡)為即時碼,而𝐶̂(𝑡 − )和𝐶̂(𝑡 + ) 分別為超前碼以及延遲碼, 為兩者與即時碼之間的時間差值。 接著將上面得到的式子作加總,此加總之公式我們可以利用積分來作表示。 假設輸入 𝑋(𝑆)經過積分後可以得到輸出𝑌(𝑆)
𝑌(𝑆) 𝑋(𝑆)
=
1 𝑆→ S𝑌(𝑆) = 𝑋(𝑆)
ℒ−→ 𝑦̇(𝑡) = (𝑡) (3.11)
將上式轉為離散時間形式可得 𝑦(𝑛 + ) − 𝑦(𝑛 ) = x(nT) ⇒ y 𝑛 = 𝑦 𝑛 − 1 + 𝑛 − 1 (3.12) ⇒ y 𝑘 = 𝑦 0 + ∑ 𝑖由式(3.12)可以看到最後一個加總項即為輸入值之總和,因此在離散狀況下 作加總就等於在連續時間的狀況下作積分的動作後除以取樣時間。所以此處我們 用積分來表示加總 IE= ∑ [1 2𝐷(𝑡)𝐶(𝑡)𝐶̂(𝑡 − )(𝑐𝑜𝑠 𝜔ℎ𝑖𝑔ℎ𝑡 + 𝑐𝑜𝑠 𝜔𝑡)] (3.13) = ∑ (1 2𝐷(𝑡)𝐶(𝑡)𝐶̂(𝑡 − ) 𝑐𝑜𝑠 𝜔ℎ𝑖𝑔ℎ𝑡) + ∑ ( 1 2𝐷(𝑡)𝐶(𝑡)𝐶̂(𝑡 − ) 𝑐𝑜𝑠 𝜔𝑡) = 1 2 ∫(𝐷(𝑡)𝐶(𝑡)𝐶̂(𝑡 − ) 𝑐𝑜𝑠 𝜔ℎ𝑖𝑔ℎ𝑡 𝑑𝑡) + 1 2 ∫(𝐷(𝑡)𝐶(𝑡)𝐶̂(𝑡 − ) 𝑐𝑜𝑠 𝜔𝑡 𝑑𝑡) 接著利用代數變換法整理上式,首先令𝑢 = 𝑠𝑖𝑛 𝜔ℎ𝑖𝑔ℎ𝑡,將 u 對時間作微分 ⇒𝑑𝑢 𝑑𝑡 = 𝜔ℎ𝑖𝑔ℎ(𝑐𝑜𝑠 𝜔ℎ𝑖𝑔ℎ𝑡) ⇒ 𝑐𝑜𝑠 𝜔ℎ𝑖𝑔ℎ𝑡 × 𝑑𝑡 = 𝑑𝑢 𝜔ℎ𝑖𝑔ℎ 同理也可將後面一項作同樣地處理後可以得到 IE= 1 2 ∫(𝐷(𝑡)𝐶(𝑡)𝐶̂(𝑡 − ) 𝑐𝑜𝑠 𝜔ℎ𝑖𝑔ℎ𝑡 𝑑𝑡) + 1 2 ∫(𝐷(𝑡)𝐶(𝑡)𝐶̂(𝑡 − ) 𝑐𝑜𝑠 𝜔𝑡 𝑑𝑡) =2 𝜔1 ℎ𝑖𝑔ℎ∫(𝐷(𝑡)𝐶(𝑡)𝐶̂(𝑡 − ) 𝑑𝑢) + 1 2 𝜔∫(𝐷(𝑡)𝐶(𝑡)𝐶̂(𝑡 − ) 𝑑𝑢) 由於 𝜔ℎ𝑖𝑔ℎ為兩倍的中頻頻率加上頻率差,遠大於 𝜔,因此前面項會遠小 於後面項,可以將前項給忽略後整理為 IE = ∑ (1𝐷(𝑡)𝐶(𝑡)𝐶̂(𝑡 − ) 𝑐𝑜𝑠 𝜔𝑡) (3.14) 由上式可以看出來原本式(3.13)中之高頻項的部分消失,利用加總的動作來 做到低通濾波器的效果。接著在引入期望值來繼續整理 IE IE = ∑ (1 2𝐷(𝑡)𝐶(𝑡)𝐶̂(𝑡 − ) 𝑐𝑜𝑠 𝜔𝑡) = 𝐸 [∑ ( 1 2𝐷(𝑡)𝐶(𝑡)𝐶̂(𝑡 − ) 𝑐𝑜𝑠 𝜔𝑡)] 由於加總之期望值會等於各期望值加總,由於 𝐶(𝑡)𝐶̂(𝑡 − )與 𝑐𝑜𝑠 𝜔𝑡兩 者間為線性獨立,因此可以將兩者之期望值分開 IE = ∑ (𝐸[𝐶(𝑡)𝐶̂(𝑡 − )] ×1𝐷(𝑡)𝑐𝑜𝑠 𝜔𝑡) (3.15)
其 中𝐸[𝐶(𝑡)𝐶̂(𝑡 − )]為 𝐶(𝑡) 之 自 我 相 關 性[8] , 表 示為𝐸[𝐶(𝑡)𝐶̂(𝑡 − )] = 𝑅(− ),經整理後轉換為積分型式可得 IE = 𝐷(𝑡)𝑅(− ) 2 ∫(𝑐𝑜𝑠 𝜔𝑡 𝑑𝑡) = 𝐷(𝑡)𝑅(− ) 2 𝜔 𝑠𝑖𝑛 𝜔𝑡 同理IP、IL、QE、Q𝑃、Q𝐿也可以經由上述步驟來整理,可得 IE = 𝐷(𝑡)𝑅(− ) 2 𝜔 𝑠𝑖𝑛 𝜔𝑡 , QE = 𝐷(𝑡)𝑅(− ) 2 𝜔 𝑐𝑜𝑠 𝜔𝑡 IP = 𝐷(𝑡) 2 𝜔𝑠𝑖𝑛 𝜔𝑡 , QP = 𝐷(𝑡) 2 𝜔𝑐𝑜𝑠 𝜔𝑡 IL= 𝐷(𝑡)𝑅( ) 2 𝜔 𝑠𝑖𝑛 𝜔𝑡 , QL = 𝐷(𝑡)𝑅( ) 2 𝜔 𝑐𝑜𝑠 𝜔𝑡
得到上述六個相關值後將IE、QE、IL、QL送至碼追蹤迴圈之鑑相器,將IP、
QP送至載波追蹤迴圈之鑑相器做處理。首先介紹碼追蹤迴圈之鑑相器,碼追蹤 迴圈可以使用的鑑相器有許多種,我們使用的鍵相器為
D =
√IE +QE −√IL +QL √IE +QE +√IL +QL (3.16) 其中IE + QE = (𝐷( )𝑅(− ) 𝑇 ) 𝑠𝑖𝑛 𝜔𝑡 + (𝐷( )𝑅(− ) 𝑇 ) 𝑐𝑜𝑠 𝜔𝑡 = (𝐷( )𝑅(− ) 𝑇 ) IL + QL 經過同樣的整理後,代入式(3.16)後可以改寫為D =
𝐷(𝑡)𝑅(− ) 𝑇 𝜔 − 𝐷(𝑡)𝑅( ) 𝑇 𝜔 𝐷(𝑡)𝑅(− ) 𝑇 𝜔 + 𝐷(𝑡)𝑅( ) 𝑇 𝜔=
𝑅(− )−𝑅( )𝑅(− )+𝑅( ) (3.17) 經由式(3.17)可以發現經過鍵相器後便可以得到超前碼與延遲碼之相關值的 差值,之後送入 PI 控制器後計算出相對應之值,改變 CA 碼的頻率來減小誤差。接著介紹載波追蹤迴圈之鑑相器,此處使用的鍵相器為 𝐷 = arctan (𝐼𝑃 𝑄𝑃) = arctan ( 𝐷(𝑡) 2 𝜔 𝑠𝑖𝑛 𝜔𝑡 𝐷(𝑡) 2 𝜔 𝑐𝑜𝑠 𝜔𝑡 ) = arctan(𝑡𝑎𝑛 𝜔𝑡) = 𝜔𝑡 同樣的,經過鍵相器後我們可以得到 𝜔𝑡,也就是兩訊號之相位差部分,將 此相位差送至 PI 控制器後計算出相對應之值,改變 NCO 輸出訊號之頻率,來達 到鎖定衛星輸出訊號頻率的效果。
第四章
GPS 應用於火箭影響
將 GPS 應用在生活用途中如手機、車輛時,由於移動速度不快,相對於衛 星之移動速度可以視為固定點,但若要將 GPS 系統應用在火箭上時,火箭之飛 行速度和移動時之加速度比起一般車輛速度快上許多,因此在計算都卜勒頻率時 必須也將火箭之影響納入計算。我們的目的是要找出火箭之加速度會對都卜勒頻 率所造成之影響,下面會推導分別由衛星和由火箭方向去做推論。4.1 衛星運動之分析
要了解火箭之加速度對於都卜勒頻率的影響,必須要先從衛星移動速度開始 分析[9]。我們一天的時間定為 24 小時稱為太陽日(Solar Day);但其實地球轉一 圈的時間比起 24 小時略短一些,約為 23 小時 56 分鐘又 4.09 秒,稱為恆星日 (Sidereal Day),兩者間相差 3 分鐘又 55.91 秒。而一顆衛星每天會繞行地球兩周, 也就是衛星繞地球一周的時間為恆星日的一半,約為 11 小時 58 分鐘 2.05 秒。 從此時間我們可以推出衛星繞行地球的角速度,如下: 𝜔𝑠 = 𝑑𝜃 𝑑𝑡 = 2𝜋 11 × 60 × 60 + 58 × 60 + 2.05= 1. 58 × 10−4 而衛星繞行地球之衛星軌道平均半徑(rs)約為 26560km,因此可推導出衛星 繞行地球之速度為 vs= rs𝜔𝑠 = rs×𝑑𝜃 𝑑𝑡 = 26560 × 103× 1. 58 × 10−4 = 3872. 8 𝑚 𝑠⁄圖 14. 衛星繞行地球之示意圖 圖 14.為衛星繞行地球之示意圖,S 為衛星,A 為地球上接收端。由於衛星 與地球上之接收端有相對速度,因此會產生都卜勒效應(Doppler Effect)的影響。 下面簡介都卜勒效應,都卜勒效應是當波源與觀測者有相對的運動時,觀測 者所觀測到的頻率與波源發射出的頻率會不相同的現象。觀測者與波源的頻率關 係如下:
𝑓̀ = (
𝑣±𝑣 𝑣∓𝑣) 𝑓
(4.1) 其中 為波在該介質中之傳遞速度, 0為接收端移動速度,當接收端向波源 方向前進,則運算符號為正號,反之則為負號; 1為波源移動速度,當波源向接 收端方向前進,則運算符號為負號,反之則為正號。而在 GPS 中,衛星皆以光 速來傳遞訊號,因此 =3 × 108𝑚 𝑠⁄ ; 0為火箭之速度, 1為衛星速度對接收 端方向之投影量,稱之為都卜勒速度(Doppler Velocity),下面稱為vd。而我們所需要的都卜勒頻率即為觀測者接收得的頻率與波源發射出的頻率 之間的差值,可表示為
𝑓
𝑑= 𝑓̀ − 𝑓 = (
𝑣±𝑣 𝑣∓𝑣𝑑− 1) 𝑓 = (
±𝑣 ±𝑣𝑑 𝑣∓𝑣𝑑) 𝑓
(4.2) 若火箭朝著衛星方向前進, 0為正,反之為負;若都卜勒速度往火箭方向前 進, 𝑑為負,反之為正。4.2 衛星速度對於都卜勒頻率影響
為了分析衛星移動所能造成的都卜勒頻率以及改變量,下面先將接收端視為 固定點來做分析。圖 14.中之vs為衛星移動速度,而會對接收端造成都卜勒效應 影響的速度為vs在AS̅̅̅̅方向上的投影量,稱之為vd,可表示為 𝑑 = 𝑠× 𝑠𝑖𝑛𝛽 (4.3) 接下來用θ角來表示vd,利用正弦定理可以知道 𝑟𝑒 𝑠𝑖𝑛𝛽=
𝐴𝑆 ̅̅̅̅ 𝑠𝑖𝑛𝛼=
𝐴𝑆 ̅̅̅̅ 𝑐𝑜𝑠 𝜃(4.4) 𝑟為地球半徑 6368km,𝐴𝑆̅̅̅̅為衛星至接收端之距離。因此可以將vd表示為 𝑑
=
𝑠× 𝑠𝑖𝑛𝛽 =
𝑠𝑟𝑒𝑐𝑜𝑠 𝜃 𝐴𝑆 ̅̅̅̅ (4.5) 其中𝐴𝑆̅̅̅̅ = √𝑟 + 𝑟𝑠 − 2𝑟𝑟𝑠𝑠𝑖𝑛θ,藉由式(4.5)我們便可以推導出衛星運動鎖 會造成的都普勒速度量,圖 15.為都卜勒速度對𝜃角作圖。圖 15. 都卜勒速度對𝜃角作圖 若想找出衛星之移動速度會造成之都卜勒頻率影響,需先求得衛星速度對 𝐴𝑆 ̅̅̅̅之最大投影量,也就是vd之最大值。可藉由將式(4.5)中之vd對𝜃作微分求得 𝑑 𝑑 𝑑𝜃 = 𝑠𝑟 𝑟𝑟𝑠𝑠𝑖𝑛 𝜃 − (𝑟 + 𝑟𝑠 )𝑠𝑖𝑛𝜃 + 𝑟𝑟𝑠 (𝑟 + 𝑟𝑠 − 2𝑟𝑟𝑠𝑠𝑖𝑛𝜃)3 = 0 ⇒ 𝑟 𝑟𝑠𝑠𝑖𝑛 𝜃 − (𝑟 + 𝑟𝑠 )𝑠𝑖𝑛θ + 𝑟𝑟𝑠 = 0 ⇒ 𝑠𝑖𝑛θ = (𝑟 + 𝑟𝑠 𝑟𝑟𝑠 ) ± √(𝑟 𝑟+ 𝑟𝑟𝑠𝑠 ) − 2 ⇒ θ = 0.2 2 rad 由上可以求得,當θ = 0.2 2 rad ≅ 13.87°時衛星速度對𝐴𝑆̅̅̅̅方向之投影量會 有最大值vd max= 928.8265 𝑚/𝑠。而利用式(4.2)我們便可以得到衛星速度對𝐴𝑆̅̅̅̅ 方向之投影量所能造成之最大都卜勒頻率為 𝑓𝑑 = ( 0 + 928.8265 3 × 108− 928.8265) × 1575. 2𝑀𝐻𝑧 = 877.65𝐻𝑧 因此可推斷出對於一個固定的接收端而言,都卜勒頻率範圍約為± .9kHz。
由於都卜勒速度為一投影量,會隨著角度改變而變化,其改變量並非固定, 而是會隨著不同的角度有不同的改變量,此改變量可以藉由將vd對時間作微分求 得,如下式
̇
𝑑=
𝑑𝑣𝑑 𝑑=
𝑑𝑣𝑑 𝑑𝜃 𝑑𝜃 𝑑=
𝑣 𝑟𝑒 𝑟𝑒𝑟𝑠𝑖𝑛 𝜃−(𝑟𝑒 +𝑟 )𝑠𝑖𝑛𝜃+𝑟𝑒𝑟 (𝑟𝑒 +𝑟 − 𝑟𝑒𝑟𝑠𝑖𝑛𝜃) 𝑑𝜃 𝑑(4.6) 由上式便可求得都卜勒速度之改變量,圖 16.為都卜勒速度改變量對角度𝜃作 圖,而都卜勒速度改變量之最大值在𝜃 =𝜋處,其值為 0.178𝑚 𝑠⁄ 。 圖 16. 都卜勒速度改變量對角度𝜃作圖 接下來將此都卜勒速度改變量對應至都卜勒頻率之改變量,作法是將式(4.6) 中之𝑓𝑑對時間作微分,由於我們目的是要找出最大的都卜勒頻率改變量,故假設 衛星與火箭前進方向皆使兩者互相接近,因此可將式(4.2)改寫為
𝑓
𝑑= (
𝑣 +𝑣𝑑 𝑣−𝑣𝑑) 𝑓
(4.7)接著將式(4.7)對時間作一次微分並經過整理後可得
𝑓̇
𝑑=
𝑑𝑓𝑑 𝑑=
(𝑣−𝑣𝑑)𝑣̇ +(𝑣+𝑣 )𝑣̇𝑑 (𝑣−𝑣𝑑)𝑓 (4.8)
藉由上式便可以將都卜勒速度改變量對應至都卜勒頻率之改變量,對一個固 定的接收端而言, 0 = ̇0 = 0,因此可求得都卜勒速度改變量之最大值對應到 之最大的都卜勒頻率改變量值為 0.935𝐻𝑧 𝑠⁄ 。4.3 火箭對於都卜勒頻率之影響
將 GPS 應用在生活用途中如手機、車輛時,由於移動速度不快,相對於衛 星之移動速度可以視為固定點,但若要將 GPS 系統應用在火箭上時,火箭之飛 行速度和移動時之加速度比起一般車輛速度快上許多,因此在計算都卜勒頻率時 必須也將火箭之影響納入計算。在前一節中把接收端視為固定點,以求得衛星移 動所產生之都卜勒效應,在這節中將會把接收端修改為有移動速度與加速度以符 合火箭之狀況。 我們假定火箭之飛行速度最快可達到三馬赫,即為 1020 𝑚/𝑠,而火箭之最 大加速度為 10G,即為 98 𝑚/𝑠 ,藉由前面所推導出之式(4.7)和式(4.8)便可計算 出在考慮火箭狀況下之都卜勒頻率範圍與其最大改變量。 將火箭速度帶入式(4.7)可得 𝑓𝑑 = ( 0+ 𝑑 − 𝑑 ) 𝑓 = ( 1020 + 928.8265 3 × 108− 928.8265) × 1575. 2𝑀𝐻𝑧 = 10235𝐻𝑧 可以得知考慮火箭速度狀況下之都卜勒頻率範圍約為±10.235 kHz。接下來 是都卜勒頻率之改變量部分,將火箭之最大加速度帶入式(4.8)後可得 𝑓̇𝑑 = ( − 𝑑) ̇0+ ( + 0) ̇𝑑 ( − 𝑑) 𝑓 = 515.57 𝐻𝑧 𝑠⁄ 另外若我們需考慮火箭飛行之高度,則需將地球半徑再加上飛行高度的部分, 若火箭飛行高度 200km,速度達到 10 馬赫,則經上述計算可得都卜勒頻率範圍第五章
模擬結果
本論文利用 Matlab 來完成 GPS 中訊號追蹤(Tracking)部分的演算法,訊號追 蹤目的在精準鎖定衛星輸出訊號之載波頻率與對齊 C/A 碼,以便解調出導航訊 息以供定位使用。 訊號追蹤之演算法是根據 3.3 節之圖 13.來進行編譯,每次迴圈處理之衛星 訊號資料長度為 1msec。由於射頻前端將載波頻率從 1575.42MHz 降至 4.092MHz, 經由取樣定理[10]我們將取樣頻率取為載波頻率的 4 倍,為 16.368MHz,因此每 次迴圈處理資料量為 16368 筆。而完整的 C/A 碼長度為 1023 個 chip,因此我們 在模擬時會把 C/A 碼拓展為 16368 個資料點,每 16 個資料典代表一個 Chip。5.1 追蹤固定頻率
在此節中先模擬將 GPS 應用於一般用途上,相對於衛星速度可將接收端視 為一固定端,即將衛星之都卜勒頻率模擬為固定值,不會隨時間變化。訊號追蹤 範例如下,欲追蹤之衛星訊號之衛星 PRN 碼為 9,中頻頻率為 4.092MHz,都卜 勒頻率為 700Hz,衛星之碼相位為 20 chip,即為第 305 個 Sample。首先看到載 波追蹤迴圈部分,假設衛星輸出訊號之頻率與 NCO 之起使頻率相差 80Hz,即 NCO 之起使頻率為 4092620Hz,以此為初始條件來作模擬,結果如圖 17.圖 17. NCO 頻率與輸入固定頻率對時間作圖
圖 18. NCO 頻率與輸入固定頻率之頻率差對時間作圖
由圖 17.中可以觀察到 NCO 的頻率由起使值 4092620Hz 經載波追蹤迴圈後上升 至 4092700Hz,載波追蹤迴圈能夠成功的將衛星輸出訊號之頻率與 NCO 之起使 頻率差減小至 0。
同樣地,兩訊號間的相位差也能夠保持在 0 度左右,如圖 19.
圖 19. NCO 頻率與輸入固定頻率之相位差對時間作圖
接下來則是碼追蹤迴圈的部分,假設衛星輸出訊號之碼相位與 PRN 碼產生 器所產生之碼相位相差 16 個 Samples,以此為初始條件來作模擬,結果如圖 20.
圖 21.PRN 碼產生器之碼相位與輸入訊號之碼相位對時間作圖
由圖中可以觀察到 PRN 碼產生器所產生碼相位由起使值的第 321 個 Sample 經碼追蹤迴圈後改變至第 305 個 Sample。由圖中可以看到碼追蹤迴圈成功的將 衛星輸出訊號之碼相位與 PRN 碼產生器所產生之碼相位減小至 0。
5.2 設定安定時間
在 2.3 節提到,我們可以藉由設定安定時間來決定載波追蹤迴圈與碼追蹤迴 圈中 PI 控制器之參數值,下面將進行模擬。首先模擬載波追蹤迴圈的部分,設 定欲追蹤之衛星訊號之衛星 PRN 碼為 9,中頻頻率為 4.092MHz,都卜勒頻率為 700Hz,且將衛星輸出訊號與 NCO 起使頻率之起使頻率差設為 40Hz,接著進行 模擬,觀察在設定不同的安定時間下系統響應的狀況。我們將安定時間設定為 30msec、60msec、90msec、120msec 四種狀況,由式(2.18)計算出 PI 控制器應該 設定之參數後進行模擬。 由上圖可以發現,隨著設定不同的安定時間,響應速度也不盡相同,圖中可 以看出系統響應圖顯示之安定時間與設定之值幾乎相符合。 安定時間為 30msec 安定時間為 60msec 安定時間為 90msec 安定時間為 120msec接著模擬碼追蹤迴圈的部分,設定欲追蹤之衛星訊號之衛星 PRN 碼為 9, 中頻頻率為 4.092MHz,都卜勒頻率為 700Hz,且將衛星輸出訊號之碼相位與 PRN 碼產生器產生之碼相位起使差值設為 16 個 Samples,接著進行模擬,觀察在設 定不同的安定時間下系統響應的狀況。我們將安定時間設定為 50msec、90msec、 120msec、150msec 四種狀況,由式(2.18)計算 PI 控制器設定之參數後進行模擬。 由上圖同樣可以觀察到,隨著設定不同的安定時間,碼追蹤迴路響應速度也 不盡相同,圖中可以看出系統響應圖顯示之安定時間與設定之值相符合。 安定時間為 50msec 安定時間為 90msec 安定時間為 120msec 安定時間為 150msec
5.3 追蹤變化頻率
在這一節中將會模擬將 GPS 應用於火箭上之狀況,當 GPS 應用於火箭上時, 衛星輸出之訊號內之都卜勒頻率由定值改為隨時間作變化,這邊我們模擬火箭之 最大加速度為 10G,在 4.3 節中經過換算後可以得知此加速度使都卜勒頻率會有 變化率 515.57Hz/s。訊號追蹤範例如下,欲追蹤之衛星訊號之衛星 PRN 碼為 9, 中頻頻率為 4.092MHz,都卜勒頻率為 700Hz,變化率為 515.57Hz/s。首先看到 載波追蹤迴圈部分,假設衛星輸出訊號之頻率與 NCO 之起使頻率相差 100Hz, 即 NCO 之起使頻率為 4092600Hz,以此為初始條件來作模擬,結果如圖 22. 圖 22. NCO 頻率與輸入變化頻率對時間作圖 圖 23. NCO 頻率與輸入變化頻率之頻率差對時間作圖由圖 22.中可以發現,NCO 之頻率從起使值 4092600Hz 開始上升,之後便隨 著衛星輸出訊號之都卜勒頻率改變而改變,可以看到載波追蹤迴圈在都卜勒頻率 存在變化率的狀況下也仍然能夠保持鎖定。 由 2.2 節中之推導可以得知,當 GPS 應用在火箭時,除了會使都卜勒頻率存 在變化率之外,也會使載波追蹤迴圈在鎖定頻率時存在穩態誤差,也就是會存在 相位差的部分。在此範例中,都卜勒頻率之變化率為 515.57Hz/s,而將系統之共 振頻率設定為 65Hz,則利用式(2.16)可以算出穩態誤差為 ess= 𝜔̇0 𝜔𝑛 = 515.57 × 2𝜋 (65 × 2𝜋) = 0.019 2𝑟𝑎𝑑 ≅ 1.11° 圖 24.NCO 頻率與輸入變化頻率之相位差對時間作圖 圖 24.為經過載波鎖定迴圈鎖定頻率後所得到的相位差部分,當響應進入穩 態後,相位差值約為 1.1106°,可以發現與前面所推導之公式所計算出之結果相 符合。
接下來則是碼追蹤迴圈的部分,假設衛星輸出訊號之碼相位與 PRN 碼產生 器所產生之碼相位相差 16 個 Samples,以此為初始條件來作模擬,結果如圖 25. 圖 25.PRN 碼產生器之碼相位對時間作圖 圖 26. PRN 碼產生器之碼相位與輸入訊號之碼相位對時間作圖 同樣由圖中可以觀察到 PRN 碼產生器所產生碼相位由起使值的第 321 個 Sample 經碼追蹤迴圈後改變至第 305 個 Sample。由圖中可以看到碼追蹤迴圈成 功的將衛星輸出訊號之碼相位與 PRN 碼產生器所產生之碼相位減小至 0。
5.4 應用於火箭之設計
在本節中我們想要利用模擬來找出在不同火箭加速度時造成之頻率變化率 與共振頻率關係。我們模擬的火箭加速度範圍為 1G 至 20G,每 0.5G 觀察一次, 若將火箭加速度範圍對應至變化率則為 52.4 Hz/s ~ 1030.21 Hz/s,經模擬來觀察 在不同變化率下迴圈能鎖定之最小共振頻率,結果如圖 27. 圖 27. 輸入頻率變化率對共振頻率作圖 藉由曲線配適法(Curve Fitting)我們可以得到頻率改變率與共振頻率約為 𝜔𝑛 > 31.1 + 0.00576 × 𝜔̇0 經由上式我們便可以在不同的變化率下選擇系統所需要之共振頻率值。5.5 改變迴圈以加速響應
在原先的迴圈中運作方式為在一次完整的迴圈中,碼追蹤迴圈和載波追蹤迴 圈各跑一次,每次處理 1msec 的資料量,我們為了改善系統響應時間,做了以下 的改變,將迴圈改為一次迴圈中碼追蹤迴圈處理一次,共 1msec,而載波追蹤迴 圈每 0.5 秒一次,1ms 內跑兩次,示意圖如下 圖 28. 改變迴圈運作方式示意圖 同樣一次接收 1msec 的資料進入迴圈後,首先載波迴圈一先處理前 0.5msec 的資料,處理結束後輸出至載波迴圈二作為迴圈二之初使值,再接著處理後 0.5msec 的資料部分。藉前面設計安定時間為 70msec 後計算出參數來進行模擬, 將模擬分為一般的追蹤迴圈與圖 28.中改變迴圈運作方式來進行。 結果之模擬圖如下。圖 29. 兩種迴圈之響應時間比較 圖 30. 改變迴圈方式之碼相位差值對時間作圖 由圖 29.可以看出,原先設定安定時間為 70msec(虛線部分),藉由改變迴圈 之運作方式後,成功地改善系統響應性能,可以看到響應之振盪減少,且響應速 度較快,另外也不會影響到碼追蹤迴圈之鎖定。因此,藉由此種迴圈之運作,我 們得成功改善系統之響應性能。
第六章 結論與未來方向
6.1 結論
本論文藉由推導鎖相迴路之轉移函數後,利用安定時間、系統之共振頻率與 阻尼比之公式來設計系統內之控制器參數,來達到我們所需要的規格。 另外當 GPS 系統應用於火箭時,接收端火箭之移動速度所能造成之最大都 卜勒頻率量為±10kHz,而火箭之 10G 加速度所造成之都卜勒頻率改變量可以達 到 515.57Hz/s。 最後我們藉由改變迴圈所運作的方式,原先的追蹤迴圈是每一次迴圈碼追蹤 迴圈運作一次,運作時間 1msec,載波追蹤迴圈運作一次,運作時間 1msec。我 們將其變更為每一次迴圈碼追蹤迴圈運作一次,運作時間 1msec,載波追蹤迴圈 運作兩次,運作時間 0.5msec。藉由此方式順利改善系統響應性能,且不需要作 參數設計上的更改。6.2 未來方向
1. 目前模擬 GPS 訊號追蹤系統時,並沒有加入雜訊部分的影響,如:熱噪 音、對流層、電離層所造成之誤差。之後可以把誤差也一起考慮進去來進行系統 的設計以及模擬。 2. 利用硬體來實現上述所設計之追蹤迴圈,如 DSP 等等。參考文獻
[1] 高曜煌,射頻鎖相迴路 IC 設計,臺中市,滄海書局,中華民國九十四年十 月(ISBN 986-7287-23-1)
[2] S. Wanchana, T. Benjanarasuth, N. Komine, J. Ngamwiwit,“Feedforward Adaptive Phase-Locked Loop for Process Control Systems”, SICE ZWZ Aug. 5-7. ZWZ, Osaka Darrell Williamson,” Improved Phase-Locked Loop Performance Via Nonlinear Loops Filter”, IEEE TRANSACTIONS ON COMMUNICATIONS, VOL. COM-27, NO. 3, MARCH 1979
[3] S. Shinnaka, “A New Frequency-Adaptive Phase-Estimation Method Based on a New PLL Structure for Single-Phase Signals”, 2007 IEEE. Reyad El-Khazali and Wajdi Ahmad,” FRACTIONAL-ORDER PHASE-LOCKED LOOP”, Electronic Engineering. Department Etisalat University College Sharjah-UAE.
[4] Ping Lian,Gerard Lachapelle,“Improving Tracking Performance of PLL in High Dynamics Applications”,Presented at ION NTM 2005 N.I. Margaris,” Non-linear Analog Phase Locked Loop”, Springer-Verlag Berlin Heidelberg 2004.
[5] Roland E. Best,”Phase-Locked Loops”, McGRAW-HILL,1993.
[6] Jacob Tal , ”On the Pull-In Range of Phase-Locked Loops”, IEEE TRANSACTIONS ON COMMUNICATIONS, MARCH 1975
[7] Katsuhiko Ogata,” Modern Control Engineering”, Prentice Hall
[8] Elliott D. Kaplan,Christopher J. Hegarty,”Understanding GPS Principles and Applications”, ARTECH HOUSE, INC.
[9] JAMES BAO-YEN TSUI,” Fundamentals of Global Positioning System Receivers”(ISBN 0-471-70647-7)
[10] Edward W.Kamen,”Fundamentals of Signals and Systems using the wed and Matlab” ,Prentice Hall
[11] John J. Benedetto,“A Software-Defined GPS and Galileo Receiver”, Editorial Advisory Board
[12] 張智星,MATLAB 程式設計與應用,清蔚科技出版
[13] Rishija Misra1, and Shubham Palod,”Code and Carrier Tracking Loops for GPS CA Code”, Int. J. Pure Appl. Sci. Technol., 6(1) (2011), pp. 1-20