zl程序教程

您现在的位置是:首页 >  后端

当前栏目

基于无人机的气象数据采集系统设计(Matlab代码实现)

MATLAB系统数据代码 实现 基于 设计 采集
2023-09-14 09:05:24 时间

 👨‍🎓个人主页:研学社的博客 

💥💥💞💞欢迎来到本博客❤️❤️💥💥

🏆博主优势:🌞🌞🌞博客内容尽量做到思维缜密,逻辑清晰,为了方便读者。

⛳️座右铭:行百里者,半于九十。

📋📋📋本文目录如下:🎁🎁🎁

目录

💥1 概述

📚2 运行结果

🌈3 Matlab代码实现

🎉4 参考文献


💥1 概述

人工影响天气业务在防灾减灾工作中越来越受到重视,并且技术也愈加完善。但是人工降雨一般是以飞机播撒催化剂的方式实现增雨、降雨。人工降雨对气象条件及空气质量有前提条件,对机上指挥人员也有危险性。所以,利用无人机实现自动播撒,自动观测,可以很好地解决安全性的问题。该文主要研究基于无人机的气象数据采集系统的设计,设计无人机气象数据采集的硬件和程序。温度和湿度传感器、气压传感器和HGPS传感器分别用于传输观测数据。传输的数据从控制器写入,进入SD卡然后存储,通过无线数据传输模块,发送到地面主处理计算机进行实时显示。

📚2 运行结果

部分代码:

close, clear, clc
format long

outfile = false;
plotdata = true;

date = '18-11-02';
log_file = 'DATA01.CSV';
pix_file = '2018-11-02 16-00-07.bin-61468.mat';

% pix_file = '2018-08-22 11-30-26.bin-101613.mat';
% date = '18-08-22';
% log_file = 'DATA05.CSV';

LUT_MET = 'MET_LUT.csv';
LUT_UCASS = 'LUT_D_water.txt';
density = 997000000;

PIXdat = PIXextract(date,pix_file);
[time_met,tfit,hfit] = calMET(date,LUT_MET,log_file);
[METrt,PIXrt] = RTCzero(log_file,pix_file,date);
alt = time2alt(PIXdat,METrt,PIXrt);
met = [time_met,alt];
met(:,2) = run_filter(met(:,2),2,20,10);

[bb,counts] = calUCASS(date,LUT_UCASS,log_file);
mass_conc = UCASSmass_conc(counts,bb,met(:,5),density);
met = [met,mass_conc];

metdat = metstruct(met);

[profiles,pindex] = detect_profile(metdat);
altitudes = [10,50,70,100,120];
slicestruct = sliceData(profiles,altitudes,pindex,counts);
intParams = colint(profiles);

if outfile == true
    genfile('SAM_DATA',log_file,pix_file,date,profiles);
end

if plotdata == true
    fig = figure(1);
    ax1 = subplot(1,2,1);
    tln1 = plot([profiles.profile_1.temperature],[profiles.profile_1.altitude],'x');
    hold on
    tln2 = plot([profiles.profile_2.temperature],[profiles.profile_2.altitude],'x');
    hold on
    ylim([10,140])
    xlabel(sprintf('Temperature%cC',char(176)));
    ylabel('Altitude (m)');
    title(['Temperature Profile ',date])
    legend(ax1,{'Ascent','Descent'},'Location','northeast')
    
    ax2 = subplot(1,2,2);
    mln1 = plot([profiles.profile_1.particle_mass_conc],[profiles.profile_1.altitude]);
    hold on
    mln2 = plot([profiles.profile_2.particle_mass_conc],[profiles.profile_2.altitude]);
    hold on
    ylim([10,140])
    xlabel('Particle Mass Concentration (kgm^-^3)');
    ylabel('Altitude (m)');
    title(['Particle Mass Concentration Profile ',date])
    legend(ax2,{'Ascent','Descent'},'Location','northeast')
    hold off
end

🌈3 Matlab代码实现

🎉4 参考文献

部分理论来源于网络,如有侵权请联系删除。

[1]李俊杰,霍宗钰.气象探测无人机及保护装置结构设计[J].电子技术与软件工程,2022(14):80-83.