




已阅读5页,还剩64页未读, 继续免费阅读
(控制理论与控制工程专业论文)计算机软件监控平台的构建.pdf.pdf 免费下载
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
摘要 2 0 0 1 年期间,我们为某家工业总公司设计、制造了了一种用于电子元件制造的计算 机实时控制系统( 软件部分) 。这套系统主要用来在实时环境里控制a 、b ,c ,d ,f 等 微量元素的量。根据客户对系统功能的需要,我们设计了整体结构并做了大量工作来保 证监控软件的稳定性。这些工作包括:框架模型的建立、数据结构的设计、计算机硬件 设备的选用、编程工具的选用、具体代码编写、系统测试和数据的安全传送。几经努力, 我们成功的完成了整套软件的开发,使用了w i n 9 8 操作系统、b o r l a n dd e l p h i 、a s s e m b l e l a n g u a g e 、t u r b oc 、a n dw i n d r i v e r 。这套软件已经在南京、昆明的一些工厂得到了应 用并取得很好的效果。整套系统已经取代了原先由德国制造的系统。 以这套系统为背景,本文论述了如何使用d e l p h i 开发w i n d o w s 平台下的监控软件。 根据这次开发涉及内容的先后,全文分为四章。第一章是首先进行的界面设计,说明了 如何根据工艺需求来设计合理、易用的界面。第二章和第三章讲述如何使设计好的界面 变成可运行程序所需要的主要技术。第二章涉及测控系统中的滤波和数据的预处理、用 d e l p h i 对a d 卡和d a 卡进行操作、d e l p h i 与w i n d o w s 消息、d e l p h i 中实现键盘的输 出控制。第三章论述w i n d o w s 下i 煲4 控软件的设计、w i n d o w s 下高精度定时数据采集的原 理和实现、计算机监控平台中实时数据库的研究。前三章讲述的是如何实现具体的功能, 给出了一些关键的代码。第四章在实现的基础上,讲解应如何进行更高级别的开发 代码设计。涉及到了面向对象中的多态、面向对象与代码设计的思想和技术。文中代码 均用o b j e c tp a s c a l 和汇编完成。 关键词:监控软件、数据处理、端日操作、高精度定时、多线程、实时数据库、多态、 代码设计 a b s t r a c t d u r i n z2 0 0 1 ,w ed e s i g n e d 、o r g a n i z e da n di m p l e m e n t e dt h er e a l t i m ec o m p u t e r c o n t r o l s y s t e m ( s o f t w a r ep a r t ) o f e l e c t r o n i cc o m p o n e n tm a n u f a c t u r ef o ra n i n d u s t ri a lp a r e n tc o m p a n y 。t h iss y s t e mh a sb e e nm a i n l yu s e di nt h er e a l t i m e e n v i r o n m e n tt oc o n t r o lt h ee l e m e n t sq u a n t i t yo fa ,b ,c ,d ,fe t c 。a c c o r d i n g t oc u s t o m e r s s y s t e mf u n c t i o nr e q u i r e m e n t s ,w ed e s i g n e dt h ew h o l es t r u c t u r e a n d d i dal o tf o rt h es t a b i l i z a t i o no ft h i sm o n i t o r i n ga n dc o n t r o ls o f t w a r e jn c l u d i n gt h ef r a m em o l ds e tu p 、d a t as t r u c t u r ed e s i g n 、c o m p u t e rh a r d w a r e e q u l p m e n tc h 0 1 c e 、p r o g r a m m n gl a n g u a g ec h o i c e 、p r o g r a m m i n gp r o c e d u r e 、s y s t e m t e s t ,a sw e l la st h es a f e t ya n ds e c u r i t yo fd a t at r a n s m i s s i o n 。 a f t e rm a k i n g g r e a te f f o r t s ,w eh a v es u c c e s s f u l t y f u l f i l l e dt h ew h o l es y s t e ms o f t w a r eb yu s in g w i n d o w s9 8 缈e r a t i v es y s t e m 、b o r l a n dd e l p h i ,a s s e m b l el a n g u a g e ,t u r b oc 、a n d w i n d r i v e r 。t h i ss o f t w a r eh a sb e e na p p ll e di nm a n yf a c t o r i e si nn a n ji n ga n d k u n m i n ga n da c h i e v e dg r e a tr e s u l t 。t h ew h o l es y s t e mh a sr e p l a c e dt h eo r i g i n a l s i m i l a rs y s t e mm a d ei ng e r m o n y 。 b a s e do nt h i s s y s t e m ,t h ep a p e rd i s c u s s e s h o wt ou s e d e l p h i t o d e v e l o p m o n i t o r i n ga n dc o n t r o ls o f t w a r ei nw i n d o w so p e r a t i n gs y s t e m , a c c o r d i n gt ot h e c o n t e n t ss e q u e n c er e l a t e dt ot h ep r o j e c t ,t h ew h o l ep a p e rh a sb e e nd i v i d e di n t o f o u r sc h a p t e r s 。c h a p t e ro n et e l l ss o m e t h i n ga b o u th m i ( h u m a nm a c h i n ei n t e r f a c e ) d e s i g n 。h m id e s i g ns h o u l d b ef u l f i l l e df i r s t l yi nt h ep r o j e c t 。t h i sc h a p t e rr e f e r s t oh o wt od e s i g nr a t i o n a l 、e a s yu s eh m i 。c h a p t e rt w oa n dc h a p t e rt h r e ed i s c u s s t h em a i nt e c h n o l o g y ,w h i c ha r eu s e dt om a k ed e s i g n e dt t m it or u na sap r o g r a m 。 c h a p t e rt w oi n c l u d e s w a v e sf il t e r i n ga n dd a t ap r e t r e a t m e n ti nm e a s u r ea n dc o n t r o l s y s t e m 、h o wt oo p e r a t ea dc a r da n dd ac a r dw i t hd e l p h i 、d e l p h ia n dw i n d o w s m e s s a g e 、t h er e a l i z a t i o n o f o u t p u tc o n t r o lb yk e y b o a r d w i t hd e l p h i 。c h a p t e rt h r e e i n c l u d e sm e a s u r ea n dc o n t r o ls o f t w a r e d e s i g n i nw i n d o w s 、t h e t h e o r y a n d r e a l i z a t i o no fh i g hp r e c i s i o nt i m e ri nw i n d o w s 、t h er e s e a r c ho fr e a l t i m ed a t a b a s e i nc o m p u t e rm o n i t o r i n ga n dc o n t r o lp l a t f o r m 。c h a p t e ro n e 、c h a p t e rt w oa n dc h a p t e r t h r e et a l ka b o u th o wt or e a l i z es p e c i f i cf u n e t i o n sa n ds h o ws o m ep i v o t a lc o d e s 。 o nt h eb a s i so fr e a l i z a t i o n ,c h a p t e rf o u rd i s c u s s e sh o wt od e v e l o pi nh i g h1 e v e w i t hc o d ed e s i g n 。t h i sc h a p t e ri n c l u d e sp o l y m o r p h i s mi n ( 1 0 p 、o o pa n dc o d ed e s i g n 。 t h ec o d e si nt h ep a p e ra 1 1u s e do b j e c tp a s c a la n dm a s m 。 k e y w o r d s m o n i t o r i n ga n dc o n t r o ls o f t w a r e 、d a t ad i s p o s a l 、i 0p o r to p e r a t i n g 、h i g h p r e c i s i o nt i m e 、m u l t i t h r e a d 、r e a l t i m ed a t a b a s e 、p o l y m o r p h y 、c o d ed e s i g n l i 昆明理工大学学位论文原创性声明 本人郑重声明:所呈交的学位论文,是本人在导师的指导 下( 或我个人) 进行研究工作所取得的成果。除文中已经 注明引用的内容外,本论文不含任何其他个人或集体已经发表 或撰写过的研究成果。对本文的研究做出重要贡献的个人和集 体,均已在论文中作了明确的说明并表示了谢意。本声明的法 律结果由本人承担。 学位论文作者签名:铋矧1 日 期:一2 0 u u 年飞月上f 日 关于论文使用授权的说明 本人芫全7 解昆明理s - 大学有关保留、便用学位论又的规足,即:芋梗 有权保留、送交论文的复印件,允许论文被查阅,学校可以公布论文的 全部或部分内容,- y 以采用影印或其他复制手段保存论文。 ( 保密论文在解密后应遵守) 导师签名:窆逖论文作者签名:盅! 纠! 日 期:垄! 兰生月兰6 旦 引言: 随着计算机硬件及软件技术的发展,越来越多的工业生产过程实现了计算机控制, 并极大提高了生产效率。这也是现代控制技术的发展趋势。但对中小型企业,直接购买工 控软件来进行二次开发,不仅成本高,而且各种性能指标不一定能满足本企业的生产工艺 流程。特别对于本项目,其电子管的制造设备和监控设备均由德国制造。作为北约成员国, 当然对我们在技术上实行封锁。 本监控平台原只有美国和德国能制造,故当时国内买价为3 万多美金。我国9 0 年代初 由北京理工大学,南京理工大学分别成立课题组进行研究,且申报经费3 0 万元。但最后设 计出的监控平台均无法运用于实际生产中。我们和昆明某工业装备技术研究所合作,研究 所的所长1 9 9 0 年曾专赴德国参加了监控平台的设计,硬件经验丰富。在我们的共同努力下, 成功设计了硬软件性能均优于德国同类产品的监控平台,且价格远低于国外。目前此监控 平台已经在项目实施单位得到了一定数量( 已售出1 2 台) 的应用,从一年多的运行情况来 看,无论硬件、软件已经可完全取代国外同类产品。 监控平台的整体介绍: 本监控平台是一种电子管的监控设备,和生产电子管的制造设备相连,负责监控制造 设备中各种化学元素射入电子管的量。制造设备根据监控设备传送过来的电流信号大小来 调整射入电子管的元素量。监控平台由一个类似书桌的控制柜和放在上面的大屏幕电脑组 成。 监控平台的硬件部分主要解决信号转化的问题,也就是如何将制造设备送出的微弱电 流信号( 1 0 4 安培) 放大、转化为电压信号( 0 至l o 伏) ,送入计算机采集卡中;并将监控 软件送回的控制信号( o 至1 0 伏) 缩小、转化为微弱电流信号( 1 0 。安培) ,送入制造设备。 由于是对微弱信号进行操作,所以硬件上徭进行复杂的设计,来保证信号的稳定、准确的 传送。 监控平台的软件部分负责将监控设备送入计算机的主要信号进行滤波、计算后实时显 示,由操作人员通过键盘将控制信号实时输出到监控设备,以此来控制各种化学元素射入 电子管的量;并还需对采集信号值进行保存、管理、分析等。( 见下页的工艺要求) 我们在监控平台的设计制造中承担了软件平台的软件总体设计、系统分析、测试、维 护、主要代码编写。本人写代码1 4 0 0 0 行左右,使用d e l 曲i 5 0 ,c ,汇编等语言,i n t e r b a s e 数据库。 本论文就是从软件平台的设计入手,对监控软件的开发从原理和技巧上进行了论述。 监控平台的体系结构: 电 存储 信 子 和 i s a 雠辟 柜 兀 := = := = = 查询微 型 件 k g h 。也就是采集a 信号的优先权最高,采集b 、 c 、d 、e 、f 信号的优先权次之,采集g 、h 信号的优先权最低。 5 由于每个电子管最长可制十几个小时。而监控屏每一屏只能显示2 0 多分钟的曲线, 有时需查询分析几小时前的a h 值来决定输出信号。故在监控屏上不仅要求显示曲线的 形状,还要求在线显示、查询制管过程中任意时刻的各采集值。 6 除监控屏外,还要有专门的历史查询分析屏。此屏用于在不生产电子管时使用,要 求可同时打开三条制管时保存下来的曲线显示a h 各数据,并进行分析比较,从而得出 较好的控制手段。 7 需要能在监控屏上任意位置添加标注,还要能对任意制管数据改写备注信息。 8 要求对所有制管曲线进行管理,能根据管号、制造者、制造时间、管型进行单独或 联合查询,并能打印曲线。 9 能在监控屏上设定一个值,使得输入信号a 和其有一个比值,将其形成百分比显示。 1 0 不同的操作人员其操作权限不一样。 2 i l 能调整各种控制参数和采集卡每次采集的延迟时间。 1 2 各种输出控制均要能通过键盘来完成,所有控制均要求只通过右手就能完成。 1 3 能对四路输入信号进行超限报警。 1 4 要对输入信号进行软件滤波。 操作系统和开发工具的选用: 随着3 2 位w i n d o w s 操作系统主流地位的确立,开发3 2 位w i n d o w s 环境下的:f _ = 控软件 已是大势所趋。w i n 3 2 有抢先式多任务,线程地址和界面友好等优点。考虑到实际生产和 成本,选用w i n d o w s 9 8 。 开发工具目前很多,我们选用d e l p h i 5 0 做为主要工具,其他工具还用到了汇编,c 和 i n t e r b a s e 本地版。使用d e l p h i 是考虑到它的几个特点: 1 快速开发特性。 2 可内嵌汇编、调用c c + + 写的动态库、调用c + + 写的设备驱动程序。 3 可利用大量自带的或第三方控件。 4 对w i n d o w sa p i 良好的封装。 5 使用真正的面向对象语言o b j e c tp a s c a l ,全面支持类、封装、继承、多态。 6 强大的网络功能,方便以后将单台的监控计算机连接成网络,形成集散控制并将数 据上传到因特网。 第1 章:监控软件的功能 监控软件和其他软件一样,功能的实现是通过操作界面来体现的。如何在简单、容易 操作的日口提下,用最少的界面来表现最多的信息,这本身就是一门很重要的学问。界面就 好比人的一张脸,友善、亲切的脸容易使人接近。所以需要仔细和现场工人沟通,了解生 产工艺和他们的操作习惯,然后对界面进行认真、细致的设计。下面就结合项目具体的功 能来对本次监控软件的界面设计进行说明。 1 1 监控屏的功能 监控屏是制造电子管的主操作界面,主要有图1 1 和图1 2 两种界面。下面结合图 来介绍它的功能: 图1 1 1 制造电子管的主要界面 盘通过不同按键的组合,输出控制信号。并将 设定值和检测到的输出值显示于此。 采集的实时数据的曲线图,由有经验的工人根据曲线的速率、斜率、拐点来对电子管 迸行控制。为保证当前屏能显示更多的信息,当曲线走满一屏时只整体向下退两格。 为保证了和工人原先的操作习惯一致,使其很快就能使用新设备,我们将制管屏上的 曲线设计为模拟原监控设备的输出设备走纸仪在图纸上绘出的曲线。 4 酊4 带实时查询屏的吵屏 光标线所在位置的各采集光标线,鼠标放 量的值。从实时库中读出。在此屏上自动出 现。 | 这就是实时数据库查询屏。由于制管时嗣葡能较长, 这一过程中需要查询制管的前段时闺内敢蔺熏豁来 决定输出。故这里和实对数据库相连,可用壤标拖 动光标线( 注一即阑中一条水平豹镪红线) 戮曲线 的任何位最,均能显示当时的咎采集量的僖。一 为了使操作简单,只需右手就能完成绝犬部分操作。 设计为在图1 1 制管曲线屏上单击鼠标右键弹出实 时查询屏,接着也是单击鼠标右键来开、关图1 2 左 上角的各采集量查询值的图表。 可上下拖动, 改变监控屏 ( 图中上半 部分) 和实时 数据库屏的 大小,来看到 更多的信息。 当一个电子管制造完成后,图1 3 和图1 4 分别用来写入备注和打印采集信号曲线。 6 图1 3 保存屏 制管完成后,可在备注框里写入关键信息,并存入历史数据库。 图1 4 参数打印屏 将保存的当前制管曲线根据设定的参数进行打印。 1 。2 历史屏的功能 历史屏是对保存的采集曲线( 即各种信号值) 进行多种显示、分析、修改、打印等操作。 图1 5 是打开一条曲线历史屏。在历史屏上最多能同时打开三条采集曲线。 对 库 时 拖动滑动条来决定显示某 个时间段的曲线。 制管曲线较多时( 现在每台机器上已有近千条曲线,我们已开发了专用的数据转移程 序,将不需要的早期曲线倒入专用的服务器中) ,用图1 6 上的管理屏来对历史库进行各 种管理。主要用来将所需曲线快速装入历史分析屏。可单击管理按纽或在n 0 1 、n 0 2 、 n 0 3 右边文本框内用鼠标右键快捷菜单都可打开管理界面。 图1 6 管理曲线屏 在此界面上对任意管号名双击鼠标左键均可将其调入历史分析屏。可根据日期、管号、 型号、人员的各种组合进行精确或模糊查询。也可对各文件进行拷贝、移动、删除等操作。 图1 7 打开了两条曲线,曲线的打开有三种方式。1 在n 0 1 ,n 0 2 ,n 0 3 右边的文本框内 输入曲线的文件名;2 在n 0 1 ,n 0 2 ,n 0 3 右边的文本框内单击鼠标右键,用快捷菜单打开; 3 点击此屏上的管理按纽。 图1 7 打开两条曲线的历史分析屏 图1 8 对曲线所在文件进行各种操作 9 正如前面所讲,为提高整体水平,需将工人机器上制管质量高的曲线拷贝到其他人的 机器上学习。所以,我们的设计了如图1 8 的界面,可实现对其进行拷贝、移动等操作。 1 0 图1 9 可选中任意曲线进行完整打印( 最多可同时打三条) ,也可以选择打印任意一段。 在生产实际中,很多| ! | 寸i 候只需打印曲线的一段来观察,并 不需孽将整篆曲镲打印毋寨。j 为了不遣螭浪费,我们设计 为可在曲线屏土缝懑檀鼙藏蠢鼠檬左键歉上打印标记l , 再到曲线其他任意( 女廿1 当前麟没有显示出,可拖动滑动条 来显示) 做上打印标记2 。这样碴基嚣印打印标记l ; 之间的曲线。这样剪爨撼藕藤黪部分糕印出来。 1 3 更改权限屏和控制参数设定屏的功能 图1 1 0 是具有超级密码的工程师才能进入的权限设置屏,可为管理人员、工程人员、 操作人员设定权限,使他们只能执行自己责任范围内的操作。 图1 1 0 掇隈设置赓 由于配合本监控软件使用的各硬件控制台间总会存在细微差异,这就需要为每个硬件 控制台设定控制参数。图l ? 1 1 是对一些主要参数进行设定的控制参数设定屏。 图1 1 1 控制参数设定屏 第2 章测控系统中数据的采集和输出控制 监控软件和一般软件开发很重要的不同在于需要直接对硬件进行操作,并且对控制的 实时性要求很高。要和硬件打交道,自然会涉及到一些较低层的技术和信号处理的知识。 而要求实时性,就必须对w i n d o w s 操作系统的消息驱动机制有比较深入的理解。下面就在 这些方面进行论述。 2 1 测控系统中的滤波和数据的预处理瞳儿羽嘲啼1 在一个监控系统中,往往需要对被测物理量进行准确测量以便对系统进行有效控制。 但是,由于系统中( 比如对本次开发的系统,需对微弱光电信号进行测量,这种信号十分敏 感) 总会有各种干扰存在,因此需要采取硬软件滤波。采样信号经模拟滤波后,还需将采样 数据从软件上进行预处理。数据预处理的任务通常是去除数据中的干扰成分或进行些必 要的变换,使采样数据尽可能地接近真实值,以便使数据的二次处理结果更加准确。 2 1 1 数据采集系统中的模拟滤波 在信号的采集和处理过程中滤波是极其重要的环节。滤波的效果直接影响整个数据采 集系统的性能。从信号的连续性和离散性角度来说,滤波可分为模拟滤波和数字滤波。虽 然在很多应用中数字滤波比模拟滤波更合理,但是在高精度数据采集系统中,模拟式低通 滤波的作用却不容忽视。这主要体现在两个方面:一是在数据采集过程巾能抗“混叠”和 去噪声:二是能提高系统的精度。如果仅仅采用数字滤波方式,那么在测试频带之外若有更 强的信号时,该信号也能窜入a d 转换器中,在测试频带内得到足够的强度,导致a d 转换 器的有效位数不能得到充分利用,从而降低了精度。因而采用模拟式低通滤波,特别是根据 测试频带对模拟式滤波器分段设置截止频率,可使有效信号尽可能单独进入a d 转换器中, 提高系统的抗干扰能力,并充分利用a d 转换器的有效位数,提高转换精度。 在本次监控平台的开发中,从监控平台监控的对象制造设备出来1 09 a 的电流信 号,经转变为电压信号并放大为o i o v 的电压信号输入a d 板,在入a d 板之前通过示 波器观察发现,存在工频及频率大于5 k t t z 、幅值变化为。? o 5 0 m v 的干扰信号。同时,考虑 到峪控对象的1 6 路信号变化频率均小于3 0 0 h z , 因此,选择低通滤波电路的截止频率均为 f = - 6 0 0 1 i z 左右。肜滤波电路如下图左边所示,其幅频特性和相频特性如下图右边所示,通过 模拟滤波可以大大减小高频干扰。 目t c k 诅雄畦电蹦 f z t c l ”一- h l l “川l u l l 兰& :垂 日j c h 五酢睦电糟h 日算搏k 却楠一并托 n i 一,i | ,- n b _ 一f 铲y c i 一- u l l 图2 1 模拟滤波电路图 该膨电路的频率响应函数为a 仃j = 1 臼+ j t 7c ,( 1 ) 幅频特性为a 似,= 1 “十阳月c ,“( 2 ) 相频特性为庐r o ,一日,c 日1 7o 曰c( 3 ) 电路截止频率为= 1 留re j( 4 ) 因本文取= 6 0 0 h z 左右,因而取符合这一要求的斤和f 分别为r = 1 0 0 ,c = 3r 2 1 2 数据采集系统中的数字滤波 虽然对信号作了模拟滤波,但不可能完全消除干扰,特别是频率较低的工频干扰。而且 由于a o 板自身的影响( 如a d 转换器精度的影响、a o 板电路中各环节的影响等) ,经过模 拟滤波后的干扰信号有所放大,并且在原有信号基础上夹杂了新的干扰。基于以上原因,有 必要加入数字滤波环节。 ( 1 ) 工频干扰的滤波 下面首先考虑消除工频干扰的情况。干扰信号的影响使得输入到a d 转换器的输入信 号矿,力包含有真实信号v0 和一系列的工频干扰信号之和v j ,即 矿,力= v 0 + 矿s ( 5 ) 式中v j = v 1 占,由甜f 十矿2j ,1 72 c ot 手v 3j ,n3 甜f 1 l ( 6 ) 式中为角频率:vj 、y ay 了、”分别是工频信号及其各次谐波干扰信号的幅值。 为分析简便,假定谐波最高角频率为8 。采样周期ts = ”2 。= 丁盔其中t 为工频周期。 连续4 次采样,采样时刻分别为:t 五f 乒 十t 4 = f 口偿。, 务f 甜丁月= f , 口u ,f 仁f 甜t 4 = fj 坩筇偿甜j 。将这些采样时刻分别代入式( 6 ) ,可得 vs1 = v1sin ( ) tl + v2si 1 72 t1 + v3s i1 73 tl + v 4si1 74 0t 1 + v5sin5 tl + v 6si1 76 tl+v7sin ? mtl v8sin8 t1 vs2 = v1sin6 9 ( tl + n ,( 2 ) ) + v2sin2 tt l + e t 2 ) ) + v3s in3 ( ti + n ( 2 ) ) + v4s in4 c o ttl + n t 2 ) ) + v5s in5 ( tl + n ( 2 ) ) + v 6sin6 ( tl + ,2 ) ) + v7sin ,tt 1 + j r ( 2 ) ) + v8s i 1 78 ( tl + ( 2 ) ) = v 1c 0s tl v2sin2 t1 一v3c0s3 tl + v4si n4 tl + v 5c0s5 tl v 6sin6 tl v7c0s7 c otl + v 8s in8 t1 同样可得 vs3 = 一v1sin t1 + v2sin2 tl v3si1 13c o t1 + v4sit 74 c o tl v5si1 75 t1 v6sin6 ti v ? si t 77 tl + v8sin8 t1 vs4 = 一vjc0s t 卜v 2sin2 ti + v3c0s3 i 十v4 sjn4 j 3 t 卜v5c0s5 t 卜v6s i1 26 tj +v7c0s7 d j ti + v8sin8 ti 取上面连续4 次采样的平均值,得 vin = ( vi1 7l + vit 12 + vin3 + vi 1 1 4 ) 4 = ( t v0l + vs1 ) + ( v02 + v s 2 ) + ( v03 + v s3 ) + t v04 + vs4 ) ) ,4 = t v0l + v 02 十v 03 + v 04 ) 4 + v4sin4 ti + v8sin8 tin 、 盘冉v0 = t v 01 + v02 + v03 + v 04 ) 4 为4 次采样中实际信号的平均值。由式( 7 ) 可见,采样周期为ts = 留。,= t 4 , 连续 进行4 次采样,然后取算术平均值,得到的是实际信号的平均值及工频信号4 次和8 次谐波 之和。如果原信号包含有更高次谐波,则采样后为4 的倍数的谐波还存在。依次类推可知, 若对原信号每周期采样次,对个采样值平均后仅的倍数的谐波存在,其余谐波均可消 除。而对于高次谐波,其幅值随着频率的增加而减小,而且本系统中加入了模拟低通滤波电 路,因此可以很好地抑制高次谐波信号的影响。本文每一个采样周期采样5 0 次,tj = t 5 0 = 2 0 5 0 = n4 m s 。考虑到滤波后的采样数据要在监控屏上实时显示并控制,不可能所有 时间内都每隔n4 m s 采集数据,这样会占用c p u 的大量时间,程序整体性能下降,使其他 的动作不能执行。根据实际工艺要求和硬件条件( 如c p u 为赛扬4 3 3 等) ,经过反复测试, 我们每隔2 0 0 m s 进行一次采集( 也就是每秒形成5 个点显示在屏幕上l 每次采样使用2 0 m s 来在工频信号的一个周期内采集5 0 组数据取算术平均值,在经其他一些处理后写入实时 数据库并形成曲线动态的显示于监控屏上。 通过上面的分析和实际应用可知,采用算术平均值滤波后可以很好地消除工频信号的 影响。同时,实际应用中发现,算术平均值滤波对其它干扰信号也起到了一定的抑制作用。 ( 2 ) 其他信号干扰的滤波 在本次开发中,如果只采用模拟滤波和上述的算术平均值滤波,发现仍然有高频信号 存在,经测试和分析,我们发现计算机内部也会带来一些干扰信号,所以还需使用其他的 滤波算法。 实际工作中常用的数字滤波方法主要有中值滤波法、算术平均法、加权平均滤波法和 一阶滞后滤波( 惯性滤波) 法等。根据我们实际应用的经验,这里介绍几种算法。 防脉冲干扰复合滤波法:其原理是先将n 个采样数据按照从小到大的顺序排队,即有: d1 dz dh ( 3 n 4 ) 聪d = ( d2 + d3 + + dn 1 ) n 一2 这种方法兼容了算术平均法和中值滤波法的优点,它既可以去掉脉冲干扰又可以对采 样值进行平滑处理,在高速和低速的数据采样中都能削弱干扰,提高数据处理质量。当采样 点数为3 时,此法即是中值滤波。 滑动窗口平滑算法:一般来说,测控系统中的采样数据往往叠加有噪声,这些噪声有的 是周期性的( 例如5 0 h z 工频干扰) ,有的是随机性的。由于随机干扰的存在使得采样离散数 据绘成的曲线呈现折线形状,很不光滑,这表明采样数据中的高频成分比较丰富。为了削弱 这种干扰的影响,提高曲线的光滑度,经常需要对采样数据进行平滑处理。常见的平滑处理 算法有平均法、五点三次平滑法和样条函数法等。我们采用了一种滑动窗口平滑算法,其 基本原理是,设采样数据序列为: dl dz dn dn dk ( n k j , 1 4 先计算从d ,d 。这个数据的和j v ,与平均值h 。,该平均值即为经平滑处理后的 第一个数据,记为d 。接着计算从d ,d 。这个数据的和日,与平均值j v 。,即从 。中减去d ,加j 二d 。后除以,该平均值即为经平滑处理后的第二个数据,记为d 。,依次 类推。 实际应用时可根据被处理的信号对象确定的值,的值愈大,曲线愈光滑,但灵敏 度将降低。因此如果信号中根本没有噪声,也可不进行该平滑处理。 低通滤波算法:对普通硬件r c 低通滤波器的微分方程可用差分方程表示,可以用软件 算法来模拟硬件滤波器的功能。经推导低通滤波算法如下: y ,= a x ,十( i a ) y ,一i 式中五一本次采样值:且一,一上次滤波的输出值; 盅一滤波系数,通常其值远小于l ; n 一本次滤波的输出值 由上式可以看出,本次滤波的输出值主要取决于上次滤波的输出值,注意不是上次的 采样值。这和加权平均滤波是有本质区别。本次采样值对滤波输出的贡献是比较小的,但 多少有些修正作用。这种算法模拟了具有较大惯性的低通滤波功能。滤波算法的截止频率 可由下式计算出来:= a 偿s t ) ,式中为采样间隔时间。当目标参数为变化很慢的物 理量时,这种滤波是很有效的。另一方面,它不能滤出高于1 2 采样频率的干扰信号。 ( 3 ) d e l p h i 中滤波算法的编写 算术平均值滤波算法的代码: l := g e t t i c k c o u n t 0 : j := g e t t i c k c o u n t0 : w h i l e ( j - l ) 2 0d o 每个i 们a i l e2 0 毫秒,每个数组值 经测试能采五百多次 b e g i nx 2 表示是采集值 j := g e t t i c k c o u n t ( ) : k 2 := k 2 + l : x 2 := x 2 + a d ( $ 3 1 0 ,2 ,3 0 0 0 ,1 0 ) :a d 是内嵌汇编的采集函数 e n d : x 2 := x 2 k 2 :w h i l e 循环后,此时x 2 中放的 已经是数据平均值 2 1 3 刻度和标度变换 当用几个不同的测量系统测量同一个物理量( 例如电压) 时往往会得到不同的测量结 果,这是因为不同测量系统所采用的标准不同和测量系统之间存在误差,刻度就是统一标 准,即用同一个标准对不同测量系统进行自动校准。以图2 2 为例,设测量通道的激励为互, 响应为,则对线性系统应有,= 石x 十6 ,其中五为通道的传输系数:6 为通道的零点值。 由于零点值就是当激励j - - 0 时的,值,这可以通过校零得到,所以,刻度就是求通道的传输 系数k 。因此,只要用已知的基准电压。,代替激励信号鼻,并通过a d 采样得到,即可 求得k - ( y b ) v 。,。变换不同的y 。可得到一条折线表示的电压传输系数曲线。各 种物理量有不同的单位和数值,这些物理量经过a d 转换后变成一系列数字量,如果直接把 a d 转换的数字量显示或打印出来,显然不便于理解。因此,必须把a d 转换的数字量变换 为带有工程单位的数字量,这种变换称为标度变换( 或工程变换) 。标度变换通常有线性变 换和非线性变换之分,它与所采用的传感器或变送器有关。下面给出在这次开发中采用的 一种刻度和线性标度变换方法。 图2 2 刻度意义图 在本监控平台中,要求准确测量被测电流i x ,该电流来自生产电子管的制造柜中的传 感器,通过测量该电流可以判断电子管的工作状态从而实施相应的控制。为此,首先对监控 平台进行“刻度”,然后再进行线性标度变换。具体步骤可由一个系统的工作过程来说明: 系统工作时,先有上位机发来“刻度”命令,该命令分两步执行。首先,由控制信号 c s 控制多路开关接通标准信号电流,。控制信号c s ? 控制标准信号源输出零电流, 这时系统采样得到的数据是输入电流为零时的值,即:“零点”,记为d 三。然后,控制信号 c s2 依次控制标准信号源输出标准电流,。,f ,系统依次采样得到数据dr ,jr , - - 1 , 2 ,州,点采样结束后由控制信号cs 控制多路开关接通被测信号血。至此“刻 度”结束,并可通过计算得到一组数据,即厶4l42 _ a ,- ,一刻度,其中,a ,= r d ( i ) 一dz ) i 。e f i ) ( i = i 2 n )系统i 佟话。校撬衬被泓信号电流h 甑采样值 d z 可线性变换为的实际值,其变换关系为i x = r d x dz ) a ,r ,。s ,口一西 t 。,例,上面介绍的是采用点刻度的方法,可以获得很高的测量精度。实际应用 中,只采用了两点刻度,在o 1 a 输入电流动态范围内的最大相对测量误差为0 6 。 这一方法我们在对a d 卡进行校准( 实际卡上的零点和增益调节旋纽对应着零点和刻 度调节,当然用软件校准也可) 和将采样数据变换成被测信号显示均有应用。 2 1 4 采取了滤波的效果 本监控平台在没采用滤波时,形成的曲线带有明显的抖动,使工人无法根据衄线的速 率、斜率、拐点来进行判断。采用了滤波措施后,衄线变得光滑,可用来进行生产。 2 2 用d e i p h i 对a d 卡和d a 卡进行操作嘲嘲叫嘲 当前自动控制与监控系统软件的开发方向是模块化、组件化编程:也就是采用面向对 象的编程方法;使用设备驱动程序,最好做到软件与设备无关。d e l p h i 做为著名的w i n d o w s 编程开发工具,采用了具有弹性的和可重用的面向对象p a s c a l 语言、快速的代码编译器, 同时又提供了大量优秀的组件,能够很好满足上述的程序开发方法。本节结合我们在开发 监控平台中对数据采集卡的使用,对d e l p h i 中如何操作数据采集卡端口的主要方法一内嵌 汇编、调用c 的动态库、操作设备驱动程序、访问数据采集卡提供的o p c 服务器一进行 探讨。 2 2 1 利用嵌入式汇编进行开发。 d e l p h i 允许在o b j e c tp a s c a l 程序中直接编写汇编,它可以支持绝大部分的t u r b o a s s e m b l e r 和m i c r o s o f ta s s e m b l e 语法的集合,支持所有8 0 8 6 8 0 8 7 和8 0 3 8 6 8 0 3 8 7 操作 代码,支持t u r b oa s s e m b l e r 中的几个表达式操作。 除了d b 、d w 和d d 外,d e l p h i 的内嵌汇编不支持t u r b oa s s e m b l e r 指令( 例如e q u 、 p r o c 、s t r u c 、s e g m e n t 、m a c r o 等指令) 。 通过t u r b oa s s e m b l e r 指令实现的大部分操作可以对应到o b j e c tp a s c a l 指令。例如, 大多数e o u 指令对应于d e l p h i 的c o n s t a n t 、v a r i a b l e 和t y p e 声明,p r o c 命令可以对应 与p r o c e d u r e 和p u n c ti o n 声明,s t r u c 指令对应于r e c o r d 类型。 d e l p h i 中可以使用嵌入式汇编语言。语法如下: a s j 】 s t a t e m e n t l is t e n d s t a t e m e n t l i s t 是一个汇编程序语句,其分隔符可以是分号、换行符或者是o b j e c t p a s c a l 的注释。多条汇编语句可以通过分号分隔放在一行中,如果不在一行则不用分号。 保留字i n l i n e 和a s s e m b l e r 指令只是为了保持向后的兼容性而保留下来的,但他们在 编译器中没有任何影响。 2 2 1 1 汇编语句的基础知识 这里主要是针对开发此监控平台所用到的汇编,来讨论d e l p h i 中使用汇编的一些注意 之处。如需知道更多这方面的知识,可参考d e l p h i 帮助。 1 寄存器的使用 通常,寄存器在a s m 语句中的使用规则与e x t e r n a lp r o c e d u r e 或f u n c t i o n 的用法相 似。a s m 语句必须保持e d i 、e s i 、e s p 、e b x 寄存器的内容,但可以自由修改e a x 、e c x 、 e d x 寄存器的内容。 在a s m 语句的入口,b p 指向当前的堆栈,s p 指向堆栈顶端,s s 包含了堆栈的段地址, 而d s 包含了数据段的段地址。除了e d i 、e s i 、e s p 、e b p 、e b x 寄存器的内容,a s m 语句的 入口可以不考虑其他寄存器的内容。 2 标签 在嵌入式汇编中标号的使用方法与o b j e c tp a s c a 是相同的一个标签标识符加一 个冒号。标签没有长度限制,但在9 e l p h i 的内嵌汇编器中只有前3 2 个字符有效。与o b j e c t p a s c a l 一样,标签必须在包含8 s m 语句的块中的标签声明部分定义,标签定义与a s m 和 e n d 之外。唯一例外的是局部标签的定义,局部标签必须有 字符开头,如 1 , l o o p , w a i t i n t e r r u p t 。局部标签自动受限制于a s m 语句之中,并且只能在定义它的a s m 语句 之中识别。与一般标签不同的是,局部标签不需要先在标签说明部分进行说明。 例如:使用标签: l a b e lt e s t :需要预先定义 v a rp o r t d a t a :w o r d : a s m m o va x ,p o r t d a t a m o vd x ,3 0 0 h o u td x ,a l m o ve x ,d e l a y d e ce x j n zt e s t :注意,t e s t 为标签 m o va l ,a h e n d ; 使用局部标签: v a rp o r t d a t a :w o r d ; a s m m o va x ,p o r t d a t a m o vd x ,3 0 0 h o u td x ,a l m o vc x ,d e l a y t e s t :d e cc x 不用预先定义
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 内容丰富的2025年市政工程试题及答案
- 工程经济实战技巧试题及答案
- 教研学期工作成果分享计划
- 五年级心理健康教育
- 营销行业安全管理回顾计划
- 树立积极职场心态的实施方案计划
- 2024年石英电涡流水平倾斜仪项目资金需求报告代可行性研究报告
- 工程经济行业与市场趋向试题及答案
- 车辆及交通工具采购协议
- 卡点清晰2025年工程项目管理试题及答案
- 一年级抢答题
- 小学四年级语文综合知识竞赛(含答案)
- 广西某高速公路初步设计阶段工程地质勘察大纲
- 阿舍勒铜矿-采矿毕业设计
- 初中生如何考后试卷分析和总结写法
- 思考,快与慢课件完整版
- JJF 1753-2019医用体外压力脉冲碎石机校准规范
- 体育商业综合体规划方案
- 防雷和接地安装施工组织方案
- YY∕T 0617-2021 一次性使用人体末梢血样采集容器
- 5以内的加减法(可直接打印)
评论
0/150
提交评论