别把 Zemax 当算命软件!老司机的成像光学新手避坑指南
喝着保温杯里的温水,听着隔壁工位新来的实习生疯狂敲回车键,我心里就有数了——这孩子又在对着 Zemax 的“优化”按钮死磕呢。
每年新招的应届生,刚上手的操作,总能精准戳中我的血压临界点。光学设计从来不是什么玄学,但不少新手硬是把它玩成了“抽卡碰运气”的游戏。
今天咱们不聊干巴巴的赛德尔像差理论,就以一个老师傅的视角,吐槽(划掉)盘点一下,刚入门的成像设计师最爱搞的 5 个“气死师傅”的骚操作。
各位对号入座,有则改之,无则加勉。

槽点一:把 Zemax 优化器当“许愿池的王八”

“师傅,我这镜头跑了三个小时全局优化,MTF怎么还是跟狗啃似的?”
“你初始结构哪来的?”
“我随便丢了 5 片平凸透镜进去,让它自己跑的啊……”
【病状分析】
这是新手最容易犯的致命错误:太迷信软件的算力,压根没考虑物理规律这回事。很多人以为 Zemax 藏着什么人工智能,只要输对视场角、F 数和波长,闭着眼睛狂点“优化”,软件就能自动变出一个完美的徕卡镜头。
【老司机开药】
Zemax 就是个高级计算器,既不是算命先生,更不是 AI!它的优化算法(阻尼最小二乘法),本质就是在多维空间里找下坡路,只能找到局部最优解,不是全局最优,你给的初始结构要是个“坑”,它最多帮你在坑里找个最舒服的姿势,绝不会帮你爬出来跳进另一个“金矿”。
-
找对初始结构是成功的一半:做成像设计,第一步永远是查专利库、翻文献,或者用一阶光学(高斯光学)自己推一个结构。设计监控镜头,就找经典的倒远距结构;做手机镜头,就翻翻各大厂的 6P/7P 专利,别自己瞎琢磨。
-
小步快跑:优化得一步一步来。先把焦距对上,再控球差和彗差,最后再慢慢放开高阶非球面系数。上来就把所有变量全设成 Variable,系统直接就乱套,等于白忙活。

槽点二:评价函数写得像中药铺抓药

“师傅,我这个镜头畸变降不下来。”
“打开你的 Merit Function 我看看……好家伙,你这里面怎么堆了 500 多行操作数?这个权重设 10000 的是啥东西??”
【病状分析】
新手写评价函数,大多是“一锅乱炖”。因为不知道哪个管用,索性把学过的操作数全丢进去:EFFL(有效焦距)、TTHI(总长)、DIMX(最大畸变)、TRAC(光线追迹),甚至连默认的 RMS 斑点大小和波前误差都同时开着······
最吓人的是乱给权重(Weight),为了压下一个指标,直接把权重干到 9999,结果其他像差全崩了。
【老司机开药】
评价函数的编写原则就一个:如无必要,勿增实体。
-
理清主次:默认评价函数(通常选 RMS Spot Radius 或 Wavefront),已经能解决 80% 的问题。你需要手动加的,只是那些当前结构严重不达标的边界约束条件,多了反而添乱。
-
控制权重:权重不是越大越好。权重太大会掩盖默认评价函数的作用,让优化器变成“单细胞生物”,只顾着满足你这一个条件,最后毁了整个系统的成像质量。
-
善用边界操作数:与其死死卡住一个值(比如用 EFFL 强制焦距等于 50),不如用 MNCA(最小中心空气厚度)、MNEG(最小边缘玻璃厚度)这些边界控制操作数,给软件留足寻找最优解的腾挪空间。

槽点三:沉迷“唯 MTF 论”,一看公差全歇菜

“师傅你看!我这个 800 万像素的机器视觉镜头,边缘视场 MTF 跑到 0.6 了!完美!”
看了一眼结构:“嗯,确实很美。但你这第三片透镜,边缘厚度只有 0.1 毫米,曲率半径比指甲盖还小——你打算让车间师傅拿指甲刀给你磨镜片?”
【病状分析】
新手在学校做大作业,唯一目标就是把图表跑好看。只要 MTF 曲线贴着衍射极限,哪怕透镜长得像飞盘或者绣花针,他们都觉得大功告成,压根没考虑可加工性和杂散光这回事。
【老司机开药】
在工程圈,不能量产的设计,再好看也是废纸一张。
-
时刻关注透镜形态:镜片不能太薄(容易碎、易变形),也不能太厚(重、吸胶、成本高);边缘斜率不能太大,不然没法镀膜、没法装配,车间师傅得骂街。
-
CRA匹配:现在的Sensor都有微透镜阵列,你设计的成像镜头,主光线角必须和 Sensor 的 CRA 匹配,不然 MTF 再高,拍出来的照片边缘也是暗的(暗角/色彩串扰),等于白设计。
-
畸变与照度:别光盯着分辨率。光学畸变和相对照度,很多时候比边缘那点微不足道的 MTF 提升重要多了,毕竟客户要的是能用的成品,不是好看的曲线。

