“詳細介紹了 SAR 無人機的結構設計及成像原理。”
結構設計
Blender中的無人機模型
無人機需要一些機械部件來將雷達固定在機身上。飛行控制器安裝在機身內部,但內部沒有足夠空間容納雷達,因此我設計了一個3D打印支架,將雷達PCB安裝在無人機機身下方。這種安裝位置還需要配備起落架,以防止無人機降落時直接壓在雷達上。由于我不熟悉任何機械CAD軟件,我使用Blender完成了這個設計。對于這些簡單部件而言,Blender完全能夠勝任。
無人機下方搭載雷達
雷達支架將雷達PCB固定在無人機機身上。為它配備某種防水防塵外殼會更好,但目前尚未完成。我在PCB上方覆蓋了一些材料,以防起落架失效時保護電路板。
雷達支架通過四顆螺絲與無人機連接。無人機無線電控制器的天線可見于左下方。螺旋槳采用可折疊設計,這種設計顯著提升了便攜性,折疊后整機可裝入背包攜帶。
接收器極化開關 PCB
天線板通過兩顆可調節角度的螺栓固定。飛行控制器的串口連接至其中一個JST接頭上,另一個未使用的JST接頭目前僅用膠帶臨時固定在原位。
發射端的極化切換開關和兩個SMA接口集成在主電路板上,而接收端的極化切換開關因空間限制被單獨放置于另一塊電路板。雖然雷達支架上預留了安裝孔,但由于SMA線材硬度較高,最終選擇直接懸空固定該電路板。極化切換開關通過另一組JST連接器與雷達電路板相連。
帶起落架的無人機
起落架采用直徑10厘米的碳纖維管制作,末端配有3D打印的TPU材質端蓋。雖然更小直徑的管材可能也適用,但當前選用的碳管剛度極佳,在著陸過載時其他結構件會先于它們發生損壞。
雷達系統直接由無人機電池供電。通過XT60分線器將飛行控制器和雷達并聯接入同一電池組。
無人機在廚房天平上保持平衡 無人機空載(不含電池)重量僅為752克(1.66磅)。配備兩塊六芯鋰聚合物電池,其中容量較小的1300毫安時電池重196克,容量較大的2200毫安時電池重322克。使用小容量電池時,整套系統總重僅948克。
雷達成像原理
雷達通過測量目標的距離與相位信息進行成像。為將這些測量值轉換為雷達圖像,可采用匹配濾波技術:針對圖像中的每個像素點,生成該位置目標反射的參考信號;將測量信號與參考信號的復共軛逐次相乘,并對所有測量結果進行累加。當測量信號與參考信號高度匹配時,相位一致性會使乘積顯著增強;若失配,則乘積表現為隨機相位的復數,累加后相互抵消,最終呈現低響應值。
成像過程可表述為:
其中:
P為圖像像素集合
N為雷達測量次數
Sn為傅里葉變換后的測量中頻信號sn
d(p,xn)表示第n次測量時雷達位置xn到像素點p的距離
H?為圖像中目標位置參考函數的復共軛(即該位置目標反射中頻信號的傅里葉變換))
此方法稱為反投影算法,其優勢在于原理簡單且無需對飛行幾何路徑進行近似假設,但計算量極大。例如,1 千米 x 1 千米的圖像分辨率為 0.3 米,雷達掃描次數為 10,000 次,計算圖像需要
次反投影運算。這意味著一幅圖像需要超過 1000 億次的復指數和平方根計算,而圖像大小和掃描次數在實際應用中可能更大。有一些巧妙的算法可以用來加快計算速度,但它們通常都是近似值,或者只適用于線性飛行軌跡。使用極坐標而非笛卡爾坐標是一種簡便易行的改進方法,由于角度分辨率不變,圖像中需要的像素較少,而在靠近雷達的地方,跨距分辨率較高。極坐標圖像隨后可插值到笛卡爾網格。
__global__voidbackprojection_polar_2d_kernel( const complex64_t* data, constfloat* pos, complex64_t* img, intsweep_samples,intnsweeps,floatref_phase, floatdelta_r,floatr0,floatdr,floattheta0, floatdtheta,intNr,intNtheta,floatd0) { constintidx=blockIdx.x * blockDim.x + threadIdx.x; constintidtheta=idx % Ntheta; constintidr=idx / Ntheta; if(idr >= Nr || idtheta >= Ntheta) { return; } constfloatr=r0 + idr * dr; constfloattheta=theta0 + idtheta * dtheta; constfloatx=r * sqrtf(1.0f- theta*theta); constfloaty=r * theta; complex64_tpixel={0.0f,0.0f}; for(inti=0; i < nsweeps; i++) {? ? ? ??// Sweep reference position.? ? ? ??float?pos_x?=?pos[idbatch * nsweeps *?3?+ i *?3?+?0];? ? ? ??float?pos_y?=?pos[idbatch * nsweeps *?3?+ i *?3?+?1];? ? ? ??float?pos_z?=?pos[idbatch * nsweeps *?3?+ i *?3?+?2];? ? ? ??float?px?=?(x - pos_x);? ? ? ??float?py?=?(y - pos_y);? ? ? ??float?pz2?=?pos_z * pos_z;? ? ? ??// Calculate distance to the pixel.? ? ? ??float?drx?=?2.0f?* sqrtf(px * px + py * py + pz2) - d0;? ? ? ??float?sx?=?delta_r * d;? ? ? ??// Linear interpolation.? ? ? ??int?id0?=?sx;? ? ? ??int?id1?=?id0 +?1;? ? ? ??if?(id0 = sweep_samples) { continue; } complex64_ts0=data[i * sweep_samples + id0]; complex64_ts1=data[i * sweep_samples + id1]; floatinterp_idx=sx - id0; complex64_ts=(1.0f- interp_idx) * s0 + interp_idx * s1; floatref_sin, ref_cos; sincospif(ref_phase * d, &ref_sin, &ref_cos); complex64_tref={ref_cos, ref_sin}; pixel += s * ref; } img[idr * Ntheta + idtheta] = pixel;}若在數年前,如此龐大的計算量堪稱天方夜譚,但現代GPU技術已能在1秒內完成運算。該問題尤其適合GPU并行計算架構——每個像素的反投影運算均可獨立并行執行。基于RTX 3090 Ti顯卡的基礎CUDA內核即可實現每秒2200億次反投影運算(每次運算需執行平方根與復指數運算,后者可通過正弦/余弦函數實現)。考慮到當前實現僅為未經優化的直接算法版本,具備CUDA開發經驗的工程師完全能通過優化手段進一步提升性能,且無需引入任何近似計算或精度損失。
自動對焦
自動對焦框圖
GPS 和 IMU 的定位精度不足以形成高質量的圖像。理想情況下,位置誤差應精確到波長的幾分之一,但現有 GPS 的精度無法滿足要求。為了獲得高質量的圖像,必須使用自動對焦算法,利用雷達數據信息對雷達圖像進行對焦。
最常用的自動對焦算法是相位梯度自動對焦。這是一種簡單、快速的自動對焦算法,其工作原理是將未對焦的雷達圖像作為輸入,求解出一個相位矢量,與圖像的方位 FFT 相乘后得到一個對焦圖像。但是,由于方位波束較寬,雷達基線較長,導致聚焦誤差與空間有關,因此在這種情況下效果不佳。
我優化了之前的反向傳播自動對焦,使用 PyTorch 并做了一些改進。這種自動對焦算法的工作原理是形成雷達圖像,計算輸入速度的梯度,并裁剪學習率,將最大位置變化限制在預定義值內。然后使用梯度下降優化器更新輸入速度。我發現使用三維位置的效果并不好,因為它往往會將每個位置向隨機方向推移。相反,使用速度并將其與位置進行整合,似乎會產生更好的效果。我們還加入了一個小的正則化約束,引入正則化項最小化優化位置與原始位置偏差,抑制過度修正。
根據最大位置變化調整學習率可以更容易地設置優化器元參數。我們不直接設置學習率,而是預設最大位置變化動態,并以此來設置學習率。
這是一種非常通用的自動對焦算法,對雷達系統、場景或飛行軌跡不做任何假設。其明顯的缺點是,它需要多次形成雷達圖像,使本已緩慢的圖像形成速度更慢。如果沒有 GPU 的快速圖像形成,這種方法就會因為速度太慢而無法發揮作用。
自動對焦算法可在 Github 上獲取:
https://github.com/Ttl/torchbp
原文轉載自 https://hforsten.com/homemade-polarimetric-synthetic-aperture-radar-drone.html,已進行翻譯及校對優化
注意:如果想第一時間收到 KiCad 內容推送,請點擊下方的名片,按關注,再設為星標。
常用合集匯總:
和 Dr Peter 一起學 KiCad
KiCad 8 探秘合集
KiCad 使用經驗分享
KiCad 設計項目(Made with KiCad)
常見問題與解決方法
KiCad 開發筆記
插件應用
發布記錄
審核編輯 黃宇
-
無人機
+關注
關注
230文章
10652瀏覽量
184768 -
雷達系統
+關注
關注
6文章
257瀏覽量
28989
發布評論請先 登錄
相關推薦
科達嘉電感在無人機系統中的應用
無人機載合成孔徑雷達系統研制手記(二):電子設計及天線

一些著名的微型SAR

激光雷達在無人機中的應用實例
智能化升級:機載無人機攝像頭如何自動識別目標?

揭秘!機載無人機攝像頭的黑科技:從偵察到打擊的全能之眼

評論