MATLAB平台下的PLC实时控制系统分析.doc

上传人:牧羊曲112 文档编号:3981239 上传时间:2023-03-30 格式:DOC 页数:31 大小:620.50KB
返回 下载 相关 举报
MATLAB平台下的PLC实时控制系统分析.doc_第1页
第1页 / 共31页
MATLAB平台下的PLC实时控制系统分析.doc_第2页
第2页 / 共31页
MATLAB平台下的PLC实时控制系统分析.doc_第3页
第3页 / 共31页
MATLAB平台下的PLC实时控制系统分析.doc_第4页
第4页 / 共31页
MATLAB平台下的PLC实时控制系统分析.doc_第5页
第5页 / 共31页
点击查看更多>>
资源描述

《MATLAB平台下的PLC实时控制系统分析.doc》由会员分享,可在线阅读,更多相关《MATLAB平台下的PLC实时控制系统分析.doc(31页珍藏版)》请在三一办公上搜索。

1、MATLAB平台下的PLC实时控制系统分析PLC程序设计姓名:华祥 学号:94203109 班级:03942第一章 文献综述1.1 组态软件概述随着现代工业生产技术、工艺过程日趋复杂,生产设备及装置的规模不断扩大,企业生产自动化程度要求也越来越高,出现了各种工业自动控制系统。早期的工控系统多是专用的封闭系统,针对不同的生产工艺过程需要编制不同的控制件,工控软件开发周期长、困难大,工业被控对象稍有变动就必须修改源程序,且很难与外界进行数据交互,升级和增加功能都受到限制。新型的工业控制系统正以标准的工业计算机软、硬件平台构成的集成系统取代传统的封闭式系统,它具有适应性强、开放性好、易于扩展、经济、

2、开发周期短等优点。通常可以把这样的系统划分为控制层、监控层、管理层三个层次结构。其中监控层对下连接控制层,对上连接管理层,它不但实现对现场的实时监测与控制,且在自动控制系统中完成上传下达、组态开发的重要作用。监控层的硬件以工业级的微型计算机和工作站为主,目前更趋向于工业微机;监控层的软件则是指组态软件。“组态 (Configuration)”的含义是使用软件工具对计算机及软件的各种资源进行配置,达到让计算机或软件按照预先设置自动执行特定任务、满足使用者要求的目的。组态软件是指一些数据采集与过程控制的专用软件,它是在工控系统监控层一级的软件平台和开发环境,是面向监控与数据采集的软件平台工具,具有

3、丰富的设置项目,使用方式灵活,功能强大。组态软件能以灵活多样的组态方式(而不是编程方式)提供良好的用户开发界面和简捷的使用方法,其预置的各种软件模块可以非常容易地实现和完成监控层的各项功能,并能同时支持各种硬件厂家的计算机和工/0设备,与高可靠的工控计算机和网络系统结合,可向控制层和管理层提供软、硬件的全部接口,进行系统集成。组态软件有着工业产品和软件产品的共同特点,其最突出的特点是实时多任务。例如,数据采集与输出、数据处理与算法实现、图形显示及人机对话、实时数据的存储、检索管理、实时通讯等多个任务要在同一台计算机上同时运行。组态软件的主要目的,是使使用者在生成适合自己需要的应用系统时,不需要

4、修改软件程序的源代码。下面是组态软件主要解决的问题:(1) 如何与采集、控制设备间进行数据交换;(2) 使来自设备的数据与计算机图形画面的各元素关联起来;(3) 处理数据报警及系统报警;(4) 存储历史数据并支持历史数据的查询;(5) 各类报表的生成和打印输出;(6) 为使用者提供灵活多变的组态工具,可适应不同应用领域要求;(7) 最终生成的应用系统运行稳定可靠;(8) 具有与第三方程序的接口,方便数据共享。自动化工程设计人员在组态软件中只需填写一些事先设计的表格,再利用图形功能把被控对象(如反应罐、温度计、锅炉、趋势曲线、报表等)形象地画出来,通过内部数据链接把被控对象的属性与I/O设备的实

5、时数据进行逻辑连接。当由组态软件生成的应用系统投入运行后,与被控对象相连的I/O设备数据发生变化后会直接带动被控对象的属性发生变化。若要对应用系统进行修改,也十分方便,这就是组态软件的方便性。从以上可以看出,组态软件具有实时多任务、接口开放、使用灵活、功能多样、运行可靠的特点。一般来说,工业过程控制系统的组态有如下一些内容:(1)控制组态控制组态是最重要的。控制组态又分为过程控制组态和顺序控制组态。过程控制组态主要针对连续量。当然,为了构成一个完整的过程控制系统,加入开关量以进行报警等事件处理也是必要的。顺序控制则主要是针对开关量的控制。在过程控制中,算法库是很重要的一部分,在建立控制算法库时

