【Zemax光学设计实训三】---激光缩束镜的设计优化

前言与目录

技术设计要求:

设计一个激光扩束镜,使用的波长为1064nm,输入光束直径为10mm,输出光束的直径为2mm,且输入光束和输出光束平行(即平行光入射,平行光出射)。要求只使用两片镜片(材料均为BK7),设计必须是伽利略式的(没有内部焦点),在镜片之间的间隔必须不超过50mm,只许使用1片非球面。


目录

一、参数分析

二、Zemax参数设置

三、初始结构设计

四、光学系统优化

五、像质分析:


一、参数分析

  1. 波长(𝜆λ):1064 nm
  2. 输入光束直径(𝐷𝑖𝑛):10 mm
  3. 输出光束直径(𝐷𝑜𝑢𝑡):2 mm
  4. 镜片材料:BK7
  5. 镜片之间的间隔:不超过200 mm
  6. 非球面镜片数量:1

伽利略式扩束镜由两个透镜组成,第一个透镜(L1)是一个会聚透镜,第二个透镜(L2)是一个发散透镜。输入光束通过L1后会聚,然后通过L2发散,形成平行输出光束。

扩束镜的放大率𝑀M由输出光束直径与输入光束直径的比值给出:

𝑀=𝐷𝑜𝑢𝑡/𝐷𝑖𝑛=2 mm/10 mm=0.2;该设计为一个相当于0.2倍的扩束镜

只能使用一片非球面透镜,我们可以选择L1作为非球面透镜。非球面透镜可以校正球面像差;

二、Zemax参数设置

1、设置入瞳直径为10mm;由于入射光斑为10mm;设置波长为1.064um;由于是平行光入射,直接视场设置成一个就行,不需要额外设置;由于是平行光输出(可以将无焦像空间勾选);

图1

三、初始结构设计

由于这个是一个伽利略式的扩束镜形式,所以可以直接设置两个平板进行优化,为方便,我随意设置了一个初始结构,如下图:

图2

透镜编辑窗初设参数(根据设计要求,需要先初步设定第一面和最后一面的曲率半径,形成初步结构。),由于项目要求,两曲面的曲率半径可优化,厚度可优化,但是系统长度需要控制50mm,后续在优化操作数里面进行控制;

初始结构的光线如图:

图3

四、光学系统优化

1、由于由两片透镜组成,那么我们可以将两个透镜的前后曲率半径设置为变量;以及透镜的厚度及空气间隔也是可变得优化量,但是为了方便,还是一步一步进行优化;

设置变量

2、打开评价函数进行优化

在开始优化之前,我们需要设置评价函数,首先打开评价函数优化向导,设置成波前优化,类型为RMS;参考质心;并设置空气得边界条件:最小0.5mm,最大50,边缘厚度最小0.1;

评价函数优化向导

之后添加我们自己得优化函数;限制第一个面和最后一个面得总长度小于50mm,并且限制输出得光束大小为2mm;

函数说明:

TTHI------用于计算第一面到最后面的总长度。

OPLT------控制系统的长度范围不超过某个数值(不等式约束)。

REAY------控制出射面边缘光束的高度。

3、开始优化

点击执行优化,可以看到,评价函数从4.403一下就优化到很小了;

优化前参数

优化后,得到下图:

优化后

五、像质分析:

光扇图和光程差图:

波前图:

点列图:

总结:由于本次的光学条件很轻松,简单优化便达到了理想的像质,没有什么难度,所以就用来复习一下zemax的使用流程;在这次优化设计中,未用到非球面,且厚度变量也未使用到,属于非常简单的光学系统了,后续继续更新光学系统的设计和优化


--

本篇文章为个人学习笔记,供学习和复习使用。未经允许不得转载或用于商业用途。

相关推荐
九圣残炎3 分钟前
【从零开始的LeetCode-算法】3227. 字符串元音游戏
java·算法·leetcode
梁小憨憨28 分钟前
变分推断(Variational Inference)
人工智能·算法·机器学习
就爱学编程36 分钟前
重生之我在异世界学编程之C语言:选择结构与循环结构篇
c语言·数据结构·算法
一只大侠42 分钟前
输入一串字符,以“?”结束。统计其中字母个数,数字个数,其它符号个数。:JAVA
java·开发语言·算法
winstongit1 小时前
捷联惯导原理和算法预备知识
算法·机器人
£suPerpanda2 小时前
P3916 图的遍历(Tarjan缩点和反向建边)
数据结构·c++·算法·深度优先·图论
码农老张Zy2 小时前
【PHP小课堂】学习PHP中的变量处理相关操作
android·开发语言·学习·php
IT古董2 小时前
【机器学习】机器学习的基本分类-监督学习-决策树-C4.5 算法
人工智能·学习·算法·决策树·机器学习·分类
IT古董2 小时前
【机器学习】机器学习的基本分类-监督学习-决策树-CART(Classification and Regression Tree)
学习·决策树·机器学习·分类
m0_694938012 小时前
Leetcode打卡:棋盘上有效移动组合的数目
算法·leetcode·职场和发展