宏函数@JMRCC介绍-离轴反射系统的光线位置约束(2)——CodeV宏函数篇

        3,系统优化的约束条件设置

 

        通过系统YZ视图观察到经过表面2反射的光线存在被光阑遮挡的风险,因此需要使用宏函数@JMRCC计算反射光线距离光阑孔径下侧的距离并进行约束。

 

 

        通过绘制光学系统的三维视图可以较直观的找到距离光阑孔径下侧的最近的光线序号,在此之前需要先在工具偏好可视化下将选择信息设置为如下图所示。

 

 

        点击快捷按钮快速三维查看以绘制镜头的三维模型,通过鼠标右键按住并拖动将视角移到适当位置,随后通过鼠标左键长按需要查看的光线或表面可以看到相关信息,如下图所示。可以看到此时距离光阑最近的光线来自3号视场的2号参考光线,光阑孔径最下侧的点可以通过1号视场(由于光阑面是入瞳,因此视场编号可以任意)的3号参考光线与光阑面的交点进行定义。如此函数@JMRCC的输入量可以确定,写为@JMRCC(2,3,2,3,1,1,0,0)。

 

 

        选择工具宏管理器示例宏宏函数define­_jmrcc.seq并点击运行使当前CODE V项目对函数@JMRCC进行定义(任何函数在计算之前均需进行定义),随后在命令行中输入eva(@JMRCC(2,3,2,3,1,1,0,0)),按回车键后返回当前系统下的函数值-15.84mm,希望在后续优化过程中将该值不大于-15mm。

 

        除了对反射光线与光阑的距离进行约束外,还需要建立以下约束条件:

 

 

        对于用户自定义约束,需要先在自动化设计用户约束/光线定义中定义约束函数,如下图所示输入约束函数名称及约束定义。

 

 

        然后在特定约束标签页中选择插入用户自定义约束,在出现的对话框中选择刚才定义的约束函数并输入约束模式与约束目标,最后点击插入并关闭。

 

 

        接下来的几个约束条件均可在特定约束插入特定约束中找到相应的参数名称,无需额外定义函数,其各自位置已在下图中用红框标出。

 

 

        根据上文表格中的要求输入正确的约束条件后,最终的特定约束信息如下图所示。

 

 

        在输出/退出控制标签页中勾选在每个周期绘制系统以及创建误差函数与周期图表复选框,使得便于查看优化进程。点击确定执行自动化设计,最终的系统结构二维图如下所示,可以看到各元件的几何位置均被较好约束,尤其是经过反射的光线与光阑没有发生干涉。

 

 

        重新执行spot2d.seq宏,可以看到相较于初始结构,轴外视场的光斑大小得到了较好改善,与此同时牺牲的是中心视场的性能。

 

 

        最后为系统设置边缘孔径以便观察到各元件标称机械尺寸,在菜单栏中选择镜头计算设置孔径,在弹出的对话框中将表面范围选为从光阑表面2,将孔径类型选为边缘,将偏心选为X和Y,将形状选为圆形,并点击确定。CODE V将为所选面设置合理的边缘孔径,最终的镜头三维视图如下图所示,与初始结构的三维图相比,光线距离反射镜的边缘更近一些,是实际镜头加工的尺寸。

 

 

        总结

 

        本文主要介绍了CODE V内建宏函数@JMRCC的功能及用法,并通过离轴反射系统的优化案例介绍了宏函数@JMRCC的实战用法以及如何使用用户自定义函数建立约束条件。

相关产品

CODE V 光学设计软件