Ansys Zemax | 设计抬头显示器时要使用哪些工具 – 第一部分

news2024/11/15 22:36:04

本文演示了如何使用OpticStudio工具设计分析抬头显示器(HUD)性能,即全视场像差(FFA)和NSC矢高图。(联系我们获取文章附件)

初始结构

HUD简介

以下为HUD的示意图。液晶显示器作为光源发光,光线被HUD的两个反射镜反射,然后通过风挡玻璃反射,最后进入驾驶员的眼睛。驾驶员将在道路上看到虚拟图像,比如给他指示此时的速度影像的投影。

司机在开车时会转动头部导致视线的偏移,司机的视角我们可以使用眼盒代替。眼盒本质上是一个虚拟方框,表示驾驶员眼睛位置的范围。

系统规格

•虚像距离:2米

•显示当前车速

•机械限制:HUD主要受到仪表板下可用空间的限制,风挡玻璃将充当一个分束器

•眼盒:驾驶员眼睛的位置在宽度为±50毫米、高度为±20毫米的眼盒范围内

•瞳孔:在明亮的光线下直径为2至4毫米,在黑暗中直径为4至8毫米。对于该研究,它被设置为4毫米

•液晶显示器尺寸宽为±12.5毫米,高为±5毫米

•放大倍数=6

设计选择

HUD的起始结构是一个折叠系统,在仪表板下保持足够小的尺寸。示例HUD由两个反射镜构成:一个平面,一个自由曲面。反射镜在成像系统中具有不增加任何色差的优点。系统中自由曲面反射镜需要被优化。

HUD设计流程

•从虚像到显示器:设计在序列模式中反向进行。原因从驾驶员看到的虚像开始进行光学系统建模相对容易。然后可以将光阑表面放置在系统的前部,即眼盒所在的位置。在光阑表面上放置一个矩形孔径,以描述对眼睛位置的限制。

•从显示器到虚拟图像:系统将在序列模式下翻转。允许评估从显示器到虚像的“真实”性能,即正向性能。

•最后,系统将转换为非序列(NSC)模式。这提供了一个更真实的模型,其中用户可以包括杂散光分析。它将显示驾驶员使用抬头显示器看到的真实图像。

步骤1:从虚像到显示器(逆向设计)

初始结构

为了方便起见,已经构建了一个模板,其中包含所有的初始结构。在附件中即可看到。初始结构中包含整个风挡玻璃的自由曲面模型。风挡玻璃可视为一个扩展多项式表面。

系统选项:

•孔径:眼盒是系统的光阑面,因此它代表了驾驶员眼睛的位置范围:宽度=±50毫米,高度=±20毫米,所以我们将该尺寸的矩形孔径放置在光阑面。

入瞳直径(EPD)计算可得2 × (20ˆ2 +50 ˆ2) ˆ2 = 108毫米。 

•视场:视场类型为物高,规格定义为矩形。在实际系统中,LDC显示器上的图像为虚像尺寸的6倍,因为当前的设计是逆向从虚拟图像到LCD显示器的,因此可以计算虚像的大小,并将其用作“视场编辑器”中定义视场大小的物高。液晶显示器尺寸为:宽度=±12.5毫米,高度=±5毫米。因此,物高尺寸应该是此值的6倍。

视场宽度=±75毫米(6 x 12.5),视场高度=±30毫米(6 x 5)

•波长:LCD显示器将发出0.55微米的波长   

风挡玻璃

可以对整个风挡玻璃进行建模,也可以仅对HUD使用的风挡玻璃区域进行建模。

要找到“考察”区域,可以使用Footprint Diagram工具显示叠加在风挡玻璃表面上的光线迹点情况:

风挡玻璃建模:

风挡玻璃模型:

风挡玻璃可以用序列模式表面来描述,如自由曲面或非序列CAD零件。如果将其描述为插入序列系统的非序列CAD零件,则系统变为混合模式。这在从虚像到显示器的逆向系统建模时效果良好,但在正向工作时会出现问题,因为光阑面位于非序列结构表面之后(违反混合模式建模规则)。这也会使光线瞄准更加困难,并可能导致其它光线追迹问题。

一种解决方法是测量CAD零件的矢高,然后使用序列网格矢高表面对其进行建模。通过这种方式,系统保持在纯序列模式,OpticStudio可以将网格矢高表面转换为非球面类型表面。可在 Optimize…Convert Asphere Type 下找到对应转换工具。

将风挡玻璃转换为网格矢高表面:

