
简介面向光学设计与光纤耦合仿真学习者的 Zemax 实操范例文档聚焦单模光纤光束耦合系统的建模、分析与优化流程。内容以商用光纤耦合器为蓝本采用 SUSS MicroOptics FC-Q-250 微透镜阵列耦合两根康宁 SMF-28e 光纤涵盖物面到透镜、透镜到像面的距离设定用 Pick-up solve 维持空间反演对称按光阑尺寸浮动来设置孔径并对旁轴高斯光束计算与单模光纤耦合效率计算做了完整对比同时给出 GBPS、FICL 优化操作数的用法与优化后的间距结果。文档还提示了数值孔径多种定义间的差异、模式匹配与渐晕对耦合效率的影响等易错点可对照 Zemax 界面逐步复现关键设置。压缩包内为 1 个 doc 文件约 504KB图文混排便于随查随用。已有 3603 人学习适合具备一定 Zemax 基础、希望掌握光纤耦合效率评估与优化思路的工程师及光学专业师生参考。1. 一条 0.11 mm 的间距藏着整套 Zemax 单模光纤耦合的算法分层Zemax 模拟单模光纤的光束耦合很多人第一次上手会把全部希望压在光线追迹上两根单模光纤对着透镜间隔随手给 2 mmFICL 报出 0.99心里一松觉得方案成了。这份范例的价值恰恰在这儿——它用同一套元件把旁轴高斯光束、光线耦合、物理光学传播三层算法依次跑了一遍让你亲眼看见同一结构在透镜拉开到 20 mm 后效率从 0.99 掉到 0.57。范例给的是 NA 0.14、模场直径 9.2 μm 的单模光纤配 240 μm 口径、R330 μm 的熔融石英微透镜阵列附了 four 个阶段的 zmx 文件。适合已经会建面、但对单模耦合的评价函数和 POP 设置心里没底的人。2. 建模前先钉死三件事光阑、Pick-up 与 NA 的口径这套结构看着简单六七个面就能搭完真正决定后面所有计算结果对不对的是三件在建模阶段就必须定死的事光阑怎么浮动、对称性怎么锁、数值孔径按哪个定义填。这三件事里任何一件含糊后面优化出来的数字都是假的——优化器不会报错它只会老老实实给你一个错的最优解这才是最坑的地方。2.1 把元件手册翻译成 Zemax 的输入表厂商手册上的参数是给采购和封装看的不是给光学软件看的。落到 Zemax 里需要做一次“翻译”有些参数要参与计算有些只是参考还有些表面上看是同一个量其实定义完全不同。先把这张对照表列清楚再动手建面。手册参数数值在 Zemax 里的落点是否参与计算工作波长1.31 μmSystem Wavelengths是模场直径 1.31 μm9.2±0.4 μm束腰 1/e² 半径 4.6 μm是核心纤芯直径8.3 μm仅作记录否光纤 NA1% 功率点0.14不直接填需换算成 1/e²间接透镜基片材料熔融石英玻璃库选对应牌号1.31 μm 折射率约 1.446是基片厚度0.9 mm球面后那一面的厚度是透镜直径240 μm表面半口径 120 μm是决定渐晕透镜节距250 μm阵列排布用单元件建模不用否曲率半径330 μm球面 R 值是圆锥常数0标准球面Conic 0是透镜 NA0.17只在判断口径够不够时参考否表里最容易被忽略的是“透镜节距 250 μm 不参与单元件建模”这一条。单模耦合只关心一对光纤、一对透镜节距是阵列串扰问题跟耦合效率没关系但很多人看到阵列参数表就顺手把 250 μm 填进半口径结果光阑变成 125 μm渐晕算错系统效率怎么优化都上不去。半口径取的是透镜直径的一半120 μm不是节距的一半。面序按“球面朝外、平面相对”的平凸排法给一份最小结构范例文件里的编号跟这份不完全一样但物理结构等价照着参数对一遍就能对上面内容厚度 / 关键参数0物面源光纤端面—1空气间隔0.1 mm后续设为变量2第一片透镜前表面球面R 330 μm半口径 120 μm厚度 0.9 mm 玻璃3第一片透镜后表面平面光阑面半口径 120 μm厚度 2 mm 空气4第二片透镜前表面平面半口径 120 μm厚度 0.9 mm 玻璃5第二片透镜后表面球面R -330 μm厚度用 Pick-up 跟随面 16像面接收光纤端面—建面的时候有几个动作要一次做对。表面 2 和表面 5 的曲率半径符号相反是因为两片透镜背对背放置球面都朝外如果符号搞反系统会变成一片“凹”的怪东西高斯光束直接发散出去你还在纳闷为什么光斑越走越大。表面 3 后面那 2 mm 空气间隔是这个范例里唯一的“实验值”先照着填后面再放开优化。提示先把所有半口径统一设成 120 μm 再谈优化。Zemax 默认半口径是自动的自动口径会跟着光束长渐晕就永远不会发生系统效率也永远算不出真实的损失。2.2 光阑浮动与高斯切趾让透镜口径自己说话系统孔径类型选“Float by Stop Size”光阑面指定在表面 3也就是第一片透镜的后表面。这个组合的含义是入瞳的大小不由某个 NA 决定而由光阑面的实际半口径 120 μm 决定。为什么这么设因为光纤出射的是高斯光束没有硬边你没法说“光束半径就是多少”只能让物理光阑去截。光束在系统里走到哪一面只要超过那一面的半口径能量就被渐晕掉系统效率里自然体现出来。另一种常见做法是把孔径设成“Object Space NA”填 0.09 或 0.14。这在小孔径系统里能凑合但在这套结构里会翻车入瞳大小会跟着你填的 NA 变而 NA 本身又是个有歧义的量下一节细说两层误差叠在一起最后优化出来的间距能差出十几个微米。我一般建议这类光纤耦合系统一律用光阑口径定孔径把不确定性关在一个变量里。高斯切趾Gaussian Apodization在 System Aperture 里设类型选 Gaussian切趾因子要跟模场匹配。它的作用是把光瞳上的入射光强从均匀分布改成高斯分布逼近光纤出射的真实场。这一步在当前范例里只是近似——因为真正的光纤模式还得靠后面的光纤耦合计算和 POP 来精确处理——但不设切趾入瞳上的能量分布是平的算出来的耦合效率会偏高而且偏得很隐蔽看结果根本看不出来。判断切趾因子设得对不对有个笨办法但很有效打开 3D 布局图把光瞳面的光强分布调出来看一眼确认边缘衰减到接近零、中心附近符合 1/e² 包络。对不上就微调因子别指望优化器帮你找这个值它不在评价函数里。2.3 NA 的三种定义0.14 和 0.09 差在哪这是整套范例里最容易埋雷的一节。同一个“数值孔径”在三个地方有三种算法第一种是边缘光线倾角的正弦值sin θ几何光学里的全口径 NA对应透镜的 0.17 就是这一类。第二种是光强降到 1/e² 处的半角正弦高斯光束的标准定义Zemax 的 POP 和光纤耦合计算默认用这个。第三种是光强降到峰值 1% 处的半角正弦光纤厂商的产品手册习惯用这个手册上那个 0.14 就是它。三者数值差得很远。0.14 是 1% 口径换算到 1/e² 大约只有 0.09。这个 0.09 不是拍脑袋来的可以反算验证高斯光束的远场半角 θ λ/(π·w₀)把 w₀ 4.6 μm、λ 1.31 μm 代进去θ ≈ 0.0906 rad小角下 sin θ ≈ 0.0906。跟 0.09 对上了说明换算没问题。坑在哪儿如果你把手册上的 0.14 直接填进光纤耦合计算的 NA 栏Zemax 会按 1/e² 定义去理解它于是算出一个偏大的发散角、偏小的束腰源光纤模式和接收光纤模式从一开始就不匹配效率虚低更麻烦的是优化器会拼命拉间距去补偿这个错误最后给你一个“优化成功”的错解。我见过有人因为这个把光纤到透镜的距离优化到 0.3 mm结构都撞上了还在怀疑是不是透镜装反了。注意手册 NA 和软件 NA 不是一回事。填之前先确认这个数字对应的是 1%、1/e² 还是全口径拿不准就用模场直径反算一遍两边对得上再往下走。3. 旁轴高斯光束用 GBPS 把 0.1 mm 推到 0.117 mm旁轴高斯光束是整个分析链条里最快的一层它只做两件事用 ABCD 矩阵把高斯光束的 q 参数从物面传到像面然后告诉你每个面上的 1/e² 束宽是多少。快但只能看个大概渐晕、衍射、像差它一概不管。拿它做初值、定结构、判断口径够不够是合适的拿它当最终结论就要出事。3.1 束腰 4.6 μm 与 Waist 参考面的选择打开 Analysis Physical Optics Paraxial Gaussian Beam第一件事是填 Waist。这里有个反复有人踩的坑Zemax 这个字段要的是 1/e² 束腰半径不是直径。模场直径 9.2 μm填进去的应该是 4.6 μm。范例正文里写“束腰直径 4.6 μm”那是表述习惯问题实际填的是半径量级的数——你要是按“直径 4.6”再除以二填 2.3整个系统的光束会细一半后面所有束宽数据全错。Waist 的参考面选表面 1也就是源光纤端面所在的位置。Zemax 里这个 Waist 位置是相对某个表面定义的选错面等于把束腰挪了地方等效于给系统加了一段看不见的离焦。范例里束腰就在源光纤端面所以参考面选 1 最直接。填完之后先别急着优化把表面 3、表面 4 和像面的束宽读出来看一眼。范例给的数是表面 3 上 1/e² 直径 65 μm表面 4 上 70 μm而这两面的物理半口径是 120 μm也就是说光束直径连口径的一半都不到边缘还留着大量余量。这个结论很重要它说明在当前 2 mm 间距下渐晕不是主要矛盾口径够用。同时它也埋了个伏笔一旦间距拉长光束会自己长大这个余量就不够了。像面的读数更值得盯光斑 5.3 μm比源端的 4.6 μm 大了 15%。按系统的空间反演对称性输入输出互易像面束腰应该回到 4.6 μm 才对。现在回不去说明像面不在最佳聚焦点上初值 0.1 mm 只是“接近实际”不是最优。这一步的判断就是后面优化的全部动机。3.2 分析窗口设置与 GBPS 评价函数设置项不多但每一项都影响读数设置项取值说明波长1.31 μm与系统波长一致Waist X / Y4.6 μm1/e² 半径不是直径Waist 参考面表面 1源光纤端面采样默认即可旁轴算法不吃采样密度评估面3、4、像面重点看像面读完初值打开评价函数编辑器加一行 GBPS。这个操作数算的是指定两个面之间的旁轴高斯光束尺寸用它的目标值把像面束腰拉到 4.6 μm变量只放一个表面 1 的厚度。表面 5 的厚度不放开因为它挂着 Pick-up solve跟随表面 1这是锁死系统互易性的关键。操作数起始面评估面目标值权重GBPS1像面4.61评价函数就这一行没有别的。为什么敢这么简因为系统只有一个自由度——光纤端面到透镜的距离其余全靠对称性约束住了。变量多于约束的优化在这类小系统里是自找麻烦优化器会把透镜厚度、曲率、间距一起动最后给你一个数学上更优、物理上装不出来的结构。跑几个循环结果收敛到 0.117 mm。这个数比初值 0.1 mm 长了 17 μm量级上完全合理——相当于把光纤端面从透镜前焦点往外挪了一点点让像面的波前曲率刚好落回来。同时表面 5 的厚度被 Pick-up 同步拉到 0.117 mm系统正着用和反着用是同一套数互易性成立。3.3 结果解读为什么像面光斑是 5.3 μm 而不是 4.6 μm回到那个 5.3 μm。它不是误差是离焦的直接证据。高斯光束经过一片薄透镜后束腰位置和大小由 q 参数变换决定初值 0.1 mm 让像面稍稍偏离了束腰位置于是量到的光斑比束腰大。离焦量不大所以只大了 15%看起来“差不多”但在单模耦合里15% 的模场失配足够让耦合效率掉几个百分点。这层算法给出的信息就这么多束腰位置、各面束宽、离焦趋势。它看不到渐晕带来的能量损失看不到球差引起的波前畸变也看不到长距离传输后的衍射。范例到这儿就转去用单模光纤耦合计算了原因也在这——要算效率得换一把更细的尺子。提示GBPS 优化出来的 0.117 mm 不要当成最终答案丢掉。它是后面 FICL 和 POP 优化的起点起点好后面收敛快也不容易掉进局部极小。4. 单模光纤耦合计算FICL 和那两笔账旁轴高斯光束告诉你“光斑多大”单模光纤耦合计算告诉你“有多少光能进得去”。后者把总效率拆成两笔账一笔是能量传输一笔是模式匹配。这两笔账必须分开看合在一起看只会得到一个数字出了问题也不知道该动结构还是动间距。4.1 系统效率 S 与模式匹配 T 各自管什么系统效率 S 是能量账。分子是通过入瞳、并且在系统里被渐晕、被体吸收、被镀膜反射之后剩下的那部分能量分母是源光纤辐射出来的全部能量。S 掉了说明有光被挡在口径外、被材料吃掉、被界面反射掉跟波前形状没关系。模式匹配 T 是形状账。它算的是接收光纤的复振幅模式和到达像面的波前复振幅之间的重叠积分两个都是复数所以是相干重叠。T 的上限是 1光纤模式和波前在振幅、位相上都完全吻合时取到。像差、离焦、模场直径不匹配都会让 T 往下掉。总耦合效率大致是两者相乘。这个拆分的意义在于定位S 掉去查光阑口径、材料吸收、镀膜T 掉去查间距、曲率、非球面系数。如果不拆看到效率 0.86 就只能猜。4.2 FICL 优化到 0.11 mm 的完整步骤打开 Analysis Calculations Fiber Coupling Efficiency按下面的顺序设置每一步都有它的理由源光纤和接收光纤的模场直径都填 9.2 μm两边一致这是互易性的前提。NA 栏填 0.09也就是 1/e² 定义的那个值不是手册上的 0.14。偏振计算先不勾第一轮只看几何和模式匹配。读初始结果把 S、T 和总效率三个数分别记下来。评价函数加一行 FICL目标值 1.0权重 1变量仍然只放表面 1 的厚度。表面 5 的 Pick-up 保持不动跑优化。几轮之后光纤到透镜的距离从 0.117 mm 收到 0.11 mm。这个变化很小但方向值得注意FICL 的解和 GBPS 的解不完全一致因为两者优化的目标不同——前者要的是波前和光纤模式的重叠最大后者要的是束腰尺寸回到 4.6 μm。在小像差系统里两者接近但不相等是正常的。指标物理含义优化后的变化原因系统效率 S能量传输受渐晕、吸收、镀膜影响基本不变口径余量充足轻微离焦不改变落在口径内的能量接收效率 T模式匹配受波前位相影响明显上升重新聚焦后波前曲率和接收光纤模式更吻合总耦合效率S × T 的综合上升接近该结构上限提升主要来自 T这里要说明一句范例只给了变化趋势没有把 S 和 T 精确到小数点后三位。看到别人文章里写出很精确的数先确认那是他自己跑的还是原文件的截图。趋势比数字重要因为你手上的光纤和透镜公差跟范例不可能完全一样。4.3 为什么系统效率不动只动接收效率S 不动的原因很直白它由光阑口径和入射模式尺寸决定。光纤出来的光1/e² 半径 4.6 μm透镜半口径 120 μm两者差了二十多倍光束在透镜上只占很小一块边缘根本没碰到光阑。这种条件下你把光纤端面挪十几微米落在口径内的能量几乎不变S 自然是平的。T 上升的原因也不复杂初值时像面离焦波前曲率半径和接收光纤的模式曲率对不上重叠积分打折优化把像面推回束腰位置曲率对上T 就上去了。这也解释了为什么这层算法优化出来的提升幅度有限——它只能动一个间距动不了球差动不了口径天花板就在那儿。真正的天花板在哪儿在透镜口径和透镜间隔的搭配上。当前 2 mm 间距下光束在透镜之间还没长到撞口径所以光线法看起来很美。一旦间距拉到 20 mm光束长到 0.15 mm超过 0.12 mm 的半口径光线法还是报 0.99物理光学法直接掉到 0.57。这个差距就是下一层算法要处理的事。5. 避坑与排查五条踩出来的记录这套范例的每一个设置项几乎都有一个对应的错误版本而且大多数错误不会让软件报错只会让结果安静地偏掉。下面五条是按“现象、原因、解决”整理的都是我自己或身边人实际踩过的。5.1 建模阶段的两个坑现象一像面束腰怎么优化都回不到 4.6 μm越优越大。原因基本只有一个Waist 字段填了 9.2。Zemax 要的是 1/e² 半径填成模场直径等于把光源放大了一倍后面的束宽、光斑、耦合效率全部按双倍尺寸算。优化器再怎么拉间距也只能把这个错误尺寸往像面搬回不到真值。解决把 Waist 改成 4.6 μm重新跑一遍 GBPS。改完顺手把表面 3、表面 4 的束宽也对一遍如果 65 μm 和 70 μm 对不上说明还有别的地方没对齐别急着往下走。现象二系统效率卡在 0.7 附近怎么优化都不动。原因通常是光阑面的半口径没设成 120 μm而是留在了自动口径或者被误设成 125 μm节距的一半。自动口径会跟着光束长大永远不产生渐晕S 就虚高设成 125 μm 则会让边缘多切一点S 虚低。两种都不对。解决把表面 3 的半口径手动锁成 120 μm孔径类型确认为 Float by Stop Size光阑面确认为表面 3。改完看 3D 布局图光瞳边缘应该能看到轻微的能量截止看不到就说明口径还是太大。5.2 计算阶段的坑现象三勾上偏振之后效率掉到 0.86以为模型建错了。不是模型错是物理。偏振打开后Zemax 会把每个玻璃表面的菲涅尔反射和材料体吸收都算进系统效率里熔融石英在 1.31 μm 的折射率约 1.446一个空气-玻璃界面反射率大约 3.3%四个界面串起来就是十几个百分点正好对上 0.86。这时候掉的是 S不是 T。解决先确认这是不是你想要的结果。如果实际系统会镀增透膜就在 Tools Coatings 里给所有玻璃表面加一层单层 MgF2再看效率——会明显回升。如果实际不镀膜那 0.86 就是真实值别去改模型凑数。现象四改了透镜间隔FICL 的结果一动不动。这是光线法本身的局限不是设置错了。透镜之间是近似准直的光束光线追迹只关心几何路径间距变化对光线的落点影响很小所以 FICL 对这种“准直段长度”不敏感。范例里把间距从 2 mm 拉到 20 mmFICL 还是 0.99就是这个道理。解决间距超过几毫米、或者光束在中间段明显长大时换 POP 算。判断标准很简单看中间面的 1/e² 束宽有没有接近该面半口径的 50%接近了就必须用 POP。5.3 优化阶段的坑现象五优化出来的系统正着用和反着用的效率不一样。原因几乎一定是表面 5 的厚度没挂 Pick-up。系统本来应该空间反演对称两组光纤和透镜在公差内完全一致那么正反两个方向的耦合效率必须相等。少了这个约束优化器会为了迁就某一个方向把间距拉偏另一个方向就废了。解决表面 5 的厚度求解类型设为 Pickup目标面设表面 1比例因子 1。改完再优化两个方向的效率应该一致到小数点后三位。这条我吃过亏当时以为是镀膜不对称查了半天才发现是求解器没挂。6. 最后一章POP 才是分水岭20 mm 下 0.57 和 2.072 mm 的来历物理光学传播POP是这套范例里唯一能同时处理衍射、任意模式、光阑截断的算法。设置窗口在 Analysis Physical Optics Physical Optics Propagation起始面选 1终面选像面X/Y 采样先给 256×256然后点 Auto 让软件按光束尺寸自动扩矩阵——手动给采样矩阵是新手最容易翻车的地方给小了光束被窗口切掉给大了计算慢到怀疑人生Auto 这一步别省。6.1 POPD 操作数怎么读位相图看什么POP 跑完真正有用的是评价函数里的 POPD 操作数它把分析窗口里的所有数据都暴露成可优化的量。范例里那组数值得记一下POPD Data含义范例值0总光纤耦合效率0.9941系统效率0.9982接收效率0.99610导引光束束腰4.57 μm23有效光束宽度4.84 μm26M²1.082M² 1.082 说明出射光束已经很接近理想高斯光强分布看不出问题。这时候要看的是位相把显示切到位相会看到一条抛物线叠着四次曲线抛物线对应聚焦四次项对应球差透镜边缘还能看到位相被口径切出来的折点。位相差在能量低的地方所以对总效率影响有限但它告诉你这套结构的余量在哪——想再往上提得加非球面或者加面靠调间距已经到顶了。间距拉到 20 mm情况就完全变了。FICL 报 0.99POP 报 0.57几乎腰斩。原因写在束宽上高斯模式传输 20 mm 后 1/e² 宽度涨到 0.15 mm超过透镜 0.12 mm 的半口径第二片透镜的物理光阑开始衍射聚焦到接收光纤上的光已经不是高斯形M² 涨到 2.45。把透镜间隔放开当变量用 POPD 优化收敛到 2.072 mm跟实验用的 2 mm 差 3.6%这个偏差在装调公差内。从那以后我每次做超过 5 mm 准直段的耦合都强制先用 POP 扫一遍间距曲线再决定要不要相信光线法的数。偏振和镀膜的账在 POP 里也一样算打开 Use Polarization、在 General Polarization 里定义 Y 线偏振效率从 0.99 掉到 0.86给所有玻璃面加单层 MgF2再跑一遍效率回升。这一降一升才是真实系统该有的样子。希望帮到你。本文还有配套的精品资源点击获取