ZEMAX入门篇,手机镜头设计实操(入门)
主要内容:当得到一个镜头的参数时,如何使用zemax进行设计。无论是书籍还是老师讲解,设计的开始,普遍的做法是查找专利和镜头库,找到规格类似的镜头,然后对镜头进行修改达到参数标准。
这里提供另外一个设计思路,从玻璃平板开始,利用zemax中的全局优化来寻找初始结构。适合镜片数不多,结构简单的镜头。
本次设计不涉及加工方面的考虑!
随便给出一个设计要求,如下:
F数:2.8
视场角:70°
光学畸变畸变≤3%
相对照度≥33%
光学总长≤4mm
镜片≤3p
CRA≤32°
半像高:2.29mm(由像高和视场角算出焦距为3.27mm,由焦距和F数算出入瞳直径为1.168mm)
像素点尺寸:1.4um(算出截止频率为357lp/mm)
波长:为简单化直接取可见光,各权重为1。正常设计应考虑芯片的频率响应曲线来设置波长权重。
<hr/>第一步:输入各系统参数
第二步:添加4片平板并设置为变量(其中一片平板为模拟滤光片和保护玻璃的厚度)
前三片平板材料随意,全局优化时会替换。第四个平板玻璃为滤光片和保护玻璃的材质,一般为K9。
手机镜头的光阑放在最前方。
前三片平板的求解类型为替代,分类中为网上找的材料库,里面为常用的光学树脂。
第三步:添加评价函数
添加操作数,对焦距(EFFL)、畸变(DIMX)、总长(TOTR)、CRA(RAID)进行限制,并且限制光阑位置(MNEA)和后焦。
添加默认评价函数控制像质,刚开始可以使用点列图且环臂选最低,优化速度快。控制了总长后,单片玻璃的最大厚度可以不用控制。
第四步:进行全局优化
打开全局优化开始优化,优化十几二十分钟后得到比较好的结构。
以此作为初始结构即可。
注:在所有优化阶段,如若发现结构跑偏,可以手动输入结构参数(如某厚度或者半径过大或小),把跑偏的数据变量取消,优化一轮后,再把数据变为变量。
第五步:变为非球面进行优化
把三片镜片的圆锥系数设为变量。
使用操作数控制圆锥系数的范围为±100。普通优化和锤型优化交替使用。
优化不动后,把面类型设置为偶次非球面
从4阶到12阶设置为变量(阶数取决于加工能力,一开始建议每次只优化一个镜片的非球面系数,不然容易跑崩。)普通优化和锤型优化交替使用。
优化不动后,睡觉前,把全部设为变量,开启锤型优化,睡觉。明天起床再看结果。
优化一晚后的结果。
第六步:改评价函数,优化细节。
视场加多,优化更细腻。
默认评价函数从原来的使用点列图,改为使用对比度,或者波前差,哪个好用用哪个。
环臂数也增加,优化更细腻,但速度会变慢。
系统孔径也改为F数,指标要求2.8。
因为指标要求时像高而不是焦距,取消焦距控制,改为控制像高(REAY)。
若发现如上图,像面处光线分开较大不成点,可以使用tray进行控制.
普通优化和锤型优化交替使用。
优化不动时再自动锤型优化几个小时。
最终优化结果:
内视场基本接近衍射极限,外视场稍差,基本满足设计要求,暂不考虑公差。 赞! 想问一下这是哪个版本的zemax 19.4版本 全局优化光线不对焦咋整 不对焦是指在像面处光斑很大吗? 对初步全局优化需要考虑光线对焦问题吗? 不用怎么考虑,不是太离谱就行,只用球面,指标要求高的话,光斑确实不太好。你可以试着加上tray操作数,或者加长优化时间。还是不行的话只能说明在只用球面的情况下,只能这样了。 好的 为什么刚开始用入瞳大小作为孔径,而不直接使用F数孔径,REAY操作数控制呢?这是由什么经验吗?