重庆水泵厂有限责任公司重庆400033
摘要:本文介绍了OB100组织块在西门子S7-300系列PLC中的故障诊断功能。本项目的设备属于石油开采设备,长时间放置在戈壁滩,在非正常停机情况下,需要对设备进行自启动控制。因此,完整的故障诊断功能应用显得尤为重要。
关键词:S7-300;PLC;OB100
Abstract:ThispaperintroducesthefaultdiagnosisfunctionofOB100organizationblockinSIEMENSS7-300seriesPLC.Theequipmentoftheprojectbelongstotheoilminingequipment,longtimeplacedinGobi,inthecaseofnonnormalshutdown,itneedtoautomaticallyrestart.Therefore,thefaultdiagnosisfunctionapplicationappearsespeciallyimportant.
KeyWords:S7-300PLCOB100
在很多实际工程应用中,客户会根据实际工况要求设备在非正常状态下实现诊断自动重启,公司出口到某中东国家油田的注水泵就要求附带该项功能。据此,在西门子的S7300系统中,调用组织块OB100便可以实现因某些原因要求执行重新暖启动的控制功能。当CPU的状态由停止态转入运行态时,操作系统都调OB100。当OB100运行结束后,操作系统调用OB1。
OB100在CPU执行时WarmRestart执行,且只执行一次,可用于变量的初始化,使用Step7不能时时监控程序的运行,可用VariableTable监控数据变化。
利用OB100先于OB1执行的特性,可以为用户主程序的运行准备初始变量或参数。当对CPU进入WarmRestart操作时,操作系统就会自动调用OB100,启动时过程映像和不保持的标志存储器、定时器及计数器被清除,保持的标志存储器、定时器和计数器以及数据块的当前值保持。CPU会自动调用OB100一次,然后循环程序OB1开始执行。用户对OB100进行适当的编程可以让CPU在暖启动时完成特定的设置任务OB100会因如下事件执行暖启动:
*电源合上之后
*选择开关由STOP转至RUN
*使用通讯功能请求之后
*多处理器的同步
*H系统连接建立之后
在本项目中,具体的硬件由西门子S7300CPU315-2DP及MP277组成。
组态主站CPU315-DP。
调用OB100,并编程把OB100的临时变量存入DB100,以便进行故障分析
在OB100中编写程序,OB100中的变量调用时可以在符号名前加#或者直接用L0.0LB0这样的表示
对于OB100,在帮助文件可查阅其相关代码。如图
代码内容:从帮助信息中得知,要实现自动重启,需要得到代码B#16#82,通过编程即可实现该项功能。当故障代码为B#16#81时,表明当前需要手动启动,在程序中可对自动启动命令进行清除。
实际应用:值得一提的是,如果需要在OB100中调用FB1块,且指定了MCP1StatSend和MCP1StatRec的地址数据块,当NCK重启后,尽管数据块长度是正确的,也可能会因为FC14的数据块长度错误造成PLC停机,此问题是由于OB100中的FB1功能块的参数,只能使用一个地址数据块。操作部件的参数必须是一个指定的数据块。若其他数据块需要使用指针,必须使用相同的DB块号。所有的操作部件没有必要使用参数化指针。
参考文献:
[1]S7300/400的系统软件和标准功能参考手册西门子(中国)有限公司自动化驱动集团2004.02.
[2]S7300,S7400语句表编程参考手册西门子(中国)有限公司自动化驱动集团2004.01.
[3]STEP7V5.3编程西门子(中国)有限公司自动化驱动集团参考手册2004.12.