非序列模式下的矢高分析是ZOS-API的扩展,用于测量CAD零件的矢高。

该分析使用探测光源光线并记录该探测光线击中NSC物体的位置。文件“HUD_windshield_sag.zar”可以在文章顶部下载。它包含风挡玻璃CAD零件和资源。

风挡玻璃的X和Y尺寸需要在NSC矢高图中进行设置。可以近似使用相机视图结合活动光标位置读取需要设置的X-Y:

可以为NSC矢高工具输入以下设置:

在设置中,您可以:

•取消勾选“移除XY倾斜”。NSC矢高不会将NSC物体的倾斜设置为0。

•勾选“保留保存的文件”,将.zmx和.zrd文件保存到当前文件夹。

NSC矢高图以伪彩色显示。如果在“设置”下,“显示”选项设置为“文本”,则它也可以显示为文本列表。然后可以保存此文本输出并将其转换为正确的数据格式.DAT,该数据可以用于网格矢高表面。为了简单起见,本示例中风挡玻璃采用扩展多项式曲面进行建模。

定位所有元件

这是一个表示所有元件位置的示意图:

可以利用以下实用工具将表面进行放置:

•坐标间断-返回:坐标间断面可以通过坐标返回来定义表面倾斜和偏心情况,可以在以下位置找到:Surface Properties…Tilt/Decenter。OpticStudio随后将计算该“坐标间断”面的对应参数,以便在该坐标间断面之后,局部坐标与先前序列表面的局部坐标相同。

•主光线计算:计算坐标间断面的倾斜和偏心,使其垂直于主光线并以主光线为中心:

现在我们已经完成了对于 HUD 系统的元件定位与设置,下一步我们可以根据当前的系统去评估系统的初始性能以及进行后续优化。

在后续的文章中,我们会进行进一步的介绍。

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

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

相关文章

零死角玩转stm32中级篇3-SPI总线