6、,将控制软件的算法和参数分离,并将各控制算法功能块固化在EPROM中,在进行组态时生成一个文件,该文件与各个算法相对应,并且含有该控制算法执行所必须的参数,这个文件被装到现场控制站的RAM内存中,因此更改容易,这样,我们就可以将控制算法模块编成标准形式,并且可以应用于很多应用系统中。在现场控制站中,诸多控制算法模块通常以一个库文件的形式因化在EPROM中,每个算法的入口和入口参数是己知的,这样,在执行时,CPU只是顺序地根据下装到RAM中的文件而依次调用各个子程序,返回参数。根据文件中的内容写回实时数据库中或输出。可见,过程控制组态是利用某种方法将适当的控制算法模块连接起来完成特定的控制功能。

7、过程控制组态一般在现场站进行。现场站的软件系统是整个组态软件中极其重要的一部分,一般现场站软件采用模块化结构设计,分为执行代码部分和数据部分,执行代码固化在EPROM中,而数据则保留在RAM中,开机时由网络装入。现场控制站的执行代码分为两部分:周期性执行部分和随机执行部分。周期性执行部分有:周期性数据采集、转换处理、越限检查、控制算法的周期性运算、周期性的网络数据通信以及周期性系统状态检测等等,一般由硬件时钟实时激活;随机执行部分主要是一些实时功能如信号故障处理、事件顺序信号处理、实时网络数据的接受等随机信号,一般由硬件中断激活.执行代码部分的各个功能模块大致可以分为输入输出处理模块、控制回路

8、运算模块等。输入信号的处理分为开关量输入处理,模拟量输入处理和脉冲量输入处理。开关量的输入主要用于进行报警检测,这在控制回路的构成中是必不可少的一环,它由开关状态决定。模拟量的输入处理则要复杂些,一般要经过尖峰信号抑制和数字滤波之后才可以送入实时数据库,同时,还要进行输入转换处理,将信号转换成工程单位所对应的物理量。模拟量的输出处理是对信号进行二进制编码,然后送入D/A转换通道即可,开关量的输出则相对简单,取出该位的值与其他各输出位一同输出即可。此外现场控制站还可能有脉冲量输入处理模块等。控制回路运算模块是形成控制规律的核心部分,目前的组态软件中大多包含如下的基本功能模块:加减乘除开方算法模块

9、、PID调节模块、选择控制模块等,其中PID为最常用且为广大工程人员掌握的控制算法之一,几乎所有的组态软件都包含各种类型的PID算法,如理想PID调节器、积分分离式PID调节器、不完全微分PID调节器、带死区的PID调节器等。从而可以满足不同的生产应用的需要。当然,控制算法中还有许多更高级一些的控制算法,如超前滞后补偿算法、SMITH算法、以及目前己开始应用的自适应控制算法、模糊控制算法等等。然而,仅有这些控制算法是不够完成一个实际系统的控制功能的,还要很多附加的功能才能保证系统的高可靠性和安全性,这些附加功能包括:控制死区和限幅提供PID算法的死区值和对输出进行限幅;控制方式的选择:有自动方

10、式、手动方式和串级方式等几种方式;控制算法跟踪,无扰切换,这个功能的加入是由于在工业现场控制中,很多工业过程需要复杂的控制策略才能达到最佳的效果,因此需手动到自动,自动到手动等切换。此外,在复杂控制系统中,串级控制的加入和切除也经常发生。在不同的控制方式进行切换时,一般不希望有较大的控制输出扰动,所以需要加入控制算法跟踪来实现控制方式之间的无扰切换,保证整个控制系统的可靠性和安全性。顺序控制的组态与过程控制的组态类似,在上位机进行组态,生成一个下装的目标文件,该目标文件下装到现场站,由现场站去执行。而在现场站中则固化了顺序控制的若千基本单元,如与或非逻辑运算、定时器和计数器、移位寄存器,从而构

