上位机测试软件说明书

2024-06-01

上位机测试软件说明书(共7篇)

上位机测试软件说明书 篇1

软件测试工程师岗位说明书

所属部门:研发部 职位名称: 软件测试工程师 直接上级:测试组长

职位类别:研发类 职位设置目的:

1、编写测试用例。

2、根据测试计划搭建和维护测试环境;

3、执行测试工作,提交测试报告。包括编写用于测试的自动测试脚本,完整地记录测试结果,编

写完整的测试报告等相关的技术文档;

4、对测试中发现的问题进行详细分析和准确定位,与开发人员讨论缺陷解决方案。

5、提出对产品的进一步改进的建议,并评估改进方案是否合理;对测试结果进行总结与统计分析,对测试进行跟踪,并提出反馈意见。

6、为业务部门提供相应技术支持,确保软件质量指标。工作描述 工作内容:

1、测试需求分析

根据需求说明书协助测试组长整理出《测试需求规格书》、《测试计划》,并参与评审 2、《XX测试计划》编写 仔细阅读项目规格说明、设计文档、使用说明书等,充分掌握软件的性能、特点、使用方法、业务流程等,协助测试经理制定项目的测试计划,保证产品测试工作的计划性与规范性 3、编写测试用例及评审

按照测试流程、计划以及对产品特性的把握,沟通确认测试的范围、重点,考虑逻辑、数据完整性等要求,详细规定测试的要求,策划、编写测试用例,设计测试用数据及预期结果,做好测试前的准备工作,确保测试目的的达成 4、执行测试

搭建测试环境,保证测试环境的独立和维护测试环境的更新,做好测试前的准备工作,确保测试环境的稳定和版本的正确。根据测试计划及测试案例,执行测试,并根据产品特点及测试要求,实施单元测试、集成测试、系统测试等,及时发现软件缺陷,评估软件的特性与缺陷,确保测试目的的达成。5、BUG的验证

根据测试结果,与开发部门反复沟通测试情况,督促并跟踪开发部门解决问题,修正测试中发现的缺陷,完善软件功能。6、回归测试

针对软件应用工程师所提交的BUG解决报告进行相应的回归测试。验证问题单是否已经进行修改 进行测试记录和相应文档的编写 7、编写测试报告和测试结果分析

通过测试,掌握软件具有的能力、缺陷、局限等,对软件质量给出评价性的结论与意见,整理测试文档,填写软件测试报告,编写测试总结,为软件开发成果提供总结性意见 参与《系统测试报告》评审 8、项目维护

跟踪上市产品线BUG解决 为业务部门提供相应技术支持,确保软件质量指标。根据软件应用工程师所提供的BUG解决报告,跟踪测试验证结果。9、例行工作

每周周五下午4:00前参加本组周例会,总结本周任务完成情况,并计划当周的工作任务。每周六10:00做好本周周工作总结和下周工作计划。每月月末做好本月工作总结和下月工作计划,并提交测试组长。10、培训参与

接受公司、研发部、测试部组织的各种教育、培训、考核活动; 协助测试主管开展组内的教育、培训工作:担当培训讲师,制作技能培训讲义、考试试题。担任新入职的软件测试工程师的导师,制作培训计划,并考核。11、其它工作

同行业产品信息收集与学习。执行上级临时安排的事情。

工作联系

1、工作汇报对象:测试组长

2、监督工作对象:无

3、合作工作对象:资深软件工程师、高级软件工程师、底层驱动软件工程师、中级软件工程师、应用软件工程师、初级软件工程师、生产部调试员

任职资格: 硬性要求 学历:专科

专业:计算机、网络 外语水平:四级

工作行业:计算机、网络通信 工作经验:2年以上

软性要求

素质和能力:富有想像力,创造性思维。积极主动,避免问题。成就导向、追求卓越。团队合作,分享知识。积极学习,不断进取。工作态度:工作服务、学习以及良好的职业操守 技能要求:

1、精通TCP/IP协议及电力方面的知识

2、具备软件工程的基本知识,熟练掌握各种测试理论和测试技术;

3、至少在性能测试、自动化测试、白盒测试方面中有一项专长。

4、有较强的独立工作能力和解决问题的能力。

5、具有相应文档的编写能力

6、熟悉主流 操作系统、应用软件、常用配置管理系统的安装配置及测试程序。

上位机测试软件说明书 篇2

关键词:复合海缆,BOTDA,监测,模块化设计,多线程技术

0 引言

随着信息技术的不断发展, 光纤除担当通信任务外, 还可以用于温度、应力变化传感。利用复合海缆中富余光纤作为传感器, 借助布里渊光时域分析技术可以实现对复合海缆分布式、实时监测告警。本文简要介绍了复合海缆在线监测系统基本原理、系统结构及基本功能, 主要对系统上位机软件设计进行了研究。

1 复合海缆在线监测系统基本原理

光纤传感技术是20世纪70年代伴随光纤通信技术的发展而迅速发展起来的, 以光波为载体, 光纤为媒质, 感知和传输外界被测量信号的新型传感技术。近年来, 光纤传感技术在高压电缆的分布式在线监测中得到广泛应用, 其中以基于拉曼散射的分布式光纤测温技术最为成熟。但由于这种技术散射光信号很弱, 测量精度受到限制, 难以满足长距离海缆监测要求。布里渊散射分布式光纤传感器是一种新型光纤传感器, 测量距离远, 可以实现长距离测量, 其中布里渊光时域分析技术BOTDA是其主流技术。由于BOTDA技术在温度、应变测量上达到的测量精度、测量范围以及空间分辨率均高于其他技术, 因此这种技术目前得到广泛关注与研究。

布里渊散射是光波和声波在光纤中传播时相互作用而产生的光散射过程, 布里渊频移νB与波长λ、声速νA和折射率n的关系式如下:

当环境温度变化或光纤产生形变时, 光纤中声速和光的折射率都会随之变化, 从而使布里渊频移发生变化。根据文献, 布里渊频移与环境温度、光纤应变存在线性关系[1,2], 如下所示:

式中:ΔνB (x) 为传感光纤x (离入射端面距离) 处布里渊光频移变化量;Δε (x) 为传感光纤x处的轴向应变变化量;ΔT (x) 为传感光纤x处的温度变化量;Cε、CT分别为传感光纤的布里渊频移应变和温度系数, 由光纤材质决定, 1 550 nm波长的入射光在普通单模光纤中的各个系数为:Cε=0.0493 MHz/με, CT=1.2 MHz/℃[3]。

布里渊散射频偏与其温度、应变成线性关系的这一特点, 恰好可以应用于海缆安全监测。

2 系统设计及实现

2.1 系统结构

系统由硬件设备的构建和软件系统组成, 如图1所示。硬件部分用于实现光纤温度、应变信息和海缆电源谐波信息的采集以及数据传输, 软件部分用于实现信息的接收、转换、显示、分析等数据处理和服务功能。

系统硬件包括两部分:BOTDA设备和谐波测试仪。前者通过与复合海缆中富余的两路光纤通路相连, 实时采集光纤温度和应变信息, 并按照自定义数据格式生成光纤数据, 这是实现监测的前提;后者接入平台电网, 实时监测电缆的电源谐波参数, 为上位机监测系统进行故障分析提供辅助参考。

