Ansys Speos | 基于 Workbench 和 Speos 的准直全反射透镜优化设计案例

news2024/11/28 22:56:22

概述

基于Ansys Speos软件,可以准确建立光学系统模型并进行成像效果仿真。在使用Speos进行光学系统设计过程中,当完成初始光学系统建模后,还需要进一步结合仿真结果,调整出满足设计要求的系统参数,如果采用手动调整参数并执行多次仿真的方式,会大大影响设计效率。借助Ansys Workbench的优化功能,通过设置设计目标和约束条件,可以驱动Speos仿真流,自动修改设计参数并执行仿真计算和优化设计,从而准确高效地获得符合设计要求的设计参数。本文以全反射透镜Total Internal Reflection (TIR Lens)为例,介绍利用Workbench直接优化工具驱动Speos自动化仿真从而实现准直全反射透镜优化设计的方法。

Speos透镜设计及仿真

Speos的光学元件设计模块(Optical Part Design,OPD)可以用于设计全反射透镜、菲尼尔透镜和光导管等等,本文案例利用OPD模块实现对TIR Lens的建模。本次透镜设计的主要目标是在照度探测器上的测试区域内得到尽量均匀的光照,所以主要考虑的是RMS值,越小的RMS值表示均匀性越好。TIR Lens的光学参数和光路逻辑如图1中所示,包括内表面半径、外表面半径、透镜厚度和基面位置等等。如果没有可以参考的光学参数,可以先使用Speos软件默认的参数进行建模仿真,仿真要注意设置透镜整体为透明玻璃,外表面为全反射,透镜到照度探测器的距离为1 m。基于软件默认的设计参数,TIR Lens照度仿真结果中的目标区域RMS值为0.74,体现出的照度均匀度较差,需要采用Workbench的直接优化功能对设计参数进行优化,以获得均匀度更好、满足RMS值要求的设计结果。

图1. TIR Lens 设计参数

图2. 初始输入参数、模型和仿真结果

图3. 初始平均照度、照度和RMS值仿真结果

Workbench优化流程构建

Workbench基于相关性分析或实验设计 (DOE) 算法(比如拉丁超立方体抽样、中心复合设计或稀疏网格法)创建设计点列表,DesignXplorer 可驱动 Workbench 调整参数变化,然后存储并分析结果。在优化开始之前,首先需要在Workbench中构建Speos和DesignXplorer两个程序的连接:1、打开Workbench,新建一个项目,将Speos分析系统拖入项目原理图中,右键Geometry,导入几何结构,双击或右键仿真任务选择生成参数,Speos自动启动。2、在Speos中定义要导入Workbench的输入参数:选择TIR Lens 设计中的参数。在DesignXplorer中拖入直接优化,右键优化对目标和约束进行设置,包括运行时间、容差设置、候选数量。

图4.  Workbench构建工作流程

Workbench优化目标与约束设置

在目标定义过程中,如果仅设置RMS值为优化目标,可能会导致光过度扩散,因此可以同时设置平均照度和光通量大于一定的值。设置优化目标:P7-平均照度大于30000 lx,P8-光通量大于400 lm,P9-RMS小于目标值0.4,这里要注意上限或下限设置值过低或过高,会导致计算结果不收敛而无法求得满足要求的设计结果。设置参数约束:影响优化目标的光学参数受到结构尺寸的影响需要约束设计区间。根据设置的运行时间,程序会自动计算步长。运行直接优化,右键单击优化、更新即可启动优化程序。在计算结束时,软件会保留达到预期结果的候选值。优化时可以从Table视图查看Direct optimization任务的优化进度。

图5. 优化界面

图6. 参数定义

优化结果分析

当优化图标从闪电变为√时,表示优化完成。双击打开优化任务,可以在轮廓原理图中打开监控来查看目标的计算过程。从结果中查看优化约束、优化方法和候选点。点击候选点可以查看具体约束数值和目标数值。从图8 优化候选点中可以看出,三个候选点的RMS值均下降至0.35左右,相较于初始的0.74 ,均匀度得到明显提升。为了更加直观地查看优化结果,可以把候选点依次带回Speos进行仿真验证。

图7.优化结果

图8. 优化候选点

