自动气象站风向格雷码对应角度自动查算工具的编写

2014-04-28 07:47郑德彬
山东工业技术 2014年15期

郑德彬

(江西省大气探测技术中心,南昌 330001)

自动气象站风向格雷码对应角度自动查算工具的编写

郑德彬

(江西省大气探测技术中心,南昌330001)

摘要:针对目前自动气象站风向传感器检定过程中,设备输出的格雷码与模拟电压值查算对应角度值的步骤繁琐。依据现有检定规程,使用EXCEL软件编写出一套可兼容电脑、平板、手机的快速查算系统。提高工作效率。

关键词:EXCEL;自动站风向;空对应角度自动查算

0 引言

现今使用的各种型号的自动气象站风向传感器均采用7位格雷码(以下简称格雷码)或0-2.48V电压作为传感器输出信号。根据《自动气象站现场校准规范》规定。使用JJE11型风向校验仪作为校准设备。JJE11型风向校验仪能够兼容5V、12V的各类风向传感器,并显示其输出的格雷码或电压值,通过与标准电压值或标准格雷码值对比得到对应差值。对被测传感器进行差值校准。由于现行检定规范需将差值换算成为对应风向角度值,而校验仪仅仅显示对应电压值或格雷码,并不输出该电压值(格雷码)对应的角度值,不利于实际工作。此次开发使用EXCEL电子表格程序将校验仪与风向传感器技术资料中的电压、格雷码及角度换算表进行数字化,在对电压或格雷码进行输入后自动换算并显示对应角度值,进一步提高工作效率。

1 工作表结构

根据风向传感器设计原理,风向标转轴连接一个由七位格雷码盘和红外发光二极管、光敏管组成的风向信号发生器。一组红外发光二极管和光敏管对正一个格雷码盘的码道,七组红外发光二极管和光敏管对正七个格雷码盘的码道产生代表风向的七位格雷码。格雷码盘将以正北方向为0位的360°风向角度划分为128个单独扇区,每个扇区所输出的格雷码对应一个角度值。(部分输出电压模拟信号的风向传感器则为格雷码对应电压值)。如图所示,将EXCEL工作簿的工作表2(sheet2)作为基础表格区域,将现行气象部门使用的格雷码、电压及角度对照表分三列输入格雷码值、对应电压值、对应角度值。作为查算所需的基础表格区域。

在该工作簿的工作表1(sheet1)中,将一单元格定义为待查询的格雷码输入区域,将另一单元格作为对应角度输出区域,在单元格中键入复合公式“=INDEX(Sheet2!A2:C129,MATCH(E2,Sheet2!A2:A129,0),3)”实现对应角度查询。

2 相关公式语句分析

INDEX函数,在相关列表中提取符合设定条件单元格内的值,书写语法为(=INDEX(所查找的区域,行号,列号))

MATCH函数,提取满足条件的单元格行、列号。书写语法为(=MATCH(查找值,查找区域,查找模式))其中查找模式为模糊查找。单元格内输入公式为“=INDEX(Sheet2!A2:C129,MATCH(E2,Sheet2!A2:A129,0),3”即在工作表1(sheet1)对应单元格中输入待查格雷码值(语句中以E2单元格为格雷码输入区域),在工作表2(基础表格区域sheet2)的A2-C129单元格中查找值等于E2单元格中所输入的值,并返还该值所在行第三列(基础表格C列角度值)中的数据。同法,在工作表1的对应单元格中键入公式“=INDEX(Sheet2!A2:C129,MATCH(E 5,Sheet2!A2:A129,0),2”(语句中以E5单元格作为模拟电压值输入区域),既可实现输出信号为电压值的其他型号风向传感器的对应角度值查询。

工作表1

3 误操作保护

通过将工作表中除待查值输入单元格(E2,E5)以外所有区域的单元格在“设置单元格格式”菜单中的“保护”子菜单中,将其属性设置为锁定。再通过菜单栏下“工具-保护-保护工作表”子命令将以上单元格设置保护状态。当有操作试图更改这些单元格的内容时,系统将自动阻止该操作。从而实现对基础表格、查询公式及所在单元格内容进行保护,防止因工作中的误操作引起的功能损坏。

4 应用扩展与二次开发

在实际工作中,通过EXCEL编译的工作表,具有操作灵活、系统资源占用少的优点。该查算工作簿全部编译完成后大小仅为34KB。除可在传统计算机的WINDOWS系统下运行外,还可在安装了安卓EXCEL、Iwork等XLS文件兼容应用的安卓(Android)系统、苹果(Ios系统)的手机、平板电脑上运行。极大的方便了现场工作人员的操作,大大提高工作效率。同时EXCEL工作表还可以作为插件充当其他程序后台运算模块,通过使用VB、VS等计算机编译平台进行相关界面开发,编译为单独的可执行程序。

参考文献:

[1]JJG(气象)004-2011,自动气象站风向风速检定规程[S].

[2]李黄,自动气象站实用手册[R].气象出版社,2007.

[3]张小峰,EXCEL2003函数大全[R].鲁东大学计算机科学与技术学院,2008.