Zemax序列模式模拟LD光源:从几何法到物理光学传播
2026/9/16 5:51:05 网站建设 项目流程

做激光准直、激光照明、激光雷达发射端光路时,LD(Laser Diode,激光二极管)往往是第一个摆进Zemax里的元件。打开序列模式,不少人习惯性默认用点光源,然后一路追迹下去,结果到加工出来才发现实际光斑跟仿真差了一大截。问题出在LD不是各向同性的点光源,它出射的是快轴和慢轴发散角差异极大的椭圆光束,还带着几微米到几十微米的像散。这篇就来梳理Zemax序列模式下模拟LD光源的几种可行路径,从最朴素的几何光线法到更严谨的物理光学传播,把原理、参数设置、避坑经验一次讲透。

对这个话题感兴趣的,多半是正在做LD准直、光纤耦合或者激光整形的人。不管你是刚接触Zemax的新手,还是已经建过几套光路却总觉得“仿真跟实物对不上”的老手,这篇文章把“怎么把LD的真实物理特性输入Zemax”这件事拆开揉碎,讲清楚为什么有些做法会翻车,以及工程上实际怎么选。

1. LD光源模拟的整体思路与方案选型

1.1 LD光源的核心特征:为什么不能直接拿点光源凑合

LD发出的是窄线宽激光,但它在空间上并不是一个理想点源,也不是一个理想的高斯球面波。它的发光区本身是一个极扁的矩形:快轴方向(通常对应p-n结的垂直方向)发光尺寸只有零点几到几微米,慢轴方向(水平方向)大约几微米到十几微米。这个尺寸差异直接导致出射光的衍射效应在两个方向上完全不同。

更麻烦的是发散角。单管LD的典型远场发散角,快轴全角通常有30°到40°,慢轴全角也要8°到12°。如果拿X轴和Y轴分别看,这就是一个高椭圆度的发散光束。如果把这些信息丢给一个普通点光源,Zemax只会给你一个各方向均匀发散的球面波,快轴慢轴的差异完全体现不出来。再加上LD在快慢轴方向上的等效发光面位置并不重合,也就是所谓的“像散”,你能在Zemax里看到的束腰位置和实际贴着管子测出来的位置,天然就有偏差。

所以任何靠谱的LD模拟,起码要能表达三件事:非对称发散角、非对称发光面/束腰、快慢轴方向上的像散。不同建模方案只是对这三件事的简化程度不同。

1.2 序列模式下三种常用模拟方案对比

很多人在论坛里搜“LD模拟”,搜到的答案多半是“用非序列模式的Source Diode”,这当然没错。但序列模式并不是没法做,关键是选对模型。工程上常见的选择有三种,各有各的适用范围:

方案原理适用场景是否包含衍射仿真速度
几何光线法用矩形发光面+物方NA描述LD,配合双柱面镜控制快慢轴发散准直光路初步结构、光机口径估算、能量接收角分析
序列高斯光束法在序列分析中引入高斯光束的束腰、M²、像散参数,以近轴方式传播准直系统、远场光斑粗估、对M²有要求的场景部分(高斯束参数传播)很快
物理光学传播(POP)用Source Diode光束定义,逐面做衍射传播聚焦光斑精确分布、光纤耦合效率、小光斑成形

先说一个容易被误解的点:POP虽然是“物理光学传播”,但它在Zemax里是作用于序列系统文件上的。你在序列模式里把透镜组搭好,再用POP去计算光场传播,这并不算跳出序列模式。所以标题里说“序列模式中LD光源模拟”,POP完全合法。

至于几何光线法里要不要用非序列的Source Diode,不需要。我们在序列LDE里用一个小矩形孔+柱面镜,照样能把LD的椭圆发散给“模拟”出来。代价是它无法表达衍射,光斑边缘是几何阴影而不是真实的衍射环。但对初期结构设计来说,这个精度足够了。

1.3 选型之前先想清楚你的输出指标

在动手建模之前,先问自己一个问题:这个仿真最终要拿到什么数据?

如果只是想知道准直镜大概要多大的口径、光路里哪个位置光束不会切光,用几何光线法就够了。如果是要算聚焦后的光斑能不能达到衍射极限、光纤耦合效率有多少,那就直接上POP。千万不要指望用几何点光源算出一个RMS光斑半径零点几微米,就认为实际聚焦一定那么小。LD的像散和M²随时会打你的脸。

