Ansys Zemax | 使用 OpticStudio 進(jìn)行閃光激光雷達(dá)系統(tǒng)建模(中)
在消費(fèi)類電子產(chǎn)品領(lǐng)域,工程師可利用激光雷達(dá)實(shí)現(xiàn)眾多功能,如面部識別和3D映射等。盡管激光雷達(dá)系統(tǒng)的應(yīng)用非常廣泛而且截然不同,但是 “閃光激光雷達(dá)” 解決方案通常都適用于在使用固態(tài)光學(xué)元件的目標(biāo)場景中生成可檢測的點(diǎn)陣列。憑借具有針對小型封裝結(jié)構(gòu)但可獲取三維空間數(shù)據(jù)方面的優(yōu)勢,固態(tài)激光雷達(dá)系統(tǒng)在智能手機(jī)和筆記本電腦等消費(fèi)類電子產(chǎn)品中日益普及。在這個系列的文章中,我們將探討如何使用 Ansys Zemax OpticStudio 對此類系統(tǒng)進(jìn)行建模,包括從序列初始設(shè)計(jì)到集成機(jī)械外殼的整個流程。
該文章為閃光激光雷達(dá)系統(tǒng)建模系列文章的第二篇。(點(diǎn)擊查看第一篇)
下載
聯(lián)系工作人員獲取附件
簡介
激光雷達(dá)系統(tǒng)在工業(yè)界中有著多種場景下的應(yīng)用,對應(yīng)于不同種類的激光雷達(dá)系統(tǒng)(比如用于掃描元件或確定視野的系統(tǒng)等),本示例將主要探索如何使用衍射光學(xué)元件來復(fù)制光源陣列在目標(biāo)場景中的投影。成像透鏡系統(tǒng)隨后可觀察到投影的光源陣列,以獲取投射光線的飛行時間信息,進(jìn)而生成投影點(diǎn)的深度信息。
在本文中,我們將介紹如何將上篇的序列模式起始結(jié)構(gòu)進(jìn)行轉(zhuǎn)換,并向非序列模型中添加更多細(xì)節(jié)。我們還將應(yīng)用 ZOS-API 在閃光激光雷達(dá)系統(tǒng)中生成一些時間飛行結(jié)果。
初始轉(zhuǎn)換至非序列模式
為了觀察這兩個模塊結(jié)合成為整個系統(tǒng)將如何工作,我們可以在每個系統(tǒng)中使用 “轉(zhuǎn)換至非序列模式組” 工具(可以在 文件選項(xiàng)卡…轉(zhuǎn)換至非序列模式組 中找到)來生成照明和成像子系統(tǒng)的非序列模型。在照明模塊(清除多重結(jié)構(gòu)編輯器,只保留一種結(jié)構(gòu))和成像模塊中,轉(zhuǎn)換至非序列模式組工具將使用以下設(shè)置:
以下為非序列模式下各子系統(tǒng)的轉(zhuǎn)換輸出結(jié)果:
組合模塊
在此階段,我們可以進(jìn)行一些編輯,以更輕松地組合模塊。在最終裝配中,我們假設(shè)照明模塊的光源和成像模塊的傳感器在同一個平面上,因?yàn)槲覀兛梢韵胂笏鼈冊谡麄€系統(tǒng)中共享同一個電路板。我們在非序列模式中采用的總體方法是:
對于照明模塊而言:
重新定義模塊中物體的布局,使光源位于全局 Z 位置原點(diǎn)
在模塊的 “像平面” 上移除三個探測器中的兩個,增加其余探測器的尺寸,并應(yīng)用鏡面材料(因?yàn)檫@最終會起到散射壁面的作用)
刪除三個光源中的兩個,因?yàn)槲覀兒芸鞎庉嬍S嗟墓庠醋鳛槎O管光源陣列
對于成像模塊而言:
從模塊中移除光源
移除三個檢測器中的兩個,并根據(jù)序列模式文件的尺寸增加其余檢測器的尺寸
重新定義像平面的物體參考擺放情況
包含上述修改的示例文件,已作為本文章附件添加至附件下載部分。示例文件分別為:“FlashLidar_Emitter_DiffGrat_PostEdit.ZAR” 以及 “FlashLidar_Receiver_PostEdit.ZAR”。
調(diào)整后,我們可以通過復(fù)制和粘貼將成像模塊物體插入到照明模塊的非序列元件編輯器中。粘貼后,我們需要確保為插入后的物體重新編號 “參考物體 (Reference Object)” 參數(shù),以指向新的物體編號(如適用的話),例如我們的成像模塊光學(xué)元件現(xiàn)在需要指向組合模型中的 “物體10”(“成像模塊參考” 為空物體)。然后使用參考空物體編輯 X 位置來確定模塊的布局:
完整裝配體的最終細(xì)節(jié)
為了確定模型,我們首先需要更新光源定義,以整合關(guān)于陣列和發(fā)射特性的其他詳細(xì)信息。我們使用以下參數(shù)將光源從橢圓光源(Source Ellipse)轉(zhuǎn)換到二極管(Source Diode)光源物體:
參考物體:1
X-/Y-發(fā)散角:5°
X-/Y-超高斯系數(shù):0
X’/Y’-數(shù)量:5
Delta-X/Y:32mm
在我們的場景中生成完整的光斑陣列需要修改衍射光柵(Diffraction Grating)物體的物體屬性(Object Properties)。對于每個衍射光柵,我們通過衍射(Diffraction)選項(xiàng)卡中的 “分裂” 設(shè)置來定義衍射級次,使用 “按以下表格分裂” 實(shí)現(xiàn)每個衍射級次的理想、均勻傳輸。為簡單起見,將 I.99999999 的理想膜層定義放在兩個模塊所有元件的前后表面上。通過這些修改,一旦允許在 3D視圖(3D Viewer)中分裂光線,我們就可以查看完整的投影點(diǎn)陣列:
為了使壁面物體作為散射表面,在 “散射壁面” 探測器上應(yīng)用了朗伯散射配置文件。同樣,我們還通過設(shè)置 I.0 膜層(確保100%反射)和散射分?jǐn)?shù)(Scatter Fraction)值為1,使壁面成為理想的反射和散射表面。然而,在當(dāng)前定義中,由于廣角散射,散射光線很少能追跡到成像模塊。因此,重點(diǎn)采樣(Importance Sampling)可用于迫使光線向任何指定物體的頂點(diǎn)散射(參閱文章“如何利用重點(diǎn)采樣進(jìn)行高效的散射建模” (英文原文),了解關(guān)于重點(diǎn)采樣工作原理的更多詳情)。我們將使用的目標(biāo)是 “物體11”,即成像模塊的物理孔徑,尺寸值為 0.7 mm。
當(dāng)瞄準(zhǔn)目標(biāo)物體時,由于重點(diǎn)采樣會降低散射光線的功率(以考慮光線從表面法線散射時的實(shí)際功率降低),因此需要降低最小相對光線強(qiáng)度(Minimum Relative Ray Intensity),以允許 OpticStudio 追跡這些較低能量的光線。在這種情況下,設(shè)置為 1e-8 可以追跡光線,我們可以看到光線現(xiàn)在可以離開照明模塊,由成像模塊捕獲。應(yīng)該注意的是,在兩個模塊之間引入了一個吸收矩形物體,以防止照明系統(tǒng)的雜散光影響成像透鏡探測器。
現(xiàn)在,我們可以觀察投影到壁面上的點(diǎn)列圖案以及通過成像透鏡觀察到的點(diǎn)列圖案。該步驟的示例文件已經(jīng)保存為:“FlashLidar_FullSystem.ZAR”:
時間飛行考慮
激光雷達(dá)系統(tǒng)通過測量光到達(dá)探測器時的飛行時間來獲得場景的深度信息。例如,傳感器通常是時間門控的,以捕獲從觀察到的場景中散射的入射光束的信息。
通過利用 ZOS-API 來構(gòu)建用戶分析(User Analysis),我們可以獲得落在最終矩形探測器上的每條光線的飛行時間數(shù)據(jù);通過解析 ZRD 文件并分析落在成像模塊傳感器上的光線路徑長度,從而獲得所觀察場景的深度。知識庫文章 “如何使用ZOS-API創(chuàng)建飛行時間用戶分析” 包含了構(gòu)建這類用戶分析的更多信息,我們將直接使用該分析。
在閃光激光雷達(dá)系統(tǒng)中,添加了一些相關(guān)的幾何結(jié)構(gòu)用例,例如一個小型桌子模型和一個用作手勢識別的(極為簡化)拳頭大小的球體。
在運(yùn)行用戶分析(User Analysis)之前,需要先進(jìn)行光線追跡,并且需要在光線追跡控制(Ray Trace Control)窗口中保存光線追跡數(shù)據(jù)。然后,用戶分析將能夠讀取保存的.ZRD文件。在分析中使用以下設(shè)置,我們可以獲得以下深度輸出:
有了這些結(jié)果,我們可以區(qū)分場景中的不同特性以及它們在不同深度的位置。例如,我們粗略的 “拳頭” 示意球體位于用戶分析輸出的左上角,而位于桌子模型頂部的杯子則位于場景右上角稍遠(yuǎn)一些的位置。為了進(jìn)行演示,我們用矩形光源(Source Rectangle)使光源的全部區(qū)域發(fā)光,使場景充滿照明,從而更容易看到整個場景的深度信息:
通過設(shè)計(jì)閃存激光雷達(dá)系統(tǒng)的照明模塊和成像模塊,我們可以在最終的探測器平面上求解所投影的點(diǎn)陣列,并利用 ZOS-API 創(chuàng)建用戶分析,以獲取點(diǎn)陣列所到達(dá)的幾何結(jié)構(gòu)的深度信息。能夠求解所觀察場景的特征并檢索距離信息,意味著這些信息能夠傳送至計(jì)算軟件生成圖像供用戶查看,并利用用戶的運(yùn)動數(shù)據(jù)在計(jì)算機(jī)生成的場景中產(chǎn)生一些變化。
結(jié)論
在本文章中,我們已經(jīng)介紹了序列模式下的閃光激光雷達(dá)照明和成像模塊是如何轉(zhuǎn)換到非序列模式的。我們還演示了如何改進(jìn)模型,以及將兩個模型合并到單個 OpticStudio 文件中的一些方法。此外,還定義了光源的其他細(xì)節(jié),并定義了遠(yuǎn)距離壁面上的散射屬性,以驗(yàn)證穿過整個系統(tǒng)的光線追跡。最后,我們討論了 ZOS-API 中內(nèi)置的自定義用戶分析的用法,該分析返回了全閃光激光雷達(dá)系統(tǒng)的時間飛行數(shù)據(jù)。