第4章:Zemax软件入门——界面介绍、系统设置、基本操作流程

好,咱们正式开始接触Zemax。说实话,我第一次打开这个软件时,看着满屏的菜单和窗口,心里也有点发怵。但别担心,这玩意儿就像开车——熟悉了仪表盘和方向盘,剩下的就是多跑几趟。

这一章,我带你把Zemax的界面、系统设置和基本操作流程过一遍。嗯,都是最基础的东西,但基础打不牢,后面优化镜头时你会抓狂的。

4.1 认识Zemax界面——别被它吓到

打开Zemax,你会看到几个主要区域。我个人习惯先把它们认全,再动手操作。

4.1.1 主菜单栏

最上面那一排,File、Editors、System、Analysis……说白了,所有功能都藏在这里。你想想看,就像工具箱的抽屉,每个菜单里放着对应的工具。

  • File:新建、打开、保存文件。我建议你养成「Ctrl+S」的习惯,Zemax偶尔会崩,别问我怎么知道的。
  • Editors:打开镜头数据编辑器(LDE)、评价函数编辑器(MFE)等。这是你干活的主战场。
  • System:设置系统参数,比如波长、视场、孔径。
  • Analysis:各种分析功能,点开就能看光路图、像差曲线。

4.1.2 工具栏

菜单栏下面那一排图标。我个人习惯把常用的几个拖出来:

  • 打开LDE的图标(像个表格)
  • 打开3D Layout的图标(像个透镜)
  • 更新所有窗口的图标(像个刷新箭头)

为什么要提这个?因为每次改完参数,你都得点一下「更新」,不然窗口里的图还是老样子。我曾经因为这个闹过笑话——调了半天参数,发现看的是旧数据。

4.1.3 镜头数据编辑器(LDE)

这是Zemax的核心。双击工具栏上的LDE图标,你会看到一个表格。每一行代表一个光学面,比如物面、透镜表面、像面。

表格的列包括:

列名含义我的经验
Surf:Type面型(标准球面、非球面、偶次非球面等)刚开始用标准球面就行,别一上来就搞非球面
Radius曲率半径(正负号代表弯向哪边)正号表示曲率中心在面右边,负号在左边
Thickness面到下一个面的距离注意:厚度可以是负值,但新手别碰
Glass玻璃材料双击可以选材料库里的玻璃
Semi-Diameter半口径(透镜的半径大小)Zemax会自动计算,但你可以手动锁定
小技巧: 在LDE里,按「Insert」键可以插入新面,按「Delete」键删除当前面。我刚开始时老用鼠标右键菜单,后来发现快捷键快多了。

1.1.4 分析窗口

点开Analysis菜单,选「Layout」->「3D Layout」,就能看到光路图。再选「Fans」->「Ray Fan」,就能看光线像差曲线。这些窗口可以同时打开多个,平铺在屏幕上。

我个人习惯把3D Layout放在左上角,Ray Fan放在右上角,LDE放在下面。这样改参数时,上面两个窗口会实时更新,方便观察变化。

4.2 系统设置——把基础参数填对

在开始设计镜头前,你得告诉Zemax:这个镜头用在什么波段?视场多大?光圈多大?这些都在System菜单里设置。

4.2.1 设置波长(Wavelengths)

点System -> Wavelengths。弹出一个对话框,你可以添加多个波长,并设置权重。

  • 比如可见光镜头,常用F、d、C光(486nm、587nm、656nm)。
  • 权重代表这个波长在优化时的重要性。主波长(通常是d光)权重设为1,其他设为0.5或0.3。

避坑指南: 我曾经犯过一个错——只设了一个波长,结果优化出来的镜头在其它波长下像质一塌糊涂。所以,至少设3个波长,覆盖工作波段的两端和中间。

4.2.2 设置视场(Field Data)

点System -> Fields。视场可以设成角度(对无限远物体)或物高(对有限远物体)。

  • 一般设3个视场:0视场(轴上)、0.7视场、1.0视场(全视场)。
  • 权重同样重要。边缘视场权重可以设低一点,因为实际使用时边缘像质要求没那么高。

