版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
第七章故障诊断PLC是运行在工业环境中的控制器,一般而言可靠性比较高,出现故障的概率较低,但是,出现故障也是难以避免的。一般引发故障的原因有很多,故障的后果也有很多种。引发故障的原因虽然我们不能完全控制,但是我们可以通过日常的检查和定期的维护来消除多种隐患,把故障率降到最低。故障的后果轻的可能造成设备的停机,影响生产的数量;重的可能造成财产损失和人员伤亡,如果是一些特殊的控制对象,一旦出现故障可能会引发更严重的后果。故障发生后,对于维护人员来说最重要的是找到故障的原因,迅速排除故障,尽快恢复系统的运行。对于系统设计人员在设计时要考虑到系统出现故障后的系统的自我保护措施力争使故障的停机时间最短,故障的产生的损失最小。7.1了解S7-300PLC的基本故障种类一般PLC的故障主要有外部故障或是内部错误造成。外部故障时由外部传感器或执行机构的故障等引发PLC产生故障,可能会使整个系统停机,甚至烧坏PLC。而内部错误是PLC内部的功能性错误或编成错误造成的,可以使系统停机。S7-300具有很强的错误(或称故障)检测和处理能力,CPU检测到某种错误后,操作系统调用对应得组织块,用户可以在组织块中编程,对发生的错误采取相应的措施。对于大多数错误,如果没有给组织块编程,出现错误时CPU将进入STOP模式。被S7CPU检测到并且用户可以通过组织块对其进行处理的错误分为两类:1、异步错误异步错误是与PLC的硬件或操作系统密切相关的错误,与程序执行无关,但异步错误的后果一般比较严重。2、同步错误同步错误是与执行用户程序有关的错误,程序中如果有不正确的地址区,错误的编号或错误的地址,都会出现同步错误,操作系统将调用同步错误OB。7.2掌握PLC的常规维护及故障排除的方法为了保障系统的正常运行,定期对PLC系统进行维护和检查是必不可少的,而且还必须熟悉一些故障诊断和排除方法。7.2.1检查与维护7.2.2外部故障的排除方法7.2.3内部错误的故障诊断7.2.1检查与维护一、定期检查PLC是一种工业控制设备,尽管在可靠性方面采取了许多措施,但工作环境对PLC影响还是很大的。所以,通常每隔半年时间应对PLC作定期检查。如果PLC的工作条件不符合表7-1规定的标准,就要做一些应急处理,以便使PLC工作在规定的标准环境。表7-1周期性检查一览表检查项目检查内容标准交流电源电压稳定度测量加在PLC上的电压是否为额定值?电源电压是否出现频繁急剧的变化?电源电压必须在工作电压范围内电源电压波动必须在允许范围内工作环境温度、湿度震动、灰尘温度和湿度是否在相应的变化范围内?(当PLC安装在仪表板上时,仪表上的温度可以认为是PLC的环境温度。)温度0~55℃相对湿度85%以下振幅小于0.5mm(10~55Hz)无大量灰尘、盐分和铁屑安装条件基本单元和扩展单元是否安装牢固?基本单元和扩展单元的联接电缆是否完全插好?接线螺钉是否松动?外部接线是否损坏?安装螺钉必须上紧联接电缆不能松动联接螺钉不能松动外部接线不能有任何外观异常使用寿命锂电池电压是否降低?继电器输出触点锂电池工作5年左右继电器输出触点寿命300万次(35V以上)二、日常维护PLC除了锂电池和继电器输出触点外,基本上没有其它易损元器件。由于存放用户程序的随机内存(RAM),计数器和具有保持功能的辅助继电器等均用锂电池保护,锂电池的寿命大约5年,当锂电池的电压逐渐降低达一定程度时,PLC基本单元上的电池电压跌落指示灯会亮。提示用户注意,有锂电池所支持的程序还可以保持一周左右,必须更换电池,这是日常维护的主要内容。调换锂电池的步骤:
1、在拆装之前,应先让PLC通电15S以上,这样可使作为内存备用电源的电容器充电,在锂电池断开后,该电容可对PLC作短暂供电,以保护RAM中的信息不丢失。2、断开PLC的交流电源。3、打开基本单元的电池盖板。4、取下旧电池,装上新电池。5、盖上电池盖板。更换电池的时间要尽量短,一般不允许超过3min。如果时间过长,RAM中的程序将丢失。7.2.2外部故障的排除方法PLC有很强的自诊断能力,当PLC自身故障或外围设备发生故障,都可用PLC上具有诊断指示功能的发光二极管的亮灭来诊断。一、故障查找1、总体检查根据总体检查流程图找出故障点的大方向,逐渐细化,以找出具体故障,如图7-1所示。2、电源故障检查电源等不亮部需要对供电系统进行检查,检查流程图如图7-2所示。
3、运运行故故障检检查电源正正常,,运行行指示示灯不不亮,,说明明系统统已因因某种种异常常而终终止了了正常常运行行,检检查流流程图图如图图7-3所所示。。4、输输入输输出故故障检检查输入输输出是是PLC与与外部部设备备进行行信息息交流流的信信道,,其是是否正正常工工作,,除了了和输输入输输出单单元有有关外外,还还与联联接配配线、、接线线端子子、保保险管管等组组件状状态有有关。。图7-4和图图7-5分分别所所示的的是输输入检检查流流程和和输出出检查查流程程。图7-4输输入入检查查流程程图图7-5输输出出检查查流程程图5、外外围环环境的的检查查影响PLC工作作的环环境因因素主主要有有温度度、湿湿度、、噪音音与粉粉尘,,以及及腐蚀蚀性酸酸碱等等。二、故故障的的处理理不同故故障产产生的的原因因不同同,它它们也也有不不同的的处理理方法法,具具体请请见下下表所所列。。表7-2CPU装装置、、I/O扩扩展装装置故故障处处理序号异常现象可能原因
处理1[POWER]LED灯不亮1、电压切换端子设定不良2、保险丝熔断正确设定切换端子更换保险丝2保险丝多次熔断1、电压切换端子设定不良2、线路短路或烧坏正确设定切换端子更换电源单元3[RUN]LED灯不亮1、程序错误2、电源线路不良3、I/O单元号重复4、远程I/O电源关,无终端修改程序更换CPU单元修改I/O单元号接通电源4运行中输出端没闭合([POWER]灯亮)电源回路不良更换CPU单元5编号以后的继电器不动作I/O总线不良更换基板单元6特定的继电器编号的输出(入)接通
I/O总线不良更换基板单元7特定单元的所有继电器不接通I/O总线不良更换基板单元序号异常现象可能原因处理1输入全部不接通(动作指示灯也灭)1、未加外部输入电压供电2、外部输入电压低加额定电源电压3、端子螺钉松动拧紧4、端子板联接器接触不良把端子板补充插入、锁紧。更换端子板联接器2输入全部断开(输入指示灯也灭)输入回路不良更换单元3输入全部不关断输入回路不良更换单元416特定继电器编号的输入不接通1、输入器件不良更换输入器件2、输入配线断线检查输入配线3、端子螺钉松驰拧紧4、端子板联接器接触不良把端子板补充插入、锁紧。更换端子板联接器5、外部输入接触时间短调整输入组件6、输入回路不良更换单元7、程序的OUT指令中用了输入继电器编号修改程序5特定继电器编号的输入不关断1、输入回路不良更换组件2、程序的OUT指令中用了输入继电器编号修改程序6输入不规则ON/OFF动作1、外部输入电压低使外部输入电压在额定值范围2、噪音引起的误动作抗干扰措施:安装绝缘变压器、安装尖峰抑制器、用屏蔽线配线等3、端子螺钉松动拧紧4、端子板联接器接触不良把端子板补充插入、锁紧。更换端子板联接器7异常动作的继电器编号为8点单位1、COM端螺钉松动拧紧2、端子板联接器接触不良把端子板补充插入、锁紧。更换端子板联接器3、CPU不良更换CPU单元8输入动作指示灯不亮(动作正常)LED灯坏更换单元表7-3输输入入单元元故障障处理理序号异常现象可能原因处理1输出全部不接通1、未加负载电源加电源2、负载电源电压低使电源电压为额定值3、端子螺钉松动拧紧4、端子板联接器接触不良把端子板补充插入、锁紧。更换端子板联接器5、保险丝熔断更换保险丝6、I/O总线接触不良更换单元7、输出回路不良更换单元2输出全部不关断输出回路不良更换单元3特定继电器编号的输出不接通(动作指示灯灭)1、输出接通时间短更换单元2、程序中指令的继电器编号重复修改程序3、输出回路不良更换单元4特定继电器编号的输出不接通(动作指示灯亮)1、输出器件不良更换输出器件2、输出配线断线检查输出线3、端子螺钉松动拧紧4、端子联接接触不良端子充分插入、拧紧5、继电器输出不良更换继电器6、输出回路不良更换单元5特定继电器编号的输出不关断(动作指示灯灭)1、输出继电器不良更换继电器2、由于漏电流或残余电压而不能关断更换负载或加假负载电阻6特定继电器编号的输出不关断(动作指示灯亮)1、程序OUT指令的继电器编号重复修改程序2、输出回路不良更换单元7输出出现不规则的ON/OFF现象1、电源电压低调整电压2、程序OUT指令的继电器编号重复修改程序3、噪音引起的误动作抗噪音措施:装抑制器、装绝缘变压器、用屏蔽线配线等4、端子螺钉松动拧紧5、端子联接接触不良端子充分插入、拧紧8异常动作的继电器编号为8点单位1、COM端子螺钉松动拧紧2、端子联接接触不良端子充分插入、拧紧3、保险丝熔断更换保险丝4、CPU不良更换CPU单元9输出指示灯不亮(动作正常)LED灯坏更换单元表7-4输输出单元故故障处理7.2.3内部错错误的故障障诊断S7-300具有非非常强大的的故障诊断断功能,通通过STEP7编编程软件可可以获得大大量的硬件件故障与编编程错误的的信息,使使用户能迅迅速地查找找到故障。。这里的诊断断是指S7-300内部集成成的错误识识别和记录录功能,错错误信息在在CPU的的诊断缓冲冲区内。有有错误或事事件发生时时,标有日日期和时间间的信息被被保存到诊诊断缓冲区区,时间保保存到系统统的状态表表中,如果果用户已对对有关的错错误处理组组织块编程程,CPU将调用该该组织块。。一、故障障诊断的的基本方方法在SIMATIC管理理器中用用菜单命命令“View”→““Online”打开开再现窗窗口。打打开所有有的站,,查看是是否有CPU显显示了指指示错误误或故障障的诊断断符号。。诊断符号号用来形形象直观观地表示示模块的的运行模模式和模模块的故故障状态态,如图图7-6所示。。如果模模块有诊诊断信息息,在模模块符号号上将会会增加一一个诊断断符号,,或者模模块符号号的对比比度降低低。图7-6诊断断符号诊断符号号“当前前组态与与实际组组态不匹匹配”表表示被组组态的模模块不存存在,或或者插入入了与组组态的模模块的型型号不同同的模块块。诊断符号号“无法法诊断””表示无无线上连连接,或或该模块块不支持持模块诊诊断信息息,例如如电源模模块或子子模块。。“强制””符号表表示在该该模块上上有变量量被强制制,即在在模块的的用户程程序中有有变量被被赋予一一个固定定植,该该数据值值不能被被程序改改变。““强制””符号可可以与其其它符号号组合在在一起显显示,如如图7-6中““强制与与运行””符号。。从在线的的SIMATIC管理理器的窗窗口、在在线的硬硬件诊断断功能打打开的快快速窗口口和在线线的硬件件组态窗窗口(诊诊断窗口口),都都可以观观察到诊诊断符号号。通过观察察诊断符符号,可可以判断断CPU模块的的运行模模式,是是否有强强制变量量,CPU模块块和功能能模块((FM))受否有有故障。。打开在线线窗口,,在SIMATIC管管理器中中执行菜菜单命令令“PLC”→→“Diagnostic/Setting”→→“HardwareDiagnostics”,将将打开硬硬件诊断断快速浏浏览窗口口。在该该窗口中中显示PLC的的状态,,看到诊诊断功能能的模块块的硬件件故障,,双击故故障模块块可以获获得详细细的故障障信息。。二、利用用CPU诊断缓缓冲区进进行详细细故障诊诊断建立与PLC的的在线连连接后,,在SIMATIC管管理器中中选择要要检查的的站,执执行菜单单命令““PLC”→““Diagnostics/Setting”→→“ModuleInformation”,,如图7-7所所示,将将打开模模块信息息窗口,,显示该该站中CPU的的信息。。在快速速窗口中中使用““ModuleInformation”。图7-7打开开CPU诊断缓缓冲区在模块信信息窗口口中的诊诊断缓冲冲区(DiagnosticBuffer)选选项中,,给出了了CPU中发生生的事件件一览表表,选中中“Events”窗窗口中某某一行的的某一事事件,下下面灰色色的“Detailson”窗口口将显示示所选事事件的详详细信息息,见图图7-8所示。。使用诊诊断缓冲冲区可以以对系统统得错误误进行分分析,查查找停机机的原因因,并对对出现的的诊断时时间分类类。图7-8CPU模块块的在线线模块信信息窗诊断事件件包括模模块故障障、过程程写错误误、CPU中的的系统错错误、CPU运运行模式式的切换换、用户户程序的的错误和和用户用用系统功功能SFC52定义的的诊断事事件。在模块信信息窗口口中,编编号为1,位于于最上面面的事件件是最近近发生的的事件。。如果显显示因编编程错误误造成CPU进进入STOP模模式,选选择该事事件,并并点击““OpenBlock”按按钮,将将在程序序编辑器器中打开开于错误误有关的的块,显显示出错错的程序序段。诊断中断断和DP从站诊诊断信息息用于查查找模块块和DP从站中中的故障障原因。。“Memory”(内内存)选选项给出出了所选选的CPU或M7功能能模块的的工作内内存和装装载内存存当前的的使用情情况,可可以检查查CPU或功能能模块的的装载内内存中是是否有足足够的空空间用来来存储新新的块,,如图7-9所所示。图7-9“Memory””选项项“ScanCycleTime”(扫扫描循环环时间))选项卡卡用于显显示所选选CPU或M7功能模模块的最最小循环环时间、、最大循循环时间间和当前前循环时时间,如如图7-10所所示。如果最长长循环时时间接近近组态的的最大扫扫描循环环时间,,由于循循环时间间的波动动可能产产生时间间错误,,此时应应增大设设置的用用户程序序最大循循环时间间(监控控时间))。如果循环环时间小小于设置置的最小小循环时时间,CPU自自动延长长循环至至设置的的最小循循环时间间。在这这个延长长时间内内可以处处理背景景组织块块(OB90))。组态态硬件时时可以设设置最大大和最小小循环时时间。图7-10““ScanCycleTime”选选项“TimeSystem””(时间间系统))选项卡卡显示当当前日期期、时间间、运行行的小时时数以及及时钟同同步的信信息,见见图7-11所所示。图7-11“TimeSystem”选选项“PerformanceData”(性能能数据)选选项卡给出出了所选模模块(CPU/FM)可以使使用的地址址区和可以以使用的OB、SFB、和SFC,见见图7-12所示。。图7-12“PerformanceData”选选项“Communication”(通通信)选项项卡给出了了所选模块块的传输速速率、可以以建立的连连接个数和和通信处理理占扫描周周期的百分分比,如图图7-13所示。图7-13“Communication”选选项“Stacks”((堆栈)选选项卡只能能在STOP模式或或HOLD(保持))模式下调调用,显示示所选模块块的B(块块)堆栈。。还可以显显示I(中中断)堆栈栈、L(局局域)堆栈栈以及嵌套套深度堆栈栈。可以跳跳转到使块块中断的故故障点,判判明引起停停机的原因因。在模块信息息窗口各选选项卡的上上面显示了了附加的信信息,例如如所选模块块的在线路路径、CPU的操作作模式和状状态(例如如出错或OK)、所所选模块的的操作模式式,如果它它有自己的的操作模式式的话(例例如CP342-5)。从(“AccessibleNodes””窗口)打打开的非CPU模块块的模块信信息中,不不能显示CPU本身身的操作模模式和所选选模块的状状态。三、错误处处理组织块块组织块是操操作系统与与用户程序序之间的接接口。S7提供了各各种不同的的组织块((OB),,用组织块块可以创建建在特定时时间执行的的程序和响响应特定事事件的程序序。当系统程序序可以检测测下列错误误:不正确确的CPU功能、系系统程序执执行中的错错误、用户户程序中的的错误和I/O中的的错误。根根据错误类类型的不同同,CPU设置为进进入STOP模式或或调用一个个错误处理理OB。当CPU检检测到错误误时,会调调用适当的的组织块,,见表7-5。如果果没有相应应的错误处处理OB,,CPU将将进入STOP模式式。用户可可以在错误误处理OB中编写如如何处理这这种错误的的程序,以以减小或消消除错误的的影响。OB号错误类型优先级OB70I/O冗余错误(仅H系列CPU)25OB72CPU冗余错误(仅H系列CPU)28OB73通信冗余错误(仅H系列CPU)35OB80时间错误26OB81电源错误26/28OB82诊断中断OB83插入/取出模块中断OB84CPU硬件故障OB85优先级错误OB86机架故障或分布式I/O的站故障OB87通信错误OB121编程错误引起错误的OB的优先级OB122I/O访问错误表7-5错错误处理理组织块为避免发生生某种错误误时CPU进入停机机,可以在在CPU中中建立一个个对应的空空的组织块块。用户可可以利用OB中的变变量声明表表提供的信信息来判别别错误的类类型。根据S7CPU检检测到并且且用户可以以通过组织织块对其进进行处理的的错误分为为异步错误误和同步错错误。1、异步错错误组织块块异步错误是是与PLC的硬件或或操作系统统密切相关关的错误,,与程序执执行无关。。异步错误误的后果一一般都比较较严重。异异步错误对对应的组织织块为OB70~OB73和和OB80~OB87,有最最高的优先先级。操作作系统检测测到一个异异步错误时时,将启动动相应的OB。(1)时间错错误处理组织织块(OB80)OB执行时出出现故障S7-300CPU的操操作系统调用用OB80。。这样的故障障包括循环时时间超出、执执行OB时应应答故障、向向前移动时间间以致于跃过过了OB的启启动的时间、、CLR后恢恢复RUN方方式。如果当循环中中断OB仍在在执行前一次次调用时,该该OB块的启启动事件发生生,操作系统统调用OB80。如果OB80未编编程,CPU变为STOP方式,可可以使用SFC39至42封锁或延延时和在使用用时间故障OB。如果在在同一一个稍稍描周周期中中由于于扫描描时间间超出出OB80被调调用两两次,,CPU就就变为为STOP方式式,可可以通通过在在程序序中适适当的的位置置调用用SFC43““RE_TRIGR”来来避免免这种种情况况。打开OB80可可以从从OB80的临临时变变量中中得到到故障障信息息,见见图7-14所所示。。图7-14OB80的的临时时变量量变量类型描述OB80_EV_CLASSBYTE事件级别和标识:B#16#35OB80_FLT_IDBYTE故障代码OB80_PRIORITYBYTE优先级:在RUN方式时OB80以优先级26运行,OB请求缓冲区溢出时以优先级28运行OB80_OB_NUMBRBYTEOB号OB80_RESERVED_1BYTE保留OB80_RESERVED_2BYTE保留OB80_ERROR_INFOWORD故障信息:根据故障代码OB80_ERR_EV_CLASSBYTE引起故障的启动事件的事件级别OB80_ERR_EV_NUMBYTE引起故障的启动事件的事件号OB80_OB_PRIORITYBYTE故障信息:根据故障代码OB80_OB_NUMBYTE故障信息:根据故障代码OB80_DATE_TIMEDATE_AND_TIMEOB被调用时的日期和时间4表7-6OB80的变变量申申明表表(2))电源源故障障处理理组织织块((OB81)与电源源(仅仅对S7-400))或后后备电电池有有关的的故障障事件件发生生时,,S7-300CPU的操操作系系统调调用OB81,,表7-7为OB81的的变量量申明明表。。如果OB81未未编程程,CPU并不不转换换为STOP方方式。。可以以使用用SFC39至至42来禁禁用、、延时时或再再使用用电源源故障障(OB81))。变量类型描述OB81_EV_CLASSBYTE事件级别和标识:B#16#38,离去事件;B#16#39,到来事件OB81_FLT_IDBYTE故障代码OB81_PRIORITYBYTE优先级:可通过STEP7选择(硬件组态)OB81_OB_NUMBRBYTEOB号OB81_RESERVED_1BYTE保留OB81_RESERVED_2BYTE保留OB81_MDL_ADDRINT位0至2:机架号;位3:0=备用CPU,1=主站CPU;位4至7:1111OB81_RESERVED_3BYTE仅与部分故障代码有关OB81_RESERVED_4BYTEOB81_RESERVED_5BYTEOB81_RESERVED_6BYTEOB81_DATE_TIMEDATE_AND_TIMEOB被调用时的日期和时间表7-7OB81的变变量申申明表表(3))诊断断中断断处理理组织织块((OB82)如果模模块具具有诊诊断能能力又又使能能了诊诊断中中断,,当它它检测测到错错误时时,它它输出出一个个诊断断中断断请求求给CPU,以以及错错误消消失时时,操操作系系统都都会调调用OB82。。当一一个诊诊断中中断被被触发发时,,有问问题的的模块块自动动地在在诊断断中断断OB的起起动信信息和和诊断断缓冲冲区中中存入入4个个字节节的诊诊断数数据和和模块块的起起始地地址。。可以以用SFC39至42来来禁用用、延延时或或再使使用诊诊断中中断((OB82),,表7-8描述述了诊诊断中中断OB82的的临时时变量量。变量类型描述OB82_EV_CLASSBYTE事件级别和标识:B#16#38,离去事件;B#16#39,到来事件OB82_FLT_IDBYTE故障代码OB82_PRIORITYBYTE优先级:可通过SETP7选择(硬件组态)OB82_OB_NUMBRBYTEOB号OB82_RESERVED_1BYTE备用OB82_IO_FLAGBYTE输入模板:B#16#54;输出模板:B#16#55OB82_MDL_ADDRWORD故障发生处模板的逻辑起始地址OB82_MDL_DEFECTBOOL模板故障OB82_INT_FAULTBOOL内部故障OB82_EXT_FAULTBOOL外部故障OB82_PNT_INFOBOOL通道故障OB82_EXT_VOLTAGEBOOL外部电压故障OB82_FLD_CONNCTRBOOL前连接器未插入OB82_NO_CONFIGBOOL模板未组态OB82_CONFIG_ERRBOOL模板参数不正确OB82_MDL_TYPEBYTE位0至3:模板级别;位4:通道信息存在;位5:用户信息存在;位6:来自替代的诊断中断;位7:备用OB82_SUB_MDL_ERRBOOL子模板丢失或有故障OB82_COMM_FAULTBOOL通讯问题OB82_MDL_STOPBOOL操作方式(0:RUN,1:STOP)OB82_WTCH_DOG_FLTBOOL看门狗定时器响应OB82_INT_PS_FLTBOOL内部电源故障OB82_PRIM_BATT_FLTBOOL电池故障OB82_BCKUP_BATT_FLTBOOL全部后备电池故障OB82_RESERVED_2BOOL备用OB82_RACK_FLTBOOL扩展机架故障OB82_PROC_FLTBOOL处理器故障OB82_EPROM_FLTBOOLEPROM故障OB82_RAM_FLTBOOLRAM故障OB82_ADU_FLTBOOLADC/DAC故障OB82_FUSE_FLTBOOL熔断器熔断OB82_HW_INTR_FLTBOOL硬件中断丢失OB82_RESERVED_3BOOL备用OB82_DATE_TIMEDATE_AND_TIMEOB被调用时的日期和时间表7-8OB82的变量申申明表在编写OB82的程程序时,要要从OB82的起动动信息中获获得与出现现的错误有有关的更确确切的诊断断信息,例例如是哪一一个通道出出错,出现现的是哪种种错误。使使用SFC51“RDSYSST”也也可以读出出模块的诊诊断数据,,用SFC52“WR_USMSG””可以将这这些信息存存入诊断缓缓冲区。现在通过结结合模板的的短线诊测测应用和SFC51来说明诊诊断中断组组织块OB82的使使用方法。首先,在SIMATIC管理理器中新建建一个项目目,插入一一个300站。硬件件组态,在在机架上插插入CPU315-2DP和一块具具有中断功功能模拟量量输入模块块SM331,配置置SM331模块的的“Inputs””选项,选选择0-1通道组为为2线制电电流(2DMU),,其它通道道组为电压压,并注意意模块的量量程卡要与与设置的相相同。选中中“Enable””框中的““DiagnosticInterrupt”选项,,选中“Diagnostics”选选项中的0-1通道道组中的““GroupDiagnostics”和““withCheckforWireBreak”选项项,如图7-15所所示。图7-15硬件组组态点击OK,,然后双击击CPU315-2DP,,选择“Interrupts”选项项,可以看看到CPU支持OB82,见见图7-16所示。。硬件组态态完成后,,保存编译译,下载到到CPU中中。图7-16CPU中的“Interrupts”选项项然后完成诊诊断程序。。OB82程序当在在硬件组态态中设定的的诊断中断断发生后执执行,但OB82执执行时可以以通过它的的临时变量量OB82_MDL_ADDR读出产产生诊断中中断的模块块的逻辑地地址。STEP7不能时时时监控程序序的运行。。在SIMATIC管管理器中S7Program(1))下插入一一个STLSource文文件STLSource(1),如如图7-17所示。。图7-17插入STLSource文件打开OB1,在“Libraries”→“StandardLibraries”→““SystemFunctionBlocks”下下找到SFC51““RDSYSSTDIAGNSTC”,按F1键,出出现SFC51在线线帮助信息息,在帮助助信息的最最低部点击击“ExampleformodulediagnosticswiththeSFC51”,,然后点击击“STLSourceFile”,选中中全部STLSource源程序拷拷贝到STLSource(1)中中,编译保保存。这是是在Blocks中中生成OB1、OB82、DB13和和SFC51。打开OB82,对其其中的程序序做简单的的修改,将将19和20行的程程序拷贝到到go:后后面,如图图7-18所示。再再进行保存存,下载到到CPU中中。图7-18OB82的程序序修改下载完成后后,将CPU上的模模式选择开开关切换到到“RUN”状态,,此时,CPU上的的“RUN”灯和““SF”灯灯会亮,SM331模块上的的“SF””灯也会亮亮。同时,,查看CPU的诊断断缓冲区可可以获得相相应的故障障信息。打开DB13数据块块,在线监监控,见图图7-19所示。因因为通道断断线是一到到来事件,,所以诊断断信息存储储到COME数组中中。图7-19DB13中的数数据变换本例中COME数组组字节的含含义接受如如下:COME[1]=B#16#D:表示示通道错误误,外部故故障和模块块问题;COME[2]=B#16#15:表表示此段信信息为模拟拟量模块的的通道信息息;COME[3]=B#16#0:表示示CPU处处于运行状状态,无字字节2中标标示的故障障信息;COME[4]=B#16#0:表示示无字节3中标示的的故障信息息;COME[5]=B#16#71:表表示模拟量量输入;COME[6]=B#16#8:表示示模块的每每个通道有有8个诊断断位;COME[7]=B#16#8::表表示示模模块块的的通通道道数数;;COME[8]=B#16#3::表表示示0通通道道错错误误和和1通通道道错错误误,,其其他他通通道道正正常常;;COME[9]=B#16#10::表表示示0通通道道断断线线;;COME[10]=B#16#10::表表示示1通通道道断断线线;;COME[11]=B#16#0::表示2通道道正常,其他他通道与2通通道相同。(4)插入/拔出模块中中断组织块((OB83))当组态的模块块插入/拔出出后或在SETP7下下修改了模块块的参数并在在“RUN””状态把所做做修改下载到到CPU后,,CPU操作作系统调用OB83。在“RUN””、“STOP”和“STARTUP”状态时时每次组态的的模块插入或或拔出,就产产生一个插入入/拔出中断断(电源模块块、CPU、、适配模块和和IM模块不不能在这种状状态下移出))。该中断引引起有关CPU的诊断缓缓冲区和系统统状态表的记记录如果在“RUN”状态下下拔出组态的的模块,OB83期启动动。由于仅以以一秒的间隔隔监视模块的的存在,如果果模块被直接接访问或当过过程映像被刷刷新时可能首首先检测出访访问故障。如如果在“RUN”状态下下插入一块模模块,操作系系统检查插入入模块的类型型是否与组态态的记录一致致,如果模块块类型匹配,,于是OB83被启动并并且参数被赋赋值。可以借借助SFC39至42来来禁用、延时时或再使用插插入/拔出模模块中断(OB83),,表7-9描描述了插入/拔出模块中中断OB83的临时变量量。变量类型描述OB83_EV_CLASSBYTE事件级别和标识:B#16#32,模块参数赋值结束;B#16#33,模块参数赋值启动;B#16#38,模块插入;B#16#39,模块拔出或无反应,或参数赋值结束OB83_FLT_IDBYTE故障代码OB83_PRIORITYBYTE优先级,可通过STEP7选择(硬件组态)OB83_OB_NUMBRBYTEOB号OB83_RESERVED_1BYTE块模块或接口模块标识OB83_MDL_IDBYTE范围:B#16#54,外设输入(PI);B#16#55,外设输出(PQ)OB83_MDL_ADDRWORD有关模块的逻辑起始地址OB83_RACK_NUMWORDB#16#A0,接口模块号;B#16#C4,机架号或DP站号(低字节)或DP主站系统ID(高字节)OB83_MDL_TYPEWORD有关模块的模块类型OB83_DATE_TIMEDATE_AND_TIMEOB被调用时的日期和时间表7-9OB83的变变量申明表(5)CPU硬件故障处处理组织块((OB84))当CPU检测测到MPI网网络的接口故故障、通信总总线的接口故故障或分布式式I/O网卡卡的接口故障障时,操作系系统调用OB84。故障障消除时也会会调用该OB块,即事件件到来和离去去时都调用该该OB。表7-10描述述了CPU硬硬件故障OB84的临时时变量。变量类型描述OB84_EV_CLASSBYTE事件级别和标识:B#16#38,离去事件;B#16#39,到来事件OB84_FLT_IDBYTE故障代码OB84_PRIORITYBYTE优先级,可通过STEP7选择(硬件组态)OB84_OB_NUMBRBYTEOB号OB84_RESERVED_1BYTE备用OB84_RESERVED_2BYTE备用OB84_RESERVED_3WORD备用OB84_RESERVED_4DWORD备用OB84_DATE_TIMEDATE_AND_TIMEOB被调用时的日期和时间表7-10OB84的的变量申明表表(6)优先级级错误处理组组织块(OB85)在以下情况下下将会触发优优先级错误中中断:产生了一个中中断事件,但但是对应的OB块没有下下载到CPU;访问一个系统统功能块的背背景数据块时时出错;刷新过程映像像表时I/O访问出错,,模块不存在在或有故障。。在编写OB85的程序时时,应根据OB85的起起动信息,判判定是哪个模模块损坏或没没有插入。可可以使用SFC39至42封锁或延延时并使能优优先级故障OB,表7-11描述了了优先级故障障OB85的的临时变量。。变量类型描述OB85_EV_CLASSBYTE事件级别和标识OB85_FLT_IDBYTE故障代码OB85_PRIORITYBYTE优先级,可通过STEP7选择(硬件组态)OB85_OB_NUMBRBYTEOB号OB85_RESERVED_1BYTE备用OB85_RESERVED_2BYTE备用OB85_RESERVED_3INT备用OB85_ERR_EV_CLASSBYTE引起故障的事件级别OB85_ERR_EV_NUMBYTE引起故障的事件号码OB85_OB_PRIORBYTE当故障发生时被激活OB的优先级OB85_OB_NUMBYTE当故障发生时被激活OB的号码OB85_DATE_TIMEDATE_AND_TIMEOB被调用时的日期和时间表7-11O85的变变量申明表(7)机架故故障组织块((OB86))出现下列故障障或故障消失失时,都会触触发机架故障障中断,操作作系统将调用用OB86::扩展机架故故障(不包括括CPU318),DP主站系统统故障或分布布式I/O故故障。故障产产生和故障消消失时都会产产生中断。在编写OB86的程序时时,应根据OB86的起起动信息,判判断是哪个机机架损坏或找找不到。可以以使用SFC39至42封锁或延时时并使能OB86,表7-12描述述了机架故障障OB86的的临时变量。。变量类型描述OB86_EV_CLASSBYTE事件级别和标识:B#16#38,离去事件;B#16#39,到来事件OB86_FLT_IDBYTE故障代码OB86_PRIORITYBYTE优先级,可通过STEP7选择(硬件组态)OB86_OB_NUMBRBYTEOB号OB86_RESERVED_1BYTE备用OB86_RESERVED_2BYTE备用OB86_MDL_ADDRWORD根据故障代码OB86_RACKS_FLTDARRAY[0..31]根据故障代码OB86_DATE_TIMEDATE_AND_TIMEOB被调用时的日期和时间表7-12O86的变变量申明表这里也通过一一个例子来说说明OB86的使用。新新建一个项目目,插入一个个300站,,进行硬件组组态。在机架架中插入CPU315-2DP,,选择DP作作为主站,在在DP主站下下添加一个ET200M从站,并在在从站中插入入一个模拟量量输入模块SM331,,如图7-20所示。图7-20硬硬件组态然后双击CPU,选择““Interrupts”选项,可可以看到CPU支持OB86,见图图7-21所所示。硬件组组态完成后,,保存编译,,下载到CPU中。图7-21CPU中的的“Interrupts”选项OB86程序序当在通讯发发生问题后或或者访问不到到配置的机架架或站时执行行,此时程序序可能还可能能需要调用OB82和OB122等等组织块,当当OB86执执行时可以通通过它的临时时变量读出产产生的故障代代码和事件类类型,通过它它们的组合可可以得到具体体错误信息,,同时也可以以读出产生错错误的模块地地址和机架信信息。STEP7不能能时时监控程程序的运行,,可以用“VariableTable”监监控实时数据据的变化。打开组织块OB86编写写程序,程序序如图7-22所示。图7-22OB86中中所编写的程程序该程序也可以以转化成梯形形图,但程序序中要将OB86的临时时变量OB86_RACKS_FLTDARRAY[0..31]改成OB86_z23DWORD。把程序下载到到CPU后,,在“Blocks”插插入“VariableTable”,如图图7-23所所示。然后打打开,填入MB0、MB1、MW2、MD4并并点击键键就可以以得到相关信信息了。图7-23插插入“VariableTable”(8)通信错错误组织块((OB87))在使用通信功功能块或全局局数据(GD)通信进行行数据交换时时,如果出现现下列通信错错误,操作系系统将调用OB87:接受全局局数据时时,检测测到不正正确的帧帧标识符符(ID);全局数据据通信的的状态信信息数据据块不存存在或太太短;接受到非非法的全全局数据据包编号号。如果用于于全局数数据通信信状态信信息的数数据块丢丢失,需需要用OB87生成该该数据块块将它下下载到CPU。。可以使使用SFC39至42封锁或或延时并并使能通通信错误误OB,,表7-13描描述了通通信错误误OB86的临临时变量量。变量类型描述OB87_EV_CLASSBYTE事件级别和标识OB87_FLT_IDBYTE故障代码OB87_PRIORITYBYTE优先级,可通过SETP7选择(硬件组态)OB87_OB_NUMBRBYTEOB号OB87_RESERVED_1BYTE备用OB87_RESERVED_2BYTE备用OB87_RESERVED_3WORD根据故障代码OB87_RESERVED_4DWORD根据故障代码OB87_DATE_TIMEDATE_AND_TIMEOB被调用时的日期和时间表7-13OB87的变量量申明表表2、同步步错误组组织块同步错误误是与执执行用户户程序有有关的错错误,程程序中如如果有不不正确的的地址区区、错误误的编号号和错误误的地址址,都会会出现同同步错误误,操作作系统将将调用同同步错误误OB。。同步错误误组织块块包括OB121用于于对程序序错误的的处理和和OB122用用于处理理模块访访问错误误。同步步错误OB的优优先级与与检测到到出错的的块的优优先级一一致。因因此OB121和OB122可以访访问中断断发生时时累加器器和其他他寄存器器中的内内容,用用户程序序可以用用它们来来处理错错误。同步错误误可以用用SFC36““MASK_FLT””来屏蔽蔽,使某某些同步步错误不不触发同同步错误误OB的的调用,,但是CPU在在错误寄寄存器中中记录发发生的被被屏蔽的的错误。。用错误误过滤器器中的一一位来表表示某种种同步错错误是否否被屏蔽蔽。错误误过滤器器分为程程序错误误过滤器器和访问问错误过过滤器,,分别占占一个双双字。调用SFC37“DMSK_FLT”并且且在当前前优先级级被执行行完后,,将解除除被屏蔽蔽的错误误,并且且清楚当当前优先先级的事事件状态态寄存器器中相应应的位。。可以用SFC38“READ_ERR”读读出已经经发生的的被屏蔽蔽的错误误。对于S7-300(CPU318除除外),,不管错错误是否否被屏蔽蔽,错误误都会被被送入诊诊断缓冲冲区,并并且CPU的““组错误误”LED会被被点亮。。可以在不不同的优优先级屏屏蔽某些些同步错错误。在在这种情情况下,,在特定定的优先先级中发发生这类类错误时时不会停停机,CPU把把该错误误存放到到错误寄寄存器中中。但是是无法知知道是什什么时候候发生的的错误,,也无法法知道错错误发生生的频率率。(1)编编程错误误组织块块(OB121)当有关程程序处理理的故障障事件发发生时CPU操操作系统统调用OB121,OB121与被被中断的的块在同同一优先先级中执执行,表表7-14描述述了编程程错误OB121的临临时变量量。变量类型描述OB121_EV_CLASSBYTE事件级别和标识OB121_SW_FLTBYTE故障代码OB121_PRIORITYBYTE优先级=出现故障的OB优先级OB121_OB_NUMBRBYTEOB号OB121_BLK_TYPEBYTE出现故障块的类型(在S7-300时无有效值在这里记录)OB121_RESERVED_1BYTE备用OB121_FLT_REGWORD故障源(根据代码)。如:转换故障发生的寄存器;不正确的地址(读/写故障);不正确的定时器/计数器/块号码;不正确的存储器区OB121_BLK_NUMWORD引起故障的MC7命令的块号码(S7-300无效)OB121_PRG_ADDRWORD引起故障的MC7命令的块号码(S7-300无效)OB121_DATE_TIMEDATE_AND_TIMEOB被调用时的日期和时间表7-14OB121的临临时变量量表OB121程序序在CPU执行行错误时时执行,,此错误误不包括括用户程程序的逻逻辑错误误和功能能错误等等,例如如当CPU调用用一个未未下载到到CPU中的程程序块,,CPU会调用用OB121,,通过临临时变量量“OB121_BLK_TYPE”可以以得出出出现的错错误的程程序块。。使用STEP7不不能时时时监控程程序的运运行,可可以用““VariableTable””监控实实时数据据的变化化。打开事先先已经插插入的OB121编写写程序,,如图7-24所示。。图7-24OB121中编编写的程程序接着在项目““Blocks”下插入入FC1,打打开FC1编编写程序,如如图7-25所示。图7-25FC1中编编写的程序然后打开OB1编写程序序,如图7-26所示。。图7-26OB1中编编写的程序先将硬件和OB1下载到到CPU中,,此时CPU能正常运行行。在“Blocks””下插入“VariableTable”,,然后打开,,填入MW0和M10.0,并点击击键,程序运运行正常。将将M10.0置为“true”后,,CPU就报报错停机,查查看CPU的的诊断缓冲区区信息,发现现为编程错误误,这是将OB121也也下载到CPU中,再将将M10.0置为“true”,CPU会报错错但不停机,,MW0立刻刻为“W#16#88””,“W#16#88””表示为OB程序错误,,检查发现FC1未下载载。下载FC1后,在将将M10.0置为“true”,这这是CPU不不会再报错,,程序也不会会在调用OB121。(2)I/O访问错误组组织块(OB122)当对于模块的的数据访问出出现故障时CPU的操作作系统调用OB122,,OB122与被中断的的块的同一优优先级中执行行,表7-15描述了I/O访问错错误OB121的临时变变量。变量类型描述OB122_EV_CLASSBYTE事件级别和标识OB122_SW_FLTBYTE故障代码OB122_PRIORITYBYTE优先级=出现故障的OB的优先级OB122_OB_NUMBRBYTEOB号OB122_BLK_TYPEBYTE出现故障块的类型(在S7-300时无有效值在这里记录)OB122_MEM_AREABYTE存储器区和访问类型:位7至4,访问类型-0、位访问-1、字节访问-2、字访问-3;位3至0,存储器区-0、I/O区-1、过程映像输入或输出-2OB122_MEM_ADDRWORD出现故障的存储器地址OB122_BLK_NUMWORD引起故障的MC7命令的块号码(S7-300无效)OB122_PRG_ADDRWORD引起故障的MC7命令的块号码(S7-300无效)OB122_DATE_TIMEDATE_AND_TIMEOB被调用时的日期和时间表7-15OB122的临时变量量表同样,在这里里运用一个例例子来说明OB122的的用法。首先先,新建一个个项目,插入入一个300的站,进行行硬件组态。。插入一个CPU315-2DP和一个模拟拟量输入模块块SM331。同时配置置SMM331的“Inputs””选项,把所所有通道设置置为电压类型型,注意模块块的量程卡要要与设置的相相同,并把模模块的逻辑输输入地址设置置为256……257,如如图7-27所示。图7-27硬硬件组态组态完成后,,编译保存并并下载到CPU中。OB122程程序在出现I/O访问错错误是被调用用,通过临时时变量“OB122_SW_FLT”可以读出出错去代码,,通过“OB122_BLK_TYPE”得出出出错的程序序块,通过““OB122_MEM_ADDR””可以读出发发生错误的存存储器地址使使用STEP7不能时时时监控程序序的运行,可可以用“VariableTable”监控控实时数据的的变化。打开在“Blocks””下插入的OB122编编写程序,如如图7-28所示。图7-28OB122中编写的程程序该程序也可以以转换为梯形形图。接着打开OB1编写程序序,如图7-29所示。。图7-29OB1中编编写的程序先将硬件组态态和OB1下下载到CPU中,这是CPU运行正正常。在“Blocks”下插入““VariableTable””,然后打开开,填入MW0、MW2、MW4、、MW6和M10.0,,点击键,程程序运行正常常。将M10.0置为““true””,CPU会会报错并停机机,查看CPU的诊断缓缓冲区信息,,发现为I/O访问错误误。将OB122下载到到CPU中,,再将M10.0置为““true””,CPU会会报错但不停停机,检查并并修改OB1程序,如图图7-30所所示。图7-30OB1修修改改后后的的程程序序重新新下下载载OB1,,CPU不不再再报报错错,,程程序序运运行行正正常常。。对于于某某些些同同步步错错误误,,可可以以调调用用系系统统功功能能SFC44,,为为输输入入模模块块提提供供一一个个替替代代错错误误值值,,以以便便使使程程序序能能继继续续执执行行。。如如果果错错误误发发生生在在输输入入模模块块,,可可以以在在用用户户程程序序中中直直接接替替代代。。如如果果是是输输出出模模块块错错误误,,输输出出模模块块将将自自动动地地用用组组态态时时定定义义的的值值替替代代。。替替代代值值虽虽然然不不一一定定能能
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 药品处方采购管理制度
- 药品询价采购制度
- 药品采购安全制度
- 药品采购进出制度
- 药店药品采购销售制度
- 蔬菜水果采购工作制度
- 行政单位公物采购制度
- 装修公司采购部管理制度
- 西药采购供应商管理制度
- 计算机软件硬件采购制度
- 2026广东深圳市优才人力资源有限公司公开招聘聘员(派遣至龙城街道)18人备考题库附答案详解(典型题)
- 2024-2025学年度哈尔滨传媒职业学院单招考试文化素质数学通关题库完美版附答案详解
- 2026年司法协理员考试题及答案
- 克服压力(认知行为自助手册)
- 2024年02月苏州工业园区房地产交易管理中心2024年招考4名辅助人员笔试近6年高频考题难、易错点荟萃答案带详解附后
- 北京市部分地区2024届高三语文期初检测试卷汇编:文学类文本阅读()
- 中医护理操作并发症预防及处理
- 《大学生职业生涯规划与就业指导》(李新伟) 项目5
- 甲基丙二酸血症课件
- 工程测量 控制点交桩记录表
- GB/Z 41083-2021下肢矫形器的分类及通用技术条件
评论
0/150
提交评论