7
西门子模块6ES7232-0HB22-0XA8质保
PLC作为一种的控制装置,在分布式系统中得到了越来越广泛的应用。在这种控制方式中,上位监控机系统是其中重要的组成部分。PLC可以多种方式如直接采用现有的组态软件与上位监迭机通信,但针对小规模的控制系统,找到一种价格比的通信方法,具有积的实际意义。本文就日本三菱公司生产的FX2可编程控制器与PC机通信方式的实现,从软、硬件两个方面来说明这个问题。
1 通信装置的硬件描述
PLC与PC机之间实现通道,可使二者互补功能上的不足,PLC用于控制方面既方便又,而PC机在图形显示、数据处理、打印报表以及中文显示等方面有很强的功能。因此,各PLC制造厂家纷纷开发了适用于本公司的各种型号PLC与PC机通信的接口模块。三菱公司开发的FX-232AW接口模块用于FX2系列PLC与计算机通信。还有与以太网连接的接口模块AJ71E71、与MAP网连接的接口模块AJ71M51-S1、与FAIS MAP网连接的接口模块AJ71M51M1等。不同的通信方式,有着不同的成本价格和不同的适用范围。在此介绍一种通过PC机的RS-232口与PLC进行通信的实现方法。
FX2系列PLC的编程接口采用RS-422标准,而计算机的串行口采用RS-232标准。因此,作为实现PLC计算机通信的接口电路,将RS-422标准转换成RS-232标准。
RS-232与RS-422标准在信号的传送、逻辑电平均不相同。
RS-232采用单端和单端发送器,只用一根信号线来传送信息,并且根据该信号线上电平相对于公共的信号地电平的大小来决定逻辑的“1”(-3~-15V)和“0”(+3~+15V);
RS-422标准是一种以平衡方式传输的标准,即双端发送和双端接收,根据两条传输线之间的电位差值来决定逻辑状态。RS-422电路由发送器、平衡连接电缆、电缆终端负载和组成。它通过平衡发送器和差动将逻辑电平和电位差之间进行转换(+2V表示“0”,-2V表示“1”)。
选用MAXIM公司的MAX202实现RS-232与TTL之间的电平转换。MAX202内部有电压倍增电路和转换电路,仅需+5V电源就可工作,使用十分方便;选用MAX490实现RS-485与TTL之间的转换。每片MAX490有一对发送器/,由于通信采用全双工方式,故需两片MAX490,另外只需外接4只电容即可。
PLC的RS-422接口配接DB-25型连接器,而PC机一般用DB-9型连接器。
将RS-232的RS、CS短接,这样对计算机发送数据来说,PLC总是处于就绪状态。也就是说,计算机在任何时候都可以将数据送到PLC内。又由于DR、ER交叉连接,因此,对计算机接收数据来说,等待至PLC处于准备就绪状态。www..cn
2 通信装置的软件描述
2.1 FX2系列PLC与计算机之间通信协议
FX2系列PLC与计算机之间的通信采用RS-232标准,其传输速率固定为9600bps,奇偶校验位采用偶校验。数据以帧为单位发送和接收。一个多字符帧由力所示的五部分组成,其中和校验值是将命令码ETX之间的的呢字符的ASCII码(十六进制数)相加,所得和的二位数。STX和ETX分别表示该字符帧的起始标起和结束标志。
FX2系列与计算机之间的通信是以主机发出的初始命令,PLC对其作出响应的方式进行通信的。共有0、1、7、8四种命令,上位机实现对PLC的读写和强行置位。通过ENQ、ACK和NAK,上位机协调与PLC的通信应答。
2.2 通信过程
采用Bland C编写主机与PLC的通信程序。对COM1口进行初始化,波特率为9600bps,奇偶校验位采用偶校验,七位有效数据。当计算机接收到来自PLC的应答字符ACK后,就可以进入数据通信了。电气自动化技术网www..cn
计算机可对PLC内各软设备进行读、写和强制ON/OFF操作。除开PLC的计时器和计数器的设定值采用常数时,以及文件寄存器内的数据,FX2系列PLC的所有开关量输入、输出以及各软件设备对计算机都是透明的。其操作时的多字符帧的格式如图3所示。但不同的操作在“多个字符”项内有所不同。例如,计算机对PLC的软设备Y20~Y37进行读操作,查装置地址表为00A2,读取2字节数据。
如传送的命令有错误,PLC返回NAK信号,本次操作失败,重新进行。
为了保证主机与PLC的通信准确无误,上位机也按通信协议进行和校。如接收的信息有误,则重新读取。如重复3次仍不行,则显示错误信息。
使用C语言很容易实现以上编程。
主机还可向PLC写数据,进行单点的强近置位和复位。
对于运行在控制和实验室环境飞速下本方案运行、、体积小、但是对于通信距离长,环境恶劣的发问,需加光电隔离等措施。
面两个程序中,输出Y3、计数器CTl02及内部通用继电器R0的逻辑条件均相同,仅仅是计数器CTl02所在语句位置发生了变化,而两段程序的运行结果就截然不同。这是因为CTl02对输出Y3的影响方式发生了变化。执行段程序时,将判断输出Y3的状态,再判断CTl02的状态,CTl02的状态变化只能在下一个扫描周期对Y3产生影响;而执行二段程序时,将判断CTl02的状态,再判断输出Y3的状态,CTl02的状态变化将在该扫描周期直接影响Y3的状态。
从以上讨论可以得出,由于PLC采用"串行"工作方式,所以即使是同件,在梯形图中所处的位置不同,其工作状态也会有所不同,因此在利用梯形图进行控制程序编制时,应对控制任务进行充分分析,合理安排各编程元件的位置,才能够为准确地实现控制。
三、PLC的编程元件
PLC的各种功能主要是通过运行控制程序来实现。编制程序时,需要合理使用PLC提供的编程元件(即软元件)。FPO型PLC中常用的编程元件有两种:位元件(bit)和字元件(word)。位元件实际上是PLC内存区域所提供的一个二进制位单元,又被称为软继电器,主要用作基本顺序指令的编程元件,如输入继电器Xn、输出继电器Yn、内部通用继电器Rn、定时(计数)器等,其参与控制的方式主要是通过对应触点的通断状态改变影响逻辑运算即输出。
字元件则为PLC内存区域内的一个字单元(16bit),主要用作功能指令和指令的编程元件,通常用以存放数据,如数据寄存器DTn,定时(计数)器的设定值SVn、经过值EVn等。字元件没有触点,通常以整体内容参与控制。
值得注意的是内存中的输入(X)区、输出(Y)区和内部通用(R)区,该区中的每个bit均可用作位元件,而且每16bit可构成一个字元件,如WRIO即是由16个位元件R100~R10F构成的字元件,该字元件中的内容一旦发生变化,这16个位的状态也随之发生改变。
WR0即为字元件,是左移位指令SR的编程元件,而Y0为输出软继电器的线圈,X0、X1、X2、X3则为输人软继电器的触点,其中4步的R4触点为位元件R4的常开触点,而位元件R4又是字元件WR0中的一位,因此其状态受限于WR0的移位结果。
四、顺序控制多步同输出的编程方法
顺序控制是生产现场常见的一类控制任务,步进指令是PLC指令库中于顺序控制的。步进指令编程时,根据工艺流程将程序划分为一个个立的程序段,执行时,CPU严格按梯形图编程顺序,只有执行完段程序后才能下一段程序,并在下一段程序执行之前,将程序段复位。并且在语法上要求各程序段所使用的输出不允许重复。这在解决顺序控制任务中有多步同输出的情况时,就带来了一定的困难。借助于内部通用继电器可方便解决这一难题。
这个控制任务每个循环的工作可以划分为八步,其中1步与5步动作相同,均为上升;3步和7步动作相同,均为下降。在利用步进指令进行编程时,这两个工步所对应的程序段的输出不能直接设置为Y3、Y4,同一个输出使用两次则会出现语法错误。这时应考虑使用用于存储中间状态的内部通用继电器Rn来解决这个问题。其中R1、R5分别被定义为1步与5步的输出,R3、R7分别被定义为3步与7步的输出,在步进结束后再将R1、R5的状态输出到上升Y3,将R3、R7的状态输出到下降Y4,通过这样的方法可方便解决顺序控制任务中若干工步输出相同的问题。
五、结束语
初学者对于PLC的基本应用易于掌握,但要做到灵活使用仍需对一些技术难点和使用技巧深刻理解。在编程之前,要对控制任务进行认真分析,合理选择外部设备和编程元件,并以此为基础进行编程;在编程过程中,如能灵话巧妙地使用编程元件,合理地进行程序编排,可使程序逻辑清楚,可读性增强。
PLC的控制方式属于存储程序控制,其控制功能是通过存放在存储器内的程序来实现的,若要对控制功能作必要修改,只需改变控制程序即可,这就实现了控制的软件化。可编程控制器的优点在于"可"字,从软件来讲,其控制程序可编辑、可修改;从硬件上讲,其外部设备配置可变。构建一个PLC控制系统的就在于控制程序的编制,但外部设备的选用也将对程序的编制产生影响。因此在进行程序设计时应结合实际需要,硬、软件综合考虑。本文就硬、软两方面,选取梯形图为编程语言,以松下电工FPO-C32型PLC为例,对PLC使用过程中易出现的几个问题及解决方法进行了分析。
一、外部输入设备的选用与PLC输入继电器的使用
1. 外部输入信号的采集
PLC的外部设备主要是指控制系统中的输入输出设备,其中输人设备是对系统发出各种控制信号的主令电器,在编写控制程序时注意外部输入设备使用的是常开还是常闭触点,并以此为基础进行程序编制。否则易出现控制错误。
在PLC内部存储器中有于输入状态存储的输入继电器区,各输入设备(开关、按钮、行程开关或传感器信号)的状态经由输入接口电路存储在该区域内,每个输入继电器可存储一个输入设备状态。PLC中使用的"继电器"并非实体继电器,而是"软继电器",可提供无数个常开、常闭触点用于编程。每个"软继电器"仅对应PLC存储单元中的一位(bit),该位状态为"1",表示该"软继电器线圈"通电,则程序中所有该继电器的触点都动作。输入继电器作为PLC接收外部主令信号的器件,通过接线与外部输入设备相联系,其"线圈"状态只能由外部输入信号驱动。
输入设备选用的是按钮SB0的常闭触点,输入继电器X0的线圈状态取决于SB0的状态。该按钮未按下时,输入继电器X0线圈状态为"1"通电状态,程序中所有X0触点均动作,即常开触点接通,常闭触点断开;若按下该按钮,则输入继电器X0线圈状态为"0"断电状态,程序中所有X0触点均恢复常态。如果输入继电器连接的输入设备是按钮SB0的常开触点,则情况恰好相反:在该按钮未按下时,输入继电器X0线圈状态为"0"断电状态,程序中所有X0触点均不动作;若按下该按钮,输入继电器X0线圈状态为"1"通电状态,程序中所有X0触点均动作。
2. 停车按钮使用常闭型
由于PLC在运行程序判别触点通断状态时,只取决于其内存中输入继电器线圈的状态,并不直接识别外部设备,因此编程时,外部设备的选用与程序中的触点类型密切相关。这是一个在对照电气控制原理图进行PLC编程时易出现的问题。典型的例子是基本控制--"起保停控制"中的停车控制。
起保停控制"电气原理图,在该系统中,按钮SB0用于停车控制,因此使用其常闭触点串联于控制线路。SBl为起动按钮,使用其常开触点。若使用相同的设备(即停车SB0用常闭触点,起动SBl用常开触点),
I/O分配:SB0--X0,SBl--Xl,输出Y0
该梯形图中停车信号X0使用的是常开触点串联在控制线路中,这是因为外部停车设备选取按钮常闭触点所致,不操作该按钮,则输出Y0正常接通,若按下该按钮,输出Y0断电。
3. 停车按钮使用常开型
若希望编制出符合我们平时阅读习惯的梯形图程序,则在选用外部停车设备时需使用按钮SB0的常开触点与X0相连。
二、PLC的"串行"运行方式与控制程序的编制
PLC与继电接触器控制的重要区别之一就是工作方式不同。继电接触器控制系统是按"并行"方式工作的,也就是说是按同时执行的方式工作的,只要形成电流通路,就可能有几个电器同时动作。而PLC是以"串行"方式工作的,PLC在循环执行程序时,是按照语句的书写顺序自上而下进行逻辑运算,而逻辑运算的结果会影响后面语句的逻辑运算结果。因此梯形图编程时,各语句的位置也会对控制功能产生关键影响。