11、成一个控制系统。(2) 数据库生成、趋势显示和报表技术在组态软件的构成中,数据的记录和分析也是重要的部分,因此数据库也占有很重要的地位,它分为实时数据库系统和历史数据库系统。实时数据库系统可将数据通过网络下装到现场控制站,也可将现场控制站的数据变为标准格式,通过网络传送给上位机。通过调用或检查实时数据库的信息,可及时地对系统发生的各种问题作出相应反应,历史数据库系统是将一段时间内的数据存储起来,进行趋势变化分析,同时也可以将一段时间内的重要数据组织起来,汇成表格以便于管理人员进行各种高层次的分析。(3) 显示部分显示部分是控制系统必不可少的功能之一。工业流程图画面可以使操作人员不必时刻在排列的

12、仪表盘上检查各仪表的数据或巡视整个过程的运行情况,只需轻松地坐在CRT显示终端前即可观察整个过程的工作情况。同时,还具有支持各种趋势曲线,历史曲线,棒图等功能。目前国内比较流行的国产工业自动化通用组态软件是组态王(KingView)。组态王配有加密锁,支持工程加密;驱动程序较为丰富,如支持DDE、板卡、OPC服务器、PLC、智能仪表、智能模块等;支持ActiveX控件、配方管理、数据库访问、网络功能、冗余功能;其扩展性强,可与管理计算机或控制计算机联网通信。作为人机接口的智能软件包,组态王是一种流行的PC机上建立工控的对象,它以Windows98/WindowsNT4.0中文操作系统为平台,具

13、有Windows的图形功能完备、界面一致性好和易学易用等特点;它为用户提供了从设备驱动、数据采集到数据处理、流程控制、动画显示、报表输出等组态工作的操作平台;它具有多任务、多线程功能,其系统框架采用VC+编程,提供丰富的设备驱动构件及丰富的图库元件。利用组态王软件可以大大减少工控软件的开发重复性和单一性,并可利用PC机丰富的软件资源,与组态王融合进行二次开发,达到扩展功能、提高智能化程度和提高参数精度的目的。1.2 组态软件数据交换技术与以往用计算机语言开发软件相比,组态软件具有成功率高,可靠性强,开发周期短,便于更改、扩充、升级等优点。但组态软件并非面面俱全,从对组态软件的使用和研究情况看,

14、这些问题主要表现在以下几个方面:(1) 在组态软件没有提供外部设备驱动程序时,它将无法实现和外部设备的通讯,这给用户在开发使用上造成了很大的不便。(2) 在数据库处理上,组态软件虽然提供了与各种数据库连接的有关数据库操作函数,但不能提供直接对多个表的操作或多个字段的操作。不能提供关系数据库所要求的直接数据库表格。(3) 在报表统计处理功能上,组态王虽然提供了这方面的功能,但报表的格式不能满足不同的需要,而且不能完成较为复杂的数据计算与处理。这就需要使用其它软件来进行数据库扩充或控制算法模块的调用。目前这方面的研究主要是基于以下几种技术:(1) DDE 标准DDE (Dynamic Data E

15、xchange)是在Windows平台下两个应用程序之间实时交换数据的有效方法,是基于消息的并且利用通常的Windows中的通信联络系统进行内部进程间的相互通信的方法。它采用客户/服务器模式,使用共享内存来实现进程之间的数据交换以及使用DDE协议获得传递数据的同步。DDE协议是不同应用程序之间共享数据的一个协议。(2) OPC 标准OPC (OLE for Process Control)定义了一个开放的接口,在这个接口上基于PC的软件组件能交换数据。这个标准是基于微软的OLE(现在称为ActiveX),COM, DCOM技术,由一系列用于过程控制和制造业自动化应用领域的标准接口、属性及方法组

16、成。由于得到了微软的NT技术的支持,OPC为多种多样的过程控制设备提供了公共的接口,为过程控制和工厂自动化提供真正的即插即用软件技术,使得过程控制和工厂自动化的每一系统、每一设备、每一驱动器能够自由地连接和通信,而与过程中的控制软件或设备无关。(3) ODBC 标准ODBC (Open Database Connectivity),即开放的数据库互连,是Microsoft建议并开发的数据库访问API标准,目的是实现异构数据库的互联,为异种数据库系统提供一个框架,实现了最大限度上的互操作性。ODBC标准规定了开放数据库互联的所有标准。支持ODBC标准的数据库产品都提供基于自己DBMS (Data

17、 Base Management System)的ODBC接口程序,如Access ,FoxPro, SQL server, Sybase, Oracle等均支持ODBC,支持ODBC标准的应用程序透过DBMS的ODBC接口程序,可以直接访问DBMS中的数据项,进行读写操作。第2章 MATLAB与组态软件的通信工业过程自动控制水平的提高,要求采用比传统PID更先进的高级控制功能,而这些高级控制功能是通用组态软件难以实现的。所以在针对控制要求较高的对象时需要开发新的监控软件以扩展原有系统的功能。组态王提供了友好的人机交互界面,强大的通讯功能,但是它的计算能力不强,难以实现复杂的控制策略。MATL

