7
西门子6ES7214-2AD23-0XB8型号参数
PLC程序较好的评价标准就是它的实践,要看这个程序可以达到怎样的效果。那么程序在没有达到效果之间就不可以判断PLC程序的好坏了吗?其实是可以的那么到底什么样的程序是好程序呢?下面小编就来介绍一下PLC程序好坏的判断法方法吧。
正确性
PLC的程序一定要正确,并要经过实际工作验证,其能够正确工作。这是对PLC程序的较根本的要求,若这一点做不到,其它的再好也没有用。要使程序正确,一定要准确的使用指令,正确的使用内部器件。准确的使用指令与准确理解指令相联系,为此对指令含义和使用条件一定要弄清楚。必要时,可编些小程序对一些不清楚的指令作些测试。
同一指令,由于PLC的出厂批次不同或是PLC的系列型号的不同,一些指令细节有可能不一样,应仔细查阅编程手册。内部器件正确使用也是重要的。如有的PLC有掉电保护,有的PLC没有。一定要做到该掉电保护的一定要用掉电保护的器件,反之则不能用。
可靠性
程序不仅要正确,还要可靠。可靠反映着PLC程序的稳定性,这也是对PLC程序的基本要求。有的PLC程序,在正常的工作条件下或合法操作时能正确工作,而出现非正常工作条件(如临时停电,又很快再通电)或进行非法操作(如一些按钮不按顺序按,或同时按若干按钮)后,程序就不能正常工作了。这种程序,就不大可靠,或说不稳定,就是不好的程序。
好的PLC程序对非正常工作条件出现,能予以识别,并能使其与正常条件衔接,可使程序适应于多种情况。好的PLC程序对非法操作能予以拒绝,且不留下痕迹。只接受合法操作。
简短性
使PLC程序尽可能简短,也是应追求的目标。简短的程序可以节省用户存储区;多数情况下也可节省执行时间,提高对输入的响应速度,还可提高程序的可读性。程序是否简短,一般可用程序所用的指令条数衡量,用的条数少,程序自然就简短。要想程序简短,从大的方面讲,要优化程序结构,用流程控制指令简化程序,从小的方面讲还要用功能强的指令取代功能单一的指令,以及注意指令的安排顺序等。
省时性
程序简短可以节省程序运行时间,但简短与省时并不完全是一回事。因为运行程序时间虽与程序所拥有指令条数有关,而且还与所使用的是什么指令有关。PLC指令不同,执行的时间也不同。而且,有的指令,在逻辑条件ON时执行与在OFF时执行其时间也不同。另外,由于使用了流程控制指令,在程序中,不是所有指令都要执行等。所以,运行程序的时间计算是较复杂的。但要求其平均时间少,较大时间也不太长是必要的。这样可提高PLC的响应速度。
省时的关键是用好流程控制指令。按情况确定一些必须执行的指令,作*部分,其余的可依程序进行,有选择地执行,或作些分时工作的设计,避免较大时间太长等。
可读性
要求所设计的程序可读性要好。这不仅便于程序设计者加深对程序的理解,便地调试,而且,还要便于别人读懂你的程序,便于使用者维护。必要时,也可使程序推广。要使程序可读性好,所设计的程序就要尽可能清晰。要注意层次,实现模块化,以至于用面向对象的方法进行设计。要多用一些标准的设计。再就是I/O分配要有规律性,便于记忆与理解。必要时,还要做一些注释工作。内部器件的使用也要讲规律性,不要随便地拿来就用。
可读性在程序设计开始时就要注意。这不易完全做到。因为在程序调试的过程中,指令的增减,内部器件的使用变化,可能使原较清晰的程序,变的有些乱。所以在设计时就对调试增减留有一定的余地,然后调试完毕后再做一下整理,这样所设计的程序具有更高的质量。
易改性
要使程序易改,也就是要便于修改。PLC的特点之一就是方便,可灵活地适用于各种情况。其办法就是靠修改或重新设计程序。重新设计程序用于改变PLC工艺的用途要求的情况,不仅程序重编,而且I/O也要重新分配。多数情况下不需要重编程序,作一些修改就可以了。这就要求程序具有易性,便于修改。易改也就是弹性,要求只要作很少的改动,即可达到改变参数或理改动作的目的在编写PLC程序之前,首先应对系统的特点和运行过程进行分析。在一般的工业生产过程中,系统内每台设备开始时均处于初始状态。
初始状态包括:
a.供设备用电的电源正常。
b.设备选择在自动方式,即PLC控制方式。
c.该设备的保护、控制及信号已复位。在确定每台设备均满足初始状态后,由操作员下达起动命令,整个系统从初始状态出发进入起动过程。自检中任一台设备不满足起动的初始条件均不能进行起动操作。在起动过程中各设备状态不断改变,各个单体设备根据工艺流程顺序起动运行,向稳定运行状态前进,最后进入稳定运行状态。稳定运行状态的时间视生产情况确定。当一段生产工作完成后,由操作员操作或由停车条件自动发出停车命令,系统即进入停止过程,待最后一台设备停止完毕后,整个系统又回到了初始状态,等待下一周期。
1)在初始阶段,系统各设备自检发生的故障
a.供电电源或设备不正常。
b.设备控制状态是否选择自动方式。
c.未排除故障
2)起动故障常见起动故障为起动**时故障,即PLC驱动输出继电器动作,在正常时间内电动机未能相应起动。
3)运行故障在系统运行中,可能出现电动机过载跳闸、自动方式被人为改变、保护人身和设备安全的急停开关动作等突发性事件或故障。以上故障和信号任一种出现,均应将PLC程序立即转入执行停止命令阶段,按程序设定停止生产流程,对于这种需立即中止生产过程的故障,称之为一类故障。
在实际生产中还有另一种故障不需要立即停止生产流程,如除尘器,该类设备在整个生产流程中属于附属设备,如不运行也不会影响生产的正常进行,当其发生故障时,PLC系统可先停掉该设备并向操作员发出声、光报警信号,由总调度室指派维修人员进行设备检修而PLC系统可继续执行生产主流程程序,这类故障可称为二类故障。
当PLC的RS485口经非隔离的PC/PPI电缆与电脑连接、PLC与PLC之间连接或PLC与变频器、触摸屏等通信时时有通信口损坏现象发生。
●选用带静电保护、过热保护、输入失效保护等保护措施完善的高挡次RS485芯片,如:SN65HVD1176D、MAX3468ESA等,这些芯片价格一般在十几元至几十元,而SN75176的价格仅为1.5元。
●采用响应速度更快、承受瞬态功率更大的新型保护器件TVS或BL浪涌吸收器,如P6KE6.8CA的钳制电压为6.8V,承受瞬态功率为500W,BL器件则可抗击4000A以上大电流冲击。
●R1和R2采用正温度系数的自恢复保险PTC,如JK60-010,正常情况下的电阻值为5欧,并不影响正常通信,当受到浪涌冲击时,大电流流过PTC和保护器件TVS(或BL),PTC的电阻值将骤然增大,使浪涌电流迅速减小。
2、从PLC外部考虑:
●使用隔离的PC/PPI电缆,尽量不用廉价的非隔离电缆(特别是在工业现场)。西门子公司早期出产的PC/PPI电缆(6ES7901-3BF00-0XA0)是不隔离的,现在也改成隔离的电缆了!
●PLC的RS485口联网时采用隔离的总线连接器.
●与PLC联网的第三方设备,如变频器、触摸屏等的RS485口均使用RS485隔离器BH-485G进行隔离,这样各RS485节点之间就无“电”的联系,也无地线环生,即使某个节点损坏也不会连带其它节点损坏。
●RS485通信线采用PROFIBUS总线**屏蔽电缆,保证屏蔽层接到每台设备的外壳并最后接大地。
●对于有架空线的系统,总线上较好设置专门的防雷击设施。
找到了解决S7-200通讯口损坏的办法了
在我们单位众多的S7-200PLC中,不时有通讯口损坏,致使不能连接PC或不能进行通讯,在对PLC解体时发现,在PLC通讯口出有一芯片--75176,这就是通讯接口芯片,在芯片周围有5个FB,标识FB1~FB5,这其实就是5个保险,在通讯连不上时,一般就是这5个保险中的某个烧毁了,可用同等型号的保险代替,也可用导线直接短路。一般就能解决问题。不过更换时要注意,由于元件时贴片的,十分小,空间也小,所以焊接时注意不要短路。