我的经验是,大多数项目可以分成两轮:第一轮用几何法把结构搭出来、把公差初步扛一遍;第二轮用POP对关键面做精确验证,尤其是能量集中度这种指标。这样既保证速度,又不会在关键参数上翻车。

2. 几何光线法实操:双柱面镜方案模拟LD椭圆发散

2.1 设好发光面和系统孔径

几何法的第一步,是把LD的发光面本身建模出来。在序列模式下,OBJ表面除了默认的无限远物点,也可以是一个有面积的发光面。

以典型单管808nm LD为例,发光区假设为快轴约1μm、慢轴约5μm,快轴半发散角全角64°(半角32°),慢轴全角10°(半角5°)。那我先在LDE里把OBJ的Surface Type设成Standard,然后在OBJ的Surface Properties里给它加一个矩形孔径,半宽取X=0.0025mm(对应慢轴方向5μm的一半)、Y=0.0005mm(对应快轴方向1μm的一半)。

接着看系统孔径设置。System Explorer里Aperture Type选“Float by Stop Size”,就不需要手动指定入瞳直径,光束口径完全由后面元件的光焦度决定。这里有个容易踩的坑:如果Aperture Type直接选“Object Space NA”,Zemax默认是各方向等价的NA,快慢轴发散角无法区分——你给了快轴的32°半角,慢轴也会按32°来,那就完全失真了。所以更靠谱的做法是OBJ面用矩形孔径给出发光面形状,系统孔径用Float by Stop Size,让后面的柱面镜各自决定对应方向的张角。

还有一个细节:OBJ的Thickness不要设成0。我习惯设一个0.1mm左右的工作距离,这相当于给后面的柱面镜留了空间,也方便后续优化镜片位置。

2.2 双柱面镜的思路与焦距计算

LD光束的快慢轴发散角差异非常大,一个旋转对称的球面镜是不可能同时把两个方向都准直好的。所以常用方案是把准直任务拆成两个正交方向,用两个柱面镜分别处理。

柱面镜在Zemax序列模式里对应Surface Type为Toroidal(环形曲面)或者Biconic。工程上最普遍的是Toroidal,它的两个主方向曲率半径可以分别设置,一个方向设置成需要的曲率、另一个方向设Infinity(平面)。

选好面型之后,焦距怎么定?简单公式:准直镜焦距约等于目标准直光束半径除以发散角的半角正切值。写成式子就是:

f ≈ D / (2 × tanθ)

其中D是准直后在这个方向上的光束直径,θ是LD在该方向的半发散角。

拿上面那组参数算一下。快轴半角32°,如果希望在快轴方向准直后光束直径约5mm,那么f ≈ 5 / (2 × tan32°) ≈ 4.0mm。实际透镜要多算一点口径余量,留到6mm甚至7mm,所以规格上一般选一个标准焦距4mm左右的短焦柱面镜。

慢轴半角5°,如果希望慢轴方向准直后光束直径也是5mm左右,那么f ≈ 5 / (2 × tan5°) ≈ 28.6mm。这就很能说明问题了——快轴准直镜焦距短、光焦度很大,慢轴准直镜焦距长得多,两根柱面镜完全不是一回事。

注意,快轴发散角通常大到不能直接拿tan近似,严格角度换算用tan其实也够用了,因为准直镜的口径设计和光焦度计算里有大量公差余量。但如果你在优化的时候像差始终调不下去,可以回头检查是不是“大角度光线落到透镜边缘”导致高级像差爆炸,那才是快轴难做的真正原因。

2.3 在LDE里搭建完整的光路

明白了原理,建模就很顺了。我在LDE里的典型结构是这样的:

  1. OBJ:Standard面型,矩形孔径半宽X=0.0025mm、半宽Y=0.0005mm,Thickness=0.1mm。
  2. 第1面:Toroidal柱面透镜,材料N-BK7,用于准直快轴。X方向曲率半径取前面算出来的快轴焦距对应的值,Y方向设Infinity。实际建模时我会把透镜两面都设成Toroidal:前表面按曲率半径控制光焦度,后表面若做成平面则直接设Infinity,也可以前后两个面分担光焦度减小像差。
  3. 第2面:空气间隔,拉开一段距离,这个间隔决定了慢轴光斑长到多大后再进慢轴准直镜。
  4. 第3面:Toroidal柱面透镜,用于准直慢轴。这次反过来,X方向设Infinity,Y方向给慢轴焦距对应的曲率半径。
  5. 像面:放一个探测器观察,或者直接放一个后续使用的聚焦镜。