18、AB以矩阵和向量为基本数据单位,提供了强大的科学运算、灵活的程序设计流程、便捷的与其他程序接口,高效率的复杂算法等,并且它还提供大量的标准算法库,如系统辨识、神经网络、小波分析、数字信号处理等。但MATLAB本身也存在一些不足,如人机界面设计不方便、没有提供与计算机硬件的接口、无法进行端口操作,并且MATLAB一直被定位在科学计算、数学建模与仿真上,不能实现实时监控,始终未能应用于实际的控制系统中。如果使用组态王作为系统主控,进行实时数据采样、动态工艺图显示、数据汇总等工作,同时MATLAB作为后台应用程序进行控制算法的处理,这将有利于发挥组态王和MATLAB各自的优势,实现复杂系统的控制,在

19、实际的工程中必将达到较好的控制效果。这种混合编程技术中,最关键的是组态王和MATLAB之间的实时数据通讯。组态王和MATLAB数据通讯的方式主要有动态数据交换技术(DDE)和OPC、ODBC技术,本课题采用实时性较强的DDE通讯技术来实现两者之间的通讯。2.1 DDE概述DDE (Dynamic Data Exchange,动态数据交换)是Windows环境提供的一种基于消息的进程Ml通信(Inter Process Communication, IPC)的方法,它采用客户/服务器模式。进程间通讯包括进程之间和同步事件之间的数据传递。DOE使用共享内存来实现进程之间的数据交换以及使用DDE协议