故障的分类
1.外部设备故障
外部设备就是与实际过程直接联系的各种开关、传感器、执行机构、负载等。这部分设备发生故障,直接影响系统的控制功能。
2.系统故障
这是影响系统运行的全局性故障。系统故障可分为固定性故障和偶然性故障。
故障发生后,可重新启动使系统恢复正常,则可认为是偶然性故障。
重新启动不能恢复而需要换硬件或软件,系统才能恢复正常,则可认为是固定故障。
3.硬件故障
这类故障主要指系统中的模板(特别是I/O模板)损坏而造成的故障。这类故障一般比较明显,影响局部。
4.软件故障
软件本身所包含的错误,主要是软件设计考虑不周,在执行中一旦条件满足就会引发。在实际工程应用中,由于软件工作复杂、工作量大,因此软件错误几乎难以避免。
对于可编程控制器组成的控制系统而言,绝大部分故障属于上述四类故障。根据这一故障分类,可以帮助分析故障发生的部位和产生的原因。
可编程控制器的自诊断测试
可编程序控制器具有强的自诊断测试功能,在系统发生故障时要充分利用这一功能。在进行自诊断测试时,都要使用诊断调试工具,也就是编程器。
利用系统功能进行诊断测试
利用可编程控制器本身所具有的各种功能,自行编制软件、采取一定措施、结合具体分析确定故障原因。
用户通过程序可以编辑组织块,来告诉CPU当出现故障时应如何处理,
如果相应的故障组织块OB没有编程,当出现该故障时,CPU转到“STOP”状态。
虽然PLC具有很高的性,并且有很强的抗干扰能力,但在过于恶劣的环境或安装使用不当等情况下,都有可能引起PLC内部信息的破坏而导致控制混乱,甚至造成内部元件损坏。为了提高PLC系统运行的性,使用时应注意以下几个方面的问题。
一、适合的工作环境
1.环境温度适宜
各生产厂家对PLC的环境温度都有一定的规定。通常PLC允许的环境温度约在0~55°C。因此,安装时不要把发热量大的元件放在PLC的下方;PLC四周要有足够的通风散热空间;不要把PLC安装在阳光直接照射或离暖气、加热器、大功率电源等发热器件很近的场所;安装PLC的控制柜有通风的百叶窗,如果控制柜温度太高,应该在柜内安装风扇强迫通风。
2.环境湿度适宜
PLC工作环境的空气相对湿度一般要求小于85%,以保证PLC的绝缘性能。湿度太大也会影响模拟量输入/输出装置的精度。因此,不能将PLC安装在结露、雨淋的场所。
3.注意环境污染
不宜把PLC安装在有大量污染物(如灰尘、油烟、铁粉等)、腐烛性气体和可燃性气体的场所,尤其是有腐蚀性气体的地方,易造成元件及印刷线路板的腐蚀。如果只能安装在这种场所,在温度允许的条件下,可以将PLC封闭;或将PLC安装在密闭性较高的控制室内,并安装空气净化装置。
4.远离振动和冲击源
安装PLC的控制柜应当远离有强烈振动和冲击场所,尤其是连续、频繁的振动。必要时可以采取相应措施来减轻振动和冲击的影响,以免造成接线或插件的松动。
5.远离强干扰源
PLC应远离强干扰源,如大功率晶闸管装置、高频设备和大型动力设备等,同时PLC还应该远离强电磁场和强放射源,以及易产生强静电的地方。
二、合理的安装与布线
1. 注意电源安装
电源是干扰进入PLC的主要途径。PLC系统的电源有两类:外部电源和内部电源。
外部电源是用来驱动PLC输出设备(负载)和提供输入信号的,又称用户电源,同一台PLC的外部电源可能有多规格。外部电源的容量与性能由输出设备和PLC的输入电路决定。由于PLC的I/O电路都具有滤波、隔离功能,所以外部电源对PLC性能影响不大。因此,对外部电源的要求不高。
内部电源是PLC的工作电源,即PLC内部电路的工作电源。它的性能好坏直接影响到PLC的性。因此,为了保证PLC的正常工作,对内部电源有较高的要求。一般PLC的内部电源都采用开关式稳压电源或原边带低通滤波器的稳压电源。
在干扰较强或性要求较高的场合,应该用带屏蔽层的隔离变压器,对PLC系统供电。还可以在隔离变压器二次侧串接LC滤波电路。同时,在安装时还应注意以下问题:
1) 隔离变压器与PLC和I/O电源之间采用双绞线连接,以控制串模干扰;
2) 系统的动力线应足够粗,以降低大容量设备起动时引起的线路压降;
3) PLC输入电路用外接直流电源时,采用稳压电源,以保证正确的输入信号。否则可能使PLC接收到错误的信号。
2. 远离高压
PLC不能在高压电器和高压电源线附近安装,不能与高压电器安装在同一个控制柜内。在柜内PLC应远离高压电源线,二者间距离应大于200mm。
3. 合理的布线
1) I/O线、动力线及其它控制线应分开走线,尽量不要在同槽中布线。
2) 交流线与直流线、输入线与输出线分开走线。
3) 开关量与模拟量的I/O线分开走线,对于传送模拟量信号的I/O线用屏蔽线,且屏蔽线的屏敝层应一端接地。
4) PLC的基本单元与扩展单元之间电缆传送的信号小、频率高,很容易受干扰,不能与其它的连线敷埋在同槽内。
5)PLC的I/O回路配线,使用压接端子或单股线,不宜用多股绞合线直接与PLC的接线端于连接,否则容易出现火花。
6) 与PLC安装在同一控制柜内,虽不是由PLC控制的感性元件,也应并联RC或二管消弧电路。
三、正确的接地
良好的接地是PLC运行的重要条件。为了抑制干扰,PLC一般单接地,与其它设备分别使用各自的接地装置,也可以采用公共接地,
PLC的接地线应尽量短,使接地点尽量靠近PLC。同时,接地电阻要小于100Ω,接地线的截面应大于2mm2。
另外,PLC的CPU单元接地,若使用了I/O扩展单元等,则CPU单元应与它们具有共同的接地体,而且从任一单元的保护接地端到地的电阻都不能大于100Ω。
四、的保护环节
1.短路保护
当PLC输出设备短路时,为了避免PLC内部输出元件损坏,应该在PLC外部输出回路中装上熔断器,进行短路保护。在每个负载的回路中都装上熔断器。
2. 互锁与联锁措施
除在程序中保证电路的互锁关系,PLC外部接线中还应该采取硬件的互锁措施,以确保系统地运行,如电动机正、反转控制,要利用接触器KM1、KM2常闭触点在PLC外部进行互锁。在不同电机或电器之间有联锁要求时,也在PLC外部进行硬件联锁。采用PLC外部的硬件进行互锁与联锁,这是PLC控制系统中常用的做法。
3.失压保护与紧急停车措施
PLC外部负载的供电线路应具有失压保护措施,当临时停电再恢复供电时,不按下“启动”按钮PLC的外部负载就不能自行启动。这种接线方法的另一个作用是,当特殊情况下需要紧急停机时,按下“停止”按钮就可以切断负载电源,而与PLC毫无关系。
五、必要的软件措施
有时硬件措施不一定干扰的影响,采用一定的软件措施加以配合,对提高PLC控制系统的抗干扰能力和性起到很好的作用。
1. 开关量输入信号抖动
在实际应用中,有些开关输入信号接通时,由于外界的干扰而出现时通时断的“抖动”现象。这种现象在继电器系统中由于继电器的电磁惯性一般不会造成什么影响,但在PLC系统中,由于PLC扫描工作的速度快,扫描周期比实际继电器的动作时间短得多,所以抖动信号就可能被PLC检测到,从而造成错误的结果。因此,对某些“抖动”信号进行处理,以保证系统正常工作。
如图6-38a所示,输入X0抖动会引起输出Y0发生抖动,可采用计数器或定时器,经过适当编程,以这种干扰。
输入信号抖动的梯形图程序。当抖动干扰X0断开时间间隔Δt<K×0.1S,计数器C0不会动作,输出继电器Y0保持接通,干扰不会影响正常工作;只有当X0抖动断开时间Δt≥K×0.1S时,计数器C0计满K次动作,C0常闭断开,输出继电器Y0才断开。K为计数常数,实际调试时可根据干扰情况而定。
2.故障的检测与诊断
PLC的性很高且本身有很完善的自诊断功能,如果PLC出现故障,借助自诊断程序可以方便地找到故障的原因,排除后就可以恢复正常工作。
大量的工程实践表明,PLC外部输入、输出设备的故障率远远PLC本身的故障率,而这些设备出现故障后,PLC一般不能觉察出来,可能使故障扩大,直至强电保护装置动作后才停机,有时甚至会造成设备和人身事故。停机后,查找故障也要花费很多时间。为了及时发现故障,在没有酿成事故之前使PLC自动停机和报警,也为了方便查找故障,提高维修效率,可用PLC程序实现故障的自诊断和自处理。
现代的PLC拥有大量的软件资源,如FX2N系列PLC有几千点辅助继电器、几百点定时器和计数器,有相当大的裕量,可以把这些资源利用起来,用于故障检测。
(1)时检测 机械设备在各工步的动作所需的时间一般是不变的,即使变化也不会太大,因此可以以这些时间为参考,在PLC发出输出信号,相应的外部执行机构开始动作时启动一个定时器定时,定时器的设定值比正常情况下该动作的持续时间长20%左右。例如设某执行机构(如电动机)在正常情况下运行50s后,它驱动的部件使限位开关动作,发出动作结束信号。若该执行机构的动作时间过 60s(即对应定时器的设定时间),PLC还没有接收到动作结束信号,定时器延时接通的常开触点发出故障信号,该信号停止正常的循环程序,启动报警和故障显示程序,使操作人员和维修人员能判别故障的种类,及时采取排除故障的措施。
(2)逻辑错误检测 在系统正常运行时,PLC的输入、输出信号和内部的信号(如辅助继电器的状态)相互之间存在着确定的关系,如出现异常的逻辑信号,则说明出现了故障。因此,可以编制一些常见故障的异常逻辑关系,一旦异常逻辑关系为ON状态,就应按故障处理。例如某机械运动过程中先后有两个限位开关动作,这两个信号不会同时为ON状态,若它们同时为ON,说明至少有一个限位开关被卡死,应停机进行处理。
3.预知干扰
某些干扰是可以预知的,如PLC的输出命令使执行机构(如大功率电动机、电磁铁)动作,常常会伴随产生火花、电弧等干扰信号,它们产生的干扰信号可能使PLC接收错误的信息。在容易产生这些干扰的时间内,可用软件PLC的某些输入信号,在干扰易发期过去后,再取消封锁。
六、采用冗余系统或热备用系统
某些控制系统(如化工、造纸、冶金、核电站等)要求有高的性,如果控制系统出现故障,由此引起停产或设备损坏将造成大的经济损失。因此,仅仅通过提高PLC控制系统的自身性是满足不了要求。在这种要求高性的大型系统中,常采用冗余系统或热备用系统来有效地解决上述问题。
1.冗余系统
所谓冗余系统是指系统中有多余的部分,没有它系统工作,但在系统出现故障时,这多余的部分能立即替代故障部分而使系统继续正常运行。冗余系统一般是在控制系统中重要的部分(如CPU模块)由两套相同的硬件组成,当某一套出现故障立即由另一套来控制。是否使用两套相同的I/O模块,取决于系统对性的要求程度。
两套CPU模块使用相同的程序并行工作,其中一套为主CPU模块,一块为备用CPU模块。在系统正常运行时,备用CPU模块的输出被禁止,由主CPU模块来控制系统的工作。同时,主CPU模块还不断通过冗余处理单元(RPU)同步地对备用CPU模块的I/O映像寄存器和其它寄存器进行刷新。当主CPU模块发出故障信息后,RPU在1~3个扫描周期内将控制功能切换到备用CPU。I/O系统的切换也是由RPU来完成。
2.热备用系统
热备用系统的结构较冗余系统简单,虽然也有两个CPU模块在同时运行一个程序,但没有冗余处理单元RPU。系统两个CPU模块的切换,是由主CPU模块通过通信口与备用CPU模块进行通信来完成的。如图6-39b所示,两套CPU通过通讯接口连在一起。当系统出现故障时,由主CPU通知备用CPU,并实现切换,其切换过程一般较慢。