排布顺序上,先处理快轴还是先处理慢轴?我的习惯是先快轴后慢轴。理由很实际:快轴发散角大,如果不对它立即准直,光斑很快就会在空间上膨胀得非常大,后面的元件口径会变得很夸张。先让快轴收敛,慢轴方向继续发散的椭圆光斑,后面的慢轴准直镜口径只需要覆盖慢轴方向的张角就行。

在这个基础上,我给前后两个柱面镜的间隔、各自的曲率半径设置成变量,然后用默认评价函数优化,目标设为像面上的RMS光斑半径尽可能小。Geometric法在这里优化起来极快,几秒钟就能收敛。不过记得,几何法优化的结果只能作为初始结构,后续一定要用POP复核。

3. 序列高斯光束法与POP:两种带衍射信息的验证路径

3.1 序列高斯光束法:什么时候够用

如果你的需求只是评估LD准直后光斑在传播过程中的大小变化,又不想走又慢又复杂的POP,Zemax序列模式里还有一个很轻量的工具:Paraxial Gaussian Beam分析。它本质上是让Zemax用高斯光束的ABCD传播定律来追踪光束参数,而不是逐点追迹千万条光线。

启用之后,你可以设置高斯光束在物方的束腰半径、束腰位置、M²因子。针对LD,我给两个方向的M²设成不一样,比如快轴M²≈1.1,慢轴M²≈1.3,这样高斯光束的传播参数就不对称了,能比较好地逼近真实LD的类高斯特性。

但要注意,这个方案里的“像散”需要你用束腰在X、Y方向设置不同的位置来近似。如果LD像散很大(比如几十微米),序列高斯光束法还是能给出一个比较靠谱的轴向光斑变化趋势的。它对设计准直光学系统的初期判断特别有用,尤其是当你需要快速试几个不同焦距的准直镜、看哪个组合能把长距离传播的光斑控制住时,省时间省得非常明显。

它的局限也很清楚:求解基于近轴近似,而且假设光束是理想高斯或类高斯,遇到非对称像差、大数值孔径透镜、或者用非球面强整形的情况,结果就会偏离实际。所以我还是那句话——结构粗算用它,最终确认别只用它。

3.2 POP里配置Source Diode:参数到底怎么填

仿真精度要求高的时候,我在序列模式里直接上POP,并且把光束定义类型选成Source Diode。

具体路径是Analyze → Physical Optics Propagation,打开POP窗口后,在Beam Definition里面选择Type为Source Diode。这里的Source Diode模型就是专门为LD设计的,它允许你用X方向和Y方向各自独立的发散角来描述LD,还能设置像散距离。相比之下,如果你选一个普通高斯光束,那是一个圆对称的光束定义,LD的椭圆发散根本表达不出来。

参数怎么填?以808nm、快轴全角64°(半角32°)、慢轴全角10°(半角5°)的LD为例,在Source Diode设置里就输X-Divergence=32、Y-Divergence=5(可能还需要确认界面里标注的是半角还是全角,不同版本、不同对话框之间会有差异,设置完先看一眼光斑形态再确认)。像散量我填0.01mm,也就是10μm。

注意发散角的方向对应关系,别填反。你在Zemax里定义的X、Y方向与LD管的快轴、慢轴对应关系取决于你摆放LD的角度。如果光斑算出来发现椭圆方向跟实际管子方向差了90°,把X和Y的数值交换一下就好。我第一次用Source Diode时就在这转过向,后来习惯在OBJ旁边放一个很小的矩形面做方向标记,免得自己眼花。

网格设置也常在这里出问题。POP里Beam Size要设置成比光束在起始面上的实际尺寸大2到3倍,采样点数尽量取2的幂,比如128×128或者256×256。如果算出来的光斑边缘有规则的条纹或栅格状伪影,先别怀疑物理模型,多半是网格尺寸太小或者采样点不够。

3.3 用POP验证准直与聚焦结果

POP计算完成后,我最常做的一件事是把观察面设在准直镜后的不同距离上,逐一查看辐照度分布。在POP窗口里可以通过设置多个探测器面,或者改变Start/Stop面来观察光束演化。