系统软件包括两部分, 一是上位机监测系统软件的设计和实现, 另一部分是电子海图系统。上位机监测系统软件是本系统的核心部分, 也是本文研究的主要内容。电子海图系统是整个系统的一个辅助功能, 主要用于实现对海缆信息可视化显示。

2.2 上位机监测系统软件设计

1) 需求分析

(1) 数据获取通过以太网技术实时获取BOTDA和谐波测试仪采集的数据, 分别为光纤温度、应变信息和电源谐波信息。

(2) 光纤信息转换结合有限元分析得到的温度场建模, 实现对光纤信息到电缆信息的转换。

(3) 信息显示在人机界面上实时分布式显示电缆信息———电缆导体温度;以及实时显示电源谐波、电压等信息。

(4) 数据分析根据获取的光纤和谐波信息, 结合有限元分析得到的温度场建模、应力场建模结果, 通过信息处理技术对海缆的工作状态进行判断。

(5) 其他系统同时还需具备有完善的历史查询功能, 以及其他辅助功能:数据导出、打印等。

2) 功能模块设计

依据系统需求分析以及模块化设计思想, 为系统定义了7大主要功能模块, 即通信模块、数据操作模块、显示模块、报警处理模块、数据存储模块、历史查询模块和日志服务模块, 功能模块结构如图2所示。

(1) 通信模块通信模块是上位机获取和发布数据的唯一途径, 用于实现上位机与BOTDA设备、谐波测试仪和电子海图间信息交互, 内嵌有网络通信协议以满足通信要求。

(2) 数据操作模块数据操作模块是整个系统的重要部分, 主要包括两个内容:数据处理和数据分析。

数据处理是指对上位机接收的光纤温度信息根据有限元分析得到的温度场建模结果转换成电缆温度信息, 同时根据指定格式生成电缆温度文件传送给电子海图系统以实现海缆信息可视化显示。

数据分析是实现对海缆安全监测的核心环节, 根据预设的报警阈值分析、比对光纤原始数据和电源谐波参数, 查找引起电缆异常存在的隐患, 并为及时快速制定解决方案提供可靠的数据支持。

(3) 显示模块显示模块是实现人机信息交互的主要体现方式, 用户可以通过系统界面实时观测复合海缆沿线中电缆不同位置处温度信息的情况, 以及电缆的电源谐波参数情况。

(4) 报警处理模块报警处理模块是系统异常处理的一个重要方面。当海缆出现异常时, 该模块处理和发送报警信息, 进行声光、文字等形式的报警, 及时通知用户以便采用措施减少损失。

(5) 数据存储模块数据是整个系统的根本, 具有重要的保存价值, 可以为历史查询提供依据, 系统以40s为一个采集周期, 以特定文件格式定时保存光纤温度数据以供历史查询。当海缆出现异常时, 同样会以另一种文件格式保存异常信息以便日后查询。

(6) 历史查询模块历史查询模块系统可以方便用户查询某一日或连续几天的数据内容, 通过筛选机制得到需要的数据。系统对查询结果提供了打印和导出功能, 可以外接打印机打印或将数据导出到Excel表格中进行存储。

(7) 日志服务模块日志服务模块主要监测系统的运行状况, 及时记录各种操作和运行参数, 保障系统稳定运行。

3) 详细设计

(1) 开发环境从开发效率、稳定性、性价比等多方面考虑, 选用National Instruments公司推出的交互式C语言开发平台———Lab Windows/CVI。Lab Windows/CVI将功能强大、使用灵活的C语言与用于数据采集分析和现实的测控专业工具有机地结合起来, 其集成化开发环境、交互式编程方法、函数面板和丰富的库函数大大增强了C语言的功能, 为熟悉C语言的开发人员建立监测系统、自动测试环境、数据采集系统、过程监控系统、虚拟仪器等提供了一个理想的软件开发环境。

(2) 关键技术—多线程技术在本监测系统中, BOTDA设备和谐波测试仪采集信号, 通过以太网传输到上位机, 上位机对这些接收到的数据进行处理并存储, 然后显示在用户界面中, 同时要对数据进行分析判断海缆是否异常, 并且还根据用户操作, 完成其他控制功能。若采用传统的单线程技术来编写上位机软件的话, 由于采集数据耗费很大的系统资源, 程序对界面上的其他控件反应迟钝, 会有很大的延迟, 甚至在传输数据量很大的时候, 根本就不会作出反应, 因而有时会导致系统死机, 严重影响监测操作。

因此, 针对系统的实时多任务特性, 在系统软件编写过程中, 采用Lab Windows/CVI的多线程技术。

多线程是指操作系统支持一个进程中执行多个线程的能力[4,5]。当一个线程等待用户响应或大量计算结果时, 另一个线程可以继续其他处理, 使得进程总处于运行态, 随时进行响应, 从而提高系统的响应效率, 提高对CPU的利用率, 加快程序的信息处理速度。

本系统主要包括光纤数据采集线程、电源谐波参数采集线程、数据分析线程、报警处理线程和用户界面线程等, 其中使用主线程创建、显示并运行用户界面, 用次线程创建其他线程。Lab Windows/CVI提供了两种在Lab Windows/CVI的次线程中运行代码的高级机制, 如表1所示。在本监测系统中, 使用了基于线程池的多线程技术。

在运用多线程的时候, 各个线程之间的数据保护也非常重要。通常, 多线程程序的数据保护是把操作系统的线程锁定对象和保存数据的变量联合起来[6]。Lab Windows/CVI提供了3种数据保护机制, 如表2所示。本系统主要运用了线程锁和线程安全队列这两种保护机制。

本系统的多线程工作流程如图3所示。

用户界面线程 (主线程) 由系统生成, 完成对用户的鼠标键盘操作的响应, 以及用户界面的生成显示与刷新等。除主线程外还创建了4个辅助线程, 为了使用Lab Windows/CVI的线程池在次线程中执行代码, 需要在主线程中调用Cmt Schedule ThreadPool Function函数创建次线程, 将需要在次线程中运行的函数名称传递进来。如在主线程中调度光纤数据采集线程函数代码如下:

Cmt Schedule Thread Pool Function (DEFAULT_THREAD_POOL_HAN-DLE, GXAcq Thread Function, NULL, &thread ID_duqu) ;//创建光纤数据采集线程

线程池将这个函数调度到某个线程中执行。根据配置情况和当前的状态, 线程池可能会创建新的线程来执行这个函数也可能使用已存在的空闲进程或者等待一个活跃的线程变为空闲后使用该线程执行[7]。传递DEFAULT_THREAD_POOL_HANDLE表示使用默认的线程池, 也可以调用Cmt New ThreadPool函数来创建自定义的线程池。需要注意的是使用完线程池后要调用Cmt Discard Thread Pool来释放由Cmt New Thread Pool函数创建的线程池资源;在主线程退出前调用Cmt Wait For ThreadPool Function Completion等待线程池结束释放系统资源。否则容易导致一些资源不能正常释放引起内存泄露或其他不可以预测后果[8]。

(1) 光纤数据采集线程

