电子组态(精选7篇)
电子组态 篇1
摘要:在模拟电子技术课程“放大电路”一章的教学中, 有三极管放大电路三种组态的内容, 即:共发射极放大电路、共集电极放大电路、共基极放大电路。这三种组态各有特点, 因此用在不同的放大电路应用中。在教学中, 如何让同学理解好这三种放大电路组态各自的特点及应用是教学中的一个难点, 笔者通过案例教学法, 加深了学生理解这三种组态各自的特点, 提高了学生的学习兴趣, 达到了较好的学习效果。
关键词:模拟电子电路,三极管,三种组态,案例教学
一、三极管放大电路三种组态的共同点
三极管作为放大器件, 其主要作用是用来放大交流信号的, 但不管其接成任何一种组态, 直流偏置都应该是一样的, 即发射极正偏、集电极反偏, 这样才能满足组成三极管放大电路的基本偏置条件, 如图1所示。
二、三极管放大电路三种组态的判断
三极管放大电路的这三种组态的主要特点就在这个“共”字上, 即哪个极作为输入、输出信号的交流信号公共端, 图2、图3、图4分别画出了共发射极放大电路、共集电极放大电路、共基极放大电路的交流通路示意图。
在确定了公共端后, 还要看输入信号加在三极管的哪个电极, 输出信号从哪个电极输出。共发射极放大电路, 信号由基极输入, 集电极输出;共集电极放大电路, 信号从基极输入, 发射极输出;共基极放大电路, 信号从发射极输入, 集电极输出。
三、三极管放大电路三种组态的特点和用途
三极管放大电路三种组态在理论上有何区别呢?这是让学生了解和掌握这三种组态特点的关键。首先把三极管看成一个四端网络, 通过微变等效分析法可分析出三极管放大电路三种组态的各自特点, 如表1所示。
通过表1我们可以分析出:共发射极组态电压、电流放大倍数高, 输入电阻中等, 输出电阻高, 因此该种组态一般适用于放大电路的中间极;共集电极组态电压放大倍数低, 电流放大倍数高, 最主要的特征是输入电阻高, 输出电阻低, 因此该种电路适用于输入、输出级及缓冲级;共基极组态电压放大倍数高, 电流放大倍数低, 输入电阻低, 输出电阻高, 频率特性好是它的重要特性, 因此常用于高频电路或宽带放大器。
四、三极管放大电路不同组态组合放大电路
在讲完三级管放大电路三种基本组态后, 要想进一步扩充学生的知识面, 就要介绍一下三极管放大电路不同组态组合放大电路。在现实中, 可根据三极管三种组态的不同特点, 将其中任意两种组态进行组合, 构成三极管放大电路的不同组态组合, 以充分发挥各自的特点。
(一) 共射—共基组合放大电路
共射—共基组合放大电路的交流通路如图5所示, 在这两种组态组合放大电路中, 后级的输入电阻是前级的负载, 由于后级共基极放大电路输入电阻很小, 致使前级共发射极组态的电压增益很小, 整个电路的电压增益主要由共基极放大电路提供, 由于共基极放大电路的频带宽, 所以这种组合电路特别适用于高频工作, 常常用于视频放大电路。
(二) 共集—共射组合放大电路
共集—共射组合放大电路的交流通路如图6所示, 第一级共集电极电路主要特点是输入电阻高, 用于提高整个电路的输入电阻, 第二级共发射极电路主要用于提高电路的放大倍数。
五、三极管放大电路三种组态及组合的实际案例分析
让学生能够理解三极管放大电路三种组态的不同应用是让学生正确理解好这一问题的关键, 而实际案例教学是解决好这一问题的最好方法。在教学中, 笔者通过以下实例来帮助学生理解和分析这一问题。
实例1:视频放大及视频输出电路。
一般电视机都有音频、视频输入输出转换板, 这里给学生介绍一下视频输入信号输入端子部分电路的例子, 视频输入端子是为VCD等视频设备提供视频输入信号的输入端, 这个电路一般有两部分, 一部分为视频放大部分, 另一部分为视频信号放大后与内部电路的缓冲及阻抗匹配部分, 这两部分由于功能不同, 所以各有特点。视频放大部分因主要完成的是视频放大, 且视频信号频率较高, 故应采用宽带放大器, 因此用共基极放大电路较适宜。而与内部电路连接需考虑阻抗匹配, 输出阻抗要低, 因此应采用共集电极放大电路。
图7为某品牌电视机的这一视频放大转换电路。课上要对这一电路进行简单分析以加强学生的读图能力和分析问题、解决问题的能力。R1、R2、R3、R4、C1、VT1组成共基极放大电路, 外接视频输出设备, 输入视频信号从VT1发射极输入, 集电极输出, C1为VT1基极交流接地电容;R5、R6、R7、VT2组成共集电极放大电路, 视频信号通过C2从VT2基极输入, 发射极输出。这两级电路由于功能不同, 分别采用了不同的组态形式, 保证了视频信号的放大及与内部电路之间的阻抗匹配。通过这一实例使学生理解三极管各种组态在电路中的作用, 由于问题是从实际案例出发, 因此提高了学生的学习兴趣, 增强了学生的学习动力, 取得了较好的学习效果。
实例2:超外差收音机高放与混频电路。
这个例子是我们经常使用的超外差式收音机电路的一部分, 而且是用一个三极管分别组成共发射极和共基极放大电路以完成高频放大和混频两个功能的电路, 实际电路如图8所示。在讲这个实例之前先给学生介绍一些超外差收音机的原理, 使学生对这个实例更容易理解。从图8中可分析出, 双联可变电容器的一部分CA与磁棒线圈B1的主线圈组成了一个串联谐振电路, 利用这个电路的选频特性并通过调节可变电容CA对高频信号进行选频, 以选出要收听的电台电磁波信号, 这个高频电台信号通过磁棒主副线圈的耦合作用传送到三极管VT1的基极, 对于这个电台高频信号, 三极管VT1组成的是共发射极放大电路, 放大后的电台高频信号从集电极输出。同时三极管VT1与振荡线圈B2及双联可变电容的一部分CB组成共基极振荡电路。这里有两个信号: (1) 高频电台信号f1; (2) 振荡器的振荡信号f2。这两个信号同时在VT1基极输入端进行叠加, 利用三极管的非线性产生两个频率:f2-f1和f2+f1, 在通过选频网络选出f2-f1, 这就是超外差收音机中的465KHZ中频信号, 这个中频信号再经过中频放大、检波、功率放大推动扬声器发出声音。这里主要是介绍混频电路, 因为这个电路既含有共发射极放大电路又含有共基极振荡电路, 是一个三极管分别组成两个组态放大电路的实例, 因此分析好这个电路对于学生掌握三极管三种组态的应用具有很大的帮助。
六、结语
三极管放大电路三种组态是模拟电子技术课程中较难学的一部分内容, 如何让学生学懂、学好这部分内容是授课教师需要考虑的问题。笔者通过改进教学方法, 用案例法进行授课, 从而取得了较好的教学效果。
参考文献
[1]李小珉.电子技术基础[M].北京:电子工业出版社, 2013.
[2]张志良.模拟电子技术基础[M].北京:机械工业出版社, 2012.
[3]付植桐.电子技术[M].北京:高等教育出版社, 2012.
电子组态 篇2
关键词:《模拟电子技术》,负反馈,并联负反馈,串联负反馈,观察法
1.引 言
在多年的《模拟电子技术》课堂教学中,尽管教学设备越来越先进,自我教学水平越来越高,教学技巧越来越娴熟,可是学生对《模拟电子技术》的学习效果并不是越来越好。《模拟电子技术》是一门专业基础课,量大难学,知识点多且难点多,最初学生学有兴趣和信心,但随着内容的深入,越来越难,放弃的学生较多,这么多年这个问题始终困扰着我,经过我的不断思考和对学生的了解,明白了一些问题的所在。固然模电的知识难点很多,但在这里,我就模电的知识难点之一:负反馈组态判别提出一种新的思维判别法。
2.负反馈组态的构成
反馈的定义为:将电子系统输出回路的电量(电压或电流),送回到输入回路的过程。如图1所示:
其中:Xi反馈放大电路的输入信号;xf反馈信号;xid基本放大电路的输入信号 (净输入信号);X0输出信号而负反馈的定义为:如从输出端看:输入量不变时,引入反馈后输出量变小了。如从输入端看:引入反馈后,使净输入量变小了。而我们常用的判别角度为从输入端。其表达式为:xid= xi-xf,其中净输入量可以是电压,也可以是电流。
由框图可知基本放大电路实际输入量为xid, 输出量为X0,而反馈网络的输入量是X0,输出量是xf,对于X量在电路中可以是电压或是电流,故此负反馈组态的组成由三方面构成:输出+输入+极性。输出为取样对象:电压或电流,输入为连接方式:串联或并联,故组态有四种:电压串联负反馈,电压并联负反馈,电流串联负反馈,电流并联负反馈。
3.传统的判断方法
判断顺序为:先是极性,接着是输入,最后是输出。而极性判别采用瞬时极性法,即在电路中,从输入端开始,沿着信号流向,标出某一时刻有关节点电压变化的斜率(正斜率或负斜率,用“+”、“-”号表示)。如图2所示:
就此还未能得出是正反馈或是负反馈, 还要结合净输入量xid= xi-xf是增加还是减少,才能确定为正反馈或是负反馈。图2因原来输入为正,反馈输出为负,使得净收入减少,故为负反馈。
输入的判别采用输入信号短路法,如果XI=0,xid=0,则为并联,如图3(a)所示,否则为串联,如图3(b)所示。
输出的判别为采用负载短路法,将负载短路(未接负载时输出对地短路),反馈量为零———电压反馈,如图4(a)所示。将负载短路,反馈量仍然存在———电流反馈,如图4(b)所示。
采用传统判别方法,学生始终学不好,在实际学习中不能快速有效地加以运用, 故此提出一种直观的判别方法:观察法。
4.观 察法
对于极性判别还要用采用瞬时极性法,对于其他两项采用观察法会更通俗易通。
4.1输 入的观察法
对输入来讲,净输入量无非是两种物理量:电压或电流。而对于电压,满足xid= xi-xf的,只有vid=vi- vf,而该公式反应的是KVL定律,且串联具有分压特性,故当输入以电压形式求和(KVL) -vi+vid+vf=0,即vid=vi- vf时,则为串联负反馈。那该如何观察呢?既然是串联,那么xid、xf、xi三量肯定不在同一节点,这就好判别了。如图5所示:
就看xid、xf在不在同一节点可以,图6就可以直接看出三量在同一节点,则为并联。
对于电流,满足xid= xi-xf,只有iid=ii-if,而该公式反应的是KCL定律,且并联具有分流动特性,故当输入以电流形式求和(KCL)ii-iid-if=0即iid=ii-if,则为并联负反馈。以图7为例,原输入为T1,而反馈输出接于T2,显然两输入信号不在同一节点,故为串联负反馈。
4.2输 出的观察法
在输出回路中,因X0作为反馈的输入,故有电压与电流两种物理量,量不同,反馈信号也不同,同样的道理,采用观察法很直观、简单、通俗易懂、便于掌握和运用,从而使得学生化难为易,解题达到快速有效。如图8所示,根据观察,输出为并联结构,则为电压负反馈。
如图9所示 ,根据观察 ,输出为串 联结构 ,则为电流 负反馈。
5.结 语
监控组态软件特点分析 篇3
随着计算机技术和电子信息技术在电力建设中广泛和深入的应用, 综合自动化变电站已成为变电站发展的新趋势。目前, 盘锦电力公司已建成综合自动化变电站24座, 通过自动监视和控制极大地提高了工作效率和安全性。而要完成自动监视和控制, 采用灵活的组态方式, 快速构建自动监控控制系统十分重要。
1 组态软件的特点
传统的工业控制软件开发周期较长, 这是因为工业被控对象一旦有变动, 就必须修改控制系统的源程序;同时已开发成功的工控软件又由于控制项目的不同而很少重复使用, 增加了开发成本;在修改工控软件的源程序时相对复杂困难。组态软件能够很好地解决这些问题, 使用户可根据自己的控制对象和控制目的任意组态, 完成最终的自动化控制。
组态软件是数据采集与过程控制的专用软件, 是通过组态方式构建自动控制系统监控功能的软件工具。它支持各种工控设备和常见的通信协议, 通常也提供分布式数据管理和网络功能。实时数据库、实时控制、SCADA、通信及联网、开放数据接口、对I/O设备的广泛支持是组态软件的主要功能。组态软件的主要特点如下:
(1) 延续性和可扩充性。当现场的硬件设备、系统结构或需求发生改变时, 不需要很多修改就可方便地完成软件的更新和升级。
(2) 封装性。将所能完成的功能用一种方便实用的方法包装起来, 使用者不必专门学习编程语言技术就能很好地完成一个复杂工程所要求的所有功能。
(3) 通用性。根据工程实际情况, 利用组态软件提供的底层设备的I/O Driver、开放式的数据库和画面制作工具, 就能完成一个具有动画效果、实时数据处理、历史数据和曲线并存、多媒体功能和网络功能的工程。
2 组态软件应用分析
目前, 盘锦电力公司在用组态软件是分别在不同时期投入使用的, 受当时市场环境、技术水平以及总体设计要求等因素影响, 所选产品种类型号都略有不同, 但是各款组态软件实际使用效果大致相同。目前主要使用的组态软件包括iFIX、Cimplicity、组态王KingView、Eyewin在线监控系统、PEMP组态软件、DF3000组态软件、ISA300变电站监控后台系统等。组态软件应用开发流程如图1所示。
(1) iFIX是美国通用电气公司 (GE) 旗下产品, 是目前世界上较为先进的HMI/SCADA自动化监控组态软件, 在电力、冶金、石油化工等行业中有较多应用。它集安全性、通用性和易用性于一身, 可适应各种生产环境。
(2) Cimplicity是GE旗下产品, 为其智能平台ProficyR提供集成的HMI/SCADA解决方案, 目前广泛用于各大电子、电力、餐饮、石油天然气以及其它行业的生产过程。
(3) 组态王KingView是由北京亚控科技发展有限公司开发的组态软件, 具有易用性强、动画功能丰富、技术性能卓越、稳定可靠且价格低廉等特点。
(4) Eyewin在线监控系统是国电南自面向电力监控当前及未来发展趋势全新设计的新一代电网监控自动化系统。它是PS6000自动化系统的子系统软件, 可兼容各种硬件平台 (服务器、工作站、微机) , 又可运行于不同操作系统 (Windows、Linux、Unix) , 能够满足电力监控系统对运行环境的不同需求;支持集控站/厂站监控系统的各种应用, 集SCADA、图模库一体化、拓扑分析、一体化五防、操作票管理、程序化控制、保护信息管理及仿真培训等高级应用于一体, 为各种规模的集控站/厂站监控提供完整、成熟的解决方案。
(5) PEMP监控组态软件是北京光耀电力自动化有限公司依靠GE在电力系统及自动化领域的先进技术, 汲取国内外变电站自动化先进成熟的网络通信和控制技术开发的适用于自身产品的一款软件, 目前广泛应用在变电站综合自动化系统中。其与GE Multilin数字保护单元、通信网络构成先进的自动控制系统。
(6) DF3000监控组态软件是东方电子集团有限公司开发的一套变电站自动化系统。目前, 东方电子已经推出了满足两层数字化要求的DF3300E/DF1900变电站自动化系统, 迄今为止已经有百余套系统在全国各地的110~500kV变电站稳定运行。
(7) ISA300变电站监控后台系统是由深圳南京自动化研究所 (南瑞) 开发的监控系统。该系统采用开放式的软件工作平台, 为多窗口多任务系统;界面风格采用Windows NT/9X画面输出和操作方式, 结构设计模块化, 通用数据库访问方式, 多进程、多线程模式。该系统是南瑞早期开发的监控系统, 目前已经被新版本取代。
软件特点比较分析如下:
(1) iFIX和Cimplicity虽然同属于GE旗下产品, 但是两款组态软件特点却有许多不同, 如果作为工程开发者, 那么iFIX要比Cimplicity更具优势。在图形界面设计方面, 两者的图库图形丰富、色彩方案齐全, 并支持外部导入;同时两者都内嵌VBA, 具有自己的内部函数, 又有广泛的VB函数, 支持所有类型的ActiveX、OLE。
两款软件在可扩展性以及二次开发灵活性上极其强大, 这些优点都是现阶段国内软件无法比及的。其中, iF-IX的优势在于它的编辑与运行是切换进行的, 这有利于保障现场生产安全, 且支持在线修改, 运行时可根据程序很方便地更换对象的链接数据源, 使控制更灵活;而Cimplicity对数据节点的修改不是在线的, 必须先停止工程, 再启动工程。另外在数据库编辑上, iFIX支持数据库导出和导入后编辑, 尽管Cimplicity也支持这种方式, 但在实际使用过程中却经常产生错误, 影响开发效率。两款组态软件功能上具有相当优势, 可实际应用中难免也有弱点, 比如产品版权注册复杂、软件价格昂贵、售后支持不够等, 都是其在国内应用的瓶颈。
(2) 组态王KingView是目前国内比较优秀的组态软件, 在开发过程中易于上手, 简单快捷, 图形丰富, 但是相比较国外软件还是存在差距。由于其内嵌了VBA并且集成多种驱动程序, 因此在可扩展性及二次开发方面有一定优势, 可应用在小型或低要求的自动化系统中。
(3) Eyewin在线监控系统与PEMP监控组态软件是国内近几年比较成熟且功能全面的组态系统软件, 其优势在于与厂商自己开发产品结合得好, 并且具有一套针对性很强的系统结构, 开发周期短、效率高;缺点是图形图库系统一般, 可扩展性不强。
(4) DF3000监控组态软件和ISA300变电站监控后台系统分别是东方电子和南瑞电气的早期版本软件, 受当时技术水平限制, 与当今市场产品相比, 其图形画面支持不够、可扩展性不强、数据库系统陈旧, 尽管目前运行比较稳定, 但由于产品已经退出市场, 或被更高版本系统软件取代, 因此无法保障售后支持。
3 结束语
信息系统组态开发模式探讨 篇4
关键词:信息系统,组态,传统方法
0、序言
长期以来, 信息系统为企事业的管理发挥了重要作用, 采用计算机进行信息管理是目前企事业实现现代化管理的主要手段。本文以信息系统在教育领域的应用为例, 通过研究信息系统开发方法的现状和存在问题, 探讨了如何通过组态模式简便快捷、有效地实现个性化的信息系统建设。
1、信息系统开发方法现状及存在问题
信息系统开发是一项创建和修改现有业务规则流程的活动。它涉及该过程中从确定待解决的问题到设计、实现、评估和改善选定方案的所有方面。传统的信息系统开发方法有:生命周期法、原型法等。其开发流程通常为:先由用户向系统分析设计人员描述用户原型系统, 提出需求, 系统分析设计人员从中提取有关信息建立逻辑模型, 经过软件开发人员编码、调试生成最终的应用系统, 最后交由用户使用和评价。任何一次用户需求的更改, 都是上述过程的重复, 同时, 系统设计的投入费用也相当大。此外, 这种开发流程, 还存在以下问题:
(1) 用户很难真正参与到系统开发中去, 一旦软件编制人员对用户需求理解出现偏差, 系统的有效性必然受到影响, 而单靠用户很难去维护和修正它, 系统可维护性差。
(2) 用户应用系统完成后, 一旦用户需求发生变化, 系统便无法满足新的需求。系统可扩充性差, 系统进一步扩展功能和升级困难。
(3) 大多数应用系统都是针对特定需求展开分析、设计及实现, 系统适应性差。
(4) 成型产品无形中规定了管理者用户的管理模式, 使得管理者受到管理手段的约束, 难以形成个性化的管理风格。
因此, 为了减少系统开发成本、提高软件系统性能, 必须优化软件的开发过程, 通过建立和使用好的工程原则来获得经济可靠的软件工具, 努力摆脱大量软件设计、开发人员的重复劳动, 使信息系统开发面向动态变化的用户需求, 向自动化方向发展。
2、组态开发模式
2.1 组态开发模式的提出
一个良好的应用系统应具有较高的性能指标、较低的开发成本、较快的开发速度以及适应动态变化的用户原型。那么, 如何才能完成这样的信息系统开发, 使之完全实现用户对系统的需求和设想?基于组态软件在工业控制自动化领域已经得到很好的示例应用所启发[4], 我们考虑这样解决问题:为用户提供一种操作简便直观、面向用户和主题业务的信息系统组态工具软件, 使不熟悉软件开发过程却了解业务需求的管理者用户可以直接使用该工具进行信息系统的组态实现。这种信息系统组态工具软件要以组态的方式实现信息系统, 我们称之为"组态平台"或"组态软件";而这种基于组态平台实现信息系统的开发方式, 称之为组态开发模式。
2.2 组态开发过程
组态意义不同于设计和编程。组态平台不是最终的用户应用系统, 而是实现最终用户应用系统的开发工具。它在组态开发信息系统的过程中, 省却了系统设计和开发人员这些中间环节, 而代之以组态平台来实现他们的工作, 从而使应用系统的开发过程变为由用户向组态平台描述业务流程、提出自己的需求, 这些描述和需求被组态平台转化为内部逻辑, 再由组件平台根据内部逻辑直接生成面向特定用户需求的应用系统。组态平台通过优化开发流程, 使用户能够以尽量少的投入获得一个比较完善的、易维护的应用系统, 从而促进计算机在企事业现代化管理中的推广应用。
2.3 组态开发模式与传统开发方法的对比
如果我们将用户原始需求假定为用户原型, 将最终用户应用程序系统假定为应用系统, 则应用组态平台实现信息系统过程中的用户原型与应用系统的对应关系不同于传统信息系统开发方法中用户原型与应用系统的对应关系, 其对比如图1、图2所示:
从图中可以看出:采用传统信息系统开发方法所开发的应用系统经过对原型的一次抽象获得。相对于静态原型实体, 传统信息系统开发方法开发出来的应用系统还能较准确地反映原型实体。然而用户需求 (即原型实体) 是动态变化的, 相对于动态的原型实体, 按照传统信息系统开发方法开发出来的应用系统不一定反映真实的原型。组态平台开发信息系统则经过对原型的二次抽象, 最后通过组态平台还原原型, 组态生成用户应用系统。这种还原通过用户对组态生成的应用系统的使用、补充和修正原型, 再反映到应用系统中去, 形成一个螺旋上升的过程;同时, 组态开发过程要通过用户的实际参与亲自组态, 这也是它表面上类似原型法而本质上与其不同的原因。
3、组态平台体系结构及其实例应用
3.1 组态平台体系结构及其功能
组态平台的研制开发涉及到多方面的理论与技术, 具有一定开发难度, 尤其体现在软件的设计思想和实现的机制方面。组态平台的开发是在传统开发方式的基础上, 对同类应用系统进行分析、归类、抽象, 使其面向一类对象, 具有普遍应用性和适用性。
基于以上组态思想, 体系结构上遵循Windows DNA三层应用程序体系结构, 应用COM/DCOM/COM+组件技术, 笔者研制开发了适合于开发校园信息管理系统的信息系统组态开发工具。该组态平台面向管理者用户可动态生成用户信息系统。使用者不需要进行计算机编程就可以通过平台依据自身需求简便地配制出个性化的、B/S结构的信息系统;同时, 对已生成的系统可进行修改和二次组态开发, 以满足不断变化的管理变革, 适应动态变化的用户需求。其结构功能上有四部分组成, 如图3所示:
具体实现功能有:网页组态;处理逻辑层组态;用户数据库组态;邮箱配置组态;公告牌、聊天室配置组态;信息提示及定时数据库组态;事务流数据库组态;下载文件库组态;用户系统维护逻辑组态。
3.2 组态开发实例应用
下面以校园信息管理系统的实现为例来描述组态平台实现信息系统的实际组态过程。
1) 系统规划及需求分析阶段:本阶段需要明确以下内容:确定校园信息系统的总体目标;确定校园信息系统的层次结构和各个管理子系统;分析资源需求;安排时间进度。
2) 组态生成系统阶段:根据第一阶段的需求分析, 首先应用组态工具实现应用系统数据库定义和用户页面组态, 然后将组态页面编译生成ASP或PHP格式的网页, 最后将编译后的网页上传到指定的Web服务器上, 供具有浏览器的客户机访问和操作, 从而生成B/S结构的用户应用系统。
3) 系统整体调试阶段:通过系统测试发现的问题可以通过组态平台的系统维护模块, 按照平台所提供的向导功能, 对系统进行修改。
4) 整理竣工文档阶段:本阶段将已设计完成的系统, 以书面形式整理成文档, 同时对组态实现的系统做备份, 以备今后的系统修改及升级。
由上述过程可以看出, 采用组态平台来开发用户应用系统, 比采用传统方法开发减少了很多中间环节, 目标的准确性大大提高, 开发周期大为缩短。在开发的四个阶段中, 第一阶段的好坏将直接影响整个过程的成败。但由于组态平台的使用, 对于系统规划的准确性的要求将有所降低。信息系统本身就是对事物规律的抽象, 当我们没有见到其完整面目时, 很难对其进行准确的定义, 许多信息系统开发的失败, 无不与此相关。组态平台所具有的方便维护升级改造的功能, 就能很好地解决这样的问题, 它的机制允许用户从简到繁, 从容易到复杂, 逐步完善所开发的系统, 并可不断地添加新的功能, 以适应新的需求, 从而延长信息系统的生命周期。
目前, 应用该组态平台生成个性化、B/S结构的信息管理系统已在多所中小学校园网中得到实际应用, 反馈良好。
4、结束语
通过实际应用和意见反馈, 可以看出组态模式开发信息系统更贴近动态用户原型及信息系统开发的实际过程。
目前, 以组态模式开发信息系统技术还不够成熟, 同时, 网络化、分布式系统也将成为组态软件发展的一个重要方向, 丰富软件接口功能以便为数据后处理和分析提供支持也是未来组态软件的必然趋势。
参考文献
[1]. (美) Ralph M.Stair、George W.Reynolds著;张靖、蒋传海译.信息系统原理 (第一版) [M]北京:机械工业出版社, 2000.1, 1-5 405-411
[2]. (美) Roger S.Pressman著;黄柏素、梅宏译.软件工程实践者的研究方法 (第一版) [M]北京:机械工业出版社, 1999.10, 1-35
[3].倪旻工业控制组态软件的产品对比及发展趋势测控技术2000 9 (19) :38-40
光伏阵列组态优化控制策略分析 篇5
太阳能作为一种新能源,与传统的能源相比具有储量丰富、分布广泛、清洁环保等优点,因此,它的研究与应用越来越受当今社会的重视[1]。
在很多应用场合,如大型光伏电站、一体化光伏建筑、阳光屋顶等,由于云层、树木、建筑物、甚至相邻光伏模组间的遮挡,都会产生阴影,从而使光伏阵列接受的太阳辐射强度不均匀,导致光伏阵列的最大输出功率大大降低。此外,太阳能电池板的光电转换效率较低[2],因此,充分利用太阳能电池板转换的能量显得尤为重要。
近年来,国内外学者针对阴影对光伏阵列的影响开展了深入的研究,提出了在阴影条件下要提高整个光伏系统的输出功率,可通过以下方式:
(1)加旁路二极管和防逆流二极管
为避免局部阴影条件下太阳能电池元出现热斑效应,通常将光伏模组中几个电池元作为一组,两端并联旁路二极管。为防止某串阵列出现遮挡或故障时,消耗能量和影响其他阵列的正常工作,一般都会在一串阵列中串联防逆流二极管[3]。
(2)最大功率点跟踪
局部阴影条件下,由于旁路二极管和防逆流二极管的加入,功率-电压曲线呈现多个峰值,传统的基于均匀光照强度下功率-电压单峰值曲线的最大功率跟踪算法失效。为提高光伏系统的输出功率,必须采用避免陷入局部峰值的最大功率跟踪算法[4]。此外,Robert H.Wills等人提出了交流光伏模块的概念。所谓交流光伏模块是指将每个光伏模组与DC-AC逆变器集成在一起,实现每个光伏模组的最大功率点跟踪的独立控制,但所需的DC-AC逆变器的数量较多,等于光伏阵列中模组的数量[5]。
(3)光伏阵列的组态优化
传统光伏阵列的组态方式是固定的,而不同阴影分布对光伏阵列最大输出功率影响很大,而且不同的串并联结构导致最佳阴影分布也呈现不同的特点[6]。因此,对光伏阵列进行组态优化,实时优化光伏阵列的结构,可以从根本上改变光伏阵列的输出特性,使由于阴影导致的光伏模组之间不匹配减到最小,提高光伏阵列输出功率的全局峰值。
在实际光伏系统中,光伏模组已并联旁路二极管,光伏阵列的每一串已串联防逆流二极管,整个光伏阵列已进行最大功率跟踪控制。因此,基于最大功率跟踪算法的光伏阵列组态优化控制策略集合了以上三种方法的优点,它将极大地提高局部阴影条件下光伏阵列的最大输出功率,因此具有巨大的应用前景。
本文首先通过仿真分析了局部阴影对光伏阵列最大输出功率的影响,并对现有的各种光伏阵列组态优化控制策略结合光伏阵列的结构图和开关矩阵结构图对其控制原理进行了详细分析,并总结了各种控制策略的异同和优缺点,最后提出了在光伏阵列组态优化中应注意的问题,为光伏阵列组态优化控制策略的进一步研究与应用提供参考。
1 局部阴影对光伏阵列输出特性的影响
通过光生伏特效应,单体太阳能电池产生的电压约有0.45 V,因此在实际应用中,一般将单体太阳能电池串联,组成光伏模组。为满足不同等级的输出功率,通常将光伏模组串并联连接,组成光伏阵列[2]。下面将详细分析局部阴影对单个光伏模组及阵列的影响。
1.1 局部阴影对单个光伏模组的影响
为研究局部阴影对单个光伏模组的影响,本文采用光伏系统设计软件PVsystem仿真一块太阳能电池板在局部阴影条件下,输出最大功率的变化。选用的太阳能电池板型号是KC175GT,它包含48个电池元。设被同一旁路二极管保护的电池元组成一个子模组,P表示一个子模组中被阴影遮挡的电池的数目,Q表示一个光伏模组中旁路二极管的数目,S为遮挡率,S=1-G/G0,其中G为阴影中的电池接受的光强,G0=1000 W/m2。当P=1,Q=2时,光伏模组的示意图如图1所示。
设定的仿真参数如下,旁路二极管的数目Q=2,3,4,6;在Q一定的情况下,一个子模组中被阴影遮挡的电池的数目P=1,3,6,9,12,16,20,24,在Q和P一定的情况下遮挡率S=6%,10%,15%,20%,25%,30%,35%,40%,45%,50%,60%,70%,80%,90%,对上述情况分别仿真,并记录单个光伏模组产生的最大功率。选取两组代表性的数据如表1和表2所示。
比较表1表2在不同情况下的最大输出功率可得:
(1)光伏模组中旁路二级管的个数一定,被同一旁路二级管保护的太阳能电池在阴影中的数量不同,最大输出功率在遮挡率较大时相同。这是因为在遮挡率较大时,并联在该子模组两端的旁路二极管导通,将该子模组短路,但该子模组不影响其他子模组。
(2)若一个子模组在阴影中太阳能电池的数量相同,该光伏模组的旁路二极管的个数越多,在遮挡率较高时,输出的最大功率越大;在遮挡率较低时,最大输出功率相同。这是因为在遮挡率较高时,即使有一个电池被遮挡,旁路二极管也会将它保护的所有电池全部短路,故旁路二极管越多,光伏模组输出最大功率越大;而在遮挡率较低时,旁路二级管并没有导通,故输出最大功率相同。
旁路二极管的理想数目是,一个太阳能电池并联一个旁路二极管,但由于成本和工艺的限制这种情况不可能实现。文献[7]证明,当光伏模组中旁路二极管的数目增加到一定程度后,再增加数目,对模组的输出能力提高不大,由72个太阳能电池组成的光伏模组并联3到9个旁路二极管成效最好。
1.2 局部阴影对光伏阵列的影响
局部阴影使光伏阵列输出最大功率下降的原因是由于光伏模组之间的直接串联连接,流过未被遮挡的光伏模组的电流受被遮挡的光伏模组产生的小电流的限制。
设模组1和模组2接受的光强分别为1000 W/m2和600 W/m2,两个模组的温度都为45℃。标准测试条件下,光伏模组输出的功率为60 W。用Matlab软件分别画出两个模组单独工作和串联工作时的伏安特性和功率电压特性曲线[8,9],如图2所示。
由图2(a)可知,当两个模组单独工作时,模组1的最大输出功率为P1max=55.22 W,最大功率点处的电压U1max=15.53 V,最大功率点处的电流为I1max=3.556 A;相应的模组2的P2max=32.699 W,U2max=15.28 V,I2max=2.14 A。由图2(b),当两个模组串联工作时,最大输出功率为Pmax=72.01 W,最大功率点处的电压Umax=32.454 V,最大功率点处的电流为Imax=2.22 A。显然,Pmax
2 光伏阵列的组态优化控制策略
由上述分析可知,局部阴影降低了光伏阵列的最大输出功率。光伏阵列组态优化的目的是减少局部阴影对光伏阵列输出最大功率的影响。
2.1 光伏阵列的组态方式
光伏阵列是由光伏模组的串并联连接组成的,在满足系统工作电压、电流的前提下,光伏阵列的组态方式可以有很多种。若光伏阵列由4个光伏模组构成,其排列形式有1×4、4×1和2×2。对相同的排列形式,因其内部连接方式不同,又有不同的阵列组态。如对于2×2的排列形式有图3所示的阵列组态。
研究表明,太多模组直接串联会降低光伏系统的转换效率,而提高直接并联模组的数量能提高光伏系统的转换效率,但是太多模组直接并联,当阴影情况变化时,光伏系统的转换效率的稳定性差[10]。
2.2 基于电池元局部补偿思想的控制策略
局部阴影条件下,为使光伏阵列中串联连接的电池元(或模组)流过的电流免受被阴影遮挡的电池元(或模组)产生的小电流的限制,提高最大输出功率,文献[11-13]提出的组态优化控制算法的思想是:固定部分被阴影遮挡的某一行产生的小电流,可通过可调整部分受光照较好的电池元并联到该行来提高,从而减小了阴影的影响,提高整个阵列的最大输出功率。
文献[11]提出两种控制方法,一种是“冒泡排序”法,另一种是基于模型的控制方法。这两种方法在相同阴影情况下,最终提高的输出功率是一样的。
光伏阵列的结构如图4所示。光伏阵列分为两部分,固定部分和可调整部分,固定部分太阳能电池元的数量为m·n,其结构是TCT(Total Cross Total),每一行并联的n个电池元可以看做一个子模组。可调整部分有m个电池元,等于固定部分的行数,该部分的电池元可以并联到固定部分的任一行。
开关矩阵的结构如图5所示,S(i,j)代表将可调整部分的第j行电池元并联连接到固定部分的第i行的开关。因此,开关矩阵的每一列只能有一个开关闭合。光伏阵列的初始组态是开关S(i,i)导通,i=1,2,…,m,即将可调整部分的第i行并联连接到固定部分的每i行。
“冒泡排序”的控制策略:
(1)组态优化开始的条件
不断检测第一行的输出电压U1和整个阵列的输出电压Uout。在均匀光照条件下有Uout=m·U1;在局部阴影条件下,可能出现两种遮挡情况,第一行被遮挡或其他行被遮挡,故有U1<ΔU或Uout-(m·U1)<ΔU,ΔU表示对阴影的容忍度。在这两种情况下,光伏阵列开始组态优化,将所有的开关S(i,j)断开。
(2)测量可调整部分每一行的开路电压并按降序排列,重新编号使Uoc A1>Uoc A2>…>Uoc Am。
(3)测量固定部分每一行的电压,并将其按升序排列,重新编号使U1
(4)将可调整部分具有最大开路电压的电池元并联接到固定部分具有最小电压的一行。重复步骤(3)、步骤(4),直到可调整部分的所有电池元都被并联到固定部分。
(5)持续检测U1和Uout,当阴影改变方向或形状,满足(1)中的两种情况之一,光伏阵列开始组态优化。
基于模型的控制策略中所谓的“模型”是光生电流的模型,它是通过开关矩阵断开时实时测量的温度、固定部分每一行的电压、可调整部分每一行的开路电压和光伏阵列的输出电流等参数得到的[14]。基于模型的控制策略与“冒泡排序”的控制策略基本相同,只是将基于电压的排序和比较转化为对光生电流的排序和比较,因此模型的精度将直接影响控制效果的优劣。由于可调整部分是并联连接到固定部分的某行,并联后电流可相加得到,并与其他行做比较,不必重复步骤(3),因此,第二种方法能使所有开关调节一次完成,而第一种方法一次只能调节一个开关。通过实际实验证明后者较前者的控制速度快。
文献[12-13]在文献[11]的基础上提出基于太阳能电池元的遮挡率,运用模糊控制来实现阵列组态优化。文献[12]通过实验证明组态优化后,光伏阵列的输出电压仍小于未被遮挡时的输出电压,是因为阴影中的电池没有被剔除,仍吸收功率。文献[12]认为当有阴影发生时,理想的组态优化方法是改变整个阵列的结构,先将阴影中的电池从阵列中去除,以避免功率损失,然后再补偿阵列。本文认为局部阴影中的电池虽然比未被遮挡的电池产生的功率小,但也产生功率,通过调整阵列结构,可使其功率得到利用,若剔除,则造成功率浪费。
在组态优化过程中,由于固定部分的存在,光伏阵列可提供相对稳定的电压电流来满足与之相连的逆变装备的正常工作;所需的电压和电流传感器的总数为2m+1,开关数目为2m2,光伏阵列只需一个集中式的最大功率跟踪器。文献[11]中选用的开关器件为SO8封装的电子开关,文献[12-13]选用的是继电器。文献[11-13]提出的组态优化控制策略是基于太阳能电池的,避免了旁路二极管的使用,而实际应用中的绝大多数光伏阵列是由光伏模组构成,因此可以考虑将该算法扩展到光伏模组水平。
2.3 基于全部重组思想的控制策略
全部重组控制策略的目的是把受阴影影响的光伏模组重新分布在阵列中,减小因串并联连接产生的电压电流限制,从而提高光伏阵列的最大输出功率。
文献[15]提出用光强均衡算法控制开关矩阵,所谓光强均衡算法是指,使串联连接的子模组流过的电流相同,即每个子模组的平均光强相等,该文献中的子模组由光伏模组并联连接组成。
为满足逆变器输入电压电流范围的要求,减少开关的数量,文献[11,15]相同,将光伏阵列分为固定部分和可调整部分,组态优化只针对可调整部分,如图6所示。与文献[11]不同的是:(1)阵列的组态优化是基于光伏模组而不是基于电池元;(2)在阵列组态优化的过程中,可调整部分的结构是一定的,即2行3列,连接方式是TCT;(3)全部调整的控制策略只针对可调整部分,使该部分的每一个模组可以出现在任一行、任一列。
基于光强均衡算法的控制策略。
(1)离线计算所有模组的有效组合,即光伏阵列的有效组态。
(2)在线计算每个模组的光强、每行模组光强的平均值和每种组态的光强均衡指数。所谓光强均衡指数是指,每种组态的各行模组光强平均值的最大值与最小值之差。选择光强均衡指数最小的组态[16]。
(3)计算所需移动的模组的数目。由于光强均衡指数最小的组态可能不只一种,故需要选出由当前组态到这些组态所需移动模组数量最少的组态,作为阵列的最优组态。
(4)组态优化控制策略的执行,包括三级决策:(1)如果阵列的最优组态和初始组态相同,则无需优化。(2)检测阵列中是否有失效模组。(3)在一段固定时间内,反复进行第(2)、第(3)步,检测选择的最优组态是否稳定,如果稳定,则调整阵列的组态。
为叙述简洁,(1)~(4)中的模组均指可调整部分的模组。
文献[15]的控制算法中选用的开关类型为单稳态电磁继电器,所需开关的数量是2m·n-2,电压和电流传感器的总数为(m+1)·n,比文献[11]中的多。
文献[17]提出每个光伏模组都装有一个集成电路,通过该集成电路可对组成光伏模组中的每个电池独立寻址和调整工作状态(工作或被短路)。这个集成电路还可以和其他模组上的集成电路通信,根据系统的需要调节光伏模组位置,实现光伏阵列的组态优化。此外,该文献还提出了备用光伏模组的思想,在光伏阵列开始工作时,为避免产生过多的能量,备用模组不需加入光伏阵列,当光伏阵列老化时,为达到输出的功率和电压,此时将备用模组加入光伏阵列。
文献[18]提出一种太阳能电池阵列组态,在这种阵列组态中,两个电池之间不是单一的串联或并联,因此,这种阵列的输出功率比传统的串并联连接的光伏阵列的输出功率对单个电池产生的低电压或低电流敏感度低。
文献[17]中,组成光伏模组的太阳能电池的工作状态是可以根据检测到的电压和电流选择的,如果电池被遮挡,可以将其旁路,即每个电池都是可调整的。但这种方法所用的开关、检测器件和附加电路较多,成本相应较高,对m·n的电池的阵列,开关数量为2m到3m,电压电流传感器的总数为m·n[11]。此外,文献[17-18]只提出了构建阵列组态思想,并没有形成系统的组态优化控制算法。
2.4 基于分段调整的控制策略
相同数量的光伏模组并联连接提供大电流小电压,串并联连接提供中等的电流电压,串联连接提供低电流大电压。分段调整控制策略是根据实际需要在这三种组态中切换。
文献[19-20]针对独立光伏系统,利用光伏阵列分别驱动汽车和永磁直流电机(与容积式水泵耦合)。电流与电机转矩有关,电压与电机转速有关。根据电机实际工作状况(起动、匀速、加速)和外部环境(光强的低中高)的需要,通过控制电路控制开关矩阵,在如图7所示的三种阵列组态中选择。
文献[19]中,光伏阵列的组态切换是模糊控制器根据汽车的运动状态自动配置的:当汽车起动时,所需转矩较高,并联组态提供的转矩最高;当汽车需要高速时,需要高电压而不需要高转矩,选串联组态;当汽车正常行驶时,适中的电压电流即可,选串并联组态。该控制策略所需的电压电流传感器的总数为6。
电机起动时所需的转矩较高,为使电机产生足够的起动电流,尤其在光强较小或适中时,文献[20]提出的控制策略如下:
(1)运用硬件逻辑电路检测光强的低中高,具体是通过一片参考太阳能电池,将它产生的电流转换成电压信号,送入高电压和低电压比较器。
(2)当检测到的光强低于设定的低光强值时,将绝缘栅双极晶体管T4,T5,T6,T7,T8,T9导通,使4个单元并联;当光强高于设定的高光强值时,将T1,T2,T3导通,使4个单元串联;当光强适中时,将T1,T3,T4,T5导通,使4个单元串并联。假设有n个模组,所需开关的数量为3(n-1),开关矩阵的结构如图8所示。
文献[19-20]中所用的开关和检测器件的数目较少,控制方法简单,但由于只有三种阵列组态可以选择,控制效果不够精细。
2.5 基于模型预测控制的控制策略
模型预测控制包括预测模型、反馈校正和滚动优化三大部分内容[21]。文献[22-23]提出了一种基于模型预测控制的组态优化控制策略,该策略通过实际例子给出了东南西三个方向安装的光伏模组进行交叉重新组态的步骤。光伏阵列的初始状态是:各个方向上的光伏模组串联组成三个子阵列,三个子阵列并联组成光伏阵列。文献[22-23]控制算法的前提是假设每个方向上的模组接受的光强和温度一致,不同方向的光强和温度可能不一致;控制目标是使调整后各个方向上的子阵列最大功率输出电压一致,从而使每个子阵列都在最大功率点输出。
文献[23]在文献[22]基础上提出的控制策略是:
(1)根据检测到的光强和电池板的温度,得出每个方向上子阵列输出最大功率时的电压值,若东、西方向上的电压值相差超过1.5倍则重新组态,反之保持原态。
(2)结合模型预测控制进行光伏阵列的交叉重新组态。
文献[22-23]提出的控制策略是针对特定方阵下的控制算法。文献[23]选用的开关器件为继电器,所需要的检测器件为太阳辐射强度计和温度传感器。由于实验中光伏阵列规模较小,所需要的开关和传感器数量较少。
3 结论
本文对现有的各种光伏阵列组态优化控制策略的原理进行了详细分析,并总结了各种控制策略的异同和优缺点,在此基础上提出了在光伏阵列的组态优化控制策略中应注意的几个问题:
(1)在阵列组态优化过程中要考虑整个控制系统的成本,如开关器件和传感器的类型、数量;(2)开关器件可选择继电器或电力电子开关,根据开关器件流过的电流和所需的电压、功率等级,确定开关器件的型号;(3)保证控制算法的快速性、准确性和稳定性,尤其是对快速变化的阴影,像多云天气,为延长开关矩阵的寿命,要避免开关矩阵的频繁调整;(4)在开关矩阵调整过程中,要满足与光伏阵列连接的逆变装置对其输出电压电流的要求,以保证其正常工作;(5)在同一种阴影情况下,最优阵列组态可能不只一种,考虑到开关损耗等因素,最好移动较少的光伏模组,来实现最大功率输出;(6)由于阴影发生的随机性,整个光伏阵列的组态优化系统在白天都要处于工作状态,不断检测相关参数来判断是否进行组态优化,因此组态优化系统的损耗不可忽略。综上所述,光伏阵列的组态优化控制策略要在控制成本和提高的最大输出功率间折衷选择。
摘要:局部阴影条件下,光伏阵列的最大输出功率将大大减小。为克服阴影的影响,根据光伏阵列工作状况的变化,实时优化光伏阵列的连接结构,即光伏阵列组态优化,将极大提高阵列的最大输出功率。在仿真分析了局部阴影对光伏阵列最大输出功率影响的基础上,详细解析了现有的各种组态优化控制策略,从阵列初始组态、控制算法、所需开关器件和传感器的类型和数量等方面分析比较了各种控制策略的异同和优缺点,并提出了在光伏阵列组态优化过程中应注意的问题。
HMI项目组态及下载应用 篇6
1 简介
我公司是台资建成的专门生产各种冷轧、热轧不锈钢卷, 炼钢、热轧、冷轧一贯作业。冷轧厂配备了4条连续冷轧线、2条钢卷裁切线和1条钢卷准备线。其中钢卷准备线 (CPL) 主要负责对上制程钢卷的边裂部分进行裁边、导带焊接, 为下制程的连续延轧做准备。
CPL的裁边系统担负着对钢卷裁边的重任, 由两边各有一对伺服驱动的调节间隙及重叠量的圆形刀盘和刀口前安装有一套CPC纠偏系统组成, 而调节间隙及重叠量的参数则由西门子公司生产的HMI面板OP277输入给PLC, 再由PLC运算处理后将指令传给伺服控制器去驱动伺服马达调节刀盘的间隙及重叠量。其通讯如下图:
2 利用Win CC flexible组态项目
Win CC flexible组态软件采用模块化设计, 用于组态控制设备和系统的用户界面。在项目中, 最多可以组态8个HMI设备。其组态步骤如下:
(1) 选择设备画面的型号版本, 新建一个项目。
(2) 组态画面。在项目视图的画面树下添加画面, 利用工具窗口中的对象在工作区的画面组态被控制设备的过程画面, 用于显示设备的变化过程。用户还可以通过对象视图和属性视图对画面进行编辑。
(3) 添加变量。在项目视图通讯树下的变量中添加用于运行时在PLC和HMI设备之间传送的数据, 完成后通过被控制设备过程画面的属性视图设置相关属性的变量 (即设备画面与变量建立连接) , 最后在连接中建立HMI与PLC等其它伙伴站建立通讯连接。
(4) 建立报警和记录。在项目中还可以建立报警和记录用于显示运行状态及保存过程值。在项目视图的报警管理树和历史数据树下分别建立设备运行过程中产生的报警和记录。
完成以上的项目组态后, 对项目进行保存、编译。
3 通过PC的Ethernet接口将项目下载到HMI设备
项目保存并通过编译后, 利用网线通过PC的Ethernet接口将项目下载到HMI设备。
通讯设置:
(1) 对HMI设备的通讯设置分两步:第一步, 首先通过OP277背后的四个DIP开关选择通讯接口, 通电进入HMI画面后点击“S7-Transfer Settings”图标设置HMI与PLC的通讯方式和通讯地址, HMI的通讯方式和通讯地址应与组态项目的项目视图通讯树下连接中参数区域的通讯方式和地址设置一致。第二步, 对上一步设置完后返回到“File View”画面, 点击“Network”图标设置PC与HMI进行项目传送的地址。
(2) 在Win CC flexible中的设备传送地址设置窗口中设置下载项目到HMI的模式和IP地址, 设置的模式和地址必须与HMI中“Network”设置的一致。
完成以上设置后在HMI的“File View”画面中点击“Transfer”以及Win CC flexible中的设备传送地址设置窗口中的“传送”按钮, 即可将项目下载到HMI设备中。
4 结束语
如今市场上的HMI产品品牌众多, 类型琳琅满目。不同牌子、不同型号产品具体的组态软件及组态方式也不尽相同, 但HMI总的画面组态原理以及通讯方式大体相同, 我们只要能熟练掌握其中一种HMI产品, 就能为学习其他牌子的HMI打下基础, 对不同HMI产品的了解和运用亦能起到触类旁通的作用。
参考文献
[1]廖常初.S7-300/400 PLC应用技术第2版.机械工业出版社.
[2]WinCC手册SIEMENS.
监控组态软件关键技术研究 篇7
监控组态软件设计与开发是一项十分复杂的工程任务,涉及到面向对象技术、图形技术、数据库访问技术、网络通信技术、组件技术、多线程技术等相关理论与技术。
2 面向对象技术
当前,许多设计监控组态软件的开发者采用了面向对象编程(Object Oriented Programming)技术,通过对监控组态软件的各功能模块的分析、抽象,提炼出具体的操作行为及属性,构建出基本类库,当需要时,可以从基本类库中派生出新类并实例化,从而可以方便地在通用的开发平台上建立有自己独特功能的监控组态软件。这种导出式的开发方式具有较高的软件重用性,避免了软件模块的重复开发,是一种比较成熟的方法。
面向对象的程序设计的本质是把数据和处理数据的过程当成一个整体,即对象。面向对象程序设计的实现需要封装和数据隐藏技术,需要继承和多态技术。所谓封装和数据隐藏指的是控制对象数据访问的特定规则。将数据和操作这些数据的代码包装成一个对象,而将数据和操作细节隐藏起来,这一过程叫做封装。封装的基本思想是:如果增加某些限制,使得对数据的访问可按照统一的方式进行,那就比较容易产生更为强壮的代码。继承机制指建立子类或派生类的能力,使面向对象软件很容易适应不同的应用而不用修改其原始设计。在重用原始设计的同时,增加新的功能或遗弃不必要的功能。多态性通过继承的方法构造类,采用多态性为每个类指定表现行为。继承性和多态性的组合,可以轻易地生成一系列虽类似但独一无一的对象。由于继承性,这些对象共享许多相似的特征。但由于多态性,一个对象可以有独特的表现方式,而对另一个对象有另一种表现形式。
3 图形技术
监控系统需要在远离现场的控制室对系统的各状态进行监控,逼真地反映现场的真实运行状态和设备的运行状态,这就要求监控组态软件具有良好的图形监控画面,丰富强大的图形组态功能,从而能够达到再现现场实况,为管理人员提供简单方便的操作的效果。监控组态软件具有友好的人机界面和强大的组态能力,其人机界面不再是单一的文字,而是文字和图形的综合处理,除了具有菜单式的操作方法外,一般都采用图形化、仪表化的操作界面,提供趋势图、报警等常用过程控制中的监控乎段。充分利用图形技术,可将界面设计的非常友好,方便操作人员使用。
4 数据库访问技术
监控系统的处理过程其实就是数据采集、数据传递和数据处理的过程,其中对于数据的处理难免要用到数据库。监控系统由于其应用场合的特殊性,它的数据处理与一般的商业软件有着明显的区别,前者需要处理最多的是实时更新现场数据,即处理一些实时的不断变化的数据,数据与时间因素紧密相关;而后者这种实时的因素相对较弱,主要是处理一些静态的数据。在监控系统中涉及到两种数据库:实时数据库和历史数据库。
数据库是组态软件的重要组成部分,其它组件模块经常要对数据库进行读写、创建、删除等操作。比如历史控件需要查询、读取历史数据,硬件I/O模块需要将从外围设备中取得的数据定时写入数据库中等。因此数据库访问技术是组态软件开发中经常要设计的一项技术之一。微软提供了一个通用解决方案———OLE DB,它是一组COM(Component Object Model,组件对象模型)接口的集合,提供了统一的方法以访问存储在不同信息源中的数据。但是,由于OLEDB API是为了给尽可能多的不同应用提供最佳功能而设计的,因此不符合使用简便这一要求。所以,我们需要一个介于OLE DB和实际应用之间的桥梁,而ADO正是这座桥梁。
ADO是为Microsoft最新和最强大的数据访问接口OLE DB而设计的,是一个便于使用的应用程序层。OLE DB为任何数据源都提供了高性能的访问,这些数据源包括关系和非关系数据库、电了邮件、文件系统、文本和图形以及自定义业务对象等。ADO在关键的Internet方案中使用最少的网络流量,并且在前端和数据源之间使用最少的层数,所有这些都是为了提供高性能的接口。同时ADO使用了与DAO相似的约定和特性,使得它更易于学习。
5 网络通信技术
网络程序的实现可以有多种方式,Windows Socket就是其中一种比较简单的实现方法。Socket是连接应用程序与网络驱动程序的桥梁,Socket在应用程序中创建,通过绑定操作与驱动程序建立关系。此后,应用程序送给Socket的数据,由Socket交给驱动程序向网络上发送出去。计算机从网络上收到与该Socket绑定的IP地址和端口号相关的数据后,由驱动程序交给Socket,应用程序便可以从该Socket中提取接收到的数据。网络应用程序就是这样通过Socket进行数据的发送和接收的。
在TCP/IP网络应用中,通信的两个进程间相互作用的主要模式是客户机/服务器模式(client/server),即客户向服务器提出请求,服务器接收到请求后,提供响应的服务。监控组态软件在建立客户机/服务器模式时主要基于以下两点:首先,建立网络的起因是网络中软硬件资源、运算能力和信息不均等,需要共享,从而造就拥有众多资源的主机提供服务,资源较少的客户请求服务这一非对等作用。其次,网间进程通信完全是异步的,相互通信的进程间既不存在父子关系,又不共享内存缓冲区。
6 组件技术
组件是一种可重复调用的软件块,它把维护及操作某一类信息的程序集中在一起独立成块。应用系统通过预先定义好的界面来调用执行组件。组件可以简单如一个类,也可以复杂如完整的应用服务处理。组件与调用它的应用环境一起构成容器系统,它提供了一种执行服务器组件的运行环境。常用的组态软件控件为ActiveX控件。
ActiveX是Microsoft的一个术语,是基于组件对象模型(COM-Component Object Model)的一种技术,是一组包括控件、Dll和ActiveX文档的组件,它通常是以动态链接库的形式存在,因此必须在一个叫容器的独立执行软件中运行。ActiveX技术的核心是ActiveX控件。事实上,ActiveX控件是OLE控件的一个新的称呼。以前所创建的OLE控件自然而然地成为ActiveX控件,并且可以在ActiveX应用程序中使用。原有的OLE控件的最大问题是过于笨重。这主要因为它们面向桌面应用,实现了完整的OLE控件标准接口集。而ActiveX控件,主要是在Internet环境下应用,所以必须做到尽可能的小。ActiveX控件的一个特点是能够自动下载。支持ActiveX控件的浏览器如果发现正在浏览的页面中用到某个ActiveX控件是它所没有的,便会自动从服务器端下载ActiveX控件并安装它。ActiveX控件的数据输入和函数功能的执行都必须通过容器,因此ActiveX控件和容器都必须支持一些特定的接口协议。
目前使用的大多数监控组态软件都提供了使用ActiveX控件的能力。程序员可以利用自己熟悉的开发语言来开发ActiveX控件,任何能通过编程来完成的任务都可写成一个或多个ActiveX控件。用户不仅可以自己创建ActiveX控件,也可以直接使用第三方程序开发者提供的ActiveX控件例如微软的MSCOMM控件,用户利用它可以轻松完成利用串口通讯的程序;又如Tide Stone公司的Formulate0ne控件可以完成各种较为复杂的报表。控件的使用大大增强了组态软件的灵活性。
7 多线程技术
多线程技术也是组态软件中普遍使用的技术之一。为了实现程序的实时性、并发性,防止因为单个线程而阻塞整个程序运行,画面线程和操作线程往往需要分开。另外,为了提高CPU执行效率,也常常使用多线程技术,比如监控组态软件中的硬件读写模块为每一个I/O设备开辟一个线程,以加快程序执行速度以及网络通信过程中为每个客户端请求开辟一个响应线程。虽然线程确实非常有用,但使用线程时可能产生新的问题。比如线程间的通信和同步问题,这也是我们在使用多线程时最需要注意的问题。线程需要在下面两种情况下互相进行通信:
第一,当有多个线程访问共享资源而不使用资源被破坏时。
第二,当一个线程需要将某个任务已经完成的情况通知另外一个或多个线程时。
Windows提供了许多方法,可以非常容易地实现线程的同步。这些方法包括:临界区、信号量、互斥体、事件对象等。
参考文献
[1]王亚民,陈青,刘畅生,等.组态软件设计与开发[M].陕西:西安电子科技大学出版社,2003.
[2]马国华.监控组态软件及其应用[M].北京:清华大学出版社,2001.