如何在Zemax OpticStudio序列模式下進(jìn)行公差分析

如何進(jìn)行序列模式公差分析

公差分析是面向制造和裝配的產(chǎn)品設(shè)計中非常重要的一個環(huán)節(jié)。本文簡單地介紹了公差分析的基本流程,目的是為了讓初學(xué)者對公差分析有一定的了解。


本文案例

設(shè)計一款批量生產(chǎn)的激光擴(kuò)束器。

光源為:氬離子激光,1/e2時光束寬度為:2.5mm。目標(biāo):光束出射時1/e2的光束寬度擴(kuò)大為原來的3倍,波前差必須小于兩倍的光束全寬不超過1/20 RMS(即:整個光束直接控制在5mm以內(nèi))。

初始結(jié)構(gòu)及OPD Fan 圖


初始結(jié)構(gòu)中Ran Fan圖坐標(biāo)軸的最大刻度為0.01 波長, 因此PTV光程差(peak-to-valley OPD)少于1/200。RMS波前差為(可通過建立默認(rèn)波前評價函數(shù)得到)2.15*10-3 波長。本例的孔徑類型(system aperture)設(shè)置為高斯切趾(Gaussian apodization),入瞳直徑為5mm,切趾系數(shù)為2。因此光瞳邊緣的強(qiáng)度相對于峰值大約為1/e4=1.8%。

這就體現(xiàn)出正確設(shè)置系統(tǒng)參數(shù)的重要性了。5 mm 1/e2直徑的激光照射的系統(tǒng)的結(jié)果(RMS OPD:~2.10-3)與均勻光照射的結(jié)果(RMS OPD :3.10-3)肯定是不同的。因為當(dāng)光源為高斯光時,球差在光瞳邊緣的效應(yīng)相比于均勻光入射小很多。

接下來,我們來考慮制造誤差對系統(tǒng)的影響。


制造公差

公差分析目的是考慮制造誤差對系統(tǒng)的影響,因此設(shè)計時必須考慮實際的制造情況。為了能夠更好地分析公差,模擬出符合實際的情況,首先我們應(yīng)該了解系統(tǒng)所用鏡片在批量生產(chǎn)時的制造流程和測試方法。

Zemax OpticStudio 能夠模擬出各種各樣的制造和測試方式。本文范例中,我們假設(shè)系統(tǒng)透鏡是使用傳統(tǒng)的手動拋光制造。

制造公差可以在公差編輯器(Tolerance > Tolerance Data Editor)中設(shè)定。公差向?qū)В═olerance > Tolerance Wizard)可以幫助使用者加入一組常用的預(yù)設(shè)公差,必要時可手動編輯修訂。公差向?qū)У脑O(shè)定如圖

圖中“Surface Tolerance”中主要包含透鏡的表面誤差,例如半徑(Radius)、表面不規(guī)則度(Irregularity)等等。

“Element Tolerance”則包含了透鏡在系統(tǒng)中的位移和傾斜公差。由所給的預(yù)設(shè)公差分析設(shè)定,可以看出:

曲率半徑:傳統(tǒng)的公差測試方法是利用He-Ne激光器照射到double-pass系統(tǒng)中觀察其干涉條紋。本例中,我們使用條紋數(shù)來評估半徑,并且允許待測表面和原器件之間有一個條紋的公差。因為光源為He-Ne激光,因此我們將波長設(shè)定為0.6328。注意這并不是系統(tǒng)實際工作時的波長而是測試時所用的波長(實際工作為氬離子激光波長為0.5415微米)。

中心厚度:預(yù)設(shè)的公差為0.2mm,這里我們?nèi)孕杩紤]透鏡的安裝誤差,下文會詳細(xì)討論這一部分。

表面偏移以及傾斜:對于非球面表面來說離心以及傾斜是兩個不同的概念,例如拋物面鏡必須分別描述離心和傾斜公差,因為拋物面只有一個旋轉(zhuǎn)對稱軸。但是對于球面來說它有無限個旋轉(zhuǎn)對稱軸,因此離心和傾斜代表同一概念。在鏡頭制造時,一種常見的測量就是測量鏡片的楔形公差(Wedge)。楔形公差有兩種測量方法:將透鏡真空吸附固定(1)將激光照射到鏡片中心,旋轉(zhuǎn)透鏡觀察遠(yuǎn)方屏幕上光點的運動;(2)旋轉(zhuǎn)透鏡使用針盤量規(guī)(Dial Gauge)測量邊緣厚度的變化。接著微調(diào)透鏡位置,盡量縮小上述測試中楔形值。