20、获得传递数据的同步。DOE协议是一组所有的DOE应用程序都必须遵循的规则集。DDE协议可以应用于两类DDE应用程序:第一类是基于消息的DDE,第二类是动态数据交换管理库(DDEML)应用程序(使用动态连接库(DLL)。DDE应用程序可以分为4种类型:客户、服务器、客户/服务器和监视器。DDE会话发生在客户应用程序和服务器应用程序之间。客户应用程序从服务器应用程序请求数据或服务;服务器应用程序响应客户应用程序的数据或服务请求;客户/服务器应用程序既是客户应用程序又是服务器应用程序,它既可发出请求又可提供信息;监视器应用程序用于调试目的。DDE应用程序可拥有多重进发会话。DDE协议规定会话中的消息

21、必须同步控制,但应用程序可以在不同的会话之间异步切换。DDE应用程序采用3层识别系统:应用程序名(pplication)、主题(Topic)和项目名(Item)。应用程序名位于层次结构的顶层,用于指出特定的DDE服务器应用程序名。主题名更深刻地定义了服务器应用程序会话的主题内容,服务器应用程序可支持一个或多个主题名。项目名更进一步确定了会话的详细内容,每个主题名可拥有一个或多个项目名。DDE工作原理见图2-1。DDE客户DDE服务器图2-1 DDE工作原理与结构建立DDE会话后,客户应用程序和服务器应用程序可通过3种链接方式进行数据交换。3种链接方式为:冷链接(Cold Link)、温链接(W

22、arm Link)和热链接(Hot Link)。冷链接客户应用程序申请数据,服务器应用程序立刻给客户应用程序发送数据,服务器应用程序处于主动地位;温链接服务器应用程序通知客户应用程序数据项发生了变化,但并没有将已变化的值发送给用户应用程序;热链接当数据项发生变化时,服务器应用程序立即把变化后的值发送给客户应用程序,服务器应用程序处于主动地位。2.2 MATLAB 的DDE功能MATLAB作为客户应用程序时,支持文本格式的数据传送,可以使用MATLAB中的DDE 客户端模块所提供的函数与服务器进行数据通信 。MATLAB提供了7个客户函数, 它们分别是DDEinit函数建立MATLAB 和服务器

23、对话,如果建立成功,则返回1个通道号,以后任何其他DDE 操作均通过此通道进行; DDEadv函数建立链接; DDEreq函数用于从服务器请求数据; DDEpoke函数则从MATLAB向DDE 服务器应用程序发送数据; DDEcxec函数用于向DDE 服务器应用程序发送执行命令; DDEunadv函数是释放链接; DDEterm函数用于终止DDE服务器应用程序与MATLAB 之间对话。MATLAB的DDE通信功能需要通过编写M文件完成,此外作为客户应用程序,MATLAB还必须定义服务器应用程序的3个标识符。2.3 组态王与MATLAB的通讯设计为便于理解,这里以某控制系统为例进行说明。在组态王

24、界面上设定给定值信号,同时它采集仿真PLC的数据作为被测量,并将这2个数据实时传送给MATLAB 软件,由该软件进行复杂控制运算得到控制量输出给组态王进行显示和输出。在组态王中定义3个变量,其中1个为被测量x(1),连接设备为仿真PLC; 1个为内存变量x(2),即给定值信号,可通过界面进行修改,上述2个变量允许DDE访问。另1个变量为I/O型变量,连接DDE 设备。变量x作为MATLAB的触发变量,只要其值变化,就通知MATLAB进行控制算法运算,并返回控制变量y 。MATLAB的DDE通信必须通过编写S函数实现。MATLAB与组态王通信的仿真框图见图2-2 。图2-2 MATLAB与组态王

25、通信的仿真框图其中, InitDDE是DDE初始化函数,model模块是控制算法模块,DDEInput是MATLAB接收数据函数,其发送数据函数为DDEOutput 。(1) DDE初始化函数InitDDEglobal channel ; %channel 是DDE初始化返回的标识通道值。channel = DDEinit (view,tagname) ; %DDE通信初始化,指定“view”为应用程序名,“tagname”为主题名if channel = = 0 disp (DDE initialization failed !) ;else disp (DDE initialization

26、 succeeded !) ;end (2) MATLAB接收数据函数DDEInputFunction sys , x0 , str , ts = DDEInput (t,x ,u,flag)reg1 =仿真 PLC. RADOM100; %在组态王中指定变量寄存器RADOM100reg2 =仿真 PLC. STATIC100; %在组态王中指定变量寄存器STATIC100switch flag ,case 0 sys ,x0 ,str ,ts = mdl Initializesizes;case 3x(1) = DDEreq (channel , reg1) ; %从寄存器中采集过程变量,并

27、赋值给变量x(1)x(2) = DDEreq (channel , reg2) ; %从寄存器中采集过程变量,并赋值给变量x (2)for i = 12sysi = x(i)endcase 1、2、4、9sys = end(3) MATLAB发送数据函数DDEOutputFunctionsys , x0 , str , ts = DDEInput (t,x,u,flag)switch flag ,case 0 sys ,x0 ,st r ,t s = mdl Initializesizes ;case 3DDEpoke (channel ,data, y) ) ; 将控制量y发送回组态王中,d

28、ata 为发送数据的项目名case 1、2、4、9sys = end特别说明的是,应在控制算法模块中,引入2个函数。第1个为DDEadv() ,其作用是与DDE服务器建立势链接;第2个为根据控制策略编写的函数。当组态王程序中变量x 的内容一旦发生变化,将立即引起控制策略函数的执行,并通过指令将运算结果发送回组态王中。2.4 组态王监控画面的实现组态王主要由TouchMak和TouchVew两大模块构成。前者是开发环境,后者是运行环境。用户在开发环境中设计并制作动画画面,进行相关变量的定义,然后进行动画连接,使画面中的图形对象与实时数据库中的数据变量间建立一种关系,数据库中的变量受外部设备的控制

29、,外部设备如PLC、智能模块等通过各自的驱动程序,与实时数据库中的对应变量建立联系,最后切换到运行环境,就可实现动画效果。由于组态王遵循Windows下标准动态数据交换(DDE)协议,所以借助于DDE和外设驱动程序,组态王可自动将外设的状态及时传递给数据库中的数据变量,用户无须考虑以往程序设计中繁杂的通信问题。组态王与外设交换数据的示意图如图2-3所示。组态王还为用户配备了丰富的命令语言,如应用程序命令语言、热键命令语言、事件命令语言和变量改变命令语言等。用户可以使用这些语言非常方便地对画面进行控制。动画演示实时数据库驱动程序驱动程序驱动程序驱动程序模 块PLC智能模块其他工控设备图2-3 组