将优化后的TIR Lens 结构参数带回到Speos软件中进行仿真,在仿真照度结果中可以看到候选点3的结果中间没有明显暗斑,且平均照度和光通量数值都较高,说明候选点3是本案例中获得的理想结果。

图9. Speos仿真优化结果

总结

本案例介绍了一种全反射透镜的自动优化设计方法:通过Workbench创建整个优化工作流,驱动Speos自动计算多个设计点得出符合优化目标的解。本文所采用的透镜模型是Speos OPD模块中的全反射透镜模型,相关方法同样适用于光导管、全反射面和菲尼尔透镜等Speos中的其他模型。结合Workbench构建工作流提供的优化环境和Speos基于物理的仿真,可以进一步提升设计能力和工作效率。

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

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

相关文章

香农 | 流行潮(bandwagon)

【编者按:面对当前的Chatgpt热潮,该如何看待呢?英语当中有种说法叫 jump on the bandwagon,意为跟风随大流。60多年前,当信息论的发展进入越来越多的领域,一向低调的香农在《流行潮》(The Bandw…

Linux 游戏性能谁的 更优秀X.Org还是Wayland!

导读X.Org 和 Wayland 是目前 Linux 平台上的两大主流显示服务器,那么两者在 Linux 游戏性能上谁更优秀呢?国外科技媒体 Phoronix 在 Ubuntu 22.10 上对其进行了多款游戏的实测。评测在运行 GNOME 43.1 的 Ubuntu 22.10 上进行测试,在安装英伟…

基于QT5.14.2的MQTT通信

一、概述 默认的Qt环境是不能使用MQTT的,但Qt官方提供了基于MQTT的封装,需要通过源码进行编译。 可以在下面的链接中获取到: https://github.com/qt/qtmqtt 在dev分支中可以选择MQTT版本,选择最新的下载到本地。注意一定要选择对…

Video Speed Controller谷歌视频加速插件——16倍速

文章目录前言最简单的版本一、如果是简单的话 可以Microsoft Edge使用二、简单的版本 火狐的话使用Global Speed插件三、由于视频受限以上的方法行不通 还是谷歌好用前言 主要是网课刷的时候 太慢所以找到了刷视频的方法 由于前几个的权限受限制 所以还是选用了谷歌浏览器的 V…

Ambire Wallet 2023 年路线图

在一个充满活力的建设者空间,但在一个努力的熊市中,作为加密技术创新者,我们必须保持适应,同时继续通过做好工作来领导:建立愿景。 已经建设了很多,也还有很多要做的:Ambire 发布了今年的雷达图…

炎症回路和肠道微生物

✦ ✦ ✦ 炎症:就是平时人们所说的“发炎”,是机体对于刺激的一种防御反应。炎症,可以是感染引起的感染性炎症,也可以不是由于感染引起的非感染性炎症。 炎症在在各种症状中起重要作用,如脑雾、焦虑和抑郁、腹胀、各种…

数据工程师需要具备哪些技能?

成为数据工程师需要具备哪些技能?数据工程工作存在于各个行业,在银行业、医疗保健业、大型科技企业、初创企业和其他行业找到工作机会。许多职位描述要求数据工程师、拥有数学或工程学位,但如果有合适的经验学位往往没那么重要。 大数据开发…

linux高级命令之用户组相关操作

用户组相关操作学习目标能够知道创建用户组的命令1. 创建用户组命令说明groupadd创建(添加)用户组创建用户组效果图:2. 创建用户并指定用户组创建用户并指定用户组效果图:3. 修改用户组修改用户组效果图:4. 删除用户组命令说明groupdel删除用户组删除用户组效果图:说明:如果用户…

Git-学习记录

文章目录1. Git-基础1.1 获取 Git 仓库1.2 记录每次更新到仓库1.3 远程仓库的使用2. Git-分支2.1 Git 分支的新建与合并2.2 Git 分支的管理1. Git-基础 1.1 获取 Git 仓库 通常有两种获取 Git 项目仓库的方式: 将尚未进行版本控制的本地目录转换为 Git 仓库&…

一文解决从进程栈内存底层原理到Segmentation fault报错

栈是编程中使用内存最简单的方式。例如&#xff0c;下面的简单代码中的局部变量 n 就是在堆栈中分配内存的。 #include <stdio.h> void main() {int n 0;printf("0x%x\n",&v); } 那么我有几个问题想问问大家&#xff0c;看看大家对于堆栈内存是否真的了…

maven deploy上传本地jar至私服

1.场景 首先目前依赖包的管理大多数是maven&#xff0c;其次当使用到第三方的包的时候&#xff0c;官方的仓库或者aliyun的maven都是没有这个包的。那么&#xff0c;为了方便我们使用 我们需要将本地的这个jar上传到 公司内部的私服去&#xff0c;以便大家使用 2. 上操作 我…

VS Code 用作嵌入式开发编辑器

使用 Keil MDK 进行嵌入式开发时&#xff0c;Keil 的编辑器相对于主流编辑器而言有些不方便&#xff0c;比如缺少暗色主题、缺少智能悬停感知&#xff08;鼠标停在一个宏上&#xff0c;能自动展开最终的宏结果&#xff09;、代码补全不好用等等&#xff0c;所以推荐使用 VS Cod…

【Java技术】基于Http的文件断点续传实现

1.断点续传的介绍 客户端软件断点续传指的是在下载或上传时&#xff0c;将下载或上传任务(一个文件或一个压缩包)人为的划分为几个部分&#xff0c;每一个部分采用一个线程进行上传或下载&#xff0c;如果碰到网络故障&#xff0c;可以从已经上传或下载的部分开始继续上传下载…

电子科技大学操作系统期末复习笔记(二):进程与并发控制

目录 前言 进程管理 进程基本知识 程序的顺序执行 前趋图 程序的并发执行 并发程序 进程的定义和特征 进程的特征和状态 操作系统内核 定义 功能 原语 原子操作的实现 操作系统控制结构 进程控制块PCB 进程组织&#xff08;进程树&#xff09; 进程的创建 …

3DMAX高级弯曲插件使用教程

3dMax高级弯曲插件是对3dmax原生“弯曲&#xff08;Bend&#xff09;”修改器的一个增强&#xff0c;给用户更多控制弯曲修改器的参数设置&#xff0c;它让用户输入宽度&#xff0c;插件脚本将移动中心以获得正确的宽度。 主要特性&#xff1a; - 使用智能捕捉捕捉到自定义网格…

静态库和动态库的制作

一、什么叫做库&#xff1a; 库&#xff1a;二进制的程序&#xff0c;能被操作系统载入内存中执行 二、Linux下的库有两种&#xff1a;静态库和共享库(动态库)&#xff0c;二者的不同点在于代码载入的时刻不同。 A、静态库在程序编译的时候并会被连接到目标代码中&#xff0c;程…

SSM项目-商城后台管理系统

SSM项目-商城后台管理系统开发说明开发环境项目界面演示项目功能具体的技术指标开发过程1、搭建SSM框架1.1、建库建表1.2、新建Maven工程1.3、配置pom.xml1.4、目录结构1.5、jdbc.properties1.6、mybatis-config.xml1.7 两个Spring的配置文件applicationContext_dao.xmlapplica…

数据库(三)

第三章 MySQL库表操作 3.1 SQL语句基础 3.1.1 SQL简介 SQL&#xff1a;结构化查询语言(Structured Query Language)&#xff0c;在关系型数据库上执行数据操作、数据检索以及数据维护的标准语言。使用SQL语句&#xff0c;程序员和数据库管理员可以完成如下的任务。 改变数据…

【图解数据结构与算法】数据结构与算法知识点整理 Data Structures and Algorithms

程序数据结构算法 数据结构是可以存储和组织数据的命名位置。 算法是用于解决特定问题的一组步骤。 数据结构是指&#xff1a;一种数据组织、管理和存储的格式&#xff0c;它可以帮助我们实现对数据高效的访问和修改。 数据结构 数据元素 元素之间的结构。 如果说数据结…

什么人合适学习Python

发了几天的Python基础&#xff0c;也认识了一些朋友&#xff0c;忽然有人问起&#xff0c;说为啥学Python&#xff0c;或者说啥人学习Python&#xff0c;作为一个教龄8年从Python一线讲师到Python教学主管的我和大家分享一下个人的看法&#xff0c;还是提前说一下&#xff0c;个…