ZEMAXR 自由曲面、HMD/HUD应用-------------------之 自由曲面公差分析 ;`s/|v T4J(8!7
mi<V(M~p 引言: uK3,V0 yz 0j_`7<,: 近年来,自由曲面用于光学设计日渐成熟,尤其是随着头戴显示器(HMD
),平视显示器(HUD
)的热潮,在增强现实,混合现实(AR/MR
)及车载显示中更是大放异彩。 ks:Z=%o #pE:!D 自由曲面对于光学设计仍然是一个系统级的工程,不仅需要考虑优化的高效收敛性,还要考虑公差特性及可加工特性等。成像光学应用层次上,自由曲面的公差特性是一个颇为严格的指标,对像质影响极大,极大的关乎产品的良率。 cFD(Ap RzFv``g 然而目前几乎所有的光学软件都没有很好的评价工具对自由曲面进行公差分析。本文结合自由曲面公差分析的着重点,分析了一些常规方法的局限性;并通过自开发的模块,结合一些案例,给出了较为完整的解决方案。借以抛砖引玉,共同提高! co@Q
z.P)
:Er 广义上讲,任何非球面形式都可以称之为自由曲面,自由曲面提供更多的设计自由度,为像质提高,提供了更多的可能性及更广的求解空间。 I:bi8D6 ~Ci|G3BW 在AR/MR,HMD/HUD
中经常用的自由曲面形式为扩展多项式表面(Extended Polynomial Surface
), ZEMAXR, CODE VR
中都内建有该面型,该面型为一系列扩展的X,Y
高次多项式,含有对称项及非对称项。 1r|'n aiZ m~#98ZJ^
Z5_U D b!ot%uZZ 头盔显示器(HMD
) 车载平视显示器(HUD
) WPpl9)Qc f!0* ^d 9q;+ Al^Z 一: 自由曲面公差分析的着重点 LF{d'jJ&K wUW+S5"K A:
面型精度(Irregularity
) N1+%[Uh9) B:
斜率公差(Slope Error
) 9.D'! K7U` 这两项对像质有极大的影响,是需要重点考虑的对象。然而几乎所有的光学软件都没有好的解决方案,不尽如人意。 8L6!CP_! W32bBzhL s?7g3H5#0k /
~w\Npf0
YPFjAQ @/E5$mX` 二: 现有方法的一些局限性(用于评定面型及斜率公差) yzgDdAM shjS^CP A.
对非球面系数直接进行公差分析 /\_0daUx 不可取!非球面系数与这两项没有直接的相关性,不符合加工实际! i|)<#Ywl B:
外部拟合数据,然后导入离散点阵 (9{)4[3MAG 比如外部通过MatlabR
生成离散点阵,然后导入到光学软件中。费时,费力,只能评估不规则度,斜率公差很难直接评估,系统比较复杂时,计算速度很慢,速度难以接受。 11Pm lzy C: Zernike
多项式形式 4}gqtw: 相比较于前两种方法要好,但只能评估圆域,只能评估不规则度,斜率公差难于评估。目前只支持球面,圆锥曲面,偶次非球面。 =Y?M#3P.I 但是不支持扩展多项式面型(ExtendedPolynomial
),该面型AR/MR,HMD/HUD
经常用!!
-[" .km %Z}A+Rv+*m 7%V2 三: 定制化的自由曲面公差分析模块 !#5RP5,,Y w8%<O^wN, 可对如下面型进行不规则度及斜率公差分析: 0!eZ&.h?4 A.
球面 aS-rRL|\L B.
圆锥曲面 v<HhB.t. C. 扩展多项式面型(Extended Polynomial) VSL6tQp D.
以及以上离轴的情形,如离轴抛物面,椭球面等 -
b:&ACY E.
可对圆域或者矩形区域进行公差分析 a=.A/;|0* fnN"a Z {I&>`?7. Pp*|EW 1 =3_I;Lw ,mx>)}l95 wm%9>mA% #9F=+[L Dny5X.8
FI`][&]V
对圆形区域进行不规则度分析 t"cGv32b '+hiCX-_
w[S2
]< 对矩形区域进行不规则度分析 )}0(7z
Yu 4. 7m* "M3R}<Vt }q^M 四: 实例分析 pd?3_yU )+'FTz` c 实例1: 设计一个5X
的激光扩束镜系统:激光波长632.8nm
,高斯光束模场直径:5mm.
EC<g7_0F 要求: sk5h_[tK 1.
伽利略式双透镜结构 [y7BHikX) 2.
扩束倍率 5X
6FFQoE|n 3.
系统性能接近衍射极限,波前差小于lambda/4,
越小越好 suC] 4.
可以采用非球面 ODyK/Q3 5.
系统总长小于75mm.
O(2)A>} &^=6W3RD f"\G"2C jQxv`H 最后一个表面采用Conic
非球面后,经过简单的优化即可达到设计目标。 $!h21 O8%+5l`T! l}:&} ]?whx&+
C_mPw j"{|* _6E_ 'H+H4(
Km7HB!=< ]:uJ&xUar