(机械制造及其自动化专业论文)基于labview的机电计算机自动测试系统软件开发.pdf_第1页
(机械制造及其自动化专业论文)基于labview的机电计算机自动测试系统软件开发.pdf_第2页
(机械制造及其自动化专业论文)基于labview的机电计算机自动测试系统软件开发.pdf_第3页
(机械制造及其自动化专业论文)基于labview的机电计算机自动测试系统软件开发.pdf_第4页
(机械制造及其自动化专业论文)基于labview的机电计算机自动测试系统软件开发.pdf_第5页
已阅读5页,还剩52页未读 继续免费阅读

(机械制造及其自动化专业论文)基于labview的机电计算机自动测试系统软件开发.pdf.pdf 免费下载

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

摘要 i i i iii ii i i i1 1 111 1uiil y 2 0 6 7 17 7 自动测试系统是以工控计算机为核心的测试系统,它通过软件控制数据采集 卡、程控电源、程控万用表等设备,实现对被测试设备的输入输出信号采集和测 量,并把测试得到的数据通过计算机软件进行处理,然后把处理过的数据通过表 格或者报表呈现给用户。 l a b v i e w 是一种业界领先的工业标准图形化编程工具,主要用来开发测试、 测量与控制系统。它是专门为工程师和科学家而设计的直观图形化编程语言。它 将软件和各种不同的测量仪器硬件及计算机集成在一起,建立虚拟仪器系统,以 形成用户自定义的解决方案。让以往复杂的数据采集工作变的异常简单,工作人 员可以集中精力用于实验的执行、数据的分析及结论的总结上,而不用将大量的 时间花费在测量系统设备的搭建中。 本文以l a b v i e w 为开发平台,详细介绍了自动测试系统软件的设计思想及 流程,并重点介绍了开发过程中出现的问题和解决方法。 关键字:l a b v i e wa t e 自动测试系统虚拟仪器 a b s t r a c t a u t o m a t e dt e s t i n gs y s t e mi si nt h ei n d u s t r i a lc o n t r o lc o m p u t e rt ot h ec o r eo ft h e t e s t i tc o n t r o l sd a t ac o l l e c t i o nc a r d s ,p o w e rs u p p l ya n dm u l t i m e t e rt h r o u g hs o f t w a r et o g e tt h ei n p u ta n do u t p u ts i g n a lo ft h et e s t e de q u i p m e n t , t h e ni tt r a n s f o r mt h ed a t at ot h e f o r mo rr e p o r tp r e s e n t e dt ot h eu s e r l a b v i e wi sa ni n d u s t r yl e a d e ri nt h ei n d u s t r ys t a n d a r dp a t t e r no fp r o g r a m m i n g t o o l ,u s e dc h i e f l yf o r t h ed e v e l o p m e n ta n dt e s t i n g ,m e a s u r e m e n ta n dc o n t r o ls y s t e m s i t i si n t e n d e df o r t h ee n g i n e e r sa n ds c i e n t i s t sd e s i g n e dag r a p h i cd i r e c t l yi n t o t h e p r o g r a m m i n gl a n g u a g e i tw i l lm a k et h es o f t w a r ea n dav a r i e t yo fe q u i p m e n ta n d c o m p u t e rh a r d w a r ea n di n t e g r a t e dt o g e t h e r , a n ds e tu pav i r t u a li n s t r u m e n ts y s t e mi n o r d e rt oc r e a t eau s e rc u s t o m i z a t i o ns o l u t i o n 1 e tt h ec o m p l e xd a t ac o l l e c t i o nw o r ko f t h e s i m p l e ,w o r k e r sc a nc o n c e n t r a t eo nt h ei m p l e m e n t a t i o no ft h e d a t au s e d ,t h e a n a l y s i sa n dc o n c l u s i o n so ft h er e v i e w , b u td o n tb eal o to ft i m es p e n to nt h es y s t e m u n i to ft h es t r u c t u r e s t h i sa r t i c l et o t h ed e v e l o p m e n tp l a t f o r ml a b v i e wa n di n t r o d u c e dc o m p u t e r t e s t i n gs y s t e ms o f t w a r ed e s i g na n dt h ep r o c e s sa n df o c u si so nt h ed e v e l o p m e n t p r o b l e m sa n ds o l u t i o n s k e y w o r d :l a b v i e w a t ec o m p u t e rt e s t i n gs y s t e m s v i r t u a li n s t r u m e n t s 第一章绪论 第一章绪论 1 1 课题背景 随着电子技术和计算机技术的迅猛发展,以计算机和信息处理为中心的自动 测试系统在科学研究和实际工程领域都得到了广泛应用。在军事应用领域,电子 测试技术和测试系统要求越来越高、测试项目和测试范围要求不断扩展、测试速 度和精确度要求也与日俱增,都迫切需要进行自动化测量。 自动测试系统【l j 在军事装备测试领域中占有非常重要的地位。对于航空领域, 由于飞机各种系统的自动化程度和技术密集程度的不断提高,使得飞机的维护工 作者对相应的检测设备和维修设备的性能也提出了更高的要求,各种检测设备的 软硬件结构能够易于重新组合的a t e ( a u t ot e s te q u i p m e n t ) 1 2 l 技术的应用也是飞 机各种系统检测、维修的发展方向。我国机载设备都必须经过航空地面测试设备 的检测,合格后方可装机,来确保机载设备的质量。有精确的航空地面检测设备, 才能把好机载成品的质量关,而要保证航空地面检测设备的准确度,必须要有高 质量的校准设备和校准手段。基于l a b v i e w 2 】的虚拟仪器技术【3 】由于开发周期短, 成本低,灵活性强的优点,成为近年来测试设备发展的新方向。 1 2 课题任务 本次研究任务的目标,就是要完成对某研究所批量生产的2 种机电计算机进 行出厂检验测量和地面合格性测量。机电计算机是一种承担飞机上舱门开启、起 落架收放、液压和气动执行机构动作的控制中枢。机电计算机工作的正确性和可 靠性必须在制造过程中得到准确的测量。由于该类计算机已经处于批量生产状态, 不可能仅仅依靠技术人员和简单的通用仪器设备来完成这项工作,所以,在实际 的科研和生产实践中,这个工作必须通过一种专用的测试设备来完成。 本次所研发的测试设备的测试过程如下:机载计算机( 目标机) 内部储存器 中驻留有专用的测试软件,用来检测本机的各个功能是否正常。对于自测试,就 是测试设备向目标机发送一条命令,目标机开始自己测试自己的系统工作是否正 常,测试完成后,目标机将向测试设备返回一条命令,说明测试是成功还是失败。 对于外部测试,需要测试设备先向目标机加激励( 如离散量、模拟量等信号) ,然 后发送测试命令,目标机识别信号后,判断该信号的值,如高低电平,电压电流 值等,并把检测到的值返回给测试设备,测试设备通过对比发送信号的值与目标 基于l a b v i e w 的机电计算机测试系统软件开发 机检测接收到的值,来确定测试是否正确。 1 3 国内外研究现状 目前,国外自动测试系统( a t s ) 正向通用化、标准化、网络化和智能化的方 向迈进。构建通用化自动测试系统,实现测试软硬件资源共享;采用开放的商业 标准和工业标准,减少测试系统软、硬件的开发和升级费用;规范软硬件开发过程, 提高测试设备的互换性和通用性,实现测试程序集的可移植性和可重用性;构建 高性能测试系统,优化测试序列,缩短测试时间;构建网络化测试系统,实现测 试过程的远程控制与远程故障诊断。 现在,国内自动测试系统也向通用化、标准化方向迈进。本项目所做自动测 试系统就是对通用化的一种尝试。原有测试设备只能测试一种型号的计算机,本 测试系统通过硬件复用的方法实现了一种测试设备测试两种类型的计算机,为自 动测试系统由专用化到通用化迈出了重要的一步。 1 4 课题来源及本人主要工作 本课题来源于某研究所的实际科研生产需求。此研究所生产有a 、b 两种型号 的机电计算机,用于不同型号的飞机上。机电计算机在出所时都需要有专用的检 测设备进行严格的测试,以保证机电计算机的技术指标达到要求。a 、b 型号的机 电计算机原有的自动检测设备的使用年限均已超标,设备已经老化,工作不稳定, 测试精度和测试速度也无法满足现在生产的要求,影响了科研和生产。因此其迫 切需要开发一套新的自动化的测试设备。 2 0 1 0 年9 月至2 0 1 1 年5 月,作者参与了某型号航空计算机地面测试设备的 开发。论文选题以此次开发为依据,将结合此项目的设计开发过程,详细论述其 中所采用的一些关键技术,并对开发过程中遇到的困难和解决的方法做重点的讲 解。 作者的主要工作是负责机电计算机自动测试系统软件部分的设计与实现,在 x 8 6 工控机、w i n d o w s 操作系统环境下,完成整个测试系统软件部分的开发和 调试,具体的工作包括以下几个方面: ( 1 ) 软件整体架构的设计与实现。 ( 2 ) 各个子模块的功能设计。 ( 3 ) 软件图形用户接口的设计及美化。 ( 4 ) 关键性技术问题的分析与解决。 第一章绪论 3 ( 5 ) 整机系统的调试和测试。 1 5 论文章节安排 本文分为六章,各章的主要内容安排如下: 第一章绪论,主要讲解了论文的选题背景、课题来源以及作者本人所承担的 工作。 第二章机电计算机测试系统,主要讲解了机电计算机测试设备的工作原理。 第三章项目需求分析,主要讲解了开发前对用户的需求进行分析,并根据需 求选择硬件设备和软件开发工具。 第四章软件设计,主要讲解了软件设计的总体思想、软件概要设计以及软件 详细设计。 第五章项目开发的重点问题,主要讲解了系统在开发过程中所遇到的技术问 题及解决方法。 第六章软件的测试与优化,主要讲述了软件开发后期对如何对软件进行测试 和优化,以提高软件的稳定性和运行速度。 结束语,对整篇论文进行总结,并指出工作中的不足和尚需改进的地方。 第二章计算机测试系统 第二章自动测试系统 2 1 自动测试系统的简介 机电计算机1 4 1 是一种承担飞机上舱门开启、起落架收放、液压和气动执行机 构动作的控制中枢。它具有多路数字离散量i o 端口,模拟量i o 端口,r s 4 2 2 、 1 5 5 3 b 等通信端口与其他设备相连接,以实现机械部件状态的采集、运动的控制 等功能。 对于军事设备,由于需要在高温、低温、潮湿等恶劣的环境下使用,稳定性 和可靠性是最为关键的一点。机电计算机作为飞机的重要的飞行控制设备,若其 在工作状态下出现问题,很有可能导致飞机的失控。因此其工作的正确性和可靠 性必须在制造过程中得到准确的测试与验证。由此便需要专门的设备对机电计算 机进行测试。 测试系统发展至今,大体经历了5 代:模拟仪器时代、分立元器件时代、数 字化时代、智能化时代和虚拟化时代【5 l 。 第一代模拟时代。第一代的模拟一起是以电磁感应定律为基础的模拟指针式 仪器1 6 l ,是在2 0 世纪4 0 年代发展起来的,是为针对某种测试目的而专门设计制 造的专用仪器。 第二代分立元器件时代。当2 0 世纪5 0 年代出现电子管、6 0 年代出现晶体管 时,便产生了以电子管或晶体管为基础的第二代测试设备。如指针式万用表、晶 体管电压表1 7 j 等。 第三代数字化时代。2 0 世纪7 0 年代集成电路的出现,随之诞生了以集成电 路芯片为基础的第三代测试设备数字化设备【8 j 。这类仪器设备将模拟信号的 测量转换成数字信号的测量,并以数字方式输出最终结果,适用于快速响应和较 高准确度的测量。它将测试的精度、分辨率和测量速度提高了几个数量级。 第四代智能化时代。随着微电子技术的发展和微处理器的普及,2 0 世纪8 0 年代出现了以微处理器为核心的第四代测试仪器与系统1 9 】。这类仪器都内置有微 处理器,既能进行自动测试又有一定的数据处理能力,可以取代部分脑力劳动, 习惯上称为智能仪器与自动化系统。它使测试仪器的功能发生了质的变化和飞跃, 由个别电量的测试发展到使用测试系统进行测量,测试的领域也由时域和频域发 展为对数据域进行测量,仪器面板的操控和显示由鼠标键盘和显示器取代。 第五代虚拟化时代【l o l 。随着计算机科学的发展,测试技术与计算机技术的融 合正在引起测试领域一场新的变革,出现了一种全新的仪器结构概念虚拟仪 6 基于l a b v i e w 的机电计算机测试系统软件开发 器。虚拟仪器技术就是利用高性能的模块化f o 硬件,结合高效灵活的软件来完 成各种测试、测量和自动化的应用。硬件模块只负责信号的输入和输出,而信号 的处理都由软件来进行。这便大大增强了测试的灵活性,可以定制所需的测试过 程。只需点击一下软件按钮,便可以按照预定的设计完成信号的输入输出,测试 结果的分析与显示,测试数据报表的生成,不仅缩短了测试的时间,降低了测试 成本,测试精度有了很好的保证。 作者负责的机电计算机测试系统的结构如下: 可视化集威:i 昊! 腻环境 系统应用软件 测试控制模块软件 通信程序命令处 单元测试摸块软件 理程序构成的机 电管理驻留软件 机电管 模块 理系统 数据采集驱动包 习:竺:f 测试执行软件模 较件 模拟量输出驱动包 日工t 块 数字工醒动包 模块 软件开发环境 串行通信驱动包 w i n d o w s 操作系统 基本 r i o 驱动程序 珏浸腻设备硬件 机电管理硬件 图2 1 机电计算机自动测试系统结构图i j 其中,可视化的集成测试环境主要负责为测试人员提供测试目标机、显示测 试结果的平台,如控制硬件进行测试、测试结果的处理与显示、报表的生成等。 测试控制模块通过调用单元测试模块完成一个功能块的测试流程,如,先发送测 试命令,再采集目标机的输出电压或电流,然后与预设值进行比较,最后把测试 的结果显示出来。单元测试模块通过调用驱动程序对硬件进行控制,完成一个单 一的基本功能,如采集电压、电流信号,控制交流直流电源输出电压,控制万用 表采集电压,通过r s 2 3 2 发送测试命令等。 目标机中驻留有测试软件,测试系统通过r s 2 3 2 与目标机相连,测试系统 通过r s 2 3 2 向目标机发送规定的测试指令,使目标机进入到对应的测试状态, 测试结束后,目标机通过r s 2 3 2 向测试系统返回对应的测试命令,用来表明测 试的状态,以及测试是否成功。 2 2 自动测试系统的技术特点 自动测试系统旧是计算机与测控技术、电子技术、澳4 试仪器技术深层次结合 第二章计算机测试系统 7 的产物。它和传统的电子测试仪器和系统相比有如下特点: 自动校零【1 3 1 。可在每次采样前对传感器的输出值自动校零,从而降低了 因测试系统漂移变化造成的误差,提高测试精度。 自动修正误差【1 4 1 。许多传感器的特性是非线性的,且受环境参数变化的 影响比较严重,从而给仪器带来误差。采用计算机技术,可以依靠软件进 行修正,也可以把系统误差储存起来,便于以后从测试结果中扣除,提高 测试精度。 量程自动切换。可根据被测量值的大小自动改变测量范围,从而提高分辨 率。 多点快速测试。可同时对多种不同参数进行快速测量,对某些重要参数还 可以多次重复测量,从而减小随机误差。 数据处理功能。能把册来那个的数据进行分类处理,并进行数学运算、误 差修正、量纲换算等工作,从而实现传统仪器无法实现的各种复杂的处理 和运算。利用计算机软件对测量值进行数字滤波处理,可有效抑制各种干 扰。 联网功能。利用计算机的数据通信功能,可以增强测试系统的外部接口功 能和数据传输功能。采用网络功能的测试系统将拓展一些全新的功能,如 易于远距离测试和资源共享,便于分布式测量、集中控制等。 结果的判断与自我诊断功能。采用计算机技术的测试系统可根据预先给定 的指标,判断结果的正确性,并能自动记录和显示。可对测试系统自身进 行实时监测,一旦发现故障则立刻进行报警,显示故障部位或可能的故障 原因,可以利用专家系统对故障排除方法进行提示。对于采用硬件热备份 的系统,还可以进行热切换,保证测试工作不中断。 虚拟仪器功能。由物理仪器向虚拟仪器的发展进一步缩小了测试设备的体 积,减轻其重量,增强其实用性和灵活性。 模拟仿真【l 卯。利用计算机技术,可以对被测信号进行模拟,用于系统的 自身调试,也可以将采集的信息进行回放,用于模拟或仿真被测设备的输 出,扩展系统功能。 2 3 自动测试系统类型 随着计算机技术的发展,构成测试系统的可选性不断加大,按照测试功能要 求,可构成多种类型的计算机测试系统。因此,在计算机测试系统分类问题上并 没有严格的统一规范,但在实际应用中为了便于说明问题和强调某方面的特点, 基于l a b v i e w 的机电计算机测试系统软件开发 人们从不同的角度提出了几种分类方法。根据测试系统的硬件组合形式,将其分 为标准总线测试系统,专用计算机测试系统,混合型计算机测试系统和网络化测 试系统等4 中类型n 引。 ( 1 ) 标准总线测试系统 目前得到广泛采用的标准总线测试系统种类非常多,例如有p c 标准总线、 g p i b 标准总线、v x i 标准总线和p x i 标准总线等。这类系统采用各种标准总线, 在p c 计算机主板的扩展槽或者扩展机箱插槽上、工控机底板插槽上、v x i 和p x i 机箱背板总线上,插入各种a d 、i o 等功能和仪器模块板,即可构成一个用于 完成预订功能的计算机测试系统。 ( 2 ) 专用计算机测试系统 专用计算机测试系统是是将具有一定功能的模块相互连接而成。专用计算机 系统又可分为两大类,一类是专业生产厂商设计的大型、高精度的专用测试系统。 另一种是专业生产厂商生产的小型智能测试仪器和系统。 专用计算机测试系统最重要的特征是系统的全比软硬件规模完全根据系统的 要求配置,系统的软硬件应用配置比高。因此,系统具有最好的性价比,在大批 量定型产品中采用这种类型比较合适。 ( 3 ) 混合型计算机测试系统 这是一种随着8 位、1 6 位、3 2 位单片机出现而在计算机测试领域中迅速发展 的结构形式。它由标准总线系统与由c p u 或单片机构成的专用计算机测试系统组 成,并通过各种总线将两部分连接起来。标准总线系统的计算机一般称为主机, 主机承担测试系统的人机对话、计算、储存和处理、图像显示等任务。专用机部 分是为完成系统的特定功能要求而配置的,如各种数据的现场采集,通常称为子 系统。 ( 4 ) 网络化测试系统 利用计算机网络、总线技术将分散在不同地理位置、不同功能的测试设备集 成在一起,加上服务器、客户端以及数据库,组成测试局域网系统,通过网络化 的虚拟仪器软件,共同实现复杂、相互组合的多种测试功能。网络型计算机测试 系统的灵活性较大,可用多种方式及时地获取反应外界情况的数据。网络型计算 机测试系统不论对硬件设备的配置,还是对网络软件的设计多有较高的要求。 2 4 自动测试系统设计原则 自动测试系统是以计算机为核心的测试系引r 丌,不仅要求设计者熟悉所设计 系统的工作原理、技术性能、应用目的。同时要求设计者掌握计算机的软硬件工 第二章计算机测试系统9 作原理,并了解国内外计算机测试技术现状及发展趋势。为了提高测试系统的设 计水平,提高投资效益,在进行自动测试系统设计时一般要遵循和参照一下原则: 高性能原则【1 8 】。测试系统可容纳的接口种类要多、通道容量要大、采集 频率要快、采集速度要高、数据存储器容量要大、实时采集与处理能力要 强。 小型化和自动化原则。设备结构要小型化和标准化,以便于在工业现场、 飞机和舰船等特殊环境安装;自检功能要完备;智能化水平要高、要便于 操作。 可靠性与稳定性原则i 搠。要重视和加强电磁兼容性、高频信号的屏蔽与 隔离及接地回路的设计;减少连接电缆和插件的数量,提高设备可靠性和 稳定性。 适应性原则。测试系统适应性要强,以便更多的适应本行业或相关行业不 同测试对象的需求,从而提高投资效益。 2 5 本章小结 本章详细介绍了机电极端及自动测试系统的概念、工作原理、技术特点以及 测试系统的设计原则,阐述了本项目所做的测试设备相对于以往设备的优势。 1 0 一: 茎王丝! 堡! 箜垫皇盐簦塑型鎏墨竺鏊堡墅垄 - _ _ _ _ _ _ _ _ _ _ - _ _ l - i - - _ _ _ _ _ _ - _ _ - - - - _ _ _ - _ - - _ _ - _ - _ _ _ _ _ l _ _ _ _ - _ _ _ - - - _ _ _ 一一。 第三章项目需求分析 第三章项目需求分析 客户方有a 、b 两种类型的计算机,用于两种不同的飞机上,由于a 、b 两 种计算机原来的测试设备老化,性能和稳定性均不能满足实际生产的需要,客户 方希望重新制作一台测试设备,满足如下要求: 一台测试设备能够测试a 、b 两种不同类型的计算机。 一台测试设备能够最多同时测试4 台a 或b 型计算机。 由于需要实现两种机型,一拖四的功能,此次所研制的测试设备在硬件、软 件的复杂度、开发难度上都远超过以前的测试设备。因此对开发人员提出了更高 的要求。 3 1 1 输入输出需求 3 1 硬件需求分析 本测试设备需要测试a 、b 两种型号的计算机,由于a 、b 两种机型所需要 的激励信号有很大的重合度,因此可以采取硬件复用的方法,即按照a 型机和b 型机中最大硬件需求来进行选择,通过软件选项来选择测试机型的种类,然后再 把对应的机型与测试系统相连即可。对用户需求的分析和整理,a 型机和b 型机 的测试需求可以归纳成下列内容: 表3 - la 型机电计算机的测试要求 序测试要求信号备注 号 l 数字l 路双通道多路数据总线接口( i ) 2数字 l o 路异步串行通信接口( 全双工2 、半双工8 路) , r s - 4 2 2 a 3 d i 1 0 0 路机械地开路信号输入接口 4d i 5 路晶体管地开路信号输入接口 5d i 2 路2 8 5 v d c 开路离散量信号输入接口 6d i 2 路1 1 5 w 开路、4 0 0 h z 交流状态信号输入接口 7d i 8 路t t l 电平离散量输入 8 a i 2 路2 8 5 v 阀门状态信号输入接口 9a i 4 路3 2 v 阀门状态信号输入接口 1 2 基于l a b v i e w 的机电计算机测试系统软件开发 1 0a i 4 路1 1 5 v 、4 0 0 h z 交模入接口,检测有效值( v r m s ) 和频率 1 1a i 2 0 路交流状态信号输入,输入信号范围:0 v 1 2 6 v a c 4 0 0 h z 1 2a i 3 0 路直流状态信号输入,输入信号范围:0 v - - 一3 3 v d c 1 3d o 5 路离散量功能输出接口,吸收电流为1 0 0 m a 2 8 5 v d c 1 4 d o 3 路”几电平离散量输出 1 5d o 6 路并行地址总线输出接口,符合e i a r s - 4 2 3 a 标准 1 6a o 3 路二次电源输出, 表3 - 2b 型机电计算机的测试要求 序测试要求信号备 号 注 l 数字l 路双通道多路数据总线接口( m b i ) 2 数字8 路异步串行通信接口,符合r s - 4 2 2 a 标准 3a i 9 路0 m a - - - 1 0 m a 电流源型差分输入 4a l 7 路2 8v d c 模拟量输入信号 5a l 1 0 路l1 5 v a c ,4 0 0 h z 模入信号,检测该路输入的有效值 ( v r m s ) 6a i 1 路模拟量差分输入信号,输入电压范围为3 v 7 v 7a l l 路模拟量差分输入信号,输入电压信号范围1 6 5 v 3 1 5 v 8d i 4 7 路地,开离散量输入接口 9d i1 2 路晶体管埘开路离散量输入接口 1 0d i 9 路2 8 w 开离散量输入接口 1 1d i 1 路”儿电平离散量输入 1 2d o 5 路并行地址总线输出接口,符合e i a r s - 4 2 3 a 标准 1 3d o1 路离散量输出接口,输出电流为2 a ,电压为2 8v d c 1 4d o 8 路离散量输出接口,吸收电流为2 8 v d c ,4 0 0 m a 1 5d o 4 路离散量输出接口 1 6a o l 路模拟量输出接口,3 路二次电源输出 3 1 2 硬件选择 对上述测试需求进行分析,决定选用如下设备: 工业控制计算机:1 9 6 u 标准机箱+ p c i 总线主板; 1 9 “工业显示器 3 2 路单端1 6 通道差分输入数据采集卡:p c i 17 1 3 : l 路g p i b 接口卡:p c i 3 4 8 8g p i b 接口卡: 1 6 通道全双工智能r s - 4 2 2 串行通讯:p c i c 3 2 0 l o t l lr _ b 0 : l 套 1 套 l 块 第三章项目需求分析 8 通道半双工串行通讯接口卡:p c i c p l l 8 u ; 8 通道r s 2 3 2 c 通信接口卡:p c i s u n i x 1 6 选一的d p d t 继电器多路扩展卡:p c l d 7 8 8 ; 1 6 通道s p d t 继电器输出卡:p c l d 7 8 5 b ; 数字i o 接口卡:p c i 1 7 5 3 ,9 6 线数字i o ; 1 6 通道功率继电器输出卡:p c l d 8 8 5 : p c m b i 卡1 5 5 3 b ( 含分配器及线) : p c i 1 7 3 0 集电极开路离散量i o 卡 p c i 1 7 5 7t t l 电平离散量i o 卡 p c i 1 7 1 5 u3 2 s 1 6 出1 2 位5 0 0 k s s 隔离模拟量采集卡 安捷伦的n 6 7 0 2 a 系列:4 路0 3 5 v d c 8 5 a j l 2 0 0 w 程控数字电压表h p3 4 4 0 1 : 程控交流电源h y 6 7 0 5 15 0 、r a c i 4 2 a 4 5 10 0 0 h z 交流电源时序器 m s 2 7 4 8 4 系列航空连接器 m s 2 7 5 0 8 e 系列航空连接器 高温电线屏蔽线 接口板机箱 1 9 “标准机柜 3 2 1 软件的需求 3 2 软件需求分析 4 块 l 块 9 块 1 0 块 3 块 l 块 1 套 1 块 l 块 l 块 l 套 l 套 l 台 l 台 1 2 0 套 1 5 套 1 3 6 0 0 米 2 套 l 套 软件需要有如下功能: 基本参数设置:主要用来设置一些对被测计算机加电前需要配置的参数。 如被测计算机类型选择,被测计算机通道选择,被测计算机各个模块编号 等。此参数的设置将保存为一个配置文件,其他模块需要此模块的参数时, 可以通过读取此模块的配置文件获得。 计算机上下电:初始化需要使用的板卡和设备,然后根据基本参数的设置 信息,向对应的被测计算机供电。 计算机下电:对已经上电的计算机停止供电。 用户管理:设置和修改登录信息,如用户名和密码等。 设备信息管理:每个板卡都有对应的一个设备号,程序通过这个设备号来 1 4基于l a b v i e w 的机电计算机测试系统软件开发 操作对应的板卡。在重装系统后,系统分配的设备号有可能发生改变,因 此需要留出此模块,当计算机系统因故障重装后,需要对此进行配置,这 就省去了重新编译软件的麻烦。 串行通讯设置:设置串口波特率、校验位、停止位等信息。 a t e 自检:由于测试系统板卡众多,连线复杂,在设备运输途中有可能 导致故障,为了保证被测试设备的安全,在测试系统进行搬运后,应该对 整个计算机测试系统进行自检,以确保测试系统的正确性。 整机自动测试:遍历测试机电计算机各个子模块的所有功能。 模块级自动测试:测试机电计算机单个模块的所有功能。 手动测试:测试机电计算机某个具体的功能。 报表预览打印:根据测试生成的数据,按照要求生成某种格式的报表文件, 并可以对此文件进行报表的打印。 3 2 2 软件平台及开发工具的选择 操作系统方面,主要有两类选择,一类是w i n d o w s 操作系统,另一类是类 u n i x 操作系统( 主要为l i n u x ) 。由于项目开发周期紧张,最终选择驱动程序 丰富、稳定性高的w i n d o w 2 0 0 3 服务器版操作系统。 开发工具方面,一类是基于传统文本语言的v b 、v c 、c + + b u i l d e r 、c 撑 等开发工具,这类开发语言具有适用面广、开发灵活的特点。但这种开发方式对 测试人员的要求很高,需要自己将各种数据处理方法用计算机语言实现,还要对 用于数据通信的各种连接总线( 如r s 2 3 2 、g p i b 等) 非常熟悉,绝大多数的测 试工程人员难以做到,或者要花大量的时间来研究,而懂得这些编程方法的人员 又不一定懂得测试技术。因此用这种平台语言开发测试工程软件难度大、周期长、 费用高。 另一类是基于图形化的编程软件,如n i 的l a b v i e w 、h p 的v e e 、h e m 公 司的s n a p - m a s t e r 、i o t e e h 公司的d a s y l a b 等。这类组态软件都通过建立和连接图 标来构成虚拟仪器工作程序并定义其功能,具有上手快、编程效率高、稳定性强 的特点。 权衡利弊之后,最终选择l a b v i e w 作为本项目的开发工具。l a b v i e w 相对 于其他开发工具,由如下优势l z u j : 直观、丰富的仪器图形控件。由于l a b v i e w 是用图形化的界面来模拟传 统仪器的控制面板等交互部件,开发平台内置了种类丰富的仪器设备图形 化控件,供软件开发者使用,如示波器控件,如选择其他开发环境,还需 要自己编写,但使用l a b v i e w 就可以直接使用。 第三章项目需求分析 1 5 丰富的硬件驱动。由于l a b v i e w 的应用范围主要是虚拟仪器,所以其内 置了大量的稳定的设备驱动,只需简单的设置,便可以驱动硬件设备,这 大大加快了调试硬件的速度。 强大的数据处理能力。l a b v i e w 内置了很多数据信号处理模块【2 ,可以 很方便的对采集到的信号进行处理。 基于图形化的编程方式。图形化的编程方法比较直观,很容易上手,编程 效率比较高,能够节省开发时间。 高可靠性和稳定性。由于l a b v i e w 属于解释类的编程语言,有虚拟机保 驾护航,避免了内存越界之类的特别难于调试的运行期错误,减少了测试 时间。 强大的调试功能。l a b v i e w 内置了非常多的调试选项,其中最有特色的 就是高亮显示,能够非常直观的看到程序的运行过程,很容易找到出错的 地方。 3 3 相关技术的调查与研究 3 3 1 生产者消费者设计模式 生产者消费者设计模式,是指一个模块只负责产生数据,并把数据放入 缓冲区中,另一个模块只负责处理数据( 此处的模块是广义的,可以是类、函数、 线程、进程等) 。产生数据的模块,就形象地称为生产者;而处理数据的模块,就 称为消费者。其结构如图3 2 。 图3 1 生产者消费者设计模式结构图 生产者消费者设计模式,相对于直接调用,有如下好处: 1 ) 解耦 假设生产者和消费者分别是两个类。如果让生产者直接调用消费者的某个方 法,那么生产者对于消费者就会产生依赖( 也就是耦合) 。当以后需要对消费者模 块进行添加、修改或删除功能时,可能会影响到生产者。而如果两者都依赖于某 个缓冲区,两者之间不直接依赖,耦合也就相应降低了。 2 ) 并发支持 1 6基于l a b v i e w 的机电计算机测试系统软件开发 生产者直接调用消费者的某个方法,函数调用是同步的( 或者叫阻塞的) ,在 消费者的方法没有返回之前,生产者只能一直等待。当消费者处理数据很慢,生 产者就会浪费了很多时间。 使用了生产者消费者模式之后,生产者和消费者可以是两个独立的并发 主体( 常见并发类型有进程和线程两种) 。生产者把制造出来的数据存入缓冲区后, 就可以再去生产下一个数据,而不用依赖消费者的处理速度- 3 ) 支持忙闲不均 如果生产者制造数据的速度时快时慢,缓冲区的好处就体现出来了。当数据 制造快的时候,消费者来不及处理,未处理的数据可以暂时存在缓冲区中。等生 产者的制造速度慢下来,消费者再慢慢处理掉。 生产者消费者模式适用于如下场合: 模块功能繁多,逻辑复杂,如模块中包含界面响应代码,业务逻辑代码 等不同功能的代码。 程序代码需要经常更新维护。 在本项目中,使用了生产者消费者模式来实现模块内各个功能间的解耦 以及子模块和主模块的通信。 3 3 2 动态链接库技术 动态链接库英文为d l l ,是d y n a m i cl i n kl i b r a r y 的缩写形式,d l l 是一个 包含可由多个程序同时使用的代码和数据的库,d l l 不是可执行文件。动态链接 提供了一种方法,使进程可以调用不属于其可执行代码的函数。函数的可执行代 码位于一个d l l 中,该d l l 包含一个或多个已被编译、链接并与使用它们的 进程分开存储的函数。d l l 还有助于共享数据和资源。多个应用程序可同时访问 内存中单个d l l 副本的内容。d l l 是一个包含可由多个程序同时使用的代码和 数据的库。 动态链接库可以更为容易地将更新应用于各个模块,而不会影响该程序的其 他部分。例如,有一个大型软件,如果把整个数百m b 甚至数g b 的程序的代码 都放在一个应用程序里,日后的修改工作将会十分费时,而如果把不同功能的代 码分别放在独立的动态链接库( d l l ) 中,将无需重新生成或安装整个程序就可 以应用更新。 动态链接库的优点: 扩展了应用程序的特性,应用程序可以利用动态库来扩充自身的应用特 性。动态库可以以插件的形式存在于应用程序中,并提供应用程序没有 的新的特性。 第三章项目需求分析 1 7 可以用许多种编程语言来编写。不管开发动态库使用的是什么语言,只 要有导出函数都可以被其他语言生产的应用程序调用。从而提高了代码 的可重用性。 简化了软件项目的管理,一个大型的项目是由多个子模块组成的。每个 模块如果是串行开发,则开发效率是非常低的。利用动态链接库可以将 模块以动态库的形式进行划分和开发,这样就允许各个项目组并行的开 发模块,最终提高开发效率。 有助于节省内存,动态链接库允许多个应用程序同时使用,包括访问相 同的功能函数等。这样在一台机器上只要存在一份该动态链接库,其他 的应用程序的可以使用,从而节省磁盘空间。而且,如果多个应用程序 同时使用该动态链接库,该动态链接库只需要加载到内存一次就可以被 其他应用程序使用,从而提高了内存的利用率。 有助于资源共享,动态库里面可以存放一些字符串信息,图片、模板和 多媒体信息等。多个应用程序可以加载该动态库来使用。 有助于应用程序的本地化,动态库里可以存放本地化信息,不同的动态 库可以存放不同的本地化内容,从而加载不同的动态库就可以实现本地 化的切换。 有助于解决平台差异,可以将平台差异相关的函数和变量在动态库里使 用。类如,3 2 位操作系统和6 4 位的操作系统变量的长度和相关的函数存 在差异性,可以把这些放入相应的动态链接库库里,如果是3 2 位的操作 系统,则加载3 2 位的动态链接库,反之则加载6 4 位的动态链接库, 在本项目中,对于硬件板卡驱动,只有部分厂商提供了l a b v i e w 的驱动包, 其他的则以动态链接库的形式提供了板卡的c 语言接口驱动。因此,本项目中使 用了l a b v i e w 调用动态链接库的方法来实现操作硬件板卡。 3 3 3a c t i v e x 控件技术 a c t i v e x 是w i n d o w s 下进行应用程序开发的崭新技术,它的核心内容是组件 对象模型c o m ( c o m p o n e n to b j e c tm o d e l ) 。a c t i v e x 控件相当于在主程序中独立运 行的小程序,它提供一系列的属性、方法和事件,用来和主程序进行交互。使用 a c t i v e x 控件的应用程序和a c t i v e x 控件之间的工作方式是客户服务器方式, 即应用程序通过a c t i v e x 控件提供的接口来访问a c t i v e x 控件的功能。 使用a e t i v e x 控件有如下优势: 编程语言无关。w i n d o w s 下常用的编程开发工具( 如v b 、v c 等) 均 支持a c t i v e x 的开发。a c t i v e x 控件的使用也是编程语言无关的,即用 1 8基于l a b v l e w 的机电计算机测试系统软件开发 v b 开发的a c t i v e x 控件可以再c + + b u i l d e r 、d e p h i 中使用,反之亦 然。于是可以把所需控件的设计和开发工作交由专门的开发人员或厂家 去完成,或借助于其它仪器厂商已设计好的用于构筑虚拟仪器面板的 a e t i v e x 控件,测试系统组建人员只需使用现成的控件来构成虚拟仪器软 件,因此大大地降低了开发难度。用户可以首先考虑购买合适的控件, 其次再考虑自行开发,然后将这些控件按照一定的要求组装起来就能构 建自己的应用系统,从而大大提高了工作效率,又便于以后的修改,从 整体上来说降低了开发成本。 方便替换和升级。设计人员可以把虚拟仪器面板的设计分解成明确定义 的几个模块,然后进一步创建具体的控件来实现它们,当由不同功能的 控件组成的虚拟仪器软件调试时,设计人员会很容易地发现问题所在, 这时只要修改有问题的控件即可。当原来的控件无法满足测试要求时, 可以单独对控件进行修改,只要对外的接口保持不变,就能平滑地将新 的控件替代原来的控件。这种模块化的软件设计思想使程序维护起来相 当方便。 本项目为了简化界面设计,使用了卷轴式菜单控件,使得界面更加漂亮,布 局更加合理,也大大缩短了界面设计的时间。 3 4 本章小结 本章主要讲解了项目开发前的需求分析,包括硬件的需求,如工控机、测试 板卡、连接线的选择,软件的需求,如操作系统、软件开发工具的选择。确定了 测试系统的软硬件平台。 第四章软件设计1 9 4 1 1 客户端设计 第四章软件设计 4 1 软件设计总体思想 软件面向的是特定的用户,用户需要长时间、反复的使用软件,因此,他们 所关心的主要是能否简单、快速的完成测试,系统是否稳定可靠。经过考察,原 来的测试系统软件有如下缺点: 没有实现完全的自动化测试。以往的测试软件,由于各种原因,没有完 全实现测试的自动化。仍有一两个测试项目需要手动输入命令进行测试。 这便延长的测试的时间,当需要测试的计算机量比较大时,就在很大程 度上影响了工作效率,加重了测试人员的负担。 操作复杂。界面的层次太多,用户需要手动调试某个界面时,需要点击 多个选择界面才能到达最终的测试界面,这使得用户在进行手动测试时, 非常麻烦耗时。 测试时间比较长。a 型机整机测试需要1 5 分钟,b 型机测试需要3 0 分 钟。经过分析,程序整机自动测试的方法有问题,导致引入了很多不必 要的等待时间,因此测试时间方面有很大的优化空间。 界面的设计布局不协调。由于各个子模块的界面是由不同的人设计的, 每个人的思维不同,做出的界面外观、操作方式也不相同,不统一的界 面设计降低了软件的易用性。 为了使软件有更好的用户体验,加快软件测试的速度,作者在设计软件 界面的时候,除了继承原来软件的优点外,着力去除以前软件的缺陷, 提出了如下几点要求: 实现全自动化测试,用户只需点击鼠标便可完成全部测试,不需要再输 入测试命令。 尽可能减少用户的操作步骤,把以前主界面一一级子界面一二级子界面 一末级子界面的操作形式转化为主界面一子界面的形式,减少用户操作 次数,提高用户的测试效率。 在保证测试稳定的前提下尽可能的优化测试速度,以前的测试设备做的 有不合理的地方,产生了很多不必要的等待时间,通过优化测试顺序等 方法,便可以节省大量的等待时间,从而加快测试的速度。 基于l a b v i e w 的机电计算机测试系统软件开发 美化用户界面,统一界面设计,原来的测试程序界面由多个人完成,每 个人的思维不同做法也不一样j 界面的设计也有很大的差异,这样不利 于用户的使用。本软件由作者统一设计用户界面,保证界面的一致性, 并加入卷轴式菜单等专业界面控件,使界面变得更加简洁、美观、易用。 4 1 2 软件实现策略 根据分析,本项目软件的测试流程比较清晰,但测试项目却很多,而且需要 考虑区分a 型机和b 型机,一拖四的测试模式,代码量将非常的大,逻辑关系也 很复杂。此次用到的p c i 板卡有1 5 块之多,控制硬件部分的代码调试将十分的 繁杂。因此,本项目软件将会有如下特点: 软件开发流程清晰。测试系统的测试流程比较简单,没有复杂的算法, 通用的测试过程为:测试系统发送测试命令一目标机返回测试命令

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论