首页 -> 登录 -> 注册 -> 回复主题 -> 发表主题
光行天下 -> FRED,VirtualLab -> 柱面透镜的设计 [点此返回论坛查看本帖完整版本] [打印本页]

infotek 2020-11-30 10:13

柱面透镜的设计

简介 x}{O9LiR  
]7q|) S\  
概念:由圆柱体玻璃的一部分截制而成,由一柱面和一平面组成,其中包括平-凹和平-凸透镜。 X3~@U7DU  
ws$kwSHq  
光学特性:光线通过轴向子午线(图中的垂直方向)不会出现聚散度的改变。 Dh<}j3]  
QQ %W3D @  
光线通过屈光力子午线(图中的水平方向)会出现聚散度的改变。 .B!  Z0  
   ^pqJz^PO.  
应用:柱面镜一般用于将入射光线聚焦到线上,或改变图像的宽高比。柱面镜有一个柱面表面,使入射光线能够聚焦于某个维度,并拉伸图像。柱面镜的焦距可为负或正,适合用于激光线生成或变形光束整形,以环化激光输出。 0])[\O`j  
AMK(-=  
在FRED中共有四种方法设计柱透镜: Xs~IoU  
DIkf#}  
第一种方法是使用FRED里面自带的基元元件快速创建工具: zkd^5A; `  
在FRED菜单中选择Create/Element Primitive/Cylinder lens; 02YmV%  
xgvwH?<  
[&lH[:Y#  
第二种方法常用方法是使用软件自带的面型创建:主要的面型类型是XYToroidal Asphere、Toroidal Asphere,我们通过对每一面手动的输入参数来构建,但这种方法比较繁琐。 uu/2C \n}  
o76{;Bl\O  
第三种方法是在FRED厂商透镜目录库中导入或者从从光学设计软件中导入柱面透镜,并调整相应的参数。 6yC4rX!a  
ROO@EQ#`Z  
我们以Edmund为例(下图为货号68168 :12.5mm Diameter x 25mm FL Uncoated, UV PCX Cylinder Lens示意图); VWk{?*Dp  
ku#WQL  
nUCOHVI7  
在Edmund网站找到该透镜,并可以查看具体的加工参数。 x X.{(er  
J"XZnb)E=  
本文我们主要讲述第四种方法,通过脚本方式创建整个模型。包含了一个可以产生柱面透镜的脚本,基于用户规格输入参数到基本对话框中,如下所示。使用该工具,和生成轴对称透镜大致相同的方式,可创建柱面透镜。柱面透镜生成器可指定以圆形/椭圆和方形/矩形孔径,以及指定弯曲轴(x或y)。 mgb+HNH%q\  
&#!1 Y[e^  
图1.柱面透镜生成器对话框
%{? 9#))  
使用柱面透镜生成器 Tz&h[+6`  
"kjSg7m*:  
对话框输入的参数一目了然,但是有几个事项阐明如下: O0eM*~zI  
 表面的参数可以输入为半径或曲率,在这两种情况下,0值应该用于平坦的平面表面。 O .jCDAP  
 厚度是介于轴上两表面的中心厚度。 [n3@*)q's  
 只有存在于FRED文件“材料”文件夹中的材料才能作为基质和浸润材料可选项 ju1B._48  
  “弯曲轴”指的是沿着弯曲表面的轴。举个例子,如果y被选为弯曲轴,光线就会集中在y方向,但是不会在x方向。  hV fANbs  
 就如轴对称透镜一样,柱面透镜被分配了一个“透射”涂层和“透射镜面”光线追迹属性。 hUEA)c  
 如果遇到了任何以下的情况,输出窗口会出现警告: jVqpokWH  
 相同名字的元件已经存在于几何文件夹中。 F(Je$c/J|~  
 通常不建议两个元件具有完全相同的名字。 B#3Q4c$  
 表面的半孔径大于它的半径。 UtR wZ(09  
 在这种情况下,表面的创建取决于它的半径。 ?}(B8^  
 表面的半孔径十分接近于它的半径(即小于半径,但是大于0.975*半径) s(r4m/  
 当圆环表面创建时,当使用定义好的曲面细分设置,如果边缘延伸超过0.975*半径时,圆环表面将不会正确的渲染。提高曲面细分数将会改善渲染效果。 4zZ.v"laVM  
 这一问题只会影响到视觉表示,而不会影响光线追迹和分析 ZVrZkd `  
 边缘厚度小于0。 Ko|gH]B'  
QZuKM'D+  
注意到,当我们遇到这些警告情况时,透镜仍然被创建了,尽管这可能是非物理的。 \mWH8Z }Z  
U/_hH*N"!  
图2 两个柱面透镜,分别具有圆形和方形的孔径
MSB/O.  
脚本 }i^$ li@  
柱面透镜生成器的脚本结构如下: $oPc,zS-gL  
1. 在“材料”文件夹中生成一系列材料。 RYdI$&]  
2. 用于各种用户输入显示对话框。 LCuz_LTFq{  
a. 插入默认值 =q*c}8R_0  
b. 如果点击“取消”按钮,结束脚本 B&<P>AZ  
3. 指定对话框的输入为变量。 DcE4r>8B  
4. 创建第一个和第二个表面。 !'B='].  
a. 如果没有弯曲,使用“平面”表面;如果有弯曲,使用“环形非球面” Eqh*"hE7  
b. 计算边缘处的表面矢高 tYhcoV  
i. 如果孔径规格延伸超过半径,设置为0 p6ryUJc6  
c. 指定裁剪规格 I+31:#d  
i. 中心z-裁剪,设置为sag/2处 T1'\!6_5  
ii. 如果sag小于0.1,设置z裁剪半孔径为0.1,否则设置为|sag|*(3/5),这比1/2稍大一些,因此表面可以正确的渲染。 kdaq_O:s  
d. 设置材料、涂层以及光线追迹属性 #WS>Z3AY  
e. 在x, y和z方向以0.15的步长进行曲面细分,因此环形表面可以正确的渲染 RE1M4UV.  
f. 根据透镜厚度值,移动第二个表面 `>OKV;~{z  
5. 计算边缘厚度,如果小于0,输出警告。 #)3 B  
6. 创建透镜边缘 UD9JE S,  
a. 计算边缘总长度 whm| "}x)u  
i. 中心厚度+(表面1矢高的绝对值,如果它是凹面)+(表面2矢高的绝对值,如果它是凹面) Wfy+9"-;s  
ii. 注意到,由于表面只在一个方向弯曲,边缘表面一定延伸了整个透镜“长度”。 ?Cx=!k.  
b. 如果透镜孔径是圆形/椭圆形,使用“柱面”表面。 {qOqtkj  
c. 如果透镜孔径是矩形/方形,使用带有“列表柱面”的分段曲线作为准线。 C~C`K%7  
i. 创建分段曲线 ^'fgQyj  
ii. 使用分段曲线作为准线,创建列表柱面 M27H{} v  
d. 指定裁剪规格 _]{LjJ!M  
i. (边缘宽度)/2的z-裁剪中心+(表面1矢高的绝对值,如果它是凹面) l]gW_wUQd  
ii. 如果表面1是凹面,透镜边缘延伸到了-z Ey=}bBx  
iii. 使用两个透镜表面来裁剪边缘 ;lfv.-u:<  
e. 在x, y和z方向以0.05的步长进行曲面细分,因此边缘表面可以正确的渲染。 Nr).*]g@~  
7. 完成! ?Iq{6O>D.  
uBxoMxWm  
脚本代码分析  V^rL  
http://pan.baidu.com/s/1hrsD8De {R_ <m$  
%?Q&a ]  
实例 9A/bA|$  
我们以库存号#86-030为例, "h|kf% W  
p}5413z5Z=  
材料:SCHOTT N-SF5; NEvNj  
中心厚度:6mm; a6O <t;&  
孔径:D=12.5mm; L27WDm^)  
波长:587.6nm; $?dQ^]<,  
半径:S1=6.727, S2=infinity(曲率为0) z^s\&gix  
形状:S1凸面;S2平面 hljKBx ~  
运行软件输入如下参数: i0J`{PbI  
B^/k`h6J  
B9%%jEH*  
并创建合适的光源和探测器,3D显示效果如下: \Hf/8!q  
7B\Q5fLQ  
%(W8W Lz}  
QQ:2987619807
敬天帅 2021-08-09 14:07
牛逼,学习了
查看本帖完整版本: [-- 柱面透镜的设计 --] [-- top --]

Copyright © 2005-2025 光行天下 蜀ICP备06003254号-1 网站统计