嗯,这里要注意:视场类型选「Angle」还是「Object Height」,取决于你的镜头是拍远处风景还是近处物体。别搞混了。

4.2.3 设置孔径(Aperture)

点System -> General -> Aperture。这里定义镜头的通光口径。

  • 最常用的是「Entrance Pupil Diameter」(入瞳直径)或「F/#」(F数)。
  • 比如你要设计一个F/2.8的镜头,入瞳直径=焦距/F数。假设焦距100mm,入瞳直径就是35.7mm。
警告: 孔径类型选错了,后面的优化全白搭。我见过有人选了「Object Space NA」却设了个很小的值,结果光线根本进不来。检查一下你的设置,确保光线能正常追迹。

4.3 基本操作流程——从零到第一条光线

好了,界面认识了,参数会设了。咱们走一遍完整的操作流程。我以设计一个简单的单透镜为例。

4.3.1 新建文件

File -> New。弹出一个对话框,问你要不要用模板。新手建议选「No」,从空白开始。

4.3.2 设置系统参数

  1. 波长:设F、d、C光,权重1、1、1。
  2. 视场:设0°、5°、10°三个角度视场。
  3. 孔径:设F/# = 5,或者入瞳直径=20mm(假设焦距100mm)。

4.3.3 在LDE中输入镜头数据

打开LDE,你会看到默认有3行:OBJ(物面)、STO(光阑面)、IMA(像面)。

现在插入一个透镜:

  • 在STO后面按Insert,插入一个面(Surf 2)。
  • Surf 1(STO)设为标准面,Radius=50mm(前表面曲率),Thickness=5mm(透镜厚度)。
  • Surf 2设为标准面,Radius=-100mm(后表面曲率,负号表示弯向物方),Thickness=95mm(到像面的距离)。
  • Surf 1和Surf 2的Glass都设为BK7(双击Glass列,选BK7)。

代码示例(LDE中的数据):

Surf:Type    Radius    Thickness    Glass    Semi-Diameter
OBJ          Infinity  Infinity              0
STO          50        5            BK7      10
2            -100      95                    10
IMA          Infinity  0                     0.5

4.3.4 查看结果

点Analysis -> Layout -> 3D Layout。你会看到一条光线从左边射入,经过透镜,汇聚到右边像面。如果光线没汇聚,别慌——检查一下曲率半径的正负号,或者厚度值。

再点Analysis -> Fans -> Ray Fan。你会看到像差曲线。如果曲线不是一条直线,说明有像差。嗯,单透镜有像差很正常,后面我们会用优化来校正。

4.3.5 保存文件

File -> Save As,起个名字,比如「Single_Lens.zmx」。我建议你每改一次重要参数就保存一次,防止意外。

核心要点: 基本操作流程就是「新建→设系统参数→输镜头数据→看结果→保存」。多练几遍,形成肌肉记忆。我刚开始时,每天至少重复这个流程10次,直到闭着眼睛都能操作。

4.4 常见问题与避坑

最后,分享几个我踩过的坑,你遇到了可以少走弯路。

  • 光线追迹失败: 检查曲率半径是否合理。如果Radius太小,光线可能全反射。我建议初始曲率半径不要小于焦距的1/2。
  • 像面位置不对: 厚度值设错了。比如透镜到像面的距离应该是焦距减去透镜主面位置,但新手可以直接用焦距近似。
  • 玻璃材料找不到: 在Glass列双击,弹出材料库。如果找不到BK7,试试N-BK7(肖特命名)。不同厂家的命名略有差异。
  • 窗口不更新: 记得点工具栏上的「Update」按钮,或者按Ctrl+U。我经常改完参数忘了更新,盯着旧图看了半天。

好了,这一章就到这里。你打开Zemax,按我说的步骤走一遍。相信我,半小时后你就能自己画出一条光线了。下一章,我们开始讲如何用评价函数来优化镜头——那才是真正好玩的部分。