6招制胜!看电气工程师教你如何快速判断PLC故障
相信大家都知道,各种品牌PLC都具有诊断功用,当PLC报错时,我们应该充分利用软件中的诊断功来查找问题和原因。比如当发现PLC上的错误指示灯ERROR灯出现闪烁或常亮的情况,就可以打开软件的诊断菜单,查看是什么错误,里面有错误发生的原因,及解决的办法,这也是非常方便的。
这里以三菱PLC为例; 除此之外,一般情况下,当发生错误时,8009、8060~8068其中之一的值被写入特殊数据寄存器D8004中,假定这个写入D8004中内容是8064,则经过查看D8064的内容便可知道错误代码。与错误代码相对应的错误内容可以查看PLC手册的错误代码表,这样也可以查出出现错误的原因。
当然了,一般来说,当PLC出现异常时,我们首先要查看电源电压是否正常,I/O端子的螺丝和接插件是否松动,以及有无其他异常。然后再根据PLC上的各种LED的指示灯状况,以查看PLC本身和外部有无异常,按这样的方法来进行排查。
下面以三菱FX系列PLC为例,以经验法来说明根据LED指示灯状况以确定PLC的出错原因。
1.电源指示([POWER] LED灯亮)
当有向三菱PLC供电时,PLC上的[POWER]LED指示灯会亮。假如若PLC通上电源但[POWER]LED指示灯不亮,要确认一下电源接线。另外,若同一电源有驱动传感器等时,要确认有无出现负载短路或过电流的情况。
若PLC通上电源后,此指示灯不亮,此时,请将"24+"端子之配线拔出,若指示灯正常亮起,表示DC负载过大,此种情况下,请不要使用"24+"端子之DC电源,请另行准备DC24V开关电源。
C、如果不是上述原因,则可能是PLC内混入导电性异物或其它反常状况,使根本单元内的保险丝熔断,可经过替换保险丝来解决。
2.错误指示([EPROR]LED闪烁)
当程序语法错误(如忘记设置定时器或计数器的常数等),也有可能是参数设定出错,或有反常噪音、导电性异物混入等原因此引起程序内存的内容改变时,[EPROR]LED会闪烁。在这种状况下,应查看程序是否有错,以及查看有无导电性异物混入和高强度噪音源。
3.错误指示([EPROR]LED灯亮)
如果是因为三菱PLC内部混入导电性异物或受外部反常噪音的影响,导致CPU失控或运算周期超过200ms,则出现WDT错误,[EPROR]LED灯亮,PLC处于STOP,全部输出都变为OFF。此刻可进行断电复位,若PLC恢复正常,请查看一下有无反常噪音发作源和导电性异物混入的状况。另外,请查看PLC的接地是否符合要求。
假如[EPROR]LED仍然保持灯亮状况时,要确认一下程序运算周期是否过长(监视D8012可知最大扫描时间)。进行多方面检查之后,[EPROR]LED 的灯亮状况仍不能解除,应考虑是PLC内部硬件故障,请与三菱售后联络。
4.电池指示([BATT LED]灯亮 )
当这个[BATT LED]灯亮红色时,表PLC内的锂电池寿命己经快结束了(约剩一个月),此时请尽快更换新的锂电池,以免PLC内的程式(当使用RAM时) 自动消失。假若更换新的锂电池之後,此LED灯仍然亮着,那很可 能此部PLC的CPU 板己经故障,请与三菱售后联络。
5.输入指示灯
不管输入单元的LED灯亮还是灭,注意查看输入信号开关是否确实在ON或OFF状况。假如使用的是光传感器等输入元器件,因为发光/受光部位粘有尘垢等,引起灵敏度改变,有可能不能变成ON状态。此外,在比三菱FX2N系列PLC运算周期短的时间内,也有可能不能接收到ON和OFF的输入。另外,再看是否在输入端子上外加了不同的电压,如果是的话会损坏输入回路。
6.输出指示灯
不管输出单元的LED灯亮还是灭,假如负载不能进行ON或OFF时,主要是因为过载、负载短路或容量性负载的冲击电流等,引起继电器输出接点粘合,或接点接触面欠好导致接触不良。
以上就是三菱PLC的故障诊断方法,你是否有遇到过这种情况,却不知道如何判断呢?这下知道了吧,大家可以通过以上几种方法进行排查哦~欢迎大家在评论区沟通交流!(技成培训原创,作者:蔡慧荥,未经授权不得转载,违者必究!)
PLC编程通用规范,附实用技巧!
【导读】一套完整的PLC程序,并不仅仅是使系统能够运行起来这么简单,它也需要完整的注释、精良的架构、良好的可扩展性、完备的报警保护系统和运行前的系统模拟等。
(一)PLC编程的设计要求
一套完整的PLC程序,并不仅仅是使系统能够运行起来这么简单,它也需要完整的注释、精良的架构、良好的可扩展性、完备的报警保护系统、运行前的模拟系统。
1、简单性
使PLC程序尽可能简单。简单的含义就是尽可能的使用标准化的程序框架,尽可能使用简单的指令。
要想程序简单,从大的方面讲,要优化程序结构,用流程控制指令简化程序,从小的方面讲还要用功能强的指令取代功能单一的指令,以及注意指令的安排顺序等。
2、可读性
要求所设计的程序可读性要好。这不仅便于程序设计者加深对程序的理解,便于调试,而且,还要便于别人读懂你的程序,便于使用者维护。必要时,也可使程序推广。
要使程序可读性好,所设计的程序就要尽可能清晰。要注意层次,实现模块化,以至于用面向对象的方法进行设计。要多用一些标准的设计。
如遇特殊情况下采用语言编程,多数情况下请使用梯形图编程,方便阅读。
再就是I/O分配要有规律性,便于记忆与理解。必要时,还要做一些注释工作。内部器件的使用也要讲规律性,不要随便地拿来就用。
可读性在程序设计开始时就要注意。这不易完全做到。因为在程序调试的过程中,指令的增减,内部器件的使用变化,可能使原较清晰的程序,变的有些乱。所以在设计时就对调试增减留有一定的余地,然后调试完毕后再做一下整理,这样所设计的程序具有更高的质量。
程序的注释,起码应该有以下几个方面:
A、系统注释:整套程序的版权公司和此套程序用途
B、程序块注释:此程序块的主要用途和作者
C、段注释:此段代码的用途
D、变量注释:重要性无需多言,包含I/O注释、中间变量注释
而至于保密性的考虑,我觉得应该在程序的加密算法或者块的加密上考虑,而不应该用减少注释这种小聪明来实现。
3、正确性
PLC的程序一定要正确,并要经过实际工作验证,证明其能够正确工作。这是对PLC程序的最根本的要求,若这一点做不到,其它的再好也没有用。
要使程序正确,一定要准确的使用指令,正确的使用内部器件。准确的使用指令与准确理解指令相联系,为此对指令含义和使用条件一定要弄清楚。必要时,可编些小程序对一些不清楚的指令作些测试。
同一指令,由于PLC的出厂批次不同或是PLC的系列型号的不同,一些指令细节有可能不一样,应仔细查阅编程手册。
内部器件正确使用也是重要的。如有的PLC有掉电保护,有的PLC没有。一定要做到该掉电保护的一定要用掉电保护的器件,反之则不能用。
总之,要准确的使用指令,正确使用内部器件,使所编的程序能正确要作,这是对PLC程序最根本的要求。
举个简单的例子,西门子的上升沿和下降沿需要使用带存储功能的变量作为中间变量,比如M点或者DB点,如果使用FC的temp变量就会出问题的。
4、可靠性
程序不仅要正确,还要可靠。可靠反映着PLC程序的稳定性,这也是对PLC程序的基本要求。
有的PLC程序,在正常的工作条件下或合法操作时能正确工作,而出现非正常工作条件(如临时停电,又很快再通电)或进行非法操作(如一些按钮不按顺序按,或同时按若干按钮)后,程序就不能正常工作了。这种程序,就不大可靠,或说不稳定,就是不好的程序。
好的PLC程序对非正常工作条件出现,能予以识别,并能使其与正常条件衔接,可使程序适应于多种情况。好的PLC程序对非法操作能予以拒绝,且不留下“痕迹”。只接受合法操作。
联锁是拒绝非法操作常用的手段,继电电路常用这个方法,PLC也可继承这个方法。
5、易改性
要使程序易改,也就是要便于修改。PLC的特点之一就是方便,可灵活地适用于各种情况。其办法就是靠修改或重新设计程序。
重新设计程序用于改变PLC工艺的用途要求的情况,不仅程序重编,而且I/O也要重新分配。多数情况下不需要重编程序,作一些修改就可以了。这就要求程序具有易性,便于修改。
易改也就是弹性,要求只要作很少的改动,即可达到改变参数或理改动作的目的。
6、扩展性
许多程序可能在进现场之前都已经编好,但是到了现场,可能还需要添加另外的程序,为了避免打乱整套系统的结构,需要在每个功能区预留一定的空间作为备用。
硬件上留出足够的余量,软件在编写的时候把手动,自动,半自动考虑好,位置留出来。
7、完备报警系统
PLC系统往往用于工业环境中,每一次的事故都会造成或大或小的损失,为了做到事故预处理或者在事故中将损失降到最小,必须重视PLC的报警和保护,在此将其摘出来作为系统的一个重要组成部分。
8、程序模拟
为了保证现场的调试进度或者给客户展示,往往在进现场之前,要对自己的程序进行全自动的模拟。为此需要在程序中加入模拟程序部分,模拟程序部分在正常现场运行之后断开。为了使程序具备模拟功能,需要做以下工作:
(1)将实际的PLC的I/O点转换为PLC的中间变量或者数据块变量;
(2)根据工艺要求编写各个设备的模拟程序。在设计PLC程序的过程中,能够满足以上几个方面的要求的就能称的上是一个好程序了。
(二)PLC编程的小技巧
(1)选择合适的PLC型号及I/O点数,有特殊功能需求时选择特殊功能模块。
(2)熟悉所选择的PLC编程指令及编译软件。
(3)进行软元件规划,包括内部继电器、保持继电器、数据寄存器、定时器、计数器等。
(4)进行程序规划,一般以故障提取、故障处理、手动处理、自动处理、输出处理这样的顺序进行编程。比较大型的工程或设备按功能单元分段、分块进行处理,如一条自动化生产线中有提升机、移行、顶起旋转装置等,则应按上述单元分段分块编程。
(5)在分段分块编写的程序前应加上简短的段注释,说明此段程序的功能,如有必要可以注明相应的工艺流程。分块或分段的程序再总体程序的位置顺序应基本上按工艺流程顺序排列,便于程序的可读性。
(6)在程序设计之前,应对设备进行抽象,对如停止、急停、过载、超限、超时、安全光幕、碰停、门开关等共用因子进行提取,放在启动回路或启动主控、连锁回路,作为整个程序结构的大前提,在此基础下,再将程序分为自动、手动两大功能区。
(7)将程序结构手动功能区共用因子,如手动、危及设备人身安全等因数因子进行提取,放在手动主控、连锁回路,对手动控制进行保护、屏蔽、报警。
(8)将程序结构自动功能区共用因子,如自动、超限、超时等因数因子进行提取,放在自动主控、连锁回路,对自动控制下设备进行保护、屏蔽、报警。一个总的原则就是,在确保安全的前提下,严格限制设备的进,宽松限制设备的出。
(9)程序设计时应设计程序总复位功能,便于使用者在设备出现故障情况下,可以方便尽快恢复设备正常工作。总复位应充分考虑在复位过程中设备和人员的安全。
(10)自动模式切换到手动模式时,程序应清除自动模式下的输出和中间状态。特别是在自动模式使用SET指令时,必须在手动模式用RESET指令予以清除。
(11)严禁在编制程序中使用双输出,即同一条输出语句或同一个输出线圈在程序中出现2次及以上。在不同模式条件下的对同一输出点的输出使用中间继电器进行中转,最后集中到一起并列到输出点。
(12)使用触摸屏时,对触摸屏和PLC公用的控制区和状态区,不得做其他功能方面的编程使用。
(13)对PLC的特殊模块,在使用之前,应先查明其控制区和状态区是否占用工作字,若占用,不得将这些工作字做其他方面的编程。
(14)PLC的输入、输出、中间继电器、定时器、计数器、数据寄存器等都要加中文注释。输入、输出还要有元器件名称位号。对应的输入点,一般情况下默认为外围开关连接的是NO触点,对于需要接NC触点的须在注释中标明。所有注释应当清晰明了,不易产生误解,尽量少使用泛指。
(15)工程调试完成后,系统必须保留最终软件程序,保存的文件名应包含项目编号/作者/日期信息/版本号等。
(16)关于程序加密:对于加密程序的密码必须有专门的文件予以保存,并注明相应的用户名+密码+权限,分发给至少两个人以上了解密码,防止密码丢失带来无法打开程序的情况。
(17)PLC和上位机(或触摸屏)组成监控系统时,在画面上很多时候需要有“手动”、“自动”等控制模式(一般都是多个只能一个时)。在程序里面可以用“MOV”指令。如:当选择“手动”就将常数1 MOV到一个寄存器VB10里面,当选择“自动”就将2 MOV到同一寄存器VB10。只要判断寄存器的数据是多少,就知道系统是那种控制方式。这样的思路好处是容易理解,不需要互锁之类的麻烦程序。
(18)程序有模拟量控制时,如果读取的模拟量基本上没误差,可以采取时间滤波的方式,延时一段时间。如果读取的数据误差很大,就需要采取其它的滤波方式,如算平均值等。可以查阅相关的资料。
(19)在程序调试过程中(特别是设备改造时,你的程序是加入到原来设备的程序中时),当程序语句中出现条件满足,而输出线圈不接通时,可以检查你的这段程序是否是在这样的语句之间,如JUMP\go to\等语句。还有一种可能就是在中断程序之后,条件满足而没输出不接通,一般都是这段的程序不被扫描。
(20)在顺序控制程序时,即一个动作完成后,进入到下一个动作,等类似的顺序控制,采用+10+10控制模式,本人觉得很方便。其思路是:预置一个寄存器,在初始化时值为0,当系统启动后,对它+10,此时寄存器为10,寄存器等于10时可以做第一个动作;第一个动作完成后,再对寄存器+10,此时寄存器等于20,可以做第二个动作,第二个动作完成后又+10,此时寄存器等于30,这样只要判断寄存器里面数据为多少,就知道要完成那个动作。当需要跳跃动作时,可以不再+10,可以加+20\+30....,看实际的需要而定。为什么加10而不是加1,因为加10之后,如果插入一段,只要在这10个空余的地方随便选择一个位置就可以了。
(21)在设计程序的时候,当出现工艺上的故障(非控制系统控制),最好将故障现象保持,并有灯光声音报警。直到操作工复位,以让其知道系统出现了故障。不然停机了,别人还认为你的程序问题。一般都是在设计一个新系统时,要注意到这些。
(22)对于经常调用的子程序,可以做成子模块,频繁调用。
(23)由于生产机械在工作循环中的各工步运动在执行时需要一定的时间,且这些时间都有一定的限度,因此可以以这些时间为参考,在要检测的工步动作开始的同时,起动一个定时器,定时器的时间设定值比正常情况下该动作要持续的时间长20%~30%,而定时器的输出信号可以用于报警或自动停机装置。当生产机械某工步动作的时间超过规定时间,达到对应的定时器预置时间,还未转入下一工步动作时定时器发出故障信号,该信号停止正常工作循环程序,起动报警或停机程序,这就是我们常说的超节拍保护。
(24)一些安全用检测开关(如急停按钮、安全光幕、极限开关等)实用常闭(NC)输入。
(25)为安全、节能考虑,尽量将输出设计成需要动作时才动作,一旦到位就停止输出,而不要设计成平时一直输出,需要停止时才让输出断开。
(26)执行元件的动作原则应当是宁可不动,也不要乱动!
(27)单台设备控制:单台设备必须有软手操/自动切换以及软手操时可以启/停功能,由自动切换到软手操时,设备不能停机;由软手操切换到自动时,设备启/停取决于自动程序。
(28)单台设备(泵、风机及其它大型设备)运行满24小时。
免责声明:本文转自网络,版权归原作者所有,如涉及作品版权问题,请及时与我们联系删除,谢谢!
如何获取 电气热门资料?
操作指引如下!
相关问答
plc控制器报错怎么看?
当plc控制器报错时,可以按照以下步骤来进行观察和分析:1.开始环境观察:首先检查plc控制器周围的环境情况。确保电源供应正常,没有杂物或堵塞物造成的过热等...
plc有程序判断编码器故障吗?
plc有程序判断编码器故障,简单的就用发出脉冲与接收脉冲比较,在定位范围内为正常,否则编码器故障。一般来讲,使用PLC脉冲采集模块最好,里面有好多内定义出错...
怎么判断PLC是高电平还是低电平?
PLC的输入跟输出的是高电平还是低电平,跟PLC的输出型号有关系,1、FX1系列或FX2系列例如FX1N-40MT(晶体管输出)输入和输出都只能够是低电平;FX1N-40MR(继...
如何判断PLC输入端是否烧坏?
1,把PLC连接电源后,看看PLC电源指示灯是否亮,亮则正常,否则损坏。2,连接输入信号,PLC输出指示灯亮,则正常。3,使用电脑和通信线(保证电脑和通信线没有...1,...
plc如何判断网络通讯正常?
在cpu的诊断信息里可以看到哪个站访问丢失;或者在线状态下,监控硬件,断线的站会在连线的位置上有个红色的斜杠,表示网络通讯中断。也可以在硬件配置里面在线...
怎么通过程序判断触摸屏与plc通讯故障-ZOL问答
一个简单的方法:PLC里面设置一个变量,每秒钟加1,然后在触摸屏上显示这个变量,如果这个变量长时间不变,那就是通讯有问题了。有用(0)回复路由器上门安装1656...
plc如何判断奇偶数?
你只用判断这个寄存器的最后一位不就行了,比如VW100这个寄存器,你判断v100.0=1则为奇数,v100.0=0则VW100寄存器的数为偶数指令将两个16位整数相除,得出一个32...
怎么判断PLC是高电平还是低电平?
可以通过PLC的输入引脚的电位来判断PLC是高电平还是低电平。因为PLC输入引脚连接在外部设备的输出引脚上,当外部设备输出电压较高时,PLC输入引脚会处于高电平...
plc定义符号怎么使用?
PLC定义符号的使用方法如下:输入符号:在PLC编程中,输入符号用于表示外部输入信号,如传感器、按钮等。常见的输入符号有X、I、E等。其中,X表示输入信号的状...
如何判断plc应该用npn还是pnp?
根据控制信号和负载位置来判断使用NPN还是PNP。因为PLC公共端的作用是将电源端和输出端连接在一起,控制信号必须与负载同向才能使之导通,所以控制信号为正向...