Ansys Zemax | 手机镜头设计 - 第 4 部分:用LS-DYNA进行冲击性能分析
该系列文章将讨论智能手机镜头模组设计的挑战,从概念和设计到制造和结构变形分析。本文是四部分系列中的第四部分,它涵盖了相机镜头的显式动态模拟,以及对光学性能的影响。使用Ansys Mechanical和LS-DYNA对相机在地板上的一系列冲击和弹跳过程进行显式动力学模拟,其中 LS - DYNA 用于解决跌落物理问题,然后通过STAR工具将其导入Ansys Zemax optic studio Enterprise,进而研究对光学性能产生的影响。
-
Ansys Zemax | 手机镜头设计 - 第 1 部分:光学设计
https://mp.weixin.qq.com/s?__biz=MzIxNzE5MDU4Mg==&mid=2650053772&idx=1&sn=ad09702fc3eaa58fea37843a4da28372&chksm=8ffda555b88a2c435b05a01dad0b8006e8c421d11de7e515c13f895c883f93fb34b195241f01&token=1134198106&lang=zh_CN#rd -
Ansys Zemax | 手机镜头设计 - 第 2 部分:使用 OpticsBuilder 实现光机械封装
https://mp.weixin.qq.com/s?__biz=MzIxNzE5MDU4Mg==&mid=2650053838&idx=1&sn=00ea3ad15a8e69ad4de38bb2dbf3e8fb&chksm=8ffda517b88a2c01532fcae47aff95cb26937e9d22e77f872bbb02134808989d2a189148dbfe&token=1134198106&lang=zh_CN#rd -
Ansys Zemax | 手机镜头设计 - 第 3 部分:使用 STAR 模块和 ZOS-API 进行 STOP 分析
https://mp.weixin.qq.com/s?__biz=MzIxNzE5MDU4Mg==&mid=2650054345&idx=1&sn=046c9f8b676af5b47ac424b168c38b3f&chksm=8ffda710b88a2e069b2d651dfde305caac76f5f80c53252ed638a58858a28337709dc18a821b&token=1134198106&lang=zh_CN#rd
附件下载
联系工作人员获取附件
介绍
Ansys LS-DYNA (LS-DYNA)与本系列文章前面部分的Ansys工具(Ansys Zemax OpticStudio、Speos、Mechanical 和 Workbench)一起,可以将仿真工作流扩展为显式动力学,LS-DYNA 广泛用于各种分析,它的核心能力之一是显式动态。Ansys LS-DYNA适用于分析涉及接触、大变形、非线性材料、瞬态响应和/或需要显式解决方案的问题。
LS - DYNA Workbench 系统(WB LS - DYNA)允许用户使用 LS - DYNA 求解器对模型进行显式动力学分析。虽然它允许在一个环境中进行预处理、求解和后处理,但该工作流需要结合使用 WB LS - DYNA 和 LS Prep - Post 进行高级后处理。
与本系列文章的第3部分“Ansys Zemax | 手机镜头设计 - 第 3 部分:使用 STAR 模块和 ZOS-API 进行 STOP 分析”类似,本部分也使用 Ansys Mechanical 生成 FEA 数据集。然而,第3部分的重点是使用 STAR 工具和 ZOS API 自动导入有限元分析数据,而第4部分的重点是生成显式动力学结果,并在 Ansys Zemax 中查看光学性能。这两个工作流程都需要 Ansys Zemax opticstudio Enterprise 中的 STAR 工具来处理 FEA 变形。
使用显式动力学进行有限元分析
手机摄像头的光机系统(光机设计见第 2 部分)被加载到 Ansys Workbench 中,并导入到 LS - DYNA 分析系统中。为了使碰撞模拟更真实,摄像头系统被放置在一个更大的机身内,该机身具有常见智能手机设备的尺寸和形状。

模拟包含摄像头系统掉落在平坦表面上的瞬态序列。平坦表面(可能是地板)在上面的图像中被标记为红色,并被设置为固定支撑。固定支撑是一种边界条件,可防止选定的几何图形或网格实体移动或变形。
假设物体从静止状态(初速度= 0)落下,仅因重力下落,那么撞击时的速度可以用以下公式计算:

