回复:西门PLC如何实现暂停功能 暂停后在继续运行暂停时的步骤 要程序截图

已锁定

YUKJ

  • 帖子

    3255
  • 精华

    7
  • 被关注

    70

论坛等级:至圣

注册时间:2014-04-28

钻石 钻石 如何晋级?

发布于 2022-05-02 11:31:08

7楼

我的想法是,首先不考虑“暂停”和“继续”,使用常规编程方法完成程序的初稿,或者利用现成的已有程序,将初稿或者现成的程序修改成符合楼主要求的程序。    修改要做下面几个事:

A.  “暂停”和“继续”指令使用硬件中断,避免受扫描机理的影响,也就是真正的“实时”暂停和继续。

B.   增加字节递增(以VB0为例),如果程序段>255则用递增字。VB0的数值作为暂停和继续的标记点。

C.   所有程序段都在开头增加VB=*的比较指令,程序段1增加VB=1. 程序段2增加VB=2,程序段3增加VB=3,.......

增加

  LD     SM0.1

  MOVB   1, VB0

D.    所有程序段(最后的一段除外)都在末端(输出)并联增加字节递增 INCB   VB0    最后的一段不使用字节递增,改为

MOVB   1, VB0

E.  “暂停”中断程序:

  LD     SM0.0

  MOVB   VB0, VB1    //保存暂停时正在执行的程序段

  MOVB   0, VB0

F.  “继续”中断程序:

  LD     SM0.0

  MOVB   VB1, VB0    //继续执行被中断的程序段



评论
编辑推荐: 关闭

请填写推广理由:

本版热门话题

SIMATIC S7-200

共有33264条技术帖

相关推荐

热门标签

相关帖子推荐

guzhang

恭喜,你发布的帖子

评为精华帖!

快扫描右侧二维码晒一晒吧!

再发帖或跟帖交流2条,就能晋升VIP啦!开启更多专属权限!

  • 分享

  • 只看
    楼主

top
X 图片
您收到0封站内信:
×
×
信息提示
很抱歉!您所访问的页面不存在,或网址发生了变化,请稍后再试。