首页 / 资讯中心 / 文章详情

Zemax牛顿望远镜设计:球差优化与从球面到抛物面的完整流程

Zemax牛顿望远镜设计:球差优化与从球面到抛物面的完整流程 ★ FEATURED ARTICLE
入坑Zemax做牛顿望远镜设计很多人上来就踩同一个坑以为把主镜设成抛物面、副镜转45度就完事了。结果光路在软件里怎么摆都不对副镜加进去焦平面跑到了镜筒外面优化了半天球差还是压不下去。去年有位同好拿着自己磨的200mm球面牛反来找我说土星环始终看不锐怀疑是镀膜问题。我一算他那支F/5的球面镜边缘波前差已经接近3个波长问题根本不在镀膜。后来就是在Zemax里把这套光路一步一步复原从球面优化到接近衍射极限他才真正理解了“球面到抛物面”那一下到底改了什么。这篇文章就拿一个150mm口径、F/6的牛顿望远镜当例子把从参数确定到像质验收的完整5步流程拆开讲重点放在球差优化上。适合正在学Zemax光学设计的在校学生、自己磨镜的DIY玩家以及想把球面主镜牛反改成抛物面方案的同好参考。五分步先放这确定参数、搭建序列模型、配置视场与评价函数、球差优化、像质验收与公差分析。1. 先把光路走通牛顿望远镜的构建逻辑与球差来源1.1 主镜、副镜和聚焦点的角色划分牛顿望远镜本质上是“一凹一平”两片反射镜的组合。凹面主镜负责收集光线并聚焦平面副镜则把焦点从镜筒正前方引到侧面方便目镜或相机接入。相比折射镜反射系统的最大好处是不产生色差因为反射不依赖材料折射率也和波长没有关系。但平面副镜不是白装的。它挡在主镜前方必然遮挡一部分入射光它还会把光路折成90度导致像面不在主镜光轴延长线上。很多新手第一次建模时就是因为这最后一条栽了跟头。实际上在设计阶段可以先不建副镜把它留到最后做装配验证时再加。原因很简单理想平面镜只改变光路方向不引入任何球差、彗差等像差。主镜单独聚焦的像质和装上理想平面副镜后的像质是完全一致的。1.2 球面反射镜的球差公式与直觉球面镜好磨、好检测所以几乎所有DIY都是从球面起步。但球面镜有个绕不开的毛病——边缘光线比近轴光线提前聚焦这就是球差。这个像差对口径极其敏感边缘光线的波前差近似与镜面半口径的四次方成正比。换句话说口径翻倍球差增大16倍。这就是为什么同样F/6的焦比下80mm口径球面镜还凑合150mm口径球面镜就已经完全没法看了。拿我选的这个案例来算笔账。150mm口径的球面主镜半口径h75mm焦距900mm对应曲率半径R1800mm凹面镜的曲率中心在入射光一侧Zemax里符号为负。用三级像差公式估算边缘波前差W ≈ h⁴ / (8R³) 75⁴ / (8 × 1800³) ≈ 0.000678mm 678nm换算到550nm中心波长大约是1.2个波长的波前误差。而瑞利判据要求波前差不超过四分之一波长。也就是说球面镜在F/6时超标接近5倍。直接看纵向球差也行边缘光线焦点比近轴焦点提前约0.39mm而焦深只有大约±2λF²≈±40μm远超十倍以上。所以我能理解那位同好的困惑——镜面和镀膜都挺漂亮但成像就是肉。球差这种低阶大像差把星点能量全部散开了放大倍数越高越明显。1.3 抛物面为什么是经典解要消除球差最直接的办法就是把主镜面形从球面改成抛物面。在Zemax里抛物面用Conic常数k-1来描述球面则是k0。当k从0变到-1时系统对轴上点光源的球差会完全消失平行光经过抛物面反射后理想会聚到同一个焦点。但抛物面不是免费的午餐。磨制抛物面比球面难得多检测也需要无球差点检验或干涉仪DIY成本直线上升。更要命的是抛物面消掉球差之后还有另一个像差在等你好——离轴彗差。视场稍微偏一点点星点就会拖出彗星状尾巴。F越小的牛顿镜可用视场越窄。这也是为什么很多摄影用牛反要在焦平面前加彗差改正镜。理解了这些后面所有优化步骤才有意义所谓“球差优化”本质就是让Conic系数从0逼近-1同时兼顾焦距不跑偏、离轴像差可接受。2. 前两步落地从参数表到Zemax序列模型2.1 口径、焦比、遮挡比参数表的博弈设计一个牛顿望远镜一开始就要定四个数口径、焦距、焦比和副镜遮挡比。我选的是150mm口径、900mm焦距、F/6焦比。这个搭配在入门天文镜里很常见既不像F/4那样对彗差极端敏感也不像F/8那样把镜筒拉得过长。遮挡比指的是副镜线尺寸与主镜线尺寸之比。它对成像有三个影响减少进光量面积遮挡比约为直径比的平方、降低低频MTF、让星点衍射环能量外移。经验上是这样——摄影向的牛反遮挡比尽量压在0.25以内目视为主可以放宽到0.35。150mm口径取0.3左右是比较通用的选择对应的副镜尺寸大约是45mm。参数表的完整设置参考参数数值入瞳直径150mm主镜焦距900mm系统焦比F/6主镜曲率半径-1800mm副镜遮挡比0.3后截距焦点到副镜距离约120mm2.2 反射镜建模把“凹面镜朝哪边”翻译给软件Zemax序列模式的建模逻辑很简单——每个面一排参数光线从左往右追迹。但反射系统特殊在光线碰到Mirror面后会反向传播LDE厚度要填负值才能把焦点摆到镜子前方正确的位置。以这个案例为例打开新系统后做三件事。第一把系统孔径设为Entrance Pupil Diameter填150。第二把物面厚度设为Infinity表示无穷远目标。第三在LDE里按下表搭建面编号面型厚度曲率半径/参数说明OBJStandardInfinity—无穷远物面1 (STO)Standard50Infinity入瞳/光阑2Standard (Mirror)-900Radius-1800, Conic0主镜IMAStandard——焦平面主镜的Radius填-1800是负号因为凹面镜朝入射光方向曲率中心在镜面左侧。Conic先填0即球面后面优化再放开。厚度从光阑到主镜填50mm代表入射光到主镜前表面的距离。从主镜到像面填-900mm负号表示光线反射后向回走焦点落在主镜前方900mm处。如果这一步填对了3D Layout里看到的应该是平行光从左边过来打到凹面镜后被反射回左边并在主镜前方约900mm处会聚。这是牛顿镜的“原始”光路副镜还没加进来。2.3 坐标断点与副镜折叠光路从直线变成折线优化阶段不建副镜不代表永远不建。等主镜像质优化完想让屏幕上的光路图和实际镜筒一致就要用坐标断点Coordinate Break把光路折成Z字形。具体的思路是在主镜反射面之后插入一个坐标断点面设置绕X轴或Y轴的倾斜量然后放一个平面反射镜厚度设为0的Standard面勾选Mirror再补一个坐标断点把坐标转回来让后续像面垂直于反射后的光轴。这个过程繁琐但机械核心就是“倾斜-反射-补偿坐标”。很多新手在这里纠结副镜建模会不会影响优化结果不会。理想平面镜不引入像差它的位置和旋转只会改变像面朝向和焦点位置不会改变点列图大小和波前差。所以先优化、后折转是效率最高的做法。如果你需要在非序列模式里做完整的物理光路模拟也可以把主镜、副镜、像面按实际角度摆放不过那是后面做杂散光分析时的事了。3. 第三步视场、波长与评价函数的三件套配置3.1 视场设定的真实考量牛顿望远镜的视场不大但设计时也不能只给0度一个视场否则你只会看到轴上像质。目视观察时2寸目镜在900mm焦距下大概能得到1度以上的实际天空视场用APS-C画幅相机直焦传感器对角线约28mm对应全视场约1.8度半视场0.9度。我建议设三到五个视场从小到大覆盖实际使用范围。以半视场角为例设0°、0.15°、0.3°三挡就够了。0.3°半视场对应约0.6°全视场已经是普通目视场景比较真实的情况。再往上设f/6牛反的彗差会大到你怀疑人生反而干扰球差优化的判断。这里有个Zemax的使用细节对无穷远物面视场类型用Angle角度而不是Object Height。在System Explorer里的Field选项卡中选Angle然后在Y-Field栏输入0、0.15、0.3X-Field保持0。系统会在半视场内对称采样。3.2 波长和后继探测器反射系统无色差但设计时波长还是要设。原因有两个一是Zemax计算MTF和波前差时需要波长和权重二是如果后续加改正透镜色差就会成为新问题必须一开始就把波长设全。目视用途选F、d、C三色光486.1nm、587.6nm、656.3nm即可权重可以默认1:1:1。如果做单色优化节省时间可以先用587.6nm单波长跑球差最后再切回三波长确认。摄影用途可以加400nm到700nm的连续波段但反射系统本身无色差最终设计结果和三波长差别很小。3.3 默认评价函数向导怎么选Spot还是Wavefront这是新手最容易搞混的地方。打开Merit Function Editor选择Optimization Wizard后第一个选项就是“像质评价基准”。Zemax给了两种RMS Spot Radius点列图均方根半径和RMS Wavefront波前差均方根。我的建议非常直接做望远镜选RMS Wavefront。原因是天文望远镜看的是星点能量集中度波前差与斯特列尔比直接相关而Spot Radius在优化大球差时可能会把能量扩散的细节“平均”掉优化结果看起来RMS不算大但MTF回升不明显。RMS Wavefront则能从光程差层面更严格地约束像质。Wizard里还有两个关键参数Pupil Integration Method和Rings。保持默认的Gaussian QuadratureRings取6到8。环数越多采样越密优化越准但越慢。在F/6这种中焦比系统上6环已经够用。3.4 优化变量和约束的提前绑定评价函数只是目标变量才是优化的“旋钮”。这个案例里可用的变量有两个主镜Radius和主镜Conic。如果目标是设计一支纯软件方案的牛反两个都设为变量没问题但如果你已经在磨镜主镜曲率半径已经磨成了约1800mm那就把Radius固定只放开Conic。后一种更贴近现实——磨镜的人改变不了曲率半径只能通过修改面形非球面度来消球差。同时必须加一条约束焦距不能跑偏。评价函数里插入一个EFFL操作数目标值填900权重给1。如果不加这条优化器为了让球差减小很可能会把焦距悄悄拉大球差与焦距三次方成反比导致系统实际焦比和镜筒结构全部对不上。4. 第四步球差优化的三阶段操作法4.1 第一阶段看清球差的初始大小和走向优化前先别急着跑先看初始像差。打开点列图分析把Airy Radius显示开出来。优化前的球面镜Spot RMS通常在几十微米量级而艾里斑半径只有约4μm1.22 × 0.55μm × 6差了十几倍。再看OPD Fan曲线如果呈明显的三次曲线形状说明球差主导。这时也可以用分析工具里的Seidel Diagram直接看各面的赛德尔系数。主镜面的球差系数会是一个较大的非零值而彗差、像散在轴上视场为0。这一步的意义是让你在动手优化之前就知道“敌人”是谁、有多大。4.2 第二阶段曲率半径与Conic的协同优化确认球差主导后把优化器打开。具体操作在评价函数编辑器里点Tools → Optimization → Optimization Wizard选RMS Wavefront Centroid参考Rings设6然后回到LDE把Conic设为VariableRadius是否放开取决于你上面说的磨镜情况。点Optimize开始。正常情况下优化器会把Conic从0推向-1附近。如果Radius也参与了优化它可能做小幅修正最终Conic落在-0.95到-1.05之间都是正常的。优化完成后看一眼点列图RMS半径应该降到微米级甚至亚微米级与艾里斑半径可比OPD Fan曲线的S形弯曲大幅收平。这里有个经典翻车案例Conic优化到-2甚至更负波前看起来也不错但焦距已经跑到了1500mm。这就是漏了EFFL约束的结果。加了焦距约束后优化器才不敢乱拉系统尺寸。4.3 第三阶段残余球差的精细平衡与约束到了这一步大球差基本消干净了但如果你想要更顶真的结果可以用操作数做精细校零。在MFE里手动插入TRAY操作数用以控制特定口径处的横向光线像差。以下是我实际用过的MFE配置片段可供参考操作数参数设置目标值权重EFFLSurf2, Hx0, Hy09001TRAYSurfIMA, Hx0, Hy0, Px0, Py0.701TRAYSurfIMA, Hx0, Hy0, Px0, Py1.001TRAY里的Py代表归一化孔径坐标Py1对应边缘光线Py0.7对应0.7口径处的光线。把这两处的横向像差压到0就能确保球差在孔径上均匀且完全消除而不是仅靠“某种平衡”掩盖问题。这个阶段还要注意一个陷阱优化收敛后一定要切回0.3度视场看一眼。抛物面消球差只对轴上点有效离轴后彗差马上冒出来。如果你的评价函数里视场权重分配不合理优化器可能会用球差去“补偿”彗差导致轴上反而变差。所以做牛反优化时球差校零最好只在0度视场下做彗差问题留给改正镜或视场取舍去解决。4.4 球差优化里的进阶招球面主镜时代的低成本方案如果不想磨抛物面还有一条路球面主镜加改正透镜。这个方案在商业望远镜里很常见历史上称为Rosin改正镜或类似的两片式改正组放在焦平面前方用透镜组合产生的反向球差去抵消球面镜的球差。在Zemax里做这个优化流程稍作调整在主镜和像面之间插入一个透镜组面序列把透镜曲率半径设为变量主镜保持球面Conic0然后用RMS Wavefront做默认评价函数。注意这时波长必须用三色光因为透镜一进来就带了色差需要用胶合或分离结构做消色差。这个方案的软件设计难度不大但物理实现有代价改正镜增加了光学件数量、表面反射损失和杂散光风险小型牛反装上后性价比不一定比直接上抛物面高。所以我的看法是——球面主镜加改正镜适合大口径系统因为大口径抛物面磨制成本指数上升而改正镜成本相对固定150mm这种级别还是老老实实优化Conic上抛物面更划算。5. 第五步像质验收与副镜遮挡的真相5.1 用四种工具验收一个望远镜设计优化收敛不等于设计完成。我每次交设计前都会用四个工具把系统过一遍缺一不可。第一个是点列图Spot Diagram。打开时记得勾选Show Airy Radius。如果RMS半径小于艾里斑半径说明几何像差已经不再是限制因素系统接近衍射极限。第二个是MTF曲线。看零视场的MTF是否紧贴衍射极限曲线同时看0.3度视场的MTF在低频段是否塌得厉害——这是判断彗差是否可接受的最快方式。第三个是OPD Fan光程差曲线。轴上视场的OPD曲线应该是一条接近水平的直线任何明显的S形弯曲都意味着残余球差还没清干净。第四个是斯特列尔比在评价函数里插入STRC操作数直接读值轴上视场大于0.8就是衍射极限级0.5以下说明像质还有明显缺陷。对150mm F/6这个案例验收标准大致是轴上视场的点列图RMS小于艾里斑半径STRC大于0.9F/d/C三波长的MTF低频段下降不超过10%。5.2 副镜遮挡对MTF和衍射能量的影响现在回到副镜。在System Explorer的Aperture选项卡里有个Central Obscuration参数直接填0.3。它表示副镜对入瞳的线性遮挡比例。加上这个参数后重新看MTF和PSF你会看到两个明显变化。第一MTF曲线整体下压。遮挡会让大幅度的中低频响应降低星点能量从中心衍射斑转移到了外面的衍射环上直观感受就是“星点变毛了”。摄影派玩家特别在意这件事。第二系统的理论截止频率不变所以细节分辨率并不会因为遮挡而突然消失只是对比度降低。实际设计里如果副镜遮挡比从0.3降到0.2MTF中频响应会有可感知的提升但副镜尺寸太小又会导致目视时出瞳亮度和照明均匀性变差。所以遮比不是越小越好美观和实用性要平衡。5.3 公差测试设计好不等于磨得好最后一步公差分析。设计文件里再完美的像质落到实际镜片和装配上都会被误差拉低。Zemax里的Tolerance Wizard可以一键完成大半工作但参数得自己填合理。我给这个案例常用的初始化公差就三条主镜曲率半径±5mm、主镜面形误差PV控制在八分之一波长以内、副镜角度误差±0.3度。再加上像面间距±0.2mm模拟调焦座的对焦余量。运行灵敏度分析和500次蒙特卡洛模拟后看90%置信区间的波前差。如果90%的模拟结果STRC还大于0.8说明设计余量充足可以放心加工如果后90%只有0.6就得考虑收紧面形公差或改小遮挡比。实际经验是150mm F/6抛物面牛反只要主镜面形靠谱、副镜安装别太歪成品达到衍射极限是大概率事件。整套流程走下来我最大的体会是球差优化的难度从来不在软件操作而是你到底有没有提前算清“球面离抛物面差多少”这笔账。Zemax只是个高度称手的验算台真正决定设计成败的是参数表的一开始的取舍和优化时的约束意识。拿起软件之前先把钱算明白你至少能少走一半弯路。
阅读完成 · 觉得有帮助?
咨询建站