其中,v=冲击速度,g =重力加速度(9.8 m/s²),h = 摄像机系统落下的高度。假设带有摄像系统的手机从1.5米的高度(大约相当于一个普通人的手的高度)掉落,撞击速度为

这导致整个手机产生以下初始变形:

以及透镜本身的以下变形:

-
请注意,出于演示目的,视觉变形已按比例放大。
为了分析此跌落测试对光学性能的影响,需要单个透镜的变形数据集。为了提取数据集,为每个透镜面创建一个命名选择。在 WB - LSDYNA 中求解模拟后,在 LS - PrePost 中读取输入文件和结果。LS - PrePost 是 LS - DYNA 的专用前后处理工具。在 LS - PrePost 中,运行一个脚本来将特定面(在命名选择中定义)的变形导出为正确的格式,以便可以通过 STAR 工具将它们导入到 Ansys Zemax OpticStudio 中。
模拟涉及两个步骤,并且从两个步骤中都导出变形数据集:
-
冲击分析:这是模拟时间的 0 - 0.1ms,即冲击发生时。
-
冲击后分析:这是冲击状态后 1 秒,此时允许振动衰减以避免变形中出现任何不必要的噪声。
将 FEA 数据加载到 Ansys Zemax OpticStudio 中
在 Ansys Mechanical 中生成 FEA 数据集后,现在可以将它们加载到 OpticStudio 中。如本系列文章第 1 部分所述,名义上的手机摄像头系统已在 OpticStudio 中设计并优化了性能。透镜系统本身的设计基于一项专利,包含五个主要的非球面透镜:

为了分析和比较手机摄像头在三种主要状态(冲击、冲击后和名义)下的性能,通过 OpticStudio 主窗口顶部 STAR 选项卡中的多物理场数据加载器导入 FEA 数据集。

对于代表透镜或光学组件物理表面的每个表面,分配一个 “Surface_deformation” 数据集。由于自从从 OpticStudio 导出名义几何形状以来坐标系没有改变,因此为特定表面对齐数据集并设置为全局坐标系。如果不是这种情况,可以将坐标系更改为局部坐标系,或者可以应用用户定义的变换。在将数据集分配给表面后,可以通过单击 “OK(Fit Multiphysics Data)” 加载和拟合数据集。
不同状态下的光学性能分析
加载和拟合多物理场数据后,现在可以分析不同状态的性能,更重要的是进行比较。由于这是一个手机摄像头系统,在性能分析过程中有一些分析工具可供使用。在这种情况下,使用以下分析工具进行分析和比较:
-
图像模拟 - 此功能通过将源位图文件与点扩散函数阵列进行卷积来模拟图像的形成。考虑的影响包括衍射、像差、畸变、相对照明、图像方向和偏振。
-
波前图 - 显示光瞳上的波前误差。
-
STAR 系统查看器(变形) - 显示由于拟合的多物理场数据而导致的表面变形和光学性质变化的系统范围视图。
名义状态
由于透镜系统已经针对这种状态进行了优化,所以图像模拟的质量非常好。波前误差是旋转对称的,最大误差为0.225波。没有显示变形,因为没有应用多物理数据。这将作为基线和性能的“理想”状态。

冲击状态
当加载冲击状态的数据集时,很明显可以看出相机系统的性能可以被认为是不可用的。变形太大,以至于图像模拟和波前图的结果可以被声明为 “陈旧数据”。有趣的是,可以在 STAR 系统查看器中看到透镜系统的变形幅度。平均变形约为0.33mm,对于一个光学系统来说,变形太大以至于无法执行并产生任何有意义的结果。

OpticStudio 中 STAR 工具的一大优势是可以将刚体运动的效果与曲面变形的效果分离。这可以通过结构数据摘要中的简单勾选框来实现,并且可以随时打开或关闭。在下面的动态图中,从完整的变形数据开始,首先 RBM 部分被禁用,然后变形效果被全部忽略:

在上面显示的分析结果中,包括了 RBM。下面显示了相同的分析,但这次排除了 RBM。这使您能够观察高阶变形,这在光学分析过程中很重要。STAR 系统查看器显示平均变形幅度约为 0.025mm,这导致波前误差约为40个波长,与给出大约四分之一波长的波前误差的标称性能相比,这仍然表示严重的光学像差。如此大的波前误差导致图像质量严重下降,这可以在图像模拟中看到。