30、态王与外设交换数据的示意图利用组态王进行系统开发的过程如下:(1) 配置I/O设备。组态王支持的硬件设备包括:可编程控制器(PLC),智能模块、板卡、智能仪表、变频器等。工程人员可以把每一台下位机当作一种设备,不必关心具体的通信协议,只需在组态王的设备库中选择相应设备的类型,然后按照“设备配置向导”的提示一步步完成安装即可,使驱动程序的配置更加方便。组态王的驱动程序采用ActiveX技术,使通讯程序和组态王构成一个完整的系统,保证运行系统的高效率。已配置的I/O设备在工程浏览器的设备节点中分类列出,用户可以随时查询和修改。(2) 构造数据库。数据库是“组态王”最核心的部分,是联系上位机和下位机

31、的桥梁。在数据库中存放的是变量的当前值,变量的集合称为“数据词典”,数据词典记录了所有用户可使用的数据变量的详细信息。工程人员根据需要建立内存变量和I/O 变量,配置变量的类型和各种属性,并将I/O变量与相应的I/O设备寄存器连接。(3) 制作图形画面。根据生产操作要求建立自己需要的画面,利用组态王提供的丰富图库,在每个画面上生成互相关联的静态或动态图形对象。画面包括具备一定功能的按钮及菜单、实时数据及历史数据显示、实时趋势曲线、历史趋势曲线、报警显示等。(4) 定义动画连接。建立动画连接使画面上的图形对象与数据库的数据变量之间建立了一种特定的对应关系,当变量的值改变时,图形对象可以按动画连接

32、的要求改变颜色、尺寸、位置、填充百分数等。也可以通过图形对象改变数据变量的值。(5) 网络设置。组态王完全基于网络的概念,是一种真正的客户机/服务器模式,支持分布式历史数据库和分布式报警系统,支持TCP/IP协议。工程人员根据系统需要设立I/0服务器、报警服务器、登录服务器、WEB服务器和客户端。(6) 运行和调试。在开发过程中,可以不断运行实时运行环境TouchVew,利用组态王信息窗口运行和调试在画面制作系统中建立的图形画面。第三章 PLC实时监控系统3.1 PLC通讯连接方式PLC与上位机一般采用RS-232接口的异步串行方式。C200HS是OMRON 公司在C200H 的基础上推出的一

33、种新型PLC ,比C200H有许多优点,其中一个主要的特点就是在CPU单元上,增加了一个内置的RS-232连接器,PLC不用再配置专用的通讯模块,就可以很方便地和外部设备进行串行通讯,图3-1是C200HS与上位机通讯的接口连线。图3-1 通讯连接3.2 PLC通讯协议OMRON C200HS通过RS-232接口与上位机通讯有两种方式:其一,上位机始终具有初始传送优先权,所有的通讯均有上位机来启动,C200HS总是处于被动状态,其二,命令由PLC 发至上位机,此时PLC 拥有传送权,我们设计的监控系统中主要采用第一种方式。PLC与上位机的数据通讯是以“帧”为单位进行的,帧的格式如图3-2、3-

34、3 所示,命令帧由上位机发送给PLC ,应答帧为PLC 接收到命令帧后自动向上位机发送的应答信号。图3-2 命令帧图图3-3 应答帧在帧的传送格式中“, ”为起始符号;节点号为PLC的编号(00 - 31) ,由PLC 的DM6648、DM6653 设置,我们只有一个下位机PLC ,则其节点号为00 ;识别码说明帧的功能,例如,RD和WD 分别为读和写DM数据区的内容; FCS为2字符的帧的检查顺序码,即从帧起始到帧报文结束(FCS)之前数据异或运算后的结果,用来检查帧的传送结果; 3和CR为终止符,表明帧结束。例如命令00RD20100003FCS 3 CR 表示计算机要求读出PLC中DM数

35、据区D2010开始的3个通道的数据内容,应答帧00RD004A02344D001C FCSCR中的结束吗为“00”,表明通讯有效,接受的3个通道的数据分别为4A02、344D、001C(16进制) 。3.3 PLC通讯程序设计在PLC与上位机通信之前,必须对RS232通讯端口进行初始化,使两者按相同的格式通讯。初始化参数包括波特率、起始位、数据位、停止位和奇偶校验等。C200HS的RS-232通讯口一般设置为9600bps、1个起始位、7个数据位、2个停止位、偶校验,因而只需对上位机的RS232端口进行初始化即可。上位机的通讯程序用C语言设计,C语言提供了专门用于串行通讯的函数bios -co

