切换到宽版
  • 广告投放
  • 稿件投递
  • 繁體中文
    • 506阅读
    • 0回复

    [技术]柱面透镜的设计 [复制链接]

    上一主题 下一主题
    离线infotek
     
    发帖
    5302
    光币
    20742
    光券
    0
    只看楼主 倒序阅读 楼主  发表于: 2023-04-20

    概念:由圆柱体玻璃的一部分截制而成,由一柱面和一平面组成,其中包括平-凹和平-凸透镜

    光学特性光线通过轴向子午线(图中的垂直方向)不会出现聚散度的改变。

    光线通过屈光力子午线(图中的水平方向)会出现聚散度的改变。

      

    应用:柱面镜一般用于将入射光线聚焦到线上,或改变图像的宽高比。柱面镜有一个柱面表面,使入射光线能够聚焦于某个维度,并拉伸图像。柱面镜的焦距可为负或正,适合用于激光线生成或变形光束整形,以环化激光输出。

    在FRED中共有四种方法设计柱透镜:

    第一种方法是使用FRED里面自带的基元元件快速创建工具:

    在FRED菜单中选择Create/Element Primitive/Cylinder lens;

    第二种方法常用方法是使用软件自带的面型创建:主要的面型类型是XYToroidal Asphere、Toroidal Asphere,我们通过对每一面手动的输入参数来构建,但这种方法比较繁琐。

    第三种方法是在FRED厂商透镜目录库中导入或者从从光学设计软件中导入柱面透镜,并调整相应的参数。

    我们以Edmund为例(下图为货号68168 :12.5mm Diameter x 25mm FL Uncoated, UV PCX Cylinder Lens示意图);

    在Edmund网站找到该透镜,并可以查看具体的加工参数。

    本文我们主要讲述第四种方法,通过脚本方式创建整个模型。包含了一个可以产生柱面透镜的脚本,基于用户规格输入参数到基本对话框中,如下所示。使用该工具,和生成轴对称透镜大致相同的方式,可创建柱面透镜。柱面透镜生成器可指定以圆形/椭圆和方形/矩形孔径,以及指定弯曲轴(x或y)。

    图1.柱面透镜生成器对话框

    使用柱面透镜生成器

    对话框输入的参数一目了然,但是有几个事项阐明如下:

     表面的参数可以输入为半径或曲率,在这两种情况下,0值应该用于平坦的平面表面。

     厚度是介于轴上两表面的中心厚度。

     只有存在于FRED文件“材料”文件夹中的材料才能作为基质和浸润材料可选项

      “弯曲轴”指的是沿着弯曲表面的轴。举个例子,如果y被选为弯曲轴,光线就会集中在y方向,但是不会在x方向。

     就如轴对称透镜一样,柱面透镜被分配了一个“透射”涂层和“透射镜面”光线追迹属性。

     如果遇到了任何以下的情况,输出窗口会出现警告:

     相同名字的元件已经存在于几何文件夹中。

     通常不建议两个元件具有完全相同的名字。

     表面的半孔径大于它的半径。

     在这种情况下,表面的创建取决于它的半径。

     表面的半孔径十分接近于它的半径(即小于半径,但是大于0.975*半径)

     当圆环表面创建时,当使用定义好的曲面细分设置,如果边缘延伸超过0.975*半径时,圆环表面将不会正确的渲染。提高曲面细分数将会改善渲染效果。

     这一问题只会影响到视觉表示,而不会影响光线追迹和分析

     边缘厚度小于0。

    注意到,当我们遇到这些警告情况时,透镜仍然被创建了,尽管这可能是非物理的。

    图2 两个柱面透镜,分别具有圆形和方形的孔径

    脚本

    柱面透镜生成器的脚本结构如下:

    1. 在“材料”文件夹中生成一系列材料。

    2. 用于各种用户输入显示对话框。

    a. 插入默认值

    b. 如果点击“取消”按钮,结束脚本

    3. 指定对话框的输入为变量。

    4. 创建第一个和第二个表面。

    a. 如果没有弯曲,使用“平面”表面;如果有弯曲,使用“环形非球面”

    b. 计算边缘处的表面矢高

    i. 如果孔径规格延伸超过半径,设置为0

    c. 指定裁剪规格

    i. 中心z-裁剪,设置为sag/2处

    ii. 如果sag小于0.1,设置z裁剪半孔径为0.1,否则设置为|sag|*(3/5),这比1/2稍大一些,因此表面可以正确的渲染。

    d. 设置材料、涂层以及光线追迹属性

    e. 在x, y和z方向以0.15的步长进行曲面细分,因此环形表面可以正确的渲染

    f. 根据透镜厚度值,移动第二个表面

    5. 计算边缘厚度,如果小于0,输出警告。

    6. 创建透镜边缘

    a. 计算边缘总长度

    i. 中心厚度+(表面1矢高的绝对值,如果它是凹面)+(表面2矢高的绝对值,如果它是凹面)

    ii. 注意到,由于表面只在一个方向弯曲,边缘表面一定延伸了整个透镜“长度”。

    b. 如果透镜孔径是圆形/椭圆形,使用“柱面”表面。

    c. 如果透镜孔径是矩形/方形,使用带有“列表柱面”的分段曲线作为准线。

    i. 创建分段曲线

    ii. 使用分段曲线作为准线,创建列表柱面

    d. 指定裁剪规格

    i. (边缘宽度)/2的z-裁剪中心+(表面1矢高的绝对值,如果它是凹面)

    ii. 如果表面1是凹面,透镜边缘延伸到了-z

    iii. 使用两个透镜表面来裁剪边缘

    e. 在x, y和z方向以0.05的步长进行曲面细分,因此边缘表面可以正确的渲染。

    7. 完成!

    脚本代码分析

    http://pan.baidu.com/s/1hrsD8De

    实例

    我们以库存号#86-030为例,

    材料:SCHOTT N-SF5;

    中心厚度:6mm;

    孔径:D=12.5mm;

    波长:587.6nm;

    半径:S1=6.727, S2=infinity(曲率为0)

    形状:S1凸面;S2平面

    运行软件输入如下参数:

    并创建合适的光源和探测器,3D显示效果如下:

     
    分享到