Arduino2560 代码程序控制100kw激光的设计和实现

        记得有篇报道中,有个记者说到大功率激光要从传统光学来,初步想法有了,等元器件回来,立即安装调试,资金不够了,先合成10个10w的激光源100w,实验如能成功,后期筹集资金合成500-1000个,合成10*1000=10kw 激光,初步具有武器功能2公里内能击穿0.5cm钢板。

 

激光模块已做好,频率调整模块已做好,Arduino2560对主路激光光电探测后,对每个激光源进行微分计算后输出TTL电平动态调整频率、相位,使每个激光源之间发生光的相干。

不用掺镱光纤可以吗?,我的激光源不在900nm

今晚就把主干光纤上光电探测出的信号用号傅里叶变化分出 两路 信号的Arduiono  类C 代码写好。

1、方法1直接探测分路上激光源的相位,用同一激光源不同的频率发射两次,取值后计算,实现方法简单,分别得到每一路激光源的相位,再调整每路相位,使两路激光相干。

2、方法2CCD探测出的信号用号傅里叶变化分出 两路 信号的相位,再调整每路相位,使两路激光相干,实现方法稍难。

3、方法3CD探测出的信号,生成图片,直接对图片 光相干 分析,调整每路相位,使光相干最强,实现方法简单。

-------------------你眼中看似落叶纷飞变化无常的世界,实际只是躺在上帝怀中一份早已谱好的乐章。

人类世界现在还不存在复杂的量子计算机和生物计算机,哈哈哈

 

资料稍后上传.....

平台已搭建好,可以分别做上述3种实验,看那种方法的相干效果好,下周我请了年休,封闭开发一周....,稍后上传代码和资料

所有的技术问题都要解决了,我马上要见到光明了,还记得《珊瑚岛上的激光》这部科幻片吗?

今晚在Matlab或OpenCV上 做模拟测试

代码如下:

参考1、

hold off

clear all

f=100;%信号频率Hz

fs=10000;%采样频率Hz

N=400;%采样点数

t=(0:N-1)/fs;%采样时间s

for j = 175 :225

    x=sin(2*pi*f*t);%信号采样值

    D = j;

    x1 = x(1:D);

    x2 = x(D+1:N);

    for i = 1 : D

       x3(i) = x1(D+1-i);

    end

plot(x2);

    hold on

    plot(x3);

    hold off

    pause(0.5);

end


参考2、

MATLAB

方法一:

N=200;dt=0.001;n=1:200;

x=3*sin(2*pi*10*n*dt)+3*sin(2*pi*30*n*dt)+sin(2*pi*40*n*dt)+sin(2*pi*50*n*dt)+sin(2*pi*60*n*dt)+6*sin(2*pi*80*n*dt);%建立时间序列

X=zeros(1,200);                  %给X一个预先的内存空间,提高运行速度

figure(1),plot(n,x);             %画出时间系列图像

%傅里叶变换

for k=1:200                       

    for n=1:200

   X(k)=X(k)+x(n)*exp(-i*2*pi*n*k/N);

    end

end

f=abs(X);                    %对傅里叶变换后的图像取正数部分

figure(2),plot(f);           %画出傅里叶变换后的图像

%滤波

H=ones(200);H(8:14)=0;H(186:193)=0; %建立40、50、60Hz的时间序列所在空间域数值为0的一维矩阵

for k=1:200

    Y(k)=X(k)*H(k);

end

k=1:200;

figure(3);

plot(k,abs(Y)); %画出滤波之后的时间序列

%傅里叶逆变换

y=zeros(1,200)% 给y一个预先的内存空间,提高运行速度

for n=1:200

    for k=1:200

       y(n)=Y(k)*exp(i*2*pi*n*k/N)+y(n);

    end

    y(n)=y(n)/N;

end

figure(4) ;

n=1:200;

plot(n,y,'r-',n,x,'b-');% 画出原时间序列和滤波后的时间序列,可见滤波之后的时间序列振幅明显变小

方法二:

N=200;dt=0.001;n=1:200;

x=3*sin(2*pi*10*n*dt)+3*sin(2*pi*30*n*dt)+sin(2*pi*40*n*dt)+sin(2*pi*50*n*dt)+sin(2*pi*60*n*dt)+6*sin(2*pi*80*n*dt);

X=zeros(1,200);

figure(1),plot(n,x);

X=fft(x,N);

f=abs(X);

figure(2),plot(f);

H=ones(200);H(8:14)=0;H(186:194)=0;

%滤波

for k=1:200

    Y(k)=X(k)*H(k);

end

k=1:200;

figure(3);

plot(k,abs(Y));

%傅里叶逆变换

y=zeros(1,200);

y=ifft(Y,N) ;

figure(4) ;

n=1:200;

 

plot(n,y,'r-',n,x,'b-');

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章