当PLC的RS485口经非隔离的PC/PPI电缆与电脑连接、PLC与PLC之间连接或PLC与变频器、触摸屏等通信时时有通信口损坏现象发生。
●SN75176损坏,R1、R2和Z1、Z2完好。这主要可能是受到静电冲击或瞬态过电压速度快于Z1、Z2的动作速度造成的,静电无处不在,仅人体模式也会产生±15kV的静电。
●Z1或Z2、SN75176损坏,R1和R2完好。这可能是受到高电压低电流的瞬态干扰电压将Z1或Z2和SN75176击穿,由于电流较小和发生时间较短因而R1、R2不至于发热烧断。
由以析得知PLC接口损坏的主要原因是由于瞬态过电压和静电造成,产生瞬态过电压和静电的原因很多也较复杂,如由于PLC内部24V电源和5V电源共地,24V电源的输出端子L+、M为其它设备混合供电可能导致地电位变化,从而造成共模电压**出允许范围。所以EIA-485标准要求将各个RS485接口的信号地用一条低阻值导线连接在一起以保证各节点的地电位相等,地线环流!
当带电插拔未隔离的连接电缆时,由于两端电位不相等电路中又存在诸多电感、电容之类的器件,插拔瞬间必然产生瞬态过电压或过电流。
连接在RS485总线上的其它设备产生的瞬态过电压或过电流同样会流入到PLC,总线上连接的设备站点数越多,产生瞬态过电压的因素也越多。
当通信线路较长或有室外架空线时,雷电必然会在线路上造成过电压,其能量往往是巨大的,常有用户沮丧地说:“联网的几十台PLC全部遭打坏了!”。
三、解决办法:
1、从PLC内部考虑:
●采用隔离的DC/DC将24V电源和5V电源隔离,分析了三菱、欧姆龙、施耐德PLC以及西门子的PROFIBUS接口均是如此。RS232是一种经典的通讯方式,至今绝大多数PLC上都至少有一个RS232口,作为编程口和普通的通讯口,两个多月前,一个同事在现场调试程序时,首先将编程电缆接在笔记本的串口上,然后去接PLC编程口,结果PLC的编程口马上被烧毁。
RS232是一种经典的通讯方式,至今绝大多数PLC上都至少有一个RS232口,作为编程口和普通的通讯口,两个多月前,一个同事在现场调试程序时,首先将编程电缆接在笔记本的串口上,然后去接PLC编程口,结果PLC的编程口马上被烧毁。
实际上,我在几年前现场调试时也曾经碰到过类似故障:当笔记本使用外接电源时,PLC的串口马上被烧毁或者表现的现象有点类似于短路――CPU的电源灯忽亮忽灭的;但是当去掉外接电源,笔记本使用电池供电时就没有问题了。注明一下,这个故障倒是与带电插拔无关。
最后查到的原因:当时使用的PLC是DC24V供电,较终发现由于配线的原因将供电电源的DC24V+与机柜接在一起了(实际上DC24V-接至机柜也会发生此后果)。
由于隔的时间比较长,现场的处理细节我记不太清楚了,仅仅简单的分析一下。
1、首先应该注意PLC或者其它一些通讯设备(比如文本屏、触摸屏等等),一般在硬件处理上,RS232口的金属外壳是与自身的“接地端”相通的,我用万用表量过几家的产品都这样。所谓的“接地端”并不一定是在接线端子上提供,有可能是在其它地方。
2、在笔记本和PC这方,RS232口的金属壳通常与外接电源的地线、机壳相连。有的甚至将RS232(9针)口的*5脚直接与机壳相连。
3、如在接线中PLC的供电电源的DC24V+或者DC24V不慎与机柜相连,而PLC的接地端一般又直接接至机柜,这样PLC编程口的金属壳就与电源的+或-端等电位;若笔记本采用外接电源,而外部的AC220V的接地线又接至工厂的接地系统,那么笔记本串口的金属壳就是“零”电位。通常通讯电缆两端的金属壳是短接在一起的。这样当用编程电缆连接PLC与笔记本时,编程口必毁无疑。至于笔记本的串口还是好的,那只能说是幸运了。
4、至于说笔记本使用电池供电就没问题了,是因为这时候金属壳之间没形成电势差。
5、若不进行连接,供电,系统也表现正常而没出故障,这是因为当时的机柜是浮地的,也就是说机柜没有接地。
最后,与这个故障无关,但带电插拔RS232通讯线是错误的操作。RS232不支持带电插拔。RS232的通讯电平是正负12V,这对采用TTL电平(0-5V)的芯片来说是一个危险电压,带电插拔较易烧毁串口。
PLC程序开始调试时,设备可先不运转,甚至了不要带电。可随着调试的进展逐步加电、开机、加载,直到按额定条件运转。具体过程大体是:
一、要查接线、核对地址。要逐点进行,要确保正确无误。可不带电核对,那就是查线,较麻烦。也可带电查,加上信号后,看电控系统的动作情况是否符合设计的目的。
二、检查模拟量输入输出。看输入输出模块是否正确,工作是否正常。必要时,还可用标准仪器检查输入输出的精度。
三、检查与测试指示灯。控制面板上如有指示灯,应先对应指示灯的显示进行检查。一方面,查看灯坏了没有,另一方面检查逻辑关系是否正确。指示灯是反映系统工作的一面镜子,先调好它,将对进一步调试提供方便。
四、检查手动动作及手动控制逻辑关系。完成了以上调试,继而可进行手动动作及手动控制逻辑关系调试。要查看各个手动控制的输出点,是否有相应的输出以及与输出对应的动作,然后再看,各个手动控制是否能够实现。如有问题,立即解决。
五、半自动工作。如系统可自动工作,那先调半自动工作能否实现。调试时可一步步推进。直至完成整个控制周期。哪个步骤或环节出现问题,就着手解决哪个步骤或环节的问题。
六、自动工作。在完成半自动调试后,可进一步调试自动工作。要多观察几个工作循环,以确保系统能正确无误地连续工作。
七、模拟量调试、参数确定。以上调试的都是逻辑控制的项目。这是系统调试时,首先要调通的。这些调试基本完成后,可着手调试模拟量、脉冲量控制。较主要的是选定合适控制参数。一般讲,这个过程是比较长的。要耐心调,参数也要作多种选择,再从中选出较优者。有的PLC,它的PID参数可通过自整定获得。但这个自整定过程,也是需要相当的时间才能完成的。
八、完成上述所有的步骤,整个调试基本算是完成了。但较好再进行一些异常条件检查。看看出现异常情况或一些难以避免的非法操作,是否会停机保护或是报警提示。进行异常检查时,一定要充分考虑到设备与人身的安全!
在使用PLC的过程中,我们经常遇到输入点不足问题,如何解决这个问题呢?较简单的方法莫过于通过扩展输入模块来实现。但是模块的价格可是不菲的,动辄数千元,而且一扩就是8点、16点或32点,如果您仅仅缺一个点,这岂不是太不划算了!?有没有更经济的解决方案呢?
另外一种解决输入点不足的方法是通过软件来实现,这种方案的接线非常简单,直接把一个按钮连接到PLC输入端,我把它定义为I0.0,但按下这个按钮,可以启动电动机旋转;若再按下这个按钮,又可以使电动机停止,即这个按钮是双稳态的。
我们来看它是如何实现的:按下按钮,I0.0为高电平,由于初始状态下M0.0是逻辑0,只有网络1中有电流流过,M0.1置位,从而在按钮释放后,Q0.0点输出,Q0.0激励KM1,使电动机旋转;同时M0.0变为逻辑1,为M0.1复位做好准备。如果此时再按下按钮,又只能使网络2中有电流流过,M0.1复位。它的复位使Q0.0失电,电动机停止,同时使M0.0复位,又为M0.1置位做好准备。再按下按钮,又会重复上述循环。之所以在网络3支路中串入I0.0,是为了取一个瞬时信号,保证按下按钮并等释放了以后,才使状态发生改变。如果您持续按着按钮不释放,PLC仍维持原来的状态不改变。
以上两套方案都是切实可行的,具体采用哪一种,那还要根据您实际的使用条件来决定,切莫盲目套用在使用PLC的过程中,我们经常遇到输入点不足问题,如何解决这个问题呢?较简单的方法莫过于通过扩展输入模块来实现。但是模块的价格可是不菲的,动辄数千元,而且一扩就是8点、16点或32点,如果您仅仅缺一个点,这岂不是太不划算了!?有没有更经济的解决方案呢?
在使用PLC的过程中,我们经常遇到输入点不足问题,如何解决这个问题呢?较简单的方法莫过于通过扩展输入模块来实现。但是模块的价格可是不菲的,动辄数千元,而且一扩就是8点、16点或32点,如果您仅仅缺一个点,这岂不是太不划算了!?有没有更经济的解决方案呢?
根据实践中的摸索,我总结出两种解决PLC输入点不足问题办法
其一是把多个要输入的信号,先通过外部元件的逻辑组合,然后再接入到PLC的一个输入点上;其二是不需要增加任何元件,通过运用PLC内部的逻辑组合,把连接到输入端的开关变成双稳态开关,来实现我们节省输入点的目的。
下面以工业控制中常见到的电动机的启动停止控制为例,具体来探讨这两种方案的实现方法。为了叙述的方便,我先做这样的定:PLC系统采用西门子公司的S7-200系列;电动机启动按钮为SB1,定义号为I0.0;停止按钮为SB2,定义号为I0.1;控制电动机的接触器定义为KM1;控制接触器KM1的PLC输出点定义为Q0.0。
方案1:启动、停止按钮SB1和SB2不是单独接到PLC的输入端,而是先把SB1与SB2进行串联再连接到输入模块,这样就节省了一个输入点。控制流程是这样的:按下启动按钮SB2,I0.0输入高电平,Q0.0有输出信号,带动接触器KM1吸合,启动电动机旋转,同时接触器的辅助触点吸合,维持I0.0的高电平,从而电动机的旋转得以保持;按下停止按钮SB1,I0.0变为低电平,Q0.0便由高电平变为低电平,从而使KM1失电,电动机停止旋转。