-
联系工作人员了解关于 RBM 变形和高阶变形比较的更多信息
冲击后状态
冲击后状态的结果如下所示。

查看 STAR 系统查看器的变形矢量,仍然有趣的是,在一些透镜的边缘区域仍然有大约 0.025mm 的变形幅度。然而,很明显可以看出最后一个透镜(即红外滤光片)的幅度显著下降。这导致性能仍然明显比名义状态差,但产生了更可用的结果。波前图显示误差约为 ±15 波,这仍然远远超过此类光学系统的可接受极限。图像模拟显示了透镜变形与摄像头系统中可能出现的畸变和像差之间的直接联系。物体可以识别,但非常模糊。
结论
本系列文章的第 4 部分展示了如何在 Ansys Workbench 中使用 Ansys LS - DYNA 模拟手机摄像头模块的跌落测试的显式动力学。使用 Ansys Mechanical 提取了冲击和冲击后状态的变形数据集并进行处理,以便在 Ansys Zemax OpticStudio 中使用。在 Ansys Zemax OpticStudio 中,可以通过 STAR 模块加载 FEA 数据集并将其分配给光学系统。这样,光学工程师可以研究和比较光学系统在冲击和冲击后状态变形影响下的性能。
后续步骤
在这个示例中,我们分析了跌落测试中的光学性能。同样,LS-DYNA- Mechanical - Zemax 工作流程还可以应用于研究振动或累积冲击等其他领域。
相关文章:
Ansys Zemax | 手机镜头设计 - 第 4 部分:用LS-DYNA进行冲击性能分析
该系列文章将讨论智能手机镜头模组设计的挑战,从概念和设计到制造和结构变形分析。本文是四部分系列中的第四部分,它涵盖了相机镜头的显式动态模拟,以及对光学性能的影响。使用Ansys Mechanical和LS-DYNA对相机在地板上的一系列冲击和弹跳过程…...
工具收集 - java-decompiler / jd-gui
工具收集 - java-decompiler / jd-gui 参考资料 用法:拖进来就行了 参考资料 https://github.com/java-decompiler/jd-gui 脚本之家:java反编译工具jd-gui使用详解...
《无线重构世界》射频模组演进
射频前端四大金刚 射频前端由PA、LNA、滤波器、开关“四大金刚” 不同的模块有自己的工艺和性能特点 分层设计 射频前端虽然只由PA、LNA、开关、混频器4个模块构成,但不同模块之间相互连接且相互影响。如果将射频系统当成一个整体来理解,其中的细节和…...
渗透测试---docker容器
声明:学习素材来自b站up【泷羽Sec】,侵删,若阅读过程中有相关方面的不足,还请指正,本文只做相关技术分享,切莫从事违法等相关行为,本人一律不承担一切后果 目录 一、Docker的作用与优势 二、docker的核心…...
【go从零单排】Atomic Counters原子计数
🌈Don’t worry , just coding! 内耗与overthinking只会削弱你的精力,虚度你的光阴,每天迈出一小步,回头时发现已经走了很远。 📗概念 在 Go 语言中,原子计数器(Atomic Counters)是…...
VSCode中python插件安装后无法调试
问题 VSCode中python插件安装后无法调试,如下,点击调试,VScode中不报错,也没有调试 解决方法 1、查看配置 打开所在路径 2、拷贝 将整个文件夹拷贝到vscode默认路径下 3、问题解决 再次调试,可以正常使用了…...
用react实现radio同时关联proform组件
实现: <ProFormRadio.GroupradioType{button}name{[bodyConfig, format]}label"请求体格式"initialValue{json}options{createTabs}fieldProps{{buttonStyle: solid,wrapperMarginInlineEnd: 20,onChange: e > {let v e.target.value;databaseMod…...
Objective-C 1.0和2.0有什么区别?
Objective-C ObjC比较小众,在1980年左右由Stepstone公司的Brad Cox和Tom Love发明。后来NeXT公司获得ObjC语言使用权,再后来到1996年NeXT被苹果公司收购也变成苹果公司使用,Mac市场占有率本身就不高,ObjC没有太多程序员。在移动互…...
TCP连接如何保障数据传输安全
TCP连接保障数据传输安全主要通过以下几个机制实现: 1、建立连接:TCP通过三次握手过程建立连接,确保通信双方实体真实存在,为后续的可靠数据传输打下基础。 2、序号机制:TCP为每个传输的数据包分配一个序号ÿ…...
【论文复现】ChatGPT多模态命名实体识别
📝个人主页🌹:Eternity._ 🌹🌹期待您的关注 🌹🌹 ❀ChatGPT ChatGPT辅助细化知识增强!1. 研究背景2. 模型结构和代码3. 任务流程第一阶段:辅助精炼知识启发式生成第二阶段…...
管理 Elasticsearch 变得更容易了,非常容易!
作者:来自 Elastic Ken Exner Elasticsearch 用户,我们听到了你的心声。管理 Elasticsearch 有时会变得很复杂,面临的挑战包括性能调整、问题检测和资源优化。我们一直致力于简化你的体验。今天,我们宣布了自收购 Opster 以来的一…...
SynchronousQueueworkQueue.offer() 和 poll() 方法的超时控制及线程池的讨论
2024.11.12 11:26 问:workQueue.offer(command) 这里 workQueue.poll(keepAlive, TimeUnit.NANOSECONDS) : 这里的 workQueue.offer(command) 没有超时时间控制? Claude 3.5 Haiku 非常好的问题!我来详细解释 offer() 和 poll() 方法的区别…...
自动驾驶---“火热的”时空联合规划
1 背景 早期的不少规划算法都是横纵分离的(比如Apollo),先求解path之后,依赖path的结果再进行speed的求解。这种横纵解耦的规划方式具有以下特点: 相对较为简单,计算量通常较小,容易实现实时性要求。但是由于分别规划横向和纵向运动,可能会忽略两者之间的耦合关系,导致…...
命令行工具进阶指南
🚀 命令行工具进阶指南:Git、Shell与效率工具的进阶之路 掌握命令行工具,让你的开发效率突飞猛进。本文将深入探讨 Git 高级技巧、Shell 脚本自动化以及各种效率倍增的 CLI 工具。 📑 目录 Git 高级技巧与工作流Shell 脚本自动化…...
扫雷游戏代码分享(c基础)
hi , I am 36. 代码来之不易👍👍👍 创建两个.c 一个.h 1:test.c #include"game.h"void game() {//创建数组char mine[ROWS][COLS] { 0 };char show[ROWS][COLS] { 0 };char temp[ROWS][COLS] { 0 };//初始化数…...
基于vue框架的的社区居民服务管理系统8w86o(程序+源码+数据库+调试部署+开发环境)系统界面在最后面。
系统程序文件列表 项目功能:居民,楼房信息,报修信息,缴费信息,维修进度 开题报告内容 基于Vue框架的社区居民服务管理系统开题报告 一、研究背景与意义 随着城市化进程的加速,社区居民数量激增,社区管理面临着前所未有的挑战。传统的社区…...
一分钟快速熟悉makedown
Markdown 是一种轻量级标记语言,广泛用于编写文档、撰写博客、创建 README 文件等。它的语法简单易学,能够快速生成格式化的文本。以下是 Markdown 的一些常用语法和示例: 1. 标题 Markdown 支持六级标题,使用 # 符号表示。 # …...
P8649 [蓝桥杯 2017 省 B] k 倍区间:同余,前缀和,组合数,区间个数
题目描述 给定一个长度为 NN 的数列,A1,A2,⋯ANA1,A2,⋯AN,如果其中一段连续的子序列 Ai,Ai1,⋯Aj(i≤j)Ai,Ai1,⋯Aj(i≤j) 之和是 KK 的倍数,我们就称这个区间 [i,j][i,j] 是 KK 倍区间。 你能求出数列中总共有多少个 KK 倍区…...
产业与学术相互促进,2024年OEG海上能源博览会助力全球能源可持续发展
10月30日至31日,2024年OEG海上能源全产业链博览会在上海跨国采购会展中心成功举办。本次大会系全球海洋工程与高端装备领域的年度国际交流盛会——第十一届全球FPSO&FLNG&FSRU大会,同期举办第七届亚洲海洋风能大会。本次大会暨博览会由上海船舶工…...
【GDB调试】智慧中控项目的调试
一.在执行的智慧中控项目的时候,喊语音模块唤醒(小欣小欣)的时候遇到了:Segmentation fault 段错误 二.遇到段错误,一般是以下情况: “Segmentation fault”(段错误)是Linux系统中常见的程序异常终止信号。…...
深度学习在微纳光子学中的应用
深度学习在微纳光子学中的主要应用方向 深度学习与微纳光子学的结合主要集中在以下几个方向: 逆向设计 通过神经网络快速预测微纳结构的光学响应,替代传统耗时的数值模拟方法。例如设计超表面、光子晶体等结构。 特征提取与优化 从复杂的光学数据中自…...
手游刚开服就被攻击怎么办?如何防御DDoS?
开服初期是手游最脆弱的阶段,极易成为DDoS攻击的目标。一旦遭遇攻击,可能导致服务器瘫痪、玩家流失,甚至造成巨大经济损失。本文为开发者提供一套简洁有效的应急与防御方案,帮助快速应对并构建长期防护体系。 一、遭遇攻击的紧急应…...
深入浅出:JavaScript 中的 `window.crypto.getRandomValues()` 方法
深入浅出:JavaScript 中的 window.crypto.getRandomValues() 方法 在现代 Web 开发中,随机数的生成看似简单,却隐藏着许多玄机。无论是生成密码、加密密钥,还是创建安全令牌,随机数的质量直接关系到系统的安全性。Jav…...
SCAU期末笔记 - 数据分析与数据挖掘题库解析
这门怎么题库答案不全啊日 来简单学一下子来 一、选择题(可多选) 将原始数据进行集成、变换、维度规约、数值规约是在以下哪个步骤的任务?(C) A. 频繁模式挖掘 B.分类和预测 C.数据预处理 D.数据流挖掘 A. 频繁模式挖掘:专注于发现数据中…...
渗透实战PortSwigger靶场-XSS Lab 14:大多数标签和属性被阻止
<script>标签被拦截 我们需要把全部可用的 tag 和 event 进行暴力破解 XSS cheat sheet: https://portswigger.net/web-security/cross-site-scripting/cheat-sheet 通过爆破发现body可以用 再把全部 events 放进去爆破 这些 event 全部可用 <body onres…...
ffmpeg(四):滤镜命令
FFmpeg 的滤镜命令是用于音视频处理中的强大工具,可以完成剪裁、缩放、加水印、调色、合成、旋转、模糊、叠加字幕等复杂的操作。其核心语法格式一般如下: ffmpeg -i input.mp4 -vf "滤镜参数" output.mp4或者带音频滤镜: ffmpeg…...
04-初识css
一、css样式引入 1.1.内部样式 <div style"width: 100px;"></div>1.2.外部样式 1.2.1.外部样式1 <style>.aa {width: 100px;} </style> <div class"aa"></div>1.2.2.外部样式2 <!-- rel内表面引入的是style样…...
Ascend NPU上适配Step-Audio模型
1 概述 1.1 简述 Step-Audio 是业界首个集语音理解与生成控制一体化的产品级开源实时语音对话系统,支持多语言对话(如 中文,英文,日语),语音情感(如 开心,悲伤)&#x…...
高效线程安全的单例模式:Python 中的懒加载与自定义初始化参数
高效线程安全的单例模式:Python 中的懒加载与自定义初始化参数 在软件开发中,单例模式(Singleton Pattern)是一种常见的设计模式,确保一个类仅有一个实例,并提供一个全局访问点。在多线程环境下,实现单例模式时需要注意线程安全问题,以防止多个线程同时创建实例,导致…...
Docker 本地安装 mysql 数据库
Docker: Accelerated Container Application Development 下载对应操作系统版本的 docker ;并安装。 基础操作不再赘述。 打开 macOS 终端,开始 docker 安装mysql之旅 第一步 docker search mysql 》〉docker search mysql NAME DE…...
