回复:设备循环控制及向下自动收缩循环

dcount107

  • 帖子

    1737
  • 精华

    55
  • 被关注

    29

论坛等级:侠圣

注册时间:2003-06-06

普通 普通 如何晋级?

发布于 2009-03-18 23:17:25

0楼

试着写了一段程序,用PLCSIM测试过,个人认为完全满足楼主要求,欢迎各位网友批评指正。

为便于编程,假设符号表如下:



FC1程序内容如下:
//Keep the Last Value
L MD 100
T MD 104
//Get the Next Output Pointer
_MOV: L MD 100
L P#0.1
+D
T MD 100

L MD 100
L P#2.3
>D
JNB _001
L P#2.0
T MD 100
_001: L MD 100
L P#2.0
JNB _002
L P#2.0
T MD 100
_002: NOP 0

A M [MD 100] //如果当前设备故障则获取下一设备地址
JC _MOV

OB1程序如下:
//如果全部故障则清空输出,并退出运行
O(
A "设备1故障"
A "设备2故障"
A "设备3故障"
A "设备4故障"
)
ON "设备启动"
JNB _OK
CLR
= "设备1"
= "设备2"
= "设备3"
= "设备4"
BEU

_OK: A "设备启动"
FP M 10.0
JNB _RUN
L P#2.0
T MD 100 //首次启动设备从头开始
_RUN: SET
= Q [MD 100] //输出

A I [MD 100]
R Q [MD 104] //停止上一台设备

A I [MD 100] //对应设备运行延时检测
L S5T#5S
SD T 1

O M [MD 100] //如果当前设备故障
O T 1 //如果运行延时到
FP M 10.1
JNB _001

CALL "GetNextAdr" //获取下一设备地址
_001: NOP 0
非淡泊无以明志,非宁静无以致远
评论
编辑推荐: 关闭

请填写推广理由:

本版热门话题

SIMATIC S7-300/400

共有54617条技术帖

相关推荐

热门标签

相关帖子推荐

guzhang

恭喜,你发布的帖子

评为精华帖!

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

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

  • 分享

  • 只看
    楼主

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