Ansys Zemax | 确保自由曲面设计的可制造性

news2024/11/18 23:36:47

本文专门介绍使用单点金刚石车床加工自由曲面的主要可制造性参数,解释了可制造性参数如何与仪器参数相关联,并展示了如何在 OpticStudio 中检查和控制这些可制造性参数。此外,还解释了如何处理其考察区域外的自由曲面的行为。例如,使用塑料自由曲面透镜(Alvarez透镜元件)等。

表面参数控制

镜头加工中需要进行控制的表面参数将取决于加工方法和设备。加工塑料光学元件最流行和最广泛使用的方法之一是使用 三轴金刚石车床(图 1)进行直接切割,或者更常见的是利用切割模具来加工透镜。

图1. 三轴金刚石切割机(左) 金刚石切割刀具(右)

倾斜角度

让我们看一下仪器的局限性(图 2)。刀具的侧面倾角限制了沿任何径向横截面的最大可能斜切角。由于这样的径向横截面与子午面重合,因此相应的斜率在 OpticStudio 中称为“子午斜率”。相对而言,旋转对称表面子午斜率对于自由曲面而言,沿不同的径向截面具有不同的分布。

另一个参数是 “弧矢斜率” 角度。当我们在三轴金刚石车床上加工自由曲面时,刀具在工件的每一圈都沿 Z 轴来回移动,以加工非旋转对称形状的透镜。在这种情况下,刀具的后角限制了表面沿镜头上每个圆圈变化的速度,这称为弧矢斜率。更准确地说,刀具在表面上产生螺旋轨迹,但螺旋的步长非常小,在大多数情况下,可以将刀具轨迹视为一系列圆圈。对于旋转对称镜片,弧矢斜率刚好为零。

图 2. 子午和弧矢斜率,黄线表示沿哪个方向测量斜率

有时,从加工的角度来看,将工件放置在平台的旋转轴之外而不是沿轴放置是合理的,这样刀具在工件上的轨迹看起来几乎是直线。在这种情况下,我们应该控制所谓的 “X斜率” 和 “Y斜率”(图3)。

图3. X 和 Y 斜率,黄线表示沿哪个方向测量斜率

让我们看看如何在 Zemax OpticStudio 中控制这些参数。例如,我们采用一个平面对称的自由曲面镜头,即所谓的 Alvarez 透镜。进入 OpticStudio 分析 -> 表面 -> 表面斜率,可以检查整个表面的斜率分布。此分析功能可以将表面的子午、弧矢、X 和 Y 斜率显示为 2D 颜色、等高线图或 3D 曲面图。

图 4. 示例 Alvarez 透镜第一表面的子午和弧矢斜率

图5. 示例 Alvarez 透镜第一表面的 X 和 Y 斜率

假设我们有以下来自制造商的刀具图纸(图 6)。对于我们在此基础上的光学元件设计,重要的是要了解刀具后角和侧面角。

图6. 刀具图纸

间隙角 = 7 ± 0.5 度。

侧面角可以计算为:

侧面角 = (90 – Included_angle/2) = 65 ± 0.5 度。

在光学设计过程中,我们应该相应地限制表面的斜率,这样才可以使用提供的刀具来加工镜头。

在轴向切削的情况下,表面的最大子午倾斜角必须小于刀具后刀面角,例如小于 64.5 度(我们在这里考虑± 0.5 度公差)。最大弧矢倾斜角必须小于刀具间隙角,例如小于 6.5 度。

在离轴切削的情况下,表面的最大 X 倾斜角必须小于刀具侧面角,例如小于 64.5 度,最大 Y 斜角必须小于刀具间隙角,例如小于 6.5 度。

OpticStudio 具有 DSLP 操作数,可以添加在评价函数编辑器中,以便在优化期间控制表面的倾斜角度。DSLP 操作数具有各种参数和不同的输出,您可以在 OpticStudio 用户手册中找到更多信息。下图(图 7)显示了如何获得子午、弧矢、X 和 Y 斜率的最大值。

图7. 使用 DSLP 操作数获取表面斜率的最大值

斜率计算为一个点的梯度,或者说它是通过找到矢高变化与(任意)两个不同点之间坐标变化的比率来计算的。如果我们想以度为单位获得相应的倾斜角,我们应该计算斜率的反正切值。

对于我们的 Alvarez 透镜的第一个表面我们有:

