设计准备
所需工具
设计要求
设计一个多焦距 , n = 1.5, r = 50mm 的菲涅尔透镜。其中 n 是菲涅尔透镜的
折射率,r 是透镜的球冠半径。该菲涅尔透镜应使得目标面上形成一个亮环。
设计原理
边光原理
原理:若一个具有一定光展的光源发出的光线经过一个或几个序列化的单调正则光学表面的光学作用后投向目标面形成光斑,则整个光学过程具有以下两个性质:一是光源的边光成为光斑的边光;二是光源的内光映射为光斑的内光,并保持光线的拓扑结构不变。
根据边光原理,在设计集光器的外形尺寸时,只需要考虑边光,进而可以简化设计的难度。
近轴光线在球面光学系统的光路计算
光线在光轴附近很小的区域内,这个区域称为近轴区,近轴区内的光线称为近轴光线。根据基本的几何光学原理,光线在界面的传播可以用如下的公式表示。
i = l − r r u i ′ = n n ′ i u ′ = u + i − i ′ l ′ = r ( 1 + i ′ u ′ ) \begin{array}{c} i=\frac{l-r}{r} u \\ i^{\prime}=\frac{n}{n^{\prime}} i \\ u^{\prime}=u+i-i^{\prime} \\ l^{\prime}=r\left(1+\frac{i^{\prime}}{u^{\prime}}\right) \end{array} i=rl−rui′=n′niu′=u+i−i′l′=r(1+u′i′) 整理该公式,可以得到光线在物空间与像空间的成像关系。
光在透镜中的传播
根据焦点的物会成像在无限远的性质,可以得到焦距与球面曲率半径的关系()。
又由于透镜由两个球面组成,故根据组合光学系统的转面公式.可以得到两组合光学系统的等效焦距、等效焦点。当透镜两边都为空气时,可以得到如下的公式
f ′ = − f = − f 1 ′ f 2 ′ Δ = n r 1 r 2 ( n − 1 ) [ n ( r 2 − r 1 ) + ( n − 1 ) d ] f^{\prime}=-f=-\frac{f_{1}^{\prime} f_{2}^{\prime}}{\Delta}=\frac{n r_{1} r_{2}}{(n-1)\left[n\left(r_{2}-r_{1}\right)+(n-1) d\right]} f′=−f=−Δf1′f2′=(n−1)[n(r2−r1)+(n−1)d]nr1r2
当透镜的厚度d很小,可以忽略时,透镜的焦距的倒数(即光焦距)可以如下表示
Φ = 1 f ′ = ( n − 1 ) ( ρ 1 = ρ 2 ) \Phi=\frac{1}{f^{'}}=(n-1)(\rho_1=\rho_2) Φ=f′1=(n−1)(ρ1=ρ2)
ρ 1 , ρ 2 \rho_1,\rho_2 ρ1,ρ2
为透镜两个折射面的曲率半径的倒数。一般的透镜的折射率为1.5,故可以近似的认为焦距与半径的关系为
f = 2 R f=2R f=2R
菲涅尔透镜原理
透镜在成像时对光线的偏折起决定作用的是其表面曲率,而透镜本身的厚度对成像贡献较少。一般的透镜的厚度大,主要是为了满足表面曲率或大孔径的要求。为此可以减少轴向厚度,同时保持表面曲率的不变。
保持曲率不变,下沉每一段曲线,如图所示
常见的切割方法主要有两种,分别是纵切法和横向法。切割方法如下图所示。
在实际加工时,透镜厚度的减少,使得透镜曲面位置提前,使得某一环带的出射点也会相应的提前。因此,实际上不同的环带的出射光线汇聚点会有些许的差别。又由于差别较小,故本实验忽略该微小差别。
透镜表面的圆弧可以由一下的参数方程表示
{ x = x 0 + R cos ( θ ) y = y 0 + R sin ( θ ) \left\{\begin{array}{l} x=x_{0}+R \cos (\theta) \\ y=y_{0}+R \sin (\theta) \end{array}\right. {x=x0+Rcos(θ)y=y0+Rsin(θ)
多焦点菲涅尔透镜
当每个环带的焦距不同时,光经过不同环带所汇聚的焦点不同,故可以控制不同环带的光在落在接收面特定位置,示意图如下
合理设计不同环带的焦点可以控制接收面的光强分布。示意图如下
操作步骤
本实验的操作步骤如下:
1
、根据焦点与半径的关系公式,求解平凸透镜的表面曲率,根据几何光学求解不同环带的焦距。
2 、利用MATLAB编程求解菲涅尔透镜的光学母线数据。
3、将上一步所得到的光学母线导入到solidworks中,进行三维建模得到多焦点菲涅尔透镜。将三维模型保存为sat文件。
4 、将sat文件导入到TracePro,添加
光源,接收面。设置多焦点菲涅尔透镜的材料,多焦点菲涅尔透镜的透光性,光源的属性(是否反射,是否吸收)。
5、进行光学仿真
6、优化分析
7、优化设计
步骤1、2:根据几何光学知识计算出焦距分别为 217.3913 294.1176
333.3333,透镜的口径为50mm,划分的总段数m为3,每段内共有1000个点。采用纵切法,得到如下的光学母线(程序见附录)
步骤3:将得到的菲涅尔透镜的光学母线导入到solidworks中。由于导入的点是离散的,故solidworks会进行插值,进而导致透镜部分区域为一个点,厚度为0.故对曲线进行平移,使得所得到的菲涅尔透镜具有一定的厚度。
步骤4:因为材料库并没有折射率为1.5
的材料,只能选取折射率最接近1.5的材料。本实验所选取的菲涅尔透镜的材料为肖特玻璃BK7,折射率为1.51872.光源为圆形的光源,光线垂直于该平面,为平行光。光通量为100流明。
如上的所设计的多焦点菲涅尔透镜能够实现接收面的环带状分布,且中间与边缘环带的亮度对比符合要求。
MATLAB 程序
主程序
%多焦点菲涅尔透镜母线主程序
%平行光
clear;
clc;
close;
%f:焦距(每个环带的焦距)
rho = 50;
H=1000;
recept_r=[60,80,100];
% recept_r=[0,40,70,100];
[~,m]=size(recept_r);
r_range=linspace(0,rho,m+1);f=H*(r_range(2:end))./(recept_r+r_range(2:end))%透镜半径
R = f/2;
%m: 划分的段数
% [~,m ]= size(f);
%num :每段内 ,点的总数量
% num=1000;
num=500;
site3 = split_sections_enhance(R,rho,m,num);picture_handle=figure;
plot(site3(:,1),site3(:,3));
yline(0,'--')
axis equal
str1="exportgraphics(picture_handle,'多焦点菲涅尔透镜母线 "...+num2str(m)+".jpg','BackgroundColor',[1,1,1]);";str2="save('site_fresnel_enhance"+num2str(m)+".txt','site3','-ascii');";
%保存图片
eval(str1);
% 导出坐标到site_fresnel.txt
eval(str2);
母线划分函数
%多焦点菲涅尔透镜的母线划分函数,支持实数范围内所有的焦距
% R:平凸透镜曲率半径
% r:球冠半径
% n:分成n段
function site=split_sections_enhance(R,rho,m,Point_per_sec)% 圆心坐标
Cir_cen = [zeros(1,m);-sqrt(R.^2-rho^2)];
norm_R=abs(R)./R;
Cir_cen(2,:)=Cir_cen(2,:).*norm_R;
%求解各分段的边界的角度
%R需要计算出来%% 初始化分配内存x = zeros(m*Point_per_sec,1);
y = x;
%% 每个section的坐标
for j=1:mtheta1=asin(rho*(sqrt( (j-1)/m ) )/R(j));theta2 = asin(rho*(sqrt( (j)/m ) )/R(j));if theta1>=0y_temp=Cir_cen(2,j)+R(j).*cos(theta2);elsey_temp=Cir_cen(2,j)+R(j).*cos(theta1);endrange = linspace(theta1,theta2,Point_per_sec);x(1+Point_per_sec*(j-1):Point_per_sec*j) = Cir_cen(1,j)+R(j)*sin(range);y(1+Point_per_sec*(j-1):Point_per_sec*j) = Cir_cen(2,j)+R(j)*cos(range)-y_temp;
end
%% 存入矩阵z,画图
site = [x,zeros(m*Point_per_sec,1),y];return
exportgraphics函数仅在比较新的版本才有,21b版本是有这个函数的,该函数用于导出分辨率比较高的选项,具体用法可见官方的帮助文档。