我在主程序里面使用SM0.1来调用子程序,子程序SM0.0调用中断程序。为什么在PLC监控状态下,子程序里面内容显示灰色,难道子程序没有运行?如果是这样,那为何中断程序又是运行状态了?请各位大神帮帮忙解答,十分感谢!
图片说明:
最佳答案
SM0.0 该位始终为1。
SM0.1 该位在首次扫描时为1,一个用途是调用初始化子例行程序。就是PLC上电的时候,第一个扫描周期的时候是1,然后就一直是0,如果你需要PLC上电对某些位或者字节的初始化赋值,可以用这个
在编程的时候,调用子程序如果是每个周期都执行的话是用SM0.0的,你的理解正好反了
至于中断程序,是根据你设置的中断条件,进行的,比如定时中断,设置100ms,那就是每隔100ms 执行一次。
关于特殊存储器参考手册:
S7-200 可编程序控制器 系统手册
https://support.industry.siemens.com/cs/cn/zh/view/1109582
495页 附录D 特殊存储器(SM)标志位
中断程序介绍参考
167页 中断指令
程序的执行参考:
39页 执行程序
提问者对于答案的评价:
非常感谢。我还想再问您一句,我的主程序中SM0.1和子程序中的SM0.0是不是用反了?
最佳答案作者回复:
是的,对于中断程序,SM0.1只是初始化的作用了
原创文章,作者:more0621,如若转载,请注明出处:https://www.zhaoplc.com/plc123991.html