全局坐标设定及使用方法
全局坐标设定及使用方法
系统初始结构
EPD = 10 mm,余量5 mm。
无焦像空间(聚焦模式下,计算弥散斑尺寸,计算波前与球面波间的光程差;无焦模式下,计算每条光线和参考光线的空间角度,计算波前与平面波间的光程差)。
波长 = 0.55 μ\muμm。
设置孔径类型和倾斜/偏心
面3孔径拾取自面2,倾斜X轴-15°,面之后翻转此面,设置2-3的材料为N-BK7。
构建以主光线为基准的局部坐标系
在像面前插入一个坐标间断,修改偏心和倾斜的参数解为主光线。
连续构建多个棱镜结构
多次复制2-4面,在像面前粘贴。
这里注意,一旦修改某个棱镜的参数,后面所有的棱镜的位置都会发生改变,因为所有参数都是以前一个局部坐标为参考的相对坐标。
转换为全局坐标系
这时候Zemax自动添加了很多坐标间断,这里的坐标间断主要为三种。
以面1为全局参考面,将局部参考系返回至面1所在的参考系。
局部参考系先偏心(Y方向平移),再加厚度(Z方向平移)。
局部参考系倾斜X。
三个坐标间断的具体操作如图所示,由红色大圆圈所示的黑色参考面变换为红色小圆圈所示的橙色参考面。
改变单个棱镜的参 ...
激光扫描系统优化设计
激光扫描系统优化设计
设计目标
扫描角度:10°
入瞳直径50 mm
F/# = 3
设置系统孔径
设置波长
镜头数据
大致输入一些厚度数据。
输入材料数据,并用F数解控制双胶合透镜后表面曲率。
选中第二个面,作为反射面
设置评价函数
将双胶合透镜的前两个表面曲率设为变量,厚度设为变量,后焦距设为变量,并设置评价函数限制。
执行优化,更新结构。
调整反射面倾角并优化
设置多重结构并优化
利用PRAM参数控制倾斜面的第三个参数,即倾斜X,实现不用的镜面倾角结构。
设置三维布局图配置
进行优化,查看弥散斑大小。
更改镜头材料参数(材料求解类型设置为替代),进行锤形优化。
振镜和转镜更换
设置坐标间断的厚度。
将镜面设置厚度为这里的20,可将旋转轴从镜面前表面调整至后表面。
Zemax 坐标间断
序列成像坐标断点
坐标断点
坐标断点有七个自由度:
X, Y方向的偏心
X, Y, Z方向的倾斜
厚度(Z方向的偏心)
倾斜/偏心顺序
设置坐标断点
文件→Samples→Sequential→Objectives
选择库克三面镜
目标是想要让第三面透镜偏心或倾斜
操作步骤:
将2D布局图换成3D布局图,因为偏心和倾斜需要在X, Y, Z三个方向上体现。
取消所有的变量(优化→自动优化→移除所有变量)。
在第三面透镜的两个表面前后,各插入一个坐标断点面。
设置这两个表面的类型为坐标间断。
通过修改后面的偏心和倾斜参数实现第三面透镜的偏心和倾斜。
注意事项:
添加坐标间断,本质是添加一个局部坐标轴。在该间断后,以这个局部坐标轴为基准点进行参数设定。
之所以在第三面透镜后再添加一个坐标间断,是为了将局部坐标轴恢复为整个系统的原光轴。
局部坐标轴上的操作,遵循先偏心,后倾斜,因此第二个坐标间断处的操作先在倾斜的坐标轴上进行偏心,而后倾斜回来,就无法让坐标轴恢复到原系统的光轴上。此时需要将顺序参数设置为1,让元件先倾斜,后偏心。
镜头数据
偏心情况下第二个坐标断点直接拾取前一个 ...
Zemax 激光扩束系统优化设计
激光扩束系统优化设计
设置系统入瞳
入瞳5 mm,无焦像空间,净口径余量1 mm。
设置视场
扩束镜只有沿轴方向的一个视场,所以用默认轴上视场无需改动。
设置波长
选用HeNe激光器的波长0.6328 μm\mu mμm
设置镜头数据
查看初始结构波前差
分析→波前图→波前图
设置→显示为→伪彩色
设置优化变量
设置评价函数
限制镜头总长和边缘光线与光轴的距离。
TTHI:面一到面二的总厚度,包括该两个面的厚度。
OPLT:操作数小于指定的值
REAY:指定光线追迹到指定面处的Y坐标(Hx、Hy代表归一化视场坐标,视场角度。Px、Py代表归一化光瞳坐标,光瞳位置)
将REAY的目标值设定为入瞳五倍的一半,即12.5,然后优化。
查看结果是否满足需求
将镜片2前表面设定为无限并取消变量设定,再次优化,查看PTV值为0.08个波长,符合要求。
查看面数据
分析→报告→表面数据报告
设置→表面→2 镜片1
查询镜头库找到现成透镜产品进行替换
输入得到的面数据,给定范围进行查找。
插入透镜重新优化
将厚度复制到插入透镜的后表面,删除镜片1,重新优化。
同样的道理更换第 ...
Zemax 热分析
Zemax 光学系统热效应分析
Zemax 热分析
光学系统结构会随环境温度变化而变化
光学材料折射率
空气折射率
光学材料热胀冷缩
机械结构热胀冷缩
环境压强变化
材料折射率变化
设置镜头数据
设置 FdC 波长和环境参数
设置热分析多重结构
多重结构编辑器给出了四个结构,第一个是标准环境下(20 ℃ & 1 atm)的情况。
对于机械结构,第三个面的厚度由外部机械结构决定,所以在镜头数据编辑器第三个面最后的TCE选框中输入机械结构的TCE值(Thermal Coefficient of Expansion,23.6)。
打开点列图,利用ctrl + A切换不同温度下点列图,观察变化。
注意需要在多重结构编辑器中设置曲率变量,同时也要将后焦距设置为变量,最后再进行优化。
优化透镜材料时,将玻璃设置为替代。同时考虑到镜片的TCE差值需要被限制在一定范围内避免透镜开裂,需要在MFE中添加几个操作数用以限制,之后再进行锤形优化。
分析–>光线追迹–>结构矩阵点列图
Zemax 多重结构
变焦镜头优化设计
Zemax 多重结构
多重结构系统类型
变焦系统
消热差系统
多光路系统
扫描系统
可换组件系统
变焦系统设计
三个变焦位置,有效焦距75,100,125 mm
入瞳直径25 mm
3组,使用BK7/F2组合
最小中心、边缘厚度2 mm
最大中心厚度10 mm
近轴像高17 mm
F,d,C光
设置镜头数据
设置视场
多重结构编辑器
用THIC操作数控制镜片的间距,得到多重变焦结构。
注意这里所有结构的参数都需要ctrl + z设置为变量
评价函数编辑器
在优化向导中设置边界厚度限制。
多重结构不能用最后一个面的曲率的F解控制F数,因为多重结构有多个F数,这时应该使用EFFL操作数。
添加CONF和EFFL操作数。
在镜头数据中设置变量
三维布局图设置
优化
系统左对齐:设置系统孔径里的全局坐标参考面。
入射平行光线:在物面后加一个面,调整距离,属性–>绘图,勾选不显示此表面。
如果打开的是2D Layout,可以ctrl + A在不同结构下进行切换。
添加网页背景音乐
添加 Aplayer 背景音乐
配置_config.butterfly.yml
打开根目录 下 的_config.butterfly.yml,查找关键字aplayer,修改两个栏目下的配置信息。
123456789101112131415161718192021222324# 背景音乐# Inject the css and script (aplayer/meting)aplayerInject: enable: true per_page: true # Inject# Insert the code to head (before '</head>' tag) and the bottom (before '</body>' tag)# 插入代码到头部 </head> 之前 和 底部 </body> 之前inject: head: - <link rel="stylesheet" href="/css/font.css"& ...
Docker 随记
docker 学习
一个物理机可以通过VMware虚拟化安装多个操作系统
每个操作系统可以运行单独的app,一台物理机可以部署多个app
每个app独立运行在一个VM里
12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364# 添加仓库,更新阿里云的源# 基础仓库wget -O /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-7.repo额外仓库wget -O /etc/yum.repos.d/epel.repo http://mirrors.aliyun.com/repo/epel-7.repo# 清理yum缓存yum clean all# 将软件包信息提前在本地索引缓存,生成新缓存yum makecache# 清空现有规则iptables -Fiptables -Xiptables -Z# 查看 ...
将 Git Page 网站域名更换为定制域名
定制域名
首先要购买一个域名用于DNS解析,我这里是在阿里云上购买的域名。
输入自己心仪的域名和后缀,查询该域名是否被注册。
购买好域名后,进入阿里云控制台,点击左上角下拉菜单,选择云解析 DNS --> 域名解析。
如下所示设置三个记录。
回到 Git Page 设置页面。
DNS 解析成功,可以通过定制域名访问播客主页!
注意在\source下的CNAME文件里写入域名,否则每次线上部署都需要重新设置域名!
修改 Hexo + Butterfly 主题博客字体
改变博客字体
新建自定义css
在theme\butterfly\source\css中新建一个font.css,在里面写上如下代码。
12345678910111213141516@font-face { font-family: 'jinkaiFont'; font-display: swap; src: url(../fonts/jinkai.ttf) format("truetype"); }/*指针样式*/body { cursor: url(https://cdn.jsdelivr.net/gh/sviptzk/HexoStaticFile@latest/Hexo/img/default.cur), default;}/*链接小手样式*/img { cursor: url(https://cdn.jsdelivr.net/gh/sviptzk/HexoStaticFile@latest/Hexo/img/pointer.cur), de ...