36、m( ) ,其格式为int bioscom(int cmd ,char byte ,int port)port为上位机的串行口代码,port = 0为COM1 ,port = 1为COM2 ;byte为串行口初始化参数,当byte = 0XFE 时,设置的串行口通讯参数为:9600bps、1个起始位、7个数据位、2个停止位、偶校验,与C200HS串行口的通讯方式相同; cmd 为功能参数,cmd = 0 时初始化串行口,cmd = 1 时发送数据,cmd =2 时接收数据,cmd = 3 时读串行口的当前状态。bioscom( )返回值为一个2字节的整数,可以据此判别数据发送和接收是否成功,发

37、送数据时的最高位为“1”,表示发送出错,接收数据时的高位字节不为“0”,表示通讯有错,当高位字节为“0”时,其低位字节即为接收到的字符。通讯程序框图,如图3-3所示,由于每次传送数据时,单帧的最大数据容量为131个字符,因此当传送的数据超过131个字符时,应当在传送前分成若干帧,分段传送,第一帧和中间帧的结尾处用定界符(回车符CR) 替代终止符( 3 CR)。图3-4 通讯程序框图第四章 PLC控制系统应用实例4.1 污水处理系统的原理采取(计算机)+PLC控制模式。PLC作为下位机控制器,通过RS232通讯总线,直接与上位计算机(工业计算机)进行通讯。PLC通过与上位计算机的通讯,可以修改P

38、LC中的各种参数数据,PLC也同时向计算机发送测得的参数数据,以便计算机显示实时参数数据和存入数据库,同时通过计算机上安装的组态王组态软件对控制现场进行组态。即用PLC对对象进行控制,而同时在现场计算机上安装组态软件组态王对PLC以及操作现场进行控制及监测。4.2 控制系统设计 在进行控制系统设计之前,首先根据控制系统的工艺流程以及控制系统的具体要求和最终目标对控制系统设备进行选择。4.2.1 控制系统设备选择及简介控制系统主要的硬件设备如表4-1所示:设备名称(型号)数量(个)可编程序控制器(PLC)CPM2A-30CDR-A1模拟量I/O单元CPM2A-MAD022RS232C通信适配器C

39、PM2-CIFO11A1系列人工智能工业调节器( AI-708T )2表4-1 控制系统主要硬件设备4.2.2 可编程序控制器(PLC) 可编程序控制器(Programmable Logic Controller ),简称PLC,是一种以计算机(微处理器)为核心的通用工业控制装置,目前己被广泛地应用于工业生产的各个领域。本系统采用由日本OMRON生厂的CPM2A系列的小型整体式PLC-CPM2A-30CDR-A, 18个输入12个继电器输出。早期的可编程序控制器只能进行开关量的逻辑控制,现代可编程序控制器采用微处理器(Microprocessor)作为中央处理单元,其功能大大增强,它不仅具有逻

40、辑控制功能,还具有算术运算、模拟量处理和通信联网等功能。a.整体式PLC的结构整体式PLC是将中央处理单元(CPU)、存储器、输入单元、输出单元、电源、通信接口等组装成一体,构成主机。另外还有独立的I/O扩展单元与主机配合使用。主机中,CPU是PLC的核心,I/O扩展单元是连接CPU与现场设备之间的接口电路,通信接口用于PLC与编程器和上位机等外部设备的连接。整体式PLC的基本组成如图4-2所示用户输入设备输入单元用户输出设备I/O扩展口外设接口输出单元中央处理单元CPU系统程序储存器用户程序存储器电源I/O扩展单元特殊功能单元图4-2 整体式PLC的组成示意图b.PLC编程软件 本系统中PL

41、C编程软件选用OMRON C/CV系列PLC Windows版编程软件CPT(SYSMAC-CPT)。它具有强大的编程、调试、监控功能和完善的维护功能,使程序开发及系统维护简单、快捷。采用的编程语言为梯形图语言。梯形图表达式是在原电器控制系统中常用的接触器,熔电器梯形图基础上演变而来的,它与电器操作原理图相呼应。它的最大优点是形象、直观和实用,为广大电气技术人员所熟悉,是PLC的主要编程语言。c.PLC基本单元的硬件配置日本欧姆龙的CPM2A系列PLC特点是超小型、高性能、高速度,且具有丰富的高级指令系统,执行一条逻辑指令的时间仅需1.72us,完全可以适用于污水处理中的过程检测与控制。表4-