本例中,我們假設(shè)制造商使用邊緣厚度變化作為測試方法。我們在X、Y兩個方向輸入0.2mm的最大傾斜,因此最大的半徑傾斜為sqrt(0.22+0.22)=0.28mm。

表面不規(guī)則度:可以定義為球差和像散的總和,也可以使用Zernike系數(shù)來定義(這主要是測量儀器為干涉儀時才這么定義)。本例中,我們使用第一種方法,并且設(shè)定表面不規(guī)則度為1/5。

元件公差:主要測量系統(tǒng)的“機(jī)械軸”對元件的偏差程度。

折射率公差:描述了實際的折射率與目標(biāo)設(shè)定值之間的差異。在本文范例中只用到了一個波長,所以我們不需要提供阿貝數(shù)(Abbe Number)公差,只需要簡單地分析折射率公差就可以了。Zemax OpticStudio也能夠建立后焦距的補(bǔ)償器。因為本例中系統(tǒng)是無焦的,所以不需要這個補(bǔ)償要將補(bǔ)償器的選項取消。

最后點擊 OK 則完成一組默認(rèn)公差的建立。


機(jī)械組裝和補(bǔ)償器

本例中,系統(tǒng)是由兩個平凸透鏡構(gòu)成,因此我們可以假設(shè)透鏡表面中平的那一面用來組裝對位,也就是這一表面會靠在組裝結(jié)構(gòu)上,同時,假設(shè)兩透鏡之間的距離200mm可以在組裝以及使用時調(diào)整,這樣該激光擴(kuò)束器就可以用在不同的波長上。

觀察表面2和表面3構(gòu)成的透鏡,表面3是平面,也就是表面3會靠在機(jī)械結(jié)構(gòu)上,所以可以使用TIRX和TIRY來定義表面2相對于表面3的楔形公差。同時,我們不需要指定表面3的TIRX和TIRY,這些可以刪除掉。

類似地,對于表面4和表面5構(gòu)成的透鏡,表面4靠在機(jī)械結(jié)構(gòu)上。因此表面5的楔形公差是相對于表面4的,所以應(yīng)該刪除表面4的TIRX和TIRY。

“厚度”定義了兩元件之間Z方向的位移量,設(shè)置一個表面的厚度公差不僅僅會影響到所設(shè)置的表面,也會影響到系統(tǒng)的其他表面。我們需要了解組裝過程是如何影響厚度公差的。

當(dāng)?shù)谝粋€透鏡的背面承靠在機(jī)械結(jié)構(gòu)上,公差分析增加厚度意味著透鏡會“往回增長”,并且光學(xué)系統(tǒng)的長度會增加。

TTHI(厚度公差)允許我們指定一個“調(diào)節(jié)面”來修正厚度變化。例如,如果透鏡的前表面被承靠在機(jī)械結(jié)構(gòu)上,并且它的厚度在公差分析時額外增加了,這時透鏡將會往200mm的空氣間隔方向上稍微突出一點,因此實際的空氣間隔會小于200mm。Zemax OpticStudio 可以通過“Adjust” 參數(shù)實現(xiàn)這一功能。

默認(rèn)公差是假設(shè)所有的透鏡厚度都會被下一個空氣界面所吸收,即系統(tǒng)假設(shè)這個透鏡的承靠面都是前表面。這個調(diào)節(jié)參數(shù)是可開可閉的,如果要關(guān)閉它只要把“Adjust” 參數(shù)和“Surf”設(shè)置一樣既可,例如:TTHI 2 2。本文范例中,玻璃的厚度并不會被其他厚度所補(bǔ)償,因此我們需要取消這一范例中的補(bǔ)償設(shè)定。

此外,表面1和表面5的厚度其實不重要,他們只是表示光線的進(jìn)出而已,因此對應(yīng)的公差操作數(shù)也可以刪除。

