基于PROFIBUSDP现场总线的分布式测控系统

基于PROFIBUSDP现场总线的分布式测控系统

ID:36457600

大小:2.39 MB

页数:82页

时间:2019-05-10

上传者:U-145848
基于PROFIBUSDP现场总线的分布式测控系统_第1页
基于PROFIBUSDP现场总线的分布式测控系统_第2页
基于PROFIBUSDP现场总线的分布式测控系统_第3页
基于PROFIBUSDP现场总线的分布式测控系统_第4页
基于PROFIBUSDP现场总线的分布式测控系统_第5页
资源描述:

《基于PROFIBUSDP现场总线的分布式测控系统》由会员上传分享,免费在线阅读,更多相关内容在学术论文-天天文库

密级:分类号:论文题目:单位代码:学号:.√▲东岁,莩硕士学位论文作者姓名专业指导教9币姓名专业技术职务弓文j毛丝鳢年月日971832 性能指标上都超过了传统的PID控制,在被控对象的数学模型很难确定的情况下,自适应模糊PID控制尤为合适。关键词现场总线分布式测控系统PI∞mUS.DPSPC3自适应模糊PID控制从站PLCn AbstractFieldbusisoneofthefocusesofthecurrenttechnicaldevelopmentinautomaticfield.Fieldbusiswholescattered,intelligent,bidirectional,interconnected,multivariableandmultipointcommunicationnetworkwhichisusedbetweenlocalmeter,controlsystemandcontrolroom.Anditiscalledascomputerlocalnetworkinautomationdomain.Itcanbedevelopedspreadiyinautomatedsysteminmanyaspectssuchasmanufacturingindustry,procedureindustryandbuilding.SinceFieldbusappearedinlast80s,therehavebeenmanytypesofFieldbus,buttheyhavenotunifiedyetSOfar.InAprilof2003IEC61158Ed.3becometheinternationalstandard.ItcontainstentypesofFieldhnsinordertoreflectthenewdevelopmentofLindustrynetworkcommunicationtechnology.PROFIBUSisoneofthemostimportanttypeamongthetentypesofFieldbus.ItistheGermanstandardDINl9245andEuropestandardEN50170whichconsistsofPROFIBUS-DP,PROFIBUS-FMSandPROFmUS-PA.PROFmUS-DPisresearchedandappliedwidelyandisacceptededbyallovertheworld.ForFieldBusisanewtechnologyindevelopment,Ourcountryhasjustresearcheditinthisdomain.Ourcountryisjustatthefirststepinsystemapplicationandproductionresearch.InthispaperIintrodllcetheprotocolofPROFIBUSincludingPhysicallayer,DataLinklayerandApplicationlayer.Besides,Ialsointroducethemessageflameformat,servicetypeandtheprocedureoftransmission.AndIanalyzethefunctionofslavestation,StateMachineandtheprocedureofcommunicationwithMaterStationclearly.WeCanimplementtheprotocolbyusingsoftwareorhardware.ToachievethehighspeedandreliabilitywedesignPROFmUS-DPslavestationbyusingSPC3ofSiemens.n圮PROFIBUS—DPdistributedmeterandcontrolsystemhasthefunctionofdatacollection,control,communicationandmessagedisplayandSOon.Wehavedesignedanaloganddigitalnode,includingFBPRO-8DI,FBPRO-8DO,FBPRO一6RL,FBPRO一8AI,FBPR0.4A0,FBPRO-3TC,FBPRO-4lⅡD,FBPRO-PID.AndwedesigntheinterfaceofPROFIBUS-DPofPMM2000meterandcircuitbreaker.Theyhavebeenputintopracticeandtheresultpmvesthattherunisreliableandstabilize.WehavewrittenDeviceDatabaseFile(GSD)foreveryslavestationaccordingtothedifferencebetweencharacterandthefunctionofeverydevice,SOus粥CallIll makePROFIBUSdeviceplugandplay.UserscanconfigurePROFmUSnetworkwithanyconfiguresoRwaresuchasCOMPROFIBUSandSTEP7andSOon.WehavetestallslavestationintheplatformofeverySOft-wareandhardware,anditprovesthattheyCanmeetthedemandoftheopeningcharacteroffieldbus.Inaddition,weapplyself-adaptingfuzzyPIDtothedesignofthePROFIBUS-DPdistributedmeterandcentrelsysteminmypaper.Comparedtoconventionaldig蹦PIDcontroller,self-adaptingfuzzyPIDcontrollerisbetter.Andself-adaptingfuzzyPIDcontrollerismoresuitableforthesystemwhilethemathmodelishardtorcoIlfim.KeyWords:FieldbusdistributedmeterandcontrolsystemPROFIBUS·DPSPC3Self-adaptingfuzzyPIDcontrollerSlaveStationPLC 原创性声明本人郑重声明:所呈交的学位论文,是本人在导师的指导下,独立进行研究所取得豹成果。除文中已经注明弓|用的内容终,本论文不包禽任何其他个人或集体已经发表或撰写过的科研成果。对本文的研究作出重要贡献的个人和集体,均已在文中以明确方式标明。本声明的法律责任由本人承担。论文作者签名:§坠垒鳌日期:丝!兰!!:堡关于学位论文使用授权的声明本人竞全了解山东大学有关保留、使用学位论文的规定,同意学校保留或向国家有关部门或机梅送交论文的复印件和电子版,允许论文被查阅和借阅;本人授权山东大学可以将本学位论文的全部或部分内容编入有关数据库进行检索,可以采用影印、缩印或其他复制手段保存论文和汇编本学靛论文。(保密论文在解密后应遵守此规定)论文作者签名:墨选!亟导师签名:酲期:枷箩t女oX ‘山东大学硕士毕业论文.第一章现场总线综述我国的工业控制体系大体经历了四代:基地式气动仪表控制系统、电动单元组合式模拟仪表控制系统、集中式数字控制系统和集散控制系统DCS,目前刚刚兴起了现场总线控制系统FCSIlle现场总线是用于现场仪表与控制系统和控制室之间的一种全分散、全数字化、智能、双向、互联、多变量、多点、多站的通信网络,被誉为自动化领域的计算机局域网乜’。现场总线的出现促进了现场设备的数字化和网络化,并且使现场控制的功能更加强大。以现场总线技术为基础形成了一种新型的网络集成式分散式控制系统:现场总线控制系统FCS(FieldbusControlSystem),在基于现场总线的控制系统FCS中,现场控制设备具备了网络通信能力,通过现场总线网络连接成控制系统,把DCS系统中基于封闭、专用的通信解决方案变成了基于公开化、标准化的解决方案.FCS适应了工业控制系统向分散化、网络化、智能化的发展方向,成为全球工业自动化领域的热点之一,受到人们的关注,它有可能取代DCS,成为我国工业控制系统的第五代产品“,。1.1现场总线的技术特点现场总线是3C技术(计算机技术、通信技术和控制技术)发展的产物,它把微处理器置入了现场设备,使其具备数字计算和数字通信能力,提高了信息传输精度和传输速度,为控制系统的信息交换和共享提供了必要的条件。简单的概括现场总线技术有如下技术特点[tle(1)系统的开放性系统的开放性是指通信协议公开,各不同厂家设备之间可进行互连并实现信息交换。现场总线开发者就是要致力于建立统一的工厂底层网络的开放系统。这里的开放是指对相关标准的一致性、公开性,强调对标准的共识与遵从。一个开放系统,它可以与任何遵守相同标准的其它设备或系统相连。一个具有总线功能的现场总线网络,系统必须是开放的;开放系统把系统集成的权利交给了用户。用户可按自己的需要和考虑,把来自不同供应商的产品组成大小随意的系统。(2)系统互可操作与互用性系统互可操作性是指实现互连设备间、系统间的信息传送与沟通,可实现 点对点、一点对多点的数字通信;而互用性则是对不同生产厂家的性能类似的设备可以互换,实现互用。(3)现场设备的智能化与功能自治性它将传感测量、补偿计算、工程量处理与控制等功能分散到现场设备中完成,仅靠现场设备即可完成自动控制的基本功能,并通过现场总线将信息传送到控制中心,进行统一的处理和存储,控制中心可随时在线诊断设备的运行状态。(4)系统结构的彻底分散由于现场某些设备本身就是智能设备,可以完成自动控制功能,系统通过现场总线构成一种新的全分布式控制系统的体系结构,可由单个网络节点,或多个网络节点共同完成所要求的自动化功能。从根本上改变了现有DCS系统的集中与分散相结合、主要通过主机进行现场设备的控制和信息交换的集散控制系统体系,简化了系统结构,提高了可靠性,实现了控制彻底分散。圆对现场环境的适应性现场总线是工作在现场设备前端,作为工厂网络控制底层的载体,是专为现场环境工作而设计的。它可支持双绞线、同轴电缆、光缆、射频、红外线和电力线等,具有较强的抗干扰能力,能采用两线制实现送电与数据通信,而且有些现场总线可满足本质安全防爆要求(如PROFⅢUS-PA总线)等。1.2现场总线技术的优点上面介绍了现场总线的技术特点,特别是现场总线系统结构的简化,使控制系统的设计、安装、调试到正常生产运行及检修维护,都具有传统控制系统所无法比拟的优势乜1。(1)节省硬件数量与投资由于现场总线系统中分散在设备前端的智能设备能直接执行多种传感、控制、报警和计算功能,因而可减少变送器的数量,不再需要单独的控制器、计算单元等,也不再需要DCS系统的信号调理、转换、隔离技术等功能单元及其复杂接线,还可以用工控PC机作为操作站,从而节省了一大笔硬件投资,由于控制设备的减少,还可减少控制室的占地面积。(2)节省安装费用现场总线系统的接线十分简单,由于一对双绞线或一条电缆上通常可挂接多个设备,因而电缆、端子、槽盒、桥架的用量大大减少,连线设计与接头校 一山东太学亟士毕业论文.对的工作量也大大减少.当需要增加现场控制设备时,无需增设新的电缆,可就近连接在原有的电缆上,既节省了投资,也减少了设计、安装的工作量。据有关典型试验工程的测算资料,可节约安装费用60%以上.(3)节约维护开销由于现场控制设备具有自诊断与简单故障处理的能力,并通过数字通信将相关的诊断维护信息送往控制室,用户可以查询所有设备的运行、诊断和维护信息,以便早期分析故障原因并快速排除,缩短了维护停工时问,同时由于系统结构简化、连线简单而减少了维护工作量。“)用户具有高度的系统集成主动权用户可以自由选择不同厂商所提供的设备来集成系统。避免因选择了某一品牌的产品被“框死”了设备的选择范围,不会为系统集成中不兼容的协议、接口而一筹莫展,使系统集成过程中的主动权完全掌握在用户手中。固提高了系统的准确性与可靠性由于现场总线设备的智能化、数字化,与模拟信号相比,它从根本上提高了测量与控制的准确度,减少了传送误差。同时,由于系统的结构简化,设备与连线减少,现场仪表内部功能加强;减少了信号的往返传输,提高了系统的工作可靠性。此外,由于它的设备标准化和功能模块化,因而还具有设计简单,易于重构等优点。1.3常用的几种现场总线目前有数十种类型的现场总线,下面介绍一下常用的几种现场总线‘“1.(1)LonWorksLonWorks(LocalOperatingNetwork)是由美国Echelon公司推出并由它与摩托罗拉、东芝公司共同倡导的现场总线技术,包括LonTalk协议和神经元芯片这两部分主要内容。LonTalk协议采用了ISO/OSI模型的全部七层通信协议,使用了面向对象的设计方法,通过网络变量把网络通信设计简化为参数设置,其通信速率从300bps至1.5Mbps不等,支持双绞线、同轴电缆、光纤、射频、红外线、电源线等多种通信介质。C2)现场总线基金会FF现场总线基金会FF(FoundationFieldbus)是国际公认的唯一不附属于某企业的非商业化国际标准化组织,其宗旨是制定单一的国际现场总线标准,无专利许可要求,供任何人使用,是具有很大发展前途和影响力的现场总线。 (3)CANBUSCAN是ControllerAreaNetwork的缩写,即控制器局域网,它主要用于各种过程监测及控制系统。CAN是由德国Bosch公司在90年代初为汽车的监测、控制系统而设计的,CAN是一种多主总线,通信介质可以是双绞线、同轴电缆或光纤。通信速率最高可达1Mbps。数据块的标识码可由11位或29位二进制数组成,数据段长度最多为8个字节,可满足通常工业领域中控制命令、工作状态及测试数据的一般要求。同时,8个字节不会占用过长的总线时间,从而保证了通信的实时性。CAN协议采用CRC检验并可提供相应的错误处理功能,保证了数据通信的可靠性。CAN总线卓越的特性、极高的可靠性和独特的设计,特别适合工业过程监控设备的互连,因此,越来越受到工业界的重视,并已被公认为最有前途的现场总线之一。(4)PROFIBUSPROFIBUS是作为德国国家标准DINl9245和欧洲标准EN50170的现场总线,ISO/OSI模型也是它的参考模型。由PROFIBUS-DP、PRoFIBus-FMs、PROFIBUS—PA组成了PRoFmUS系列。PROFmUS-DP用于分散外设间的高速传输,适合于加工自动化领域的应用。PROFmUS.FMS是现场信息规范,适用于纺织、楼宇自动化、可编程控制器、低压开关等一般自动化,而PROFIBUS.PA则是用于过程自动化的总线类型,它遵从IECll58-2标准。PROFIBUS支持主一从系统、纯主站系统、多主多从混合系统等几种传输方式。主站具有对总线的控制权,可主动发送信息。对多主站系统来说,主站之间采用令牌方式传递信息,得到令牌的站点可在一个事先规定的时间内拥有总线控制权,并事先规定好令牌在各主站中循环一周的最长时间。按PROFIBUS的通信规范,令牌在主站之间按地址编号顺序,沿上行方向进行传递。主站在得到控制权时,可以按主.从方式,向从站发送或索取信息,实现点对点通信。主站可采取对所有站点广播(不要求应答),或有选择地向一组站点广播。PROFIBUS的传输速率为9.6kbps~12Mbps,最大传输距离在9.6kbps时为1200m,1.5Mbps时为200m,可用中继器延长至10kin。其传输介质可以是双绞线,也可以是光纤,最多可挂接127个站点。4 1.4现场总线的现状及其发展国际电工技术委员会,国际标准协会(mc/IsA)自1984年起着手现场总线标准工作,但统一的标准至今仍未完成。同时,世界上许多公司也推出了自己的现场总线技术。但太多存在差异的标准和协议,会给实践带来复杂性和不便,影响开放性和互可操作性。因而在最近几年里开始标准统一工作,减少现场总线协议的数量,以达到单一标准协议的目标.各种协议标准合并的目的是为了达到国际上统一的总线标准,以实现各家产品的互操作性“1。2003年4月,IEC61158Ed.3现场总线标准第三版正式成为国际标准,该标准由IEC/SC65C/MT9小组负责修订¨1。为了反映工业网络通信技术的最新发展,新版标准规定了10种类型现场总线,如表1.1所示。表1.1现场总线的类型类型总线名称主要特点PHL:IEC61158-2:1993标准的超集(Super-set)FoundationFieldbus的超集W矾dFm的功能超集TS61158TypelDI工:IEC'IS61158-3。T$61158-4现场总线FoundationFieldbus的超集w硎dFIP的功能超集AL:IECTS61158.5,ireC"IS61158.6ControINet和PHL和DLL:ControlNetType2Ethemet/IPAL:ControINet和Ethemet,IPPROFIBUS-DPType3PRoFIBUSPROFIBUS-PAFPROFIBUS.FMS由丹麦Proeess-DataSikeboryAPS公司从1983年开始开发,P-NETType4P-Net现场总线是一种多主站、多网络系统1998年,美国FieldbusFoundation(FF)基金会决定采用高速以太网(HighSpeedEthemet,HSE)技术开发H2现场总线,作为现Type5FFHSE场总线控制系统控制级以上通信网络的主干网,它与Hl现场总线整合构成信息集成开放的体系结构SwiflNet现场总线由美国SHIPSTAR协会主持制定,得到美国波Type6SwiflNet音公司的支持,主要用于航空和航天等领域.该总线是一种结构 简单、实时性高的总线,协议仅包括物理层和数据链路层1987年成立的WorldFIP协会制定并大力推广WorldFIP现场总线.Type7WbrldFIPWorldFIP协议是ENS0170欧洲标准的第三部分,物理层采用IEC61158.2标准Type8INTERBUS由德国PhoenixContact公司开发,InterbusClub俱乐部支持HI现场总线是由FF现场总线基金会负责制定的FFHl现场总线Type9FFHi协议由物理层、数据链路层、应用层以及考虑到现场装置的控制功能和具体应用而增加的用户层组成PNO组织于2001年8月发表了PROFInet规范.PROFlnet将工Typel0PlK)FIilet厂自动化和企业信息管理层IT技术有机地融为一体,同时又完全保留了PROFlBUS现有的开放性每种总线都有其产生的背景和应用领域。总线是为了满足自动化发展的需求而产生的,由于不同领域的自动化需求各有其特点,因此在某个领域中产生的总线技术一般对这一特定的领域的满足度高一些,应用多一些,适用性好一些。P-Net和Swit{Net是专用总线,ControlNet、PROFIBUS、WiddFIP和NTERBuS是从PLC发展而来的,而FFHSE是从传统DCS发展而来的。这lO种现场采用的通信协议完全不同,因此,要实现这些总线的兼容和互操作是十分困难的。工业以太网的引入成为新的热点。工业以太网正在工业自动化和过程控制市场上迅速增长,几乎所有远程I/O接口技术的供应商均提供一个支持TCP/IP协议的以太网接口。法国施奈德公司ModbusTCP/口(1998)是目前工业Ethernet事实的标准,并促进Ethemet在传感器和设备级的应用;德国与2001年发布的PROFInet也是工业的Ethemet规范;FF在2000年发布的Ethemet规范成为HSE。我们有理由相信,工业以太网在工业控制中将起到越来越重要的地位Ⅲ。 第二章PROFIBUS现场总线的技术研究2.1PROFIBUS简介2.1.1PROFIBUS的发展过程现场总线(ProcessFicldbus,PRoFIBUs)系统是能提供制造业、楼字和过程自动化统一解决方案的系统,是现场总线国际标准IEC61158的类型3.PROFIElUS技术的主要发展历程:(1)1987年由Siemens公司等13家企业和5家研究机构联合开发;(2)1989年批准为德国工业标准DIN19245;(3)1996年批准为欧洲标准EN50170V.2(PROFIBUS.FMS/-DP)I“)1998年PROFIBUS.PA批准纳入EN50170V2;(5)1999年PROFIBUS成为国际标准IEC61158的组成部分(Type3);(6)2001年批准成为中国的行业标准JB/T10308.3-2001;(7)2003年PROFInet成为国际标准IEC61158的组成部分(Typel0)。PROFIBUS是不依赖于生产厂家的、开放式的现场总线,各种自动化设备可以通过同样的接口交换信息。PROFIBUS定义了各种数据设备连接的串行现场总线的技术和功能特性。现场设备可以广泛分布在控制底层(如传感器、执行器层等)和控制中心(如车间级)。PROFIBUS连接的设备由主站和从站组成。主站能控制总线,当主站得到现场总线控制权时可以主动向从站和其它的主站发送信息。从站为控制的外围设备(如智能传感器、执行器等),它们没有现场总线的控制权,仅对接收到的信息予以执行,或当主站要求数据时回送到主站相应的信息“’。2.1.2PROFIBUS的类型PROFIBUS主要有由一系列相互兼容的协议组成,主要有PROFIBUS.FMSPROFIBUS.DP和PROFIBUS-PA三种模块协议,所有的协议均可以在同一条总线上混合操作。这三种协议各自有不同之处,在自动化控制系统中发挥各自的作用,与工业网络结合可以构成功能强大的控制网络,典型的组网结构如图2.I所示。7 国际互联网图2.1基于PROFIBUS的三层控制网络结构PROFIBUS现场总线得到PROFIBUS用户组织PNO的支持,德国西门子公司是PROFIBUS产品的主要供应商。PROFIBUS由三个兼容部分组成,即PROFIBUS.DP、PROFIBuS-FMs和PROFIBUS.PA。为了提高PROFmUs总线性能,近几年PNO推出了新版本的PRIDFmuS.DPVl和PROFIBUS.DPV2,同时逐步取消了PROFIBUS-FMS总线‘“。PROFIBUS-DP特别适用于分散I/O之间高速通信,适合于加工自动化领域的应用。PROFIBUS-PA专为过程自动化设计,它能够将变送器和执行器通过网络接口连接到公共总线,使用两根线可以完成供电和数据通信,并能实现本质安全性能。以此为基础,扩展的DP功能DPVI进一步完善了PROFIBUS-PA功能;DPV2解决了从站之间的通信与时间同步等重大问题。PROFIBUS.DPVl主要是增加了非循环服务,并扩大了与2类主站的通信。众所周知,PROFIBUS-DP性能的特征是在循环连接(MSCY-CI)的基础上应用数据交换服务,实现一个主站和一系列从站之间集中的数据交换。1类主站指PLC、PC或控制器。2类主站指操作员站和编程器等。DPVI扩展了上述功能,在已有的MSCY-CI连接基础上,增加了非循环服务,利用新的服务可以对从站中任何数据组进行读写。过去,2类主站只能利用DP从站的无连接服务,现在则可通过面向连接的通信对数组进行非循环读写,同时为进入国际互联网通信扩充了功能。PROFIBUS.DPV2可以实现循环通信、非循环通信以及从站之间的通信。由于从站之间可直接通信,通信时间缩短了1个DP总线周期和主站周期,从8 而使反应时间缩短60%至90%,同时建立了等时间间隔的总线循环周期,其时间偏差小于lms,即适用于高精度定位控制,又可实现闭环控制。DPV2可根据不同的应用需要开发专用行规(Profile),如用于运动控制的PROFIDrive和用于连锁保护的PROFISafe等|t0Ie2.2PROHBUS各层协议分析2.2.1PROFIBUS的协议结构PROFIBUS的层次结构基于ISO/OSI开放系统互联模型(GB/T9387),如图2.2所示.本标准定义了第一层(物理层,PHY)、第二层(数据链路层,FDL)和第七层(应用层).第3~6层未使用,以使系统开销最小和提高效率girleAUFMSFMA7●ULI,/无/FDLFM【Al,2P盯。图2.2PROFIBUS体系结构图DP定义了第一、二层和用户接口。第三层到第七层未加描述。这种为高速传输用户数据而优化的PROFIBUS协议,特别适用于可编程控制器与现场分散的I/o设备之间的通信。FMS定义了第一、二、七层,应用层(第七层)包括FMS(FieldbusMessageSpecification,现场总线报文规范)和LLI(LowerLayerInterface,低层接口)。FMS包括了应用协议并向用户提供了可广泛选用的强有力的通信服务。LU协调不同的通信关系并提供不依赖设备的第二层访问接口。它的作用是处理单元类(PLC和PC)的数据通信,功能强大的FMS服务可在广泛的应用领域内使用,并为解决复杂通信任务提供了很大的灵活性.DP和FMS使用相同的传输技术和总线存取协议,因此,它们可以在同一根总线电缆上运行。9 PA的数据传输采用扩展的DP协议。此外,它执行现场设备特性的PA设备行规。根据IECll58-2标准,PA的传输技术可确保其本征安全性,而且可通过总线给现场设备供电。使用段耦合器可以将PA设备很容易地集成到DP网络之中。PA是为过程自动化过程中的高速、可靠的通信要求而特别设计的。用PA可以把传感器和执行器连接到普通的现场总线段上,即使在防暴区域的传感器和执行器也是如此。2.2.2物理层PROFIBUS标准中定义了串行现场总线的技术和功能特性。串行现场总线主要用来连接数字现场设备或中、低功能的系统,如传感器、执行机构、变送器、可编程序控制器(PLc)、数控装置(Nc)、编程设备和本地人机接口等.PROFIBUS分为DP和PA两种不同的物理标准,但它们采用的介质存取协议以及传输协议是相同的,并且它们与应用层的接口也是一样的.本文设计的PROFIBUS是DP协议,它是基于EIARS-485的平衡传输,双绞线两端的终端电阻保证了DP总线的高速传输。电缆最大长度与数据传输速率及电缆型号有关,在传输速率小于93.75kbps的情况下,最大的电缆长度为1.2km;在速率1.5Mbps时,对A/B型电缆的最大长度分别为70/200m。在每一段电缆上连接的站点最多为32个(包括主站、从站和中继器)。另外,总线长度和连接的站点数量可以通过中继器增加,一条总线中可允许的中继器最多为3个。这样,在总线型拓扑结构中,最多可接的站点为122个“”。1.总线连接器在PROFIBUS中,每个站点都通过一个9针D型插头连接在介质上,其中插座安装在设备上,而插针位于总线上。插头的机械特性和电气特性在IEC807-3中有详细的定义。最好用金属的连接器外壳。连接器的两部分连在一起时,用螺丝固定。电缆与站点之间连接应用T型连接头,包括3个9针的D型连接器(一个插座两个插头)。这样T型连接器保证了在不切断电缆和不中断运行的情况下断开或更换设备。图2.3为一个D型连接器。lO图2.3D型连接器Pin3是差分信号的正端,Pin8是差分信号的负端。Pin5是数字地,其余信 号是可选的,Pin6是数字电源,位于总线两端时使用.2.总线电缆PROFIBUS采用的通信介质是屏蔽双绞线,它可以提高电磁兼容(EMC)能力,在电磁干扰不严重的情况下,可以采用无屏蔽双绞线。电缆特性阻抗在100fl-22012之间;电缆电容应小于60pF/m;电缆截面积应大于0.2删n2(24AwG).电缆的选型标准在EIARS-.485中有详细的叙述,标准中定义了两种型号的电缆,分别为A型和B型。PROFIBUS的总线电缆特性见表2.1。表2.1PROFIBUS总线电缆特性电缆参数A型B型135Q~165Q100Q~130Q阻抗(f=3—20MHz)(f>1001矗Iz)电容<30PF,m60pF/m电阻<110R/kin>0.34ram2>0.22mm2截面积(22AWG)(24AWG)对A型电缆和B型电缆,其传输的最大长度在不同速率下的情况是不一样的,如表2.2所示。表2.2PROFIBUS波特率与传输导线的关系l波特率(1(bps)9.619.293.75187.55001500I型号A(m)1200lOoo400200I型号B(m)1200600200703.总线终端器和中继器位于总线的两端的设备应该使用总线终端器,如图2.4所示。在总线的开始和最后一个站点接入Rt.(Rtb)这两个总线终端电阻,A型电缆使用Rt丑,B型电缆使用Rtb。在EIARS-485中规定,在终端器上加入一个下拉电阻(Rd,连接在数字地DGND上)和一个上拉电阻(凡,连接在vp脚上)。当没有站进行传输(即空闲状态)时,这两个电阻迫使不同的状态电压(即导体间的电压)趋于一个确定值。 VpRXD,IXD-PR)c工},rXD蝌2.2.3数据链路层PROFIBUS总线存取协议:主站之间采用令牌传送方式,主站和从站之间采用主从方式。令牌在主站之间进行传递,持有令牌的主站在一个确切规定的时间内得到总线控制权(令牌)。当某主站得到令牌报文后,该主站可在一定时间内执行主站工作。在这段时间内,它可以依照主.从通信关系表与所有从站通信,也可依靠主.主通信关系表与所有主站通信。系统有三种配置[hi。(1)纯主.从系统;(2)纯主.主系统;(3)混合系统。 2.2.3.1帧结构PROFIBUS按照国际标准IEC870.5.1制定帧字符和帧格式.每个帧由若干个帧字符(即UART字符)构成.每个UART字符由11个位组成:一个开始位(sT),总是为二进制“O”;8个信息位,高位先传送;一个奇偶校验位(P);一个停止位,总是二进制“l”。UART字符格式如下:接收器的位同步总是从开始位下降沿开始的,即从“1”转换成“0”时。开始位和后继的各个位在一个位时间内被扫描。开始位应为“0”,否则同步位失败并停止。UART字符终止于二进制“1”的停止位。如果停止位是“0”,则发出同步错误或UART字符错并报告。传输规则:(1)空闲时间相当于信号电平二进制“1”;(2)在每个帧传送前必须有33个空闲位时间(同步时间);(3)在帧的UAI玎字符之问不允许有空闲状态;(4)接收器检查每个UART字符的开始位、停止位、奇偶校验位和每个帧的起始定界符、结束定界符、DA、SA、和FCS。PROFIBUS主要具有如下四种形式的报文结构:1.无数据信息的固定长度帧请求帧(Request)格式如下:应答帧(Acknowledge)格式如下:短应答帧(shortacknowledge)格式如下:圈其中sYN:同步周期,至少有33个空闲位;SDI:开始分界符(10H)tDA:目的地址:SA:源地址;FC:帧功能码;FCS:帧校验序列;ED:帧结束符(16H)t.sc:单个字节;L:帧中信息部分的长度,在这种帧类型中L=3(DA,SA,FC).2.有数据信息的固定长度帧13 发送/请求帧(Send/Request)格式如下:响应帧(Response)格式如下:‘匡正亚丑固叵巫叵巫丑司其中SYN:同步周期。至少有33个空闲位;SD3:开始分界符(A2H);DA:目的地址;SA:源地址:FC:帧功能码;DATA8FCS:帧校验序列;ED:结束分界符(16H);sc:单个字节:L:固定长度L=Il(DA,SA,FC,DATA_UNIT).3.具有数据信息的变化长度帧因为在此种类型中,数据信息的长度是变化的,所以为了保证汉明距离仍为4,在固定帧头中加入了两次长度信息。该长度是从目的地址DA到帧校验序列FCS,在接收过程中只有当这次长度相等时,才被认为是有效帧。发送,请求帧(Send/Request)格式如下:响应帧(Response)格式如下:其中SYN:同步周期,至少33个空闲位;SD2:开始分界符(68H);LE:帧的长度,允许范围为4~249;LEr:帧长度的重复;DA:目的地址;SA:源地址;FC:帧功能码DATA数据信息,在该类型帧中长度不固定,最大长度为.UNIT:246;FCS:帧校验序列;ED:结束分界符(16H);L:变字节长度范围为4-249(DA,SA,FC,DATA_UNIT)。4.令牌帧(Token)令牌帧格式如下:匝亚叵圈.其中SYN:同步周期,至少有33个空闲位;SIM:开始分界符(DCH);DA:目的地址;SA:源地址.以上帧格式中都包括地址字节DA和S丸PROFIBUS对地址有一定的规定。14 127作为广播地址,仅用在无须应答的请求帧中.所以从0-126共127个地址可以供主站和从站使用,但最好主站的地址不要超过32,而且每个系统中必须至少有一个主站。所有信息(包括令牌信息)在传输过程中确保高度安全,以免传输错误,海明距离HD=4。Hamming距离用作评价数据传输质量的判断,}Ⅲ=4可以检查以下的错误:字符格式错误(奇偶校验,帧错误,超限);协议错误(错误的起始,终止定界符);错误的帧校验字节;错误的报文长度。2.2.3.2主站间的令牌传递按站地址的升序使用令牌帧将令牌从一个主站传送到另一个主站,如图2.5所示,只有一个例外,为了封闭逻辑令牌环,具有最高地址的站要传送令牌给具有最低地址的站。从站其中,Ts:本站;Ps:前一个站;NS.-下一个站图2.5主站间的令牌传递如果一个主站(Ts)在主动站表(LAS)中登记为前一个站(Ps)的主站所寻址,并从PS那里得到令牌帧,则此主站就拥有了令牌并可以执行报文循环。某主站在完成了它的报文循环(包括可能的GAP站表的维护)之后,它就用令牌帧传递令牌给它的后继者(Ns),在任何时刻可以在传输介质上连接或撤除主站和从站。在逻辑令牌环中的每一个主站负责增加新站和撤除现有的站,它们的地址被安置在从本站地址(Ts)到下一站(NS)的范围内。2.230FDL控制器是各站点在通信中的主要执行者,在数据传输过程中PROFmUS采用混合式的介质存取方式,包括令牌传输和主从方式两种,每次通信都是由持有令牌的主站初始化的,令牌根据逻辑环的连接从一个主站传递给另一个主站,每个主站的令牌持有时间是有一定限制的.除了持有令牌的站点外,其它站点在通常情况下监视所有的请求,只有当自身被寻址时,才会做出响应,而且该响应必须在一个预定的时间内到达通信 的发起者,否则将重新发出请求。其中必须注意的是,无论是再次请求还是新的请求,发起者都必须经过一个空闲的时间周期,否则系统将出现错误。如果经过多次重发后,发起者仍未收到任何响应,被寻址的站点将被标识为“nonopcrational”·FDL控制器中最为关键的是它所处的状态,它决定了FDL控制器的动作.对予一个主站,FDL控制器具有十种状态,而从站只有两种。这十种状态分别是:1.离线状态(o=丘1ine)2.被动空闲状态(PassiveIdle)3.听令牌状态(Listen_Token)4.主动空闲状态(ActiveIdle)5.请求令牌状态(Clailn_Token)6.使用令牌状态(UseToken)7.等待数据响应状态(AwaitDataResponse)8.检查存取时间状态(Check_Acccss_Tnne)9.传递令牌时间(PassToken)10.检查令牌传输状态(Check_TokenPass)11.等待状态响应状态(Await_Status.Response)刚刚上电后,无论主站还是从站的FDL控制器都将进入“Offline”状态,在该状态下,FDL控制器不会从总线上接收或发送任何信息,一旦操作参数根据协议规定正确设置后,FDL控制器从“Omine”状态进入“PassiveIdle”或“ListenToken”两种状态。为了保证数据链路层的正确传输,差错控制是必不可少的,PROFIBUS也是如此。传送过程中错误包括:帧错误、溢出错误、校验错误以及传输协议错误等(如错误的分界符,无效的帧长度等)。为了防止无限制的等待或传输,在PROFIBUS的FDL控制器中还定义了若干个定时器,如目标传送定时器、实际传送定时器、超时定时器、同步定时器、空闲时间定时器等,防止超时错误的发生。2.2.4应用层PROFIBUS标准的应用层包括两个实体,即FMS(现场总线报文规范)和LU(低层接口)‘”1. PROFIBUS致力予与过程密切相关的自动化应用并制定了一个具有实时操作能力的简单总线接口,使不同厂家生产的现场自动化部件在分布式系统中互联,并保证部件间通信可靠,这样的系统称为开放系统。此外,PRoFⅢuS协议易于与较高层次的自动化系统集成(制造自动化协议,ManufacturingAutomationProtocol,MAP),只需极少的互联开销。应用层通过不同的应用领域定义专门的行规文件(面向应用的功能标准),如楼宇自动化、离散部件制造、过程控制等等,使得在不同的应用领域可以实现不同的系统组成和功能结构。2.3服务原语1.数据链路层的服务在PROFIBUS中,数据链路层向上提供的服务包括以下四种:需要响应的数据传输服务(SendDatawithAcknowledge,SDA),无需响应的数据传输服务(SendDatawithNoAcknowledge,SDN),需回答的数据传输和请求服务(SendandRequestDatawithReply,SRD),需回答的循环数据传输和请求服务(CyclicSendandRequestDatawithReply,CSRD)·SDA服务是允许主站的FDL用户向单个远程站点发送用户数据(LinkScrvice_Data_Unit,L_sdu)。一旦由FDL传送的L_sdu被正确接收,则远程站点的数据链路层将把数据送给它的FDL用户,且通信发起者将收到一个关于是否接收到的确认帧。如果在传输中发生错误,FDL将重复数据的传输。SDN服务是允许主站的数据链路层向单个远程站点,或多个站点甚至所有站点同时发送用户数据(Lsdu)。当地的FDL用户接收到一个传送结束的确认信息。而在远程站点,如果数据被正确地接收,它将由FDL送给其用户,无需确认。SRD服务允许FDL用户在向单个远程站点发送用户数据(Lsdu),同时请求早就在远程站就准备好的数据(L。一旦数据被对方无差错的接收到,_sdu)则所接收的数据被传送给远程用户。该服务还允许当地用户不向远程用户发送任何数据而请求数据。而发送完后,本地用户接收到请求的数据,或数据无效的指示,或被传送的数据未接收到的确认,前两种响应同样也是确认被传输的数据已被正确接收。但如果在传输过程中发生错误,则本地用户的FDL将重复带有数据请求的数据传输。·CSRD服务允许FDL用户向单个远程站点循环的发送用户数据(Lsdu),17 并同时从远程站请求数据。在远程站点无差错的数据将循环的被送给FDL用户,而在当地站点将循环的接收到被请求的数据或是指示数据未准备好,或是一个未接收到传送数据的确认帧。前两个响应同样也是对方站点接收到被传输数据的确认响应,如果在传输过程中有错误发生,当地的FDL控制器将重发带数据请求的数据传输。与SRD相同,CSRD服务允许通信的发起者向对方站点请求数据而不发送任何数据。2.数据链路层的服务原语以上介绍的数据链路层的各种服务是通过服务原语实现的,例如请求服务是FDL用户通过请求原语实现的;当一个服务完成后确认响应是通过确认原语送给用户的;当远程站发生意外的事件,则用一个指示原语告知远程用户。这四种服务需要的服务原语如表2.3表2.3FDL服务原语服务种类服务原语可用站点类型SDAFDL_DATA_ACK.requestMastfrFDL_DATA_ACK.indicationMaster&SlaveFDL_DATA_ACK.colLflrmMasterSDNFDLDATA.requestMasterFDL_DATA.indicationMaster&SlaveFDLDATA.confmnMasterSRDFDL_DATA_REPLY.requestMasterFDL_DATAREPLY.indicationMaster&SlaveFDLDATA_REPLY.confirmMasterFDL_REPLY_UPDATE.requestMaster&SlaveFDL_REPLY_UPDATE.confirmMasterCSRDFDL-sENDUPDATE.requestMasterFDL-sEND_UPDATE.confirmMasterFDL-cYCDETA_REPLY.mquestMasterFDL-cYC_DETA_REPLY.confirmMasterFDL——CYCENTRY.requestMasterFDL—.CYC..ENTRY.confimMaster.FDL_CYCDEACT.requesMasterFDL_CYC_DEACT.confirmMasterFDL_DATA_REPLY.indicationMaster&Slave lFDL.REPLY_UPDATE.requestMaster&SlaveFDL.REPLY_UPDATE.confirmMaster&SlaveSDA服务是最一般和普通的服务,而CSRD是最复杂的服务,其他的服务都介于这两种之间.以下简单介绍一下SDA服务与服务原语之间的关系。对于SDA服务,本地用户为远程用户准备好Lsdu,用户首先通过FDL接口用FDLDATA.服务原语传送给本地的控制器。本地_ACKrequestFDL控制器接收到该服务原语后,将Lsdu数据以固定的格式传送到远程的FDL控制器,一旦接收到对方发出到确认响应,当地的FDL控制器把确认响应用FDLDAl’AACICconfirm原语送给当地用户,它可以指示数据是否传送正确。如果在规定的时间内未收到该确认响应,本地FDL控制器重新向远程FDL发送Lsdu数据,如果重试n(max次后仍未收到响应,则本地FDL_retry_limit)控制器发送一个否定应答给本地用户。在远程站中,发成功接收的数据帧通过FDL控制器用FDLDATAACK.indication原语传送给用户.图2.6为SDA服务与服务原语之间的关系。2.4小结主站主站,从站FDL_DATAACK·rect吐.鲥u)7FDLDATA_ACK.COn图2.6SDA服务与服务原语之间的关系PROFIBUS现场总线作为一种国际主流现场总线产品,速度快、适用范围广、功能强,在提高系统性能同时,降低工程造价,具有较高的性能价格比,在当今的过程控制中越来越受到重视。正因为如此,在开发我们这套监控系统的过程中,采用了PROFIBUS-DP现场总线技术。由于软件部分要完成DP系统的协议报文的内容,所以本章深入地学习和了解PROFIBUS—DP现场总线的特点以及它的协议的结构和通信机理,这样才能够更好的完成论文所要求的任务.19 山东大学硕士毕业论文第三章PI∞FIBUS.DP智能化从站的设计PROFIBUS协议标准比较复杂,虽然从原则上讲。它可以在任何带UART接口的微处理器上由软件实现,但对于开发人员来说技术难度比较大,开发人员比较关心的是开发工具、开发效率及开发耗费的时间.采用专用的通信处理芯片可以满足广大开发人员的要求,因为它完全集成了复杂的PROFIBUS协议。目前,很多公司生产PROFIBUS通信协议芯片,使用这些集成的专用协议芯片可以使PROFIBUS协议的具体实现简单而方便。SPC3集成了全部PRoFmUS.DP协议,有效减轻了处理器的压力,可用于12Mbaud总线。SPC3通信协议芯片有着广泛的应用,比较有代表性,所以本课题的PROFmUS-DP智能从站的硬件设计选用了Siemens公司的SPC3集成协议芯片‘1”。3.1集成协议芯片SPC33.1.1SPC3内部结构SPC3(SiemensPROFIBUSController)是Siemens公司研制开发的一种用于开发PRoFIBUS-DP从站的智能芯片,集成了完整的PROFIBuS-DP协议,包括第一层的介质存取控制(MAC)和第二层的现场总线数据链路(FDL)传输协议,外部使用微处理器实现PROFIBUS-DP从站通信处理,内部结构如图3.1所示[1410SPC3通过它的双口RAM与微处理器交换信息,SPC3对于微处理器就象微处理器扩展的外部RAM一样。SPC3的总线接口是个可参数化的同步,异步8位接口,适合于Motorola和Intel的微控制器/处理器。PROFIBuS-DP通信的服务存取点(SAP)由sPc3自动建立,各种报文信息呈现在用户面前的是不同BUF的内部数据。用户可以通过总线接口访问这些内部数据。SPC3内部集成了一个看门狗定时器,操作子三种不同的状态:波特率监测、波特率控制和DP控制。内部的UART接口实现串并数据流的相互转换,SPC3可以自动识别总线的波特率(9.6kbps一12Mbps)。空阂定时器控制串行总线电缆上的总线定时.微序列器(microsequencer,MS)控制整个SPC3的工作过程。 图3.1SPC3内部结构示意图SPC3的主要技术指标如下:(1)一种用于从站的智能通信芯片,支持PROFIBUS-DP协议,IMl83.1接口使用的就是SPC3.(2)最大数据传输速率12Mbps,可自动检测并调整数据传输速率;(3)与80C32,80X86,80C166,80C165,80C167和HCll,HCl6,HC916系列芯片接口兼容;(4)“管脚的PQFP封装;(5)集成的看门狗定时器(wDT);(6)外部时钟接口24MHz或48MHz;(7)5VDC电源供电。3.1.2SPC3存储器分配SPC3内部集成了1.5kB的双口RAM,其地址空间从000H到5FFH,内部每8个字节为一段,分成192段。RAM空间以功能区分,可分为三个区域:000H.015H,016H-03FH,040H-5FFH。如表3.1所示““:21 表3.ISPC3内存分布起始地址应用说明0000H方式寄存器o,l直接存取控制器的内部寄存器,存中断寄存器储在地址区000H-015H状态寄存器0016H缓冲器长度为寻址要交换的数据、组织参数,缓冲器指针存储在地址区016H_03FH识别号,从站地址0040H输入(3)由用户定义数据缓冲器以保证全部输出(3)PRoFIBUS.DP功能,包括数据一致诊断(3)性存储在040H.5FFFI参数化数据(1)组态数据(1)辅助缓冲(1或2)SSA缓冲(1)从000H到015H为方式寄存器、中断寄存器和状态寄存器区域.这些寄存器将用于设置波特率控制的定时值、从站最小延迟时间、中断屏蔽等,处理器所处的状态可以从状态寄存器查询。只有在离线状态下才可以设置方式寄存器0,要想在非离线状态下改变处理器的状态可以在方式寄存器1的对应位写l。从016H到03FH为组织参数区域,各种BUF的指针与长度、站地址、地址允许改变变量、用户看门狗值和设备标识号在此区域设置。这些BUF包括三个输入BUF、三个输出BUF、两个诊断BUF和一个地址设置BUF。这里的输入输出是相对于主站而言的。值得注意的是各个BUF的指针定义,此处的指针指的是段序号。由于各个BUF的长度必须是8字节的整数倍,即各BUF的起始地址能被8整除,所以可以用段序号(O-191)标识出具体的BUF起始地址,例如参数BUF的起始地址为3EOH,可以用指针7CH表示。这种方法既节约存储空间,而且简洁明了.从040H到5FFH的1472字节为用户区域,它们用来接收来自应用和主站的数据。这些BUF的配置,包括BUF的长度和初始地址必须在SPC3的“离线(Offiine”状态下完成。在操作过程中,除了和的_state)DourbufDinbuf长度可变外,其它配置不能更改。用户应用可以通过中断或者轮循方式与SPC3交互数据。下面详细介绍一下在初始化时和通信时用的几个寄存器。 3.1.2.1与中断相关的寄存器IARLOW02H:中断响应寄存器低字节单元IARHIGH03H;中断响应寄存器高字节单元IMP_LOW04H:中断屏蔽寄存器低字节单元IMR_HIGH05H;中断屏蔽寄存器高字节单元SPC3可以产生多个中断,通过设定中断屏蔽寄存器可使能或屏蔽某个中断,如果发生了某个中断,处理完中断后需要中断响应,只需要在中断响应寄存器的对应位写入l即可。IRRLOW00H;中断请求寄存器低字节单元mRHIGH01H;ee断请求寄存器高字节单元IRLOW02H:中断寄存器低字节单元IRHIGH03H:中断寄存器高字节单元SPC3只有一个中断输出,到底发生了哪一个中断,需要查询中断寄存器单元的值,如果菜个中断没有被屏蔽,而发生了相应的中断,则SPC3就有一个中断输出,这时读者可以通过查询取寄存器来判断发生的中断,如果对应位是1,读者就可据此来确定发生了这个中断,反之就没有发生这个中断。不管中断是不是被屏蔽,只要相应的事件发生,IRK寄存器对应位都会置l,会不会产生中断,SPC3会判断中断屏蔽寄存器来决定。3⋯122方式寄存器MODEREG006H:方式寄存器0MODEREC,0:方式寄存器.S07H0SMODERE01S08H:方式寄存器lsMODEREOIR091-/:方式寄存器1R只能在离线状态下(如合上电源开关)才可以设置方式寄存器0,当方式寄存器0中所有的处理器参数和组织参数被装载后,SPC3才离开离线状态(用户通过设置方式寄存器l的START__SPC3位为1来实现)。那么要想在正常运行状态中改变方式寄存器中的某些位,那该怎么办昵?SPC3正好提供了解决这种可能性的方法。这些控制位与方式寄存器l有关,可以单独被设置(ModeReg_.S),也可以单独被清除(Mode_Reg—R),设置或清除时必须在位地址写入逻辑1。3.1.2.3状态寄存器在运行过程中,如果用户想查询SPC3当前的状态,比如:当前的处理器的 通信波特率、DP状态机的状态等等,S1=≮兀ySREGLOW04HS聊ySPEGHIGH05H可以通过查询状态寄存器来实现。;状态寄存器低字节单元;状态寄存器高字节单元3.1.2.4设定从站节点的站地址RTSADR16H;从站地址单元在同一PROFIBUS现场总线上的站点数最多可达126个,PROFIBUS采用的是主从式结构,主站采用轮询方式和与之相连的从站通信。每个站点都必须有一个站地址从而区分出到底是访问哪一个从站,这就是通过设定该寄存器单元来实现的。地址可以通过拨码开关读取得到。3⋯125设备标识号RIDENTLOW3AH:标识号低字节单元RIDENT:标识号高字节单元为了满足不_H同IG厂H商生产的设备3B的H一致性互操作性,PROFIBUS用户组织为每种设备规定了一个独一无二的标识号。设备标识号由PROFIBUS用户组织发放,如在德国的PNO,在美国的PTO,识别号用0到FFFF间的16进数,在此设定的标识号必须与GSD文件中一致,否则,就无法进行正常的数据通信。3.1.2.6从站输入输出参数这部分内容是最复杂也最重要的。在初始化时需要按照要求去初始化,在正常通信过程中也会用到这些寄存器从而确定输入和输出的缓冲区单元。这些寄存器主要包括:RLENDOUT_BUF1AH:输出数据缓存长度单元R_DOUT_BUF?TRlIBH;输出数据缓存1段地址单元R_DOUT_BUF?TR21CH;输出数据缓存2段地址单元R_DOUT_BUF_PTR3IDH;输出数据缓存3段地址单元R—LEN—DIN—BUF1EH;输入数据缓存长度单元R—DIN—BUF—PTRlIFH;输入数据缓存1段地址单元R—DIN—BⅥ’_-PIR220H;输入数据缓存2段地址单元R.pINBUFPTR321H;输入数据缓存3段地址单元前面已经说过,PROFIBUS.DP主站是通过轮询方式通信的.主站首先把输出数据发送给从站,然后从站把输入数据上传给主站.每次通信时,主站发送多少字节的数据给从站,从站要上传多少个字节的数据给主站,都是预先规定好了的。比如主站每次发送8个字节的数据给从站,那么就在 R_LEN_DOUT_BUF单元写入8,从站要上传8个字节的数据给主站,那么就在R_LENDIN—BUF单元写入8。并且在GSD文件中也是这么来设置。主站发送数据给从站,SPC3会自动接收,不需要用户来干涉。但是SPC3接收到之后放到什么地方呢?RDOUTBUFPTRl,RDOUTBUFPⅡ也,R阿U,就是接收数据的段地址;发送时也是把_DOUT.BUFSPC3RDNBUFPTRl,RD玳BUFPTR2,RDINBUFPTR3段地址对应数据缓冲区中的8个数据发送的主站。3.1.3SPC3的DP服务存取点在开始DP通信时,SPC3将自动设置所有的DP服务存取点(ServiceAccessPoin_c,SAP)。在DP方式下,主要有下列SAP服务n“”。DefaultSAP:数据交换(WriteReadData)SAP53:保留SAP55:改变站地址(SetSlaveAddress)SAP56:读输入(Read_Inputs)SAP57:读输出(Read一_Outputs)SAP58:DP从站的控制命令(GlobalContr01)SAP59:读配置数据(GetConfig)SAP60:读诊断信息(Slave_Diagnosis)SAP6l:发送参数设置数据(SetParam)SAP62:检查配置数据(CheckCordig)DP从站协议完全集成在SPC3中,并独立执行。用户必须相应地参数化ASIC、处理和响应传送报文。DefaultSAP、SA_P56、SAP57和SAP58四个SAPs在DP从站状态机制进入数据交换状态才使能,其他的SAPs一直使能。用户也可以使SAP55无效,这时相应的缓存器指针RSSABllfP缸设置为ooH。DP-sAP缓存器结构见图3.2。用户在离线状态下配置所有的缓存器(长度和指针),在操作中除了Dout和Din缓存器长度外,其他的缓存配置不可改变。用户在配置报文以后(Check.Config),等待参数化时,仍可改变这些缓存器。在数据交换状态下只可接收相同的配置。输出数据和输入数据都有三个长度相同的缓存器可用,这些缓存器的功能是可变的。一个缓存器分配给D(数据传送),一个缓存器分配给U(用户),第三个缓存器出现在N(nextstate)或F(freesmte)状态,然而其中一个状态 不常出现。两个诊断缓存器长度可变。一个缓存器分配给D,用于SPC3发送数据;另一个缓存器分配给u,用于准备新的诊断数据。SPC3首先将不同的参数设置报文(SetSlaveAddress和SetParam)和配置报文(Check_Config),读取到辅助缓存I和辅助缓存2中。与相应的目标缓存器交换数据(SSA缓存器,PRM缓存器,CFG缓存器)时,相互交换的缓存器必须有相同的长度,用户可在R—Aux—Bur—Sel参数单元定义使用上述哪一个辅助缓存。辅助缓存器l一直可用,辅助缓存器2可选。如果DP报文的数据不同,比如设置参数报文长度大于其它报文,则使用辅助缓存器2(AuxSelSet—Param-=1),其他的报文则通过辅助缓存器1读取(AuxSclSetParam).如果缓存器太小,SPC3将响应“无资源”.DNU图3.2SPC3缓冲区结构示意图总线上的串行数据经过UART转换为并行数据进入SPC3,SPC3自动识别并接收传送给本站的数据报文。它根据报文结构的不同,识别出不同的服务访问点,将数据存进对应的BUF,图3.2中三个Doutbuf具有相同长度,其中的D对应于数据传输,u对应于用户应用,而N为中间BUF。当SPC3接收到新 的Dour报文后,SPC3迫使D与N相互交换。当中断请求寄存器置位后,用户可以通过轮循诊断标志或通过中断进行u与N的交换,从而完成Dour数据的传送。U、N和D由Dour—buf—SM寄存器决定对应于哪一个Dout__buf_ptr,交换实际上是DoutbufSM中相应位的改变。当用户应用有新的数据需要传送到主站时,用户将数据传到Dinbuf中的U,然后请求数据传送,主站响应这个请求并迫使SPC3进行D与N的交换,从而达到数据输入的目的。这里的D、N和u由DinbufSM决定。对于诊断信息,标准的诊断信息由SPC3自动地形成并发送。由于SPC3集成了完整的PROFIBUS.DP协议,它内部的寄存器是完全格式化的,因此,极大的减轻了开发技术人员的工作量并提高了开发效率。3.1.4SPC3与CPU的接口电路+5VP27^B7xCS——匕=HP26^B6MODE剥p25^B5xTEST0P'24—产AB4)订ESTlP23AB,ⅨV∞ERP22^B2P2I^BIP20^BO^B8葫AB9POTDB7^BJOP06DB6ⅪN删0T∞5DB5P04DB41'03DB3VoolnY2DB2-{---_1_州POlDBIVia脚哪XcTs^LECLKOUTWRXWRXDATAEXCHRDXRDXRE^DⅥXDlACK三--群INT0ⅪNT盯SP17RESETTXD148MHzF-CLKRXD图3.3SPC3与CPU的接口电路CPU与SPC3的接口电路如图3.3所示IllltCPU使用AT89S52,采用的是INTEL工作方式。对AT89S52而言,SPC3相当于它扩展的一个外部RAM。而且,SPC3有内部地址解码电路,所以,ABS-ABl0接地。此时DB7.DB0是数据地址复用总线,可以产生低8位的数据和地址,高4位地址由AB0.AB3产生,AB4-AB7产生SPC3的片选信号,只有AB4-AB7同时为0时才选中SPC3。 在图3.3中,SPC3的片选信号是1000H,SPC3的内部RAM位于1000H.15FFH单元。本从站的开发采用的是汇编语言编程,占用的内存单元少,不需扩展外部RAM。如果使用c语言编程,则必须扩展足够的RAM或者使用带有足够RAM的CPU。3.1.5SPC3与RS-485接口电路SPC3采用的是串行通信,用于通信的4个引脚分别为XCTS、RTS、TXD和RXD。XCTS的含义为清除发送,是SPC3的输入信号,表示允许SPC3发送数据。此信号低电平有效,SPC3的发送一直有效,所以直接接低电平。RTS为SPC3的请求发送信号,其最终接到RS.-495的驱动器的输出使能端。RXD和TXD分别为串行接收和发送端口。PROFIBUS-DP的功能满足RS--485的标准,可以使用任何RS-485驱动器。现在能满足高速的驱动器芯片不多,由于供货方便及性价比的原因这里采用了65ALSll76。为提高系统的抗干扰性,SPC3内部线路必须与物理接口在电气上隔离。输入输出通道上的电气隔离,采用了HCPL7721和HCPL0601高速光偶。SPC3与RS-485接口电路如图3.4所示[ISI。R如嚣M嚣矗翳睦HCPI,772I甥65ALSll76e,..掣[霎M2/a图3.4SPC3与RS-485接口电路一丑謇l《vr-_l________■__■_I 3.2FBPRO.8DI开关量模块的设计3.2.1硬件结构PROFIBUS-DP从站智能测控节点的一般结构如图3.5所示‘21。本节和下一节以FBPRO-8DI和FBPRO-4MV为例说明DP从站智能节点的设计.垂H裟场h+_{执行嚣耋Hi膏}.H嚣里堕墅堡H器誓F二i赢—E2PRO—M+WDT]+5v==——_=———.1叫DC/DC卜_o+24V三里童坚芝刻c4皇塑堡竺hGm(其它所需电源)图3.5PROFIBUSoDP从站智能测控节点结构图FBPRO.8DI八路数字量输入智能节点的硬件框图如图3.6所示:骶驯10k0匕=卜o+,V南VDI^D7·0^15.{^LERDWRDrroP17SPC3DBT一0^B4AB70邶,-oIALE髓}XRDTXDIXwRRXD3flJ,ITRESET陬图3.6FBPRO-SDI智能节点的硬件框图在图3.6中,微控制器选用Philips公司的P89C51RD2,采用74HC245读取从站从站地址和数字量的输入状态,通信控制器采用Siemens公司的SPC3,X5045为Xicor公司的串行EEPROM和WDT一体化电路,DC,DC电路选用功率为2W的电源模块,VDl为状态指示灯,RS-485驱动器采用TI公司的65AI,S1176。~‰附匿~ 3.2.2数字量输入电路数字量输入电路如图3.7所示n’:DI一接三卷缓冲嚣图3.7数字量输入电路当跳线器JPl的1.2短路,跳线器Jlr2的1-2断开、2—3短路时,输入端DI+和DI-可以接一干接点信号。当跳线器JPl的1-2断开,跳线器JP2的1.2短路、2-3断开时,输入端DI+和DI.可以接一有源接点。在图3.7中,开关量输入端所用的电源为+24V,也可以是+15V或+5V电源,只需改变电阻Rl的阻值即可。3.2.2软件编程从站程序包括3个部分:SPC3的初始化程序,SPC3的中断处理程序和具体的I/O应用程序。程序采用结构化编程思想,以便于以后的功能拓展。SPC3的状态机如图3.8所示n”:在Power状态,从站能从2类主站接收报文来改变它的地址,然后从站_O进n入状态,等待参数化,S此et状S态lav从e站Ad可dWait以接收,.PunGet.CfgSlave_Diag报文。参数化完成后,从站进入wait_Cfg状态,等待ChkCfg报文,另外可以接收Slave_Diag,Set_Pnn,GeUC龟报文。如果ChkCfg完成后,从站将进入Data_Exch状态,进行数据通信。此时从站可接收WritingOutputs,Reading_Inputs,GlobalControl,Slave...Diag,ChkDiag,OeLCfg报文,若组态和数据交换不成功,就会返回到参数化阶段。WaitPrm在对从站进行组态时,必须要编写它的GSD文件,所谓GSD就是为了将不同的PROFIBUS产品集成在一起而以电子设备数据库文件方式提供的功能函数(如I/O点数、诊断信息、波特率、时间监视等).只有有了GSD文件在COMPROFIBUS组态软件下才 能对从站组态,否则主站无法识别从站。图3.8SPC3的状态机从站初始化阶段的顺序如图3.9,从站主程序流程图如图3.10。SPC3初始化包括设置SPC3允许的中断,写入从站识别号和地址。设置SPC3方式寄存器,设置诊断缓冲区,参数缓冲区,配置缓冲区,地址缓冲区,初始长度,并根据以上初始值求出各个输入输出缓冲区的指针及辅助缓冲区的起始地址和范围。中断程序流程图如图3.11。DP主站DP从站圃圜t丛茎堡墅堡塑!幽!墅.。图3.9从站初始化阶段的顺序数据输入和输出处理(输入输出相对于主站而言)及用户诊断数据输入放在应用程序循环中。在一个应用循环中,由应用来刷新输入BUF中的数据。保障所有输入数据是最新的数据。而SPC3在接收到由PROFIBUS主站传送的不同输出数据时,会产生输出标志位(同样位于中断请求字单元),CPU通过在应用循环中轮循标志位来进行接收主站数据。对于特定应用的诊断信息,需要实时传递到主站。主应用程序在应用循环中判断是否有可用的诊断BUF存在,~一一一一一~ 当有空闲BUF时应用程序输入诊断信息,并请求更新。对于实时性要求严格的系统,应采用中断方式进行输出数据和诊断数据处理‘”“。图3.10主程序流程图图3.Il中断程序流程图当上位机向从站发送数据后,在输出缓冲器中我们可以得到的输出数据,在SPC3中有3个输出缓冲器,通过下面的程序段我们可以确定输出数据缓冲器的起始地址:;¨}更新输出数据指针,结果放到USER_OUUTR中”’ADROUT.MoVDPr艮嘏忸WDOUTBUFFERCMDMOVXA,@DPTRJBACC.3.ADEND.『NBACC.2ADENDANLA.#03HADDA.#lAHMOVDPL。ACLRAADDCA,#SPC3HIGH:计算输出缓冲区指针MOVDPH.AMOVXA,@DPTRMoVB.#08HMULABMOVR6A32. MOVA,BADDCA.撑SPC3}玎GHUSEROUTPTR.AUSEROUTP呵1i十1.R6ADEND:RET有3个输入缓冲器用于数据输入,当我们向上位机发送数据时,首先应该计算出输入数据缓冲器的起始地址,计算方法如下:;..+更新输入数据指针,结果放到USER:矾PTR中+++ADRIN:MOVDPTR,扪'CeWDnqBUFFERCMDMOVXA,@DPTRDPTR,#DINBUFFERSMMOv】(A,@D蹦tIU屺AⅪ℃Al球CARRcAANLA#03HCJNEA,#OOH.ADRINlL姗D琢ETADRINl:ADDA.拌1EHDI’LACLRAADDcA,#SPC3_HIGH:计算输入缓冲区指针DPH.AMOVXA,@DPTRB,#08HMULABR6.AA.BADDCA.撑SPC3HlGHUSERINPrllLAUSERn呵P,rR+1.R6仆限E11I强T3.3FBPRO.4MV/3TC智能节点的设计FBPRO-4MV和FBPRo-3TC智能节点是PROFIBUS-DP分布式测控系统的重要组成部分,本节将详细介绍它们的设计方法. 3.3.1FBPRO-4MV/3TC智能节点的主要技术指标1.采用流行的ADAM模块结构设计,同时测量四路毫伏电压信号或三路热电偶信号,并带有热电偶冷端补偿。2.毫伏信号输入范围:±19.5mV、±39mV、±78mV、±156mV、±312mV、±625mV、±1250mV、±2500mV;3.热电偶类型:K、E、B、s、J、R、T、N;4.通过组态软件配置所需信息:每一路可选择输入信号范围和类型及对应的工程量量程、上下限报警点等,并记忆于智能节点上的非易失性存储器中;5.根据所配置的信息,智能节点实现自动测量;6.采用高性能,高精度、内置PGA的具有24位分辨率的△.∑模数转换器ADSl216进行测量,传感器或变送器信号可直接接入;7.具有低通滤波,过压保护及热电偶断路或短路检测功能;8.单片机部分与模拟信号测量之间采用了光电隔离措施,抗干扰能力强;9.可安装于测量现场,通过PROFIBUS-DP总线将每一路的测量信息传送到监控计算机,方便地组成智能分布式系统。3.3.2FBPRO.4MV/3TC智能节点的硬件组成FBPRO-4Mv/31℃智能节点选用P89C51RD2为微处理器,以西门子Siemens公司生产的SPC3芯片为PRoFIBus协议核心,配以11公司生产的高精度24位A.∑模数转换器ADsl216、Xieor公司的WTD电路X5045、总线驱动器65ALsll76、DC.DC电源模块等组成,其通信部分见3.1.4和1.1.5节。该智能节点采用德国Siemens公司的pROFmus-DP现场总线控制器SPC3与65ALSll76总线驱动器组成通信接口,实现网络通信,以构成智能分布系统。SPC3内部有地址锁存器,不需要外部另外加锁存器,ALE信号可以分离出SPC3所需的地址信号,通过ll位地址总线和8位数据线访问SPC3内部1.5k的RAM。SPC3需要的48MI-Iz的晶振通过一有源晶振提供。使用P10通过软件复位SPC3。SPC3中断输出接P89C51RD2的外部中断玳To。使用查询方式进行主站和从站的通信。SPC3内部集成了完整的DP协议,其内部的1.5k的RA/Vt由双口RAM控制器实现双口RAM的功能,作为与软件,程序的接口。中断控制器通知处理器各种中断信息和错误事件,中断控制器最多可存储16个中断事件.中断事件传 送到共同的中断输出,中断控制器不提供优先级和中断矢量,通过屏蔽寄存器使能,由响应寄存器响应。SPC3有一个共同的中断输出,可以通过读取中断寄存器来判断中断源的性质,中断源包括New_SSA_Data、New—Prm—Data、New、GC等。内部集成了一个看门狗,看门狗.Cfg.DataNewcommandSPC3定时器有三种状态baudsearch、baud_control、dpcontrol。如果应用处理器有故障,则禁止PROFlBUS-DP通信,因而不影响外部设各。在UART中,SPC3能自动调整波特率,总线定时器直接控制串行总线的时序。65ALSll76是专门为PROFIBUS通信提供的总线驱动器,允许的最高通信速率可达35MHz,完全可以满足PROFIBUS总线12MHz的要求.另外在条件比较恶劣的场合必须使用光电隔离器,能满足12MHz通信速率的光电隔离器推荐使用HCPL772l。3.3.3测量原理测量电路如图3.12所示:ADsl216内部主要由模拟多路开关(MUX)、输入缓冲器(BUF)、可编程增益放大器(PGA)、二阶△-z调制器、可编程数字滤波器、16个状态,控制寄存器、128字节RAM、串行SPI接口、两个8位DAC、内部参考电压产生器以及时钟发生器等组成。输入缓冲器(BuF)用于在信号通路中隔离开关电容器阵列与外部电路。在没有输入缓冲器时,ADSl216的输入阻抗为5MQ,当使用ADSl216内部缓冲器时,其输入电压的波动减小,输入电流增大。其内部输入缓冲器是通过B1)I啊璁引脚和内部ACR寄存器的BUFFER位共同控制的。AD81216内部的可编程增益放大器(PGA)的放大倍数可以通过ACR寄存器设定为l到128,增益步长为2。ADSl216内部的调节器是一个二阶△-芑系统。调节器以.五m∞的频率工作,fuoo时钟频率来自外部时钟fosc。频率的分割来自设置寄存器(SETUP)的SPEED位。设计时,通过SPEED位为l或0可以将fuoo的频率设置为fosc/256或fosc/128。通过数字滤波器可提高ADC的转换精度和分辨率。数字滤波有一定的建立时间。ADSl216内部可以分为快速建立、sinc2和sine3三种滤波方式。快速方式建立时阋最短,但滤波精度也最低,而sine3的建立时间最长,但滤波精度最高。 AINIV∞DGNDAIN2SCLK^矾3AIN4DINAn盱AIN6西A矾7^INSDOUTDRDYVmtc"Vm,oorVm图3.12测量原理图ADSl216提供有两种参考电压供给方式,上电默认参考电压是内部2.5V。参考电压的选择可通过SETUP寄存器的设置来完成。内部参考电压可选择1.25V。另外ADSl216还具有8位可编程I/O数字口及2路可编程恒流源。它采用SPI总线与微处理器交换信息。微处理器利用其Pll、P12、P13(SPI总线)及P14、P15向ADSl216发送启动操作命令字并选择某一模入通道。例如:当第一路的差分输入信号为±19.5mY时,可选择PGA为128,在ADSl216内部将±19.5mY放大成±2500mV进行模数转换。转换后的数字量再由微处理器发出读操作命令字,读取24位转换结果,一般有效位为16位,其余各路的测量原理与此类似。如果第一路到第三路中有一路为热电偶输入信号时,第四路不能用作外部测量,这时将JPI和JP2跳线器短路,利用集成温度传感器AD590进行热电偶冷端补偿,AD590为恒流源器件,温度变化l℃时,其输出电流变化1uA,当温度为O℃时其输出电流为273“A,RSl为取样电阻,从RSl取得的mV信号在ADSl216内部进行放大处理,并转换成数字量,微处理器读取转换结果后计 算出对应的冷端补偿温度T眷后,根据T眷查表得到当前所选择的热电偶对应的mV输出v眷。若此时测得的热电偶所对应的mV输出为v一,则实际温度值对应的mV输出为:V寓=V小r*,由V女查表即可得到实际的测量温度,实现了热电偶的冷端补偿,其补偿范围宽、精度高。石季为ADSl216的为片选信号,用于多片相连,西夏万矿为数据准备好信号,当输出低电平时表示A/D转换结束,转换结果可以通过SPI接口从24位的数据输出寄存器DOR中读出。ADSl216每次启动时,均可以进行偏移校准和增益校准,由微处理器通过操作命令字完成。VREFOUT为内部参考电压输出,VREv+、V灶F.为外部参考电压输入,本例中,将、7kFoLrr接至VREV+,、,r赃F-接地,使用内部参考电压(2.5V)。VRCAP引脚外接一个O.1lIf的独石电容对内部参考电压进行滤波。3.3.4测量和通信程序设计ADSl216片内提供了16个可直接读写的寄存器用于配置其工作状态,可直接配置数据格式、PGA、通道选择等。ADSl216还提供了128个字节的RAM,通过指令直接读写。其配置数据含义如表3,2,测量程序框图如图3.13。表3.2配置数据寄存器名称配置数据配置数据含义采用内部2.5V参考电压,数据传SETUPOCH输首先传送MSBACR04HPGA=16,不使用恒流源A/D转换结果数据格式为单极性,M/DEClooH范围为000000H~TFFFFFH选择差分输入通道01HAINI—AIN223H选择差分输入通道AIN3一AIN4MUX选择差分输入通道45HAIN5·AIN6选择差分输入通道67HA玎q7-AIN837 图3.13测量程序框图在寄存器配置结束后,可以通过配置多路选择寄存器MUX选择差分输入通道,启动A/D转换。另外,ADSl216的DRDY信号变为有效后表明数据转换结束,结果保存在24位的数据输出寄存器DOR内,可以通过专用的指令利用SPI接口读出A/D转换结果。系统主程序为循环结构,主程序的流程图如图3.14所示。在上电以后,首先对微处理器和SPC3进行初始化工作。微处理器的初始化包括对定时器、中断优先级、中断类型的设置;SPC3的初始化包括设置从站站地址及状态寄存器等,然后从站检查该参数数据是否与主站发送的参数化报文数据一致,只有完全一致,从站才能对从站进行配置,设置从站的输入输出字节数、诊断字节数以及它们的指针等。然后,将此配置数据与主站的配置数据进行比较,完全一致后启动SPC3,从站进入与主站的数据交换阶段,这一过程也就是DP从站的状态机。由于SPC3内部集成了完整的PROFIBUS.DP协议,因此用户不用参与处理pROFIBUS状态机,P89C51RD2根据SPC3产生的中断,对SPC3接收到的主站发出的输出数据转存,将计算出的电压信号处理后通过SPC3发给主站,并根据要求处理外部诊断等,主站可选用Siemens公司的CP5611或PLC。中断程序主要用来处理PRM报文、CFG报文、SSA报文等。 图3.14主程序流程图3.4设备数据库(GSD)文件PROFIBUS设备具有不同的性能特点,为达到PROFIBus简单的即插即用配置,PRoFIBus设备的特性均在电子设备数据库文件(GSD)中有具体说明。标准化的GSD数据将通信扩大到操作员控制级。使用基于GSD的组态工具可将不同厂商生产的设备集成在同一总线系统中,组态过程非常简单,用户界面、友好。在本设计中,使用的组态软件是COMPROFIBUS和STEP7。1.GSD文件的组成GSD文件可以分为三个部分嘲(1)一般规范这部分包括生产厂商和设备名称,软硬件版本号,支持的 波特率,可能的监视时间间隔等;(2)与DP主站有关的规范包括所有只适用于DP主站的各项参数,如连接从站的最多台数、加载和卸载能力等;(3)与DP从站有关的规范包括与从站有关的所有规范,如输入输出通道的数量和类型、诊断测试的规格以及输入,输出数据一致性等信息。2.GSD文件格式GSD文件是ASCII文件,可以用任何一种ASCII编辑器编辑,如计事本,UltraEdit等,也可使用PROFIBUS用户组织提供的编辑程序GSDEdit.GSD文件是由若干行组成,每行都用一个关键字开头,包括关键字及参数(无符号数或字符串)两部分。GSD文件中的关键字可以是标准关键字(在PROFIBUS标准中定义)或自定义关键字,标准关键字可以被PROFIBUS的任何组态工具所识别,而自定义关键字只能被特定的组态工具识别。3.一个GSD文件的例子#ProfibusDP;DP设备的GSD文件均以此关键字开头GSDRevision=l;GSD文件版本VendorName=“sdu":设备制造商ModelName=“DPSlave":产品名称Revision="Version01”:产品版本RevisionNumber=Ol:产品版本号(可选)IdentNumber=0x0008;产品识别号ProtocolIdent=0:协议类型(0表示DP)StationType=0:站类型(O表示从站)FMSSupp=0:不支持FMS,纯DP从站HardwareRealease=“HWl.o";硬件版本SoitwareReal锻=‘‘sWl.o”:软件版本9.6supp=l:支持9.6kbps波特率19.2supp=1:支持19.2kbps波特率93.75supp=I:支持93.75kbps波特率187.5supp=l;支持1$7.skbps波特率500supp=1:支持500kbps波特率1.5Msupp=l:支持1.5Mbps波特率3M_.supp=1:支持3Mbps波特率6Msupp=1:支持6Mbps波特率12M_supp=1:支持12Mbps波特率‘MaxTsdr9.6=60.9.6kbps波特率时最大从站延迟时间MaxTsdr19.2=60;19.2kbps波特率时最大从站延迟时间MaxTsdr..93.75;60;93.75kbps波特率时最大从站延迟时间MaxTsdr187.5;60;187.5kbps波特率时最大从站延迟时间 MaxTsdr500=looMaxTsor1.5M=1503M;2506M#45012M=800RepeaterCtrlsig=024VPins=0ImplementationType=‘‘sPC3”FreezeModeSupp=0SyncModeSupp=0AutoBaudSupp=1SetSlaveAddSupp=0FailSafe=0MaxUserPrmDataLen=0UserPrmDataLen=0MinSlaveIntervall=22ModularStation=lMaxModule;lMaxInput协;8MaxOutputLen=8MaxD啦Len=16MaxDiagDamLen=6SlaveFamilv;3Module;“Modulel”Ox23.Oxl3EndModtdeModule;"Module2”Ox27.oxl7EndModule3.S小结;500kbps波特率时最大从站延迟时间;1.5Mbps波特率对最大从站延迟时闯;3Mbps波特率时最大从站延迟时间;6Mbps波特率时最大从站延迟时间;12Mbps波特率时最大从站延迟时间;不提供RTS信号;不提供24V电压;采用的解决方案:不支持锁定模式;不支持同步模式;支持自动波特率检铡:不支持改变从站地址;故障安全模式类型:最大用户参数数据长度(0-237):用户参数长度:最小从站响应循环间隔:是否为模块站;从站最大模块数;最大输入数据长度;最大输出数据长度;最大数据的数据长度(输入输出之和);最大诊断数据长度(6-244):从站类型:输入输出各4字节:输入输出各8字节目前实现PROFIBUS-DP协议有多种方式,通常选用专门的协议芯片来实现。SPC3是Siemens公司生产的目前用的最多的芯片,因此在我们的设计中也选用了SPC3。了解SPC3的内部结构是非常重要的,在此基础上还介绍了SPC3与CPU的接口皂路、SPC3与RS-.485的接口电路,并且最后以FBPRO-8DI和FBPRO-4MV/3TC为例说明了从站设备的开发以及GSD文件的编写。41 第四章模糊PID控制在DP总线分布式系统中的应用研究4.1传统PID控制器按偏差的比例、积分和微分进行控制(简称PID控制)是连续系统控制理论中技术最成熟,应用最广泛的一种控制技术。由于其算法的鲁棒性强、可靠性好、且算法简单,被广泛应用于化工、冶金、电力、机械等工业过程控制中,近年来,随着现代控制理论的研究和应用的深入发展,人们又推出了许多新型PID控制器,如智能型PID自整定控制器等。PID调节按其调节规律可分为比例调节、比例积分调节和比例积分微分调节等。下面分别说明它们的作用“1。4.1.1比例调节比例调节的控制规律为:砸)=群口(,)(4.1)比例调节是一种最简单的调节规律。比例调节作用大小,除了与偏差印)有关外,主要取决于比例系数峰,Jcp越大,调节作用越强,动态特性也越好。反之,巧越小,调节作用越弱。但对于大多数惯性环节,≮太大,会引起自激振荡。比例调节存在静差,是有差调节,对于扰动较大,且惯性也较大的系统,很难兼顾动态和静态特性。4,1.2比例积分调节比例调节的缺点是存在静差,影响调节精度。消除静差的有效方法是在比例调节的基础上加积分调节,构成比例积分(PI)调节。其控制规律为啪=即(f)+丢fe(f)dfl(4.2)对于PI调节器,只要有偏差e(0存在,积分调节就不断起作用,对输入偏 差进行积分,使调节器的输出及执行器开度不断交化,直到达到新的稳定值而不存在静差,所以PI调节器能够将比例调节的快速性与积分调节能够消除静差的作用相结合,从而改善系统的特性。既克服了单纯比例调节存在静差的缺点,又避免了积分调节响应速度慢的缺点,即静态和动态特性均得到了改善,所以,应用比较广泛.4.1.3比例积分微分调节在一般的系统调节中,为了改善调节品质,往往把比例、积分、作用结合起来,形成PID调节器,其控制规律为:∽矧砸)+砉胁出+毛掣微分三种(4.3)在PI调节的基础上,增加了微分调节。能反映偏差信号的变化趋势(变化速率),并能在偏差信号值变得太大之前,在系统中引入一个有效的早期修正信号,从而加快系统的动作速度,减少调节时间。在工程实践过程中,人们对PID算法做了许多改进,形成了多种PID算法,使控制效果大大改善.比如:积分分离式的PID算法、微分先行PID算法、抗积分饱和PID算法等.4.2模糊控制系统使用PID控制用来解决线性定常系统是十分有效的,但是在工业生产中,却有相当数量的过程难以实现自动控制,如大滞后、非线性的复杂工业对象、难以获得精确数学模型或模型非常粗糙的工业系统等,对于这些控制对象仍然是非常熟练的操作人员凭借非常丰富的实践经验,用手工操作来控制复杂的生产过程。模糊控制就是这种模仿人的思维方式和人的控制经验来实现控制的一种控制方法瞄l。4.2.1模糊控制系统的组成和其它控制系统一样,模糊控制系统也是由被控对象、模糊控制器、执行器等组成。又由于模糊控制算法是一种新型的计算机控制算法,因此,模糊控制系统又具有数字控制系统的一般结构形式,模糊控制系统的基本组成如图4.1 所示Ⅲ’。图4.I模糊控制系统组成框图模糊控制系统一般可以分为四个部分:(1)被控对象被控对象可以是线性或非线性的,定常或时交的,也可以是单变量或多变量的,有时滞或无时滞的,以及强干扰的等多种情况。被控对象缺乏精确数学模型的情况宜选用模糊控制,但也不排斥有较精确的数学模型的被控对象,也可以采用模糊控制方案。(2)执行机构可以是电气的、气动的和液压的。包括各类交、直流电机,伺服电动机,步迸电动机,各类气动调节阀,液压马达、液压阀等,(3)输,V输出接口装置模糊控制器通过A/D(模/数)转换接口从被控对象获取数字信号量,并将模糊控制器决策的输出数字信号经过D/A.(数,模)转换接口,将其转换为模拟信号,送给执行机构去控制被控对象。在I/O接口电路中,还包括必要的多路转换开关、采样保持器等电路。(4)测量装置任何一个计算机反馈控制系统都必须有传感器。传感器是将被控对象或各种过程的被控量转化为电信号的一类装置。被控量往往是非电量,如温度、压力、流量、速度,位移等。传感器在反馈控制系统中占有十分重要的地位,它的精度往往直接影响整个控制系统的精度。(5)模糊控制器这是模糊控制系统的核心部分,它实际上是一台微型计算机,根据系统需要,既可选用系统机,又可选用单板机或单片机。包括模糊化接口、解模糊化接口和模糊推理决策部分。模糊化接口(Fuzzificafion)的作用是将模糊控制器输入量的精确值转换为相应模糊语言变量值。此相应语言的变量值是由对应的隶属度来定义.解模糊化接口(Defi.tzzification)的作用是将模糊推理后得到的模糊集转换 为用作控制的数字量的值。推理决策部分的作用是根据输入模糊量和知识库进行模糊推理,求解模糊关系方程,并获得模糊控制量的功能部分。4.2.2模糊控制器的设计一般说来,人对误差最敏感,其次是误差的变化,再次是误差变化的速率,由于模糊控制器的控制规则是根据人的手动控制规则提出的,所以模糊控制器的输入变量也可以有三个,即误差、误差的变化和误差变化的速率,输出量选控制的变化暗1.通常将模糊控制器输入变量的个数称为模糊控制器的维数,一维模糊控制器的输入变量是系统误差E,输出变量是系统的控制量的变化值u。由于仅采用偏差控制,所以系统的动态性能不佳,一般用于一阶被控对象。●二维模糊控制器的输入量是偏差量E和偏差的变化E,以控制量的变化值【,作为输出量,它比一维控制器有较好的控制效果,且易于计算机的实现,是目前广为采用的一类模糊控制器。三维模糊控制器实现起来非常复杂,一般很少采用。它是采用系统偏差E、●_偏差的变化E和偏差的变化率E作为输入量,以控制量的变化U作为输出量。模糊控制器的设计一般包括以下几项内容:(1)确定模糊控制器的输入输出语言变量,包括语言值及其隶属度函数;(2)设计模糊控制器的控制规则;(3)确立模糊化和去模糊化的方法;(4)选择模糊控制器的输入变量及输出变量的论域并确定模糊控制器的参数,如量化因子和比例因子.4.2.2.1模糊控制的输入输出语言变量及其隶属度函数1.选择描述输入输出变量的语言值语言变量是以自然或人工语言的词、词组或句子作为值的变量。如可以将“温度”划分为“低”、“中”、“高”几个档次。“温度”是语言变量,“低”、“中”、“高”是语言变量的语言值。一般来说,一个语言变量可以任意的划分成几个语言值,但并不是将它分的越多、越细,控制的精度就会越高。对于模糊控制器的输入可以用以下七个语言值来描述:即{负大,负中,负小,零,正小,正中,正大),用英文字母 首个字母缩写为{NB,NM,NS,ZO,PS,PM,PB}.选择较多的词汇描述输入、输出交量,可以使制定的控制规则更加具体,但是控制规则相应变得很繁杂,这样会降低模糊控制的优越性。选择词汇过少,使得描述变量变得粗糙,导致控制器的性能变坏.一般情况下,选择上述七个词汇,也可以根据系统需要选择三个或五个语言变量。描述输入、输出变量的语言值都具有模糊特性,可用模糊集合来表示.因此,模糊概念的确定性问题就直接转化为求取模糊集合隶属函数的问题。2.定义各模糊变量的模糊子集定义一个模糊子集,实际上就是要确定模糊子集的隶属函数。隶属函数有时是以连续函数的形式出现,有时是以离散的量化等级形式出现。将确定的隶属函数曲线离散化,得到了有限各点上的隶属度,便构成了一个相应的模糊变量的模糊子集。常见的隶属函数类型有:三角形型、高斯型等。下面介绍以下三角形型的隶属函数。这种隶属函数的形状和分布由三个参数表示,一般可描述为:f(X,a,6,c)=0.x击Hardware.-->HWConfiP[)∞q->opfion->importGSD中导入所需要的从站GSD文件。使所需的从站图标出现在硬件组态选择导航栏中. 硬件组态过程在硬件组态环境下进行,首先添加系统导轨(0)UR,否则不能进行组态工作。添加导轨后,开始在导轨上组态系统。导轨序号1放置电源,配置时可以忽略:导轨序号2必须放置CPU,比如CPU314,可以使用右键选择添加或在导航栏中选择添加自己所需的CPU型号;导轨序号3用来扩展导轨,不需要扩展时,系统保留。导轨序号4及其它序号放置相应的通信模块。比如本系统采用的通信模块CP342.5。设置CP342-5为DPmast盯,在General选项中,设置PROFIBUS地址、网络通信参数及其MPI的地址。在Addresses选项中,记下inputs/outputs的开始地址,供以后软件编程时使用。这时在在导轨序号3处会出现一条总线标志(黑白间隔线)如图5.6中所示.下一步就可以添加我们所需的从站了,从导航栏中选择我们所需的从站,用鼠标拖到总线标志处即可,双击从站,在其属性里可以修改相应的参数,比如从站地址。配置从站输入输出参数时,如图5.6所示,首先左键单击选中从站lO,然后在导航栏里,PMM2000的下一级选项中,选择所需的参数,如图中选中的80ByteIn,7ByteOut,双击即可完成从站配置。组态好的系统图如图5.6所示:图5.6系统硬件组态结构图 5⋯242PLC软件编程组态完成后,要进行PLC的编程a因为使用了CP342-5,所以要调用FCI、FC2和FC3函数。FCl用于将输出数据写入CP342—5,FC2用于从CP342-5读取数据,FC3用于诊断.下面仅简单介绍一下DPRECV的使用方法。该功能块主要负责接收连接在地址为CPLADDR标注的CP342_5上各个从站的数据参数。例如图5.7中所示的CPLADDR=W#16#100·“DPRECV”功能块具体参数说明;EN:输入使能信号。CPLADDR:CP3425的组态地址,该地址在硬件组态时获得。例如CPLADDR=W#16撑100。RECV:接收数据的存储位置、类型、长度说明。例如P#DB21.DBX0.0BYTE2120,P;系统定义;DB21表示存储区为数据块21;DBX0.0中X说明存储类型不定,0.0是存储开始的位置,BYTE2120表示定义存储长度为2120字节(BYTE).ENO:输出信号使能。接收完毕,使能有效。ERROR:0表示正常,1表示出错;M0.1表示该参数的存储位置,该参数通常与NDR和STATUS联合使用,表示功能块状态。NDR:0表示出错,l表示有新的数据参数正确接收。STATUS:该参数通常与ERROR和NDR联合使用,表示功能块状态。例如:当NDR=I;ERROR=0:STATUS=0000H时,表示新的数据参数已经正确接收;当NDR=0;ERROR=I;STATUS=SF22H时,表示读取参数时数据区定义出现错误(比如太小)。具体更多参数的组合意义,参考STEP7中的系统帮助-DPSTATUS;分布的DP工作状态显示,CP342.5作为主站,第0位必须为0;第l位为0说明所有从站工作正常,为l说明存在不能正常工作的从站。MB20表示该参数的存储位置;具体意义请参考STEP7的系统帮助。“DPRECV”ENENOCPLADDRNDRERRORSTATUSRECVDPSTATUS图5.7“DPRECV”功能块示意图 在STEP7项目中,OBI用来编写系统循环调用的主程序的,编写的部分代码如图5.8所示:图5.8系统硬件组态结构图在主程序中,我们需要接收或发送数据,这就涉及到了另一种功能块一DB块。顾名思义,DB块是用来存储系统数据的。创建一个新的DB块,可以用右键选择->insertnewobject.->datablock完成。双击DB块来定义DB块的存储参数,如存储类型,存储区大小等。如果我们想观察DB存储区中的数据,则需要我们建立一个数据变量表VAT,建立过程同样通过右键.->insertnewobjcct->variabletable即可。编辑完毕,在线运行,即可观察到存储区的数据内容。5.2.43监控软件设计把PC机上的CP5611卡通过MPI方式连接CPU314。就可以将CPU314的DB块中的数据读取到PC机。通过PCAut03.6监控软件对各种电力参数进行显示、记录、处理、打印等。首先添加I/O设备驱动,选择Siemens的S7.300/400(MPI),定义好设备名称和MPI地址,然后在数据库组态中定义为各个变量,每个变量对应于DB块中的相应单元。运行后就能从实时数据库系统中看到上传的数据。变电站系统的开发示意图如图5.9所示:71 5.3小结图5.92#变电站低压系统图PROFIBUS现场总线能把不同厂商生产的任何符合此标准的设备集成在同一系统之内,这就是系统的开放性,PROFIBUS总线结构多种多样,组态软件和监控软件可以随着用户的要求而改变。主站可以使用PC机和PLC等,从站使用任何公司生产的符合PROFIBUS协议的设备,组态软件可以使用COMPROFIBUS和STEP7等,监控软件可以使用W'mCC、PCAuto、Famcvicw等。本章重点介绍了PROFIBUS—DP网络集成的多种方案,另外还具体阐述了济南机场的PROFIBUS-DP现场总线电压监控网络的设计。 第六章结论及展望现场总线是用于现场仪表与控制系统和控制室之间的一种全分散、全数字化、智能、双向、互联、多变量、多点、多站的通信网络,被誉为自动化领域的计算机局域网。以现场总线为基础,形成了现场总线控制系统,也就是FCS系统在工业领域发挥着举足轻重的作用。目前存在着为数众多的现场总线,至今尚未统一,并且都在各个领域发挥着重要的作用。国外总线产品的研发己趋于成熟,应用范围也日益广大,而我国在这方面还处于相对落后的地位。过程现场总线(ProcessFieldBus,P砘0FmuS)系统是为制造业、楼宇和过程自动化提供统一解决方案的系统,是现场总线国际标准IEC61158的类型3。PROFIBUS作为很有前途的一种现场总线,己成为我国机械部的行业标准。本课题剖析了PROFIBUS协议,包括物理层,数据链路层和应用层,以及各层之间如何通过服务原语进行交互。在查阅了大量有关资料和文献的基础上,学习和掌握了PROFIBUS.DP现场总线从站节点的软硬件设计和系统设计,从站节点具有现场总线良好的开放性,并且通过了严格的测试,已和其它公司生产的带有PROFIBUS.DP接口的设备一起应用于上海F1赛车场和济南机场。另外本课题还设计开发了测控系统的各个从站,包括FBPRO.8DI、FBPRO.8DO、FBPR0.6RL、FBPRO.8AI、FBPRo-4AO、FBPRO.3TC、FBPRO.4RTD和FBPRO.PID。上述从站再配以PLC或CP5611卡组成分布式现场总线测控系统,并且在多种主站、组态软件和监控软件组成的软硬件平台上进行了测试且效果良好。从站的设计采用Siemens公司生产的SPC3协议芯片,SPC3集成了PROFIBUS-DP物理层和数据链路层大部分的功能,SPC3的工作方式、中断使能、缓冲区的配置、从站地址等通过内部的寄存器进行设置。SPC3内部带有1.5kB的双口RAM,作为用户和上位机通信的接口。在掌握了SPC3详细工作原理的基础上,用汇编语言实现了各个从站节点的编程,包括通信程序和数据采集处理程序,还编写了各个从站节点的GSD文件,并且在PC机上编写了从站的测试程序。另外,课题中还将模糊控制的最新技术应用于现场总线产品的开发。在设计PID智能节点的过程中,将模糊控制技术和传统PID控制技术相结合实现了自适应模糊PID控制,能够在线调整KP、KI和K.D。通过和传统的PID相比较,证明是一中非常好的控制方法,尤其适用于被控对象的特性参数和结构不易描述的系统中,并且单片机的实现算法很简单。根据熟练操作者的经验把模糊控 制规则写入存储器,在普通的单片机中就可以实现模糊化、模糊推理决策和解模糊化,能够满足一般控制系统中实时性的需要。就现场总线的发展前景而言,各个现场总线的厂商都将自己的现场总线技术和工业以太网相结合,比如德国2001年发布的ProfiNET、美国洛克威尔自动化公司的EtherNet/IP都是结合了工业以太网发展的最新技术,相信也会成为自动化厂商研究的重点,我们国内的科研院所和研究机构应该紧跟时代潮流,掌握核心技术,开发出有自主知识产权的现场总线和工业以太网产品。 参考文献【l】李正军.计算机测控系统设计与应用【M].北京:机械工业出版社,2004:344-362,543—553【2】李正军.现场总线及其应用技术D川.j匕京:机械工业出版社,2005:301-390【3】阳宪惠.现场总线技术及其应用嗍.北京:清华大学出版社,1999:1.15f4】郑文波等.现场总线技术综述阴,机械与电子,1997,5:4.10【5】夏继强等.工业现场总线技术的新进展阴.北京航空航天大学学报。2004,30(4):359-362【6J余华军.现场总线技术及其发展阴.浙江电力,2004,3:30-33同缪学勤.新版IEC61158现场总线标准概论啊.仪器仪表标准化与计量,2004,2:18-22,25【8】魏庆福.现场总线技术的发展与工业以太网综述叨.工业控制计算机,2002,15(1):1-5【9】章猛等.PROFIBUS现场总线技术与PC控制叨.信息技术,2002,10:28.29,58【10】付晓梅等.MC68340用于Profibus现场总线通信协议管理【J】.工业控制计算机,2002,14(2):34-36【11】PROFIBUSSpecificationEN50170Volume2[M].SIEMENSAC‘1998:7.138[121JB/'r10308.3-2001测量和控制数字数据通信工业控制系统用现场总线第三部分:PROFIBUS规范.中国机械工业联合会.2001:1.82【13】ASPC2/HARDWARE[M].SIEMENSAG,1999:7-11【14】SPC3SiemensPRI姗UsCon缸oHer[M].SIEMENSAG,2000:8.90【15】IMl83·IPROFIBUSInterfaceModulefM].SIEMENSAG,1996:4-14【16】IMl80PROFIBUSInterfaceModule[M].SIEMENSAG,1996:5.65【17】张强.采用SPC3设计Profibus-DP智能从站阴.自动化仪表,2005,260):15.18【18】李正军.基于Profibus.DP现场总线的智能数据采集节点的设计川.山东大学(-r学版),2003,33(4):429-432,453【19】王福来等.采用SPC3的智能型PROFIBUS.DP现场总线接口的开发叨.电气传动,2002,2:51.54f20】钱琳琳等.符合PROFIBUS-DP协议的开关量管理器【刀.北京机械工业学院学报5002,17(1):17-20【2l】郁佳敏等.用8032设计PROFIBUS智能化DP从站阴.自动化仪表,2001,22(5):9-10,14 [22】DeviceDescriptionDataFilesGSD[M'].SIEMENSAG,1998:4--40[23】诸静等.模糊控制原理与应用【M】.北京:机械工业出版社,1995:194-312【24】冯冬青.模糊智能控制[明.北京:化学工业出版社,1998:88.93【25】廉小亲.模糊控制技术iM].北京:中国电力出版社12003:10-53【26】易继锴等.智能控制技术【嗍.北京:北京工业大学出版社,1999:177.214【27】沈军民等.用C51实现模糊PID控制器的软件设计阴.自动化与仪表,2003.3:12.13【28】朱摩西.模糊PID控制踟J】.工业控制计算机,1996.3:19.20【29]张国良等.模糊控制及其MATLAB应用【嗍.西安:西安交通大学出版社。2002:1.84[301魏巍.MATLAB控制工程工具箱技术手册咖.北京:国防工业出版社,2004.212-258【31】刘金琨.先进PID控制及MATLAB仿真咖.北京:电子工业出版社,2003:1-45,63-79【321COMPROFIBUSManure[M].SIEMENSAGl999:%96【33】DPProgrammingInterface咖.SIEMENSAG,2003:8.192[34】CommissioningPCStations-ManualStart[M].SIEMENSAG,2002:11.127【35】王华等.VisualC.忖6.0编程实例与技巧咖.北京:机械工业出版社,1999:1.117【36】徐晓刚等.Visualc++入门与提高[M】.北京:清华大学出版社,2002:1.229【37】李奇.W'mdows环境下的VisuslC++MFC编程技术与实例p哪.北京:北京大学出版社,1995:1-220【38】力控用户手册[h叼.北京三维力控科技有限公司.2004:76.166【39]STEP7V5.0使用入门嗍.SIEMENSAQ.1998:%103[40】S7-300和S%400语句表编程参考手册嗍.SIEMENSAGl998:141-208【41】深入浅出西门予s7—300PLC[M].北京航空航天大学出版社,2004:16-48 致谢值此论文结束之际,我谨怀诚挚的心情向那些帮助过我的人们致以谢意。感谢导师李正军教授的悉心教导。在这几年里和李老师相处的过程中,他在学习上和生活上都给予我极大的关怀和帮助。他渊博的专业知识、严谨的治学态度、平易随和的待人原则令我终身铭记,在此向他表示衷心地感谢和崇高地敬意.今后无论是在生活中,还是在工作中,我都将牢记李老师的教诲,在各方面严格要求自己,努力作一名对社会有用之人。感谢山东大学控制科学与工程学院所有的领导、老师和工作人员多年来对我学习上的指导、生活上的关心。感谢罗永刚和王朝霞同学,他们在生活上关心我,在学习上帮助我,同时感谢师兄师姐师弟师妹和朋友们对我的支持。感谢家人和妻子长期以来对我的无私关爱,在他们的支持下,我才得以顺利的完成学业。

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

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

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