如何进行公差分析

本文以三片式透镜为例介绍了如何进行公差分析,包括如何进行TOL、BTOL以及蒙特卡洛分析。如需了解更多信息,请查阅帮助手册。

点击获取学习文档


简介

公差分析是面向制造和装配的产品设计中非常重要的一个环节。本文简单地介绍了公差分析的基本流程,目的是为了让初学者对公差分析有一定的了解。帮助手册中也有针对特殊应用的公差分析的文章。


使用SYNOPSYS进行公差处理

计算制造公差很重要,但这常常被忽视。SYNOPSYS为此提供了四大特性,对于大多数镜头来说,这项工作实际上比光学设计更简单。

SYNOPSYS公差分析中,TOL和BTOL都是逆灵敏度分析。

TOL可以选择需要分析哪些面,这些面的公差因素(曲率半径、偏心、倾斜、厚度等),公差因素的的范围上下限,以及目标的极值,例如光斑最大值,MTF降低到最小的值。

BTOL也是逆灵敏度分析,可以选择反极值或反增量。会分析所有干扰的因素。如果不设置干扰因数,公差因素的干扰因数,就会采用软件默认的参数;如果设置参数,软件就会采用用户给定的参数。同时,软件会给出2份公差结果。一份是满足结果,单一因素的范围。另外一份是,所有参数都正态分布,每个因素的满足结果。

蒙特卡罗分析,可以帮助我们看到最终结果的分布。

敏感度优化,可以帮助我们降低公差敏感度。

楔形误差,可以给我们提供组装的装配角。

本文简单介绍了TOL、BTOL以及蒙特卡洛分析,并进行了举例说明。


TOL公差

TOL可以调整你所给定的公差(每次调整一个公差),使得公差变化范围,能够满足你的最低光学规格(每次指定一个光学规格)。

在公差运行过程中,可以调整厚度或空气间隙,也可以使用近轴拾取和求解来保持焦点等。

下面展示一个使用TOL进行公差分析的例子,让我们在下面的三片式透镜中运行TOL,打开镜头文件TOL TOLERANCE.RLE,如下所示。



打开宏文件TOL OPT.MAC,在宏文件的下图所示位置中,加入指令M 0 .1 A 3 YC 1 1 0 0 7。YC是对应视场点相对于主光线的差值,就是光线扇形图上的点大小值,该指令就是把Hy=1,Px=1处所对应的光线扇形图上的点,优化为0。



运行优化宏后,在命令窗口输入FINAL,可以查看所有参数对评价函数的贡献,在命令窗口底部可以看出优化后Hy=1,Px=1处,光线扇形图上该点的值为0.0060。


打开宏文件TOL OPT2.MAC,如下所示:


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),对应的厚度 \偏心 \倾斜的公差应该的范围。



BTOL - 公差分析程序

TOL只有在需要分析部分所选变量的逆灵敏度时,或者当镜头有BTOL处理不好的特性时,比如特意的倾斜或偏心等时,才会使用。大部分情况会使用BTOL。BTOL考虑了所有可能的变量,并基于统计考虑构建了整个透镜的公差表。BTOL考虑了所有可能的变量,并基于统计考虑构建了整个透镜的公差表。

可以输入大量的权重和控制参数来控制视场的权重,保持参数的相对难度,指定已经存在的工具的半径等,使程序在处理各种实际的透镜和光学加工厂时非常灵活。

此外,还可以指定若干调整参数,以帮助纠正由单个扰动引起的缺陷,并且在某些情况下可以放宽一些变量的公差。最后,可以使用蒙特卡罗选项来检验合成误差预算的统计数。

BTOL首先创建一个逆灵敏度列表,然后分配公差,以便在满足像质质量目标的同时,使每个公差保持尽可能宽松。“尽可能宽松”的定义:BTOL为每个变量赋值一个范围,在满足临界成像质量目标时,这范围尽可能的大。您能够自行输入这个范围,当一个公差变得更紧时,BTOL会试图放松它,并把这部分像质变差的负担通过对其他变量加紧公差来平衡。这将会产生一个最低成本的公差余量。甚至可以将镜头重新放到SYNOPSYS的优化程序中,以重新平衡像差。

