2. 光学系统建模:表面、材料与坐标
好,我们正式开始搭建光学系统。你想想看,一个光学系统再怎么复杂,拆开来看无非就是三样东西:光线碰到什么面、穿过什么材料、以及这些面怎么摆。这一章我们就把这三大块讲透。
2.1 光学表面类型
表面是光线发生偏折的地方。我这些年做过的项目里,90% 的坑都出在表面定义上。咱们从最简单的说起。
2.1.1 球面
球面是最基础、最常用的表面。它的 sagitta(矢高)公式很简单:
z(r) = (r² / R) / (1 + sqrt(1 - (1+k) * r² / R²))
当 k=0 时,就是标准球面。R 是曲率半径,r 是径向坐标。
我的习惯: 刚开始做设计时,先用球面把光路跑通。球面计算快、加工便宜,别一上来就上非球面。
2.1.2 非球面
非球面就是在球面基础上加了高次项。我常用的偶次非球面公式:
z(r) = (r² / R) / (1 + sqrt(1 - (1+k) * r² / R²)) + A₂r² + A₄r⁴ + A₆r⁶ + ...
这里 k 是圆锥系数,A₂、A₄、A₆ 是高次项系数。
避坑指南: 我曾经在一个投影镜头里加了太多高次项,结果加工出来面型完全不对。非球面阶数不是越高越好,一般到 A₆ 或 A₈ 就够了。
2.1.3 自由曲面
自由曲面是最近十年才真正用起来的。它没有对称轴,用 XY 多项式或 Zernike 多项式描述。我去年做的一个 AR 眼镜项目,就靠自由曲面把畸变从 15% 压到了 2%。
常用的 XY 多项式形式:
z(x,y) = Σ Cᵢⱼ xⁱ yʲ
说白了,自由曲面就是给你更多自由度去校正像差。但代价是加工和检测都贵很多。
| 表面类型 | 自由度 | 加工成本 | 典型应用 |
|---|---|---|---|
| 球面 | 1(R) | 低 | 常规镜头、目镜 |
| 非球面 | 3-6(k + 高次项) | 中 | 手机镜头、投影物镜 |
| 自由曲面 | 10+(多项式系数) | 高 | AR/VR、离轴系统 |
2.2 光学材料与色散模型
光穿过不同材料,速度会变,方向也会变。这就是折射。但问题来了——不同颜色的光,折射率不一样。这就是色散。
2.2.1 常用光学材料
我常用的玻璃牌号就那么几种:
- BK7:最通用的冕牌玻璃,可见光波段首选
- F2:火石玻璃,色散大,常用于消色差
- SF6:重火石玻璃,高折射率,用于短焦距
- CaF₂:氟化钙,紫外到红外都透,但贵
2.2.2 色散模型
折射率随波长变化,我们不能只用一个数。常用的模型有:
- Sellmeier 方程(最常用):
n²(λ) = 1 + B₁λ²/(λ² - C₁) + B₂λ²/(λ² - C₂) + B₃λ²/(λ² - C₃) - Cauchy 方程(近似用):
n(λ) = A + B/λ² + C/λ⁴ - Schott 公式(老牌号常用)
关键参数: Abbe 数 Vd = (nd - 1) / (nF - nC)。Vd 越大,色散越小。BK7 的 Vd 约 64,F2 约 36。
我记得有一次,供应商给的玻璃批次折射率偏了 0.001,结果整个镜头后焦跑了 0.3mm。从那以后,我每次都要确认材料实测数据,不只看标称值。
2.3 系统坐标与孔径定义
坐标系统一了,大家才能沟通。孔径定义错了,光线根本进不去。
2.3.1 坐标约定
我习惯用右手坐标系:
- Z 轴:光轴方向,从左到右
- Y 轴:垂直向上
- X 轴:水平指向纸面外
每个表面都有一个局部坐标系,原点在表面顶点。光线从物面出发,沿 Z 正方向传播。
2.3.2 孔径定义
孔径决定了有多少光线能通过系统。常用的定义方式:
| 孔径类型 | 定义方式 | 我常用的场景 |
|---|---|---|
| 入瞳直径 | 直接指定 EPD | 定焦镜头 |
| F 数 | F/# = EFL / EPD | 摄影镜头 |
| NA | NA = n * sin(θ) | 显微物镜、光纤耦合 |
| 浮动孔径 | 随视场变化 | 变焦系统 |
注意: 我曾经犯过一个低级错误——把入瞳直径和机械孔径搞混了。入瞳是光阑被前方光学系统所成的像,不是实际镜片的口径。实际镜片口径要比入瞳大,否则会切光。
2.4 知识体系总览
下面这张图把本章的核心内容串起来了。你可以把它当作一个检查清单,每次建模前过一遍。
2.5 实战建议
说了这么多,最后给几条实在的建议:
- 先简单后复杂:球面能搞定就别上非球面,BK7 能搞定就别上特殊材料
- 留余量:孔径别卡太死,留 10-20% 的余量给装配误差
- 确认数据来源:玻璃库数据是标称值,实际批次可能有偏差
- 文档化:每个表面的定义、材料、坐标,写清楚。我吃过亏——三个月后回看自己的文件,完全想不起当时为什么选那个参数
一句话总结: 光学系统建模就是把物理世界翻译成数学语言。表面、材料、坐标、孔径,这四个要素定义清楚了,后面的追迹和优化才有意义。