您好, 访客   登录/注册

基于Web和LabVIEW的气象监测系统设计

来源:用户上传      作者:

  摘要:为了能够方便的在LabVIEW环境中按个人需求快捷地查询天气状况,系统采用在LabVIEW中调用ActiveX控件,从Web网页中获取气象采集数据,并进行数据分拣和选择显示处理等程序设计方法,实现了指定城市风力、湿度、紫外线强度、空气质量等气象信息的识别监测功能。
  关键词:气象监测;LabVIEW;Web;数据处理
  中图分类号:TP311      文献标识码:A
  文章编号:1009-3044(2020)17-0078-03
  Abstract: In order to conveniently query the weather conditions according to personal needs in LabVIEW environment, the system adopts the program design method of calling ActiveX control in LabVIEW, obtaining meteorological collected data from Web web page, sorting data and selecting display processing, etc. The identification and supervision of meteorological information such as wind force, humidity, ultraviolet intensity and air quality in designated cities are realized. Test function.
  Key words: meteorological monitoring; LabVIEW; Web; data processing
  1 背景
  天气预报与人们的生产和生活息息相关,为人们的出行生活提供了便捷,但LabVIEW环境下的气象监测系统却比较少见。LabVIEW(虚拟仪器)是美国国家仪器公司开发的一种图形化的编程语言,拥有数据采集、分析、处理和显示等所需的众多工具,可以方便快捷地根据个人喜好搭建采集监控系统。为了满足人们对气象预报在不同工作环境下的精细化、个性化需求,本文设计了一款可个性化编程的气象监测系统。
  2 总体设计方案及工作原理
  因国家气象数据中心采用大数据分析,结果更为翔实可靠,所以系统设计时,未过多考虑硬件采集终端,而是采用了通过Web获取气象中心数据再处理显示的方法。系统设计的总体设计方案如图1所示,由登录模块、数据获取模块、数据处理、数据显示等四个模块构成。
  用户成功登录进入系统后,通过LabVIEW的前面板也即用户交互界面选择省份和城市,系统则会通过Web网页获取国家气象数据中心,经过后台数据分析和处理,由交互界面显示城市当日的风力、湿度、紫外线强度等气象信息,并同时显示一周内的天气预报。系统还可以根据用户需要,设计分析和显示历史气象信息。
  3 功能模块设计
  3.1 登录模块设计
  用户登入模块主要是为了保护用户信息安全设置的,当用户运行程序时,程序会自动弹出口令信息对话框,用户名和密码的输入不正确则不能进入运行状态。如图2所示为登录模块的前面板,主要应用了文本输入、布尔输入和进度条显示的数据输出。程序框图如图3所示,当账户和密码输入和子VI所调用的账户预存信息比对一致且确定按钮“按键值改变”事件发生时,case结构进入真分支,执行顺序结构,否则执行假分支,停止运行登录程序。其中顺序结构有三帧,分别为:显示进度条、打开主程序VI、关闭登录界面VI。
  3.2 数据获取模块设计
  LabVIEW本身没有能够打开Web网页这一功能,但可以通过容器调用ActiveX 控件,采用WebBrowser获取相关网页的控制权,在本模块中为WebBrowser控件输入指定网址URL,并设置调用方法Navigate,获取网页中全部内容。设置属性节点读取网页属性body、title、inner Text等,从title获取天气预报网页的标题,从inner TEXT获取网页的天气监测数据,采用逐级匹配字符串的方法,获取了当前城市,所有获取的信息均以字符串文本形式保存,并创建相应的显示控件,便于后续数据的调用、分析和重组。
  为了减少主程序的复杂程度,增强主程序的可读性,将“数据获取模块”打包设置成一个子VI,通过输入参数的设置,方便地实现LabVIEW与Web之间的通信,从而完成气象数据的获取操作,其操作流程图如图4所示。
  3.3 数据处理模块设计
  从网页中获取的数据是庞杂的且不能够直观地显示出来,如何根据人们的需求,创建自己的气象监测平台,就需要通过LabVIEW软件从所获取的数据中筛选分拣出于个人有价值的、有意义的数据。如图5所示的程序框图,通过索引关键字,将气象监测网页数据inner Text中的内容进行分拣,显示了城市七天昼夜温度、风力、空气质量等信息,设计中将网页获取的数据通过字符串“匹配模式”控件,进行数据的筛选,再使用“截取字符串”“替换数组子集”“数组插入”“索引数组”“截取子数组子集”“连接字符串”等控件实现数据的个性化显示处理。其他数据处理模块,如省市的数据筛选则是采用条件结构进行筛选。
  3.4 数据显示模块设计
  数据显示模块设计,主要包含文本背景色显示、显示城市查询输入、气象信息显示等。其前面板设计如下图6所示。背景色的主要设置:首先将背景颜色设置成数值型数据,选择不同背景颜色时,其数值大小不一,然后调用子VI运行后,将背景色属性通过字符串至数值转换控件后,再调用文本背景色属性节点控件,显示其属性值的大小即可。其中子VI的程序框图如图6所示,在显示背景色的同时,还显示了local(本城市)和data(气象数据)。图6中local、data数据随后送至“数据获取”子VI输入接口。城市查询分两级索引,先在省市列表中对省市进行索引,再对该省的城市列表中进行城市索引,将索引结果也送至“数据获取”子VI输入接口,写入URL对应属性。通过调用“数据获取”和“数据处理”子VI获得该城市的天气信息,并最终显示到前面板中。
  4 运行结果
  系统运行时,用户首先输入账号和密码,成功登录后,将直接进入气象监测系统,在人机交互的前面板界面,将会显示当前城市的地点和时间,同时用户可以选择所想查询的省份和城市,即能够在文本区显示城市当前及一周的天气预报。包括风力、湿度、温度、日出、日落、空气质量等要素。同时可以个人喜好,选择文本区的背景色。如图7所示,为查询江苏省宿迁市的天气情况时,所显示的天气信息。
  5 结束语
  基于LabVIEW的气象监测系统,通过调用Web网页技术,实现了气象数据的自动获取、处理、查询和显示功能,实现了对风力、温度、空气质量等各气象数据信息的显示。系统在设计过程中,用户可以根据个人需求和喜好,直接修改程序框图中URL属性,选择性地显示气压、相对湿度等其他气象信息。所获取的气象数据可以同时保存至数据库中,供用户自由调用查询,为分析历史天气提供数据参考。该系统操作简单,用户开发自由度高,为虚拟仪器技术的实际应用及气象监测系统的设计提供一定的参考。
  參考文献:
  [1] 周鹏, 许钢, 马晓瑜. 精通LabVIEW信号处理[M]. 北京: 清华大学出版社, 2013.
  [2] 韦浩. 基于LabVIEW虚拟自动气象站训练与应用系统设计[D]. 南京: 南京信息工程大学, 2016.
  [3] 翁国玲. 基于虚拟仪器技术的舰船自动气象仪系统开发[J]. 舰船科学技术, 2017, 39(24): 170-172.
  [4] 吴传全. 基于LabVIEW的自动气象站设计[J]. 无线互联科技, 2016(5): 50-52.
  [5] 崔丽珍, 徐锦涛, 丁福星, 等. 基于物联网的农业大棚气象数据监测系统设计[J]. 电子技术应用, 2018, 44(12): 73-76, 80.
  【通联编辑:谢媛媛】
转载注明来源:https://www.xzbu.com/8/view-15315341.htm