最大子午斜率 = 12.539 度 < 刀侧面角

最大弧矢斜率 = 6.056 度 < 刀具后角

最大 X 斜率 = 11.229 度 < 刀侧面角

最大 Y 斜率 = 8.468 度 > 刀具后角

正如我们所看到的,该表面可以在轴向模式下由提供的刀具加工,但不能在离轴模式下加工,因为 Y 斜率超过了刀具后角。

请注意采样率的选择。为了优化速度,您可能希望在 DSLP 操作数的评价函数中使用较小的采样,但在这种情况下,它可能会得到小于实际斜率的值。使用较小的采样进行优化以提高优化速度是可以的,但我们建议不时(尤其是在最后的优化阶段)检查具有足够高采样时的斜率情况。

同样在 OpticStudio 中,我们可以使用 SSLP 操作数(图8)在表面上的精确坐标处获得子午、弧矢、X 和 Y 斜率的值,以控制表面精确点的斜率。

图8. 使用 SSLP 操作数在精确的表面点获得斜率

局部半径

如果我们仔细观察刀具的尖端,我们会发现它实际上不是一个点,它的刻面呈圆形,其特征可由尖端半径表示。而在另一个方向(参见图 9 中的横截面 A-A),刀尖特征可由切削边缘半径表示。

图9. 近距离观察刀头

与倾斜角类似,表面的局部半径必须大于刀具的相应半径,否则表面将被过度切割和损坏。

在轴向切削的情况下,表面的最大子午局部半径必须大于刀具尖端半径,最大弧矢局部半径必须大于刀具切削边缘半径。

在离轴切削的情况下,表面的最大 X 局部半径必须大于刀具尖端半径,最大 Y 局部半径必须大于切削边缘半径。

如果进入 OpticStudio 分析 -> 表面 -> 曲率,我们可以检查整个表面的曲率分布。此图将曲面的子午、弧矢、x 和 y 曲率显示为 2D 彩色、等高线图或 3D 曲面图(请参阅 OpticStudio 用户手册了解更多详情)。局部半径和曲率之间的关系很简单:

曲率半径 = 1 / 曲率

通常,刀具的尖端半径和切削边缘半径明显小于光学表面的局部半径,因此在大多数情况下,我们不必在优化过程中控制它。但在某些复杂形状表面的特殊情况下可能需要它。在优化的最后阶段检查自由曲面的局部曲率半径是一种很好的做法,可以确保所选的刀头没有问题。

图10. Alvarez 透镜第一表面的子午和弧矢曲率

以下是根据三轴金刚石车床上的加工方法需要控制的表面参数汇总表:

考察孔径外的自由曲面形状

从光学设计的角度来看,最好不要刻意限制考察孔径之外的自由曲面形状,因为额外的限制会降低优化速度,产生额外的局部最小值,并增加无法将设计收敛至最佳系统性能的风险。

如果我们在考察孔径之外查看我们的 Alvarez 镜头(图 12),我们可以看到表面形状变化过于剧烈且绝对无法加工。

图12. Alvarez 透镜超出其考察区域时的表面形状

为了将镜头放置在镜筒上,我们应该在 Alvarez 镜头上添加一个法兰。由于我们的 Alvarez 透镜超出考察孔径之外的形状过于激进,我们应该用一些平滑的过渡区域来代替它,该区域将连接通光的考察区域和法兰。在 DynaOptics 的应用案例中,使用自己的软件 uVo,它可以自动创建这样的过渡区域。我们只需指定法兰 Z 位置以及表面和法兰之间的径向间距,uVo 将自动创建一个平滑的过渡区域(图 13)。

图 13. 由 uVo 软件自动创建的过渡区域

此外,uVo 显示了所得表面的弧矢和子午倾斜角,因此我们可以直接检查该表面是否可以使用提供的刀头来加工(图14)。

图 14. uVo 软件界面,可创建平滑过渡区域

结论

了解加工方法和相应的仪器限制有助于在光学设计团队和制造团队之间建立有效的沟通。在光学设计阶段考虑加工方法的限制有助于节省时间和金钱。DynaOptics uVo 软件可以显著减少设计工作表面和法兰之间平滑过渡区域所需的时间,尤其是对于复杂的自由曲面。

参考文献

1.https://www.contour-diamonds.com/

2.https://en.wikipedia.org/wiki/Slope

