Tabla de contenido
En cuarto lugar, el análisis de la conclusión de la simulación.
1. Base teórica
La tecnología de interferometría óptica es una tecnología de medición basada en el principio de la interferencia de ondas de luz. Es diferente de otras tecnologías de medición de imágenes ópticas. Además de una mayor sensibilidad y precisión de medición, también tiene las características de medición sin contacto. Causa daños en la superficie , por lo tanto, la aplicación de la interferometría óptica es muy extensa. La transformada de Hilbert y la teoría de la fase instantánea son un método más comúnmente utilizado.
Por lo tanto, la transformada de Hilbert de la señal puede considerarse como la salida de la señal después de pasar por un filtro con una respuesta de impulso unitario de . Después de que la señal se somete a la transformada de Hilbert, su espectro de amplitud, espectro de potencia y función de autocorrelación permanecen sin cambios. La transformada de Hilbert de la señal es equivalente a un desfasador. La fase de la parte de frecuencia positiva de la señal cambia en -90°, y la frecuencia negativa Parte del cambio de fase en 90°.
La señal analítica z(t) se puede construir a partir de la señal de tiempo continua S(t) y su transformada de Hilbert H(S(t)):
De la expresión z(t) de la señal analítica anterior, s(t) La instantánea fase de , es decir, la fase instantánea es:
Por lo tanto, la señal analítica se puede construir realizando la transformada de Hilbert en la señal OFSMI, y la fase instantánea de la señal OFSMI se puede obtener calculando el arco tangente de la señal analítica.
El contenido principal del algoritmo de detección de franjas enteras por transformada de Hilbert es: después de eliminar el componente DC de la señal OFSMI, se realiza la transformada de Hilbert para construir una señal analítica, y la fase instantánea del paquete se obtiene calculando el arco tangente de la señal analítica, y se detecta la fase instantánea del paquete.Todos los puntos abruptos de fase, y determinar la dirección de desplazamiento del reflector externo, y finalmente eliminar los puntos de pseudo-raya para obtener todos los puntos de franja enteros. El flujo del algoritmo de detección de franjas enteras transformadas de Hilbert se muestra en la figura:
2. Antecedentes del caso
La tecnología de interferometría óptica es una tecnología de medición basada en el principio de la interferencia de ondas de luz. Es diferente de otras tecnologías de medición de imágenes ópticas. Además de una mayor sensibilidad y precisión de medición, también tiene las características de medición sin contacto. Causa daños en la superficie, por lo tanto, la aplicación de la interferometría óptica es muy extensa.
En el proceso de investigación de la interferometría óptica tradicional, se descubrió que la retroalimentación óptica externa del láser causaría el efecto de interferencia de automezcla de retroalimentación óptica (OFSMI), que afectaría las características de salida del láser, lo que daría como resultado un ensanchamiento de la línea espectral, retroalimentación óptica y retroalimentación óptica Los fenómenos como el ruido y la fragmentación de la coherencia pueden causar daños graves al sistema láser, por lo que las personas siempre intentan eliminar la influencia causada por la retroalimentación óptica externa del láser al principio. Con más investigación, se encontró que la señal OFSMI contiene la información de los parámetros propios del láser y alguna información sobre el movimiento del reflector externo, como el desplazamiento, la velocidad, la aceleración, etc. Por lo tanto, las personas cambiaron de eliminar la influencia de la retroalimentación óptica a Usando retroalimentación óptica para obtener información relevante, la investigación de OFSMI ha surgido gradualmente y sus principales aplicaciones se encuentran en los campos de estrechamiento de líneas espectrales y medición de OFSMI.
El efecto OFSMI se refiere al fenómeno de que después de que un reflector externo refleja o dispersa la luz de salida del láser, parte de la luz se retroalimenta al resonador láser y la luz de retroalimentación interfiere con la luz en la cavidad, modulando así la salida. potencia óptica del láser.
3. Programa MATLAB
%设置相关参数
close all;clc;clear all
%phi_0=am0+am*sin(2*pi*ft/fs*t1);
am=19; %am=4*pi*L/lanbuda0
am0=30; % am0=4*pi*L0/lanbuda0
ft=200; %设置振动频率
fs=40000; %设置采样频率
n=400; %设置采样点数
alfa=5; %设置激光器线宽展宽因数
c=0.7; %设置光反馈强度
[x,g,y]=spain_ofsmi_data(alfa,c,am,am0,ft,fs,n);%%x----fai0, g---自混合信号, y---- fai-f
save ofsmi g; %将g保存到ofsmi.mat文件中
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%画图
figure(1)
subplot(3,1,1);plot(x);title('无光反馈时的外腔相位');ylabel('fai_0(n)/rad');grid on;%axis([-inf inf 290 340]);
subplot(3,1,2);plot(y);title('有光反馈时的外腔相位alfa=3;c=4;');ylabel('fai_f(n)/rad');grid on;
subplot(3,1,3);plot(g);title('SMI信号');xlabel('采样点数n');ylabel('g(n)的振幅');grid on;%legend();
F2 = hilbert(g);
xr = real(F2);
xi = imag(F2);
Faif_ = atan2(xi,xr);%公式8
%根据峰值flag的间隔确定flags变量,用来判断m1,m2的取值
flags = [ones(50,1);-1*ones(100,1);ones(100,1);-1*ones(100,1);ones(50,1)];
flags = [0;flags(1:end-1)];
flag2 = zeros(size(Faif_));
for i = 2:length(Faif_)-1
if i <= 51;
if g(i)<g(i-1) & g(i)<g(i+1)
flag2(i)=1;
end
end
if i <= 151 & i>51
if g(i)<g(i-1) & g(i)<g(i+1)
flag2(i)=1;
end
end
if i <= 251 & i>151
if g(i)<g(i-1) & g(i)<g(i+1)
flag2(i)=1;
end
end
if i <= 351 & i>251
if g(i)<g(i-1) & g(i)<g(i+1)
flag2(i)=1;
end
end
if i <= 400 & i>351
if g(i)<g(i-1) & g(i)<g(i+1)
flag2(i)=1;
end
end
end
flag2([51,151,251,351])=0;
flag = zeros(size(Faif_));
for n = 2:length(Faif_)
flag(n) = abs([Faif_(n-1)-Faif_(n)]);
end
[pks,locs] = findpeaks(flag,'THRESHOLD',0.5);
locs = locs;
flag3 = zeros(size(Faif_));
flag3(locs) = 1;
indx1 = find(flag2==1);
indx2 = find(flag3==1);
indxs = [];
for i = 1:length(indx1)
if abs(indx1(i)-indx2(i))<=4
indxs(i) = indx2(i);
else
indxs(i) = indx1(i);
end
end
Flag_=zeros(size(flag2));
Flag_(indxs)=1;
figure;
subplot(211);
plot(g);
subplot(212);
plot(flag2,'r');
hold on
plot(flag3,'b');
%依据相位展开原理, 计算真实相位Faif
m1 = 0;
m2 = 1;
Faif(1) = (-1)^m1*abs(Faif_(1)) + 2*pi*m2;
for n = 2:length(flag3)
%判决m1和m2,0/1,1/-1,进行分段处理
if flags(n) == 1
m2 = m2+1*Flag_(n);
if sign(Faif_(n))==1
m1=0;
else
m1=1;
end
end
if flags(n) == -1
m2 = m2-1*Flag_(n);
if sign(Faif_(n))==1
m1=1;
else
m1=0;
end
end
Faif(n) = (-1)^m1*abs(Faif_(n)) + 2*pi*m2;
end
%步骤三:
fai0 = Faif + c*sin(Faif + atan(alfa));
figure;
subplot(311);
plot(g);
ylabel('g(n)的振幅');
subplot(312);
plot(Faif_);
ylabel('Fai_f`');
subplot(313);
plot(fai0);
ylabel('Fai_0');
%计算误差
t1=fai0-mean(fai0);
t2=x-mean(x);
figure;
subplot(211);
plot(t2,'r','linewidth',2);
hold on
plot(t1,'b--','linewidth',2);
legend('真实相位','重构相位');
subplot(212);
plot(t1-t2)
title('error');
axis([0,400,-30,30]);
%%
clear;
close all;
%% 生成自混合信号
am=33;am0=50;ft=200;fs=600000;n=6000 ; alfa=4;c=0.5;
[x,g,y]=spain_ofsmi_data(alfa,c,am,am0,ft,fs,n);
t1=1:n;
t=t1
%t=t1/fs;
p0=3000;m=0.001;
p=p0*(1+m*g);
figure
plot(t1,p,'k');title('自混合信号');xlabel('采样点数');
%% 加高斯白噪声
% sur_add=25;%信噪比
% ps=g*g'/n;
sur_add=30;%信噪比
ps=9*g*g'/n;
pn=ps*10^(-sur_add/10);
noise=randn(1,n);
noise=sqrt(pn)*noise;
p=p+noise;
p1=p;
% figure
% plot(t1,noise);
figure
plot(t1,p,'k');title('自混合信号');xlabel('采样点数');
figure
subplot(2,1,1);plot(t,p,'k');ylabel('P/uw','fontsize',12);gtext('(a)','fontsize',12);
%% 均值滤波
y1=zeros(1,n)
for i=1:12
y1(i)=p(i);
end
for i=13:n-12
y1(i)=(p(i-12)+p(i-11)+p(i-10)+p(i-9)+p(i-8)+p(i-7)+p(i-6)+p(i-5)+p(i-4)+p(i-3)+p(i-2)+p(i-1)+p(i)+p(i+1)+p(i+2)+p(i+3)+p(i+4)+p(i+5)+p(i+6)+p(i+7)+p(i+8)+p(i+9)+p(i+10)+p(i+11)+p(i+12))/25;
end
for i=n-11:n
y1(i)=p(i);
end
p=y1;
% figure
% plot(t1,p,'k');title('自混合信号');xlabel('采样点数'); axis([-inf inf 2995 3003]);
%% 消去直流分量
dif=diff(p);
dif=[0 dif ];
yuzhi=max(dif)*0.6;
for i=1:length(dif);
if abs(dif(i))<yuzhi
dif_th(i)=0;
else
dif_th(i)=dif(i);
end
end
I=find(dif_th);
num=length(I);
z=[1 I n];
setsum=zeros(length(z)-1);
for i=1:length(z)-1
for j=z(i):z(i+1)
if j<z(i+1)
setsum(i)=setsum(i)+p(j);%分段求和
elseif j==z(i+1)
if i==1
for jj=z(i):z(i+1)
ave(jj)=setsum(i)/(z(i+1)-z(i));
end
else
for jj=z(i)+1:z(i+1)
ave(jj)=setsum(i)/(z(i+1)-z(i));
end
end
end
end
end
ave_g=p-ave;
% figure
% subplot(2,1,1);stem(dif);title('SM信号的微分');
% subplot(2,1,2);stem(dif_th);
% figure
% subplot(2,1,1);plot(t,p,'k');ylabel('P/uw','fontsize',13);xlabel('t/s','fontsize',13);title('(a)','fontsize',13')
% subplot(2,1,2);plot(t,ave_g,'k');xlabel('t/s','fontsize',13);ylabel('Po/uw','fontsize',13);title('(b)','fontsize',13)
%% 通过hilbert构造解析形式,检测条纹
F2=hilbert(ave_g);
xr=real(F2);xi=imag(F2);atan=atan2(xi,xr);
freq_ins=diff(atan);
freq_ins=[0 freq_ins ];
for i=1:length(freq_ins);
if freq_ins(i)>=-3
freq_ins_th(i)=0;
else
freq_ins_th(i)=sign(freq_ins(i));
end
end
II=find(freq_ins_th);
no=length(II);
jiange=(II(6)-II(1))/4/3;
for i=2:no
if II(i)<=II(i-1)+jiange;
freq_ins_th(II(i))=0;
end
end
% figure
% subplot(3,1,1);plot(t,atan,'k');title('(a)','fontsize',13');;xlabel('t/s','fontsize',13);ylabel('相位/rad','fontsize',13);
% subplot(3,1,2);plot(t,freq_ins,'k');title('(b)','fontsize',13');;xlabel('t/s','fontsize',13);ylabel('相位微分/rad','fontsize',13);
% subplot(3,1,3);plot(t,freq_ins_th,'k');title('(c)','fontsize',13');;xlabel('t/s','fontsize',13);
%% 确定运动方向
pulsed=-sign(dif);
trans=pulsed.*freq_ins_th;
%% 去掉小数条纹
xiaoshu=zeros(1,n)
for i=1:num-1
if sign(dif_th(I(i+1)))~=sign(dif_th(I(i)))
mm2=round((I(i+1)-I(i))/3);
mm1=round((I(i+1)-I(i))/4);
mm3=round((I(i+1)-I(i))/24*7);
for j=I(i)+mm1:I(i+1)-mm2
xiaoshu(j)=1;
end
else
xiaoshu(j)=0;
end
end
% figure
% plot(xiaoshu)
xiaoshu_y=xiaoshu.*p;
% figure
% plot(xiaoshu_y);title('粗糙提取小数条纹');axis([0 6000 2900 3050])
for i=1:n
if xiaoshu(i)==1
xiaoshu1(i)=0;
else
xiaoshu1(i)=1;
end
end
trans_x=trans.*xiaoshu1;
%%
% figure
% subplot(3,1,1);plot(t,p,'k');ylabel('P/uw','fontsize',13);xlabel('t/s','fontsize',13);title('(a)','fontsize',13');
% subplot(3,1,2);plot(t,trans,'k');xlabel('t/s','fontsize',13);title('(b)','fontsize',13');
% subplot(3,1,3);plot(t,trans_x,'k');xlabel('t/s','fontsize',13);title('(c)','fontsize',13');
%%
subplot(2,1,2);plot(t,trans_x,'k');xlabel('采样点n','fontsize',12);gtext('(b)','fontsize',12);
En cuarto lugar, el análisis de la conclusión de la simulación.
La estructura de la simulación es la siguiente:
A23-45