本文以三片式
透镜为例介绍了如何进行公差分析,包括如何进行 TOL、BTOL 以及蒙特卡洛分析。如需了解更多信息,请查阅帮助手册。
A=0@UqM Jb9F=s+ 简介
p+vh[+yp U[ bgu#P; 公差分析是面向制造和装配的产品设计中非常重要的一个环节。本文简单地介绍了公差分析的基本流程,目的是为了让初学者对公差分析有一定的了解。帮助手册中也有针对特殊应用的公差分析的文章。
8sH50jeP t|<FA# 使用 SYNOPSYS 进行公差处理
2Sjt=LOc=" >GmN~"iJ 计算制造公差很重要,但这常常被忽视。SYNOPSYS 为此提供了四大特性,对于大多数
镜头来说,这项工作实际上比
光学设计更简单。SYNOPSYS 公差分析中,TOL 和 BTOL 都是逆灵敏度分析。TOL 可以选择需要分析哪些面,这些面的公差因素(曲率半径、偏心、倾斜、厚度等),公差因素的的范围上下限,以及目标的极值,例如光斑最大值,MTF 降低到最小的值。BTOL 也是逆灵敏度分析,可以选择反极值或反增量。会分析所有干扰的因素。如果不设置干扰因数,公差因素的干扰因数,就会采用
软件默认的
参数;如果设置参数,软件就会采用用户给定的参数。同时,软件会给出2份公差结果。一份是满足结果,单一因素的范围。另外一份是,所有参数都正态分布,每个因素的满足结果。蒙特卡罗分析,可以帮助我们看到最终结果的分布。敏感度
优化,可以帮助我们降低公差敏感度。楔形误差,可以给我们提供组装的装配角。本文简单介绍了 TOL、BTOL 以及蒙特卡洛分析,并进行了举例说明。
0lBat_<8 Z~_8P TOL 公差
ETe- tq0;^L TOL 可以调整你所给定的公差(每次调整一个公差),使得公差变化范围,能够满足你的最低光学规格(每次指定一个光学规格)。在公差运行过程中,可以调整厚度或空气间隙,也可以使用近轴拾取和求解来保持焦点等。下面展示一个使用 TOL 进行公差分析的例子,让我们在下面的三片式透镜中运行 TOL,打开镜头文件 TOL TOLERANCE.RLE,如下所示。
lYP~3wp99 [t$4Tdd vcwK6G $M39 #a 打开宏文件 TOL OPT.MAC,在宏文件的下图所示位置中,加入指令 M 0 .1 A 3 YC 1 1 0 0 7。YC 是对应视场点相对于主
光线的差值,就是光线扇形图上的点大小值,该指令就是把 Hy=1,Px=1 处所对应的光线扇形图上的点,优化为 0。
*Er? C; rtus`A5p Vcr VaBw }f]b't 7pP+5&* so*/OBte 运行优化宏后,在命令窗口输入 FINAL,可以查看所有参数对评价函数的贡献,在命令窗口底部可以看出优化后 Hy=1,Px=1 处,光线扇形图上该点的值为 0.0060。
4
A5t*e =tn Tdp0F RT/qcS^Oz b9DR%hO: 打开宏文件 TOL OPT2.MAC,如下所示:
nGns}\!7' /h7.oD8CU ODek%0= ~GA8_B PANT...END 指令里面可以自由选择需要分析的公差项,此处分析了曲率半径,厚度,偏心,倾斜。选定了分析项后会分析输入的表面分析,没有选择就不分析。也可以给定公差范围。比如, VY 1 YDC 2 就采用系统给的默认公差范围。指令 VY 1 YDC 2 0.005 0 就是采用我们给定的偏心 0 到 0.005。AANT 中的指令 M 0 .1 A 3 YC 1 1 0 0 7 就是把光扇图上的点目标定为 0,TOL 指令设置像差的最大允许值为 0.007。运行宏文件就可以在命令窗口中查看 TOL 公差分析的结果,在命令窗口的最上面显示的是公差分析的 厚度\ 偏心\ 倾斜的公差范围,最下面显示的是显示了 Hy=1 Px=1 光线点小于 0.007(原本数据为 0.0060),对应的厚度 \偏心 \倾斜的公差应该的范围。
5N1}Ns p&\K9hfi e6 2y BKX9SL] >(OYK}ZN \q,s?`+B BTOL - 公差分析程序
i%MA"I\9 dqxd3,Z TOL 只有在需要分析部分所选变量的逆灵敏度时,或者当镜头有 BTOL 处理不好的特性时,比如特意的倾斜或偏心等时,才会使用。大部分情况会使用 BTOL。BTOL 考虑了所有可能的变量,并基于统计考虑构建了整个透镜的公差表。BTOL 考虑了所有可能的变量,并基于统计考虑构建了整个透镜的公差表。可以输入大量的权重和控制参数来控制视场的权重,保持参数的相对难度,指定已经存在的工具的半径等,使程序在处理各种实际的透镜和光学加工厂时非常灵活。此外,还可以指定若干调整参数,以帮助纠正由单个扰动引起的缺陷,并且在某些情况下可以放宽一些变量的公差。最后,可以使用蒙特卡罗选项来检验合成误差预算的统计数。BTOL 首先创建一个逆灵敏度列表,然后分配公差,以便在满足像质质量目标的同时,使每个公差保持尽可能宽松。“尽可能宽松”的定义:BTOL 为每个变量赋值一个范围,在满足临界
成像质量目标时,这范围尽可能的大。您能够自行输入这个范围,当一个公差变得更紧时,BTOL 会试图放松它,并把这部分像质变差的负担通过对其他变量加紧公差来平衡。这将会产生一个最低成本的公差余量。甚至可以将镜头重新放到 SYNOPSYS 的优化程序中,以重新平衡像差。BTOL 可以使用 MSB 菜单,通过弹窗对话框的方式来输入。也可以直接使用宏代码进行分析。在对话框中填数据易学易用,但是宏命令更为灵活。对话框里面只集成了小部分 BTOL 功能,宏命令的功能更强大。下面将介绍使用宏命令的输入方式来进行 BTOL 公差分析。下面展示一个使用 BTOL 进行公差分析的例子,让我们在下面的三片式透镜中运行 TOL,打开镜头文件 BTOL TOLERANCE.RLE,如下所示:
g}m+f]| c_Tzyh7l4 ^4 8\>-Q\ !!*;4FK"q BTOL 输入的一般格式见用户手册;打开宏文件 BTOL OPT.MAC,如下所示:
>T QZk4$ rd">JEK;; xD4$0Ppu +aj^Cs1$ 命令语句 PREPARE MC 将创建一个 MACro,稍后我们在研究公差预测的统计性能时将使用该 MACro。运行宏命令,在命令窗口将得到分析结果,其内容非常多,所以我们把命令窗口里的输出做一个分类。第一部分:包括截图的前面内容,会对分析的镜头数据做一个总结,包括 SPEC 的输出和 CHG 移除表面 6 的求解等。这是分析之前的常规输出。
rFfy#e 0E1=W6UZ rd"
&QB{ Z(`r -}f I 第二部分:它显示了光斑方差的初始值,对所要求的三种
波长进行了加权。对于轴上点,它大约是 0.000519,预算允许的最大值是 0.000778。对其他两个视场点也进行了类似的总结。比如 1.0 视场,原本光斑时 0.00223,最大增量时 50%,那么最终的光斑要求小于 0.00223*(1+50%)=0.00334。
_YLUS$Zw <6R"h-u" fnWsm4 *i@T!O(1)M 第三部分给出了轴向误差、放大率和畸变的公差。在本例中,输入的公差与默认值相同且为 100,因此实际上没有影响。重点是强调在这个例子中,我们不关心这些项,并给出了一个大的允许错误,以便程序不会让它们影响预算。
-bm,:Iy! +sRP<as r:NH6tAL vd(dNu&,< 第四部分总结了调整参数,这里只有一个像面倾斜的调整。
hbfsHT lV)G@l[1 hlC%HA ]4o?BkL 第五部分,即 I 表格,列出了每个变量的逆灵敏度。当光斑增大 50% 的时候,曲率半径 、厚度 倾斜、偏心的范围分别是多少。
{xToz]YA 5VKcV&D sUbFRq np=kTJ 第六部分,即 B 表格,给出了所有列出项目的实际公差,当光斑增大 50%的时候,曲率半径 、厚度、倾斜、偏心,同时存在的公差,而且实际加工时,这些数据变化呈现正态分布,使每个视场点的 2σ 误差不超过预期的最大值。
`|?]CkP 0bSz4<} o:9$UV[ 1`QsW&9=b 第七部分给出了公差预算的简短总结。如果之后输入命令 BTOL LIST,就会重新显示这个部分。
"H?QqrKx ?+\E3}: a_{6Qdl 4.'JLArw 第八部分为由该公差预算产生的预期像质劣化。包括每个视场点的光斑扩大的情况,和轴向误差、放大率和畸变的预期变化。这些数据可以和我们上面设置的理论值,也就是第二部分进行比较,数据很接近,说明当前的公差预算很符合我们实际的要求。
|Euus5[ n_9x"m$ r.<JDdj *KJ7nRKx(w 第九部分总结了要求的调整。在这种情况下,在最后一个空气间隔有一个近轴焦点求解,从镜头到镜头的预期调整量约为 0.143 mm,预计像方倾斜为 0.25 度。该公差余量基本上已足以用于制造,并且公差数据可以直接从表格复制到 ELD 图纸上。注释编辑器非常适合这样做,您可以通过在图表窗口下单击 afile 保存当前所有公差分析生成的图形。您还可以在 ELD 和 DWG 命令之前通过 USE BTOL 命令使得程序自动向图纸添加公差。
sOz sY7z3Z 现在我们将用 MC 检查统计假设的准确性。
n`.#59-Hx /AR]dcL@76 蒙特卡洛分析
ZF'HM@cfo Q6x% MC 程序只能在 BTOL 之后运行,并且允许用户执行可能需要的任何类型的重新优化或调整。该程序通过将随机分配的误差应用于每个变量来模拟误差预分析,均匀分布在其公差范围内。运行 MC 非常简单:在上面的 BTOL 输入中,您看到了 PREPARE MC 指令。这告诉 BTOL 在公差分析准备时调用调整参数的时候创建一个 MACro。要运行 MC,必须将标准镜头放入库中,然后选择两种模式中的一种。单行命令模式使用该命令:
$H;+}VQ >)3VbO ]
D6|o5 2yxi= XWZ 其中 NSAMPLES 是制造批次中您需要统计数据的镜头数量, LIBLOC 是库位置。假设您的镜头存储在位置 5,然后您可以使用以下命令:MC 2 5您首先请求了一次仅包含了两个镜头的产生批次。如果批次内的数量很大,MC 可能需要运行一段时间,因此首先要检查补偿调整是否可以正常进行。如果一切顺利,请重新运行 MC 命令,比如运行 100 个镜头示例。在命令窗口输入指令 MC 100 5 QUIET, MC 运行完成时,将看到统计信息的摘要,如下图所示。后面可以使用指令 MC STAT,重复这个表的列表,或者使用 MC PLOT 获得一个显示统计数据的直方图。
*Ru2:}?MpS c{4R*|^ 3\+N`! PUCx]5 在命令窗口输入 MC PLOT, 获得下图所示的直方图。
tl^m=(ZQ >{t+4 p4k.