STL和SCL程序转换,求帮忙

已锁定

江湖远

  • 帖子

    21
  • 精华

    0
  • 被关注

    3

论坛等级:游民

注册时间:2013-11-08

普通 普通 如何晋级?

STL和SCL程序转换,求帮忙

5810

5

2013-11-24 12:57:10

FUNCTION_BLOCK "Friction_CMD"
TITLE =friction control
VERSION : 0.0


VAR_INPUT
Speed_Input : INT ;
Dimension : INT ; //Speed Dimension
END_VAR
VAR_OUTPUT
Fric_CMD_Output : REAL ;
END_VAR
VAR
Index : INT ;
Value : INT ;
Step : INT ;
Scale1 : REAL ;
Scale2 : REAL ;
Friction_Value : ARRAY [0 .. 20 ] OF REAL ;
Speed : INT ;
END_VAR
BEGIN
NETWORK
TITLE =SCL network
//compiled by SCL compiler version: SCLCOMP K05.03.05.00_01.03.00.01 release
SET ;
SAVE ;
= L 0.1;
L 0;
T #Index;
A7d0: L #Index;
L 20;
<=I ;
JCN A7d1;
L #Dimension;
ITD ;
DTR ;
A L 0.1;
SAVE ;
L 2.000000e+001;
/R ;
JO I007;
JU I008;
I007: CLR ;
= L 0.1;
I008: RND ;
JO I009;
PUSH ;
AD DW#16#FFFF8000;
JZ I00a;
XOD DW#16#FFFF8000;
JZ I00a;
I009: CLR ;
= L 0.1;
I00a: TAK ;
T #Value;
CLR ;
A L 0.1;
SAVE ;
L #Speed_Input;
ITD ;
DTR ;
SAVE ;
ABS ;
SAVE ;
RND ;
JO I00b;
PUSH ;
AD DW#16#FFFF8000;
JZ I00c;
XOD DW#16#FFFF8000;
JZ I00c;
I00b: CLR ;
= L 0.1;
I00c: TAK ;
T #Speed;
CLR ;
A L 0.1;
SAVE ;
L #Speed;
L #Value;
/I ;
JO I00d;
JU I00e;
I00d: CLR ;
= L 0.1;
I00e: T #Step;
L #Step;
L #Index;
==I ;
TAK ;
L 20;
= L 0.2;
A L 0.2;
JCN A7d2;
L #Index;
L 1;
+I ;
JO I00f;
JU I010;
I00f: CLR ;
= L 0.1;
I010: ITD ;
L L#0;
+D ;
JO I011;
JU I012;
I011: CLR ;
= L 0.1;
I012: L L#32;
*D ;
JO I013;
JU I014;
I013: CLR ;
= L 0.1;
I014: TAR2 ;
+D ;
JO I015;
JU I016;
I015: CLR ;
= L 0.1;
I016: L #Index;
ITD ;
TAK ;
T LD 2;
TAK ;
L L#0;
+D ;
JO I017;
JU I018;
I017: CLR ;
= L 0.1;
I018: L L#32;
*D ;
JO I019;
JU I01a;
I019: CLR ;
= L 0.1;
I01a: TAR2 ;
+D ;
JO I01b;
JU I01c;
I01b: CLR ;
= L 0.1;
I01c: LAR1 LD 2;
L DID [AR1,P#22.0];
TAK ;
LAR1 ;
TAK ;
L DID [AR1,P#22.0];
-R ;
JO I01d;
JU I01e;
I01d: CLR ;
= L 0.1;
I01e: L 1.000000e+000;
/R ;
JO I01f;
JU I020;
I01f: CLR ;
= L 0.1;
I020: T #Scale1;
L #Speed;
ITD ;
DTR ;
CLR ;
A L 0.1;
SAVE ;
L #Dimension;
ITD ;
DTR ;
SAVE ;
TAK ;
T LD 2;
TAK ;
L 2.000000e+001;
/R ;
JO I021;
JU I022;
I021: CLR ;
= L 0.1;
I022: L LD 2;
TAK ;
/R ;
JO I023;
JU I024;
I023: CLR ;
= L 0.1;
I024: L #Index;
ITD ;
DTR ;
CLR ;
A L 0.1;
SAVE ;
TAK ;
TAK ;
-R ;
JO I025;
JU I026;
I025: CLR ;
= L 0.1;
I026: T #Scale2;
L #Scale2;
L #Scale1;
*R ;
JO I027;
JU I028;
I027: CLR ;
= L 0.1;
I028: L #Index;
ITD ;
TAK ;
T LD 2;
TAK ;
L L#0;
+D ;
JO I029;
JU I02a;
I029: CLR ;
= L 0.1;
I02a: L L#32;
*D ;
JO I02b;
JU I02c;
I02b: CLR ;
= L 0.1;
I02c: TAR2 ;
+D ;
JO I02d;
JU I02e;
I02d: CLR ;
= L 0.1;
I02e: L LD 2;
TAK ;
LAR1 ;
TAK ;
L DID [AR1,P#22.0];
+R ;
JO I02f;
JU I030;
I02f: CLR ;
= L 0.1;
I030: T #Fric_CMD_Output;
A7d2: L #Step;
L 20;
==I ;
JCN A7d3;
L #Friction_Value[20];
T #Fric_CMD_Output;
A7d3: L #Index;
L 1;
+I ;
JO I031;
JU I032;
I031: CLR ;
= L 0.1;
I032: T #Index;
JU A7d0;
A7d1: CLR ;
A L 0.1;
SAVE ;
BE ;
END_FUNCTION_BLOCK
这个是SCL编程的,通过一些手段只能编译成 SLC样子的 STL源程序……求这个程序的算法,谢谢,本人最近学习SCL,这个正好是公司的程序,但无SCL源程序,想看看这个算法。谢谢各位前辈!哪位前辈有时间的,在您无聊的时候看看能否帮帮我
STL和SCL程序转换,求帮忙 已锁定
编辑推荐: 关闭

请填写推广理由:

本版热门话题

SIMATIC S7-300/400

共有54778条技术帖

相关推荐

热门标签

相关帖子推荐

guzhang

恭喜,你发布的帖子

评为精华帖!

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

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

  • 分享

  • 只看
    楼主

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