基于LonWorks现场总线智能控制器的设计

基于LonWorks现场总线智能控制器的设计

ID:36793039

大小:2.67 MB

页数:71页

时间:2019-05-15

上传者:U-145848
基于LonWorks现场总线智能控制器的设计_第1页
基于LonWorks现场总线智能控制器的设计_第2页
基于LonWorks现场总线智能控制器的设计_第3页
基于LonWorks现场总线智能控制器的设计_第4页
基于LonWorks现场总线智能控制器的设计_第5页
资源描述:

《基于LonWorks现场总线智能控制器的设计》由会员上传分享,免费在线阅读,更多相关内容在学术论文-天天文库

上海大学硕士学位论文基于LonWorks现场总线智能控制器的设计姓名:楚萍申请学位级别:硕士专业:检测技术与自动化装置指导教师:赵维琴20030101 上海大学硕士学位论文摘要现场总线技术的兴起,改变了控制系统的结构,使其向网络化、智能化和分散化的方向发展,成为控制领域的热点技术。本文在简要阐述基于现场总线技术的分布式控制系统的结构及其特征之后,设计了基于LonWorks总线的现场节点控制器,对神经网络控制技术运用在现场总线控制系统中的方法和技术进行了探讨,具体分析了神经网络前馈反馈智能控制算法在LonWorks现场总线控制系统中的实现方法,从而设计了一种基于Lon总线的智能控制器。该控制器既可以实施基于LonWorks节点的现场级控制,又可以完成上位机神经网络算法的高级控制。本文最后利用组态软件ForceControl(力控)实现整个系统的监控功能。研究结果表明,本文设计的智能控制器方案具有成本低、控制灵活、参数修改方便、易于扩展等特点,具有一定的工业应用前景。关键词:现场总线控制系统动态数据交换智能节点神经网络控制 上海大学硕士学位论文AbstractWiththedevelopmentoffieldbustechnology,thestructureofcontrolsystemisalteredandbecomesintelligentanddistributedFieldbustechnologybecomesverypopularinindustrialfield.ThispaperbrieflyintroducesthesmcmreandlbahlresoffieldbuscontrolsystemanddesignsasmartnodeofcontrollerbasedonLonWorkstechnology.Furthermorehowtoapplyneuralnetworkscontroltechniqueintofieldbusisdescribedindetail.ThispaperanalysesprincipleofneuralnetworksforwardbackwardintelligentcontrolstrategyanditsimplementationmethodsinLonWorksfieldbuscontrolsystem.ApracticalintelligentcontrollerbasedonLonWorksfleldbustechnologyisestablished.ThecontrollercanaccomplishnotonlythebasiccontrolfunctionsbutalsoneuralnetworksintelligentcontrolatPCpoint.Intheend,theauthorusesForceControltOmonitorthewholesystem.Theresultsofexperimentdemonstratetheintelligentcontrollerproposedinthispaperhasmanyadvantages,suchaslowcost,flexiblecontrol,easytoadjustparameters,goodexpandingabilityandwillbewellappliedinindustrialautomation.KeyWords:FieldbuscontrolsystemDynamicDataExchangeSmartNodeNeuronNetworksContr01II 上海大学硕士学位论文致谢本论文是在尊敬的导师赵维琴副教授的悉心指导下完成的,从论文开题、撰写到最后定稿,我都聆听到赵老师的谆谆教诲。赵老师严谨的治学态度、高度的责任感、诲人不倦的工作作风和朴实无华的人品给我留下了极为深刻的印象。两年多来,赵老师在生活上也给予我极大的关怀和帮助。值此论文完成之际,我谨向尊敬的赵老师致以最衷心的感谢和崇高的敬意。特别要感谢郎文鹏教授,郎老师在我研究生课程学习和毕业课题设计期间给予了我很大的帮助和指导,谨向他致以最挚诚的谢意。还要感谢马利民老师、黄慎之老师在我学习期间给予帮助。最后感谢王玉涛同学,两年多的共同学习生活使我收益匪浅。 上海大学硕士学位论文第一章绪论1.1工业过程控制系统的进展1.1.1控制系统的发展过程及现场总线技术的产生“““随着社会工业化的发展,人们对生产过程自动化程度的要求不断提高,促进了现代控制技术的飞速发展。~般来讲,过程自动化是指在石油、化工、冶金以及热力发电等工业生产中连续的或按一定周期进行的生产过程的自动化控制。它主要包含两方面的内容,其一是测量,即及时准确地了解工业过程的现状;二是控制,即使工业过程按照人们要求的状态运行,当出现偏差时需要及时的校正。第一代过程控制体系结构(直动式或PCS),产生于五十年代。由于当时的生产规模较小,检测控制仪表尚处于发展的初级阶段,所采用的仅仅是安装在生产设备现场,只具备简单测控功能的基地式气动仪表,其信号基于(3~15)PSI的气动信号标准,各测控点只能成为封闭状态,无法与外界进行信息沟通。但随着生产规模的不断扩大,操作人员需要综合掌握多点的运彳亍参数与信息,需要同时按多点的信息实行操作控制,于是出现了气动、电动系列的单元组合式仪表,采用模拟控制技术和经典控制理论,实现生产过程的集中检测与控制,即第二代控制体系结构(模拟式或ACS)。其生产现场各处的参数通过统一的模拟信号,如0.02~O.1Mpa的气压信号,0~lOmA、4~20mA的直流电流信号,l~5V的直流电压信号等,送往集中控制室。操作人员可以在控制室纵观生产流程各处的状况,可以把各单元仪表的信号按需要组合成为复杂的控制系统。第二代过程控制体系结构是后来几代过程控制体系结构的主要基础。由于模拟信号的传递需要~对一的物理连接,信号变化相对缓慢,提高计算速度与精度的开销、难度都较大,而且信号传输的抗干扰能力也较差,于是人们开始寻求用数字信号取代模拟信号。随着数字计算机的产生与发展,它已开始逐步应用于工业自动化领域,由此又出现了集中控制系统,即第三代过程控制体系结构(集中式或CCS)。计算机集中控制系统的主要特点是将多个控制回路和多个控制变量的显示、操作和控制全部集中在一台计算机上完成。与常规仪表控制控制系统相比,其优越性在于:系统结构简单、清晰:控制功能齐全、可用于复杂第】页 上海大学硕士学位论文的过程控制;信息高度集中,易于实现系统的最优控制;可以用软件对控制回路和控制方案进行组态。但是,集中计算机控制系统也存在着~些缺点:由于集中式控制系统需要庞大而复杂的软件体系,使得系统软件可靠性下降:系统的可扩展性差:由于将所有的功能和处理信息都集中在一台计算机上,一旦出现问题,将对整个系统造成严重后果。鉴于集中式控制系统存在的种种问题以及微处理器、计算机应用的不断深入,人们一直在寻求进一步的解决方案。到了七十年代中期,以Honeywell公司向市场推出第一代集散控制系统TDC2000开始,标志着第四代过程控制体系结构(DCS),即分布式控制系统的产生o3。分布式控制系统是相对于集中式控制系统而言的一种新型计算机控制系统,两者在系统功能的实现方法上有很大的区别。集中式控制系统只需要一台计算机以及有关的i/o设备、键盘、打印机等外部设备即可完成系统功能,而分布式控制系统则一般要由四部分组成,即系统网络、现场I/O控制站、操作员站、和工程师站,而且各个工作站都是由独立的计算机构成,它们分别完成数据采集、控制、监视、报警和系统组态等功能。分布式控制系统的结构图如图I.1所示:图I1分布式控制系统结构分布式控制系统在系统的处理能力和系统安全性方面明显的优于集中式控制系统,由于分布式控制系统使用多台计算机分担了控制的功能和范围。使处理能力大大提高,并将危险性分散。在系统扩展方面,比集中式控制系统更具有无第2页 上海大学硕士学位论文可比拟的优越性,系统规模的扩充被简化为网络节点的增加,只要根据需要增加节点,并修改相应的组态,即可实现系统的扩展。近几十年来,分布式控制系统经历了几代的发展,其功能和性能都得到了巨大的提高,在工业自动化领域发挥了重要作用。尽管如此,分布式控制系统仍然存在如下一些问题“““:(1)对于通信网络中的控制站或输入输出单元,现场仪表与上位机的联络只有少部分是数字信号,大部分仍采用模拟传输。(2)仪表信号标准不同一,工作不兼容,给用户带来不便。(3)由于每个处理器都分配有一个特定的任务集合,在大多数情况下,系统网络的通讯需要由一个具有“网关”的专用网络来完成,而网关的大部分程序是由用户编写的,所以开发技术相当复杂。(4)由于受工业现场环境的制约以及被控生产现场对数据响应实时性的要求,被控现场的网络问题也一直是分布式控制系统长期以来所难以解决的。由此可以看出。分布式控制系统体系结构仍然有许多不尽如意的地方,比如,它的所谓分散控制并不是完全彻底的,所谓的数字化也只是半数字化而已等等。尽管这些年来,人们在分布式控制系统中做了大量使系统开放的努力,最终只能取得有限的改良效果,无法从根本上解决问题,因此迫切需要有更先进的控制系统来实现真正意义上的全数字化、全开放、互联以及高可靠性。现场总线正是在这样的历史背景下产生的,它作为工厂数字通信网络的基础,沟通了控制设备之间及其与更高控制管理层次之间的联系。现场总线技术的出现,标志着第五代过程控制体系结构(FCS)的形成,这项以智能传感技术、控制技术、计算机技术、数字通信技术等紧密结合的综合技术,已成为自动化技术发展的热点而倍受关注。1.1.2现场总线控制系统的特点“M现场总线控制系统,一方面突破了传统DCS系统采用厂商专用通信协议网络的局限性,采用了基于公开化、标准化的开放性通信协议网络。克服了以往专用系统的封闭性缺陷;另一方面,把DCS的集中与分散相结合的系统结构,变成了新型全分布式结构,把控制功能彻底下放到现场。现场总线控制系统(FCS)是一个实现电气传动控制、仪表控制和计算机控制的一体化的系统结构。FCS的结第3页 上海大学硕士学位论文构体系如图1.2所示,它通常由以下三部分组成:现场智能仪表、控制器;现场总线;监控计算机。图12FCS的体系结构FCS控制系统与传统的分布式控制系统(DCS)相比,具有以下特点‘73‘副:(1)互操作性好。操作性是指实现互连设备间、系统间的信息传递与沟通。具有现场总线接口的设备不仅在硬件上标准化,而且在接口软件上也标准化。(2)开放性好。现场总线为开放式互连网络,技术和标准全是公开的,用户可根据需要把遵循相同协议的不同品牌产品集成到一个系统,通过现场总线构筑自动化领域的开放互联系统。从根本上打破了DCS系统的封闭性,为企业实现信息化控制与管理创造了条件。(3)现场设备的智能化与功能自治性。它将传感测量、补偿计算、工程量处理与控制等功能分散到现场设备中完成,仅靠现场设备即可完成自动控制的基本功能,并可随时诊断设备的运行状态。(4)安装、维护、使用方便。正是由于FCS的互操作性和开放性好,使用现场总线接口技术,只需一根双绞线就可以替代蜘蛛网似的电缆线,将各控制设备挂在总线上,节省了大量的导线,同时也便于安装、维护和使用。(5)系统配置灵活、扩展性好。FCS组态方式采用功能模块:如I/O、PID控制等过程控制功能模块,因而设计简单、易于重构。(6)对现场环境的适应性。对设备级基础通信网络的要求,首先是具有协议简单、强容错、安全性好、成本低的特点,同时还应具备一定的时间确定性和实时性要求。作为工厂网络底层的现场总线,是专为现场环境工作而设计的,它可支持双绞线、同轴电缆、光缆、射频、红外线等多种通信介质,具有较强的抗干第4页 上海大学硕士学位论文扰能力,并可满足本质安全防爆要求。FCS的结构构造易于改变,而且原有系统的大部分组件都可被改变或重利用。在企业综合自动化的条件下,现场总线控制系统不再是单独分立的底层现场设备网络,而是企业信息网的测控子网,是整个网络数据信息流的起点,因此现场总线控制系统应具备完善的同上层信息网交换数据的接口,目前FCS一方面可通过网桥将现场总线测量控制设备互连成为通信网络,实现不同网段、不同现场设备之间的信息共享:同时又可通过以太网或光纤通信网将现场运行的各种信息传递到远离现场的控制室;FCS还可通过网关接到上层管理网上,把工业现场的各种参数与数据传到上层管理网络,为管理层提供第一手资料,从而实现企业管控一体化”。。总上所述,FCS的出现使传统的自动控制产生了革命性的变革,它改变了传统的信息交换方式和系统结构,改变了传统的自动化仪表功能的概念和结构形式,也改变了系统的设计和调试方法。目前我们面临的是一个崭新的工控新世界,正如1996年在美国举行的以现场总线技术为重点的ISA展览会上醒目标题所讲述的那样“您将站在控制领域新纪元的起点上,,‘8m1。1.2LonWorks现场总线技术简介1.2.1LonWorks技术的发展及其特点LonWorks总线是美国Echelon公司于1991年推出的一种局部操作网络,目前已被广泛应用于智能建筑、过程控制、汽车、商业、电子等领域,在欧洲、北美的安装点数已占现场总线总数的30%,被认为是目前使用最广泛的现场总线之一%Lon技术自诞生至今已有IO多年的历史,随着科学技术的发展,它本身也在不断地改进更新,如新一代Neuron芯片的时钟频率己从10MHz升至20MHz,以及正在大力开发基于RISC技术(精简指令集计算机)的具有100M时钟、32位的微处理器。同时,为了扩大LonTalk协议的应用范围,Echelon公司早在1997年就宣布,开发商可以将LonTalk协议固化到任何~种微处理器中,这就为LonWorks技术打开了新的发展空间““。第5页 上海大学硕士学位论文LonWorks总线自身的一些技术优势‘8m“:(j)完整的ISO/OSI网络协议。Lon网络的通信协议LonTalk符合国际标准化组织(ISO)定义的开放系统互联(OSI)模型,提供了OSI参考模型所定义的全部七层协议,也是现今为止全部支持7层协议标准的唯一的一种现场总线,技术和标准是全开放的、公开的、面向按照LonMark规范设计的产品制造商和用户。(2)通信的设计采用了面向对象的设计方法。Lon技术将其称为“网络变量”,使得复杂的网络通信编程变成了简单的网络变量捆绑。不仅减少了设计的工作量,还增加了通信的可靠性。(3)LonWorks技术核心元件一Neuron芯片,采用了3CPU结构,并固化有LonTalk通信协议,Neuron芯片同时具备控制和通信的功能。(4)控制网络拓展性强。每一个测控网络的节点数最多可达32385个,是目前为止支持节点数最多的总线标准。(5)支持多种通信介质,如电力线、双绞线、同轴电缆、光纤等。通信速率最高可达1.25Nops(通信距离为130m);对于通信速率为78Kbps的双绞线,直接通信距离可达2700m.(6)改善了的eSMA(载波侦听多路访闻),采用带预测P~坚持CSMA协议,在网络负载很重时。不会导致整个网络的瘫痪,提高了系统的稳定性。(7)提供功能强大的技术开发平台:LonBuiider、NodeBuilder、LonMaker以及LNS等。LonWorks软件丰富,可编程性能好,并配有功能强大的开发系统,能大大缩短研制和开发周期。除此之外,为了和互联网Internet及其它网络系统交换信息,Echelon公司正在开发基于Lon技术高性能、低成本的网络接口产品以及利用微处理器接口程序MIP(MicroprocessorInterfaceProgram)软件开发各种低成本的网关,使用Java语言编程、可进行远程查询和控制,由于这些性价比很高的网关已经被很多公司开发完成,使得LonWorks技术下的多种网络之间的互连变得非常容易,这就使LonWorks技术又插上了远航的翅膀“。。1.2.2LonWorks技术的主要组成‘9第6页 上海大学硕士学位论文LonWorks技术是一个实现控制闷络系统的完整平台。这些网络包括智能设备或节点,智能设备或节点与它们所处的环境进行交互作用,以及通过不同的通信介质与其他节点进行通信。LonWorks技术包含所有设计、配置和维护网络所需要的技术,主要包括以下几个方面的内容:1.NeuronChip神经元专用芯片神经元芯片是LonWorks技术的核心器件,它是由Echelon公司研制的一种集通信、控制、调度和i/o支持为一体的超大规模集成电路VLSI器件。它内含3个8位的流水线CPU。在片内存储单元中固化了7层通信协议中的6层,只有第7层需用户编写。它有11个可编程I/O引脚,可设置为34种预编程工作方式;并有5个通信引脚可组成3种通信模式:有2个16位定时器/计数器;一个48位编码的内部标识符NeuronID,用于唯一识别神经元芯片;一个用于远程标识和诊断的Service引脚。2.LonTalk协议LonTalk是LonWorks技术的通信协议标准,与其它现场总线技术不同的是它提供了Is0/OSI七层协议所有内容的服务,并采用一种基于载波侦听多路访问/介质访问控制(csm/MAc)的新型通信模式,称为带预测的P-PersistentCSMA算法。Lonl’alk协议支持多种传输介质,如双绞线,电力线,超声波、光纤、无线射频和红外线等。每一种介质称为一种信道,每一种信道都有专用的收发器作为智能节点和通信介质之间的接口器件,不同信道之间使用路由器(Router)进行连接。LonTalk协议支持分散的PeertoPeer的通信,节点可以组成总线型、环型、树型等多种拓扑网络结构,特别值得一提的是还可以组成自由拓扑结构,它是各种常规拓扑结构的组合。3.专用开发语言NeuronC⋯m31NeuronC是一种专为Neuron芯片设计的程序设计语言,它在标准C的基础上进行了自然扩展,直接支持Neuron芯片的固化软件,删除了标准c中一些不需要的功能(如某些标准的C函数库),并为分布式LonWorks环境提供了特定的对象集合及访问这些对象的内部函数,还提供了内部类型检查,是一个开发【-onWorks应用的有力工具。NeuronC的一些功能如下““:第7页 上海大学硕士学位论文(1)一个新的对象类——网络变量(NetworkVariable)简化了节点间的数据通信和数据共享。(2)一个新的语句类型——when语句,引入事件(events),并定义这些事件的当前时间顺序。(3)I/O操作的显式控制,通过对i/o对象(object)的说明,使neuron芯片的多功能i/0得以标准化。(4)支持显示报文,用于直接访问基础的LonTalk协议服务。4.LonWorks收发器Longorks收发器是标准的成品,它简化了LonWorks节点的开发,提供了良好的互操作性,减少了项目的开发时间以及开发成本。收发器在Neuron芯片和Lon网之问提供了一个物理量交换的接口,它适用于各种通信媒介和拓扑结构。目前收发器主要类型有:双绞线收发器、电力线收发器和无线射频收发器等。5.LonBuilder和NodeBuilder开发工具LonBuilder和NodeBuilder是开发LonWorks网络系统和节点的工作平台,它是硬件和软件开发工具的集合。LonBuilder是系统级的开发工具,它提供了一个用Pc进行操作的开发环境,可支持单个仿真应用节点,也可支持由24个仿真节点和上百个远程节点组成的复杂的分散式网络系统。其硬件包括Pc适配卡,LonBuilder处理器板等。LonBuilder应用编程软件提供了编辑、编译、调试和测试NeuronC软件所需的一切工具,包括NeuronC编译器和Neuronc调试器等,此外还包括网络管理工具和启动工作包。NodeBuilder则是装置级的开发工具,它可用来编程和调试单个节点,它的硬件和软件相对简单一些“““”。1.2.3LonWorks控制网络的体系结构及特点mm”(1)Lon网络的系统结构工业过程控制系统逐渐由DCS向FCS方向发展,现场控制系统的典型特征是分散化、智能化、网络化,是一种分散式智能化控制网络系统。基于LonWorks网络的分布式控制系统的体系结构图如图1.3所示:第8页 上海大学硕士学位论文Pc计算机络传感器交送器执行机构智能控制器质图13Lon网络控制结构图基于LonWorks的分散智能控制网络在纵向上是两级功能结构,分为现场控制级功能和上位管理协调级功能。现场控制级的核心即为分布于设备现场的一个个智能节点,主要用于接受和处理来自传感器的输入数据、执行通信和控制任务以及控制执行器操作等。在现场智能节点的基础上,通过DDE服务器建立上层的监控应用,实现系统的监控、管理、维护以及与其它计算机系统之间的信息交互。(2)Lon控制网络的特点LonWorks智能节点和LonTalk通信协议是Lon控制网络运行的基础,前者支持分散化、智能化的特点,后者满足了现场智能节点之间无拥塞、快速安全的通信要求。Lon控制网络在层次结构、系统功能特征的实现策略上,它都体现出了一些新的特点㈨~㈨:1)层次结构复杂的控制过程应该建立在合适的“分解”与“协调”策略的基础上,在层次上体现出纵向“递阶”的特点。传统的DCS系统大部分的高级控制策略和智能手段需要在主机上生成和实现,对主机的性能要求很高。现场总线控制网络则强调控制和智能的全分散化,各个现场设备是具有自治功能的智能主体,相互之间高内聚松耦合,某些局部协调通过形成现场虚拟单元可自治完成,而上层的主机可进行大范围的协调和高级控制功能。2)系统特征基于LonWorks的分散式智能控制系统在实现现场级控制功能时,需首先确定整个系统的完整控制策略,然后分解到各个相互独立的模块和子任务上,确定每个节点所完成的任务以及它们之间的数据共享关系,并对每个第9页 上海大学硕士学位论文节点编写应用程序,并下载到节点的Flashmemory中,调试运行。建立在LonWorks智能节点上的控制网络是一种分散自治的系统,每一节点内部具有实现某特定功能的软件程序,各个智能节点控制的输入输出、内部参数、状态特征值等都以网络变量的形式进行传输。上位机基于现场的控制信息通过人机界面(珈I)软件(如vB、vc或组态软件)和智能软件(如专家系统、神经网络等)完成系统的高级监控功能。1.3本文研究的内容及意义现场总线技术的兴起和智能控制策略的广泛应用,为解决工业控制领域的一些问题开辟了一条新的途径。本课题正是将现场总线技术和神经网络智能控制结合起来,开发了基于LonWorks现场总线的智能控制器,它既可以实施基于Lon智能节点的现场级控制,又可以完成上位机神经网络算法的高级控制。现场级控制是由基于Len总线PID控制器智能节点来实现。节点的开发是基于Neuron芯片的智能节点,该节点在功能上大致可分为:自诊断模块、数据采集模块、控制量输出模块、键盘显示模块、PID控制模块等;上使机设计的控制器是将BP网络作为前馈控制与常规的PID控制相结合,两者共同作用,能实现互相补充,互为修正,即可利用反馈控制器保证系统稳定,又可利用神经网络控制加快控制速度。本文针对该控制方案进行了大量的仿真,实验结果表明,与单独采用传统的PID控制相比较,该控制方案不仅具有较强的稳定性和鲁棒性,而且能有效提高系统的精度和自适应能力。上位(PC)机除了实现神经网络控制,另一方面完成整个系统的监控功能,系统监控功能是采用ForceControl(力控)工业组态软件结合LNSDDEServer(服务器驱动程序)来实现,现场级的各种数据通过网络适配卡(PCLTA—lOPCLonTalk)一方面送到监控中心进行显示,另一方面为实现神经网络高级控制算法提供信息⋯。⋯1。在执行高级控制时,神经网络结构参数和学习参数的调整可以通过改变程序中的相关变量,以适应对不同被控对象进行控制;而现场PID控制参数的设定和修改可直接在键盘或上位机监控界面中进行;被控对象的实时趋势、历史趋势、历史报表等都可以在监控界面中实时显示。由此可见,本文提出的基于Lon总线智能控制器的设计方案,控制器参数修改方便、系统配置灵活、易于扩展,第l0页 上海大学硕士学位论文该控制器具有一定的通用性,在工业过程控制中具有一定的应用前景。第l1页 上海大学硕士学位论文第二章基于Lon总线控制器节点设计2.1现场控制器节点功能介绍随着现场总线智能设备通用性的提高和成本的降低,简单的控制任务迁移到现场节点的微处理器中,节点本身可以完成一些开关量控制、PID控制等,从而实现现场就地控制。本文开发的现场控制器节点运用了功能强大的Neuron芯片,它集控制、通信功能于一体。该节点除了完成信号采集、数字滤波、标度变换、数据显示、PID控制以及控制量输出等基本控制功能,同时将采集到的现场信息以网络变量形式传送到监控计算机,为上层的高级控制和监控系统提供多个信息。利用Neuron芯片的通信接口通过收发器可方便地将现场控制器节点挂接到LonWorks现场总线,以便于和Lon网络上的其它节点进行互相通信。2.2控制器节点硬件设计2.2.1控制器节点的硬件结构控制器节点构成原理框图如图2.1所示,图中虚线框内的各部分组成现场控制器节点。控制器节点的工作过程如下:来自传感器的模拟信号经放大处理后,由A/D转换成相应的数字量,并完成数字滤波和PID控制等功能,把运算得到的控制量,再经D/A转换送给现场的执行机构。另外该节点还配置了多路开关量输入通道和键盘显示接口芯片。系统的有关参数可以通过键盘进行设置,当系统的状态参数超出规定的上下限时,则发出报警信息。第l2页 上海大学硕士学位论文图21控制器节点系统框图2.2.2节点硬件电路设计2.2.2.1基于Lon控制模块的节点电路设计konWorks网络Lon网络智能节点的设计一般分为两类““:一类是利用神经元芯片完成所有的工作(包括通信和用户应用程序),这类节点称为基于神经元芯片的节点;另一类是利用NeuronChip完成通信工作,而用户的应用程序由其它的处理器来完成(微处理器、Pc机等),这种节点称为基于主机的节点;前者结构简单、成本低。本文开发的是基于NeuronChip的节点。采用Echelon公司生产的控制模块‘m/F’l。lo,控制模块结构图如图2.2,控制模块内含3150神经元芯片,带有32kbFlashMemoryAT29C256存储器用于存储应用程序和通信固件,采用变压器耦合收发器FT,f—lo,用双绞线作为网络传输介质。该模块还带有IOMHz晶振,一个18针的与用户外围信号调理电路连接的插头,一个6针的与通信用的非屏蔽双绞线连接的插头,并需要5V直流电源。用该控割模块作为主处理器自行设计一些外围信号调理接口电路,来实现智能节点所要完成的功能,这样就大大简化r硬件电路的设计开发工作。第13页 上海大学硕士学位论文网网L——————JF鬲i磊丽lNeuron|l双绞线收发器lJ!;竺竺堡兰季卜一3150芯片H戗F纵TT级-忧IOA及”Jll。———T——一。一I/00..I/010l图2.2TP/FT—lO控制模块结构图2.2.2.2输入、输出通道设计本节点输入、输出电路设计中,主要完成8路模拟量(4-20mh.DC)输入、8路开关量输入、l路模拟量输出(O—fiv.DC)。由于控制系统中各种仪表或变送器信号的地电位不尽相同,有时相差很大,如果节点的输入输出通道间不采取隔离措旖,则会引起地线回路,轻则是测量误差增大,重则会导致系统不能正常工作甚至烧坏昂贵的控制模块。为了解决这一问题,我们在输入、输出电路中均采用光电耦合器进行电气隔离,隔离电路采用TLP521-4。输入/输出电路如图2.3所不。第14页 上海大学硕士学位论文占图2.3输入/输出电路图(1)模拟输入电路A/D芯片选择美国MAXIM公司生产的MAXl86,它内含8通道多路切换开关,高带宽跟踪/保持器、12位逐次逼近式A/D转换器、自带4.096V的参考基准电压源,具有硬件关断和两种软件关断模式。它本身即为一套完整的单片12位数据采集系统.可高速串行输出转换后的数据,芯片具有4条串行接F3线,与主机电路之间实现光耦隔离方便,硬件电路简单““。在MAXIS6与Neuron芯片的接口设计中,由于Neuron芯片的Neurowire1,/0对象,是一一个全双工的SPI同步串行接口,而MAXl86这种12b、多通道、全双工的串行A/D集成芯片正好与其兼容,在108管脚输出的时钟信号作刚F,由109和1010两个管脚间步将A,,I)通道信息地址移出和把剥应通道的变换数据输入的功能。住将NeuruwjrE,1,r0对象配黉:为—扛模式(MtsLet)州,、euFun芯¨的100一l【J?管脚中的任何一个可用于MAXt86的片选信号。现场4-20mA测量信号经过200Q精密电阻变为0.8~4V电压信号,进入MAXl86的输入通道,Neuron芯片的【00用于对MAXt86的片选,[08提供时钟信号输出,109用于串行数据输⋯.1010用第【5负 上海大学硕士学位论文于串行数据输入。在设计A/D转换电路时,根据需要还可加上低通滤波器和电压跟随器,如果电路的环节比较多,电路调试通过以后,还要进行标定,进一步提高输入的精确度。(2)模拟输出电路芯片选用12位串行数模转换器TLC5615,带有3线制串行总线接口”“,与Neuron芯片的Neurowirei/o对象相兼容;内部带有缓冲基准输入10位电压输出数字/模拟转换器(DAC);一个16位移位寄存器;输出的最大电压为基准电压的2倍。在接口电路中,TLC5615芯片的cs端接Neuron芯片的I/01口,CLK接108口,DIN接IOlO口,OUT端为模拟电压输出端.(3)数字输入部分通过8选一数据选择器?4LSl5I,扩展成8路开关量输入通道。在具体设计中,将Neuron芯片的I/02~I/04作为8路输入通道的地址选通信号,与74L8151的地址输入端(A、B、C管脚)相连,I/05接数据输入z端,读取脉冲E端接地。在设计数字量输入电路时,要考虑开关量输入信号的“消抖”问题。机械触点在闭合和断开瞬间都会有5~iOns的抖动,消抖的方法之一是使扫描开关量输入的周期大于抖动时间:另外一种方法是扫描到开关量变化后延时lO~20ms,然后再次读取开关状态,以便确定开关状态是否真的发生变化。2.2.2.3键盘、显示电路设计在许多微型计算机系统和仪器仪表设备中,其中必不可少的部分是键盘和显示接口电路,目前,最常用的接口芯片是Intel8279键盘显示控制芯片,或者利用Intel8255、Intel8155并行i/o口扩展键盘和显示,然而利用上述芯片时,必须增加其它的硬件开销共同完成,且占用并行接口口线较多。本文在研制LonWorks现场智能节点系统设计中,为了节省i/o口线,使用一片串行接口芯片HD7279A可扩展挂接8位LED数码管及64按键附加一些限流或拉高电阻,不需扩充有源器件,使得这部分电路得到较大简化。HD7279A的引脚管脚说明如图2.4所示。相对常用的Intel8279芯片来讲,HD7279A具有以下特点。“:①串行接口无需外围元件可直接驱动LED②各位独立控制译码/不译码及消隐和闪烁属性③(循环)左移/(循环)右移指令④具有段寻址指令,方便控制独立LED第16页 上海大学硕士学位论文⑤64键键盘控制器,内含去抖动电路图2.4HD7279A引脚图说明HD7279的控制指令分为两大类:纯指令和带数据指令。指令表如图2.5所示:指夸格式指令名称J说明Dt&隗D{眈D2DJ氏阱DBmD|m仇DID0lO1o1所有字符消引纯清除(复位)指测试I01i1J全都点亮并闪烁令移位l01o0dIdod;.do决定移位方式。戡方式0译码1O0a2B『鼬DFX出d:dIdo批.a,,8。位地址.以8码方式译码o带以方式l译码l1Ola2aI出DFX出d2dldoa2,az,a。位地址,咀16进制译码③数据不译珥10lOa2al出DfABCD£Fea2,at,a。位地址,以A—F.DP为数码管段指地址令段控制1】a0O0Xd5d‘d:d2出doa为段点亮/关闭控制.d3一do为段地址读键盘0】010l由山dsd{d,d2dldo出一d。为返回的接键代码图2.5HD7279A指令表纯指令宽度为8Bit,带数据指令为16Bit,这种指令又分为两种,~种要求为处理器发送L6个CLK脉冲;另一种要求为处理器发送前8位读键盘指令,后8位为ttD7279A返回的键盘代码。f[D7279A和Neuron芯片的接口电路如图2.6所示。第17页 上海大学硕士学位论文图2.6键盘、显示接口电路Neuron芯片的106作为HD7279A的片选CS,108、109、107连接CLK、DATA、Key,串行数据从DATA引脚送入芯片,并与CLK端同步,当片选信号变低时,DATA引脚上的数据在CLK引脚的上升沿被写入HD7279A的缓冲寄存器,HD7279A外接6个LED数码管显示器和6个键,由电路结构决定K。、K:、I(a、K、l(5、I(6键的键值分别为:07H、15H、23H、3it{、39H、47H,每个键的功能如下表所示KlK2K3kl(5K6设置置数确认运行复位显示·其中设置键(K。)配合置数键(K。)、确认键(‰)可完成采样周期设定、参数上下限设置。·运行键fK。)以当前设置参数进入运行,而确认键则将接受目前设置参数并送入参数存放存储区。·复位键隔)使系统退出命令状态,等待输入新的命令。·显示键(K。)主要完成输入数据的显示。6位LED显示器,其中第一位数码管显示器显示输入数据的项目,最后一位用来显示输入数据的单位,中间4位显示输入的4位数据。比如:显示温度值第l8页 上海大学硕士学位论文lTI2l3.13I3ICl2.2.2.4通信电路设计通信电路的核心一收发器是实现智能节点与LonWorks网络之间的通信接口。在基于Neuron芯片节点设计中,由于Neuron芯片自身拥有一多功能的通信端口,它有五个引脚可以配置与多种传输媒介接口(网络收发器)相连接。通信电路接口图如图2.7所示,本文采用FTT—10自由拓扑收发器,它支持没有极性、自由拓扑的互连方式,可方便现场网络布线。在传统控制系统中,一般采用总线拓扑,节点收发器包含一个线路接收和发送控制,通过带屏蔽的双绞线互连在一起;根据EIA—RS一485标准,所有设备必须通过双绞线,采用总线方式互连在一起,防止线路反射和可靠通信。FTT一10收发器很好地解决了这一限制。用双绞线作为网络传输介质,来实现智能节点与LonWorks网络之间的通信。1一‰INe%一^上上¨Resett土CP4{丰llDataB:Net·-一Bl二i:LonWoCPITxd一CPORxd一ClkPCLK2Gnd图2.7通信电路图2.3控制器节点软件设计2.3.1控制器软件功能介绍s网络控制器节点软件设计均采用NeuronC语言编程实现,它包括一个内部多任务调度程序,任务调度采用事件驱动方式。NeuronC与标准C语言不同,它放弃了以Main0函数作为应用程序入口的标准方法,而是代之以由when语句和函数组成的NeuronC程序的可执行对象。应用程序的执行总是从~个when语句开始,调度程序足以循环的方式检测以队列的形式登录的一个个when语句,当when()第19页 上海大学硕士学位论文的条件变为真(‘true)时,与该条件相关联的一段代码称为任务(task)被执行,如果为假(False),调度程序将继续检查后面的when语句,检查完最后一个when语句,程序将从头重新开始。其中when语句可以通过设置优先级的方式(Prioritywhen0)改变事件的执行顺序,优先执行某个重要的事件。用Neuronc语言进行软件设计一般分为下面几步:①定义I/O对象不使用i/o对象的智能节点是很少的,因此大多数节点都需要定义i/o对象。定义何种I/O对象与硬件设计有关,在定义i/0对象时,还可设置I/O对象的工作参数以及对i/o对象进行初始化。②定义定时器对象并不是所有应用程序都须要定义定时器对象。一般定时器对象多用于那些周期性执行某种操作的情况,或者须要延时的情况。在~个应用程序中,最多可以定义15个定时器对象(包括秒定时器和毫秒定时器)。③定义网络变量和显式报文网络变量和显式报文是节点和节点之间交换信息的重要工具,是在LonWorks网络上传输的数据包。如果没有网络变量和显式报文,节点就是一个孤立的节点,系统也就不能称为分布式控制网络了。如果要考虑系统的开放性,就不能使用显式报文,因为它是与应用有关的。如果不存在开放性问题,即系统是封闭的,使用显式报文可以提高网络的数据传输能力,改善系统的性能。④定义任务任务就是对事件的反应,即当事件发生时,应用程序应执行何种操作。任务既可以是对I/O对象的反应,也可以是对网络变曩和显式报文的反应,还可以是对用户自定义的某种情况的反应。任务是NeuronC实现事件驱动的途径。⑤完成用户自定义的其它函数用户可以在NeuronC程序中编写自定义的函数,以完成一些经常要用的功能。和ANSIC不同,NeuronC必须要写函数原型。也可以将一些常用的函数放到头文件中,以供程序调用。本文控制器节点软件设计是采用模块化设计方法,它能够增强程序的可读性。节点应用程序功能模块处理流程如图2.8所示。应用程序主要包括以下功能模块:初始化模块(复位(REsET)事件)、数据采集模块、数字滤波、超限报警、PID控制模块、标度转换模块、自诊断模块、键盘、显示模块以及输出处理等模块。其中采集模块和显示模块都具有通用性,例如,使用采集模块时,只需提供第20页 上海大学硕士学位论文通道号即可,而对于显示模块,只需提供所要显示的数据,所以它们适用于任何其它需要模拟量采集和显示的控制系统中。图2.8控制器节点一个控制周期应用程序滤程框图上电复位后,应用程序首先进入系统初始化模块,通过外部信号或内部控制下产生的低电平使Neuron芯片的复位管脚(RESET)低电平有效,来完成系统的初始化任务,即完成栈、指针、片外RAM、秒定时器、i/o管脚和通信端口初始化等。接着程序执行自诊断模块,检查设备硬件电路(输入通道、主机、输出通道、显示器等)运行是否正常,自诊断模块还要检测设备各软件模块的功能是否符合预定的要求。若诊断结果正常,程序便进入看门狗的刷新处理模块、判断运行方式并执行相应的任务调度事件。看门狗(Watchdog)即程序运行监视系统,看门狗必须定时刷新,当程序进入死循环、“弹飞”等不正常状态时,如看门狗不能在规定的时间内进行刷新,它将对系统进行复位操作,使程序重新执行。由于Neuron第2l页 上海大学硕士学位论文芯片内部带有三个看门狗定时器,通常情况下,调度程序会保证看门狗定时器的定期复位,但如果程序有一个很长的任务,看门狗定时器就有可能溢出,使节点复位。因此该节点程序设计中,对于一个执行较长的任务,要定期地调用Watchdog—update0函数刷新看门狗定时器。2.3.2各功能模块设计本文设计的控制器节点应用程序的整个任务调度过程如图2.9所示,下面分别介绍如何采用事件驱动方式来完成各个功能模块设计。图2.9应用程序的任务调度过程1)数据采集模块设计用软件方式控制~次数据采集(即A/D变换)的操作步骤可归纳为:①设置第22页 上海大学硕士学位论文控制字(命名为KZ。);②使MAXl86的cs变低;③发送Kz。并接收一个需忽略的字节(命名为ML1);④发送全零字节,同时接收1个有用字节(命名为ML:);⑤发送全零字节,同时接收另1个有用字节(命名为ML,);⑥将MAXl86的cs拉高。上述过程得到有用的字节ML:、ML,是A/D交换的结果。在单极性输入方式,得到的是标准的二进制数;对于双极性输入方式,得到的是模2补码。两者所表示的数据均以最高有效位在前的格式输出。由于在Mk、ML,两个字节所表示的二进制数据格式中,包含有1个前导零和3个后导零,因此实际变换结果为:ADV=ML:×32+ML,÷8下面是实现数据巡回采集操作方法的NeuronC程序://I/O对象及变量定义:#defineA/)ddrOxd200rletworkoutputunsignedintADV;//定义输出网络变量mtimerrepeatingtrarsample=500;un$ignedshottC(8】_(0,4,1,5,2,6,3,7):10—8neurowii6flla$terselect(10一O)MAXl86;IO一0outputbitMAXl86一CS=I:when(timer—expires(tmrsample))//定义NeurowireI/0对象工作在主拉方式,100作为R选信号}}定叉为位输赦对氧//当定时问隔5OOms到时,驱动该事件处理程序urlsignedintadc—info;unsignedintADH;ullsignedintADL;tillsignedintADS:tillsignedinti:unsignedin£{P:P=(Ul-isignedi12t+)(hDddr):for(i;O;i<8;i++)/,依次对8个通道进行数据采集第23页 上海大学硕士学位论文//数据采集部分ADS=O:adc—t10—0,lO—O】+8)+16+14;一CS.O):,&adc—info,8)adc—info=Ox00;io—out(MAXl86,&ade—int'o,8)ADH=adc—info;adc—info=Ox00;i0一OUt(№X186.&adc+info,8)hDL=adc—info;ADV=ADH*32+ADL/8;ADS=ADS+ADV:ADS=ADS/8;+P=ADS;)/,设置A/D变换控制字Kz//发送控制字Kz、,忽略第一个字节ML//接受第二个字节Mk//接受第三个字节札,//对本次采集数据进行换算J2)PID控制模块-为r适府不同工:业实际情况的需要,在PIO控制模块中加入了多种PID算法j‘。如在⋯般的PID控制中.当给定值或扰动大幅度变化时,位置式中计算的控制变量可能已超出执行机构的限度,偏差长时间保持较大的数值,使积分作用不断积累产生积分饱和现象,消除积分饱和可采用积分分离措施;另外,在⋯些数字控制系统中,设定值常常由键盘按数字方式直接给定,因而引起急剧变化,刘系统造成冲击,采用微分先行的控制算法可以改善设定值改变时系统的动态特性,并且对系统的静态特性不产生影响;我们知道,单纯的PID调节对纯滞后控制对象难F得到满意的控制效果,采用史密斯(Smith)预估器是一种补偿的好办法;另外还有非线性PID调节算法、采样PI控制算法等。PID控制程序框图如图2.10示。第24弛沁㈨。m吡 上海大学硕士学位论文图2.10PID程序流程框图在工程实际问题中,考虑到PID控制器的实用性,采取了自动/手动之间无扰动切换措施。在正常运行时,系统处于自动状态,丽在调试或出现故障时,系统处于手动状态。在手动状态下,尽管不进行PID计算,但要使手动给定值(sp)跟踪被控量(pv),同时也要把历史数据e(k-t)清零,还要使u(k-1)跟踪手动控制量。~旦切向自动状态,保证了PID控制量的连续性:而在自动状态下,手动值需跟踪每次计算出的控制量。下面以增量式PID算法为例简述本节点的PID算法,被控参数的设定值、比第25页 上海大学硕士学位论文例放大系数、积分、微分时间常数等参数均以网络变量的形式进行传送。程序流程图如图2.1l所示:初始化设定PID参数I事件触发|!获取采样值c(k)计算偏差e(k)=r(k)一C(k)PID控制量输出△u为图211PID控制流程图计算zke(k)=e(k)一e(k一1)计算控制量Au(k)=KP△e(k)+Kie(k)I(d[Ae(k)一△e(k-1)]为下—周艿日作准备e(k-1)—————一e(k-2、e哝)一e(k-1)△e(k)一△e(1(_1)返回=KD·Ae(k)+Kl·e(k)+Kd*【Ae(k)一△e(k-1)】PID算法程序:13.0tworkii"1tputunsignedintK。networkinputunsignedintK.networkinpu£thisignedintKd//£。、Kl、Ka分别为PID比例、积分、微分系数UfiSignedintPID(tinsignedIntc,tillsignedintr,)//r为给定值,c为采样值{UnSignedintU,P.,Pa,P。,UI,Erl,Er2,Er3;//其中Er.表示e(k),Er2表示Erf0;e(k一1),Er,表示e(k一2),第26页 上海大学硕士学位论文Er3-OU【眷O:u为输出控制量。u。为前一时刻输出控制量ErI=r—c:P.=K.*Erl:P。=K。·(Brl一Er2);Pa=Kd+(Erl—2+Er2+Er3):U=p;+Pd+P。+Ul;Er2=Erl:8rj=Er2:Ul=U:feturrlU:)3)键处理功能模块键处理程序设计主要包括HD7279A的初始化、Neuron芯片的I/o口对象定义以及键处理程序设计。键处理程序流程图如图2.12。首先判断是否有键按下,即key引脚是否变为低电平,然后根据按下键的键码值转入相应的键处理程序(k。~k。),完成各个键所对应的功能。第27页 上海大学硕士学位论文程序清单如下://I/O对象及变量定义10—6outputbit7279一cs2I10—8outputbit7279一clk;10—7irtgutbit7279.key;图2.12键处理程序流程图IO一9outpUtbit7279一dat—out10—9inputbic7279一dat—out#ctefineuintunsigrtedtnt#defineucharunsignedchar第28页 上海大学硕士学位论文第29页 上海大学硕士学位论文Send(x):return(receiVC())VOidsend(ucharx)uchari;iO-OUt(7279-(38,0);//选中HD7279deloy(4):for(i=O:i<8:i++)if(x&0x80j(iO-OUt(7279一dat—Oilt,1):elSeiO~OUt(7279一dat—out,0):io~OUt(7279-clk,1):x=x<<1:deiaY(400):)iO-Set—direction(7279一dat—Otlt,IO—DIR—OUT):iO—OUt(7279一dat—OUt,0):)ucharre(3eiv(3(void)fiO—Sec—directi013(7279一dat—in):input—Value=io—in(7279一etat—in):第30页 上海大学硕士学位论文iO—OUtf727fOr(i=O:10ou0,1)i++)Clk,1)delay(400):x=x((1:if(input—valHe;=1)X2e1sex2iO—Odela)x&0ut(Y(4clk,0)}}设南输入状态iO-OUt(7279一dat—out,0);retui"13(x))4)O/a转换程序设计10—8neurowiremasterselect(IO一1)TLC5615IO.1OiltputbitTLC5615一CS=I;when(io.changes(TLC56l5一CS)to0)(LgulOU0Uedint=0x00:(TLC56(TLC56reSUltI5一CS,0);15,&resl.1lt,8)ou}(TLC5615一CS.1)2.4控制器智能节点调试第3l页毗0虮.v阳m叭neO0O 上海大学硕士学位论文编写好控制器节点的应用程序后,通过烧录或下载的方式,将应用程序置入节点的E:PROM或Flashmemory中。编写应用程序是控制器智能节点开发过程中的一个重要的环节,节点所完成的功能都是由应用程序决定的。节点应用程序的开发、编译、下载以及调试等步骤可用图2.13来说明,智能节点的整个调试过程是通过Eetlelon公司提供的Nodebu]ider来实现“7”。图2。13节点应用程序开发步骤利用NodeBuilder开发工具,剥控制器节点的任务执行进行调试分为以下几步:(1)设备节点进行定义,即描述节点硬件应用程序的特征,如指定应用程序映象文件名、应用程序映象类型和设备模板等。一旦设备定义完成,NodeBuilder就有了关于设备建立、输出、下载和浏览所需的所有信息。在实际调试中,我们将节点的应用程序映象类型定义为Source(源程序),系统映象为DefaultVersion、映象名为sys3150,存储类型为Flash、地址为0000~7FFF。(2)创建NeuronC源程序,即编写各个功能模块应用程序。(3)将应用代码编译和下载到开发的节点上,对基于Neuron3150芯片的节点,其节点内存须要用初始化陕象编程,这个映象包括应用映象、系统映象和第32更 上海大学硕士学位论文网络映象。(4)最后测试节点上运行的应用程序。当程序运行起来以后,可通过Browse网络变量浏览窗口,查看网络变量,并可对输入网络变量进行修改,最后确认节点是否正常工作。节点开发以及调试的主要工作都是通过NodeBuiIder工具的主窗口来进行,NodeBuilder的主窗口如下图2.14所示,在NodeBuilder软件开发工具中,使月jNeuronC的组网和实时嵌入式扩展语句,可以自动生成可互操作的NeuronC源码模块和设备定义,在主窗口上只需要点击相应的按钮,即可完成源程序的编译、连接和下载操作。图214NodeBuiIder开发工具节点调试主窗口第33页 上海大学硕士学位论文第三章上位机神经网络控制器设计及算法仿真3.1神经网络智能控制器的结构m¨271在现代复杂工业控制过程中,由于被控制对象通常具有复杂的多变量、严重的非线性、强耦合、大滞后以及种类繁多的干扰,使得基于精确数学模型的常规PID控制已无法获得满意的动、静态控制效果。而将神经网络用于控制系统,处理控制系统的非线性、实现输入信息集成和融合处理等,能以期望的精度逼近任何非线性函数。并且它具有自学习、自组织、自适应等功能,这些特点特别适于于复杂、大规模和多变量系统的控制‘28’‘2⋯。本文正是将神经网络控制技术应用于Lon总线控制系统中,设计了一种神经网络智能控制器,即基于BP网络的前馈反馈自适应控制器,控制器的系统结构如图3,1所示:图3.1控制器的系统结构图中,Y!为系统期望输出、Y为系统实际输出(被控参数)、e为系统输出偏差,其值为y,-y、△u为PID的输出量、uN为神经网络前馈控制器的输出量、u为对象输入的控制量。从控制器的结构可以看出,神经网络控制(NNc)实质是一个前馈控制器,它与常规PID反馈控制器同时起作用。当采用神经网络有教师学习算法时,一般是以网络输出作为误差学习信号,而本文设计的神经网络前馈控制器是以PID反馈第34页 上海大学硕士学位论文控制器的输出(nU)作为学习信号,以系统当前时刻和若干历史时刻的实际输出Y、期望输出Y,和对象的输入控制量U作为网络输入(在实际系统中,网络的输入节点个数可根据不同对象的复杂性和实际控制效果作以调整),在线调整网络权值,目标是使反馈控制器的输出趋于零,从而使自己在控制中起主导作用,最终取消反馈控制器的作用:而当系统出现干扰时,反馈控制器又重新起作用,保证了全局渐进稳定性。在神经网络控制的各种结构和方案中,控制器设计的关键问题是神经网络的在线学习和训练问题,该控制方案由于在神经网络的前期学习中,利用常规反馈控制器对系统进行调节,弥补了自适应控制算法中辨识算法的收敛速度跟不上对象变化速度所造成的较大的过程超调:而在控制期,又能通过洲练不断地学习新的系统信息,不仅具有较理想的稳定性和鲁棒性,而且能有效地提高系统的精度和自适应能力。3.2控制器的算法分析及仿真3.2.1控制算法分析设被控对象为一单输入单输出的线性或非线性系统:y(t+1)=fly(t),y(t一1),⋯,y(t-n+1),u(t),u(t-1),⋯,u(t-m+1)]其中L1、Y——系统的输入和输出,f(·)——线性或非线性函数,设系统的参考输入序列为Y。(t+1)。用常规PID控制器作为反馈控制器,则反馈控制量“l为:△Ll=K。+[e(k)一e(k-1)]+Ki-e(k)+K。[e(k)一2*0(k-1)+e(k-2)]=K。$△e(k)+K:+e(k)+Kd+[△e(k)一△e(k-1)]前馈控制器采用三层BP网络,并用可微分的s(Sigmoid)型函数做隐层作用函数,训练采用基于梯度下降的反传算法。设wt为输入到隐层的权值,w2为隐层到输出层的权值,bz、b2分别为隐层和输出层的阈值,z为隐层的输出,网络输出层为一个节点,采用线性输出,即前馈控制器的控制量输出u。。第35页 上海大学硕士学位论文定义调整参数时的最小化目标函数其中uw——神经网络前馈控制器产生的前馈控制量uw.——前馈控制量的理想值。取网络的输入向量¨为:肛(k)=[¨(k),比(k)⋯⋯h(k)]’2[y,(k+】),Y(k),⋯⋯y(k-n+1),U(k—1),u(k一2)其中:N=n+m——神经网络输入层节点个数,Ll为被控对象的输入量,且U(k)=uN(k)+△u(k)。由于输出层为线性求和单元,故可得网络输出u。为:(3.1)LuN(k)5∑zJW2,+b2⋯其中L为隐层节点个数J2l隐层的输出z为:zj邓均)。i{二了⋯.“x』)为可微分的s型作用函数式⋯⋯日为第J个隐层单元的输出其中:xj=f∑Hw.。】+b-,根据梯度下降法得到网络参数的修正公式为w》w!,一叩瓦OJk+口(w:,一w:k,-1)xj为第j个隐层单元的输入(3—2)其中wz,为隐层与输出层之间的连接权值,n为动量系数,a为学习速率.w弘wo一叩薏圳w≈一w占1)小k+l旷k卵篆州p皆1)(3_s)6∥=6。~叩筹吲啦一6∞第36页 上海大学硕士学位论文其中Wlij为输入层与隐层之间的连接权值其中竺:篓.善叩N(k)一U。;(k)M(3-4)Uw2}OuN014921根据前馈反馈控制系统的特点可以得到:Au(k)=UN(k)一UN,(k)(3-5)将式(3—5)代入(3-4)式、(3-4)式再代入(3—2)式即可求得隐层到输出层的权值w2的调整公式,其它权值和阂值的调整公式可依上述步骤依次求得偏导得到。依据式(3—2)~式(3—4),通过对网络参数进行训练,使得目标函数(3-1)式趋近于零,即使得常规反馈控制器输出为零。前馈反馈控制算法的计算步骤如下:1)初始化神经网络前馈控制器的网络权值,阈值在O—l随机取值,控制量、误差和系统输出量的初值置0。2)把误差e=Y,一Y送反馈PID控制产生控制量△u,同时把期望输出y,、被控对象的输入u、系统输出Y送神经网络控制器(NNc),执行BP算法的前向传播过程,得到NNC的控制量u。。3)用PID产生的控制量AU作为NNC的监督信号,返送到BP算法的反向传播阶段,对NNC的权值进行修正。4)NNC的输出u。和PID产生的控制量△u叠加产生当前的控制信号u,作用于被控对象,产生系统的实际输出Y。5)返回步骤2)。6)被控对象的输出与期望输出达到给定的误差精度,动态系统稳定后结束。若系统不稳定,则可以通过改变网络隐层的神经元个数或学习率的大小。3.2.2控制算法仿真及结果分析为了验证该控制方案的有效性,本文对线性、非线性、含有噪声扰动的二阶系统进行了仿真分析,结果表明神经网络前馈反馈控制算法的仿真曲线,在同一PID参数下,较单独采用PlO控制有显著的改善。下面以二阶线性时不变系统的仿真为例进行说明。设二阶系统的传递函数为第37页 上海大学硕士学位论文G(s)=(2s+1)/(S2+4s+1),采样周期取Ts=0.1S,进行离散化得到差分方程:Y(k+1)=1.9488y(k)一0.9512y(k-1)+0.05u(k)一0.0475u(k-1)(3-6)首先采用经典的PID算法对系统(3.6)进行控制,令系统输出跟踪在5和6之间呈阶跃变化的设定值。PtD参数取:kp=13、ki=0.8、kd=0.2,被控对象的输出曲线如图3.2所示,从输出曲线图中可以看出被控对象在这组参数下可以稳定,但控制效果不够理想,超调量达18%。targe【andoutputl,ft20。40060080010001200’4001600dlscrefetlme图3.2采用PID控制时对象输出(y)曲线下面我们采用神经网络前馈加反馈控制算法对同一对象进行控制,PID反馈控制器取与单独用PID控制时相同的参数。BP网络的结构取为6-8一l,即输入矢量“(k)=Ly,(k+1),Y(k),Y(k-1),Y(k-2),U(k-1),u(k一2)],网络初始权值取(一0.5,0.5)之叫的随机数,使用梯度下降法训练网络时的学习率取0.2,令系统输出同样跟踪在5和6之问呈阶跃变化的设定值,被控对象的输出曲线如图4.3所示。第38页 上海大学硕士学位论文targetandoutput.Gain=02L、:产r0200400600B00100012001400'60018002000discrotetime圈3.3采用神经网络前馈反馈时控制对象输出0)的曲线从被控对象输出曲线图3.3和图3.2比较可以看出,神经网络经过多次在线训练后,控制效果逐渐得到改善,超调量逐步减少到6%以内,可见,采用神经网络前馈反馈控制效果明显优于单独采用PID控制时的效果。图3.4表示神经网络前馈反馈控制器输出曲线。图中曲线ul代表PID反馈控制的输出,曲线u:代表神经网络前馈控制的输出,Ll代表神经网络前馈反馈控制器的总输出。从曲线图中可以看出,在学习控制的开始,神经网络不能立刻学习收敛到给定的控制精度要求,在这期间PID控制器起主要作用:经过神经网络不断的在线学习,调整权值参数,使反馈控制器的输出ul趋近于零,从而使自己逐渐在控制中占主导地位,最终取消了反馈控制器的作用。从曲线图中可以看出,当系统给定值发生变化或出现干扰时,反馈控制器又可以马上重新起作用,保证了系统的稳定。因此这种前馈加反馈的监督控制方法不仅可以确保系统的稳定性,而且能有效提高系统的精度和自适应能力。第39页 上海大学硕士学位论文con”olsignal,Gain=02_./u2j_●≯IliI1ryJ产\J’、、—一¨曩uI‘\fi一~~?lf,fJ\。1tJ}9I第40页765432101 上海大学硕士学位论文wightsWlk:r卜:h●『卜0200400600800100012001400160018002000discretetime图35输入层到隐层的权值w。变化曲线hiddenlayerHases;晖一,一p1斗l孙J7。、一“-jJ:}镑名享喜事也:藩≤警睾_一I图36输入层到隐层的阂值b】变化曲线第4l页¨眦。舳“舯蚰O0O0OCO 上海大学硕士学位论文080604020.o2_o4-06_o8-12雌Jgn【sZ\/7一I/一一一扩一k&,,一一lL,一眵一沪=萨眵\~【k

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。
关闭