3.https://support.zemax.com/hc/en-us/articles/1500005491161-Optical-Zoom-based-on-Alvarez-Freeform-Elements

4.Fabrication of Hexagonal Microlens Arrays on Single-Crystal Silicon Using the Tool-ServoDriven Segment Turning Methodby Mao Mukaida and Jiwang Yan https://www.mdpi.com/2072-666X/8/11/323

5.Technology of Manufacture of the Negative Matrices for Linear Fresnel Lenses, S. Grubyy, V.V. Lapshin, E.M. Zakharevich

https://www.researchgate.net/publication/301939103_Technology_of_Manufacture_of_the_Negative_Matrices_for_Linear_Fresnel_Lenses/download

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/799664.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

MYSQL练习四

练习四 某公司的mis数据库中有部⻔表&#xff08;dept&#xff09;和员工表&#xff08;employee&#xff09;表结构及其数据如下&#xff1a; 表结构 dept表结构 employee表结构 表数据 dept表数据 employee表数据 完成以下SQL编写&#xff1a; 编写脚本&#xff0c;创建…

Eureka注册中心 与 OpenFeign调用接口

需求 一个应用通过接口&#xff0c;调用另一个应用的接口。使用OpenFeign来实现接口调用。 说明 通过OpenFeign&#xff08;本文接下来简称Feign&#xff09;调用远程接口&#xff0c;需要Eureka注册中心的支持。 OpenFeign调用接口的逻辑如下&#xff1a; 提供接口的应用…

617. 合并二叉树

题目 题解一&#xff1a;递归 /*** 递归* param root1* param root2* return*/public TreeNode mergeTrees(TreeNode root1, TreeNode root2) {//结束条件if (root1 null) {return root2;} //结束条件if (root2 null) {return root1;}//两节点数值相加TreeNode me…

C++模拟实现stack

1.前言 stack 遵循的原则是先进后出&#xff0c;那到底是用list 还是 vector呢&#xff1f;其实都可以&#xff0c;但是队列queue就不一样了&#xff0c;他甚至不可以支付vector&#xff0c;因为效率太低了。 但是库里面用了一种新的类型&#xff0c;deque&#xff0c;它的实现…

【数据结构】实验五:栈

实验五 栈 一、实验目的与要求 1&#xff09;熟悉栈的类型定义和基本操作&#xff1b; 2&#xff09;灵活应用栈解决具体应用问题。 二、实验内容 1、判断回文数&#xff0c;回文是指正读反读均相同的字符序列&#xff0c;如“1221”和“12321”均是回文&#xff0c;但“…

揭秘全球最危险的11大网络间谍组织

根据安全研究人员的说法&#xff0c;下述这些都是全球最臭名昭著的&#xff0c;并且由民族国家资助的组织。 几十年前&#xff0c;当黑客入侵刚刚出现的时候&#xff0c;其大多是网络“发烧友”的“杰作”&#xff0c;他们痴迷于学习有关计算机和网络的一切知识。现如今&#x…

2023年Q2京东黑电行业热门类目数据分析报告(京东大数据)

随着家电行业的日趋成熟&#xff0c;黑电市场也愈加繁荣&#xff0c;黑色家电包括电视、音响、家庭影院、摄像机、游戏机等等带给人们娱乐的电器。 目前来看电视机在黑电行业的占有份额较大&#xff0c;而前面我们已经分析过电视市场&#xff0c;接下来我们继续一起来分析除电视…

实现PC端微信扫码native支付功能

目录 实现PC端微信扫码 简介 实现步骤 1. 获取商户号 2. 生成支付二维码 3. 监听支付结果 4. 发起支付请求 5. 处理支付回调 示例代码 结论 Native支付 Native支付的工作原理 Native支付的优势 Native支付的应用和市场地位 开通使用微信 native 支付流程 步骤一…

