市场上控制类产品繁多,无论DCS还是PLC,均有很多厂商在生产和销售。对于PLC系统来说,一般没有或很少有扩展的需求,因为PLC系统一般针对于设备来使用。一般来讲,PLC也很少有兼容性的要求,比如两个或以上的系统要求资源共享,对PLC来讲也是很困难的事。而且PLC一般都采用*的网络结构,比如西门子的MPI总线网络,甚增加一台操作员站都不容易或成本很高。
DCS在发展的过程中也是各厂家自成体系,但大部分的DCS系统,比如横河YOKOGAWA、霍尼维尔、ABB等等,虽说系统内部(过程级)的通讯协议不尽相同,但操作级的网络平台不约而同的选择了以太网络,采用标准或变形的TCP/IP协议。这样就提供了很方便的可扩展能力。在这种网络中,控制器、计算机均作为一个节点存在,只要网络到达的地方,就可以随意增减节点数量和布置节点位置。另外,基于windows系统的OPC、DDE等开放协议,各系统也可很方便的通讯,以实现资源共享。
3、从数据库来说:
DCS一般都提供统一的数据库。换句话说,在DCS系统中一旦一个数据存在于数据库中,就可在任何情况下引用,比如在组态软件中,在软件中,在趋势图中,在报表中……而PLC系统的数据库通常都不是统一的,组态软件和软件甚至归档软件都有自己的数据库。为什么常说西门子的S7400要到了414以上才称为DCS?因为西门子的PCS7系统才使用统一的数据库,而PCS7要求控制器起码到S7414-3以上的型号。
4、从时间调度上来说:
PLC的程序一般不能按事先设定的循环周期运行。PLC程序是从头到尾执行一次后又从头开始执行。(现在一些新型PLC有所改进,不过对任务周期的数量还是有限制)而DCS可以设定任务周期。比如,*任务等。同样是传感器的采样,压力传感器的变化时间很短,我们可以用200ms的任务周期采样,而温度传感器的滞后时间很大,我们可以用2s的任务周期采样。这样,DCS可以合理的调度控制器的资源。
5、从网络结构发面来说:
一般来讲,DCS惯常使用两层网络结构,一层为过程级网络,大部分DCS使用自己的总线协议,比如横河的Modbus、西门子和ABB的Profibus、ABB的CANbus等,这些协议均建立在标准串口传输协议RS232或RS485协议的基础上。现场IO模块,特别是模拟量的采样数据(机器代码,213/扫描周期)十分庞大,同时现场干扰因素较多,因此应该采用数据吞吐量大、抗干扰能力强的网络标准。基于RS485串口异步通讯方式的总线结构,符合现场通讯的要求。
IO的采样数据经CPU转换后变为数据或实形数据,在操作级网络(第二层网络)上传输。因此操作级网络可以采用数据吞吐量适中、传输速度快、连接方便的网络标准,同时因操作级网络一般布置在控制室内,对抗干扰的要求相对较低。因此采用标准以太网选择。TCP/IP协议是一种标准以太网协议,一般我们采用100Mbit/s的通讯速度。
PLC系统的工作任务相对简单,因此需要传输的数据量一般不会太大,所以常见的PLC系统为一层网络结构。过程级网络和操作级网络要么合并在一起,要不过程级网络简化成模件之间的内部连接。PLC不会或很少使用以太网。
6、从应用对象的规模上来说:
PLC一般应用在小型自控场所,比如设备的控制或少量的模拟量的控制及联锁,而大型的应用一般都是DCS。当然,这个概念不太准确,但很直观,习惯上我们把大于600点的系统称为DCS,小于这个规模叫做PLC。我们的热泵及QCS、横向产品配套的控制系统一般就是称为PLC。
○说了这么多PLC与DCS的区别,但我们应该认识到,PLC与DCS发展到,事实上都在向彼此靠拢,严格的说,现在的PLC与DCS已经不能一切开,很多时候之间的概念已经模糊了。现在,我们来讨论一下彼此的相同(似)之处。
1、从功能来说:
PLC已经具备了模拟量的控制功能,有的PLC系统模拟量处理能力甚至还相当强大,比如横河FA-MA3、西门子的S7400、ABB的ControlLogix和施耐德的系统。而DCS也具备相当强劲的逻辑处理能力,比如我们在CS3000上实现了一切我们可能使用的工艺联锁和设备的联动启停。
2、从系统结构来说:
PLC与DCS的基本结构是一样的。PLC发展到,已经全面移植到计算机系统控制上了,传统的编程器早就被淘汰。小型应用的PLC一般使用触摸屏,大规模应用的PLC全面使用计算机系统。和DCS一样,控制器与IO站使用现场总线(一般都是基于RS485或RS232异步串口通讯协议的总线方式),控制器与计算机之间如果没有扩展的要求,也就是说只使用一台计算机的情况下,也会使用这个总线通讯。但如果有不止一台的计算机使用,系统结构就会和DCS一样,上位机平台使用以太网结构。这是PLC大型化后和DCS概念模糊的原因之一。
3、PLC和DCS的发展方向:
小型化的PLC将向更*化的使用角度发展,比如功能更加有针对性、对应用的环境更有针对性等等。大型的PLC与DCS的界线逐步淡化,直至完全融和。
DCS将向FCS的方向继续发展。FCS的核心除了控制系统更加分散化以外,特别重要的是仪表。FCS在国外的应用已经发展到仪表级。控制系统需要处理的只是信号和提供人机界面以及逻辑控制,整个模拟量的控制分散到现场仪表,仪表与控制系统之间无需传统电缆连接,使用现场总线连接整个仪表系统。(目前国内有横河在中海壳牌石化项目中用到了FCS仪表级采用的是智能化仪表例如:EJX等,具备**的控制水准)。
○如何正确对待PLC和DCS?
我个人从不强调PLC和DCS之间孰优孰劣,我把它们使用了一个新名词“控制类产品”。我们提供给用户的是用户的控制系统。绝大多数用户不会因为想使用一套DCS而去使用DCS,控制类产品必须定位在满足用户的工艺要求的基础之上。其实提出使用DCS还是PLC的用户大抵是从没接触过自控产品或有某种特殊需求的。过分强调这个东东只会陷入口舌之争。
从PLC与DCS之间的区别和共同之处我们了解了控制类产品的大抵情况。注意,作为*人士,我们自己不要为产品下PLC还是DCS的定义,自己的心理上更不能把产品这样来区别对待
62: FM350-1的锁存功能是否能产生过程中断?
FM350-1的锁存功能是不能产生过程中断,但是可以产生过零中断。
FM350-1的装载值必须为零,随者锁存功能的执行(DI的上升沿开始),当前的计数值被储存到另一地址然后置为初始值零,产生过零中断,在OB40中可以读出中断并相应的值。锁存值也可以从FM350-1的硬件组态地址的前4个字节中读出。
63: 在FM350-1中,怎样触发一个比较器输出?
FM350-1中自带的输出点具有*性、实时性,不必要经过CPU的映像区处理。输出点一般对应于比较器,首先在硬件组态中定义比较器输出类型,如:输出值为1或为脉冲输出,然后在程序中设置比较值。在FM350-1中,地址在通讯DB(UDT生成)块中为18(比较值1)、22(比较值2),类型为DINT,然后激活输出点28.0(DQ0)、28.1(DQ1),这样比较器就可以工作了。
64:在FM350-2中,工作号的作用是什么?
工作号是S7-300CPU与FM进行通讯的任务号,每次的交换数据只是部分数据交换,而非全部数据,这样可以减少FM的工作负载,工作号又分写工作号和读工作号,例如在FM350-2中DB1为通讯数据块,如果把写工作号12写入到DB1.DBB0中,把200写入到DB1.DBD52中,再调用FC3写功能,这样计数器的初始值为200,这里工作号10的任务号是写计数器的初始值,DB1.DBB0为写工作号存入地址,DB1.DBD52为计数器装载地址区,同样读工作号100为读前4路,101为读后4路计数器,读工作号存入地址为DB1.DBB2。 但写任务不能循环写,只能分时写入。
65:如果对于4-20 mA模拟量输入模块来说,小于4 mA后转换的数字量是多少?
如果小于4ma,那么将会是输出负值,例如 -1对应的是3.9995mA,而1.185 mA 时,这个数值是-4864 (10进制)但是如果小于1.185mA,如果禁止断线检测,这个值是8000(16进制)如果有断线检测,会变成7FFF(16进制)。
66:怎样对模拟量进行标准化和非标准化?
可以使用以下功能块:
1.在块FC164中,x和y都是整数。
2. FC165中x是整数,y是实数。
3. FC166中x是实数,y是整数。
4. FC167中x和y都是实数。
67:S7系列PLC之间经济的通讯方式是什么?
MPI通讯是S7系列PLC之间一种经济、数据量小的一种通讯,需要做连接配置的站通过GD通讯,GD通讯适合于S7-300之间,S7-300、S7-400、MPI之间一些固定数据的通讯。不用作连接的MPI通讯适用于S7-300之间、S7-300与400之间、S7-300/400与S7-200 系列PLC之间的通讯,建议在OB35(循环中断100ms)中调用发送块,在OB1(主循环组织块)调用接收块。
68:整个系统掉电后,为什么CPU在电源恢复后仍保持在停止状态?
整个系统由一个DP主站S7-300/400以及从站组成。而从站通过一个主开关被切断了电源。由于内部的CPU电压缓冲器,CPU 仍继续运行大约50ms到100ms。此阶段里 CPU 识别出所连接的从站的故障。如果没有编程OB86和OB122的话,CPU 就会因为这些有故障的从站而继续保留在停止状态。
69:在点到点通信中,协议 3964(R)和RK 512 之间的区别是什么?
这两个协议的主要区别在于消息报头和响应消息的不同。使用RK 512,提供有的数据完整性,程序 3964(R) 当传送信息数据时,程序 3964(R)将控制字符(安全层)添加到信息数据上。这些控制字符激活通信伙伴,检查数据是否全部接收,是否无错误。
70:当一个DP从站出故障,如何在输入的过程映像被清成“0”以前保存它们?
当一个DP从站出故障时,OB86(通过S7-300/400)被调用。可用下列方法“保存”输入的过程映像:
1. 把从站的所有输入循环地复制到一个独立的区里。
2.如果从站出问题,则 OB86 被启动。在此 OB 里你可设一个标志位来可防止进一步的循环复制操作。
3. 当从站返回总线后,你把 OB86 里的标志位复位。
71:对模拟量模块而言,如何处理未使用的通道?
如果模块带有MANA : 短接所有的未使用通道的M-到 MANA ,如果可能,连接MANA 到接地极,把模块的测量模式设置为: 0 - 20/ + -20mA. ,短接未使用的COMP+/COMP-. IC+ / IC-可以保持悬空。
如果模块不带有 MANA : 把所有未使用的通道M-连接到使用通道的M-.等在输入端UCM > 2.5V 时,连接所有未使用的 M-到cpu的接地或系统的接地. 把模块的测量模式设置为: 0 - 20/ + -20mA. ,短接未使用的COMP+/COMP-. IC+ / IC-可以保持悬空。
对于SM 331-7NF10-0AB0模块在4通道模式:禁止未用的通道,这些输入端悬空即可