《s7-1200分布式IO诊断.docx》由会员分享,可在线阅读,更多相关《s7-1200分布式IO诊断.docx(23页珍藏版)》请在优知文库上搜索。
1、S7-1200与分布式IO设备的诊断功能S7-1200CPUV2.1起先支持分布式IO设备的诊断功能,可运用DeviceStates和ModuIeStates指令对分布式IO设备的站状态和了模块进行诊断。本文运用4CV4.0CPU和ET200SP的PN通信为例进行说明(DP通信同样适用)。1. CPUI2I4CDCDCDC,V4.0,一台2. ET200SP分布式10站,PN接口,两套1.TIAPortalV13SP1UPD2运用TIAPortal创建项目运用TIAPOrlal创建一个新项目,正确配置,下载后,进入网络视图,全部站点状态正常。如图1所示。tA81.f4H七上网S聚!11N按OJ
2、81VPN子同地地子网王站/2系线3S712OOuoon_1S71200UO11nc_1CTU1214COCOWKIOdonIOdeMCj2S11556PNHFPROMUeT摘口M19216S70102Pf*rjFWFTOtem2.ETJOOSP*un1ET2005,SOg注意:使用DeVlCeStaIeS指令诊断PN分布JtIOfft.通1”设备缠号对应故障的子站。图1网络视图留意:分布式IO为PN子站时,可在“网络概览”中可以查看分布式IO的设备编号。1运用DevkeStates指令对分布式IO子站进行修防1-1创建全Iig块,用于存储状态效据图3调用DeviceStates指令本例中将M
3、ODE设置为2,STTE填写上述定义的全局数据块数组。如图4所示。块标题:eMainProgramSweep(Cycle)程序段1:DevkeStates269e1.oceI-PROFINEI.0-S)5tem-2-*devicestte.stateENENOReJVal1.ADDRMODESlXIE图4填写相应的引脚指令引脚说明:参数运用1.ADDR参数通过硬件标识符选择Profinetio或DP主站系统。1.ADDR硬件标识符位于: PROHNETIO或DP主站系统属性的网络视图中。 或数据类型为HW,IOSYSTEM的所列系统常量的P1.C变量表中。运用MODE参数可读取状态信息。可读取
4、整个Profinetio或DP主站系统的下列一条状态信息: 1:10设备/DP从站已组态参数2:IO设备/DP从站故障MODE3:IO设备/DP从站已禁用 4:IO设备/DP从站存在 5:出现问题的10设备/DP从站。参数通过STATE参数,输出由MODE参数选择的IO设备/DP从站的状态。STATE假如运用MoDE选择的状态适用于IO设备/DP从站,则在STTE参数中将下列位设置为“1”: 位0=1:组显示。至少有一个IO设备/DP从站的第n位设置为“1”。 位n=l:通过MODE选择的状态将应用到IO设备/DP从站。0对于PRoFlNETlo系统,第n位对应于相应IO设备的设备编号(请参见
5、设备视图和网络视图中的Profinet接口屈性)。0对于PRoFINETDP系统,第n位对应于DP从站的PROFIBUS地址(请参见设备视图和网络视图中的DP从站屈性)。运用BOO1.”或ArrayofBoo1.”作为数据类型: 要仅输出状态信息的组显示位,可在STATE参数中运用B1.数据类型。 要输出全部IO设备/DP从站的状态信息,请运用下列氏度的ArrayofBOO1.: 对于Profinetio系统:1024位对于DP主站系统:128位1-3就将程序下载到P1.C中。监控全局数据块devicestate如图5所示。项目树mdiagnosisPlC1ICPU1214DCD(7DC程序块
6、devicestatJ设备1.30Og:岁j%;驿工*uEEdevicestate_JdiagnosisQA名称数据类学启动值监衩信添加新设咨Static国主设备和网络OstateEoyfO.1023ofBoolSPlCjlCMJ1214CDaDaDaQ3stoteOBooleFA1.SEDt设备组态4-QStAtelBoolfokeFA1.SE在线和诊甑5Jstate2BoolFA1.SEJ建座住6state373state483stte(5EAlCCVUJVwWDVUiTU添加新块*Main0B1BcolBoolIO系统正常。IhlseJhlseFSEF1.S.devicestate(OB
7、1J93stte6BoolfalseFAtSE图5IO系统正常当IOdeVi8_2故障时(掉电或网线拔除导致丢站),state2=l.如图6所示。is设备和网络RttUa迁4.祖,CPURg,需要维护。PNC.1IOdevice1故devicestatediagnosisOA名称数据类型启动值监视值添加新设备。Statk国,设备炯络20stateArray(01023OfBooIJP1.JICPU1214CDaDaDq3OState(O)BoolfalseIwUEDt设备组秀ssute(1)BoolseFA1.SE在线和诊断5句SStel2)BoolTOJEA程序块=62-sute(3jBoo
8、lFA1.SE赳崎块句stte4BooIodoViCgj故业rFA1.SEMsin0B1)343stte(5Boo障。lseFA1.SEdevicesteDB190stte(6BooalseFA1.SE图6IOdevicc_2故障当IodeVice_l和IOdevice_2故障时(掉电或网线拔除导致丢站),statel=l和state2=l.如图7所示。设iioiWIOdevice故IOdevice2故障。devicestateJdiagnosisQA名称涿由设雷1OStatic设备和领2stateHP1.C_1(CPU1214CDODODCU3stote0Ut设瞽组态43StMel1在线和诊
9、断543sute2a在序块三6一分布式。中甑施逑.1.ED*GetJMeDataDev】CeStaEeS读取1.ED状态读取标识及维护数据读助IO系*MOduIeSUtes读取模块钠槿块状态信息点击小书本后,在弹出的对话框中选择需要诊断的干站。本例选择子站IOdevice1.QSiSP1.C_1CPU1214CDCDCDC程序块MainOBJ程序段2:主移图9调用ModuleStates指令所示。本例中将MoDE设置为2.STTE填写上述定义的全局数据块数组。如图程序段2:ModuIeStatesENENOReJVal1.ADDRMODESTATE2850device.IMODevice*2m
10、odulestte.stateTog.2,图IO填写相应的引脚参数指令引脚说明:运用1.ADDR参数通过站硬件标识符选择IO设备或DP从站。1.ADDR硬件标识符位于:IO设备站或DP从站属性的网络视图中。或数据类型为HW_DEVICE(对于【0设备)或HW.DPS1.AVE(对于DP从站)的所列系统常量的P1.C变量表中。运用MoDE参数可读取状态信息。可读取模块的下列,条状态信息:I:模块已组态参数MODE2:模块故障3:模块禁用4:模块存在5:模块中存在故障。参数STATESTATE参数输出访用MODE参数选择的模块状态。假如运用MODE选择的状态适用于某个模块,那么下列位将设置为“1”: 位0=1:组显示。至少一个模块的第n位设置为“1”。 位n=l:运用MoDE选择的状态将应用到插槽n-l(例如:位3对应插槽2)中的模块。运用“BOO1.”或“ArrayofBOO1.”作为数据类型: 要仅输出状态信息的组显示位,可在STATE参数中运用BOO1.数据类型。 要输出全部模块的状态信息,请运用长度为128位的ArrayofBOO1.1-3,试将程序下载到P1.C中。监控全局数据块modulestateO如图11所示。图11分布式IO站全部子模块正常当IOdeviceJ站插槽编号I的子模块故障时(损坏或被拔除),state2=l0如图12所示。