(机械电子工程专业论文)飞机地面测试系统组态软件技术研究.pdf_第1页
(机械电子工程专业论文)飞机地面测试系统组态软件技术研究.pdf_第2页
(机械电子工程专业论文)飞机地面测试系统组态软件技术研究.pdf_第3页
(机械电子工程专业论文)飞机地面测试系统组态软件技术研究.pdf_第4页
(机械电子工程专业论文)飞机地面测试系统组态软件技术研究.pdf_第5页
已阅读5页,还剩57页未读 继续免费阅读

(机械电子工程专业论文)飞机地面测试系统组态软件技术研究.pdf.pdf 免费下载

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

文档简介

堕堡堡三些奎耋三兰堡圭兰堡丝兰 摘要 随着计算机技术和总线技术的快速发展,组态软件在工业生产中的应用 越来越广泛,尤其是以l a b v i e w 虚拟仪器技术为代表的组态软件,在测控领 域正发挥着重要的作用,因此对于其在工程实际应用中相关技术的研究,有 十分重要的意义。 本文论述了组态软件及虚拟仪器技术的发展历程,当前的发展和应用现 状,以及将来的发展趋势。课题以l a b v i e w 虚拟仪器技术应用研究为切入 点,结合飞机地面测试系统的设计,主要进行了以下几个方面的工作: ( 1 ) 剖析了l a b v i e w 环境下t c p 通信、u d p 通信、n id a t a s o c k e t 通 信技术原理和实现机制,分析了各通信方式的优缺点和应用场合,并开发了 实际的通信实例对通信的速度、稳定性、可靠性进行综合比较,探讨了远程 控制面板技术及其在飞机地面测试系统远程在线监控中的应用。 ( 2 ) 在对l a b v i e w 环境下数据库访问各种实现方式研究的基础上,分 析了利用a d o 技术与结构化查询语言( s q l ) 相结合实现数据库访问的可 行性和特点,实现了l a b v i e w 环境下对本地数据库和远程数据库的操作,并 应用到飞机地面测试系统中,对测试系统数据进行有效的组织和管理。 ( 3 ) 介绍了多线程相关概念和实现原理,分析了l a b v i e w 多线程系统 构架,重点探讨l a b v i e w 高级程序设计中如何定制多线程结构和确定线程数 目,提出了合理设置v i 优先等级和线程优化的方法,并将多线程技术应用 到飞机地面测试系统设计中。 ( 4 ) 开发了基于分布式测控系统思想的飞机地面测试系统上位机测控 软件部分,配合下位机的相应硬件设备,对飞机性能进行综合测试。飞机地 面测试系统上位机共有八个子系统,采用模块化,通用化设计风格,基于 r s 一2 3 2 4 8 5 串口和二级编码识别机制实现同下位机的通信,具有测试数掘 智能化管理、工作记录存档和自动生成报表等功能,较好的满足了工程应用 要求。 关键词网络通信;数据库;多线程;飞机地面测试系统;l a b v i e w 錾玺童王些奎茎三耋筌i 丝篓塞 a b s t r a c t w i t ht h er a p i dd e v e l o p m e n to fc o m p u t e ra n db u st e c h n o l o g y , c o n f i g u r a t i o n s o f t w a r ea r e b e i n ga p p l i e dw i d l yi ni n d u s t r a y ,e s p e c i a l l yt h e l a b v i e wv i s u a l i n s t r u m e n t t e c h n o l o g y ,p l a y i n ga ni m p o r t a n tr o l e i nm e a s u r m e n ta n dc o n t r o l f i e l d s s or e s e a r c h e so nc o n f i g u r a t i o ns o f t w a r ef o ri n d u s t r i a la p p l i c a t i o na r ev e r y m e a n i n g f u l s t a r tw i t h h i s t o r y a n ds t a t u s q u o o f c o n f i g u r a t i o n s o f t w a r ea n dv i s u a l i n s t r u m e n tt e c h n o l o g y , t h i sd i s s e r t a t i o nt a k e i n gl a b v i e wa sp o i n tp e n e t r a t i o nh a s d o n es e v e r a lr e s p e c t ss t u d y i n ga n dw o r ka sf o l l o w i n g : ( 1 ) d i f f e r e n t m e t h o d sf o rd a t a b a s ea c c e s sw e r e a n a l y z e d i nl a b v i e w e n v i r o n m e n t ,t h ep o s s i b i l i t ya n dt r a i t so fu s i n ga d o a n ds o lf o rd a t a b a s ea c c e s s w e r ed i s c u s s e d ,a n da c h i e v e dt h e g o a lo f 1 0 c a la n dr e m o t ed a t a b a s ea c c e s s ,w h i c h a l s oa p p l i e di na i r c r a f tt e s t i n gs y s t e md a t am a n a g e m e n t ( 2 ) a n a l y l z e dt h en e t w o r kc o m m u n i c a t i o nt e c h n i cp r i c i n p l ea n dr e a l i z a t i o n i nl a b v i e w , i n c l u d i n gt c p , u d p , d a t a s o c k e t t r a i t so fe a c hw a yw e r ed i s c u s s e d , a n dr e l a t e de x a m p l e sw e r ea l s o 舒r e do u tt oc o m p a r ed a t at r a n s m i s s i o ns p e e d , s t a b i l i t y , r e l i a b i l i t ya n da p p l i c a t i o no c c a s i o n s r e m o t ep a n n e l st e c h n o l o g yw a s r e s e a r c h e da n du s e df o rb u i l d i n gr e m o t eo n l i n em o n i t o r i n gs y s t e m ( 3 ) i n t r o d u c e dm u l t i p l e - t h r e a d r e l a t e d c o n c e p t s a n d t h e o r y , a n a l y z e d l a b v i e w m u l t i p l e t h r e a ds y s t e mc o n s t r u c t u r e ;a p p r o a c h e s o fc o f i g u r i n ga n d e v a l u a t i n gt h r e a dn u m b e r w e r e p r e s e n t e d ,a n di n c l u d e dv 1p r ip r o b l e m ,a n dt h e t e s t i n gs y s t e m w e r e d e s i g n e d w i t hm u l t i p l e t h r e a dt h o u g h t ( 4 ) d e s i g n e da i r c r a f tg r o u n dt e s t i n gs y s t e mb a s e do nd i s t r i b u t e d c o n t r o l m o d e ,w h i c hc a r r y so u ts y n t h e t i cs i m u l a t i o ne x p e r i m e n t ss u p p o r t e db yh a r d w a r e e q u i p m e n t s t h ew h o l es y s t e mc o n t a i se i g h ts u b s y s t e m sp r o j e c t e dm o d e l ya n d g e n e r a l l y , u s i n g r s - 2 3 2 4 8 5s e r i a l a n d t w o - d e g r e e c o d e di d e n t i f i c a t i o nf o r s o f t w a r es y s t e ma n dh a r d w a r ee q u i p m e n tc o m m u n i c a t i o n ,e x p e r i m e n td a t aa n d w o r k r e p o r tg e n e r a t i o nw e r ea u t o m a t i c a l l yo r g a n i z e d k e y w o r d s n e t w o r kc o m m u n i c a t i o n ;d a t a b a s e ;m u l t i p l e t h r e a d ;a i r c r a f tg r o u n d t e s t i n gs y s t e m ;l a b v i e w s 1 1 一 堕玺鎏三些奎耋三兰竺当耋堡兰兰 1 1 课题背景和意义 第l 章绪论 本课题来源于哈尔滨航空工业集团某型号飞机的地面综合试验平台改造 项目。在项目调研期间,通过对原有实验装备全面了解和测试系统工作性能 综合分析得知,原设备8 0 年代从国外引进,主要用于对某型号系列直升飞 机进行地面通电检测和试验,当时技术比较先进,在一定程度上满足了飞机 生产试验的需要。但是,随着飞机制造业的快速发展,飞机设备不断更 新,各种智能化的仪表和其他高技术含量的装备大量增加,飞机总体性能要 求不断提高,以及生产规模的迅速扩大,导致了原有测试设备已经很难满足 当前试验的要求,无论是系统测试技术,还是测试装备都已经落后,甚至出 现无法对某些新装备进行模拟测试的情况,这对飞机生产来说是一个急需解 决的瓶颈问题,严重影响和制约了企业的发展。 课题的主要目的是结合工程实际应用,利用功能强大的组态软件作为 开发平台,在下位机硬件设备的支持下,研制一套适应现代飞机生产试验要 求的智能化综合测试系统,能够对新装备进行全面测试。测控系统具有试验 模块化程度高,通用性好,硬件设备维护性好,对环境适应能力强,试验自 动化程度高,操作简单,工作强度小等特点;可以测试数据网络共享,实现 远程监控;系统扩展性能要好,满足后续扩展要求:试验数据可实时分析处 理;具有报表生成、数据存储等功能。该系统的使用对于企业适应今后的发 展,提高生产自动化水平,以及推动企业信息化进程也具有重要意义。 于2 0 0 3 年1 1 月召开的国防科工委飞机制造业数字化工程动员会提出 我国将全面启动飞机制造业数字化工程。飞机制造业数字化工程将通过整合 和充分利用现有条件,借鉴国内外先进的数字化技术和管理模式,建立飞机 研制的数字化设计、试验、割造和管理生产线,形成飞机的全机数字样机研 制和典型数字化部件的工程研制能力,进一步补充和完善数字化生产线和数 字化体系,具备在新代飞机研制生产中实施数字化设计、试验、制造和管 理的工程能力【”。飞机地面测试系统作为飞机生产过程中必不可少的装备组 成部分,必将对飞机制造业的发展起到很大的推动作用。 哈尔滨t 业人学工学硕上学位论文 1 。2 组态软件的发展现状和技术趋势 1 2 1 组态软件的发展现状 组态软件( c o n f i g u r a t i o ns o f t w a r e ) 是伴随着集散式控制系统的出现而 发展起来的。利用特定的应用软件( 以相关硬件为支撑) 设计生成目标应用 系统,来完成某一特定任务,这样的一个过程我们称谓“组态”。能够完成 这些任务的软件,通称为组态软件1 2 j 。 组态软件是一些数据采集与过程控制的专用软件,它们是在自动控制系 统监控层一级的软件平台和开发环境,能以灵活多样的组态方式( 而不是编 程方式) 提供良好的用户开发界面和简捷的使用方法,各种软件模块可以非 常容易地实现和完成监控层的各项功能,同时支持各种硬件厂家的计算机和 设备,与高可靠性的工控计算机和网络相结合,向控制层和管理层提供软、 硬件的全部接口,进行系统集成i 叫1 。 随着个人计算机的普及和开放系统的推广,组态软件作为测控系统的重 要组成部分,被越来越多的使用者所接受。各类智能化仪表、仪器设备与组 态软件构筑完整的低成本自动化系统,具有广阔的市场空间。嵌入式系统和 现场总线技术的发展,使组态软件成为了测控系统的主力军和工业自动化系 统的灵魂。世界上第一个把组态软件作为商品进行开发、销售的公司是美国 的w o n d e r w a r e ,它于8 0 年代率先推出了i n t o u c h 组态软件。此后组态软件 蓬勃发展,不断推出新的优秀的产品。目前比较知名的有:i n t e l l u t i o n 的 f 1 x ,两雷公司的o n s p e c ,w o n d e r w a r e 的i n t o u c h ,n 1 公司的 l a b v i e w 、l a b w i n d o w s c v i ,t e l e d e n k e n 的v i e w p o i n t 等。 目前,国内有1 0 多家组态软件公司,国产化的组态软件产品也正在成为 市场上的一支生力军,有一定影响力的产品有组态王、s y n a l l 、m c g s 、天 工、c o n t r o l x 、虎翼、力控等。国内不少科研院所和公司,甚至一些个人正 在从事组态软件技术的研究及其产品的开发【3 j 。从整体上看,国外组态软件 发展较为成熟,功能强大,性能优越,但价格比较昂贵:国内组态软件起步 较晚,发展迅速,价格较低,适合我国的国情,但性能有待进一步提高。 随着现场总线技术和计算机技术的飞速发展,组态软件发展到今天已经 到达了很高的技术水平。组态软件的特点是:实时多任务;对环境的适应性 强;可靠性高;系统构筑快速、灵活;成本低;易于维护和使用。正是因为 哈尔滨工业大学工学硕士学位论文 组态软件的上述特点,其在通信,汽车工业,船舶,航空航天,生物医学, 机电工程等众多领域都有广泛的应用,如防盗报警、汛情监控、环境监测、 交通管制、数据采集、过程控制等。 1 2 2 组态软件的发展趋势 组态软件的发展受很多因素影响,有技术方面的,也有市场层面的,但 制造业的需求是主要决定因素。制造业的发展,带来了对组态软件需求的提 升,也决定了组态软件将由过去单纯的组态监控功能,向着更高和更广的应 用层面发展。未来组态软件的发展将主要表现为如下趋势: 1 开放化开放性是未来软件的发展趋势,组态软件也不例外。采用 0 d b c 、s q l 、o p c 、a c t i v e x 、v b a 、c o m d c o m 等统一的接口标准,实 现系统的开放性,有利于提高软件的互换性、可移植性和通用性。 2 组件化组件化的软件设计思想有利于系统集成,各组件对象单独运 行应用程序可让用户自由选择所需的组件,无需购买整个软件,避免多余功 能闲置,降低了成本,同时允许用户将第三方应用程序嵌入到系统中,极大 提高系统灵活性。 3 。基于平板电脑和p d a 的人机界面解决方案在一些控制要求相对简 单且需要人机界面的场合,平板电脑大有取代工控机的趋势,将组态软件移 植到平板电脑上,平板电脑有很好的扩展性,带有现场总线接口的平板电脑 不仅具有美观的人机界面,还可以同时兼顾分碡= 式现场控制。另外,数字终 端已具备越来越强的功能和智能化忙】。 4 。嵌入式应用系统对于某些特殊设备提出的控制要求,尤其是人机界 面和复杂控制方面,嵌入式系统解决方案的软件设计思想而量身定制的微型 化的人机界面软件,是组态软件新的发展方向。 5 以用户为导向的软硬件整体解决方案组态软件厂商与硬件厂商合 作,以用户需求为导向,根据使用者个性化要求,为用户提供软硬件整体解 决方案,并快速反应,也是未来组态软件发展的一大特点。 1 8 虚拟仪器技术发展现状 组建现代化测控系统的核心要素是软件平台、开发工具及相关的硬件设 备。与传统仪器相比,虚拟仪器在智能化、数据处理能力、性能价格比和可 操作性等方面均具有明显的技术优势。测量仪器的功能可以由用户根据需要 哈尔滨工业大学t 学硕士学位论文 自行设计软件来定义或扩展,而不是厂家事先定义且固定不变的,它与计算 机同步发展,与网络及其周边设备互联,用户只需要改变软件程序就可以不 断扩展它的测量功能,这将给使用者带来无尽的收益。传统仪器在面对被测 精度越来越高,功能越来越强,以及测量参数越来越复杂的场合,其局限性 已经明显地反映出来,甚至对某些新的被测对象显得无能为力【6 j 。 虚拟仪器技术作为组态软件技术的重要成员之一,是不断革新的计算机 技术和智能仪器技术相结合的产物。它利用当今计算机系统的强大功能,在 专用硬件的支持下,突破传统仪器在数据处理、显示、传送、存储方面的局 限,使用户可以方便的对系统进行维护、扩展和升纠”。 在通用计算机平台上,用户根据自己的需求来定义和设计系统的测试功 能,将硬件同计算机软件技术充分的结合起来,用于实现并扩展传统仪器的 功能,完成数据的采集、分析及显示。虚拟仪器技术按照采用总线形式的不 同分为5 大类:p c 总线式、并行口式、g p i b 总线式、v x i 总线式、p x i 总线式【引。 高度自动化的工业大生产,越来越复杂的测试条件,迫切需要功能更 强大、成本更低廉、系统更灵活的新一代测试系统。从模拟技术向数字技术 过渡,从单台仪器到多种功能仪器组合过渡,从完全由硬件实现到软硬件结 合方向过渡,从简单的功能组合向以个人计算机为核心的通用虚拟测试平台 过渡,从硬件模块向软件包形式过渡,代表了今后测试仪器的发展方向。未 来的测试系统除了拥有更强大和更完善的功能之外,还将变得更小巧,可以 被移植到设备中去,具有自我诊断功能。所以标准化、组件化、网络化是测 试技术以后发展的趋势。 美国国家仪器公司( n a t i o n a li n s t r u m e n t s ,简称n i ) 提出的著 名口号是:t h es o f t w a r ei st h ei n s t r m e n t ( 软件就是仪器) 。l a b v i e w 是由美 国n i 公司推出的一个图形化程序开发平台,是l a b o r a t o r yv i r t u a li n s t r u m e n t e n g i n e e r i n g w o r k b e n c h 的简称,即实验室虚拟仪器工作平台,是目前应用范 围最广、功能最为强大的虚拟仪器开发平台【9 1 1 1 0 l 。系统程序的基本实体称为 虚拟仪器( v i ) ,包含可执行代码,通过与实际仪器相似的图形化前面板进 行控制【1 1 】。它把广大的工程师从繁重的编程工作中解放出来,突破了基于 文本的传统高级语言的框架,使程序设计变得直观、方便和高效。 从1 9 8 6 年发布m a c i n t o s h 平台下的l a b v i e w l 0 版本到现在,n i 公司 已经推出l a b v i e w 7 1 版本,主要特点是:直观明了的前面板界面和流程图 式的编程风格;数据采集与仪器控制的图形化编程;内置编译器加快运行速 4 堕堡堡三些查兰三兰堡圭兰篁篁兰 度;内置g p l bv x i 串口和插入式d a q 函数库;丰富的硬件驱动程序:高 级分析库,可进行信号处理、统计、曲线拟合以及复杂的数据分析工作:可 以利用a c t i v e xd d e 以及t c p i p 进行网络连接和进程通信;适用于多种操 作系统;附带功能强大的工具包等 1 2 j 。 l a b v i e w 广泛应用于科学研究和教学领域,涉及模拟仿真,数据采集, 数据处理,虚拟仪器开发,虚拟教学实验室等,并受到业界的好评【1 3 】叶“】。 虚拟仪器技术强大的功能,使测量仪器在实现全盘自动化、改善性 能、增强功能,以及提高精度和可靠性方面发生了大的变革,是仪器科学发 展的一次飞跃i l ”。课题中对l a b v i e w 虚拟仪器技术在网络通信、数据库访 问、多线程技术等方面的探讨,对于其在工程中的实际应用具有重要意义。 1 4 课题研究内容和主要工作 1 l a b v i e w 环境下的网络通信技术研究网络通信功能可以实现远程监 控,企业内部网络数据共享,在现代化的测控系统中发挥着越来越大的作 用。本文剖析了l a b v i e w 环境下t c p 通信、u d p 通信、n id a t a s o c k e t 通信 技术的原理和实现机制,分析了各通信方式的优缺点和应用场合,并开发了 实际的通信实例对各方式下通信的速度、稳定性、可靠性进行综合比较,探 讨了远程控制面板技术及其在飞机地面测试系统远程在线监控中的应用。 2 l a b v i e w 环境下数据库访问技术研究数据管理是测试系统的一个重 要功能。本文在对l a b v i e w 环境下数据库访问不同实现方式研究的基础上, 分析了利用a d o 技术与结构化查询语言( s q l ) 相结合实现数据库访问的 可行性和优缺点,实现了l a b v i e w 环境下对本地数据库和远程数据库的操 作,并应用到飞机地面测试系统中,对测试系统数据进行有效的组织和管 理。 3 多线程技术在l a b v i e w 平台中的应用介绍了多线程相关概念和实现 原理,分析了l a b v i e w 多线程系统构架,重点探讨l a b v i e w 高级程序设计中 如何定制多线程结构,以及线程数目计算的问题,提出了合理设置v i 优先 等级和线程优化的方法,并将多线程技术应用到飞机地面测试系统的设计 中。 4 丰富l a b v i e w 基本控件在实际的测控系统组态时,前面板的控件数 量有限,外观单一,无法准确模拟实际的现场设备,组态效果不够理想。利 用l a b v i e w 可自定义控件的功能和系统开放接口,根据实际的需要,制作个 哈尔滨工业大学工学硕上学位论文 性化控件来解决这个问题。本人制作了各类控件5 0 多个,并应用到测试系 统上位机组态界面当中。 5 基于l a b v i e w 的飞机地面测试系统开发通过对l a b v i e w 虚拟仪器 技术的深入研究,将相关技术应用到实际工程项目中,开发了基于分布式测 控系统思想的飞机地面钡4 试系统上位机测控软件部分,配合下位机的相应硬 件设备,对飞机多项性能进行综合模拟测试。这是课题的重点部分。飞机地 面测试系统采用模块化,通用化设计风格,具有较好的扩展性能。上位机共 有八个子系统,采用基于r s 2 3 2 4 8 5 串口和二级编码识别机制实现同下位 机的通信,并具有测试数据智能化管理、工作记录存档和自动生成报表等功 能。 6 哈尔滨工业大学工学硕十学位论史 第2 章l a b v i e w 开发平台综述 2 1l a b v i e w 的系统模板 在l a b v i e w 中进行程序开发工作主要是由三个模板来提供支持的:工具 模板、控件模板和函数模板,它们是在l a b v i e w 环境下进行软件开发的核心工 具。 ( 1 ) 工具模板工具模板提供了用于编辑前面板和程序框图中对象的各种工 具,前面板设计和程序框图的设计都要借助工具模板来完成。 选择工具:用于选择、移动或改变对象的大小; 文本工具:用于输入标签文本或者创建自由标签: 连线工具:用于在流程图中连接节点,定义数据流向; 模板弹出工具:用鼠标单击该工具后,可以在窗口某位最点左键弹出控 制模板或者功能模板; 平移工具:使用鼠标拖动,可以使窗口对象整体平移; 断点工具:将其放置在程序流程图中连线上某位置,该点即为程序运行 的断点,用于程序调试; 探针工具:在流程图的数据线上设置探针,观察数据流线上的数据变化 情况,辅助程序调试; 颜色提取工具:用来获得窗口中已染色对象的颜色; 颜色设置工具:用来给窗口中的对象设置颜色。 当从模板内选择了任何一种工具后,鼠标箭头就会显示该工具相应的形 状。工具模板让使用者可以方便快速的开展工作。 佗) 控件模板l a b v i e w 将传统仪器上的各种按钮、开关、显示等所有可能 涉及到的操作部件都设计成外形相似的控件,使用者在设计前面板时,只需要 根据情况选择合适的控件拖放在合适的位置即可。l a b v i e w 能够对现场设备进 行形式多样的模拟,关键在于提供了丰富的组念控件。在前面板窗口单击右 键,就可以看到各种使用频率最高的控件集合,作为系统默认选项,便于调 用。单击a l lc o n t r o l s 选项,则可以访问所有控件对象,其中n u m e r i c 子模 板、a r r a y & c l u s t e r 子模板和g r a p h 子模板是三个最常用的控制模板。 ( 3 ) 函数模板也称作功能模板是创建程序框图的主要工具。l a b v i e w 是 哈尔滨工业大学工学硕士学位论文 图形化的编程语言,系统将各个库函数做成图标的形式放在相应功能的子模板 上。虚拟仪器的测控功能主要是出程序设计来完成的,使用者在设计程序时, 根据要完成的功能和操作,从子模板上选择相应函数,进行相应的程序设计。 只有打开程序框图窗口才能调用函数模板,单击右键可以调用常用函数模板, 单击a l lf u n c t i o n s 则显示全部函数子模板。 2 2l a b v i e w 的数据对象 2 2 1 基本数据类型及其操作 ( 1 ) 数值型对象及其操作 数值型对象是l a b v i e w 中最基本的数据类型,也是最常用的数据类型, 可以是各种精度的浮点数或整数。在n u m e r i c 模板中包含比较常用的一些数值 型前面板对象,而在c l a s s i cn u m e r i c 子模板中,则是早期版本使用的些数值 型前面板对象。虽然这些控制和指示对象数量比较多,但除了外观各不相同以 外,其他基本属性是相同的,主要包含:简单数字显示、滑块( s l i d e ) 、进度 条( p r o g r e s sb a r ) 、仪表( m e t e r ) 、旋钮( k n o b ) 、水箱液罐( t a n k ) 和温度计 ( t h e r o m e t e r ) 等。还有一类特殊的数值型对象是数值型常量,它们在程序设 计中也发挥着重要的作用。l a b v i e w 中各种数据类型的控制和指示,都有与之 相对应的常量,但只能从程序框图中创建,常量的值在程序设计中可以修改。 另外系统还提供圆周率、光速、普朗克常数和重力加速度等众多科学专用常 量。 在程序设计时,我们可以对数值型对象进行各种操作,如四则混合运 算、复合运算、求绝对值、随机数、开方、取反等,函数模板中提供了相当丰 富的函数供调用。还可以使用公式节点e x p r e s sv i 、坐标缩放与变换v i 、时域 信号处理函数v i 等对数值型对象进行各种操作。 ( 2 ) 布尔型数据对象及其操作 布尔型对象可以仿真按钮、指示灯、开关等常用控制量,尽管只有两个 值( t r u e 和f a l s e ) ,但在测控系统虚拟仪器程序设计中却承担着重要的控制和 指示作用。在前面板的b u t t o n s & s w i t c h e s 子模板中,包含有很多可供选用的布 尔型控件,在c l a s s i c 模板的b o o l e a n 模板下,还有更多的b o o l e a n 对象,能够 使v i 组态界面有更多选择。布尔型控制与其他数据对象相比,有一个独特且 重要的属性:机械动作属性,表示按钮值在什么时候由“0 ”跳变为“1 ”,或 。基尘堡三些查兰三兰堡圭耋竺篁兰 由1 跳变为“o ”。它能模拟实际开关触点开闭特性,是传统编程语言逻辑 量所不具备的,这对于模拟真实仪器上的开关量操作是非常重要的。 l a b v i e w 中对布尔对象的操作不是使用逻辑表达式,而是以图标的形式表 示逻辑运算符。布尔运算节点包含在b o o l e a n 子函数模板中,可以进行或、 与、非等十多种逻辑运算。 ( 3 ) 字符串对象及其操作 字符串对象在程序设计中,发挥着重要的作用,因为很多测控系统的控 制命令都是以字符串的形式进行传递的,也可以用其传递和存储数据,显示文 本信息。字符串控件包含在t e x tc o n t r o l 子模板中,有s t r i n gc o n t r o l 、t e x t r i n g 、m e n ur i n g 和f i l ep a t hc t r l 等。常用的字符串显示控件可以在t e x t i n d i c a t o r 子模扳下找到,主要有s t r i n gi n d 、t a b l e 和f i l ep a t hi n d 。字符串内字 符的字体、大小、颜色都可以根据实际需要进行修改,对象的属性设置也非常 丰富,大部分设置可以在右键菜单中实现。 l a b v i e w 中针对字符串的操作很常用,s t r i n g 函数模板提供了很多函数供 调用,使用很灵活方便。 2 2 2 多元数据类型及其操作 ( 1 ) 数组数组是同一类数据元素的组合。数组的创建分两个步骤:首 先,在控制模板的a r r a y & c l u s t e r 模板中选择a r r a y 控件,创建数组外框;然 后将一个数据对象拖放到数组外框内,这样我们就创建了该数据对象的一个数 组。利用右键菜单修改属性,还可以创建多维数组。数组中的元素可以是数值 型、布尔型、波形、路径等。 在程序中涉及到大量的数组操作,索引是数组操作中一个重要概念,通 过它可以操作数组元素,实现行、列定位、存取等。 ( 2 ) 簇“簇”是l a b v i e w 系统中另外一种有效的数据组织形式,它将类型 不同的数据聚合在一起,形成一个整体,相当于一个容器,把数据集合为一种 特殊的数据结构。“簇”的创建方法同数组类似,先在前面板窗口中创建一个 外框,然后将相关数据类型拖入框中,这里的数据类型可以多种多样。同一簇 中的不同类型的数据必须同时为“控制”或者同时为“指示”,不能两者混合 放置。 对“簇”进行的操作比较特殊,把相关的数据组合成个簇称为“扣 包”,利用b u n d l e 函数来实现;“簇”中提取各个数据的操作叫做“解包”,用 竺至鎏三些奎兰三兰堡圭兰竺篁兰 u n b u n d l e 函数来实现。另外还可以进行构建簇的数组以及数组的簇,将数组转 换为簇,簇转换为数组等操作。 2 3l a b v i e w 程序设计 2 3 1l a b v i e w 中创建和子v i 一个v i 包括三个基本组成部分:前面板( f r o n tp a n e l ) 、程序框图 ( b l o c kd i a g r a m ) 和图标及连接器( i c o na n dc o n n e c t o rp a n e ) 。前面板是虚拟 仪器的人机交互界面,起到模拟真实设备操作面板的作用。程序框图是基于g 语言的程序代码,是v l 的核心部分。图标用来区分不同的v i ,连接器是v 1 输入输出端口。创建后,我们就可以通过使用前面板的指示和控制进行组 态工作,来构筑应用系统,同时在程序框图窗口中,编写程序来实现要完成的 特定功能。 l a b v i e w 的应用程序具有层次鲜明的特点,已经编好的程序单元可以用 个图标表示,在其他的框图程序中可以将其作为程序的一部分被调用。被调用 的程序单元被称为子v 】,相当于其他编程语言中的函数或者子程序。使用予 v i 使得程序逻辑简化,易于理解和调试。创建一个子v i 时,可以对默认的图 标进行编辑,并且还要创建连接器,作为输入输出的端口。 2 3 2v i 程序结构控制 l a b v i e w 是基于数据流控制的编程方式,程序结构是数据流向的控制节 点,l a b v i e w 的程序结构是用图形化的方式来体现的。在程序框图中可以使用 结构来重复使用部分代码,以某种条件控制代码的执行,或以某种次序执行相 应的代码。与其他节点一样,各种结构都有数据终端,可以和程序框图中的其 他节点相连,进行数据的交换。 ( 1 ) 循环结构循环是程序中最常用的结构之,l a b v i e w 中包括f o r 和 w h i l e 两种循环结构类型。循环中数据通道具有非常重要的自动索引功能,丌 启自动索引后,循环框外的数组元素按照顺序依次进入循环体内,或者把循环 产生的数据依次导出,形成数组。循环体移位寄存器和反馈节点的作用是把上 次循环产生的数据传递到下一次循环中。移位寄存器是成对出现的,在首次 执行时需要迸行初始化。在一个循环中可以创建多个移位寄存器,用于传递多 个变量。在循环中,当v i 的输出端同其输入端连接时,反馈节点就会自动出 坠玺堡三些銮茎三茎堡圭兰些篁兰崔 现,它会保存相应数据。传递到下一次循环,使用它可以避免出现过长的连 线。 ( 2 ) 顺序结构顺序结构分为平铺式和堆叠式两种,都是按照一定顺序执 行的子框图程序,只是在外观上有所区别。平铺式把所以框图呈现出来,按照 从左到右的顺序依次执行,直到最右边的一个子框图执行完毕,占用框图面积 较大,可以将平铺式框图转化为堆叠式结构。堆叠式顺序结构每次只能看n - 一 个框图,通过识别符区分各子框图,识别符位于框图的顶部,左侧的数字表示 当前子框图的序号,括号内的数字表示包含予框图序号的范围。顺序结构主要 用在数据依赖关系不强的情况下,过多使用顺序结构会削弱l a b v i e w 并行机制 的性能,降低系统运行效率。 ( 3 ) 选择结构选择结构在程序执行的过程中,根据输入的参数不同来执 行相应的某一个子框图,包括两个以上的框图,外观上跟堆叠式顺序结构类 似。选择结构具有子框图选择标签和选择端子。子框图选择标签,用于选择与 标签相对应的子程序框图。外框左侧的问号是选择端子,它与一个数据变量相 关联,当输入参数满足定的条件时,便根据事先确定好的对应情况选择相应 标签下的子框图程序执行。另外还可以为选择结构创建多个数据输入输出通 道。 ( 4 ) 事件结构虽然l a b v i e w 程序是基于数据流的控制方式,但新版本提 供了对基于事件驱动的程序设计的支持,这为l a b v i e w 程序设计方法提供了有 益的补充。用户操作界面、外部输入输出设备和程序执行过程当中都可能进行 事件的信息交互,并进一步控制程序框图的运行。用户界面能够利用的事件包 括:鼠标事件、键盘事件、菜单操作;程序中可以产生的事件有:定时结束、 退出等;外部的i 0 事件包括:定时、计数、触发信号等。 2 3 3v i 的调试技术 l a b v i e w 提供了多种调试工具和方法,供丌发人员在程序设计过程中使 用,使得程序的调试更加容易,开发效率更高。 ( 1 1 错误列表当工具栏的运行按钮显示为断裂的“箭头”时,表明程序 存在错误无法运行。单击该图标,系统会自动列出错误信息窗口对编程人员进 行提示。提示内容分三部分:第一部分提示存在错误的v 1 名称:第二部分指 明出现错误的节点名称和错误大致原因:第三部分提供详细的错误信息以及改 正的参考建议。 哈尔滨工业大学工学硕士学位论文 ( 2 ) 高亮度和单步方式运行在高亮度运行状态下,数据流以闪动的气泡 形式在连线上流动,同时显示每一个节点的实时数据,通过观察数据的产生和 流向,可以检测是否有错误存在,非常直观。单步方式运行使得程序按照节点 依次执行,可以查看全部代码的执行细节,通常与高亮度运行方式结合使用, 对程序逻辑关系和数据流向的正确性进行判断。 ( 3 ) 设置断点和探针l a b v i e w 允许在一个v i 程序、节点和代码中的连线 上设置断点,当程序执行到断点处就自动暂停。探针( p r o b e ) 可以在程序运 行时检测连线上的实时数掘,是非常有用的调试工具。探针、断点和单步执行 结合使用,可以显示该处的数据,判断数据流是否j 下确。这对逻辑和运算比较 复杂的程序调试非常有效。 2 4 本章小节 本章主要介绍l a b v i e w 开发平台总体环境,包括工具模板、控件模板和函 数模板的功用概述,介绍了l a b v i e w 的数据类型及其相关操作,简要介绍了 l a b v i e w 高级程序设计,包括程序控制结构,如何创建v i 、子v i 以及程序的 编辑和调试技术等。 兰至鎏老些奎兰三兰竺兰竺篁兰 第3 章l a b v i e w 网络通信技术研究 3 1l a b v i e w 环境下的t c p d p 通信 3 1 1l a b v i e w 环境下的t c p 通信 t c p ( t r a n s m i s s i o nc o n t r o lp r o t o c o l ,传输控制协议) ,定义了两台计算机 之间进行可靠数据传输的方式,以及为了确保数据传输f 确而采取的措施。 t c p 1 p 协议作为网络通信协议标准,能够适应不同的网络体系结构和不 同的传输链路,为客户端服务器模式提供了很好的支持【1 ”。t c p 采用比特流 分段传送数据,一个数据段被分解成几个小段,接收主机必须在一个指定的时 问内返回一个确认信息。如果发送者没有收到确认信息,那么发送者重新发送 数据;如果收到的数据包损坏,接受方会丢弃数据,请求重新发送。 t c p 通过三次“握手”来使发送和接受同步,其过程如下: 发送主机通过一个数据帧信息发出会话请求; 接受主机发送确认信息,同意会话请求,准备接收数据: 发送主机再回送一个数据信息,确认连接建立,准备发送数据。 t c p i p 协议的基本传输单位是数据包( d a t a g r a m ) ,协议负责把数据分成 若干个数据包,并给每个数据包加上包头,包头有相应的编号,以保证在数据 接收端将数据还原,i p 协议在每个包头上再加上接收端主机地址,如果传输过 程中出现数据丢失、数据失真等情况,协议会自动要求重新传输,并重新组 包。i p 协议保证数据的传输路径j 下确,t c p 协议保证数据传输的质量。t c p i p 协议数据的传输基于四层结构:应用层、传输层、网络层、接口层,数据在传 输时每通过一层就要在数据上加个包头,其中的数据供接收端同一层协议使 用。在接收端,每经过一层要把用过的数据包头去掉,这样才能保证传输数据 的格式完全一致。 l a b v i e w 提供了一系列用于实现网络数据传输的t c p 节点( 功能函数) 。 开发服务器端应用软件,控制d a q 设备完成数据采集,然后利用t c p 节点将 数据发布到网络上,在客户端利用t c p 节点接收这些数据即可实现远程数据 采集【1 9 1 。 t c p 节点在c o m m u n i c a t i o n 子模板w c p 模板中,分为三种类型: 哈尔滨工业大学工学硕士学位论文 c o n n e c t i o n 节点,建立客户机和服务器之间的通信连接;t r a n s m i s s i o n 节点, 在客户机和服务器之问传输数据;c o n v e r s i o n 节点,用于计算机i p 地址和计算 机名之间的相互转换。一个t c p 通信实例如下图3 - 1 、3 - 2 所示。 图3 - 1 一个t c p 通信实例s e r v e r 端程序框图 f i g 3 一】s e r v e rb l o c kd i a g r a mf o rt c p c o m m u n i c a t i o ni n s t a n c e 当建立客户机和服务器之间的通信连接时,即要指定i n t e m e t 地址,还要 指定通信端口号。不同的端口号区分不同的通信业务,用户可以手动分配端 口,这样确保连接的正确建立,并且容易管理多个通信连接。需要注意的是当 通信的计算机中装有防火墙时,避免使用低于1 0 0 0 的端口号。 图3 - 2 一个t c p 通信实例c l i e n t 端获取的数据输出曲线 f i g 3 2c l i e n td a t ao u t p u tc u r v ef o rt c pc o m m u n i c a t i o ni n s t a n c e 通过编程实现局域网内的双机通信,其原理是:由服务器v i 发送数据, 在客户端接收并显示。首先进行初始化工作,指定网络的通信端! = _ _ l ,利用节点 函数建立服务器和客户机之间的连接。服务器通过w r i t e 节点发送数据,客户 枫则通过r e a d 节点接收数据。如果服务器和客户机是同一台计算机,则服务 器的名称为“l o c a l h o s t ”,也可以是该计算机名。 t c p 通信的特点是使用非常简单,数据传输的可靠性较高,数据传输的完 整性和可控性好,对数据长度没有限制。缺点是传输效率不够高,在数据量 大、传输时间短的情况下不能很好的满足通信要求。 3 1 2l a b v i e w 环境下的u d p 通信 u d p ( u s e rd a t a g r a mp r o t o c 0 1 ) ,用户数据报协议,是面向无连接模式的协 议,与t c p 不同之处在于u d p 不提供包的分组和组装服务,而且也不对包进 行排序,通过口路由功能将数据包发送到目的地。u d p 提供的是面向操作 的,不可靠的数据流传输,不能检

温馨提示

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

评论

0/150

提交评论