中頻信號相位解析:從原理到實踐)
1. 還沒到相位之前先把中頻信號這關(guān)過了很多初學(xué)者看毫米波雷達(dá)的資料一上來就撞上中頻信號的相位這個坎。我最早接觸這塊內(nèi)容的時候也栽過跟頭——光顧著盯頻率、幅度相位完全沒當(dāng)回事結(jié)果后面看多普勒測速、MIMO測角的原理文章每一篇都云里霧里。后來才明白相位才是把距離、速度、角度這三件事串起來的那根線。這篇內(nèi)容就聚焦在中頻信號的相位這個基礎(chǔ)點上扒開講講相位到底是怎么產(chǎn)生的、和哪些物理量掛鉤、在真實雷達(dá)信號處理鏈路里又是怎么被使用的。適合剛?cè)腴T毫米波雷達(dá)的同學(xué)也適合做了幾年嵌入式或者射頻測試、想回頭把信號模型捋清楚的人。先說結(jié)論中頻信號的相位本質(zhì)上是發(fā)射信號與接收信號之間相位差在混頻之后的投影。理解了這句話后面所有關(guān)于測速、測角的運算都會順理成章。但這句話展開來牽扯到FMCW調(diào)制方式、混頻器的工作機制、ADC采樣時機等一系列問題。別急我們從最基礎(chǔ)的天線收發(fā)鏈路一步步走。2. 中頻信號是怎么造出來的2.1 一個收發(fā)鏈路的基本盤典型毫米波雷達(dá)前端比如TI的IWR1443、IWR6843這類單芯片方案內(nèi)部的工作邏輯其實沒想象中復(fù)雜一片信號源產(chǎn)生線性調(diào)頻連續(xù)波FMCW經(jīng)過功分器分成兩路——一路直接送到混頻器的本振端口另一路經(jīng)發(fā)射天線輻射出去輻射出去的電磁波遇到目標(biāo)反射回來被接收天線拾取進(jìn)入低噪聲放大器放大再送到混頻器的射頻端口兩路信號在混頻器里相乘輸出的差頻分量就是我們說的中頻信號。注意這里有個容易忽略的細(xì)節(jié)混頻器做的是乘法而乘積會產(chǎn)生兩個分量——和頻與差頻。低通濾波器會把和頻分量濾掉留下來的差頻分量才是中頻信號。而在FMCW體制下這個差頻分量剛好攜帶了目標(biāo)的距離和速度信息角度信息則藏在不同接收天線之間中頻信號的相位關(guān)系里。2.2 FMCW的調(diào)頻斜率與差頻線性調(diào)頻連續(xù)波發(fā)射頻率隨時間線性變化斜率用S表示單位是MHz/μs。一個chirp的周期通常只有幾十微秒在這么短的時間內(nèi)如果目標(biāo)是靜止的接收信號就是發(fā)射信號的一個時延副本。設(shè)目標(biāo)距離為R電磁波往返時間τ 2R/cc是光速那么在第t時刻接收頻率與本振頻率之差就是 S·τ這個差值就是中頻頻率f_IF。例如S 30 MHz/μsR 5 m則τ 2×5/(3×10^8) ≈ 33.3 nsf_IF 30×0.0333 ≈ 1 MHz。這個頻率落在MHz量級ADC采樣毫無壓力。但很多人沒有繼續(xù)往下多想一步中頻信號除了頻率還有個初相位這個相位的值等于什么2.3 中頻信號的完整表達(dá)式把FMCW發(fā)射信號寫出來用實信號形式s_T(t) A·cos(2π·f_c·t π·S·t2 φ_0)其中f_c是起始頻率φ_0是初始相位。接收信號經(jīng)歷了往返時延τ并且幅度衰減再疊加噪聲s_R(t) A·cos(2π·f_c·(t-τ) π·S·(t-τ)2 φ_0)混頻器把這兩路相乘經(jīng)過低通濾波后中頻信號的相位可以近似寫為φ_IF 2π·f_c·τ π·S·(2t·τ - τ2)這里第一項2π·f_c·τ是主導(dǎo)項第二項里Sτ2的數(shù)值在短距離場景下小到可以忽略。把τ 2R/c代入第一項變成4π·f_c·R/c。因為波長λ c/f_c所以又可以寫成φ_IF ≈ 4π·R/λ這個表達(dá)式是整個相位問題的核心。它說明中頻信號的初相位和目標(biāo)的距離R成正比比例系數(shù)是4π/λ。λ在77GHz頻段大約是3.9mm也就意味著目標(biāo)每移動不到1mm中頻信號的相位就會偏轉(zhuǎn)接近一圈。這種微小的距離變化引起劇烈相位變化的特性正是雷達(dá)能夠測出亞毫米級位移的物理基礎(chǔ)。2.4 為什么用復(fù)信號表示中頻更好單獨一路中頻信號在模擬域就是個余弦波但進(jìn)入數(shù)字域之后我們通常不直接拿實數(shù)采樣來算相位而是經(jīng)過I/Q雙通道解調(diào)得到一組復(fù)數(shù)序列x[n] I[n] j·Q[n]這樣做的理由很直白實數(shù)余弦波cos(2πftφ)在頻譜上有正負(fù)兩個對稱分量直接用FFT看不出來相位方向而復(fù)數(shù)信號e^(j(2πftφ))只有一個方向的頻率分量相位就是復(fù)數(shù)向量與實軸之間的夾角取atan2就能直接算出來。很多做軟件的同學(xué)剛開始用實數(shù)ADC數(shù)據(jù)發(fā)現(xiàn)atan2的結(jié)果正負(fù)亂跳就是因為沒有I/Q兩路信息相位方向無法唯一確定。這算是一個高頻踩坑點我后文還會再提。3. 相位是怎么牽著距離、速度、角度的3.1 相位差解微小位移從干涉說起如果有兩幀中頻信號分別對應(yīng)目標(biāo)在位置R1和R2二者的相位差為Δφ 4π(R2 - R1)/λ。只要ΔR遠(yuǎn)小于距離分辨率分辨率由帶寬決定帶寬大時可達(dá)厘米級頻率上的變化幾乎看不出差別但相位上的變化很明顯。打個比方中頻信號的頻率告訴我們目標(biāo)在幾米這個量級上待在哪而相位則告訴我們目標(biāo)在零點幾毫米這個量級上動了多少。兩者一個管大數(shù)一個管小數(shù)配合使用才能實現(xiàn)高精度的位移測量。我實際測過一個人體呼吸的靜態(tài)場景人坐在雷達(dá)前約1米處胸腔起伏幅度大約為5~12mm。在77GHz頻段λ約3.9mm5mm的位移意味著約4.6π的相位變化。只要連續(xù)采集chirp提取每個chirp中頻信號的相位就能畫出胸腔起伏的波形甚至能區(qū)分呼吸和心跳兩個頻段呼吸約0.2~0.5Hz心跳約1~1.7Hz。這就是生命體征雷達(dá)的基本原理而核心只依賴一件事——相位對微小位移的敏感度。3.2 相位差測速度多普勒效應(yīng)的另一種理解傳統(tǒng)多普勒理論說的是頻率變化運動目標(biāo)會讓接收信號產(chǎn)生多普勒頻移f_d 2v/λ其中v是徑向速度。在FMCW雷達(dá)里單個chirp時間極短多普勒頻率在單個chirp上的體現(xiàn)微乎其微但在脈沖間chirp與chirp之間看目標(biāo)移動了ΔR v·T_cT_c是chirp周期于是中頻信號的相位變化為Δφ 4π·v·T_c/λ這一串chirp按照時間排開每個chirp對應(yīng)一個相位點構(gòu)成一個以多普勒頻率為頻率的復(fù)指數(shù)序列。對這個序列做FFT也就是常說的多普勒維FFT就能提取出v。這里有個容易混淆的點不少人以為多普勒頻率f_d直接出現(xiàn)在中頻信號的頻率上其實要分場景。靜止目標(biāo)中頻頻率只和距離相關(guān)運動目標(biāo)在單個chirp期間多普勒頻率會疊加進(jìn)中頻頻率但這個頻偏量極小——比如v10m/sλ3.9mmf_d≈5.1kHz而中頻頻率動輒幾百kHz甚至上MHz在幾十微秒的采樣窗口里這點頻偏很難被單chirp的FFT分辨出來。真正可靠的做法是跨chirp比相也就是通過相位序列來提取速度這也是為什么測速的核心算法叫多普勒FFT拿進(jìn)去的是復(fù)數(shù)相位序列而不是單chirp的中頻波形。3.3 相位差測角度陣列雷達(dá)的本質(zhì)假設(shè)置雷達(dá)有N根接收天線間距d遠(yuǎn)場目標(biāo)來向與法線夾角為θ那么相鄰天線之間的波程差是d·sinθ換算成相位差是Δφ 2π·d·sinθ/λ目標(biāo)回波在N根天線上產(chǎn)生的相位分別相差這個值所以對N個天線通道同一時刻的中頻復(fù)數(shù)樣本做FFT角度維FFT峰值對應(yīng)的頻點就對應(yīng)著sinθ再反算θ即可。這里相位的作用就更為直接了??梢哉f角度測量的全部信息都存在于中頻信號的相位里。工程上通常要求d不超過λ/2否則會出現(xiàn)柵瓣更大的間距雖然能提高測角分辨率但會犧牲無模糊角度范圍這是一個經(jīng)典矛盾。3.4 一個公式串起三個維度把前面幾節(jié)串起來做個總結(jié)距離維單個chirp中頻信號的頻率 f_IF S·2R/c速度維相鄰chirp之間中頻信號的相位差 Δφ 4π·v·T_c/λ角度維相鄰天線之間中頻信號的相位差 Δφ 2π·d·sinθ/λ這個總結(jié)是我當(dāng)年自己梳理出來的建議你也拿張紙自己推導(dǎo)一遍。三個維度各自依賴的FFT雖然算法形式上一樣但輸入的到底是什么數(shù)據(jù)、怎么reshape數(shù)據(jù)陣是完全不同的。很多人把Range-Doppler-Angle三個FFT連起來做卻不知道為什么是先距離、再多普勒、最后角度的順序根子上就是對相位在哪個維度發(fā)揮作用沒有建立清晰的圖景。4. 實操中的相位提取與避坑4.1 從ADC原始數(shù)據(jù)到相位值前端輸出的是I/Q兩路ADC數(shù)據(jù)通常在DSP里以復(fù)數(shù)數(shù)組存成一個Range-Doppler矩陣。以TI的毫米波雷達(dá)為例一幀數(shù)據(jù)里包含M個chirp每個chirp包含N個采樣點整體數(shù)據(jù)可以看作N×M的矩陣行方向是快時間距離維列方向是慢時間多普勒維。提取某個距離單元的相位步驟大概是這樣的第一步對每個chirp的N個采樣點做距離維FFT加窗通常用Hamming或Hanning來壓低旁瓣得到一個距離譜序列。第二步找到目標(biāo)所在的距離單元索引r_idx。通常在靜態(tài)場景下先做一幀積累的平均幅度譜挑峰值位置也可以用CFAR檢測來定。第三步取所有chirp在r_idx處的復(fù)數(shù)幅值組成一個長度為M的復(fù)數(shù)向量。這個向量的每個元素的幅角就是對應(yīng)chirp在中頻信號上的相位。第四步對這個復(fù)數(shù)向量做多普勒維FFT仍然加窗峰值對應(yīng)的頻率即多普勒頻率而峰值本身的相位是目標(biāo)回波在某個初始時刻的相位。這在數(shù)學(xué)上每一步都是I/Q復(fù)數(shù)的線性操作所以相位信息不會丟。很多初學(xué)者有一個誤區(qū)覺得FFT之后相位信息就沒了其實恰恰相反——FFT之后幅角里保存了目標(biāo)回波的初始相位和跨chirp的相位演變只不過它們被分散在不同的FFT bin里。4.2 I/Q不平衡相位精度的第一殺手理想情況下I路和Q路應(yīng)該幅度完全相同、相位嚴(yán)格相差90度。到了實際硬件上射頻通道的混頻器、運放、ADC難免引入誤差導(dǎo)致I/Q不平衡。常見癥狀是直流偏置不為零、I/Q增益不一致、正交相位誤差不等于90度。這些問題最終都會體現(xiàn)為復(fù)信號星座圖上圓環(huán)變成了橢圓、圓心偏離原點。在提取相位時圓心偏移會直接給幅角帶來畸變——尤其當(dāng)信號幅度小、距離遠(yuǎn)時稍微一點直流偏置就可能讓相位讀數(shù)的誤差大到完全不可用。處理辦法分幾種在樣本足夠多時做校準(zhǔn)采集一段無目標(biāo)回波的底噪數(shù)據(jù)估算直流分量并在后續(xù)信號中扣除這是最容易實現(xiàn)的一種補償。用系統(tǒng)校準(zhǔn)流程TI等廠商的mmWave SDK里本身帶了校準(zhǔn)引擎可以測出I/Q增益和相位失配參數(shù)在DSP里做2x2矩陣校正。如果批量生產(chǎn)需要在產(chǎn)線上做每個通道的出廠校準(zhǔn)把校準(zhǔn)系數(shù)燒到板子的非易失存儲里。我第一次做生命體征雷達(dá)的時候完全沒有意識到I/Q不平衡的影響。波形圖上明明能看到呼吸的起伏但抖動量很大后來排查了很久發(fā)現(xiàn)是I路和Q路的增益差達(dá)到1.5dB導(dǎo)致相位解算誤差在5度以上。換算成位移誤差大約是5度/360度×3.9mm ≈ 0.054mm看著不大但連續(xù)波段的抖動疊加后信噪比就顯著下降。4.3 相位解纏別讓atan2把你坑了atan2的返回值范圍是(-π, π]也就是說真實相位如果跨越了這個區(qū)間提取出來的相位就會出現(xiàn)跳變。比如目標(biāo)微動超過λ/2約2mm相位變化就超過一圈就會看到相位在±π之間跳變。這種跳變處理不當(dāng)會讓后續(xù)的速度估計、位移曲線出現(xiàn)毛刺。常用解法是相位解纏檢測相鄰相位值的差值如果大于π就減去2π如果小于-π就加上2π把相位序列拉成連續(xù)曲線。具體偽代碼如下def unwrap_phase(phase): unwrapped [phase[0]] for i in range(1, len(phase)): delta phase[i] - phase[i-1] while delta np.pi: delta - 2 * np.pi while delta -np.pi: delta 2 * np.pi unwrapped.append(unwrapped[-1] delta) return np.array(unwrapped)注意一個細(xì)節(jié)相位解纏依賴相鄰采樣點之間的真實相位差小于π否則會出現(xiàn)模糊。如果chirp周期太長、目標(biāo)運動速度太快采樣率不足解纏結(jié)果就會出錯。具體來說就是不等式4π·v·T_c/λ π必須成立解出來v_max λ/(4T_c)這個約束和經(jīng)典多普勒測速模糊公式v_max λ/(4T_c)完全一致。所以反過來看設(shè)計chirp周期的時候就要先算好目標(biāo)最大徑向速度否則后面無論怎么做解纏都救不回來。4.4 相位噪聲與信噪比的權(quán)衡相位噪聲來自本振源的不理想。FMCW雷達(dá)的線性調(diào)頻源如果相噪性能差中頻信號的相位會產(chǎn)生隨機抖動。這種抖動和熱噪聲是疊加的前者直接影響相位讀數(shù)后者影響復(fù)數(shù)的幅值提取相位時兩者都會折算到角度誤差上。工程上有一個很實際的現(xiàn)象目標(biāo)回波越強相位提取越干凈回波一旦接近噪底相位就變成一堆亂碼。原因在于噪聲在I/Q平面上疊加在信號矢量端點上噪底越高矢量端點的擾動越大對應(yīng)角度誤差越大。定量上相位誤差的均方根值大約為1/sqrt(2·SNR)。如果你想讓相位精度達(dá)到1度SNR必須超過20dB以上。這個數(shù)在很多應(yīng)用里是想當(dāng)然達(dá)不到的不然相位法測位移也不會只適合近距離、強反射目標(biāo)。我在調(diào)機器人避障雷達(dá)的時候試過用同樣的算法跟蹤遠(yuǎn)處墻面距離8米時的相位抖動比0.8米處大了將近一個數(shù)量級就是因為遠(yuǎn)距回波SNR衰減太厲害。所以做相位提取之前先看看Range-Doppler譜上目標(biāo)峰值高出噪底多少dB低于15dB的基本就不要指望相位有多準(zhǔn)了。5. 工具箱與上手建議5.1 用現(xiàn)成芯片快速驗證相位模型對大多數(shù)人來說自己搭射頻前端不太現(xiàn)實。更快的路徑是拿一塊TI的IWR1443BOOST或者IWR6843ISK這類的評估板直接用毫米波SDK采集原始ADC數(shù)據(jù)在MATLAB或者Python里復(fù)現(xiàn)整條信號處理鏈路。這類板子原始數(shù)據(jù)格式為復(fù)數(shù)浮點獲取Phase數(shù)據(jù)不需要額外硬件純軟件就能完成。我習(xí)慣的做法是先用官方demo跑通一個標(biāo)準(zhǔn)的目標(biāo)檢測然后把輸出從目標(biāo)點云切換到距離維復(fù)數(shù)數(shù)據(jù)自己寫FFT和相位提取代碼。這個過程能幫你在真實數(shù)據(jù)上驗證理論上推的公式到底和實際吻合度有多高。我建議的起步練習(xí)是第一步在雷達(dá)前面放一個角反射器或光滑金屬板位置固定在1米左右。采集一幀原始數(shù)據(jù)。第二步畫出距離維FFT幅度譜確認(rèn)目標(biāo)峰值位置。第三步提取該峰值在連續(xù)幾十個chirp上的相位序列用unwrap處理之后看看是否平穩(wěn)。注意如果板子有通風(fēng)振動或者桌面有共振相位序列會出現(xiàn)周期性起伏。第四步用手以極慢的速度前后移動目標(biāo)哪怕只有零點幾毫米的位移觀察相位波形。你大概率會發(fā)現(xiàn)即使沒有任何精確的移動平臺手部微小顫動都能被雷達(dá)捕捉到這就是相位靈敏度的直觀體現(xiàn)。5.2 仿真先行沒有硬件也能把原理吃透如果你手頭暫時沒有硬件用MATLAB也好、Python也好都能先做一些一維仿真來驗證相位推導(dǎo)。仿真步驟就是按第二節(jié)的公式生成發(fā)射信號手動加上延時產(chǎn)生接收信號混頻低通后得到中頻復(fù)數(shù)信號再做FFT、提相位、看相位的演變規(guī)律。我當(dāng)年自己寫過一段很小的Python腳本驗證多普勒相移公式。設(shè)置S30MHz/μsf_c77GHz目標(biāo)以v1m/s遠(yuǎn)離雷達(dá)chirp周期T_c100μs理論上相鄰chirp之間的相位差應(yīng)該是4π×1×1e-4/3.9e-3≈0.3225rad。仿真得到的相位差和理論值誤差在1%以內(nèi)當(dāng)時的第一反應(yīng)是這么簡單的東西竟然能對上后來才意識到正是這種簡單的推導(dǎo)構(gòu)成了整套雷達(dá)信號處理的基石。仿真里還會發(fā)現(xiàn)一個有意思的事如果把目標(biāo)速度調(diào)大使相位差逼近π多普勒FFT會出現(xiàn)模糊超過π后峰值的速度估計會跳到一個錯誤的正負(fù)方向。這個現(xiàn)象在教科書上寫得很枯燥但親手跑到之后你的理解深度和看公式完全不是一個級別。5.3 三種FFT維度數(shù)據(jù)的組織形式用代碼寫Range-Doppler-Angle處理時最常出錯的就是數(shù)據(jù)維度的reshape。整理一下標(biāo)準(zhǔn)流程假設(shè)一幀數(shù)據(jù)由K個chirp組成每個chirp有N個采樣點接收天線數(shù)為Rx。那么ADC原始數(shù)據(jù)可以組織成一個三維數(shù)組axes: (N, K, Rx)第一步沿著N軸做距離FFT得到(N, K, Rx)的距離譜數(shù)據(jù)。第二步對距離譜數(shù)據(jù)沿著K軸做多普勒FFT得到(N, K, Rx)的Range-Doppler譜。第三步取某個距離-多普勒峰值的索引(n0, k0)把這個索引在所有Rx天線上的復(fù)數(shù)取出來得到長度為Rx的向量對這個向量做角度FFT峰值位置對應(yīng)來波方向。很多初學(xué)者搞不清楚為什么要分開處理三個維度而不是一次做三維FFT。數(shù)學(xué)上當(dāng)然可以做三維FFT但它把所有信息混在一起不便于逐級做濾波、CFAR檢測和門限處理。分步處理的好處是每一級都可以加入獨立的算法邏輯比如距離維加窗壓低旁瓣速度維做MTD動目標(biāo)檢測角度維做超分辨算法MUSIC、ESPRIT靈活得多。6. 常見問題與排查技巧實錄6.1 相位亂跳一幀一個樣這是最常見的現(xiàn)象。多數(shù)情況下是目標(biāo)太弱SNR不足噪聲主導(dǎo)了相位提取結(jié)果。排查路徑建議先看Range-Doppler譜上目標(biāo)峰值旁瓣高度確認(rèn)SNR是否在15dB以上檢查目標(biāo)是否在雷達(dá)的波束范圍內(nèi)比如墻角目標(biāo)可能在距離譜上露出一半旁瓣排查是否存在強干擾源比如附近Wi-Fi、5G頻段對77GHz的影響雖然小但板內(nèi)數(shù)字噪聲耦合到射頻前端的情況并不少見手動把雷達(dá)和目標(biāo)都用三腳架固定排除機械抖動還有一種情況目標(biāo)明明靜止但相位呈周期性變化。這時重點查電源開關(guān)電源的紋波調(diào)諧到VCO上會讓發(fā)射頻率產(chǎn)生周期性偏移最終體現(xiàn)為相位上的50Hz/100Hz成分。給板子換線性電源往往立刻見效。6.2 測速方向反了多普勒FFT的峰值出現(xiàn)在正頻率還是負(fù)頻率對應(yīng)目標(biāo)的徑向運動方向是靠近還是遠(yuǎn)離。如果方向反了大概率是I/Q極性接反也就是I路和Q路的正負(fù)號標(biāo)定搞反了。在接收鏈路里I/Q兩路誰為正、誰是負(fù)會影響復(fù)數(shù)的旋轉(zhuǎn)方向。排查方法是在雷達(dá)正前方把手機/鑰匙從近向遠(yuǎn)勻速移動分別記錄峰值在多普勒譜的哪個符號側(cè)。如果和預(yù)期相反在代碼里做復(fù)共軛或交換I/Q兩路再重新驗證。注意不同平臺的ADC采樣順序可能不同TI平臺里I/Q采樣順序是固定但如果你自己做的板子是分時采樣且ADC通道映射和代碼假設(shè)不一致就會出現(xiàn)這個經(jīng)典問題。6.3 距離FFT的峰值位置和理論距離對不上這個問題的根子通常不在相位而在起始頻率和調(diào)頻斜率標(biāo)定不準(zhǔn)。一般有兩種可能一是調(diào)頻斜率S有偏差實際值和寄存器配置值不一致導(dǎo)致同樣的時延算出不同的中頻頻率。這種情況在寬溫場景下尤其明顯溫度變化會讓VCO特性漂移。二是FFT頻率分辨率限制。FFT頻率最小分辨率為fs/N換算成距離分辨率是c/(2B)B是掃頻帶寬。比如B4GHz時距離分辨率約3.75cm。目標(biāo)在1.04m處和1.02m處峰值可能落在同一個bin上這時相位才是分辨二者微小差別的關(guān)鍵。6.4 相位解纏失敗曲線出現(xiàn)鋸齒這個問題的根子通常在chirp周期過長相鄰chirp之間的相位差超過π。比如你的目標(biāo)最快徑向速度是2m/schirp周期是150μs那么相鄰chirp相位差是4π×2×150e-6/3.9e-3≈0.97rad還沒超限如果速度到3m/s相位差就超過π了解纏就會出錯。處理方法很直接縮短chirp周期或者減小調(diào)頻周期內(nèi)的占空比。還有另一種思路是提高雷達(dá)的工作頻率比如從60GHz換到77GHzλ變短相位變化速度反而更快這會讓速度模糊問題更嚴(yán)重所以頻率選擇上需要權(quán)衡。6.5 相位精度不夠用如果你的應(yīng)用對相位精度要求很高比如位移測量要優(yōu)于0.1mm那么除了提升SNR之外還需要做系統(tǒng)級的校準(zhǔn)。主要包括幅度和相位校準(zhǔn)通過已知位置的角反射器標(biāo)定每個天線通道的幅相響應(yīng)溫度校準(zhǔn)記錄不同溫度下的相位偏移建立查找表補償逐個器件校準(zhǔn)混頻器、放大器、ADC的通路延遲都要做延遲校準(zhǔn)在77GHz頻段1ps的延遲差異在相位上大約是0.28度2π×77e9×1e-12≈0.48rad這里需要仔細(xì)算1ps×77e9×2π≈0.48rad≈27.7度可見延遲校準(zhǔn)多么敏感。通路里任何一個微小的長度差異或器件延遲漂移都會以相位誤差的形式呈現(xiàn)出來。7. 從相位出發(fā)還能往哪走中頻信號的相位這個知識點的價值不只是應(yīng)付考試或者看懂論文它是連接理論與實踐的一座橋。順著相位這條線索往深處走你可能會對下面幾個方向產(chǎn)生興趣微多普勒效應(yīng)運動目標(biāo)上不同部位的微動旋轉(zhuǎn)、振動會在相位上調(diào)制出邊帶這就是微多普勒分析的基礎(chǔ)常用于無人機槳葉識別、人體動作識別等。干涉雷達(dá)InSAR利用不同時刻觀測的相位差生成地面形變圖分辨率可以達(dá)到毫米級甚至亞毫米級。地質(zhì)監(jiān)測、橋梁形變監(jiān)測都用這個原理。太赫茲與光子雷達(dá)更高頻率的雷達(dá)波長更短相位對微小位移的敏感度更強但要同時應(yīng)對相位噪聲更大、高精度系統(tǒng)校準(zhǔn)更難的問題。我自己在這條路上踩過不少坑總結(jié)下來最重要的一點是分析問題時先回到物理模型動手寫代碼之前先把信號流、相位變化用筆推出來。很多看似復(fù)雜的信號處理問題只要弄清了哪個維度的FFT吃的是哪一組復(fù)數(shù)數(shù)據(jù)、相位在哪個維度起作用思路立刻清晰。最后再分享一個我實際操作中的小技巧調(diào)試相位相關(guān)算法時不要只看最終曲線務(wù)必把中間級的變量每個chirp的復(fù)數(shù)向量、unwrap前后的相位、SNR估算值全部打印出來逐幀對照。有一次我花了整整半天最后發(fā)現(xiàn)是一個信號從float轉(zhuǎn)換到int時截斷了低8位導(dǎo)致相位抖動量異常。這種問題只看最終位移曲線無論如何也定位不到只有對照中間變量才能一眼揪出來。希望這篇內(nèi)容能幫你少走一些我當(dāng)年走過的彎路。