该线程主要负责光纤数据的采集, 即实现上位机与BOTDA设备通信接收光纤数据, 同时运用数据操作模块中的数据处理功能实现对光纤数据到电缆数据的转换并调用显示模块进行电缆信息显示及调用数据存储模块进行存储。以下给出该线程的程序流程图, 如图4所示。

(2) 谐波参数采集线程

该线程主要负责采集电源中谐波参数以及电流、电压信息, 及实现上位机与谐波测试仪通信。以下给出该线程的程序流程图, 如图5所示。

(3) 数据分析线程

该线程主要调用数据操作模块中的数据分析功能, 通过对光纤原始数据和谐波参数分析、比对从而对海缆的安全状态作出评价。光纤数据采集线程与数据分析线程之间的数据传递采用线程安全队列完成。而谐波参数线程与数据分析线程之间的数据传递采用线程锁完成。以下给出该线程的程序流程图, 如图6所示。

(4) 报警处理线程

该线程主要调用报警处理模块进行海缆异常处理。当海缆出现异常时通过数据分析线程触发该线程。以下给出该线程的程序流程图, 如图7所示。

4) 系统界面

系统操作界面如图8所示。

系统运行时界面如图9所示。

3 结语

运用上述思路设计的复合海缆在线监测系统上位机软件, 成功弥补了海底电缆分布式、实时监测的空白。将模块化设计思想和多线程技术运用于该软件设计, 不但提高了系统的扩展性, 而且也提高了系统的执行效率。该软件已成功应用于渤海采油平台, 能够很好地满足监测的要求。

参考文献

[1]张晓虹, 蒋雄伟, 王振华, 等.光纤传感技术用于检测地下电力电缆故障[J].高电压技术, 2000, 26 (2) :37-39.

[2]沈一春, 宋牟平, 章献民.长距离光纤布里渊散射研究[J].光子学报, 2004, 33 (8) :931-934.

[3]李高健, 王晓峰.基于GIS的复合海缆监测系统设计与实现[J].计算机应用与软件, 2012, 29 (9) :185-187.

[4]成凤敏, 苏小光.多线程技术在虚拟仪器软件开发中的应用[J].中国测试技术, 2008, 34 (2) :48-50.

[5]姜守达, 吴昌盛, 孙震.LabWindows/CVI多线程机制在数据采集中的应用[J].计算机应用, 2004, 23 (8) :56-57.

[6]张毅刚, 乔立岩.虚拟仪器软件开发环境LabWindows/CVI6.0编程指南[M].北京:机械工业出版社, 2002.

[7]刘君华.虚拟仪器编程语言LabWindows/CVI教程[M].北京:电子工业出版社, 2005.

上位机测试软件说明书 篇3

【关键词】开源免费测试软件 外语测试 网络测试

【中图分类号】 G 【文献标识码】A

【文章编号】0450-9889(2014)03C-0184-03

外语测试是了解、评价学生的语言水平,衡量学生学习效果,检验外语教学质量的有效途径,对有效评估外语教学效果,了解学生语言知识的掌握情况具有重要作用。而综观当前外语教学的测试方式,传统的纸质测试费时、费力、费财、低效,广大外语教师不得不花费大量的时间在试卷的批改和结果的统计分析中,极大增加了教师的工作负担,测试的信息反馈工作往往难以有效展开,教师难以及时监控学生学习过程,无法判断学生外语学习的问题症结,从而降低了语言测试对教学本身的参考价值。传统纸质测试缺陷众多,已无法跟上信息时代的需求。

随着计算机的普及和现代教育技术的发展,外语测试手段发生了变化,因计算机具有存储量大、处理速度快、分析能力强以及信息反馈及时等特征,计算机在语言测试中的应用越来越受到人们的关注。计算机辅助测试将逐步取代纸质测试,成为外语测试的主要手段。然而,目前机助测试的理论研究不少,但对机助测试的具体实现手段却鲜有论述,而这正是广大一线教师,尤其是欠发达地区外语教师所关心的问题,他们急需简单易用的测试工具开展机助测试,以体验信息技术给他们带来的便捷。对于欠发达地区的外语教师来说,编程开发测试软件对他们来说是不现实的,而花巨金购买专业化的商业测试软件也不是每个学校都能接受的,技术门槛和教育资金匮乏成为阻碍欠发达地区普及机助外语测试的主要原因。基于此,本文以开源免费软件为平台,探讨在欠发达地区利用开源免费软件辅助外语测试的可行性及具体实现方法。

一、开源免费软件在机助外语测试中的应用简介

开源软件具有经济性、易用性和高安全性等特点,现已被广泛应用于学校、企业和政府部门当中,在软件业中显示出勃勃的生机和活力。开源软件在教育领域的应用成为当今教育业的一个研究热点。开源软件和免费软件有一定的区别,虽然二者都能免费使用,但后者并不公开源代码。本文所提到的软件包括二者,统称开源免费软件。开源免费软件在教育中的应用越来越广泛,其中不少涉及计算机辅助测试领域。下面对机助外语测试软件的应用选择和常用的开源免费软件在外语测试中的应用做简单介绍。

(一)机助外语测试软件的选择

对机助外语测试软件的选择我们主要关注以下几方面:

1.测试题型

支持常见的外语测试题型,如选择题、填空题、是非题、排序题、匹配题、简答题和听写题等。此外,语言测试中还有阅读理解题、听力题、完形填空题和翻译题等题型,这些题型通常都包含若干道上述所提到的选择题、是非题和填空题等,这种题型有些学者统称为嵌入题型或完形填空题,能否提供对嵌入题型的支持是衡量在线语言测试系统是否适用的重要标准。

2.对多媒体的支持

支持多媒体素材,兼容多种媒体格式,满足视听语言测试和练习的需求。

3.测试管理功能

提供包括题库管理、组卷方式、考生管理、考试过程控制管理以及测试安全性设置等管理功能,能适应大规模、要求较高的终结性评价考试的要求。

4.测试反馈

为师生提供丰富的测试反馈信息,包括统计分析报告、测试成绩反馈、答题情况回顾、答案分析等,使师生能对考试情况进行有效分析,查找薄弱环节。能否提供丰富的测试反馈信息,促进测试对教学的反馈作用是评价在线测试系统的重要指标。

5.易用性

安装方法简单,操作界面直观,简单易用,教师只需具备基础的电脑知识就可很快掌握使用方法。

6.对标准的支持

试题符合QTI和Scorm等E-learning 的规范标准,尤其是提供对QTI标准(练习测试互操作测试标准)的支持,使试题能在不同的测试平台中使用,以提高试题的互操作性和再生性。

7.社会化程度

测试软件拥有广泛的用户群体,开源社区的支持力度大,提供技术支持论坛。

(二)开源免费软件在机助外语测试中的应用简介

下面简要介绍两类常在局域网使用的开源免费在线测试软件,以期为计算机辅助语言测试的实际应用与深入发展起到抛砖引玉的作用。

1.基于数据库的在线考试系统

