回复:S7300 dp诊断问题

宁超

  • 帖子

    1009
  • 精华

    39
  • 被关注

    373

论坛等级:至圣

注册时间:2012-12-11

普通 普通 如何晋级?

发布于 2016-10-18 09:30:13

3楼

原理:SFC51可以读取期望的从站状态,即你硬件组态里组态了多少从站。然后读取当前CPU能正常通讯到的从站,然后以比较就可以知道哪些从站CPU识别不到但是硬件组态里是有的。

 

   A     #REQ_EXPTECED 

      JCN   a0b0        

      L     W#16#92   //按F1查看SZL_ID = 92 hex时代表的意思,代表你组态了多少从站,期望值

      T     #SZL_ID  

a0b0: NOP   0

      A     #REQ_CURRENT 

      JCN   a1b0

      L     W#16#292  //按F1查看SZL_ID = 292 hex时代表的意思,代表CPU识别了多少从站,当前值

      T     #SZL_ID

a1b0: NOP   0


      A     #REQ

      JCN   a0b1

      CALL  "RDSYSST"

       REQ       :=#REQ

       SZL_ID    :=#SZL_ID

       INDEX     :=#MASTER_ID

       RET_VAL   :=#SFC51_RET

       BUSY      :=#BUSY

       SZL_HEADER:=#SZL_HEADER

       DR        :=#SZL_DR

a0b1: NOP   0

      A(    

      L     #SZL_ID

      L     W#16#92

      ==I   

      )     

      AN    #BUSY

      JCN   a0b2

      L     #SZL_DR[1]

      T     #DP_SLAVE_EXPECTED[1] //返回的期望值,1~32号从站

      L     #SZL_DR[2]

      T     #DP_SLAVE_EXPECTED[2] //返回的期望值,33~64号从站

      L     #SZL_DR[3]

      T     #DP_SLAVE_EXPECTED[3]

      L     #SZL_DR[4]

      T     #DP_SLAVE_EXPECTED[4]

a0b2: NOP   0

      A(    

      L     #SZL_ID

      L     W#16#292

      ==I   

      )     

      AN    #BUSY

      JCN   a0b3

      L     #SZL_DR[1]

      T     #DP_SLAVE_CURRENT[1] //返回的当前值1~32号

      L     #SZL_DR[2]

      T     #DP_SLAVE_CURRENT[2]

      L     #SZL_DR[3]

      T     #DP_SLAVE_CURRENT[3]

      L     #SZL_DR[4]

      T     #DP_SLAVE_CURRENT[4]

a0b3: NOP   0


      L     L#0

      T     #DP_SLAVE_FAULT[1]  // 有故障的从站号1~32,先清零

      T     #DP_SLAVE_FAULT[2]

      T     #DP_SLAVE_FAULT[3]

      T     #DP_SLAVE_FAULT[4]



      L     #DP_SLAVE_EXPECTED[1] //组态的从站比较当前CPU识别的从站

      L     #DP_SLAVE_CURRENT[1]

      XOD   

      L     #DP_SLAVE_FAULT[1]  //得到当前有故障的从站

      OD    

      L     #DP_SLAVE1_32_DEACTIVE //这个从站虽然有故障,但是操作员是否激活监视该从站

      INVD  

      AD    

      T     #DP_SLAVE_FAULT[1] // 如果激活了。HMI将显示该从站故障

      T     #FAULT_SLAVE1_32

评论
编辑推荐: 关闭

请填写推广理由:

本版热门话题

SIMATIC S7-300/400

共有54778条技术帖

相关推荐

热门标签

相关帖子推荐

guzhang

恭喜,你发布的帖子

评为精华帖!

快扫描右侧二维码晒一晒吧!

再发帖或跟帖交流2条,就能晋升VIP啦!开启更多专属权限!

  • 分享

  • 只看
    楼主

top
X 图片
您收到0封站内信:
×
×
信息提示
很抱歉!您所访问的页面不存在,或网址发生了变化,请稍后再试。