苦闷,请教基础问题

小弟有个疑惑需要请教一下大哥们,是关系到所有程序都出现的问题。程序如下:
 主程序
 LD     SM0.1
 CALL   SBR_0:SBR0
 CALL   SBR_1:SBR1

 SBR_0
 LD     SM0.0
 MOVR   0.5, VD204
 MOVR   0.4, VD212
 MOVR   0.2, VD216
 MOVR   30.0, VD220
 MOVR   15.0, VD224

 SBR_1
 LD     SM0.0
 MOVB   200, SMB34
 ATCH   INT_0:INT0, 10
 ENI

 INT_0
 网络1
 LD     SM0.0
 ITD    AIW2, AC0
 DTR    AC0, AC0
 /R     32000.0, AC0
 MOVR   AC0, VD200
 网络2
 LD     I0.4
 PID    VB200, 0
 网络3
 LD     SM0.0
 MOVR   VD208, AC0
 *R     32000.0, AC0
 ROUND  AC0, AC0
 DTI    AC0, AC0
 MOVW   AC0, AQW0
 这是有关水箱水位PID控制的一个程序,我遗憾的问题是在主程序里面,用到一个常开SM0.1,SM0.1是第一次扫描的时候才为1,那么遗憾就出现了,按这样的思维来考虑,这个程序就只能在第一次扫描的时候才有用,因为第二次扫描,SM0.1不会接通了,所有整个程序就只能在第一次扫描才能运行,第二次扫描以后就不起作用了哦?虽然子程序和中断程序都有SM0.0,但是进入子程序和中断程序,前提是要SM0.1接通才能进入的呀,第二次扫描SM0.1都不能够接通了,因此整个程序在第二次扫描就不能运行了。我是这样考虑的。我看了很多程序,主程序都是用到SM0.1,然后在子程序和中断程序里面用到SM0.0,所以就提出这个问题来了。请教大哥们,应该怎样理解呢?我的理解是对还是错呢?急啊!

问题补充:
打字打错了,遗憾这两个字应该是疑惑的,不好意思。

最佳答案

楼主不要着急,这个问题是这样的:
 sm0.1只有在系统的第一个扫描周期才是1,所以第一周期后就始终为0。但是在第一周期内,其就调用子程序,此时程序就处在子程序内的不断循环,也就是说子程序处在始终运行阶段,无所谓sm0.1的状态了。

提问者对于答案的评价:
真的不知道怎样感谢你才好,你的答案我很满意。谢谢大家

原创文章,作者:ximenziask,如若转载,请注明出处:https://www.zhaoplc.com/plc356119.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2021年7月5日 上午2:47
下一篇 2021年7月5日 上午2:47

相关推荐

  • S7200模块连接线

    S7200PLC(CPU+模块)由于安装空间的限制需加模块连接延长线(0.8米的那种),请问这一组S7200模块最多可加几条延长线? 最佳答案 官方手册:每套系统仅允许使用一条加长…

    SIMATIC S7-200 2020年10月31日
  • 西门子S7-200系列的PLC有没有数据加密的指令

    项目涉及到数据安全,所以想知道有没有涉及到数据的对称加密的指令 问题补充:别的加密方式也可以,只要别人就算拿到数据也没法解密就可以 最佳答案 S7-200系列的PLC提供三种加密方…

    SIMATIC S7-200 2021年7月5日
  • 请问老师这样做一个累计输出值子程序,它可以达到累计输出的目的吗??

    最左边是主程序调用子程序,右侧是子程序,不知道我设置输出是INOUT类型是否正确,因为累加需要输入前一次的值得到下一次的值 图片说明:     &nb…

    2021年7月5日
  • 求助S7_200 smart编程软件型号

    如题,需要S7_200  smart编程软件,请提供型号,谢谢大家。 最佳答案 S7_200 smart编程软件是STEP 7—Micro/…

    SIMATIC S7-200 2021年7月5日
  • S7-200时钟问题_星期…

    S7-200时钟设定时,星期几是不是可以随意设定的,只要在1-7这范围内,设定完之后,星期几每天变化1次,不需要和实际的星期几一致吧 最佳答案 如果你认为其它时间机制允许你任意设置…

    SIMATIC S7-200 2017年6月9日
  • PID 数字量输出

    现场有一个电动调节阀,(2火1 零)是开关量调节。用PID数字量输出控制,但用向导配置后只提供一个输出点。我需要调节阀停止的状态,怎么实现。多谢 最佳答案 实际上你的存在…

    SIMATIC S7-200 2021年7月5日
  • zhilingwenti

    西门子200的PLC有哪个指令,可以是寄存器递增的 最佳答案 1、寄存器递增指令:(1)字节递增指令(INCB)和字节递减指令( DECB) 当允许输入端EN有…

    SIMATIC S7-200 2017年5月31日
  • S7-200怎么把一个字的值大于32767的数转换成实数后为正数

    通过modbus采集的通信仪表的值,仪表显示值为3303.0,PLC采集后,监控PLC地址的值,若干是有符号去监视VW8显示为-32506,用无符号去监视VW8显示为33030,通…

    2017年8月18日
  • 关于西门子200 SMART 的CPU

    请问对于S7-200 SMART的CPU的选择,在使用中没有用到数字量的输入输出,只用到模拟量,那么是选择SR20还是SR30,应该根据什么进行判断?什么样的CPU带有S…

    SIMATIC S7-200 2021年7月5日
  • 西门子200浮点乘法出现BUG

    这个乘法是不是出现BUG了,得数不对啊 图片说明:    钻石用户推荐最佳答案 出现类似的情况,首先查地址重复使用;数据是否超范围。你这个情况地址重复使用的可能…

    2021年7月5日

发表回复

登录后才能评论