1、TIA门户网站门户网站V15 SP1 TIA PORTAL V15 SP1 STEP 7STEP 7中的中的SCL V15 SCL V15 SP1SCL in STEP 7 V15 SP1SP1SCL in STEP 7 V15 SP1 微信公众号;自动化电气系统 技术交流QQ群;60886850 练习练习 Exercises 源文件源文件Source files 编译和测试编译和测试 Compiling/testing 类型转换类型转换 Type conversion 语言描述语言描述 Language description 数据类型数据类型 Data Types 门户网站中的门户网站中的
2、SC SCL in TIA Portal TIA 介绍介绍 Introduction T I A P O R T A L V 1 1 S P 2 TIA门户网站门户网站V15 SP1 TIA Portal V15 SP1 进进一步的寻址模型一步的寻址模型 Further models for addressing 微信公众号;自动化电气系统 技术交流QQ群;60886850 SCL IN STEP 7 V15 SP1 INTRODUCTION 引言引言 适用于S7-300、S7-400、WiAC和S7-1200 Valid for S7-300, S7-400 ,WinAC and S7-12
3、00 可用函数 Function available 可用限制函数 Function available with restrictions 函数不可用 Function not available S7-1200 S7-400 WinAC S7-300 S7-1200 S7-400 WinAC S7-300 适用于S7-300, S7-400 and WinAC Valid for S7-300, S7-400 and WinAC S7-400 WinAC S7-300 S7-1200 适用于S7-1200 Valid for S7-1200 使用符号说明使用符号说明 Description
4、 of used symbols 微信公众号;自动化电气系统 技术交流QQ群;60886850 介绍介绍 Introduction TIA门户网站中的门户网站中的SC SCL in TIA Portal 数据类型数据类型 Data Types 语言描述语言描述 Language description 类型转换类型转换 Type conversion 进一步的寻址模型进一步的寻址模型 Further models for addressing 编译和测试编译和测试 Compiling/testing 源文件源文件 Source files 练习练习 Exercises SCL在在STEP 7
5、V15 SP1什么是什么是SCL? SCL IN STEP 7 V15 SP1 WHAT IS SCL ? 基于文本的结构化控制语言基于文本的结构化控制语言 Structured Control Language as textStructured Control Language as text- -basedbased 对应于对应于IEC 61131IEC 61131- -3 3(STST) Corresponds to IEC 61131Corresponds to IEC 61131- -3 (ST) 3 (ST) PLCopenPLCopen认证认证 Certified accord
6、ing to Certified according to PLCopenPLCopen 复杂计算与算法复杂计算与算法 Complex calculations 微信公众号;自动化电 气系统 技术交流QQ群; 60886850 介绍介绍 Introduction TIA门户网站中的门户网站中的SC SCL in TIA Portal 数据类型数据类型 Data Types 语言描述语言描述 Language description 类型转换类型转换 Type conversion 进一步的寻址模型进一步的寻址模型 Further models for addressing 编译和测试编译和测试
7、 Compiling/testing 源文件源文件 Source files 练习练习 Exercises STEP 7中的中的SCL V15 SP1 (SCL IN STEP 7 V15 SP1) SCL的使用:如果数据操作,那么的使用:如果数据操作,那么SCL (USAGE OF SCL: IF DATA_OPERATION THEN SCL ) 3630.0 5290.0 6383.0 9215.0 13195.0 3630.0 5290.0 6383.0 9215.0 13195.0 示例:数组中实际值的存储示例:数组中实际值的存储 Example: Storage of Real-v
8、alues in an array 微信公众号;自动化电气系统 技术交流QQ群;60886850 介绍介绍 Introduction TIA 门户网站中的门户网站中的SC SCL in TIA Portal 数据类型数据类型 Data Types 语言描述语言描述 Language description 类型转换类型转换 Type conversion 进一步的寻址模型进一步的寻址模型 Further models for addressing 编译和测试编译和测试 Compiling/testing 源文件源文件 Source files 练习练习 Exercises STEP 7中的中的
9、SCL V15 SP1 SCL IN STEP 7 V15 SP1 SCL的使用:如果数据操作,那么的使用:如果数据操作,那么SCL USAGE OF SCL: IF DATA_OPERATION THEN SCL S7-400 WinAC S7-300 S7-1200 S7-400 WinAC S7-300 S7-1200 STL S7-300400代码代码 Code in STL for S7-300/400 S71200的的LAD代码代码 Code in LAD for S7-1200 S7-300400和和S7-1200(SP2) 的的SCL解决方案解决方案 Solution in S
10、CL for S7-300/400 AND S7-1200 (with SP2) 微信公众号;自动化电气系统 技术交流QQ群;60886850 介绍介绍 Introduction TIA 门户网站中的门户网站中的SC SCL in TIA Portal 数据类型数据类型 Data Types 语言描述语言描述 Language description 类型转换类型转换 Type conversion 进一步的寻址模型进一步的寻址模型 Further models for addressing 编译和测试编译和测试 Compiling/testing 源文件源文件 Source files 练习
11、练习 Exercises 练习练习 Exercises 源文件源文件 Source files 编译编译/测试测试 Compiling/testing 进一步的寻址模型进一步的寻址模型 Further models for addressing 类型转换类型转换 Type conversion 语言描述语言描述 Language description 数据类型数据类型 Data Types TIA门户网站中的门户网站中的SCL SCL in TIA Portal 介绍介绍 Introduction T I A P O R T A L V 1 1 S P 2 TIA门户网站门户网站V15 SP
12、1 TIA Portal V15 SP1 微信公众号;自动化电气系统 技术交流QQ群;60886850 STEP 7中的中的SCL V15 SP1 SCL IN STEP 7 V15 SP1 添加新的块添加新的块 ADD A NEW BLOCK Add a new block 程序设计语言程序设计语言 Programming language 块名块名 Block name 微信公众号;自动化电气系统 技术交流QQ群;60886850 介绍介绍 Introduction TIA门户网站中的门户网站中的SC SCL in TIA Portal 数据类型数据类型 DataTypes 语言描述语言描
13、述Language description 类型转换类型转换 Type conversion 进一步的寻址模型进一步的寻址模型 Further models for addressing 编译和测试编译和测试 Compiling/testing 源文件源文件 Source files 练习练习 Exercises STEP 7中的中的SCL V15 SP1 SCL IN STEP 7 V15 SP1 用用SCL编程编程 PROGRAMMING WITH SCL 优势优势 Advantages: SCL块的处理与块的处理与LAD/FBD/STL相同(无相同(无 来源)!来源)!Handling
14、of SCL block is same like LAD/FBD/STL (No Source* any more)! 这些块是自动按照正确的顺序编译的这些块是自动按照正确的顺序编译的 (既不需要制作文件(既不需要制作文件*也不需要组织编译也不需要组织编译 顺序)!顺序)!The blocks are compiled in the right order automatically (Neither Make-File* nor organization of the compile order is necessary)! OB FC FB Local *与S7 SCL V5.x相反 I
15、n contrast to S7-SCL V5.x SCL自动编译,如自动编译,如LAD/FBD/ STL SCL are compiled in the right order automatically, like LAD/FBD/STL! 一个一个SCL -源”被当作一个块来创建!源”被当作一个块来创建! One SCL Source is dealed as one block from creating onwards! 微信公众号;自动化电气系统 技术交流QQ群;60886850 介绍介绍 Introduction TIA门户网站中的门户网站中的SC SCL in TIA Port
16、al 数据类型数据类型 DataTypes 语言描述语言描述Language description 类型转换类型转换 Type conversion 进一步的寻址模型进一步的寻址模型 Further models for addressing 编译和测试编译和测试 Compiling/testing 源文件源文件 Source files 练习练习 Exercises STEP 7中的中的SCL V15 SP1编辑器编辑器 SCL IN STEP 7 V15 SP1 EDITOR 编辑编辑 EditorEditor: : 常用指令的收藏夹栏常用指令的收藏夹栏 Favorites bar fo
17、r frequently usedFavorites bar for frequently used instructionsinstructions 易于使用的拖拽从指令任务卡,项目树,易于使用的拖拽从指令任务卡,项目树,PLCPLC标签,标签, Easy to use drag MyDB.DB0 := B#16#8; VOID plc-数据类型 PLC-Data types PLC-DATENTYP 对于 s7-1200, 此数据类型表示槽 iec _ timer 和 iec _ 计数器1) For the S7-1200 this Data type is represented tro
18、ugh IEC_Timer, and IEC_Counter 参数类型用于在块之间传输的正式参数 Parameter Types are used for formal parameter that are transferred between blocks 微信公众号;自动化电气系统 技术交流QQ群;60886850 Exercises Source files Compiling/testing Further models for addressing Type conversion Language description Data Types SCL in TIA Portal I
19、ntroduction T I A P O R T A L V 1 1 S P 2 TIA门户网站V11 SP2 TIA门户网站V11 SP2 TIA门户网站门户网站V11 SP2 TIA Portal V11 SP2 微信公众号;自动化电气系统 技术交流QQ群;60886850 Exercises Source files Compiling/testing Further models for addressing Type conversion Calling blocks Control operations Indirect addressing Direct addressing
20、Operators Language description Data Types SCL in TIA Portal Introduction STEP 7中的中的SCL V11 SP2算子算子 SCL IN STEP 7 V11 SP2 OPERATORS 组合组合 Combination 描述描述 Description 运算符运算符Operator 转让转让 Assignment 转让转让 Assignment := 括号括号 Parenthesis (陈述陈述 Statement) (,) 二进制逻辑二进制逻辑 Binary logic 否定否定 Negation 和和 AND 或者
21、或者 OR 异或异或 Exclusive-OR NOT AND, 例如例如 Example: 接通接通switch_on := 手册上手册上manual_on OR 或自动开启或自动开启auto_on; 所有的分配、控制操作和调用都由所有的分配、控制操作和调用都由 All assignments, control operations and calls are ended by ; S7-1200 S7-400 WinAC S7-300 微信公众号;自动化电气系统 技术交流QQ群;60886850 Exercises Source files Compiling/testing Furthe
22、r models for addressing Type conversion Calling blocks Control operations Indirect addressing Direct addressing Operators Language description Data Types SCL in TIA Portal Introduction 步骤步骤7中的中的SCL V11 SP2 SCL IN STEP 7 V11 SP2 直接寻址直接寻址 DIRECT ADDRESSING 区域区域 Area 符号示例符号示例 Notation example 实例实例 Exam
23、ples 绝对性绝对性寻址寻址 Absolut addressing 位位 Bit %DBz.DBXy.x, %Ex,y %DB1.DBX0.0, %E0.0 字节字节 Byte %DBz.DBBy, %ABy %DB5.DBB2 , %MB2 词词 Word %DBz.DBWy, %MWy %DB5.DBW4, %MW3 双词双词 Dword %DBz.DBDy %DB5.DBD8 象征性象征性寻址寻址 Symbolic addressing “. Motor“.Sollwert 直接寻址:象征性和绝对性直接寻址:象征性和绝对性!Direct Addressing : symbolic an
24、d absolute! S7-1200 S7-400 WinAC S7-300 STEP 7中的中的SCL V11 SP2 SP2 SCL IN STEP 7 V11 SP2 SP2 直接寻址直接寻址- SLICE ZUGRIFFE DIRECT ADDRESSING- SLICE ZUGRIFFE 字节字节 BYTE 单词单词 WORD 双词双词 DWORD 任意位、块和 I/Q/m中的操作数 ANY_Bit Operands in blocks and I/Q/M My_DW_变量变量 “ My_DW_Variable“ My-Wy变量变量 My_W_Variable“ MyB-BY-变量
25、变量 My_B_Variable 切片:访问切片:访问“Slice”access: 定义不必要定义不必要 Definition not necessary 高程序效率高程序效率 high program efficiency 位元位元 Bit-wise 字节式字节式 Byte-wise 单词式单词式 Word-wise 操作数名称只是一个例子操作数名称只是一个例子 Operand names are only an example W0 W1 B0 B1 B3 X 0 X 1 X 2 X 31 My_W_变量变量 Variable.X0“ My_DW_变量变量.B1“ My_DW_Variab
26、le.B1“ 例如例如 Examples: S7-400 WinAC S7-300 S7-1200 Exercises Source files Compiling/testing Further models for addressing Type conversion Calling blocks Control operations Indirect addressing Direct addressing Operators Language description Data Types SCL in TIA Portal Introduction STEP 7中的中的SCL V11
27、SP2 SCL IN STEP 7 V11 SP2 直接寻址直接寻址 DIRECT ADDRESSING 在在SCL编辑器中,输入、输出和位存储器总是象征性的编辑器中,输入、输出和位存储器总是象征性的。 In the SCL-Editor, inputs, outputs and Bit memory are always Symbolic :表格中的标签符号和地址表格中的标签符号和地址 Tags symbols and addresses in table form S7-1200 S7-400 WinAC S7-300 Exercises Source files Compiling/te
28、sting Further models for addressing Type conversion Calling blocks Control operations Indirect addressing Direct addressing Operators Language description Data Types SCL in TIA Portal Introduction STEP 7中的中的SCL V11 SP2 SCL IN STEP 7 V11 SP2 间接寻址间接寻址 INDIRECT ADDRESSING 具有数组的符号地址访问的间接寻址具有数组的符号地址访问的间接
29、寻址 Indirect addressing, with symbolic address access of Arrays 例如例如 Example: 语法语法 Syntax: 索引索引 “. Index S7-1200 S7-400 WinAC S7-300 Exercises Source files Compiling/testing Further models for addressing Type conversion Calling blocks Control operations Indirect addressing Direct addressing Operators
30、 Language description Data Types SCL in TIA Portal Introduction STEP 7中的中的SCL V11 SP2 SCL IN STEP 7 V11 SP2 间接寻址(间接寻址(S7-300S7-400) INDIRECT ADDRESSING- (S7-300/S7-400) 区域区域 Area 符号示例符号示例 Notation example 例子例子 Example 间接寻址间接寻址 Indirect Addressing 位位 Bit %DBz.DX(byteindex, bitindex) %E(byteindex, bit
31、index) %DB10.DX(a, b) %E(a, b) 单词单词 Word %DBz.DW(wordindex) %MW(wordindex) %DB10.DW(a) %MW(a+b) DB Word_to_Block_DB(index).DW0 Word_to_Block_DB(i).DW0 间接寻址与绝对地址访问,以及对于间接寻址与绝对地址访问,以及对于I/Q/M的数据块!的数据块! Indirect addressing with absolut address access , as well for I/Q/M as for data blocks! SCL支持间接寻址支持间接
32、寻址 SCL supports Indirect Addressing of: 全局操作数全局操作数 Global Operands 数据块中的操作数数据块中的操作数 Operands within data blocks 数据块(数据块(dB数数)Data blocks (number of DB) S7-1200 S7-400 WinAC S7-300 Exercises Source files Compiling/testing Further models for addressing Type conversion Calling blocks Control operations
33、 Indirect addressing Direct addressing Operators Language description Data Types SCL in TIA Portal Introduction 例子:值例子:值_假假 Example: Value False STEP 7 V15 SP1中的中的SCL SCL IN STEP 7 V15 SP1 间接寻址间接寻址 INDIRECT ADDRESSING 通过指针访问地址通过指针访问地址使用使用PEEK读取读取 Accessing addresses via pointers Read with PEEK PEEK
34、价值 Value 指针Pointer %MW4 %M0.0 %E0.0 Address 123 Monotor value True False Int Bool Bool Data type Var_C Var_B Var_A Name E / A / M / DB 示例:地址示例:地址M0.0的指针的指针 Example: Pointer of the address M0.0 该指针包括下列信息:该指针包括下列信息: The pointer includes following information: 面积 Area: 输入 Inputs 输出 Outputs 记忆位 Memory b
35、its 标准数据库(与S7-300/400 兼容) Standard DBs (compatible with S7-300/400) 数据库编号 DB Number 抵消 Offset S7-400 WinAC S7-300 S7-1200 STEP 7中的中的SCL V11 SP2 SCL IN STEP 7 V11 SP2 间接寻址间接寻址- S71200 INDIRECT ADDRESSING- S7-1200 间接寻址间接寻址 Indirect addressing, with PEEK 地址区地址区 Address area 原理原理 Principle 语法语法/实例实例 Syn
36、tax/Example 读 READ 输入输入 Inputs “Var1“:= PEEK_BOOL(area:=16#81, dbNumber:=0, byteOffset:= #Myoffset, bitOffset := #MyBitoffset); 输出输出 Outputs “Var2“:= PEEK_BYTE(area:=16#82, dbNumber:=0, byteOffset:= #Myoffset); 存储位存储位 Memory bits “Var3“:= PEEK_WORD(area:=16#83, dbNumber:=0, byteOffset:= #Myoffset);
37、DB “Var4“:= PEEK_DWORD(area:=16#84, dbNumber:= #MyDBNr, byteOffset:= #Myoffset); PEEK_Data type 区域区域Area 指针指针Pointer 目标变量目标变量 Target-Variable S7-400 WinAC S7-300 S7-1200 Exercises Source files Compiling/testing Further models for addressing Type conversion Calling blocks Control operations Indirect
38、addressing Direct addressing Operators Language description Data Types SCL in TIA Portal Introduction STEP 7中的中的SCL V11 SP2 SCL IN STEP 7 V11 SP2 间接寻址间接寻址 INDIRECT ADDRESSING 通过指针访问地址通过指针访问地址-用用Pokes编写编写 Accessing addresses via pointers Write with POKE POKE 指针指针 Pointer %MW4 %M0.0 %E0.0 Address 123
39、Monitor value True False Int Bool Bool Data type Var_C Var_B Var_A Name E / A / M / DB 示例:地址示例:地址M0.0上的指上的指 针针Example: Pointer on the address M0.0 指针包括以下信息:指针包括以下信息:The pointer includes following information: 面积面积 Area: 输入输入 Inputs 输出输出 Outputs 存储位存储位 Memory bits 标准标准DBS(兼容(兼容S7-300400) Standard DBs
40、 (compatibel wiht S7-300/400) 数据库编号数据库编号 DB Number 抵消抵消 Offset 价值价值 Value 例:值“假”例:值“假” Example: value False S7-400 WinAC S7-300 S7-1200 STEP 7中的中的SCL V11 SP2 SCL IN STEP 7 V11 SP2 间接寻址间接寻址- S71200 INDIRECT ADDRESSING- S7-1200 间接寻址,用间接寻址,用poke Indirect addressing, with POKE 位 Bit 字节,单词,双单词 Byte, Word
41、, DWord 未指定的 Unspecified 原理原理 Principle 语法/例子 Syntax / Example POKE_BOOL(area:= 16#83, dbNumber:= 0, byteOffset:= #MyOffset, bitOffset:= #MybitOffset, Value:= True); POKE(area:= 16#83, dbNumber:= 0, byteOffset:=#MyOffset, Value:= #MyValue); POKE_BLK(area:= 16#84, dbNumber_src:= #MyScrDB, byteOffset_
42、src:= #MyOffset, area_dest:= #MyValue, dbNumber_dst:= #MyDstDB, byteOffset_src:= #MyOffset Count:= 20); POKE_BOOL Value Bit-ByteOffset Area POKE (BYTE, WORD DWORD) Value Offset Area Src_area Dst_Offset Nbr_of-Bytes Src_Offset Dst_area POKE_BLK S7-400 WinAC S7-300 S7-1200 Exercises Source files Compi
43、ling/testing Further models for addressing Type conversion Calling blocks Control operations Indirect addressing Direct addressing Operators Language description Data Types SCL in TIA Portal Introduction STEP 7中的中的SCL V11 SP2 SCL IN STEP 7 V11 SP2 控制操作控制操作-概述概述 CONTROL OPERATIONS OVERVIEW 关键词 Keywor
44、d 功能 Functionality 程序分支 Program branching 如果 IF 带布尔值的分支程序 Program branching with BOOLean Value 案例 CASE 带int值的程序分支 Program branching with INT Value 程序循环(可能中止) Program loop (Abort possible) 为了 FOR 带运行变量的程序循环 Program loop with run variable 同时 WHILE 具有执行条件的程序循环 Program loop with execution condition 重复 R
45、EPEAT 具有中止条件的程序循环 Program loop with abort condition 循环中止 Loop aborts 继续 CONTINUE 异常电流回路通过 Abort current loop pass 出口 EXIT 退出程序循环 Exit program loop 块中止 Block abort 返回 RETURN 退出块 Exit the block 控制操作可以很容易地使用代码片段编程控制操作可以很容易地使用代码片段编程! Control operations can be programmed easily using the code snippet! S7
46、-1200 S7-400 WinAC S7-300 Exercises Source files Compiling/testing Further models for addressing Type conversion Calling blocks Control operations Indirect addressing Direct addressing Operators Language description Data Types SCL in TIA Portal Introduction STEP 7中的中的SCL V15 SP1 SCL IN STEP 7 V15 SP
47、1 程序分支程序分支-语法语法 PROGRAM BRANCHING - SYNTAX 如果条件如果条件1然后然后; if Condition1 THEN 声明声明1 Statements 1; 然后然后ELSIF条件条件2; ELSIF Condition 2 then 声明2 Statements 2; 否则否则 ELSE 声明S statement s; 如果结束 END_IF; 条件为布尔型条件为布尔型 Condition is of type Bool if语句语句:IF Statement: 使用的例子使用的例子 Example of use STL SCL Exercises So
48、urce files Compiling/testing Further models for addressing Type conversion Calling blocks Control operations Indirect addressing Direct addressing Operators Language description Data Types SCL in TIA Portal Introduction STEP 7中的中的SCL V11 SP2 SCL IN STEP 7 V11 SP2 程序分支程序分支-语法语法 PROGRAM BRANCHING - SY
49、NTAX 案例选择 CASE Selection OF COST1:声明1;Const1: Statements 1; . Constn:声明N; Constn: Statements n; 否则否则 ELSE 声明声明3; Statements 3; 结束情况结束情况;END_CASE; 选择是选择是int型型 Selection is of type INT 案例陈述:案例陈述:CASE Statement: 使用实例使用实例 Example of use STL SCL Exercises Source files Compiling/testing Further models for
50、 addressing Type conversion Calling blocks Control operations Indirect addressing Direct addressing Operators Language description Data Types SCL in TIA Portal Introduction STEP 7中的中的SCL V11 SP2 SCL IN STEP 7 V11 SP2 程序分支程序分支-语法语法 PROGRAM BRANCHING - SYNTAX For START_VAR TO END_VAR BY STEP_WIDTH DO