因為表面3的厚度(兩透鏡之間的200mm空氣間隔)可以在組裝和實際使用中調(diào)節(jié),所以不應(yīng)該設(shè)定為公差分析中的一部分,表面3的TTHI設(shè)定也應(yīng)該刪除。同時,表面3的厚度將會被設(shè)定為補(bǔ)償器,用來調(diào)節(jié)波前差的最小化,設(shè)置方法是在Tolerance Data Editor中輸入:COMP 3 0 -0.2 +0.2,代表定義了一個厚度補(bǔ)償器,范圍是-0.2~+0.2mm。

測試公差分析設(shè)定

在公差分析的過程中,人們往往會忽略檢查公差分析設(shè)定的正確性。這很重要,因此我們建立一些Monte-Carlo分析,并了解系統(tǒng)做了些什么事情。

打開“Tolerance > Tolerancing”,先擊"Reset"恢復(fù)所有的預(yù)設(shè)設(shè)定,然后再按照下面步驟進(jìn)行設(shè)定

這些設(shè)定表示Zemax OpticStudio只會建立Monte-Carlo分析檔案,文件名為“MC_Txxxx”,其中xxxx是數(shù)字。點擊OK執(zhí)行上面步驟,并打開其中一個文件,你會看到如下設(shè)定(實際數(shù)字可能會有所不同)。注意在執(zhí)行公差分析時會有如下警告信息: “Solves should be removed prior to tolerancing. Semi-diameter should be fixed”, 在本例中可以不予考慮。

從上圖中,可以看到Zemax OpticStudio的分析過程。

例如“Element Tolerances” (TE**操作數(shù))被設(shè)置為一些Coordinate Break,從而使元件傾斜或者離心。原本設(shè)定中是Standard的表面現(xiàn)在被設(shè)置為了Irregular的表面形態(tài),因此可以考慮球差或者像散。同樣,透鏡參數(shù)例如厚度、半徑、玻璃材料等現(xiàn)在都不是原始值,而是加入了一些擾動來模擬公差。注意:兩個透鏡之間的厚度被設(shè)定為變量,并且評價函數(shù)被定義如下圖

請仔細(xì)查看Monte Carlo文檔,以確保你了解并認(rèn)可Zemax OpticStudio為公差分析所作的改變。


執(zhí)行公差分析

重新打開公差分析前的初始結(jié)構(gòu),打開OPD圖,將坐標(biāo)軸刻度最大值調(diào)節(jié)到0.1波長。

我們一會用這個圖和Monte-Carlo結(jié)果比較。接著,再次打開公差分析設(shè)定窗口,點擊“Reset” ,取消之前的改變并恢復(fù)預(yù)設(shè)值。然后按照如下步驟進(jìn)行公差分析。

對圖中各選項解釋如下:

Set-Up選項卡

對于 “Mode” 中各項的解說如下:

Sensitivity模式會讀取每一個公差操作數(shù)的最大和最小值,并計算評價標(biāo)準(zhǔn)值會有多大的改變,最后列表整理。公差分析評價標(biāo)準(zhǔn)的定義在 “Criterion”區(qū)域中設(shè)定。

下一章“Criterion區(qū)域”會詳細(xì)介紹。

Inverse Limit 模式下,使用者可以在 “Criterion”區(qū)域中指定一個評價標(biāo)準(zhǔn)極限。然后系統(tǒng)會計算每一個公差操作數(shù)偏離多少時會得到這個評價標(biāo)準(zhǔn)的極限值。Inverse表示逆向,它會改變公差操作數(shù)的最大最小值。

Inverse Increment 模式與Inverse Limit接近,不同的是Inverse Increment指定的是相對于原始設(shè)計評價標(biāo)準(zhǔn)所允許的變化量。

Skip Sensitivity 模式將會略過所有的敏感度分析,直接開始Monte Carlo分析。

我們將不會討論這個設(shè)定框中其他的設(shè)定,請在Help文件中查找具體的設(shè)定細(xì)節(jié)。

本例中選擇“Sensitivity”模式。

Criterion選項卡

這個選項卡主要是設(shè)定在公差分析過程中要應(yīng)用的評價標(biāo)準(zhǔn)。這邊的設(shè)定通常與評價函數(shù)有關(guān),但不完全是評價函數(shù)。