LaTeX Error: File `tabu.sty‘ not found.

虽然Miktex可以自动下载和安装没有的库&#xff0c;但有些时候也有可能会直接报错&#xff1a; LaTeX Error: File tabu.sty not found. 解决方法就是打开控制台。然后手动下载&#xff1a;

Sharding-JDBC分布式事务详解与实战

&#x1f680; ShardingSphere &#x1f680; &#x1f332; 算法刷题专栏 | 面试必备算法 | 面试高频算法 &#x1f340; &#x1f332; 越难的东西,越要努力坚持&#xff0c;因为它具有很高的价值&#xff0c;算法就是这样✨ &#x1f332; 作者简介&#xff1a;硕风和炜&…

最强,Python接口自动化测试-自动化用例编写(超细整理)

目录&#xff1a;导读 前言一、Python编程入门到精通二、接口自动化项目实战三、Web自动化项目实战四、App自动化项目实战五、一线大厂简历六、测试开发DevOps体系七、常用自动化测试工具八、JMeter性能测试九、总结&#xff08;尾部小惊喜&#xff09; 前言 我们在百度搜索天…

从 7 分钟到 10 秒,Mybatis 批处理太强了!

这篇文章会一步一步带你从一个新手的角度慢慢揭开批处理的神秘面纱&#xff0c;对于初次写Mybatis批处理的同学可能会有很大的帮助&#xff0c;建议收藏点赞~ 处理批处理的方式有很多种&#xff0c;这里不分析各种方式的优劣&#xff0c;只是概述 ExecutorType.BATCH 这种的用…

打印插件 hiprint 使用、回单打印PDF保存本地、将列表数据打印成pdf文件保存到本地

文章底部有个人公众号&#xff1a;热爱技术的小郑。主要分享开发知识、有兴趣的可以关注一手。 前言 最近做了一个回单打印的功能、核心功能是、渲染出来的回单列表&#xff0c;用户可以浏览回单数据。可以同时勾选多个要打印的回单数据。将回单打印成pdf文件、同时下载保存到…

多线程进阶篇----常用方法

文章目录 线程状态线程方法线程礼让线程优先级守护线程 线程同步生产者消费者问题解决方式一&#xff1a;管程法方法二&#xff1a;标志位法 死锁总结 线程状态 线程有5种状态&#xff0c;新生态、就绪态、阻塞态、运行态、死亡态 在该图上&#xff0c;就绪状态和运行状态是一…

webpack联邦模块介绍及在dumi中使用问题整理

提示&#xff1a;文章写完后&#xff0c;目录可以自动生成&#xff0c;如何生成可参考右边的帮助文档 文章目录 前言一、ModuleFederationPlugin参数含义&#xff1f;二、如何在dumi中使用及问题整理1. 如何在dumi中使用(这个配置是好使的)2.相关问题整理2.1 问题12.2 问题2 总…

Android 之 动画合集之属性动画 -- 初见

本节引言&#xff1a; 本节给带来的是Android动画中的第三种动画——属性动画(Property Animation)&#xff0c; 记得在上一节Android 之 动画合集之补间动画为Fragment 设置过渡动画的时候&#xff0c;说过&#xff0c;App包和V4包下的Fragment调用setCustomAnimations()对应…

白皮书精彩案例分享 | 数字孪生:让治水用水有了“智慧大脑”

山有百藏而不言&#xff0c;水润万物而不语。中国属于大河文明&#xff0c;农业历来在经济中占主导地位&#xff0c;其中水利灌溉是保证农业生产和提高农业产量的重要因素。 然而&#xff0c;由于过去水利工程建设缺乏预见性&#xff0c;传统水利工程在作出贡献的同时&#xf…

JavaScript 简单实现观察者模式和发布订阅模式

JavaScript 简单实现观察者模式和发布订阅模式 1. 观察者模式1.1 如何理解1.2 代码实现 2. 发布订阅模式2.1 如何理解2.2 代码实现 1. 观察者模式 1.1 如何理解 概念&#xff1a;观察者模式定义对象间的一种一对多的依赖关系&#xff0c;当一个对象的状态发生改变时&#xff…

重生之我要学C++第三天(类和对象)

我重生了&#xff0c;这篇文章就深入的探讨C中的类和对象。 一.类的引入和定义 类的引入&#xff1a;在C语言中&#xff0c;结构体内部只能定义变量或者结构体&#xff0c;C中对结构体进行了升级->类&#xff0c;C的类中既可以定义变量&#xff0c;又可以定义函数。类中的变…

TSINGSEE青犀视频安防监控视频平台EasyCVR新增密码复杂度提示

智能视频监控平台TSINGSEE青犀视频EasyCVR可拓展性强、视频能力灵活、部署轻快&#xff0c;可支持的主流标准协议有国标GB28181、RTSP/Onvif、RTMP等&#xff0c;以及支持厂家私有协议与SDK接入&#xff0c;包括海康Ehome、海大宇等设备的SDK等&#xff0c;能对外分发RTSP、RTM…