




已阅读5页,还剩51页未读, 继续免费阅读
(控制理论与控制工程专业论文)锌电解整流及监控系统的研究.pdf.pdf 免费下载
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
摘 要 目前电解行业中用于整流的设备,普遍采用的是小规模集成控制电路,其可 靠性很难得到保证,并且没有监视环节,不能够实时掌握系统的运行状况。为了 有效解决这些问题,提高企业的生产效率,促进企业的现代化步伐,保证企业的 市场竞争能力,必须采用新的控制策略来重新实现整流监控系统。近年来随着微 电子技术的突破,微处理器性能的提高,价格的下降,中断响应和处理速度的提 高,使得在微处理器或微计算机系统基础上实现生产过程的计算机控制和管理成 为现实。为此,本文提出了一种直接用工控机来完成对晶闸管进行控制的数字监 控系统,首次把控制和监视环节融为一体,为生产带来了很大的方便。 本系统在实现整流的基础上,设计了电流闭环回路,采用神经网络p i d 调节 器在线实时控制电解电流,同时设计了监视环节对整个系统的工作状况进行监视。 本系统着重解决了工控机用于实时控制精度不高的问题,提出了在软件设计e 采 取一系列方法加以弥补:设计多线程技术让c p u 并行处理用户交互,晶闸管触发, p i d 参数的自整定三个任务;采用快速交流采样法完成采样过程以节省采样时间; 直接对硬件编程实现高精度定时等。实际运行情况表明,该系统同时兼有单片机 的实时性和工控机的方便性,在满足了生产需要的同时减少了硬件设备。 关键词:电解数字触发数字滤波混合编程多线程p i d 神经网络 a b s t r a c 七 n o wt h ee q u i p m e n 七o fr e c 七i f i c a 七i o nt h a t u s e di ne l e c t r 0 1 y s i s p r o f e s s i o n ,g e n e r a l l ya d o p 七s m a l l g c a l ei n t e g r a 七e dc o n 七r o lc i r c u i 七 i t s r e l i a b i l i t ycann o tb eg u a r a n t e e d ,a n db e c a u g ei 七d o n 七 l a v em o i t o r , s o c a n tg r a s pg y s t 锄a t i co p e r a 七i o nc o n d i 七i o ni nr e a l 七i m e t os o l v et h e s e p r o b l e m se f f i c i e n 七1 y , r a i g et h ep r o d u c 七i o ne f f i c i e n c yo fe n t e r p r i s e , p r o m o 七et h ed e v e l o p m e n 七a 1s 七e po fe n 七e r p r i s e ,g u a r a n t e et h ec o m p e 七i t i v e a b i l i t yo fe n t e r p r i s e ,w em u s 七c a m e 七oc a r 工yo u 七n e wc o n 七r o ls y s t e r 【1 i n r e c e n ty e a r g ,w i t ht h eb r e a k 七h r a u g ho fm i c r o e l e c 七r o n i c 8t e c h n o l o g y ,t h e r a i s i n go ft i n yp r o c e s s o rp r o p e r 七y ,t h ed r o p p i n go fp r i c e ,七h er a i s i n go f h a n d l i n gg p e e dr e s p o n d e df o ri n t e r r u p t , m a k e七h e c o r f 匹) u 七e r c o n 七r 0 1o f p r o d u c t i o nc o u r s eo n 七i n yp r o c e g s o ro rt i n yc o r r 哐) u 七e rs y s 七鲫a 七i cf o u i 旧a 七i o n b e c o m er e a l i 七y t h i sp a p e ri n 七r o d l l c e dak i n do ff i g u r es u p e r v i s o r ys y 8 七锄 t h a 七d i r e c t l yu g ec 唧u t e rt oc o n t r o l 七h e 七h y r i s t o r s f o r 七h ef i r s 七t i m e , w ec o 工由i n et h ec o n t r o la n d 七h em o n i t o r ,a n db r o u g h tg r e a tc o n v e n i e n c et o p r o d u c e o nt h ef o u n d a t i o nt h a tr e a l i z e sr e c t i f i c a t i o n 。t h i 8s y s te i i ld e s i g l l e d 七h e c l o s e dc u r r e n tl o o p ,a n d a d o p t p i dr e g u l a 七o r 七oc o n 七r o lc u r r e n to nr e a l t i m e a d d i 七i o n a l 七h es y s 七e mc a nk e e pw a 七c ho nt h ew o d c i n gc o r l d i t i o n i n es y s t e m s o l v e dt h ep r o b l e m 臼i 】p h a t i c a l l yt h a t 七h ec a n 噬) u 七e rc o n 七r o lp r e c i s i o nu 8 e di nr e a l 七i m ei sn o th i g h a 1 1 db r i n gf o r w a r das e r i e so fs o f t w a r em e t h o d 七or e m e d y : d e s i g l lm u l 七i t h r e a d 七ol e tc p up a r a l l e lh a n d l et h r e et a s ko fu s e ri n t e r f a c e , t h y r i s 七o rt r i g g e ra n da d j u s 七p 工dp a r a m e t e r ;s e l e c 七f a s 七g a i i l p l i n gm e 七h o dt o c 甜噼1 e t es 锄p l e ;d i r e c 七l yp r o g r a mf o rh a r d w a r et or e a l i z eh i g ha c c u r a 凹七i m e r a n ds oo n a c t u a lo p e r a t i o nc o n d i 七i o ng h o w s ,t h i 8s y s te i f ib o 七hh a st h ea d v a n t a g e o fs i n 9 1 ef l a tm a c h i n ea 1 1 dt h ec o n v e n i e n 七a n c eo fc 唧u t e r w h i l eb a v i n gg a t i s f i e d t h en e e d so ft h ep r o d u c 七i o n ,r e d u c e dt h eh a r d w a r ee q u i p m e n t s k e yw o r d s : e l e c 七r o l y s i s d i g i t a lt r i g g e r w a v ed i g i t a lf i l t e rc o m i x p r d g r a n m l i n g i n u l t i 七h r e a d p i dn e u r a l n e 七 中南火学坝i 论义 笫一章概述 第一章概述 l 。l 锌电解整流监控系统盼现状 电解是通过直流电的作用,使金属在电源阳极析出的一种冶炼金属的方法。 电解锌是现代化学工业中最基本的组成部分之一,在国民经济中占着十分重要的 地位。 电解一般是在专用的电解槽中进行,电解槽是一种需要直流电能的电化学反 应器,一般出数台至数百台串联成为一个系列,其直流电压为数十至数百伏,电 流由几千安到几百千安,功率自数于伏安至数万伏安。但是从变电站送出的电源 都是高压三相交流电,这就需要在通到电解槽之前先进行整流。晶闸管整流装置 就是把供电系统的高压交流电变为低压直流电的设备,所以大功率整流装置是电 解槽耐以工作的一项关键电器设备,也是电解槽工作的的技术难点“1 。对整流 装置的控制,目前使用最普遍的方式是采用小规模集成控制电路,其可靠性很难 得到保证。此外,由于它采用三相锯齿波与直流控制信号相比较获得移相脉冲, 而锯齿波的斜率、占空比、幅值等都与器件参数有密切关系,比较信号的微小偏 差都可引起较大的相误差,因而产生触发脉冲的精度和对称性不高,从而使得输 出的电解电流不能够严格跟踪预设电流曲线。并且,由于采用的是硬件电路进行 控制,因而不能对整个系统的工作状况进行监视,一旦发生故障,将不得不对整 个系统进行大检修,严重影响了工作效率。 1 2 本项目的研究目的和意义 本课题来源于韶关冶炼厂,该厂具备年产2 0 万吨锌的生产能力。在本系统 应用前,该厂的整流控制设备采用的是一种模拟控制器。该控制器具有很多不可 克服的缺点: ( 1 )由于用锯齿波与直流控制信号相比较获得移相脉冲,控制精度和 对称性不高: ( 2 )模拟调节器的参数设定后,在电解过程中不能修改,在电解的不 同阶段,控制效果很难致,从而引起系统振荡,电能消耗加大, 中南大学硕士论文 第一章概述 品质量不稳定。 ( 3 ) 没有监视环节,不能够实时掌握系统的运行状况。在b p 将出现故障 时,不能给出故障信息的提示,不能及时进行故障处理。在出现运 行故障后,不能对故障的来源给出参考消息,为检修带来不便。 ( 4 )电解过程的各种信息不能及时准确地记录,从而难以在以后为优化 电解工艺和提高管理水平提供必要的数据。 为了有效解决这些问题,提高企业的生产效率,促进企业的现代化步伐,提 高企业的市场竞争能力,必须采用新的控制策略来重新实现整流监控系统。近年 来随着微电子技术的突破,微处理器性能的提高,价格的下降,中断响应和处理 速度的提高,使得在微处理器或微计算机系统基础上实现生产过程的计算机控制 和管理成为现实。为此,我们设计了直接用工控机来完成对晶闸管进行控制的数 字触发系统。另外,由于槽电流是电解锌生产过程中的个重要参数,它的变化 对电解的效率、耗能量、电解锌的质量都有很明显的影响,因而实时高精度地控 制槽电流有重大的意义。而槽电流的大小完全受晶闸管导通角的影响,为此我们 在控制算法上采用神经网络p d 实时调整控制角的大小,以保证槽电流始终跟随 预设电流的变化。实际运行表明,这种控制方式有效地解决了模拟控制设备所带 来的问题,给企业带来了很大的经济效益“1 。 中南人学坝l 论殳 第一章锌l u 解整流装置的研究 第:一章锌电解整流装置的研究 山予锌电解所需的直流电流很大,所以对其整流装置,如果采用三相半波整 流电路,则每相要并联晶闸管,使均流、保护、直流磁化等问题复杂化。如果采 用= :相桥式电路,整流器件并没有减少,却多了一个管压降损耗,降低了效率”。 为此,本系统采用了带平衡电抗器的双反星形晶闸管整流电路“1 。 2 1 带平衡电抗器的双反星形晶闸管整流系统的设计 如图2 一l 为本系统所使用的带平衡电抗器的双反星形晶闸管整流电路的电 路图。整流变压器的副边每相有两个匝数相同、极性相反的绕组,分别接成两组 二相半波电路,如图2 1 所示,u 、v 、w 组和u 、v 、w 一组。其中u 与u 、v 与v 、w 与w 分别绕在变压器相应同一相铁芯上使变压器副边两 绕组的极性相反,故命名为双反星形电路。 _ u v w ,v b,v t h:v 革茹辜件 - ,一, 图2 1 带平衡电抗器的双反星形晶闸管整流电路 从图中可以看出双反星形的整流电路实际上是由两组三相半波整流电路并 联而成,每组只供给总负载电流的一半。它与由两组三相半波电路串联而成的二i 相桥式电路相比,输出电流可增大一倍。而且由于变压器副边两绕组的极性相反, 所以也可以消除铁芯的直流磁化。 设两组三相半波电路的控制角q = 0 ,其整流电压、电流的波形如图2 2 所 ,i “1 。在图中,两绕组的相电压互差1 8 0 。,因而两绕组的相电流办互差1 8 0 。 中南人学颀l 论文 第二章锌f u 解整流装置的研究 u d l j l u uu vu w omom洲。 义姒义姒义, 川 l 毛| d 吉,。广 i i ( ) t l u wu uu v d 2 删。 门门 姒义义义义艄 j i 吉l 扛 - lu 图2 2o = o 时,两绕组整流电压、电流波形图 ( ) t 他们的幅值相等,都是j 。,2 。以u 相而言,相电流毛与毛出现的时刻虽然不同, 但它们的平均电流值都是,。6 ,因此平均电流相等,二绕组的极性相反,所以 直流安匝互相抵消。同理,其它两相的直流安匝也是相互抵消的。总之,在这种 线路中,利用绕组的极性相反消除了直流磁通势。 中南人学顺l 论文鹕二章锌l u 解整流裂置的研究 在这种并联电路中,在两个星形的中问接着带有中间抽头的平衡电抗器( 见 图2 一1 ) ,这是因为两个直流电源并联运行时,只有当两个电源的电压瞬时值完 全相同时,才能使负载电流平均分配。在双反星形电路中,虽然两组整流电压的 平均值和u 如是相等地,但是它们的脉动波相差6 0 。,瞬时值”砘和“。:是不同 的,如图2 2 所示。现在把六个晶闸管的阴极连在一起,因而两个星形的中点 和问的电压便等于“。和”。之差。这是一个三倍基频的近似三角波。如图2 3 ( 2 ) 所示。这个电压加在平衡电抗器。匕产生相应的交流电流,而0 通 过两星形绕组自成回路,它不流到负载中去,故称环流或平衡电流。 考虑到0 后,每绕组承担的电流分别为l ,2 ,为了使两绕组尽可能平均 分配,就要使f ,尽可能小,为此,就必须使0 足够大,以便限制环流在其负载 额定电流的1 2 以内。在结构上,平衡电抗器的中自j 抽头把它一分为二,两 端分别接到两绕组上。由于电抗器的两部分都绕在同一铁芯上并共同向负载供 电,但其极性相反,因而在电抗器铁芯的直流磁通势相互抵消,避免了了铁芯直 流磁化饱和问题,同时也使得电抗器的体积可以做得比较小。实际上,两绕组的 电流相等时,磁通势相互抵消,铁芯中没有磁通,也就没有电感的作用、只有当 两绕组的电流不平衡时,才产生磁通,并感应电动势,从而使电流的分配趋于平 衡。 如果不接平衡电抗器,那么图2 1 所示的电路就变为了六相半波整流电路, 在任一瞬问只能有一个晶闸管导电,其余五个晶闸管均承受反压而阻断,每个品 闸管最大导通角为6 0 。,每管的平均电流为t ,6 。可见六相半波整流电路晶闸管 导电时间短,变压器利用率低,因而性能上不如带平衡电抗器的双反星形晶闸管 整流电路。 在图2 3 ( 1 ) 中取任一瞬问如删l ,这时“,及“。均为正值,然而“,大 f “空果两组三相半波整流电路中点月和 :直接相连,则必然只有“,相的晶 闸管能导电。接了平衡电抗器以后,啊、疗:问的电位差加在。的两端,它补偿 了”,和“。的电动势,使得“,和“。相的晶闸管能同时导电,如图2 4 所示。出 中南人学坝f + 论文 第一章锌i u 解整流数置的w f 究 j u d 蕊弼蘅一。 o 7戮缎一面 u d jl 卯入朋 o vvv 订 图2 3 平衡电抗器作用下,输出电压波形图( 1 ) 和平衡电抗器上电压的波形图( 2 ) 图2 4 平衡电抗器作用下,两晶闸管 同时导电及环流作用 于在耐,时刻虬。比“。电压高,w :导通,此电流在流经工,时,i _ :要感应电 6 中i = i 人学倾h 文第二帝锌l u 解整流裂簧的研究 动势,它的方向是要阻止此电流的增大。可以导出平衡电抗器两端电压和整流输 出电压的数学表达式: “r = “。,、一d ( 2 1 ) :! 一丢“+ = 告( “ 地l ) ( 2 2 ) “r f 2 “以一i “,2 “+ j “p2 j ( “ + “。l ) 。2 2 虽然“, “一导致 “但出于上,的平衡作用,晶闸管和啊都承受j f i 向电压而同时导通。随着时间推移至 ,与 。的交点时,由于 ,= “。,两管继 续导通,此时“,= 0 。之后“。 。,则流经“1 相的电流要减小,但,有阻止电 流减小的作用“,的极性则与图3 4 所示的相反,o 仍起平衡作用,使阳j 继 续导电,直到“。 “。,电流刁从嘿换至。此时变成和嘎同时导电。 每隔6 0 。有一个晶闸管换相,每一组中的每一个晶闸管仍按三相半波的导电规 律l m 各轮流导电1 2 0 。这样以平衡电抗器中点作为整流电压输出的负端,其输 出的整流电压瞬时值为两三相半波整流电压瞬时值的平均值,见式( 2 2 ) ,波 形如图2 3 ( 1 ) 中粗黑线所示。 将图2 3 ( 1 ) 中和的波形傅立叶级数展开,可得口= o 时的和, 即: “,:塑【1 + ! c o s 3 删一三c o s 6 耐+ 上c o s 9 耐】 ( 2 3 ) 川 2 石 。 43 54 0 。 = 墨警【1 + 丢矧( 耐删一言c o s 6 ( 硝坷o ) + 去c o s 9 ( c 甜一6 0 。) 一】 4 0 、 = 訾瞄c o s 。“一丢c o s o 耐一击c o s 。一 圳 2 丌 43 54 0 。 由式( 2 一1 ) 和式( 2 2 ) 可得 邯= 訾卜扣“一去9 一, :婴【1 z 万 三c o s 6 删一 3 5 。 ( 2 5 ) ( 2 6 ) 中南人学坝l 论史第一二章锌i u 解整流装置的珂f 究 负载电压中的谐波分量比直流分量要小得多,而且最低次谐波为六次谐 波。其直流分量就是该式中的常数项,即直流平均电压: u 。= 3 石u2 ( 2 厅) = 1 1 7 u :。 平衡电抗器两端的电压“,只包含交流成分,且主要是三次谐波。电压“,的 波形如图2 3 ( 2 ) 所示。其幅值亦可从图2 3 ( 2 ) 中求出,即当耐= 州2 时“。 的峰值减去“。在3 0 。时的电压瞬时值: :厨:坜:s i n ,o o 一孚【,: ( m ) 因为最大环流为l 2 ,而环流实际上就是平衡电抗器的励磁电流,因此平 衡电抗器的电感量亦可从规定的最小负载电流j 。估算出( 只考虑三次谐波) , 西- 3 妒爹2 誓 8 ) 驴妥 c z 删 由此可得双反星形整流电路的外特性:当负载电流很小时,其外特性较陡, 如图2 5 所示。在小电流的情况下,l 值与环流相等时,运行中的一个晶闸管 倒2 5 敢反星形牾流电路外特性 阻断电路失去并联导电的性能,由两个三相半波并联工作转为六相半波工作 u 。,山1 1 7 u 2 转为1 3 5 u2 ( 在口= 0 和,= o 时) 。当,d ,“。时,特性如曲线1 :! 塑墨兰塑,! :丝;| ! ;篁三翌壁坐塑鍪堕鍪曼塑型壅 j瓣。 u “ ow t o = 6 0 i 1 7 蔽滴一 x x 订 a = 9 0 0 l j 、 , 义。曼,j尺 u w 只 u u 、。 求孓慕慕冷 x 签x 泷 哭签 聊 , 、八? 图2 6 双反星形整流电路,当 o = 3 0 。、6 0 。、9 0 。时的输出波形 9 中南人学坝i :论文第二带锌乜解整流裂置的研究 所示,当,。, ,。时,特性如曲线2 变化。因此在使用中因尽量避免,;, ,m a x 时,取,( 甩) = y m a ) ( ,( 开) j ,m i n 时,取y ( 甩) = y m i n 】7 r n i n y 仰) 砂则滤除n ,以插值结果替代。式中,儿为第k 次采样值,y 。为 第k 一1 次采样值,缈为相邻两次采样值所允许的最大偏差值。缈的大小取决于 测龄j l 玎t 和y 值变化的动态响应,实际应用时缈的选取非常关键,却太人。 脉动干扰信号必将乘虚而入,使测量系统误差增大:衄太小又会使某些真实信 号被误当作干扰信号而被抛弃,降低采样值的可信程度和采样效率。最好的办法 是以理沦计算值作为初始值1 ,然后根据调试结果进行修正,直到符合要求。 通过这种插值替代后,将得到一个新的采样序列y t ,y 1 ,y 。再对这个 新的采样序列求取平均值,从而得到滤波后采样序列中的一个点。 按照上述的程序判断限幅滤波方法对交变信号进行滤波,必须保证第一个采 样值y 为有效的采样值。为此,在最初开始采样时,应先以小于正常采样周期的 速度采样,在采样时刻,、,2 、分别采样得到g 。、g :、g ,根据下述方法获 中南人学颂i ? 论文第二三章锌i u 解监控数置的研究 得筇。个有效的采样值: 如果i g :一g 1 g , 贝0 y = g :; 如果k 。一暑f j g ,则继续判断: 如果l g ,一g :i g ,则y = g ,; 如球,_ 9 2 l g ,则y ,= 半。此处,g 可以由虹学 柬定,这样最多用3 次采样值即可确定第一个有效的采样点粥。此后,调节采样 周期到f 常值,按照前述方法进行滤波。 对于各采样值,按上述复合数字滤波方法将不可信的异常点滤除后,如果丢 弃,必将影响测量系统精度。因此,必须采用插值方法,以插值结果来代替滤除 后的异常点“”。为了实时获得各参数值,本系统采用不需要解多元方程组,计 算量小,易实现的l a g r a n g e 插值法进行异常点滤除后的插值替补。最常用的 l a g r a n g e 插值法有线性插值法和抛物线插值法”“”。下面简要介绍这两种插值 法的实现。 1 ) 线性插值法 设y ,已经被复合数字滤波器确认为异常点,则选取最靠近插值点的相邻两 个采样点y ,、j ,。作为捅值节点,对,进行线性插值( 内插) ,插值多项式为: 只2 ( ,) 2 y 一+ :l _ :等( ,一,一- ) ( 3 一z ,) 设采样周期为f ,即f 。一f ,= f 一r 。= 出,则式( 3 2 1 ) 可简化为: 胪丛 ( 3 q 2 ) 即用插值结果墨! 二 堕来替代异常采样值几。 2 ) 抛物线插值法 山 i 线性插值仅仅利用两个插值节点上的信息,可能会存在较大的插值计算 误差,因此在确定好第一个有效采样值之后,我们选用抛物线插值法。从所有的 中南人学硕i 论文第二三章讳i u 解脓控装爱的i 9 f 究 采样值中选墩最靠近插值点( 即异常点) 的相邻3 个插值节点,进行抛物线插值。 设3 个插值节点z 。、x 。、z :处的函数值( 采样值) 为、y 。、y :,则抛物线插值 多项式为: 三:c x ,= i ;端儿+ :i j 鹅y 十篆慧嵩y z( x 2 一z i ) ( z 2 一x o ) 。 ( 3 2 3 ) 节点粕、x ,、工:的确定取决于插值点x 的位罱,设插值点工位于节点一和r : 之间,即 一 了 x 2 ,对于等时间问隔采样,则( ,儿) 、( 工,y i ) 、( x ,y ) 和 ( x 2 ,y 2 ) 分j 5 1 f 对应于( f m ,_ y l - 2 ) 、( ,j - l ,儿一) 、o ,y 。) 和0 。,y 。) ,设f 时刻的采样 值y ,为异常点,应当用插值结果替代,此时f ,。一f f - 2 = t f 。= 。一,f = & ,将 之代入式( 3 2 3 ) ,则可得到抛物线插值的简化形式如下: y :一三y ,+ y ,+ ! n , ( 3 2 4 ) 一一2 + j ,卜l + j y 川 3 一z 4 从式( 3 2 4 ) 可以看出,对于采样序列y 。,y :,虬的第2 个和术两个 节点当出现异常时,不能采用上述公式计算。为此,本系统对这3 个特殊的点 采取如下的措施- 对于第2 个节点,取、y :、y ,为插值节点:对于未两个, 墩y 。:、y 。、n 为插值节点。 3 3p c i 一1 8 0 0 l 采样卡的运用 在本系统中,由于所需监测的电流、电压信号值比较多、所需控制的输出也 有六路( 六个品闸管的触发信号) ,可见,高速、准确的数据采集在本系统中显 得极为重要。因此,为了实时、准确检测各信号值,精确地控制品闸管的触发。 我们选用了威达公司的p c i 1 8 0 0 l 采样卡“”。 p ( 、t18 0 0 i 足种可用1 二器种p c 机的高性能,多功能模拟、数字输入输出 卡,有着p c i 即插即用及p c id m a 模式等优点。其数据传输速度比i s a 总线快近 1 2 倍,一般情况下可扩充4 片p c i 总线扩展卡,4 片以上需要p c i 桥扩展其性 中南人学顾l j 论文第三章锌j 乜解j 隘托装置的研究 能特点如下: 1 )1 个1 2 位采样频率的a d 转换器,1 6 通道的t t l 数字输入,2 个1 2 位d a 转换器,1 6 通道的t t l 数字输出。最大数据传输速度为2 j m w ( ) f d s s o c o n d 。 2 )1 kw o r d sf i f o : 3 )单通道或多通道操作时,其采样频率可达3 3 0 k h z ; 4 )可编程增益:o 5 ,1 ,2 4 ,8 : j )自带两个互相独立的d a c 电源,可以通过选择跳线改变输出幅值的 大小: 6 )具有三种触发模式:软件触发( s o f t w a r et r i g g e r ) ,等间隔触发 ( p a c e rt r i g g e r ) 外部触发功能( e x t e r n a lt r i g g e r ) 。而其强大 的外部触发功能又有三种方式:前段有效触发( p r e t r i g g e r ) 、中 段有效触发( m jd d l e t r i g g e r ) 和后段有效触发( p o s t t rg g e r ) ; 7 ) p c i 一1 8 0 0 l 最大引人注目的是其首创的魔术扫描( 1 i l a g i cs c a n ) 功能, 这种扫描功能可以对任意通道以任意顺序扫描,可对每一通道的扫 描频率和增益设定不同值,可对每一通道的报警模式和报警值设定 不同的值。 数抛聚集町朵用查询方式、中断方式和d m a 方式。若采用查询方式,通过程 序或采集板上的定时器来启动a d 采样,采集卡切换通道和建立采样电平,这 需要一定的时州,在这段时问内,程序通过查询端口状态来获取转换状态,当a d 转换完成后,程序读取转换的结果。在这一过程中,程序在启动a d 采集或 启动定时器后,就只能被动的等待a ,d 转换完成,浪费了大量的c p u 时间,很 雉满足实h 、j 要求:若采用中断方式,采集卡通过中断来通知c p u 读取a ,d 转换 的结果。但是使用中断柬进行a d 采集,每次要保护断点保护现场需用若干 条指令每条指令存在着执行时间;同时,在w i n 9 8 和w i n n t 这样的多线程多 任务系统 j 频繁的中断会导致大量的任务切换,因此同样要浪费大量的c p u 时间。而d m a 方式采用了双缓存技术,数据采集数度速度比前两种都要快得多, 所以本系统选择了d 姒方式进行数据采集。 存d m a 方式中当采集卡进行a d 数掘转化时,程序仍然可访问采集的数 中南人学颂i 论文第三帝锌电解脓拄装置的徊f 究 掘,保证了数据采集和控制的实时性,其数据存储示意如图3 3 所示。例如, 首先将a d 转换的数据存储到缓冲区a ,当缓冲区a 数据满的时候,a d 转换 的数据将被存储到缓冲区b ,此时,可访问数据缓冲区a :当缓冲区b 满的时候, 数据存储又被切换到缓冲区a ,此时,可访问缓冲区b 。这样,在后台,可把a d 转换的数据存储到一个缓冲区,同时在i j i 台可对另外一个缓冲区的a d 转换 的数据进行处理。由于a d 转换在后台完成,数据通过d m a 控制器传送到内存 d a t a 圈3 3 烈缓存示意幽 巾,这使c 州存数据采集和传输操作中参与最少,从而节省了c p u 用来进行数掘 处理的时间,满足实时测控的需要。 中南人学坝 论文第州章系统软件驶汁 第四章系统软件设计 4 1n 二编与可视化语言v i s u a lc + + 的混合编程技术 汇编语言是由面向机器语言发展而来。面向机器语言是特定的计算机系统所 固有的语言,用机器语言进行程序设计,需要对机器结构有很深的了解。用面向 机器语言编制出来的程序可读性很差,程序难以修改和维护,也不能在不同机器 上移植。”1 。为了提高程序设计效率,人们考虑用有助于记忆的符号来表示机器 指令中的操作码和操作数。例如用a d d 表示加法,s u b 表示减法等等,这就是汇 编语言。 汇编语占具有内存丌销小,运行速度快,能够直接对计算机所有硬件进行操 作的特点。因而,在对于程序的空间和时间要求很高的场合,就必须用汇编语言 进行程序编写,对于涉及到直接控制硬件的场合,更是如此。但是,汇编语言是 一种和计算机的机器语言十分接近的语言,它的书写格式虽然比机器语言有所改 善但在很大程度上还是取决于特定的计算机,编程的效率仍然较低。所以对于 不需要进行硬件操作的程序部分,应该选择一种更加有效的丌发工具,为此,对 于软件用户接口部分,我们选择了m i c r o s o f t 公司的v i s u a lc + + 。 v i s u a lc + + 采用m f c ( m i c r o s o f tf o u n d a t i o n c l a s s e s ) 作为其类库。v i s u a l c + + 提供的向导a p pw i z a r d 可以方便地帮助我们实现一个应用程序的初步框 架,甚罕不用我们增加。条代码。v i s u a ic + + 设计的文档视( d o c u m e n t v i e w ) 结构能够将管理数据的程序代码和负责数据显示的程序代码分离开来,使得程序 砹计变得消晰、自然“”。 对于本系统,我们既涉及到了对硬件的控制,又要求有良好的操作界面。为 此,我们在v i s u a lc + + 中嵌入汇编语言,使得漂亮的操作界面与底层的精确 控制得以完美的结合。在v i s u a lc + + 的语占代码中嵌入汇编语句的方法很简 单,只需要用在使用汇编语言的地方使用保留字“一a s m ”进行标识,然后就可以 按照汇编语法编写代码,但是注释仍然采用v i s u a lc + + 的习惯,即用双斜 j : 标识。比如: a s m 一a s mb l o c k 中南人肇顺i 论文 第叫章系统软件设汁 move a x 0 1 h i n t1 0 h a s mm o ve a x , o l h s e p a r a t e a s mli n e s a s 玎1jn t1 0 h 4 2 系统整体软件设计 本系统软件主要由人机交互、数据处理、中断响应三部分组成,如下图4 一 l 所示。其中,人机交互主要实现龉视主界面、参数设定、数据访问等任务;数 据处理部分实现数字滤波和神经网络p i d 参数的自整定过程( 神经网络p i d 控制 人机交互 数据处理 黧翥蒿萎p 。 中断响应 图4 l 系统组成图 算法将在下章详细介绍) ;当同步信号中断产生后,中断响应模块完成精确的 软件定时,定时器到时后,对相应晶闸管发出触发脉冲。 从这三个模块所完成的任务可以看出,它们各有自己的特征:人机交互必须 随时都能响应用户提交的任务;数据处理的计算过程是一个长时间的过程;而中 断则必须实时响应。所以,如果采用常规的编程方法,把这三个任务放在一个线 程中,则将会产生三个模块抢占c p u 的情况。比如当系统正在计算p i d 三个参数 值时( 即诈在处理第二个模块时) ,用户选择查询数据( 第一个模块提交任务) 。 但系统并不会立即响应用户提交的任务,直到p i d 三个参数值计算完毕以后,才 会 盘f | i 在i ; l i 数掂。这种操作疆然不友好更为,7 重的是,这种设计有可能使嗣步 中断不能够及时响应,从而使整流设备失控。为此,我们在软件中采用了多线程 技术,针对三个模块设计了三个线程。 多线程虽然在控制上较为复杂,但它具有很多优点: 1 ) 避免瓶颈。如上所述,如果使用单线程,应用程序在等待一个缓慢 操作完成的过程中必须停止所有其它的操作,c p u 直到操作完成之 后力进入空闲状态。而使用多线程,应用程序可以在一个线程等待 中南人掌坝i j 论文第州章系统软件破汁 缓慢操作完成的过程中执行其它的线程。 2 )并行操作。应用程序一般需要一些互相独立的操作能够并行操作, 使用多线程可以达到这个目的。此外,还可以为不同的任务指定不 同的优先级,以使c p u 有更多的机会执行更为紧迫的任务。 3 )多处理。如果运行应用程序的系统有多个处理器,可以将应用程序 中的任务分配到不同的线程中,并让它们在不同的处理器上同步运 行以提高系统性能。 在v c 中u j 以创建两种线程:用户界卿线程( u l1 h r e a d ) 和辅助线程( w o r k e r t h r e a d ) ”1 。用户界面线程通常都有窗口,有自己的消息循环能接受来自用户 的消息:辅助线程没有窗口,不能处理消息。根据本软件的实际情况,我们把第 一个模块设计为一个用户界面线程,用于与用户交互,该线程实际上就是v ca p p w i z 8 r d 为我们创建的主线程;余下两个设计为辅助线程,用于后台的计算和控 制输出。 在v c 中启动一个辅助线程很简单,不过,在启动辅助线程之前,必须为线 程的主程序编写个用于计算的全局函数,然后采用如下的方式进行调用( 以下 以创建神经网络p l d 线程为例进行介绍,另外一个线程的创建过程完全雷同) : 倒建神经删络p l d 线程 c w in t h r e a d 术p n n p i d j h r e a d = a f x b e g i n t h r e a d ( c o m p u t e n n p i d p r o c ,g e t s a f e h w n d ( ) , t h r e a d p r l 0 r i t y n o r m a l ) : 其中,第一个参数是是用于计算的全局函数,该函数如下设计; u i n tc o m p u t e n n p i d p r o c ( l p v o i dp p a r a m ) 采用神经网络对p i d 三个参数进行训练 r e t u r no : l a f x b e g i n t h r e a d 函数立即返回,返回值是一个指向新建的线程对象的指针。 我们可以使用这个指针来挂起或者恢复线程( c w i n t h r e a d :s u s p e n d t h r e a d ( ) 和 c w i n t h r e a d :r e s u m e t h r e a d ( ) ) ,但是,该线程对象没有用于终止该线程的成员 中南人学倾f :论【:第蚪帝系统软件醺h 函数。第二个参数是一个3 2 位的值,它传递给全局函数c o m d u t e n n p i d p r o c ( ) , 第三个参数是该线程的优先级代码。一旦a f x b e g i n t h r e a d ( ) 调用成功,两个线 程将分别独立运行。w i n d o w s 根据两个线程的优先级来分配c p u 时间。如果主线 程在等待一条消息,计算线程仍然可以运行。 在辅助线程创建好以后,就可以在主线程和辅助线程以及辅助线程之间进行 通信了。最简单的通信方法就是通过全局变量。比如,把神经网络p i d 的三个参 数用一个全局变量保存起来,当p n n p i d j h r e a d 线程要重新整定这三个参数时 就读取全局变量的值,整定完以后就把这三个值重新保存,供中断响应线程 ( p i n t e r r u p t t h r e a d ) 使用。全局变量是线程间通信使用的原始方法,但却是有 效的方法。不过这种方法有很大的缺陷,比如,当线程p n n p i d j h r e a d 正在更 新神经蚓络p i d 的三个参数值时,恰好被线程p i n t e r r u p t t h r e a d 读取了。那么 线程p i n t e r r u p t t h r e a d 读取的将是三个毫无意义的值,如果用这三个无意义的 参数值来调节p i d 控制器,将会产生不可预料的后果。所以,对这三个线程,必 须进行同步。 对线程的同步有很多种方法,比如使用事件同步,线程阻塞,临界段等,在 v c 中针对这些方法。都提供了相应的类和方法,下面分别简要介绍。 事件是w i n d o w s 为线程同步提供的一种内核对象。在进程内部,事件是用难 一的3 2 位句柄来标识的,也可以通过名称来标识它。事件分为两种状态:有信 譬状态和无信号状态。事件以两种类型出现:手工复位和自动重置。在这罩,我 从介绍“动眍胃搿件,闲为它适用于两个线程问的同步。 m f c 提供了一个方便的c e v e n t 类,它是从c s y n c o b j e c t 中派生来的,它通 过甬数s c t e v e n t ( ) 函数可以把信号设置为有信号状态。在默认状态下,构造函 数在无信号状态下生成w i n 3 2 自动重冒事件对象。如果申明为全局对象,则任何 线程都能很容易地访问它们。现在考虑我们的系统,我们可以创建一个事件对象: g e v e n t s t a r t ,在线程p i n t e r r u p t t h r e a d 中监视这个事件,只有当它变成有信 号状态时才读取三个全局变量,即p i d 的三个参数值。可以通过w i n 3 2 w a j t f o r s i n g l e o h j e c t ( 豇e v e n t s t a r t ,i n f i n i t e ) 来实现这个功能。该函数可以把 p ln t e r r i l p l t h r e a d 线程一赢挂起,直到g e v e n t s t a r t 成为有信号状态。当该线 稗棒起的时候,它不l 与用c p u 时间。w a i t f o r s i n 9 1 e o b j e c t 的第一个参数是事件 中南人学顺i :论义 第1 j i f 章系统软件议汁 句柄。可以为该参数使用c e v e n t 对象;第二个参数是时间间隔。如果把该参数 设置为i n f i n i t e ,该函数将永远等待,直到事件成为有信号状态,如果设置为o , 则立即返网,如果事件成为有信号状态,返回值为默i t b j e c t 一0 。 线程阻塞的方法很多,上述的w a it f o r s i n g l e o b j e c t 实质上也是一一种阻塞的 例子,线程停止运行,直到事件成为有信号状态。此外,还可以采用诸如s l e e p ( ) 等函数来让线程“睡眠”,这罩不一一介绍了。 从上面的分析可以看出,事件比较适合于信号控制,而本系统中需要的是控 制数掘的访问,所以我们采用了另外一种方法来实现线程的同步:临界段。临界 段对象不能被移动或者复制,程序也不能修改该对象。当一个线程通过调用 e n t e r c r i t i c a l s e c t i o n 进入临界段后,被认为拥有该临界段对象。两个线程不 可以同时拥有同一个i 每界段对象,因此,如果一个线程进入了临界段对象后,那 么f 个使用同f 临界段对象呼叫e n t e r c r i t i c a l s e c t i o n 的线程将在函数呼叫 过程q 1 被暂停。只有当第一个线程通过调用l e a v e c r i t i c a l s e c t i o n 离丌临界段 刈象j 舌,该晒式4 会传叫控制权。 m f c 提供了c c r i t i c a l s e c t i o n 类对w i n d o w s 临界段句柄进行了封装使得 使圳起_ 来特别方便。如下伪代码所示; c c r i t i c a l s e c t i o ng c s g l o b a lv a r i a b l e sa c c e s s i b l ef r o ma llt h r e a d s i np n n p i d - t h r e a d u i n tc o m p u t e n n p i d p r o c ( l p v o i dp p a r 硼) 采用神经网络对p i d 三个参数进行训练 gc s ,1o c k ( ) : 把训练
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2024-2025学前教育学原理期末试卷及答案
- 《计量学基础》试卷及答案
- 2025精麻药品培训考试试题库及参考答案
- 虚拟交互式可视化-洞察与解读
- 2025年事业单位招聘考试综合类结构化面试真题模拟试卷(工商类)
- 2025年事业单位招聘考试综合类职业能力倾向测验真题模拟试卷(长春)
- 2025年事业单位招聘考试面试真题模拟试卷权威解读集
- 2025年事业单位招聘考试综合类职业能力倾向测验真题模拟试卷(昆明)
- 2025年事业单位招聘面试真题模拟试卷:计算机科学与信息技术
- 递归诊断模型-洞察与解读
- 采购业务审计培训
- 2025-2026学年冀美版(2024)小学美术二年级上册(全册)教学设计(附目录P284)
- 服装色彩构成课件
- 化工仪表检修与维护课件
- 2025年华为软件开发工程师招聘面试题库及答案解析
- 程序化广告课件
- 电工基础课件
- 四川省石渠县2025年上半年公开招聘辅警试题含答案分析
- 真菌生物膜毒力因子-洞察及研究
- 基孔肯雅热危害及预防课件
- 副校长在任职宣布会上的表态发言材料
评论
0/150
提交评论