qinglin2314
级别: 略有小成
精华主题: 0
发帖数量: 238 个
工控威望: 397 点
下载积分: 3200 分
在线时间: 181(小时)
注册时间: 2009-11-14
最后登录: 2024-05-19
查看qinglin2314的 主题 / 回贴
楼主  发表于: 2015-10-29 11:20
如图所示
zsb2010
级别: 工控侠客
精华主题: 0
发帖数量: 117 个
工控威望: 2362 点
下载积分: 4026 分
在线时间: 340(小时)
注册时间: 2009-09-02
最后登录: 2024-01-21
查看zsb2010的 主题 / 回贴
1楼  发表于: 2015-11-01 20:56
网络1的工作逻辑,M0.0 等于上升沿的 扫描周期,调用一键启停子程序,在这个子程序中 L0.0 的类型是 IN/OUT 类型,就是这个变量,在执行子程序之前,首先从外部读取变量的值,这时读取 到 Q0.0 传送到 L0.0中,如Q0.0是 0 则L0.0就是0 则做子程序时
第一条指令 L0.0 的常闭点,那么常闭点的状态取决于线圈状态吧,此时线圈为 0 ,则常闭点为1,常闭点为1 则 L0.0的线圈 为1,
将这个加过传送到外部的 Q0.0 中,外部的Q0.0点亮,第二个扫描周期M0.0的上升沿没有了吧,那么这个子程序不被调用,就相当于程序中,没有了这个子程序,那么也就没有改变Q0.0的状态,Q0.0继续保持输出,在M0.0 变为0 后,这个子程序还是不会被调用,只有在下一个M0.0 的上升沿,这个一键启停子程序才被调用,之前 Q0.0是有输出的,为1,那么Q0.0的状态传送到L0.0中
然后运算这个子程序,L0.0的常闭触点,由于它的线圈是1,则这个常闭点是断开的,也就是0 ,那么前面的逻辑结果是0 ,线圈输出L0.0也是0,子程序执行完毕,将这个L0.0的状态传送给 Q0.0 ,Q0.0熄灭,
楼主留言:
谢谢,帅哥!
zsb2010
级别: 工控侠客
精华主题: 0
发帖数量: 117 个
工控威望: 2362 点
下载积分: 4026 分
在线时间: 340(小时)
注册时间: 2009-09-02
最后登录: 2024-01-21
查看zsb2010的 主题 / 回贴
2楼  发表于: 2015-11-01 21:01
网络3的工作逻辑, M0.2的上升沿到来时,M0.2 P 这条指令的运算逻辑结果为1,这个时候,如果Q0.2是0 ,则常闭点为1,则Q0.2的线圈的运算结果为1,Q0.2点亮,
那么下一个扫描周期呢,M0.2 P 这条指令的逻辑运算结果为0 ,这个时候,这个时候,不管Q0.2的线圈是0 还是1 ,运算的结果都是 Q0.2的线圈输出为0
所以网络3,只有在M0.2上升沿那个扫描周期内,Q0.2的输出为1,其余时间 Q0.2的输出均为0
注意网络3的特点  Q0.3的线圈,是不管线圈前面的逻辑条件是0 还是1,他每个扫描周期都是要执行的,就是前面的逻辑结果是1,线圈就是1,逻辑结果是0 ,线圈就是0,而子程序的特点是,你不调用就不扫描的