当前位置: 主页 > PLC控制

程序1S执行多次

请各位帮帮忙,这个问题困扰我很久,但是我又描述不太出来,我想做一个程序,就是每分钟变量值加30,我用下面程序写的,我发现接通一秒钟的过程中该程序其实已经执行了很多次,怎么样才能一分钟只加一次,也就是让这段程序只执行一次?
A#ramp_up
FP#FP120
A#TEMP//temp每次接通1s
FP#FP122
JCNl001
L"EPICS_AODO".Frequency4104_SET
L1.5e+2
<R
JCNl002
L7.0e-2
L"EPICS_AODO".Frequency4104_SET
+R
T#temp1
JUl003
l001:A#ramp_down
FP#FP120
A#TEMP
FP#FP122

JCNl002
A(
L"EPICS_AODO".Frequency4104_SET
L1.5e+2
<=R
)
A(
L"EPICS_AODO".Frequency4104_SET
L0.0e+0
>=R
)
JCNl002
L"EPICS_AODO".Frequency4104_SET
L7.0e-2
-R
T#temp1
l003:L#temp1
T"EPICS_AODO".Frequency4104_SET

l002:NOP0
另外我之前发的帖子问的问题,好像也是扫描多次的问题
htTP://www.ad.siemens.com.cn/serviCE/answer/tobe_solution.ASpx?Q_ID=133713&cid=1077

图片说明:

程序1S执行多次fb997749e632b5c96940c1e5ee5444af

最佳答案

我们需要看的不是你的代码,你找不出来问题,应该不是代码的问题,你需要看你的代码在哪里调用的,比如ob1它是循环扫描的,一分钟要扫描很多次。你需要明确你的这个程序在1s接通的过程中会被扫描多少次。

你的程序应该使用循环中断组织块(ob35等,设置周期是1s),在这些ob中调用你的这部分程序。

论坛上有人提过同样的问题,我还给出了代码,应该就是你吧?

提问者对于答案的评价:
谢谢!!!

专家置评

在循环终端中调用,如果循环中断的周期仍然比较短的话,通过编程实现累加一定次数之后再触发一次你的程序。

  • 关注微信

猜你喜欢

微信公众号