此类软件依托数据库对试题进行管理,有强大的题库管理功能,既有专门化的考试管理系统,也有内嵌于学习管理系统的专业化考试模块。专门化的开源在线考试管理系统国内的主要有爱考(http://www.lovekao.com/)、TOMEXAM(http://www.tomexam.com/)、花田MyExam(http://www.ricesoft.com/)等,国外的主要有TCExam(http://www.tcexam.org)、Kadlin(http://www.kaldin.com/)等。在线考试系统还广泛存在于学习管理系统中。开源学习管理系统(LMS)大多能提供比较完善的、专业化的测试评价功能,测试评价功能是网络学习管理系统的一个重要组成部分,是衡量一个学习管理系统优劣的关键。优秀的开源学习管理系统有moodle、efront、sakai、Ilias、claroline等。专门化的开源在线考试系统要么功能不够完善,要么是商业化版本的演示版,功能上有一定限制,而开源学习管理系统的测试评价系统不但提供完善而强大的学习管理功能,而且能与在线课程学习紧密结合,提供对学生考试过程的完整跟踪记录,测试反馈信息丰富,并拥有广泛的用户支持。因此相对专门化的开源在线考试系统而言,笔者更为推荐使用开源学习管理系统的测试评价系统作为语言测试的工具。概括起来,开源学习管理系统的测试评价系统具有如下特点:

(1)运行环境:主要基于LAMP(Linux+Apache+Mysql+Php)或LNMP(Linux+Nginx+Mysql+Php)环境构架(sakai使用JAVA语言开发),即服务器操作系统选用Linux、FreeBSD等健壮的开源操作系统,WEB服务器采用Apache、Nginx等高负载、高性能服务器软件,保证了大规模在线测试的稳定性。

(2)题库管理:有强大的题库管理功能,可实现试题分类、试题导入和导出、试题在线编制等功能,支持SCORM、QTI等标准,题库试题可在不同的课程间共享,支持使用题库试题随机组卷。

(3)题型:题型包括选择题、填空题、是非题、匹配题、完形填空题、简答题、论述题等常见外语测试题型,支持阅读理解、听力理解等语言测试题型的制作,各种题型都可方便地插入多媒体资源。

(4)安全性:基于实名用户认证;可通过随机排序试题和试题选项、安全窗口答题等方式减少作弊行为;可在考试过程保存考生答案;可通过设置试题密码、IP地址范围等措施提高试题的安全性。

(5)结果反馈:可反馈各道题答案的分析;可产生详细的测验结果报告,包括学生成绩、各道题的平均分和准确率、总平均分、试题的区分度、标准差等丰富信息;可随时回顾学生的答题情况,向学生提供各道题的答案分析,帮助学生巩固相关知识点。

Moodle、eFront、Sakai、Ilias在测试评价功能上除有以上共同点外还各有特色,如:Moodle开源社区用户支持率高,测试评价功能相对完善,提供多个独立的试题编辑器,并且能与开源安全考试浏览器(Safe Exam Browser)紧密结合,创建安全的答题环境,有效杜绝学生作弊;eFront可控制学生的学习路线,学生在完成相关课程内容的学习后才能进行测试,与课程内容的学习联系更加紧密,此外在题库管理中还可对试题的难易度进行设置;Sakai对QTI标准有良好的支持,试题通用性更强;Ilias除有强大的测试管理功能外,试题类型还提供改错题等富有语言测试特色的题型。根据陈笑怡等人对世界知名学习管理系统的比较分析,在测试评价功能完善程度方面,Moodle的完善程度最高,其次为eFront、Sakai和Ilias。

2.基于html页面的在线练习工具

此类软件主要安装于个人电脑中,教师在完成试题编制后把试题发布为html(html-based quiz)或flash格式(flash-based)的网页文件,最后把网页文件上传到服务器供学生进行在线测试或练习。有些测试工具在测试过程中,即刻进行正误判断(如hotpotatoes), 而大部分测试工具则是在完成测试后再进行判分。教师在编制试题时如设置了答案解释,将显示答案的分析。测试结果将以EMAIL形式发给教师或存于服务器上供教师进行分析。但此类软件无法形成一份针对全体考生的测试结果统计报告,教师较难客观地整体了解全体受试学生的测试情况。此类软件没有数据库支持,不适于题库建设需要。一般情况下,此类软件主要用于学生的自我评价或教师对学生的形成性评价,也可作为学生自主学习的强化练习手段。

这类免费软件主要有Hot Potatoes, Quiz Faber, Netquiz pro,free QuizMaker等,其中free QuizMaker生成的是flash格式的测试题,试题的图形界面较为美观;其余工具生成的都是html格式试题,试题界面较为简单。这些软件界面友好,简单易用,都可插入多媒体资源,试题及选项都可随机排序,一般提供的题型有选择题、填空题、是非题、排序题、匹配题和简答题。此外,Netquiz pro还提供听写题等富有语言学习特色的题型,听力题可实现自动判卷,且可控制听力录音的播放次数。阅读理解、短文听力等题型在许多免费测试工具中都较难实现,而在Netquiz pro的“fill-in-the-blank”题型中就可轻松实现。因此,作为自主学习测试工具使用而言,Netquiz pro因题型丰富(共11种题型),多媒体支持良好,发布的网页界面美观,应是免费软件应用于外语测试的首选;其次为Quiz Faber;最后为Hot potatoes。但Hot potatoes的兼容性更好,使用方法更为简单,此外,Hot potatoes 6.0还可输入中文,而Quiz Faber、Netquiz pro都无法使用中文,但对外语测试来说,有无中文并无大碍。Free QuizMake虽界面美观,但题型太少,只提供了单选题和填空题,如对外语测试有较高要求,可购买free QuizMaker的专业版iSpring Suit,其提供的题型多达23种。

二、开源免费软件在外语测试中的应用实例

从以上论述不难看出,基于LMS的测试系统应是机助外语测试工具的首选。尤其是基于Moodle的测验系统,其题型丰富、测试管理功能完善、测试反馈信息详实、用户支持率高,且关于Moodle辅助外语测试的研究也不少,例如Jason Myrick编著的电子书《Moodle 1.9 Testing and Assessment》、Jeff Standford编著的电子书《Moodle 1.9 for Second Language Teaching》,从这些研究中会得到许多有关Moodle辅助外语测试的启示和技术支持,因而无论从测试功能的完善程度还是从技术支持角度来考虑,Moodle都是开源软件辅助外语测试的首选。下面就以Moodle为例,简单介绍开源软件在外语测试中的应用。

(一)安装测试系统

基于PHP代码开发的开源LMS在线测试系统一般安装在LNMP或LAMP环境中,但实验证明,Nginx web服务器具有比Apache服务器更高的负载能力,因此建议把LMS安装在LNMP环境中,并安装eAccelerator和memcache等php加速软件,进一步提高网站的负载能力,以确保大规模在线测试的顺利进行。

(二)录入试题

题库需要大量的试题来支撑,如果试题来源于纸质文档,手动输入试题的工作量是巨大的,在这里推荐使用Abby FineReader OCR文字识别软件。该软件可把经扫描仪扫描或数码相机拍摄的纸质文档图片或PDF文档转换为可在WORD、EXCEL等文字处理软件中编辑的文本格式文件,文字的识别率非常高,英文文字的识别率甚至达100%。Abby FineReader可识别多国文字,是外语教师的必备工具软件。有了Abby FineReader,外语教师就可从试题文字录入的重负中解放出来,而把时间和精力专注于试题的审查和筛选工作,毕竟题库的建设工作中,试题的质量是最重要的。建议把Abby FineReader识别后的文字复制粘贴到记事本中,变为通用纯文本文件,以减少在试题制作中因文本格式的兼容问题而出现的一些莫名其妙的错误。

(三)制作试题

在Moodle中编制试题是非常繁琐的,效率非常低。在这里介绍一些软件开发者针对Moodle开发的试题编辑器。如试题不含嵌入题型(Moodle官网统称CLOZE QUESTIONS),建议使用Hot Potatoes软件作为Modle试题编辑器。如要编制嵌入题型,建议使用Moodle Question Editor或Cloze for Moodle试题编辑器。这两个软件都可在WINDOWS环境下运行。软件的使用方法很简单,基本思路为:(1)把文本编辑器中的试题连同答案复制粘贴到试题编辑器的题干框;(2)选择需要隐蔽的答案文字,选中的文字自动变为正确选项; (3)在空白选项中输入干扰项内容即可。这两个软件保存的文件类型都为XML文件格式。Moodle Question Editor最新版的功能比Cloze for Moodle更完善,更简单易用,值得向广大外语教师推荐。

(四)导入试题

在Moodle课程中选择“测验”活动,设置测验的时间、显示方式、安全设置和反馈方式等选项后保存返回课程,打开新建的测验活动,建立试题类别,而后在“导入”标签中选择导入的试题格式、试题存放的类别和试题文件。

(五)组卷

在“测验”标签中从试题库中选择试题,并对试题赋分即完成组卷。也可从题库的不同类中设置随机抽取的题目数量自由组卷。

测试手段是外语测试的一个重要研究领域,而对于适用于广大外语教师的具体的、经济可行的技术实现手段,国内研究不多,而本文所介绍的开源免费软件在机助外语测试中的应用可对计算机辅助语言测试的实际应用与深入发展起到抛砖引玉的作用。开源免费测试软件为机助外语测试提供了更多的选择余地,为外语教师,尤其是欠发达地区的外语教师在信息网络环境下开展机助外语测试提供了经济适用的解决方案,对推广和普及网络外语测试将起到积极的推进作用。随着开源软件的不断发展壮大及外语测试理论和语言学理论研究工作的深入开展,将涌现出更多、更专业的外语测试软件,但我们不能唯技术是从,技术只为我们提供了工具,能否创造性地使用工具来解决问题才是根本。我们应把更多的精力放在试题的编制上,严把试题质量关,提高题库的质量,从而提高外语测试的信度和效度,使外语测试更好的为教学服务。

【参考文献】

[1]田巧智. 计算机在语言测试中的应用[J]. 长春师范学院学报(自然科学版), 2005(3)

【基金项目】广西来宾市教科所重点立项课题(LBJK2011A001)

【作者简介】郭小锋(1975- ),男,柳州师范高等专科学校外语系讲师,硕士,研究方向:应用语言学、英语教学论。

上位机测试软件说明书 篇4

1、手机或上位机发出的START指令

typedef struct {

unsigned char header;0xFF

unsi gned char header;0xFD

unsigned char serial[4];4个00

unsigned charchecksum;校验和

};

2、血氧仪与手机或上位机通讯协议

(1)、当血氧仪收到Start指令后,将测量好数据向手机或上位机发送,波特率为9600,数据包格式如下:

typedef struct {

unsigned char header;0xFF

unsi gned char header;0xFC

unsigned char dev_type;0x01

unsigned char dev_serial[4];设备ID号

unsigned charreading0;血氧饱和度值

unsigned charreading1;脉率值

unsigned charchecksum;校验和

};

(2)、血氧仪连续发送5次数据后,上位机或POD向血氧仪发送关机指令。格式如

下:FFFA0A0A.3、血压计与手机或上位机通讯协议

(1)、当血压计收到Start指令后,将测量好数据向手机或上位机发送,波特率为9600,数据包格式如下:

typedef struct {

unsigned char header;0xFF

unsi gned char header;0xFC

unsigned char dev_type;0x02

unsigned char dev_serial[4];设备ID号

unsigned charreading0;收缩压

unsigned charreading1;舒张压

unsigned charreading2;脉率值

unsigned charchecksum;校验和

};

(2)、当上位机或POD收到血压计发来的数据包后,向血氧仪发送一条关机指令。格式如下:FFFA0A0A。

4、上位机或POD发出的重发指令,格式如下:FFFB0B0B

上位机测试软件说明书 篇5

目前,我国的农药生产技术处于国际领先水平,但是农药使用技术却很落后,这将直接影响到粮食的产量,是亟待解决的问题。因此,农药喷洒技术的研究也是精准农业的重要研究方向。现在国内外在喷雾技术方面已取得了一些成就,如定向对靶喷雾、变量喷雾、可控雾滴喷雾和静电喷雾等,这些技术在防止作物病虫害中起到了明显的作用。喷雾测试系统是为进一步促进喷雾技术的发展而开发的,它是集控制与检测于一体的自动化系统。由于PLC控制简单、稳定,本系统决定采用三菱公司的FX2N系列PLC作为主控CPU。C#是继C和C++发展而来的,功能强大,设计简单方便,所以采用Visual C#进行上位机系统的开发。

1 喷雾测试系统总体设计

喷雾测试系统是一套测试控制系统,主要用来对不同条件下的喷雾效果进行测试分析,一般分为4大部分:伺服定位系统、压力控制系统、信息采集系统、上位机控制平台。其总体设计框图,如图1所示。接通电源后,在上位机软件上设定好喷洒压力、喷洒速度以及喷洒距离后,可以开启伺服和液罐,进行喷洒实验。在实验过程中,系统可根据不同的故障产生不同的报警信号。实验完成后,可以通过点动操作对喷头进行复位。

1.1 伺服定位系统

伺服定位系统主要由PLC、伺服放大器、伺服电机等组成。该系统要实现的功能是能够精确地对喷杆进行定位。其可设定喷杆的喷洒区间,使喷头只在设定的区间内喷洒;同时,还可以通过设定伺服电机的转动速度来控制喷杆的运行速度。

1.2 压力控制系统

压力控制系统主要由PLC、A/D转换器、D/A转换器、比例调节阀、压力传感器、气缸和液缸等组成,主要用来控制气缸输出压力,从而控制喷洒效果。在不同的压力下雾滴的大小、均匀性都不一样,可以通过反复地设定不同的压力值,对比喷雾的效果,从而得出最佳的压力值。

1.3 信息采集系统

信息采集系统主要由压力传感器、温湿度传感器和A/D转化器等组成。系统通过压力传感器实现对液缸以及喷头压力的采集,通过温湿度传感器实现对室内温度和湿度的采集,这些模拟信号都通过A/D转换器转换为数字信号,再送给PLC,最终显示在上位机界面上。

1.4 上位机控制平台

上位机软件采用Visual C#进行设计,能够实现对整个喷雾测试系统的控制和检测。在上位机上设定好喷雾压力、喷洒速度、喷洒区间后,点击位置启动开关,下位机就会立即执行上位机发出的命令。在喷洒结束后,可按点动按钮对喷头进行复位。在运行过程中,如果违规操作或是电路出现故障就会在上位机软件上发出报警信号。同时,由A/D转换器采集来的压力、温湿度、喷洒速度都会在上位机界面上显示出来,达到实时监测的目的。

2 控制系统硬件设计

硬件系统是喷雾测试平台的骨架,主要是以PLC为核心,再加上一些基本的外围模块,组成整个硬件系统。设计包括对硬件模块的选型、硬件模块的搭建和硬件模块的调试等。

2.1 伺服定位模块

本系统选用FX2N系列PLC作为主控CPU。FX2N系列是FX系列PLC家族中最先进的系列,其由3 000多点辅助寄存器、1 000多点状态、200多点定时器、200点16位加计数器、30多点32位加减计数器、800多点数据寄存器、128点跳步指针和15点中断指针组成。

定位模块选用FX2N-1PG,能够完成1个独立轴的简单定位,这是通过向伺服放大器提供指定数量的脉冲实现的。每1个FX2N-1PG单元都作为1个特殊的时钟起作用,使用FROM/TO指令,并占用8点输入或输出与PLC进行数据传输。脉冲输出格式可选择前向和反向脉冲或带方向的脉冲,在其内部有16位的RAM缓存#0到#31,当2个BFM合在一起可以处理32位数据。

初次进行定位操作时,要进行一次原点回归。原点可以设定为任意位置,以后再进行定位操作时就不用再原点回归了。设定好伺服放大器的基本参数后,通过PLC向FX2N-1PG模块发送指令,FX2N-1PG再发送指令给伺服放大器,伺服放大器再发送指定数量的脉冲来控制伺服电机的运转。同时,伺服电机通过内部自带的编码器返还脉冲给PLC,可以用来检测喷头的当前位置。为了防止用户在定位操作过程中发生误操作,使喷头与其它机械相撞,在喷头的正转方向和反转方向上分别设有正、反转限位开关,喷头到达该位置,电机立即停止转动。

2.2 压力控制模块

压力调节阀选用的型号是MPPES-3-1/4-10-420。此调节阀可调节的最大压力是10bar,输出4~20mA的电流信号,连接于气缸和液缸之间,内部自带1个压力传感器。打开系统,上位机设定好压力后,通过RS232串口将设定的压力值传给PLC;PLC再命令D/A转化器将相应的压力值转换为4~20mA的电流信号,送给压力调节阀,最终得到相应的压力值输出。同时,压力传感器将当前的压力值以4~20mA的电压信号传送给A/D转化器,传送到PLC端,再读回上位机软件。经过一定的数据处理,就可以得到当前的实际压力。

2.3 数据采集模块

为了能够实时检测周围环境的温湿度及下位机各个部分的状态,本系统设计了数据采集模块,并通过A/D转换器把要采集的信息转换成数字信号,由PLC读取,然后再由上位机软件读取处理显示在上位机界面上。A/D转换器选用的是三菱公司的FX2N-8AD,能够实现8通道的信息采集,并且能够和PLC很好地匹配,满足设计要求。数据采集主要是对温度、湿度、压力以及速度的采集,它是上位机实时监控的重要组成部分。

3 控制系统软件设计

系统软件设计包括PLC程序设计和上位机软件设计。PLC程序主要实现对各个模块的控制和通信,上位机软件则是实现一些具体的控制命令和监测。

3.1 PLC程序设计

PLC程序设计包括伺服电机的定位程序设计、A/D以及D/A转换程序设计、比例调节阀的控制程序设计。PLC通过FROM/TO指令与特殊模块进行数据交换。在程序设计中,PLC先通过TO指令设定好FX2N-1PG,A/D及D/A转换器的基本参数,然后再通过FROM指令把所需要的数据读取出来,存储在D数据寄存器中。图2为PLC的程序执行流程图。

FX2N系列PLC的特殊模块最多为8个,按照和PLC的远近次序,通讯地址分别是0~7。在本设计中用到了3个特殊模块,分别是FX2N-1PG,D/A转换器,A/D转化器,它们的通讯地址分别是0,1,2。

PLC程序设计的难点是ABS数据的传输设计。电源接通以后,每当伺服开启置ON,PLC就会读取伺服放大器内的当前位置数据。PLC每次从伺服放大器中读取两位数据,右移的同时写入低位,直到组成32位数据,总共读取16次;然后,再进行32位数据的求和校验,每次读取2位数据,右移的同时写入低位,直到组成6位数据,总共读取3次。ABS数据和校验数据总共读取19次。伺服放大器与PLC的数据传送流程图,如图3所示。

3.2 上位机程序设计

喷雾测试系统的一切操作都可以在上位机上完成,包括伺服电机的开启、定位、喷雾速度的设置、喷雾开启等操作;下位机的运行状态可以在上位机界面上显示出来,并且在上位机上还设有报警复位开关。当发生报警后,伺服电机停止运行,检查出报警原因并解决后,点报警复位开关,伺服电机会重新运行。上位机界面包括伺服定位、喷雾控制、实时监控等。

上位机控制界面,如图4所示。上位机采用Visual C#进行设计,用RS232串口与PLC进行通信,使用编程口通信协议,波特率是9 600,数据位是7位,采用偶校验,停止位1位。数据帧基本格式为:STX CMD DATA …DATA ETX SUM(upper) SUM(lower)。

Visual C#的串口通信采用Visual Studio软件自带的SerialPort控件进行设计。上位机软件的设计还包括对各个软元件的置位、复位、读取、写入等操作,这些操作都有各自的命令代码,分别是“7”,“8”,“0”,“1”。除此之外,从PLC读取的传感器数据还要经过相应的数据处理,再显示到界面上。

下面是一段伺服开启的代码:

在以上程序中,首先初始化串口,然后设定定时器时间间隔,再打开定时器,最后向串口发送控制命令。该命令是将M80置位。M80的通讯地址是5008,置位命令是7。

以下是一段喷洒速度的设定程序:

在该程序中,将喷洒速度的设定数据写入PLC的D11,D10数据寄存器中,写入的是32位数据,共8个字节。写入数值必须以低字节在前,高字节在后的顺序,在这里用substring方法实现这一操作。

4 结束语

本系统是基于PLC和上位机设计而成的,充分发挥了FX2N系列PLC和Visual C#的优点。整个系统已经经过测试,操作方便、稳定,设置好基本的参数,在上位机界面上对其进行操作,可以实现对不同的压力和速度下喷雾效果的测试分析。

参考文献

[1]葛玉峰,郑加强.基于机械视觉的室内农药自动精确喷雾系统[J].农业机械学报,2005(3):86-89.

[2]随顺涛,朱瑞祥.基于脉宽调制的变量喷药技术控制系统[J].农机化研究,2009,31(4):143-145.

[3]三菱电机自动化有限公司.三菱电机使用手册[Z].三菱电机公司技术资料,2009.

[4]刘大印,张文爱,王秀,等.基于单片机的定量农药喷洒控制系统[J].农机化研究,2010,32(3):134-138.

[5]余泳昌,史国栋.风送弥雾机施加静电场喷雾技术的研究[J].河南农业大学学报[J].1995,29(增刊):152-155.

上位机测试软件说明书 篇6

[关键词] DSP 双口RAM 数据交换

[Abstract] Based on the characteristics of TMS320VC5402 and IDT70261, the way of data exchange is produced between DSP and Upper Computer. The interface design scheme is given and the key technique of realizing at engineer is analyzed.

[Keywords] DSP Dual-port RAM Data Exchange Interface

1引言

在某雷达自动测试系统中,程控信号源的本地控制器采用的DSP是TI的公司TMS320VC5402(以下简称C5402),它的主要作用是接收上位机发来的程控命令,经处理后产生控制信号,去控制信号源的频率、功率等各参数。同时,C5402还需将信号源的工作状态及校准数据上传给上位机。因此C5402与上位机之间的数据交换是系统要解决的主要问题之一。

本文将主要介绍一种利用双口RAM IDT70261,实现C5402与上位机数据交换的实现方法。

2 DSP与双口RAM的接口设计

C5402提供有一个主机接口(HPI),它可用来与主设备或主处理器接口[1],但其接口设计较复杂。本文介绍了一种采用双口RAM方式来实现DSP与上位机的数据交换的方法,较易实现。C5402运行速度快,具有10ns(100MIPS)指令周期,工作电压为3.3V,因此它与双口RAM的接口具有一定特殊性[2]。

IDT70261是16K×16bit的双端口静态RAM,允许两个端口同时对内存进行访问;最小访问时间为15ns;利用M/S选择可将数据总线扩展至32位或更高;具有Busy和中断标志;具有片内读写冲突仲裁逻辑;工作电压5V[3]。

IDT70261的中断功能:当左端口向3FFFH单元写入数据时,右端口INTR引脚产生中断,右端口对该单元访问后,中断被释放;当右端口向3FFEH写入数据时,左端口INTL引脚产生中断,左端口对该单元访问后,中断被释放。

利用IDT70261的中断功能,DSP可很容易地与上位机进行数据交换。将IDT70261的INTR接C5402的某一中断引脚;将IDT70261的INTL接测试总线的中断线。当双口RAM写入数据后,首先,上位机对3FFFH单元进行写操作,INTR将变低电平,向C5402发出中断,C5402的中断服务程序读取左端发来的数据。如果C5402要向上位机发送数据,则对3FFEH单元写操作,向上位机发出中断,通知其读取数据。

IDT70261的中断功能使DSP和上位机之间的数据得到及时、准确地交换,因此可把IDT70261中3FFEH、3FFFH单元视为数据交换的“邮箱”。

3 工程实现时的关键技术问题分析

图1是C5402与IDT70261接口图,下面讨论在工程实现时需考虑的几个关键技术问题。

2.1 电平转换问题

C5402的引脚电压为3.3V,而IDT70261的工作电压为5V,必须在DSP和双口RAM之间进行电平转换。经测试,C5402的输出3.3V电平能够驱动输入电平为5V的器件,所以只需将IDT70261的5V信号转换成3.3V输入到C5402即可。

TI公司生产的74LVC16245A是一个带三态输出的16位总线转换器。当3.3V供电时,它能将5V电平转换为3.3V输出,收发的方向由方向控制引脚(DIR)控制。它串在总线上,可为DSP提供5V信号读入的保护。

2.2 C5402和IDT70261时序匹配问题

在DSP的应用中,存储器的存储时间(即速度)指标十分重要,如果所选存储器的速度跟不上DSP的要求,那么整个系统就无法正常工作。图2是C5402读操作时序图。C5402内部读写操作都是单周期的,而外部零等待操作也是单周期进行的。

为了发挥C5402高速性能,同时考虑到其它外设的速度,本文中将C5402的机器周期设为20ns。如果将C5402单个机器周期内完成的读操作分成三段:地址建立时间、数据有效时间和存储器存取时间,那么外部存储器的存取时间大致估计为小于60%的机器周期,即应小于12ns。

图3是IDT70261写操作时序图,它的存取时间最少是15ns,这就需要通过软件或硬件的方法插入等待状态。利用C5402内的软件等待状态寄存器(SWWSR),可以很方便地来设置等待状态。SWWSR映射到数据存储器0028h单元,它可对五个不同的地址空间,分别设置各自的等待状态数:

其中:Low Prog:0000~7FFFh程序空间插入的等待状态数;

Hi Prog:8000~FFFFh程序空间插入的等待状态数;

Low Data:0000~7FFFh数据存储空间插入的等待状态数;

Hi Data:8000~FFFFh数据空间插入的等待状态数;

I/O:0000~FFFFh I/O空间插入的等待状态数。

如果再对软件等待状态控制寄存器(SWCR)进行设置,就可以为以上5个存储空间分别插入0~14个软件等待状态。

在这里将IDT70261所在的存储空间插入2个等待状态,这样既可以满足高速DSP与双口RAM的速度匹配,又为利用C5402的Ready引脚来解决双口RAM访问冲突问题提供了条件。

2.3解决双口RAM访问冲突问题

由前面介绍可知,IDT70261提供了Busy引脚用来解决双口的冲突问题。访问慢的一方的Busy引脚总是被置低,直到另一方访问结束。这就要求访问慢的一方的主控器能够插入等待状态,C5402的Ready引脚提供有该功能。

Ready引脚表示外部设备已作好总线传输准备。如果外部设备未准备好(Ready为低电平),处理器就插入一个等待状态,并再检测Ready引脚。但需要注意的是,处理器只有在至少两个软件等待状态被插入的情况下,才会检测Ready引脚。这也是上面IDT70261所在的存储空间要插入2个等待状态的原因。

因此可以将IDT70261的Busy引脚与C5402的Ready引脚相连,再加上软件编程设置,可解决双口RAM访问冲突。

4 结束语

C5402与上位机之间的数据交换是该程控信号源实现的关键。本文所采用的方法能及时正确地交换数据,接口稳定可靠,已用于工程实现。

参考文献:

[1] 戴明桢等编. TMS320C54x DSP结构、原理及应用.北京:北京航空航天大学出版社,2001.11

[2] 刘益成 编著.TMS320C54X DSP应用程序设计与开发[M].北京:北京航空航天大学出版社,2002:348-351

上位机测试软件说明书 篇7

虽然当前我国的北斗卫星系统发展迅速, 但是其它两个系统, 尤其是GPS系统在我国的应用十分广泛, 发展的相对成熟。所以在拥有自主产权的北斗卫星系统保障的同时, 兼容GPS和GLONASS这两个导航系统来达到最佳的导航效果无疑是备份保障系统最经济可行的方案。这种COMPASS+GPS+GLONASS模式的兼容性接收机就是组合导航接收机。

1. 组合导航接收机功能简介

组合导航接收机最基本的功能是接收北斗卫星信号, 通过解算得到用户位置, 速度, 时间等信息, 同时内嵌可以接收和处理GPS信号, GLONASS信号的模块。三系统可以人工切换使其工作在单一系统模式, 也可以切换到多系统模式下工作, 同时还可以根据各系统状态自动切换到最佳导航状态。

在工作的同时组合导航接收机还会实时上传导航数据给上位机, 为了用户可以方便直观的了解数据中蕴含的信息, 同时控制接收机根据需要传送测量等信息, 就需要开发上位机软件。本文介绍的就是为这种组合导航接收机设计开发的上位机软件。该软件不仅可以应用于这种组合接收机, 也适用于北斗接收机。

2. 上位机软件需求

根据组合导航接收机开发的特点, 上位机软件首先要满足对北斗卫星信息的接收处理, 显示和调试的需求, 要能够根据通讯协议自动生成指令控制接收机进行复位, 历书加注, 输出设置等, 还要操控接收机输出原始导航电文, 卫星信息, 定位信息等。同时对上传的信息要能够进行解析, 并且以直观的形式显示出来, 以方便开发人员调试、测试接收机, 也可以使用户对接收机的导航情况一目了然。其次, 上位机软件还需要对嵌入GPS和GLONASS模块后的组合接收机输出的信息进行控制和解析处理, 并实时显示, 同时还要具有对上传数据的存储功能。

3. 上位机软件的开发

3.1 开发环境

组合导航接收机上位机软件开发选用了VB 6.0, 使用了窗体, 控件, 事件驱动等编程机制, 采用单文档/视图结构, MDI窗体, 使界面简洁美观。

3.2 结构分析

组合导航接收机是一个实时系统, 上位机软件必须根据用户对数据的不同需要自动生成特定的命令发送给下位机, 还要能够让用户通过人机接口界面对接收机进行复位, 信息注入, 初始设置等, 同时实时接收下位机 (DSP) 回传的数据, 并根据传输协议进行解析, 显示。软件结构如下面图1。

3.3 界面设计

界面是上位机人机交互的接口, 也是信息显示的主要场所。界面设计的首要任务是让各类信息显示清晰明了, 并且实时更新。同时界面设计还要从用户的角度要求友好和易于操作。当然, 任何软件在设计之初都要考虑到以后的升级和移植, 本软件也不例外。

上位机软件采用菜单和MDI父子窗口的框架。父窗口为程序中的所有子窗口提供工作空间, 当父窗口被最小化时, 所有子窗口也都被最小化, 只有父窗口的图标显示在任务栏中。父窗口可以包含很多不同样式的子窗口, 完全能够满足将来可能的功能扩充。

根据组合导航接收机的特点, 上位机软件主界面 (父窗口) 又分为菜单区, 发送功能区, 选择区, 子窗口活动区 (实时信息解析显示子窗口, 各种设置子窗口) 。

发送功能区有发送指令的选择, 根据不同指令打开指令设置窗口供用户进行设置, 设置完成后, 软件会自动根据协议完成计算, 校验等工作, 并且生成接收机可以接收的指令填到发送数据预览区 (预览区的作用是方便上位机和下位机联机调试时核对指令数据, 协助调试) , 然后由用户选择手动发送还是定时自动发送。

选择区分为卫星系统选择、定位模式选择和星空图选择。用户可以根据监测需要选择部分或者全部, 相应的显示窗口就会打开。同时软件还留有接收数据显示区, 该区域在普通数据模式下主要用于显示上传信息的原始数据, 可以当普通串口接收软件使用, 当在北斗模式下时可以显示接收到的其它非主要数据的解析结果。子窗口区就是上述打开窗口活动的区域。

上位机软件充分利用VB资源中的各种常用控件, 如CheckBox, ComboBox, CommandButton Timer等, 也使用了一些标准的ActiveX控件, 如MSComm, ListView等, 这些ActiveX控件都需要先通过添加以后才能使用。添加方式在此不赘述。

3.4 关于上位机与下位机 (DSP) 之间的数据通讯

完成界面设计只是为信息显示搭好了平台, 而信息能否正确地显示在平台上, 这才是关键, 也是衡量上位机软件质量的最重要指标。据此朔本求源, 上位机和下位机之间的数据通讯就是重中之重了。由于组合导航接收机采用RS232串口进行数据传输, 无须对串口进行高级控制, 所以上位机软件设计采用了微软公司专门针对串口通讯提供的MSComm控件。该控件有两种处理通信的方式:事件驱动方式和查询方式。基于软件实时性的要求, 设计采用了事件驱动方式, 当串口收到数据 (即接收数据缓冲区中的数据大于一个字节) 就引发OnComm () 函数的comEvReceiver事件, 在该事件中处理接收到的数据。考虑到下位机上传数据量比较大, MSComm控件接收缓冲区要适当设置大一点, 同时在串口使用前一定要清除发送和接收缓冲区。

由于下位机DSP和上位机PC之间通讯, 数据速率的差异性容易导致数据丢失或者一组完整数据被断开, 从而使得数据不能被上位机软件正确解析 (上位机软件对数据处理的原则是只有接收到一组完整的数据时才进行解析和送显) 等错误, 尤其是在速率差异较大时容易出现类似错误。设计要采用软件手法避免这种可能, 保证每一次读取数据时, 接收缓冲区中的数据长度大于或等于要读取的长度, 否则不读取, 关闭On Comm () 接收触发, 直到接收缓冲区中的数据长度足够读取。

3.5 程序设计思想

程序设计采用了模块化设计, 所有的重复通用过程, 如异或校验, 累加和校验, 进制转换, 数串转换等都使用函数进行了封装, 在使用的时候调用。设计还使用了结构化数据类型, 针对不同的信息来源和类型 (如, 北斗定位信息, GPS卫星状态信息等) 定义了不同的数据结构, 这样信息分解的时候可以将其保存在各自的结构体中, 在调用的时候也不会出现错误。同时这些结构体根据使用情况又组成不同的数组, 各种信息分组分类, 无论是应用于计算, 还是显示, 还是存储, 都会有条不紊。

这种程序设计思想不仅脉络清晰, 而且易于移植, 同时也使功能扩展变的简单。比如要增加图形显示功能时, 这些数据模块都可以直接拿来用。软件交付后维护人员维护也方便。

3.6 数据的显示和保存

上位机软件在OnComm () 函数中处理实时数据并在处理完后立即送往人机界面显示。主显示界面如图2, 部分显示窗口内含ListView控件, 该控件可以将信息以报表形式显示, 如图3。有的显示窗口运用标签页将数据分类显示, 如图4。为了便于观测个系统下卫星的分布, 软件还采用了图形显示方式显示, 如图5, 这些表现形式使得数据显示清晰, 简洁, 明了, 卫星系统状态直观明确。

实时显示数据有利于数据观测, 但是通常, 我们也需要将一定时间内的数据保存下来做进一步的分析。为此上位机软件设计有数据保存功能, 可以以文本方式保存一定量的原始数据或者分解数据。用户可以随时清除, 随时保存。

3.7 验证

通过和下位机联机测试, 运行良好。

4. 结束语

上位机软件根据组合导航接收机的需求, 分别开发了发送指令的自动生成, 接收数据的实时解析和显示, 上传数据的保存等功能。为北斗接收机, GPS接收机, GLONASS接收机, 或者类似于组合导航接收机这样的兼容接收机的设计和开发提供了有效的测试参考方案和依据, 同时也是用户观测导航数据的一种理想模式。

参考文献

[1]王娟, 仇跃华.导航接收机上位机软件的设计与开发.微计算机信息, 2008, 24 (1) :169-170.

[2]鲁郁.GPS全球定位接收机原理与软件实现。北京, 电子工业出版社。2009.6.

上一篇:物流公司安全管理的规章制度下一篇:人文与自然的和谐美