资源描述
基于迈克尔逊干涉仪的干涉型次声监测装置基于迈克尔逊干涉仪的干涉型次声监测装置参赛学生:参赛学生:指导老师:指导老师: II摘要:摘要:在现今信息领域中次声波是值得研究的一种信号,由于次声波的频率低的特殊性,所以获取次声的相关信息需要相应的检测装置。干涉式次声监测装置创造性的结合了简谐振动、迈克尔逊干涉原理以及多普勒效应,利用普通大学实验室均具有的迈克尔逊干涉仪进行改装,将其一臂反射镜改装为带反射镜的振动膜片,膜片感应声压变化从而发生振动,进而改变干涉仪两臂光程差,最终导致干涉光斑强度发生变化从而获得次声波物理量。关键词:关键词:次声波 迈克尔逊干涉仪 光电效应 matlab目目 录录第一章第一章 引言引言.- 1 -1.1 环境次声监测装置的研制背景环境次声监测装置的研制背景.- 1 -1.2 次声传感器的发展与现状次声传感器的发展与现状.- 1 -1.3 干涉式环境次声监测装置的研制目的及意义干涉式环境次声监测装置的研制目的及意义.- 3 -第二章第二章 干涉式次声传感器的理论与原理干涉式次声传感器的理论与原理.- 4 -2.1 声学测量的基本理论声学测量的基本理论.- 4 -2.2 振动膜片运动原理振动膜片运动原理.- 6 -2.3 迈克尔逊干涉仪原理迈克尔逊干涉仪原理.- 6 -2.4 干涉式次声监测装置原理干涉式次声监测装置原理.- 8 -2.5 本章小结本章小结.- 10 -第三章第三章 环境次声监测装置框架与实现环境次声监测装置框架与实现.- 11 -3.1 系统系统框框架架.- 11 -3.2 系统实现系统实现.- 11 -第四章第四章 干涉式次声传感器的仿真分析干涉式次声传感器的仿真分析.- 15 -4.1 实验仿真实验仿真.- 15 -第五章第五章 实验数据处理与分析实验数据处理与分析.- 20 -5.1 实验数据实验数据.- 20 -5.2 波形分析波形分析.- 21 -第六章第六章 总结总结.- 23 -附录:附录:.- 24 -基于迈克尔逊干涉仪的干涉式次声监测装置- 1 -第一章第一章 引言引言1.1 环境次声监测装置的研制背景环境次声监测装置的研制背景通常在声波的频段划分中,把振动体所发出的频率低于 20Hz 的声音称作次声,正常人耳听不到这些声音,所以,次声长期以来没有引起人们的注意。但次声普遍存在于各种工业环境、交通环境、自然环境及生活环境中,它传播远、衰减小、穿透力强,一般的障碍物很难将次声挡住,而且随传播距离的增加衰减极小,在不同的媒介中均是如此。由于这些特性,次声的应用越来越广。例如监测地震的发展状况、监测固体内部瑕疵、甚至可以利用人体内脏器官共振频率在次声频率范围内的特点制造次声武器等。次声波的特性决定了其巨大的发展前景,利用次声的前提是掌握次声波的各种特性,环境次声监测装置的研制为次声的发展奠定了有力的基础。1.2 次声传感器的发展与现状次声传感器的发展与现状早在 19 世纪,人们就已记录到了自然界中一些偶发事件(如大火山爆发或流星爆炸)所产生的次声波。其中最著名是 1883 年 8 月 27 日,印度尼西亚的喀拉喀托火山突然爆发,它产生的次声波传播了十几万公里,当时用简单微气压计都可以记录到它。在理论方面,最早在 1890 年,英国物理学家瑞利就开始了大气振荡现象的研究。第一次世界大战前后,火炮和高能炸药的出现,提供了较大的声源,促进了对次声在大气中传播现象的了解。在 20 世纪 20 年代还进行了高层大气的温度和风对次声传播影响的研究,并建立了探测高层大气的简单声学方法,为此还研制了灵敏度更高的微气压计、热线式次声传声器。30 年代发展了电容次声传声器。40 年代后,利用声波在大气中的传播速度与温度的均方根成正比关系的原理,提出了火箭-榴弹次声法测定高层大气温度和风速的方法,发展了次声接收和定位的新技术。核武器的发展对次声学的建立起了很大的推动作用,使得次声接收、抗干扰方法、定位技术、信号处理和次声传播等方面部有了很大发展。核爆炸会形成强大的基于迈克尔逊干涉仪的干涉式次声监测装置- 2 -次声源,它产生的次声波在大气中可以传插得非常远,次声方法曾成为探测大气中核爆炸的主要方法之一。为此建立了许多次声观察站,进行了长时期连续记录和观察。人们还发现了大气中存在许多自然次声源,对它们的发声机制和特性进行了初步的了解。目前应用较为广泛的次声传感器主要为电容式次声传感器及光纤式次声传感器。1.2.1 电容式次声传感器电容式次声传感器 电容式次声传感器利用调幅原理测量换能用传声器的慢变化,将次声传感器中的声顺元件作为电容电桥的一臂,输入端接一等幅高频电压,当次声波作用于膜片上时,膜片随着声压的变化而产生位移,引起平板电容器电容量的变化,从而改变了电容电桥的平衡,输出端即可得到受电容变化调制的调幅波,调幅波经电压放大后送入调制解调器,就可得到低频电信号,实现对次声波的检测。电容型的不足之处是: 要求结构精细,设计严密,选材严格,特别是加工精度非常高,主要零件都要求超精加工。此外,为保证长期稳定性,要选用最好的绝缘体,系统内还要求超高洁净度等。而且这类电参量传感器抗电磁干扰能力差,在易燃易爆环境下有潜在危险使其性能和使用受到很大限制。1.2.2 光纤式次声传感器光纤式次声传感器光纤式传感器基于独特的光纤传感技术,一个光束通过光纤被传送到硅膜上,声音信号引起薄膜振动改变被反射的光的特征,然后被转换为电信号。它具有低于1 个赫兹和高达 10,000 赫兹的频率响应范围。而且 FOM 具有高的信噪比,谐波失真(THD)的频率带宽,能够在复杂的环境中使用等优点。由于光纤式传感器是一种无源器件并且不含电子或金属成分,它对电磁干扰反应不起任何的作用。但光纤式传感器对技术要求较高,性价比低。1.3 干涉式环境次声监测装置的研制目的及意义干涉式环境次声监测装置的研制目的及意义次声波的特性决定了其巨大的发展前景,为了让学生掌握次声各参数的测量,基于迈克尔逊干涉仪的干涉式次声监测装置- 3 -需设计出一种便于教学演示和学生操作且具有较高性价比的次声检测装置。通过对现有次声传感器的综合比较,它们均存在着不便于教学演示、制作工艺复杂以及性价比较低等缺点。为此,我们设计了以迈克尔逊干涉仪、振动膜片、激光、光电二极管为基础元件的干涉式次声传感器。干涉式次声传感器利用实验室现有的迈克尔逊干涉仪加以改装,物理思想清晰易懂,易于实现,在具有较高精度的同时又便于教学演示及学生动手操作,具有重要的研究意义。基于迈克尔逊干涉仪的干涉式次声监测装置- 4 -第二章第二章 干涉式次声传感器的理论与原理干涉式次声传感器的理论与原理2.1 声学测量的基本理论声学测量的基本理论2.1.1 频率、波长和声速频率、波长和声速次声是频率低于可听声频率范围的声。它的频率范围大致为 10-5Hz 20Hz,波长较长,传播距离远。它的产生和声波相同,都是由于物质(或物体)的机械性振动。次声在本质上与可听声和超声没有区别,空气中的传播速度为 340m/s。其频率(f) 、波长()和声速(v)满足关系式:f2.1.2 声强声强声强是衡量声音强弱的一个物理量。声场中,在垂直于声波传播方向上,单位时间内通过单位面积的声能称做声强,即单位面积上所承受的声波的功率数。声强常以 I 表示,单位为(w/)。声强实质是声场中某点声波能量大小的度量,声场中2m某点声强的大小与声源的声功率、该点距声源的距离、波阵面的形状及声场的具体情况有关。通常距声源愈远的点声强愈小,若不考虑介质对声能的吸收,点声源在自由声场中向四周均匀辐射声能时,距声源 r 处的声强为24 rWI式中 I 为距点声源为 r 处的声强(w/);W 为点声源功率(w) 。若 S 表示包围2m声源的封闭面面积,声功率 W 和声强 I 的关系为dsIWsn式中是声强在微元面积 dS 法线方向的分量。nI基于迈克尔逊干涉仪的干涉式次声监测装置- 5 -2.1.3 声压声压目前,在声学测量中,直接测量声强较为困难,故常用声压来衡量声音的强弱。声波在大气中传播时,引起空气质点的振动,从而使空气密度发生变化。在声波所达到的各点上,气压时而比无声时的压强高,时而比无声时的压强低,某一瞬间介质中的压强相对于无声波时压强的改变量称为声压,记为 p(t),单位是 Pa。声音在振动过程中,声压是随时间迅速起伏变化的,因为瞬时声压有正负值之分,所以有效声压取瞬时声压的均方根值。dttpTpTT02)(1式中是 T 时间内的有效声压,p(t)为某一时刻的瞬时声压。通常所说的声压,若Tp未加说明,即指有效声压,若,分别表示两列声波在某一点所引起的有效声1p2p压,该点迭加后的有效声压可由波动方程导出,为2221PPpT声压是声场中某点声波压力的量度,影响它的因素与声强相同。并且,在自由场中多声波传播方向上某点声强与声压、介质密度 存在如下关系2pI 2.1.4 声压级与声强级声压级与声强级声压和声强一样,都是采用以 10 为底的对数标度来度量的,即声压级与声强级,单位都是分贝(dB) 。声压级的符号是,定义为pL0202lg20lg10ppppLeeP式中,为待测声压的有效值;为基准声压,是频率在 1000Hz 时,人耳能听到ep0p的声压。在空气中,其值定为。Pa5102基于迈克尔逊干涉仪的干涉式次声监测装置- 6 -声强级的符号为 LI,其定义为0lg10IILI式中为待测光强;为基准声强。空气的特性阻抗 ,此时 I0I30/400msNc 。2120/10mWI可以证明,声压级和声强级在数值上是基本相等的。2.2 振动膜片运动原理振动膜片运动原理 当空间中次声波为单一频率的声波时,其瞬时声压为tptpsin)(0膜片在次声波驱动下所受驱动力StpStpFsin)(0其中是膜片的等效受力面积。S膜片横向加速度tmSpmFxasin0 所以,对加速度二次积分解得膜片运动方程为tmSpxsin20膜片振幅为:20mSpA 2.3 迈克尔逊干涉仪原理迈克尔逊干涉仪原理迈克尔逊干涉仪是一种所谓“增量法”测长的仪器,它是把测量反射镜与被测对象固联,参考反射镜固定不动,当测量反射镜随被测对象移动时,两路光束的光程差即发生变化,干涉条纹也基于迈克尔逊干涉仪的干涉式次声监测装置- 7 -将发生明暗交替变化。若用光电探测器接收,当被测对象移动一定距离时,条纹亮暗交替变化一次,光电探测器输出信号将变化一个周期,记录下信号变化的周期数,便确定了被测长度。迈克尔逊干涉仪的光路原理图如图 2.1 所示,扩展光源 S 发出的光波被分光镜分G成两路,构成互相垂直的两臂,其中一束光经参考反射镜反射,透过进入接收1MG系统,另一束光透过补偿板,由测量反射镜反射后原路返回,在经反射后C2MG进入接收系统,与另一束光干涉。如果画出经所成的镜像,则上述干涉叠2MG2M加可等效为由和形成的空气薄膜的两束光干涉。1M2M图中光电探测器 D 接收的光强为:LIIIII2cos22121式中、分别为测量光束和参考光束光强; 为两光束之间的光程差; 为激光1I2IL光波中心波长。当测量反射镜移动长度 L 时,测量光束与参考光束两光束之间的光程差变为2M此,此时光电探测器接收的光强信号为:nLL2)2(cos22121nLLkIIIII式中;n 为干涉仪测量臂在相应介质中的介质折射率,空气折射率约为 1。2k当被测物理量发生变化时,会使测量反射镜产生相应的位移变化,这样光电探测器所接收的光强信号就会发生改变,通过检测所接收光强信号改变量的多少就可得到被测物理量的变化信息。基于迈克尔逊干涉仪的干涉式次声监测装置- 8 -2.4 干涉式次声监测装置原理干涉式次声监测装置原理1M2M光电二级管本装置的实现是通过对实验室现有的迈克耳孙干涉仪进行改装,将原参考反射镜改装为带有反射镜面的振动膜片,作为次声感应模块。固定位置,使作为2M1M1M参考反射镜。因为干涉光强,假定迈克尔逊干涉仪中两臂光强LIIIII2cos22121,令,则两束单色光的相干叠加后强度随相位差的变化为21II 2102III)2cos1 ()(0LILI当振动膜片在次声波驱动下振动时,光程差xL2代入上式)4cos1 ()()(0 xILIxI装置利用光电二级管接收光强变化,输出电信号正比于所接收到的光强,输出信号经信号放大、电压偏移、低通滤波后,随振动膜片位置变化为VV)4cos(0 xVV 此时,输出信号 V 与时间 t 关系为激光光基于迈克尔逊干涉仪的干涉式次声监测装置- 9 -)sin4cos()(0tAVtV设输出信号 V 频率为,则有VtAtVsin4两边对时间求导,得tAVcos4由上式可知,当膜片振动频率不变时,为随时间做余弦变化的周期函数,在膜片振动V一个周期内,出现两次极大值/极小值,两次极大值/极小值之间时间间隔即为振动V膜片振动半周期。膜片位置从变化到的过程中,设输出信号极大值出现次数为,即AAN从到的过程中的次数为,则有AxAx 1)4cos(xNNA224所以4NA 在计算出膜片振动周期后,即可计数得到一个周期内电压峰值出现次数。N又瞬时声压与振动膜片振幅的关系为20mSpA 则SNmp420单一频率的声波,其声压按正弦规律变化tptpsin)(0有效声压基于迈克尔逊干涉仪的干涉式次声监测装置- 10 -SNmpPT822220声强vSNmPIT22242232一般计算中取空气的特性阻抗3/400msNv2.5 本章小结本章小结本章主要论述了声波频率、声强、声压与改装后迈克尔逊干涉仪振动膜片振动间的关系,推导出次声波频率与测得电信号频率的关系式,为tAVcos4V随时间做余弦变化的周期函数,在膜片振动一个周期内,出现两次极大值/极小值,两V次极大值/极小值之间时间间隔即为次声波半周期。确定次声波周期后,即可得声强与一个周期内峰值电压出现次数的关系式为。NvSNmPIT22242232基于迈克尔逊干涉仪的干涉式次声监测装置- 11 -第三章第三章 环境次声监测装置框架与实现环境次声监测装置框架与实现3.1 系统框架系统框架本装置主要由干涉式次声传感器和信号处理电路两大部分组成。当环境中有次声到达,次声波声压的变化驱动作为迈克尔逊干涉仪一臂的膜2M片振动,引起参考光束与测量光束光程差变化,从而导致光电二级管接收到的光强发生变化。信号即完成了“声波-干涉光强-电信号”的转化,此信号可能含有其他频率段(非次声段)的光信号,通过低通滤波器后再次过滤高频噪音信号后,将电信号经过两级放大后二值化模块输进单片机处理,从而显示出该次声的频率和强度。光电二极管LPLaserMCULCD信号处理电路信号处理电路3.2 系统实现系统实现3.2.13.2.1 干涉式次声传感器干涉式次声传感器实验装置由激光器、迈克耳孙干涉仪、振动膜、平面镜以及光电二极管组成。基于迈克尔逊干涉仪的干涉式次声监测装置- 12 -3.2.2 处理电路处理电路考虑到接收的声音信号里包括了高频谐波,因此通过光电二极管转换后的电信号也包括这些高频声信号的分量。光电二极管检测信号电路为了屏蔽这些分量对待测量的次声信号的影响,在光电转换模块后通过一低通滤波网络将高次谐波滤除,得到转换为相对比较纯的次声信号。基于迈克尔逊干涉仪的干涉式次声监测装置- 13 -从光电二极管出来的电信号很弱,经检测峰峰值在 20mV 左右,进行信号的接收和处理就必须对信号进行放大。这里我们选用的放大模块是低噪声高精度运算放大器 OP07,由于 OP07 具有非常低的输入失调电压(最大为 25V) ,同时具有极低的输入偏置电流(2nA)和开环增益高(300V/mV)的特点,这种低失调、高开环增益的特性使得 OP07 特别适用于我们这里的高增益的测量设备和放大传感器的微弱信号。这里我们采用两级放大,第一级主要负责放大,把信号放大至峰值在 5V,第二级主要负责偏压,Op07 的单电源供电时,在正输入端 3 脚接一可变电压值使的对波形整体平移,即把放大后的电信号平移到零线以上,再利用施密特触发器原理,放大后的信号通过两个非门,即可把模拟信号转化为数字信号,类似于 A/D 转换芯片。采用此种电路,省略了价格相对较高的 AD 转换芯片,也简化了程序的编写。电路模拟实现如下:输入信号波形 : 放大后信号波形: 基于迈克尔逊干涉仪的干涉式次声监测装置- 14 -平移后信号波形: (4)二值化后信号波形: 3.2.3 单片机及显示屏单片机及显示屏利用 STC89C51 系列单片机的信号处理能力,通过程序将上面二值化后的数字信号进行采集和处理。用来显示监测到的声信号的频率和强度等声信息(信号处理源程序见附录) ,基于 1602 液晶显示和在编程方面的优越性,我们选取他作为显示模块。STC89C51 单片机数据处理及 1602 液晶显示电路基于迈克尔逊干涉仪的干涉式次声监测装置- 15 -第四章第四章 干涉式次声传感器的仿真分析干涉式次声传感器的仿真分析4.1 实验仿真实验仿真 在理论的基础上,利用 MATLAB 强大的计算和绘图功能,通过计算机对干涉式次声传感器进行仿真。当给定次声波的频率以及声强级时,利用 MATLAB 仿真,编制如下程序,得到膜片振幅与声波频率、声强关系: r=25e-3; %膜片半径s=pi*r2; %膜片面积m=24.73e-3; %膜片质量f=1:0.1:20; %次声波频率范围p=70:0.1:100; %声强级for i=1:191t(i)=1/f(i);end;T,P=meshgrid(t,p);x=(2e-5)*s*10.(P/20).*T.2/(4*pi2*m);meshz(T,P,x);xlabel(次声波周期);ylabel(次声波声强级);zlabel(膜片振幅);colormap(gray(255);基于迈克尔逊干涉仪的干涉式次声监测装置- 16 -用 L 表示声强级,f 表示振动频率,GI 表示光强,V 表述输出电压时,根据第二章理论分析,编制的主程序如下:l=650e-9; %氦氖激光波长r=25e-3; %振动膜片半径m=24.73e-3; %振动膜片质量pv=400; %空气特性阻抗I0=1e-12; %基准声强L=input(声强级=); %次声波声强级f=input(频率=); %次声波频率I=I0*10(L/10); %声强PT=sqrt(I*pv); %有效声压P0=PT*sqrt(2); %瞬时声压峰值 t=1:1:5000; %时间设置为 0.5s基于迈克尔逊干涉仪的干涉式次声监测装置- 17 -P=P0*sin(2*pi*f*t/10000); %瞬时声压表达式A=P0*pi*r2/(m*(2*pi*f)2); %次声波驱动下膜片振幅x=A*sin(2*pi*f*t/10000); %膜片振动表达式GI=cos(4*pi*x/l); %光强表达式V=255*GI; %输出电压表达式subplot (4,1,1),plot(t/10000,P),ylabel(声压 P/Pa),title(瞬时声压与时间变化关系图);subplot (4,1,3),image(t/10000,0,V);ylabel(光强);colormap(gray(255);title(光强与时间变化关系图像);subplot (4,1,2),plot(t/10000,x);ylabel(位移 x/m);title(振动膜片与时间变化关系图);subplot (4,1,4),plot(t/10000,GI),ylabel(输出电压 V/V),xlabel(时间 t/s);title(输出电压与时间变化关系图) 将主程序于 MATLAB 中编制为 M 文件,将声强级固定为 80dB,输入频率分别为5、10、15、20Hz 时,得到图形如下:I=80dB;f=5Hz基于迈克尔逊干涉仪的干涉式次声监测装置- 18 -I=80dB;f=10HzI=80dB;f=15Hz基于迈克尔逊干涉仪的干涉式次声监测装置- 19 -I=80dB;f=20Hz通过上面四组声强级相同、频率不同的次声波驱动下的波形,可清晰看到光强随时间变化的图像,其电压输出疏密有致,且与次声波声压一一对应。从理论上证明了干涉型次声传感器的可行性。基于迈克尔逊干涉仪的干涉式次声监测装置- 20 -第五章第五章 实验数据处理与分析实验数据处理与分析5.1 实验数实验数据据由于实验室缺乏标准次声发生器,故采用低频正弦信号发生器驱动扬声器用以发生次声信号。在 7Hz 以下次声信号失真较为严重,因而无法验证干涉型次声传感器在 7Hz 以下的测量准确性,但在可测范围内(720Hz) ,本装置均可得到准确度较高的数据。将正弦信号发生器输出波形峰峰值固定为 10V,改变输出频率,测得数据如下:驱动频率(Hz)输出频率(Hz)声强级(dB)频率误差7.07.10.37215.71%7.57.30.573110.67%8.08.30.27816.25%8.59.00.27928.24%9.09.00.1811.11%9.59.40.68017.37%1010.40.38417.00%10.510.80.884110.48%1111.30.38415.45%1212.30.48715.83%1313.40.48616.15%1414.40.59016.43%1515.01.19017.33%1616.60.39315.63%1717.40.69315.88%1818.20.39312.78%1919.00.99714.74%基于迈克尔逊干涉仪的干涉式次声监测装置- 21 -2021.00.79618.50%2221.21.595110.45%由上表可知,实测中测量数据最大误差约为 10.48%,考虑到扬声器并非正规次声发生器,其输出波形本身具有一定程度上的失真,且由于本装置振动膜片、光路调节上存在的误差,故本装置精确度还有极大的提升空间。5.2 波形分析波形分析 以下图形为实际测试中各探测节点的输出波形。实际测试中,电路在二极管输出、放大电路输出和信号二值化输出处都设有测试节点,方便信号测试。图图 5 52 21 1图 521 中,上方为次声驱动正弦信号,下方光电二极管输出波形。输出信号周期疏密有致,与 matlab 仿真结果基本相同,从而证明了干涉式次声传感器在实际上是可行的。但此时输出信号中含有噪音成分,且信号不易处理,故设计了一系列的处理电路对波形进行修正。基于迈克尔逊干涉仪的干涉式次声监测装置- 22 -图图 5 52 22 2图 522 为光电二极管输出信号经过处理电路前后波形对比,其中,上方为经过处理电路后输出波形,可以看到,经过处理电路后,方波疏密极为清晰,便于后续电路处理。图图 5 52 23 3图 523 中,下方为次声驱动正弦信号,上方为经过处理电路后光电二极管输出波形。此时,输出方形疏密与驱动波形对应已十分清晰,只需利用单片机进行处理即可得到驱动次声波的各项物理参数。基于迈克尔逊干涉仪的干涉式次声监测装置- 23 -第六章第六章 总结总结干涉式次声监测装置作为省实验设计大赛参选作品,为凸显物理原理、便于教学演示及学生重复本实验,故摒弃了更为注重电路设计的电容式次声传感器,创造性的结合了简谐振动、迈克尔逊干涉原理以及多普勒效应,利用普通大学实验室均具有的迈克尔逊干涉仪进行改装,将其一臂反射镜改装为带反射镜的振动膜片,膜片感应声压变化从而发生振动,进而改变干涉仪两臂光程差,最终导致干涉光斑强度发生变化从而获得次声波物理量。本实验物理思想清晰易懂,装置改装简单易行,精度较高且不受电磁干扰影响,适合作为大学实验在普通高校进行教学推广。参考文献:参考文献:【1】赵凯华,新概念物理教程光学 M.北京:高等教育出版社,2004;【2】毛欲民,洪家平,基于 MATLAB 的杨氏双缝干涉实验仿真 J,湖北师范学院学报,2007;【3】孙艳玲,迈克尔逊干涉原理在表面形貌测量中的应用研究J.,传感器与微系统, 2006; 【4】邵静波,王玉兰,洪光,张云秋,半导体激光自混频干涉法测振动速度J,物理实验, 2003;【5】张淼,唐芳,李华,基于迈克耳孙干涉仪的激光多普勒实验仪及其实验J,物理实验,2007;基于迈克尔逊干涉仪的干涉式次声监测装置- 24 -附录:附录:基于STC89C51 次声信号处理源程序:LCM_RS EQU P3.0LCM_RW EQU P3.1LCM_E EQU P3.2LCM_DATA EQU P1org 0000hsjmp startorg 0003h ;ext0retiorg 000bh ; t0retiorg 0013h ;ext1retiorg 001bh ;t1retiorg 0023h ;ti/riretiorg 002bh ;t2retistart: mov sp,#10hmov p2,#0ffhLCALL DL10MSMOV A,#38HLCALL WRITE_COMMOV A,#0FHLCALL WRITE_COMMOV A,#01HLCALL WRITE_COM MOV TMOD,#55H ; T0 , T1 16 digit counterSETB EAclr tr0clr tr1START_1:JB P2.1,$基于迈克尔逊干涉仪的干涉式次声监测装置- 25 -mov r1,#40h ; 40hffh 存放数据LOOP_1: MOV TH0,#00HMOV TL0,#00Hsetb et0SETB TR0jnb p2.0,low_fLCALL DL2500ussjmp high_flow_f: lcall dl10mshigh_f: clr et0CLR TR0MOV A,TL0mov r1,ainc r1CLR Ccjne r1,#0ffh,aaa1aaa1: jc loop_1MOV r1,#40HLCALL ADD_4 MOV 33H,ALOOP_2:INC R1LCALL ADD_4CLR CCJNE A,33H,AAA2AAA2:JC AAA3 MOV 33H,AAAA3: CLR CCJNE r1,#0f7H,AAA4AAA4: JC LOOP_2 ;search the largest oneMOV A,33HMOV B,#0AHDIV ABMOV R4,AADD A,R4MOV R4,AMOV A,33HCLR CSUBB A,R4MOV 30h,A ; 计数开始/结束 的判断值 基于迈克尔逊干涉仪的干涉式次声监测装置- 26 -MOV r1,#40HLCALL START_END MOV 31H,r1MOV 32h,34h ;start countingLOOP_END: LCALL START_ENDCLR CMOV A,r1SUBB A,31h CJNE A,#08H,QQQ2QQQ2: JNC LOOP_DONECLR CMOV A,34hCJNE A,32H,QQQ3QQQ3:JC LOOP_ENDMOV 31H,r1MOV 32H,34HSJMP LOOP_END LOOP_DONE: MOV B,A ; stop countingMOV R5,AMOV A,#0C8HDIV ABMOV 33h,Aclr ccjne a,#05h,to_highto_high: jc ee_addsetb p2.0 ee_add: add a,33hmov 33h,amov r7,bmov a,r5mov b,#0ahdiv abmov b,amov a,r7add a,r7div abmov r7,a基于迈克尔逊干涉仪的干涉式次声监测装置- 27 -mov a,33h;mov 39h,38h ; 与前 4 次数值取平均 再显示mov 38h,37hmov 37h,36hmov 36h,35hmov 35h,aadd a,36hadd a,37hadd a,38hadd a,39hmov b,#05hdiv ab;mov b,#0ahdiv abmov r5,amov r6,b clr ccjne r7,#0ah,eeeeee:jc ee_on inc r6 ; R5 R6 . R7 HZ mov r7,#00hee_on: mov a,#01h ;显示 频率lcall write_commov a,#81hlcall write_commov a,#13hlcall write_datamov a,#14hlcall write_datamov a,#16hlcall write_dataMOV A,R5LCALL WRITE_DATAMOV A,R6LCALL WRITE_DATAMOV A,#10HLCALL WRITE_DATAMOV A,R7LCALL WRITE_DATAmov a,#16hlcall write_data基于迈克尔逊干涉仪的干涉式次声监测装置- 28 -MOV A,#11HLCALL WRITE_DATAMOV A,#12HLCALL WRITE_DATAmov a,33hlcall check_lgf ;查表: 40*(log f) +20*(lg n) +10*(lg 7)mov r2,aDEC r1MOV A,r1MOV R5,Amov 33h,#00hPOS_NUM: MOV A,R5DEC r1clr cADD A,r1jnc pos_onmov 33h,#19hpos_on: MOV R5,AMOV A,r1CLR CCJNE A,31H,POS_1POS_1: JNC POS_NUMmov a,r5mov b,#0ahdiv abadd a,33hlcall check_lgnadd a,r2add a,#09h ; 声波强度值;mov b,#03h ;与前 3 次值平均div abmov 3ch,3bhmov 3bh,3ahmov 3ah,aadd a,3bhadd a,3ch;mov b,#64hdiv abmov r5,a基于迈克尔逊干涉仪的干涉式次声监测装置- 29 -mov a,bmov b,#0ahdiv abmov r6,amov r7,bMOV A,#0C1H ; I = R5 R6 R7 LCALL WRITE_COMmov a,#15hlcall write_datamov a,#14hlcall write_datamov a,#16hlcall write_dataMOV A,R5LCALL WRITE_DATAMOV A,R6LCALL WRITE_DATAMOV A,R7LCALL WRITE_DATAmov a,#16hlcall write_datamov a,#0dhlcall write_datamov a,#0bhlcall write_dataLJMP START_1;ADD_4: MOV A,#00H ;连续 20 ms 内的脉冲个数ADD A,r1INC r1ADD A,r1INC r1ADD A,r1INC r1ADD A,r1INC r1ADD A,r1INC r1ADD A,r1INC r1ADD A,r1INC r1基于迈克尔逊干涉仪的干涉式次声监测装置- 30 -ADD A,r1DEC r1DEC r1DEC r1DEC r1DEC r1DEC r1DEC r1RET;START_END:NOP ;判断 是否 开始/结束 LOOP_3: LCALL ADD_4CLR CINC r1CJNE A,30H,AAA55AAA55: JC AAA66 SJMP LOOP_4AAA66: CLR CCJNE r1,#0f7h,AAA77AAA77: JC LOOP_3 LCALL OUT_OF SJMP out_retLOOP_4: MOV 34h,ALCALL ADD_4INC r1CLR CCJNE A,34H,QQQ1QQQ1: JNC LOOP_4out_ret: RET;OUT_OF: clr p2.0 ;测不到结束信号 显示 Out of range!mov a,#01hlcall write_comMOV A,#80HLCALL WRITE_COMMOV DPTR,#LINE2WRITE_NUM: LCALL CHECK_BUSYclr amovc a,a+dptrMOV LCM_DATA,ACLR LCM_ESETB LCM_RSCLR LCM_RW基于迈克尔逊干涉仪的干涉式次声监测装置- 31 -SETB LCM_ENOPCLR LCM_EINC DPTRCLR CCJNE A,#21H,WRITE_NUMout_loop: mov th0,#00h ;如果 10MS 内 测到有 4 个以上脉冲 返回继续测量mov tl0,#00hsetb et0setb tr0lcall dl10msclr et0clr tr0mov a,tl0clr ccjne a,#04h,out_backout_back: jc out_loopRETLINE2: DB 4FH,75H,74H,20H,6FH,66H,20H,72H,61H,6EH,67H,65H,21H;check_lgf: mov dptr,#line_f ; 40 lg f 数值表movc a,a+dptrretline_f:db 00h,00h,0ch,12h,18h,1ch,1fh,22h,24h,26h,28h,2ah,2bh,2dh,2eh,2fh,30h,31h,32h,33h,34h,35h,36h,37h,37h,38h,39h,39h,3ah,3ah,3bh,3bh,3bh,3bh,3ch,3ch,3ch,3ch,3dh,3dh,3dh,3eh;check_lgn: mov dptr,#line_lgn ;20 lg n 数值表movc a,a+dptrretline_lgn: db 00h,14h,1ah,1eh,20h,22h,24h,25h,26h,27h,28h,29h,2ah,2ah,2bh,2ch,2ch,2dh,2dh,2eh,2eh,2eh,2fh,2fh,30h,30h,31h,31h,32h;WRITE_COM: LCALL CHECK_BUSY ;1602 写指令MOV LCM_DATA,A CLR LCM_ECLR LCM_RSCLR LCM_RWSETB LCM_ENOPCLR LCM_ERET基于迈克尔逊干涉仪的干涉式次声监测装置- 32 -;CHECK_BUSY: PUSH ACC ;1602 测忙子程序BUSY_LOOP: MOV P1,#0FFHCLR LCM_ESETB LCM_RWCLR LCM_RSSETB LCM_EMOV A, LCM_DATAJB ACC.7,BUSY_LOOPPOP ACCRET;WRITE_DATA:LCALL CHECK_BUSY ;1602 写数据mov dptr,#line1movc a,a+dptrMOV LCM_DATA,ACLR LCM_ESETB LCM_RSCLR LCM_RWSETB LCM_ENOPCLR LCM_ERETline1:db 30h,31h,32h,33h,34h,35h,36h,37h,38h,39h,41h,42h,43h,44h,45h,46h,2eh,48h,5ah,46h,3dh,49h,20h ;dl2500us: mov r6,#05h ;2.5MS 延时dl2500us_1: mov r7,#0fahdl2500us_2: djnz r7,dl2500us_2 djnz r6,dl2500us_1 RET; ;10ms 延时dl10ms: mov r6,#14hdl10ms_1: mov r7,#0fahdl10ms_2: djnz r7,dl10ms_2 djnz r6,dl10ms_1 RET;end
展开阅读全文