公差分析的評價標(biāo)準(zhǔn)通常是純光學(xué)的數(shù)值(優(yōu)化函數(shù)則還會包含一些邊界條件)。為了方便,Zemax OpticStudio提供了一些最常用的公差評價標(biāo)準(zhǔn),使用者可以直接在下拉菜單中選擇,這些選項包含:

● 點列半徑 Spot radius

● 波前差 Wavefront error

● MTF

● 瞄準(zhǔn)誤差 Boresight error

● 角空間半徑 Angular radius

不論選擇哪一個,他們在后臺都通過評價函數(shù)來實現(xiàn),如果有需要也可以建立自己的評價函數(shù),設(shè)定自己的公差評價標(biāo)準(zhǔn)。

Monte-Carlo 選項卡

不像Sensitivity或者Inverse sensitivity分析,Monte-Carlo分析會讓所有的擾動同時生效。Monte-Carlo的每進(jìn)行一次循環(huán)計算,所有被設(shè)定為公差的參數(shù)都會在設(shè)定范圍內(nèi)根據(jù)指定的統(tǒng)計模型隨機(jī)選取。默認(rèn)中,所有的公差操作數(shù)都使用一樣的正態(tài)分布,其寬度為4個標(biāo)準(zhǔn)差,兩端分別為公差操作數(shù)的最大和最小值。默認(rèn)分布模型可以使用STAT指令改變,這部分超出了這篇文章的討論范圍。

對話框中有"Overlay MC Graphics"選項,如果勾選則系統(tǒng)每次Monte Carlo會自動更新繪圖窗口,并把計算結(jié)果疊加上去。這是一個很好的視覺化功能,可以協(xié)助判斷公差分析能否達(dá)到令人滿意的結(jié)果。

Display選項卡

在Display選項卡中的設(shè)定并不會影響公差分析,只是定義公差分析的報告中的數(shù)據(jù)量。

到此設(shè)定結(jié)束,點擊OK,執(zhí)行公差分析。


公差分析結(jié)果

因為我們之前設(shè)定了重疊Monte-Carlo分析圖,并且在軟件中我們打開了OPD圖,因此可以看到OPD圖中看到20個Monte-Carlo循環(huán)計算的結(jié)果:看起來距離我們的目標(biāo)0.05的RMS波長還很遠(yuǎn)。

在靈敏度分析(Sensitivity Analysis)的過程中,Zemax OpticStudio首先計算原始設(shè)計系統(tǒng) (nominal system)的公差標(biāo)準(zhǔn),讀取第一個公差操作數(shù),將其調(diào)整到最小值,調(diào)整補(bǔ)償器(優(yōu)化),返回公差評價標(biāo)準(zhǔn)值。然后再重復(fù)操作,但這次是將公差操作數(shù)調(diào)整到最大值。最后所有公差都會執(zhí)行這一步驟。執(zhí)行結(jié)果如下:

注意原始設(shè)計(nominal)的公差評價標(biāo)準(zhǔn)為0.0022即1/400。我們要求在批量生產(chǎn)時有1/20或者0.05波長,而系統(tǒng)中一部分公差本身就超過了這一標(biāo)準(zhǔn),例如增加了補(bǔ)償之后,單單第二片透鏡的折射率公差就使得波前差降到了0.058 波長。在所有公差單獨計算后,Zemax OpticStudio 會計算各種不同的統(tǒng)計資料。其中最重要的就是 "Estimated Change" 以及 “Estimated Performance” (本文中為Estimated RMS Wavefront)。Zemax OpticStudio使用RSS(Root Sum Square)的計算方法計算Estimated Change。對于每一個公差操作數(shù),相對于原始設(shè)計的評價標(biāo)準(zhǔn)變量的計算方法是最大與最小公差的評價標(biāo)準(zhǔn)的改變各自平方后再取平均值。最大與最小取平均是因為它們不會同時發(fā)生,如果相加會導(dǎo)致過分悲觀的預(yù)測。至此,我們計算出了一個最終成品值的預(yù)測。

對于這個系統(tǒng),由下圖可以看出,RSS計算預(yù)測了系統(tǒng)的表現(xiàn)應(yīng)該是0.0597波長,我們目標(biāo)為0.05。Monte-Carlo的預(yù)測也大致相符。雖然只有20個測試范本,結(jié)果相對比較粗糙。從下表可以看出,RMS波前差低于0.05的鏡頭的良品率略少于80%。