BTOL可以使用MSB菜单,通过弹窗对话框的方式来输入。也可以直接使用宏代码进行分析。在对话框中填数据易学易用,但是宏命令更为灵活。对话框里面只集成了小部分BTOL功能,宏命令的功能更强大。下面将介绍使用宏命令的输入方式来进行BTOL公差分析。

下面展示一个使用BTOL进行公差分析的例子,让我们在下面的三片式透镜中运行TOL,打开镜头文件BTOL TOLERANCE.RLE,如下所示:


BTOL输入的一般格式见用户手册;打开宏文件BTOL OPT.MAC,如下所示:


命令语句PREPARE MC将创建一个MACro,稍后我们在研究公差预测的统计性能时将使用该MACro。

运行宏命令,在命令窗口将得到分析结果,其内容非常多,所以我们把命令窗口里的输出做一个分类。

第一部分:包括截图的前面内容,会对分析的镜头数据做一个总结,包括SPEC的输出和CHG移除表面6的求解等。这是分析之前的常规输出。


第二部分:它显示了光斑方差的初始值,对所要求的三种波长进行了加权。对于轴上点,它大约是0.000519,预算允许的最大值是0.000778。对其他两个视场点也进行了类似的总结。比如1.0视场,原本光斑时0.00223,最大增量时50%,那么最终的光斑要求小于0.00223*(1+50%)=0.00334。


第三部分给出了轴向误差、放大率和畸变的公差。在本例中,输入的公差与默认值相同且为100,因此实际上没有影响。重点是强调在这个例子中,我们不关心这些项,并给出了一个大的允许错误,以便程序不会让它们影响预算。


第四部分总结了调整参数,这里只有一个像面倾斜的调整。


第五部分,即I表格,列出了每个变量的逆灵敏度。当光斑增大50%的时候,曲率半径 、厚度 倾斜、偏心的范围分别是多少。


第六部分,即B表格,给出了所有列出项目的实际公差,当光斑增大50%的时候,曲率半径 、厚度、倾斜、偏心,同时存在的公差,而且实际加工时,这些数据变化呈现正态分布,使每个视场点的2σ误差不超过预期的最大值。


第七部分给出了公差预算的简短总结。如果之后输入命令BTOL LIST,就会重新显示这个部分。


第八部分为由该公差预算产生的预期像质劣化。包括每个视场点的光斑扩大的情况,和轴向误差、放大率和畸变的预期变化。这些数据可以和我们上面设置的理论值,也就是第二部分进行比较,数据很接近,说明当前的公差预算很符合我们实际的要求。


第九部分总结了要求的调整。在这种情况下,在最后一个空气间隔有一个近轴焦点求解,从镜头到镜头的预期调整量约为0.143 mm,预计像方倾斜为0.25度。


该公差余量基本上已足以用于制造,并且公差数据可以直接从表格复制到ELD图纸上。注释编辑器非常适合这样做,您可以通过在图表窗口下单击afile保存当前所有公差分析生成的图形。您还可以在ELD和DWG命令之前通过USE BTOL命令使得程序自动向图纸添加公差。

现在我们将用MC检查统计假设的准确性。


蒙特卡洛分析

MC程序只能在BTOL之后运行,并且允许用户执行可能需要的任何类型的重新优化或调整。该程序通过将随机分配的误差应用于每个变量来模拟误差预分析,均匀分布在其公差范围内。

运行MC非常简单:在上面的BTOL输入中,您看到了PREPARE MC指令。这告诉 BTOL 在公差分析准备时调用调整参数的时候创建一个MACro。

要运行MC,必须将标准镜头放入库中,然后选择两种模式中的一种。单行命令模式使用该命令:


其中NSAMPLES是制造批次中您需要统计数据的镜头数量,LIBLOC是库位置。假设您的镜头存储在位置5,然后您可以使用以下命令:

MC 2 5

您首先请求了一次仅包含了两个镜头的产生批次。如果批次内的数量很大,MC可能需要运行一段时间,因此首先要检查补偿调整是否可以正常进行。如果一切顺利,请重新运行MC命令,比如运行100个镜头示例。在命令窗口输入指令MC 100 5 QUIET,MC运行完成时,将看到统计信息的摘要,如下图所示。后面可以使用指令MC STAT,重复这个表的列表,或者使用MC PLOT获得一个显示统计数据的直方图。


在命令窗口输入MC PLOT,获得下图所示的直方图。

请您留言