判断准直质量时,不看几何点列图,而是看POP输出的光束宽度(1/e²宽度或D86宽度)随距离的变化。真正的平行光,理论上光束宽度不随距离变化;如果宽度持续增长,说明发散角还没压到位。这时候可以回到序列模式里继续优化,也可以直接在评价函数里加入POPD操作数,让Zemax把光斑宽度直接作为优化目标。

聚焦系统更不用说了。光纤耦合效率、光斑对称性、衍射环的旁瓣结构,这些几何光路完全给不了的信息,POP全部能算出来。尤其是LD像散对聚焦的影响,用几何法往往看不出问题,但POP一跑就发现焦点在X、Y方向错开了一段距离,这就是像散在作怪。

4. 序列模式LD模拟常见问题与排查技巧实录

4.1 快慢轴发散角设置总是不对

这个我遇到过太多次了,排查顺序很简单:先在系统的任意一个中间面上用POP看辐照度分布,检查椭圆光斑的长轴方向是否跟预期一致;再检查界面里要求输入的是半角还是全角;最后确认快慢轴对应的X、Y方向是否跟实际管子的摆放方向一致。

如果几何法里用的是矩形发光面+Float by Stop Size,那么快慢轴方向完全由柱面镜的曲率方向决定。出现“光斑方向反过来”的情况,直接把Toroidal面的两个曲率半径互换就行。

4.2 POP结果有奇怪的条纹或光斑断裂

这种情况大概率不是真实光场,而是数值计算的伪影。我一般先做三件事:

  • 把POP里的采样点数从128提高到256或512,看看条纹是否变化;
  • 检查Beam Size是否比光束实际尺寸大得足够多;
  • 确认起始面与光源之间的距离没有让光斑边缘落到采样窗口外面。

如果这些都调好了条纹还在,那就需要怀疑是不是上游某个面的孔径切光了,导致衍射纹波进来。这个通常是真实的物理效应——比如快轴准直镜口径不够,边缘衍射效应显著。处理方法是加大镜片口径,让更多光通过。

4.3 优化结果和POP验证结果对不上

几何法优化出来的系统,在POP里看不一定理想,这是正常现象。几何法不考虑衍射,优化器会把RMS光斑拼命往下压,压到艾里斑以下也照压。但物理上光斑不会小于衍射极限,POP自然就会给出一个与几何法相矛盾的数值。

这时候别慌,把优化目标切换成POP相关的评价函数(POPD操作数),在序列模式下重新优化即可。流程上,我一般先用默认几何评价函数快速搜索结构,再用POP评估,等结构基本收敛后,就把POPD作为核心指标做最后几轮优化。这样兼顾速度和精度,实际项目的很多系统都是这么调出来的。

4.4 表格速查:LD模拟问题排查清单

现象可能原因排查/解决方向
光斑椭圆方向与实物相反X/Y方向定义错误交换Source Diode的X、Y发散角,或交换Toroidal面的曲率半径
光斑周围有周期性条纹POP网格采样不足或Beam Size太小提高采样点数、放大Beam Size、检查采样窗口是否截断光束
准直后光斑仍随距离发散准直镜焦距不准、位置偏离束腰用POPP逐面查看束腰位置,重新优化镜片间距
聚焦光斑X/Y焦点不重合LD像散影响在POP中设置像散量;用柱面镜或变形棱镜补偿
几何RMS很小但POP光斑很大几何系统像差好但衍射/像散未控制用POPD替代几何评价函数做最终优化

4.5 几个可以少走弯路的实操建议

最后分享几条我自己的经验。第一,LD的datasheet上通常给的是远场发散角,而且很多是FWHM或者包含90%能量的角度,不是严格的1/e²角度,输入Zemax之前先换算清楚,否则准直镜焦距很容易算偏。第二,快轴发散角大的时候,透镜边缘的光线入射角很大,球差和色差都比较严重,哪怕算出来准直了,实际光斑边缘也可能塌陷,所以镜片口径宁可大一点。第三,不要试图在序列模式里用一个全局孔径把LD的快慢轴一次性描述清楚,老老实实分方向处理,或者直接上POP,这是最省力的路径。

像散这件事,我建议不管几何法算得多漂亮,最终交付前都用POP带像散验证一遍。很多系统在几何法里看不出问题,一到POP就发现快慢轴的焦点不重合,这就是LD像散在提醒你:别忘了它的存在。

需要专业的网站建设服务?

联系我们获取免费的网站建设咨询和方案报价,让我们帮助您实现业务目标

立即咨询