槽点四:公差给得像是在做梦

“师傅,蒙特卡洛分析跑完了,良率只有 10%。” “你把公差缩紧点看看。”
(键盘敲击后):“好了师傅,良率 99% 了!我把厚度公差改成了 0.001mm,折射率公差改成了 0.0001。”
“……你明天去采购部把这批玻璃买回来,买不到就别下班了。”
【病状分析】
不会做公差分析,是新手变成成熟设计师的最大坎儿。新手往往把公差分析当成“数字游戏”,为了提高软件跑出来的良率,无脑收紧公差,完全不顾加工厂的实际能力和加工成本——说白了,就是纸上谈兵。
【老司机开药】
公差分析的核心就一个:在满足性能的前提下,公差能放多宽就放多宽,这样才能降成本。
-
了解行业加工水平:必须把车间的加工能力记在心里。什么是常规精度?什么是高精度?什么是极限精度?比如普通玻璃面型公差 3 圈/0.5 局部误差,你非要给到 1 圈/0.2,成本直接翻三倍,老板得扒你一层皮。 -
设置补偿器:没有镜头是完全死锁的。公差分析里一定要设补偿器!比如最后一片镜片到 Sensor 的距离(法兰焦距/Back Focal Length),实际组装时能微调聚焦,加了这个,良率能从 20% 直接拉到 90%,亲测有效。 -
敏感度分析:找出对系统影响最大的 3-5 个敏感公差项。针对这些“刺头”,要么修改光学结构降低敏感度(这才是真本事),要么只对这几项要求高精度加工,其他的放宽,既保性能又控成本。 
槽点五:选玻璃像在逛高定珠宝店

“师傅,为了压住轴向色差,我用了三片莹石(CaF2)和两片超高折射率硫系玻璃。”
“咱们这是消费级安防探头,BOM成本要求 15 块以内,你这几片玻璃加起来,比整个摄像机壳子都贵!”
【病状分析】
打开玻璃库,看着满屏的材料,新手大多只看折射率(Nd)和阿贝数(Vd),哪组消色差效果好就选哪组。结果呢?选了一堆价格贵、加工难、还极易发霉生锈(Stain 性质差)的“冷门玻璃”或“停产玻璃”,最后要么成本超标,要么买不到货。
【老司机开药】
玻璃可不是你想选,想选就能选的,得接地气。
-
精简玻璃库:日常干活,别贪多,只勾选CDGM、Schott、Ohara这些主流厂商的常用库,足够用了。
-
看状态和价格:在 Zemax 玻璃图里,一定要过滤掉 Obsolete和 Special的玻璃,别做无用功。多看看相对价格,尽量用 N-BK7、H-K9L 这种便宜又好加工的“口粮玻璃”打底,别上来就追求“高端货”。
-
注意理化性质:软玻璃加工容易出划痕,耐候性差的玻璃稍微受潮就起白斑。别为了强行凑数据,给自己后期的可靠性测试挖坑,到时候返工都来不及。

结语
带徒弟虽然容易血压飙升,但看着他们从一开始对着报错弹窗发懵,到后来能熟练平衡像差、跟结构工程师据理力争,作为老炮儿,我心里其实挺欣慰的。
光学设计从来不是一门追求“完美”的科学,而是一门“妥协”的艺术。
在分辨率、成本、体积、良率之间,找到那个最优雅的平衡点,才是光学设计师真正的价值所在。
如果你现在正卡在某个指标上头绪全无,不妨站起来接杯水,想想是不是自己钻进了软件的死胡同。

👇 课后讨论时间
既然说到了“妥协”的艺术,咱们来考一考各位新手和同行:
你正在优化一款常规 6P 手机镜头,中心和边缘视场的分辨率都已经达标了,可突然发现,CRA和 Sensor 严重不匹配。要是强行在评价函数里拉 CRA,边缘 MTF 又会断崖式下跌。
这种时候,你作为设计师,第一反应和下一步操作会是什么? 欢迎在评论区留下你的“解题思路”~
夜雨聆风