王绍全
级别: *
精华主题: * 篇
发帖数量: * 个
工控威望: * 点
下载积分: * 分
在线时间: (小时)
注册时间: *
最后登录: *
查看王绍全的 主题 / 回贴
楼主  发表于: 2008-12-22 18:47
网络1
LD   I0.1
AN   M0.1
=M0.0
网络2
LD  I0.1
=M0.1
小弟明白这是一个边沿信号产生的程序,但是不明白M0.0为什么保持1个PLC循环周期,我可能不明白循环周期这个词,麻烦好心人解释一下,谢谢!
[ 此帖被王绍全在2008-12-24 20:30重新编辑 ]
netliuhao
级别: *
精华主题: * 篇
发帖数量: * 个
工控威望: * 点
下载积分: * 分
在线时间: (小时)
注册时间: *
最后登录: *
查看netliuhao的 主题 / 回贴
1楼  发表于: 2009-04-21 11:46
大哥。程序不可能就这两条命令吧。看看是不是控制其他得命令呢??
cvlsam
富士低压,POD(觸摸屏),PLC专卖
级别: VIP会员

精华主题: 3 篇
发帖数量: 6769 个
工控威望: 38370 点
下载积分: 2995 分
在线时间: 9506(小时)
注册时间: 2006-09-13
最后登录: 2024-11-18
查看cvlsam的 主题 / 回贴
2楼  发表于: 2009-04-21 11:56
引用
引用楼主王绍全于2008-12-22 18:47发表的 PLC循环周期问题 :
网络1
LD   I0.1
AN   M0.1
=M0.0
网络2
.......


因為PLC對與程式的掃描是由上往下,自左往右進行。

當LD I0.1時,I0.1的狀態由0轉為1,此時程序掃描AN M0.1,M0.1的狀態為0,但是由于是AN 指令,因此M0.1被取反為1.

=M0.0不用說了,M0.0=1了。

目前為I0.1為1,M0.1也可以看作為1,M0.0=1

程式繼續掃描,掃到LD I0.1時,讀到I0.1的狀態為1,那么繼續,=M0.1,將M0.1的信號狀態由0轉1.
此時 I0.1=1  M0.1=1(真正的信號狀態為1) M0.0=1程序繼續掃描,直到本次掃描周期結束。

下一個周期來時,程式又從第一行開始掃描,
LD I0.1還是1的狀態,AN M0.1由于M0.1的信號狀態由0轉1,從而導致執行該語句RLO的結果為0,因此=M0.0為OFF。

以上