SCL学习心得-PLC技术网(www.plcjs.com)-可编程控制器技术门户


SCL学习心得

 (点击题目可以在互联网中搜索该题目的相关内容)
日期:2006-9-11 23:30:11     来源:工控博客_黑世暗火   作者: 点击:
点击【 大  中  小 】, 可 以 选 择 字 体的大小,以便 你 阅读.
1、SCL程序可以在CPU314及其以上的S7(包括400)中运行。
2、SCL程序创建在”S7 Program”-”Sources”下面。
S7-Program
   -Blocks(e.g. FB,OB)
   -Sources(e.g.SCL source file)
   -Symbols

3、      程序结构
FB:     FUNCTION_BLOCK  fb_name
        
        END_FUNCTION_BLOCK


FC:     FUNCTION fc_name:function type
        
        END_FUNCTION


OB:     ORGANIZATION_BLOCK ob_name

        END_ORGANIZATION_BLOCK


DB:     DATA_BLOCK db_name
 
        END_DATA_BLOCK


UDT    TYPE udt_name

        END_TYPE


4、      属性定义和程序注释
例如:
FUNCTION_BLOCK FB10
//This is a block comment.
TITLE = ’Mean_Value’
VERSION : ’2.1’
KNOW_HOW_PROTECT
AUTHOR : AUT_1

5、      变量定义
Data      Syntax      FB      FC      OB      DB      UDT
Constants      CONSTdeclaration listEND_CONST      X      X      X           
Labels       LABELdeclaration listEND_LABEL      X      X      X           
Temporary Variables      VAR_TEMP declaration listEND_VAR X X X      X      X      X           
Static variables      VARdeclaration listEND_VAR      X      X      X      X      X
Input parameters      VAR_INPUTdeclaration listEND_VAR      X      X                 
Output parameters      VAR_OUTPUTdeclaration listEND_VAR      X      X                 
In/out parameters      VAR_IN_OUTdeclaration listEND_VAR      X      X                 

6、FC结构
FUNCTION FC11: REAL//如果不需要返回值,用VOID关键字
VAR_INPUT
x1: REAL ;
x2: REAL ;
x3: REAL ;
x4: REAL ;
END_VAR
VAR_OUTPUT
Q2: REAL ;
END_VAR
BEGIN
// Return value from function
FC11:= SQRT( (x2 - x1)**2 + (x4 - x3) **2 ) ;
Q2:= x1 ;
END_FUNCTION


7、自己写了一个简单的程序
OB1:
 
FC1用SCL编写:
FUNCTION fc1:INT
VAR_INPUT
    a:INT;
END_VAR
begin
fc1:=a+10;       
end_FUNCTION

运行后:每次m0.0从0变1,就调用FC1一次,mw18里面的数据加10。

问题:SCL如何调用其他SCL以及用LAD等编写的程序?
写一个有循环、判断等基本语句组成的程序。
参数使用问题?(直接使用实际地址?参数传递问题)
如何在线调试SCL程序(debug)

本新闻共2页,当前在第11 2  

上一篇: 工控软件的定义
下一: SIEMENS WINCC标准函数