跟我一起玩200smart PLC 报警状态显示

已锁定

WWCWWC

西门子1847工业学习平台

  • 帖子

    9111
  • 精华

    157
  • 被关注

    1473

论坛等级:至圣

注册时间:2008-07-26

钻石 钻石 如何晋级?

跟我一起玩200smart PLC 报警状态显示

9323

19

2017-04-25 12:47:12

star star star

跟我一起玩200smart PLC

报警状态显示

   今天在“找答案”中看到有这么一则问题求助,要求将以位故障报警信息按具体触发位单独循环显示,当报警离去是不显示该位信息,具体问题链接:http://www.ad.siemens.com.cn/service/answer/tobe_solution.aspx?Q_ID=159103&cid=1032

我考虑了一下,感觉可以用移位指令和逻辑“字与”的方法解决此问题。

编程思路:假设控制以一个字的报警信息在QW0中反应。

1)  首先新建一个子程序命名为“报警信息”,并定义相关变量及数据类型:


2)  根据编程思路编辑相应的控制程序:


子程序:

2.0)初始移位指令

2.1)将初值做循环左移1位操作

2.2)将左循环移位结果与报警状态输入做逻辑“与”运算,结果给输出

3)  在主程序中调用“报警显示”子程序,并新建“状态图表”方便监控状态:


4)  假设,报警信息VW0有报警存在,(V1.0~V1.2)3个报警被激活,启动M0.0 = 1.

当循环左移有效位与报警状态值进行“与”运算,得到Q1.0~Q1.2的输出有效状态。


当实时报警信息状态改为VW0 = 2#111时,循环左移到Q1.0~Q1.2通过“与”运算,使Q1.0~Q1.2 = 分别为1的一秒钟时间有效。

5)  改变报警状态值,VW0 = 2#1010,得到的输出结果:


    运行结果当报警状态值VW 0= 2#1010时,Q1.1 = 1;Q1.3 = 1。结果符合控制要求,当然如果还需要用其它方式显示可以通过修改逻辑指令和脉冲时间得到。

注意!西门子字寻址是按高位低字节方式排列的。


跟我一起玩200smart PLC 报警状态显示 已锁定
编辑推荐: 关闭

请填写推广理由:

本版热门话题

SIMATIC S7-200 SMART

共有8941条技术帖

相关推荐

热门标签

相关帖子推荐

guzhang

恭喜,你发布的帖子

评为精华帖!

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

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

  • 分享

  • 只看
    楼主

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