一.基础知识 1.什么是SPI SPI(Serial Peripheral Interface,串行外设接口)是一种同步的串行通信协议,它被用于在微控制器、存储器芯片、传感器和其他外围设备之间传输数据。SPI通常由四个线组成:时钟线(SC…

对git的简单总结

Git的基本使用 配置用户名和邮箱常见的操作查看仓库的状态远端仓库整体流程分支本地分支命令远端分支命令 这几天在做毕业设计,需要用到git,所以简单总结一下git的基本使用。 配置用户名和邮箱 git config --global user.name "Your Name" g…

【Vue】Vue-cli,创建项目设置自定义默认配置

Vue2.0,Vue-cli项目配置 步骤一,打开文件夹,导航栏输入cmd,打开命令行窗口步骤二,输入命令步骤三,选择第三个自定义新建项目步骤四,选择需要的项目模块,空格选择完,回车步…

Semaphore详解

Semaphore的基本使用场景是限制一定数量的线程能够去执行. 举个简单的例子: 一个单向隧道能同时容纳10个小汽车或5个卡车通过(1个卡车等效与2个小汽车), 而隧道入口记录着当前已经在隧道内的汽车等效比重. 比如1个小汽车和1个卡车, 则隧道入口显示3. 若隧道入口显示10表示已经…

《string的模拟实现》

本文主要介绍库里面string类的模拟实现 文章目录 前言一、string的构造函数①无参的构造函数②带参的构造函数③修改构造函数 二、析构函数三、拷贝构造四、赋值重载五、返回size 、capacity和empty六、[]的运算符重载七、迭代器① 正向迭代器。② 正向const迭代器 八、string比…

PointPillars点云编码器代码运行过程中的问题及解决

PointPillars:点云编码器,编码特征可以与任何标准的 2D 卷积检测架构一起使用。任务是目标检测。来自CVPR2019 论文地址:https://arxiv.org/pdf/1812.05784.pdf 代码地址:GitHub - nutonomy/second.pytorch: PointPillars for KITTI object…

【LeetCode】297. 二叉树的序列化与反序列化

1.问题 序列化是将一个数据结构或者对象转换为连续的比特位的操作,进而可以将转换后的数据存储在一个文件或者内存中,同时也可以通过网络传输到另一个计算机环境,采取相反方式重构得到原数据。 请设计一个算法来实现二叉树的序列化与反序列…

Css如何优雅的实现抽奖转盘

如图,抽奖转盘,可以拆分为几部分: 1.底部大圆; 2.中间小圆; 3.扇形区; 4.扇形内部奖品区; 5.抽奖按钮; 6.点击抽奖按钮时旋转动效及逻辑; 这其中,扇形区&am…

集成灶/小家电语音提示芯片方案-WTN6040-8S唯创知音自主研发

集成灶一直是厨房中常用设备之一,而现代技术的不断发展,为集成灶的升级提供了更多的可能性。深圳唯创知音为了让家用电器更加便民,专门为集成灶开发了一款语音IC方案——WTN6040语音芯片方案,这款芯片可以满足集成灶对语音提示功能…

独家专访丨TheStage.ai :当 AI 邂逅 Web3

随着2022年末ChatGPT走红,AI再次成为人们关注的焦点。上一次AI掀起舆论热潮,还是2016年AlphaGo以4:1战胜世界顶级围棋棋手李世石。 但与上次不同的是,这次AI更强大了。在接受强化训练后,AI可以对用户的需求创造新内容。 面对AI的快…

关于API数据接口的使用说明

API(Application Programming Interface)是一种让不同软件之间进行数据交换和通信的技术,使用API可以减少开发者的工作量,提高软件应用的效率和可靠性。本文将介绍API数据接口的使用方式和注意事项。 使用API数据接口的方式&…

Python一行代码实现文件共享【内网穿透公网访问】

目录 1. 前言 2. 视频教程 3. 本地文件服务器搭建 3.1 python的安装和设置 3.2 cpolar的安装和注册 4. 本地文件服务器的发布 4.1 Cpolar云端设置 4.2 Cpolar本地设置 5. 公网访问测试 6. 结语 转载自内网穿透工具的文章:Python一行代码实现文件共享【内网…

PPOCRV3文本识别模型精度损失问题解决

PPOCRV3文本识别模型精度损失问题解决 1. 得到可用的ncnn模型2. 先看问题3. 快速解决4. 问题分析5. 最终效果6. 结语 1. 得到可用的ncnn模型 paddleocr文本识别模型(ch_PPOCRv3_rec_infer)转ncnn模型,我参考了这位大神的博客,基本包括了我遇到的所有问题…

操作系统八股文知识点汇总

1. 程序编译过程 gcc HelloWorld.c -E -o HelloWorld.i 预处理:加入头文件,替换宏。gcc HelloWorld.c -S -c -o HelloWorld.s 编译:包含预处理,将 C 程序转换成汇编程序。gcc HelloWorld.c -c -o HelloWorld.o 汇编:包…

在linux下搭建clash服务

下载clash并配置 clash安装包 一般下载名称中带clash-linux-amd64的包 下载完用gunzip解压,解压后重命名或者链接到系统环境变量目录都行 下载配置信息 wget -O config.yaml [订阅链接] wget -O Country.mmdb https://www.sub-speeder.com/client-download/Coun…

深元边缘计算盒子在社区的应用,提高社区的安全性和生活质量

近年来,随着人工智能技术的不断发展和普及,越来越多的社区开始应用边缘计算盒子AI视觉分析技术,以提高社区的安全性和管理效率。本文将介绍边缘计算盒子AI视觉分析技术在社区中的应用及其优势。 一、边缘计算盒子AI视觉在社区中的应用 1.安防…

uniapp中实现自定义导航栏

整个小程序默认配置存在系统内置导航和tabbar,项目中需求存在自定义的导航。 uniapp中vue封装组件(顶部导航、底部tabbar),按照vue的相关语法使用。 在page.json文件中修改配置: 自定义导航组件: 给自定义…

PLM听过很多遍,却依旧不知道是什么?看完这篇你就懂

上周参加展会,很多客户在现场了解到e企拆图解决方案后,向我们咨询了很多问题,发现有几个名词经常被提及,比如PLM、PDM、BOM等。随着技术的爆炸发展,新的名词概念也与日俱增,对于这些名词,可能我…

工贸企业重大事故隐患判定标准,自2023年5月15日起施行

应急管理部发布了《工贸企业重大事故隐患判定标准》(自2023年5月15日起施行),适用于判定冶金、有色、建材、机械、轻工、纺织、烟草、商贸等工贸企业重大事故隐患。新修改的安全生产法对建立健全重大事故隐患治理督办制度、督促生产经营单位消…

关于ffmpeg的使用过程中遇到的点(php)

有段日子没更新,最近使用ffmepg,这里记录一下 我这边就直说一下我工作中遇到的注意事项和使用方法,就不太详细说了 首先是安装的问题,windwos的话比较简单,官网下载安装文件,解压之后。设置环境变量 系统…