查表程序,请高手帮助查错

已锁定

吉林-xyy

西门子1847工业学习平台

  • 帖子

    147
  • 精华

    4
  • 被关注

    3

论坛等级:游侠

注册时间:2003-06-06

普通 普通 如何晋级?

查表程序,请高手帮助查错

718

2

2008-09-28 21:27:15

我要实现用一个采样值来动态改变设定值的功能,为此需要查表。在FB中定义了一个二维数组用于存放检索值和对应的设定值。在OB35中调用执行,采样值在不超出检索范围时执行都正常,一旦采样值超出检索范围,CPU就STOP。查诊断信息,OB35的扫描时间最长达到3.6秒。不过分析程序,在超出检索范围时能跳出FB,应该不会造成死循环。什么原因呢?请高人指教!
FUNCTION_BLOCK FB 12
TITLE =
VERSION : 0.1


VAR_INPUT
IN : REAL ;
PNT : WORD ;
END_VAR
VAR_OUTPUT
PV : REAL ;
END_VAR
VAR
buff : ARRAY [1 .. 2, 1 .. 50 ] OF REAL ;
END_VAR
VAR_TEMP
pnt_numb : WORD ;
i : WORD ;
END_VAR
BEGIN
NETWORK
TITLE =

LAR1 P#48.0;

L #PNT;
L 1;
-I ;
T #pnt_numb;

m1: L #pnt_numb;
T #i;

L #IN;
L DID [AR1,P#0.0];
<>R ;
JCB _01a;
L DID [AR1,P#200.0];
T #PV;
JCB _01b;

_01a: +AR1 P#4.0;

L #i;
LOOP m1;

_01b: SAVE ;
BEU ;
END_FUNCTION_BLOCK
查表程序,请高手帮助查错 已锁定
编辑推荐: 关闭

请填写推广理由:

本版热门话题

SIMATIC S7-300/400

共有54756条技术帖

相关推荐

热门标签

相关帖子推荐

guzhang

恭喜,你发布的帖子

评为精华帖!

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

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

  • 分享

  • 只看
    楼主

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