很明顯,如果需要提高良品率,需要再收緊公差。我們可以手動調(diào)節(jié)公差編輯器,然后再執(zhí)行一次公差分析,我們也可以利用反靈敏度分析 (Inverse Sensitivity Tolerancing)自動完成。


反靈敏度分析

在靈敏度分析模式(Sensitivity mode)中,Zemax OpticStudio讀取公差操作數(shù),并計算系統(tǒng)性能降低程度。在反靈敏度分析模式 (Inverse Sensitivity mode)中,Zemax OpticStudio則是被給予一個允許的性能降低范圍,并且系統(tǒng)必須找到一個可以達(dá)到這個性能目標(biāo)的公差的最大最小值。分析步驟如下:

在Set-Up中設(shè)定Inverse Sensitivity

在Criterion中,注意看“Limit”欄可以輸入?yún)?shù)了,點擊check,獲得原始設(shè)計(nominal system)的公差評價標(biāo)準(zhǔn)。

然后輸入我們的目標(biāo)值,我們假設(shè)為0.0075,因此每一個單獨的公差操作數(shù)都不能讓評價函數(shù)標(biāo)準(zhǔn)低于1/130。

其他維持原本設(shè)定,并重新執(zhí)行公差分析。

可以看到Root Sum Square和Monte-Carlo中的結(jié)果變得非常漂亮:

但是,其實20個Monte-Carlo循環(huán)其實是不夠的。粗略的來說如果有N個公差操作數(shù),至少需要N2 個Monte-Carlo循環(huán)才符合適當(dāng)?shù)娜臃治觥1纠形覀冇?4個公差操作數(shù),至少要242=576個Monte-Carlo循環(huán),我們設(shè)定1000 Monte-Carlo取樣得到如下結(jié)果:

重新打開公差編輯器,可以發(fā)現(xiàn)系統(tǒng)自動修改了一些最大最小值,以符合逆向敏感度分析,這些改變都在制造可以要求的范圍內(nèi)。

注意:執(zhí)行1000 Monte-Carlo分析,作者的8核電腦中只用了26秒就可以完成。Zemax OpticStudio并沒有使用任何一階或者其他近似方法來猜測擾動對波前的公差分析的效果。每一個評價函數(shù)都在完整精度的透鏡波前差計算中完成的。


總結(jié)

公差分析是一個復(fù)雜的流程,這篇文章介紹了公差分析的整個流程,內(nèi)容包括:

(1) 優(yōu)化你的設(shè)計直到超越目標(biāo)規(guī)格,且要超過一定適當(dāng)?shù)牧俊?/p>

(2) 建立一組默認(rèn)公差操作數(shù)。Zemax OpticStudio提供超過一種方法來模擬同一種公差,你必須選擇最能代表實際制造,測試以及組裝時使用的方法。

(3) 編輯公差操作數(shù)以考慮不同的組裝方式,并加入可能的補(bǔ)償器。

(4) 定義公差評價標(biāo)準(zhǔn),此標(biāo)準(zhǔn)須符合實際工廠的測試方式。

(5) 建立一些Monte-Carlo文件并確認(rèn)公差操作數(shù)有依照你預(yù)想的方式工作。

(6) 執(zhí)行靈敏度分析。

(7) 手動緊縮一些棘手的公差,或者使用逆向敏感度分析Inverse Sensitivity,讓Zemax OpticStudio自動計算。

(8) 一旦確定你的公差都沒有問題之后,設(shè)定執(zhí)行N2個Monte-Carlo分析,其中N為公差操作數(shù)的數(shù)量。

(9) 檢查反靈敏度分析產(chǎn)生的公差操作數(shù)參數(shù)值,確保他們在合理的范圍內(nèi)。

請記住,并不是所有設(shè)計的公差分析結(jié)果都可以符合成本利益,很可能為了達(dá)到你的設(shè)計目標(biāo),你需要分析許多不同的設(shè)計。

小伙伴們還有什么想要了解的問題,歡迎踴躍留言,小編之后會根據(jù)大家的需求進(jìn)行推送噠!