42、3表明了CPM2A系列PLC的基本性能指标。项目性能输入输出控制方式循环扫描方式和即时刷新方式并用运算处理速度基本指令14种 LD指令=1.72us应用指令79种、139条 MOV指令=16.3us输入继电器(IR)IR00000IR00915输出继电器(IR)IR01000IR01915内部辅助继电器(IR)512点:IR20000IR23115(IR200IR231)特殊辅助继电器(SR)384点:IR23200IR25515(IR232IR255)定时器/计数器(TIM/CNT)128点:TIM/CNT000127数据存储器可读/写1002字:DM00000999、DM10221023故

43、障履历存入区22字:DM10001021只读456字:DM61446599PC系统设定区56字:DM66006655表4-3 PLC基本单元性能d.PLC模拟量输入输出模块的硬件配置在监控系统中采用了CPM2A-MAD02模拟输入模块(模拟量I/O单元),作为CPM2A的特殊功能模块,最多可以连接3台。该模块具有四个输入通道和一个输出通道,每个输入输出可以指定电压或电流输入输出。表4-4为该模块的性能表。输入通道数4输入信号范围010V、15V、420mA分辨率010V8位15V8位420mA8位输入形式差动输入最大输出信号电压输入:1M电流输入:250输出通道数1输出信号范围-10V10V、

44、010V、420mA分辨率-10V10V9位010V8位420mA8位最大输出电流电压输出5mA总输出电流21mA表4-4 模拟量输入输出模块性能e.RS232通信适配器在计算机与PLC进行RS232通信时,选择了RS232通信适配器作为外设端口和RS232口之间的电平转换,RS232通信适配器性能如表4-5所示。型号CPM1CIF01功能在外设端口和RS232C口之间作电平转换表4-5 RS232通信适配器性能4.2.3 AI系列人工智能工业调节器 AI系列人工智能工业调节器可支持热电偶、热电阻、线性电压/电流等多种输入,在本系统用来作为预酸化槽温度和反应器温度的显示和变送,所选型号为AI-

45、708T。其主要性能如表4-5所示。测量精度0.2级0.2FS分辨率热电偶、热电阻输入时1、0.1采样周期0.5s输出光电隔离的线形电流输出显示规格4位数码管显示表4-5 AI-708T主要技术指标4.3 控制系统的总体设计根据所选设备对控制系统进行设计。控制系统结构如图3-2所示。在本项目中,控制系统分为4层,设备层:即传感器、机电设备层;电器层:即智能仪表、在线仪器、采集/控制低端设备层;控制层:PLC集散型控制层;操作层:PC主控计算机,即中央控制室操作层。整个控制系统的结构模型如图5、图6所示。污水处理厂的监视控制方式应当考虑污水与污泥处理设施规模、布置、行事、扩建、维护管理体制、经济

46、性等方面的问题来选择。图5 控制系统结构 图6 控制系统结构模型为了提高效率,在小型污水处理厂中,应当引进远距离监视和自动控制方式。但考虑到建设费及维护管理体制,应尽可能选用简单的监视控制方式。图7-1是PLC控制系统的简单示意图。系统中采用日本欧姆龙公司的CPM2A系列PLC作为现场的控制设备,用于通过AD模块处理模拟信号。同时,PLC作为下位机控制器,通过RS232通讯总线,直接与上位计算机进行通讯。在组态画面中输入给定值到PLC中的数据存储器中与通过MAD02模拟量模块A/D转化后的数字量进行比较来确定PLC对执行机构的操作,从而形成一个闭环控制系统。给定值控制器(PLC)反馈装置执行结

47、构被空对象MAD02模块图7-1 PLC控制系统简单示意图CPM2A基本单元最多可进行10100点的控制,而在工厂污水处理装置中一般控制点为30点左右。运行速度方面,CPM2A CPU完成一条逻辑指令的运行速度仅为1.72us。完全可以胜任在工厂污水处理装置中的应用。CPM2A一MAD02是8位高精度模拟量输入输出模块。模块输入信号可以组态为DC+4+20mA , DC+1+5V 、DC0+10,相应数字输出范围为0255 (OOOOOOFF)。模块的AD转换速度为10 ms,分辨率为8位,综合精确度1%,模块采用光电耦合隔离(DC5OOV),使I/O端子和PLC间隔离。4.4 控制系统整体控制框图可编程控制器(PLC)CPM2A-30CDR-ARS232通讯适配器 CPM2-CIF01工业计算机CPM2A-MAD02-02

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 生活休闲 > 在线阅读


备案号:宁ICP备20000045号-2

经营许可证:宁B2-20210002

宁公网安备 64010402000987号