登录
首页 PLC论坛 PLC论坛
回帖 发帖
正文

主题:西门子plc s7 200计数器问题

点击:1138 回复:7

如图,为什么3秒钟后,Q0.0还是有输出?
  
  当C7置为1的时候,R端也激活,C7会同时被复位0,那下一条指令中C7应该是0,为什么还可以通到Q0.0?
  
  第一行 为 SM0.5 I0.0 C7
  
  第二行 为 I0.0(取反)
  
  第三行 为 C7
  
  第四行 为 C7 Q0.0
http://laiba.tianya.cn/laiba/images/8539261/12394366991125696158/A/1/m.jpg
09-04-11 16:12
LD     SM0.0
A      I0.0
LDN    I0.0
O      C7
CTU    C7, 3
-------------------------
LD     C7
S      Q0.0, 1
以上是你的原程序.
3秒后 C7=ON, 但C7要保持到下一个周期后才 RESET CTU C7,
在RESET 动作前就 SET Q0.0了,因此Q0.0有输出.
(LDN    I0.0  O      C7 ) 语句在网络2的 SET 前面,为什么没先Reset C7 呢?
那是因为LD   SM0.5与 LD   C7(Reset)同时是改变C7状态的条件;  当SM0.5使C7=NO瞬时,  LD   C7(Reset)已经发生了,而那时Reset条件的C7=OFF, 还不能Reset CTU C7.   所以C7=ON会在网络2 SET Q0.0.
最后修改:2009-4-11 16:58:42
09-04-11 16:55
楼上说得对
09-04-11 17:23
Q0.0 没有复位,应该写成Q0.0线圈,不用置位
09-04-11 20:36
Q0.0被置位没有复位
09-04-11 20:55
To楼上两位:

引用 qijg 在 2009-4-11 20:36:03 发言【内容省略】

楼主的小程序是做试验, 非实际应用控制;    如写成Q0.0线圈, 因扫描太快,不会观察到 Q0.0的状态变化.
09-04-11 22:21
PLC程序是从上至下从左往右的运行,扫描一周后再重新开始,
09-04-13 09:09
study
09-04-15 21:54

工控新闻

更多新闻资讯