Presentation is loading. Please wait.

Presentation is loading. Please wait.

TIA 博途V12 STEP 7 V12 (LAD, FBD, STL)编程.

Similar presentations


Presentation on theme: "TIA 博途V12 STEP 7 V12 (LAD, FBD, STL)编程."— Presentation transcript:

1 TIA 博途V12 STEP 7 V12 (LAD, FBD, STL)编程

2 TIA 博途V12 介绍 程序块 编辑器 编程 编译与下载 在线功能 块比较功能 控制器创新功能 2

3 编辑器 PLC-变量 : HW-视图 “IO Tags”
介绍 HW-视图 “IO Tags” 显示: 选择IO模块,在属性窗口选择 IO Tags标签栏 当对一个变量分配符号名,在 “缺省变量表”中自动列出 程序块 编辑器 编程 编译与下载 在线功能 2 块比较功能 控制器创新功能 1 支持下拉复制功能

4 PLC变量: 全局变量和常数共用一个编辑器
仅用于S7-1200: HMI 是否可访问 ( 默认不会出现在WINCC的变量对象选择列表中) 是否出现在WINCC的变量对象选择列表中 批量写入地址 仅用于S7-1200: M区断电保持 仅用于S7-1200: 设置M区断电保持区域

5 PLC变量: 全局变量和常数共用一个编辑器
默认变量表: 全局变量和常数共用一个编辑器 变量 通过批量方式建立变量 通过批量方式重新连接变量的地址 全局用户常数 可用于程序当中 用户常数 硬件组态中定义了系统常数,这样硬件就可以在用户程序中通过符号寻址了 (仅用于S7-1200) 仅用于S7-1200: 系统常数 包括时钟存储区

6 保持功能的开始地址缺省从0开始.例如 MB0、 T0 以及 C0
编辑器 PLC-变量:保持功能 介绍 设置S7-1200与S7-1500的保持功能 程序块 S7-1500: 位存储器、定时器、计数器可以设置保持功能 编辑器 编程 编译与下载 S7-1200: 只有位存储器可以设置保持功能 在线功能 块比较功能 保持功能的开始地址缺省从0开始.例如 MB0、 T0 以及 C0 控制器创新功能

7 Selection of the tag table
编辑器 PLC-变量 : 显示所有变量 介绍 层级化的变量表可以使变量结构更加清晰化 程序块 变量表组 变量表 显示所有变量 注意: 所有变量的名称必须唯一 编辑器 编程 编译与下载 Show all tags 在线功能 块比较功能 变量表可以层级化建立 Selection of the tag table 控制器创新功能

8 编辑器 PLC-变量 : Excel 导入/导出
介绍 高效编程 – 使用熟知办公软件的特性 程序块 导入/导出 从或到 Excel: PLC所有的变量表都可以导出到Excel 只有在“Show all tags”(显示所有变量)的情况下才可以导入变量 编辑器 编程 编译与下载 显示所有变量 在线功能 导出到 Excel 从 Excel导入 块比较功能 控制器创新功能

9 编辑器 PLC-变量 : Excel 导入/导出
利用office的特性实现高效编程 PLC变量 数据块 导出到 Excel 利用复制粘贴与Microsoft Excel交互 从变量表 从数据块 PLC数据类型 编辑器 在线功能 Ctrl+C Ctrl+V

10 建立新块 建立新块 块名 PLC变量 数据块 PLC数据类型 编辑器 在线功能 编程语言 练习 块类型

11 数量块编辑器 - 建立变量 新建变量 仅用于S7-1200: HMI 是否可访问 ( 默认不会出现在WINCC的变量对象选择列表中)
数量块编辑器 - 建立变量 新建变量 PLC变量 仅用于S7-1200: HMI 是否可访问 ( 默认不会出现在WINCC的变量对象选择列表中) 数据块 PLC数据类型 编辑器 在线功能 是否出现在WINCC的变量对象选择列表中 练习 断电保持性: S7-300/400: 作用于整个DB S7-1200: 对于符号寻址的DB,可以单独设定单个变量 可以将结构型和数组型变量可以最小化 初始值: CPU中的初始值

12 数据块编辑器– 默认值和初始值 初始值 实际值 注意! :初始值 (STEP 7 Classic) ≠ 初始值 (TIA Portal)
PLC变量 初始值 实际值 数据块 PLC数据类型 编辑器 在线功能 注意! :初始值 (STEP 7 Classic) ≠ 初始值 (TIA Portal) 练习 初始值 默认值 隐藏 不能被修改 仅用于 PLC数据类型(UDT) 快照功能取代了原先的功能 快照

13 编辑器 数据块 – 变量监控 数据块的监控 – 数组与字符串变为可能 数据块的监控 可以监控字符串与数组 使用快照功能提取PLC当前过程值到
介绍 数据块的监控 – 数组与字符串变为可能 程序块 数据块的监控 可以监控字符串与数组 使用快照功能提取PLC当前过程值到 离线项目中 编辑器 编程 编译与下载 在线功能 块比较功能 控制器创新功能

14 快照 可把当前值用作初始值 快照: 新列 "快照“ 快照值存于离线项目中 可把当前值用作新的初始值 快照 可将快照的值复制粘贴到初始值
PLC变量 数据块 快照: 新列 "快照“ 快照值存于离线项目中 可把当前值用作新的初始值 PLC数据类型 编辑器 快照 在线功能 练习 可将快照的值复制粘贴到初始值

15 编辑器 数据块 – 快照功能 使用当前值作为新的开始值 使用快照功能: 快照按钮 在命令栏中选择 “Snapshot”按钮
介绍 使用当前值作为新的开始值 程序块 使用快照功能: 在命令栏中选择 “Snapshot”按钮 快照值被存储于离线项目中 快照值可以作为新的初始值: 作用于所有变量 作用于被选择“Set value” 属性的变量 即使FB的接口发生变化也可以修改背景数据块的初始值 快照按钮 编辑器 编程 编译与下载 也可以通过复制与粘贴修改初始值 在线功能 块比较功能 控制器创新功能

16 数据块编辑器 – 快照和初始值的使用 离线项目 PLC RUN STOP Load memory Work memory
"Data_Block_1“ 104 Data_1 初始值 "Data_Block_1“ 100 Data_1 Initial value "Data_Block_1“ 104 Data_1 当前值 "Data_Block_1“ 100 Data_1 Current value "Data_Block_1“ PLC数据类型 编辑器 初始值 快照 Data_1 104 初始值 快照 Data_1 100 104 初始值 快照 Data_1 100 --- 在线功能 初始化 冷启动 练习 下载 102 106 103 104 105 101 上传 / 快照

17 Offline-DB Offline-DB
编辑器 数据块 – 快照功能 S7-1500 S7-1200 S7-300/400/WinAC NEW 复制快照的过程值作为预设变量的初始值: 选择变量的 “Set value”属性 下载 DB 到 PLC并监控 触发快照功能 监控的过程值复制到快照栏. 带有 “Set Value” 属性变量的快照值被复制到初始值栏中 离线程序 离线程序- 监控视图 Offline-DB Offline-DB Name Start value Set value Val_1 1 Val_2 False Val_3 0.5 Name Start value Set value Snap-shot Monitor Value Val_1 30 Val_2 True Val_3 28.8 1 30 30 False True 0.5 28.8 28.8

18 编辑器 数据块 – 快照功能:多个数据块 对所有或选择的数据块使用快照功能: 程序 程序 Main1 Main1 My_FC1 My_FC1
S7-1500 S7-1200 S7-300/400/WinAC 对所有或选择的数据块使用快照功能: 监控视图 2 Retrieve Snapshot: 所有选择的数据块. 程序 程序 Main1 Main1 My_FC1 My_FC1 Data Block_1 1 Data Block_1 Data Block_2 Data Block_2 Data Block_3 3 Data Block_3 复制快照值到初始值: Only Set values or only retain members

19 STEP 7 V11编程(LAD, FBD, STL) STEP 7 V12编程(LAD, FBD, STL) 语言 PLC变量 数据块
编辑器 在线功能 练习

20 PLC数据类型 建立用户定义数据类型 PLC数据类型用于: 常用的数据结构 用户块接口区参数的数据类型声明 数据块中的变量声明
语言 PLC变量 PLC数据类型用于: 常用的数据结构 用户块接口区参数的数据类型声明 数据块中的变量声明 用作数据块的模板(这些数据块具有同样数据结构) 数据块 PLC数据类型 编辑器 在线功能 练习 默认值, 用作初始值

21 PLC数据类型用于数据块 将初始值复位到默认值 默认值用作初始值 可以修改初始值 语言 PLC变量 数据块 PLC数据类型 编辑器 在线功能
练习 可以修改初始值

22 PLC数据类型 用于用户块接口区 将初始值复位到默认值 默认值用作初始值 初始值可修改 语言 PLC变量 数据块 PLC数据类型 编辑器
在线功能 练习 默认值用作初始值 初始值可修改

23 标准编辑器概览 用户块 - 三种编程语言 STL – 语句表 FBD – 功能块图 LAD – 梯形图 语言 PLC变量 数据块
在线功能 练习

24 概览 块编辑器: 收藏栏中收藏常用指令 易于从指令任务栏, 项目树, PLC变量表中拖拽对象… 智能感知 程序块中快速导航 易于调试 声明表
语言 块编辑器: 收藏栏中收藏常用指令 易于从指令任务栏, 项目树, PLC变量表中拖拽对象… 智能感知 程序块中快速导航 易于调试 PLC变量 数据块 PLC数据类型 编辑器 声明表 在线功能 练习 收藏栏 程序指令 指令

25 收藏栏 快速访问常用指令 收藏栏: 可将常用指令复制到收藏栏 仅适用于基本指令 亦可用于SCL和GRAPH FBD: LAD: ATL:
语言 快速访问常用指令 PLC变量 数据块 收藏栏: 可将常用指令复制到收藏栏 仅适用于基本指令 亦可用于SCL和GRAPH FBD: PLC数据类型 编辑器 在线功能 练习 LAD: ATL:

26 用户块导航 优化视图概览和快速导航 概览和导航: 显示或隐藏网络: 所有网络: 单个网络: 显示或隐藏变量符号或地址: 直接缩放视图:
语言 优化视图概览和快速导航 PLC变量 概览和导航: 显示或隐藏网络: 所有网络: 单个网络: 显示或隐藏变量符号或地址: 直接缩放视图: 存储布局: 更多的快捷键 (在线帮助中有描述) 数据块 PLC数据类型 编辑器 在线功能 练习

27 易于调试 调试支持: 错误块也可以保存 错误网络指示: 错误之间跳转: 更新块调用: 列出当前块所有错误 语法窗口 语言 PLC变量 数据块
编辑器 在线功能 练习

28 块编辑器中定义变量 定义变量: 通过菜单或快捷键定义新变量 可对单个变量或网络中所有变量 可重命名或重连线 可用的变量表 语言 PLC变量
数据块 PLC数据类型 如,先定义符号名再连接地址 编辑器 在线功能 练习 可重命名或重连线 可用的变量表

29 智能感知: PLC变量智能选择 智能感知: 输入第一个字母后,就可选择变量 选择: PLC变量 数据块 本地变量 只显示数据类型匹配的变量
语言 智能感知: 输入第一个字母后,就可选择变量 选择: PLC变量 数据块 本地变量 只显示数据类型匹配的变量 PLC变量 数据块 PLC数据类型 编辑器 在线功能 练习 显示后续变量 (如:在结构内)

30 STL 编辑器 亮点: 智能感知变量和指令(包括系统块和标准块) 激活 / 取消某些行代码: 跳转标签高亮显示 跳转标签名可长于4个字符
语言 亮点: 智能感知变量和指令(包括系统块和标准块) 激活 / 取消某些行代码: 跳转标签高亮显示 跳转标签名可长于4个字符 所有的指令均位于指令任务栏中 PLC变量 数据块 PLC数据类型 编辑器 在线功能 练习

31 LAD和FBD编辑器 LAD和FBD的新功能 亮点: 直接在指令处更改其功能 单击增加输入引脚 拖拽到目标处时高亮显示 赋值指令的注解 语言
PLC变量 亮点: 直接在指令处更改其功能 单击增加输入引脚 拖拽到目标处时高亮显示 赋值指令的注解 数据块 PLC数据类型 编辑器 在线功能 练习

32 程序编辑器中的检查窗口 属性: 当前选择的关联信息 (如.被调用的块,变量…) 信息: 常规 (如项目已保存, …) 编译 (如错误和警告)
语言 属性: 当前选择的关联信息 (如.被调用的块,变量…) 信息: 常规 (如项目已保存, …) 编译 (如错误和警告) 当前选择的交叉参考 语法(当前块的语法错误) 诊断: 报警显示 (CPU报警) 设备信息 (在线诊断) 连接信息 PLC变量 数据块 PLC数据类型 编辑器 在线功能 练习

33 交叉参考 项目范围内的交叉参考 – 从用户程序直接到HMI 亮点: 当前选择的交叉参考 (如变量调用、块调用)
语言 项目范围内的交叉参考 – 从用户程序直接到HMI PLC变量 亮点: 当前选择的交叉参考 (如变量调用、块调用) 交叉参考贯穿所有站点(如从PLC到HMI站点) 直接链接到调用位置 数据块 PLC数据类型 编辑器 在线功能 练习 链接到HMI中的画面对象 链接到PLC程序中的网络

34 块调用 如何调用块: 从下列对象中拖拽 项目树 库 详细视图 智能感知 (仅用于STL和SCL, 可调用指令任务栏中所有指令) 语言
PLC变量 数据块 PLC数据类型 编辑器 在线功能 练习

35 调用FB / 背景数据块 建立背景数据块: 调用FB或SFB时,会弹出对话框建立 : 一重背景 多重背景 (仅在一个FB中)
语言 建立背景数据块: 调用FB或SFB时,会弹出对话框建立 : 一重背景 多重背景 (仅在一个FB中) 调用类型通过关联菜单确定 PLC变量 数据块 PLC数据类型 编辑器 在线功能 练习

36 调用系统块和标准块 通过指令任务栏直接调用系统块和标准块 STEP 7 Classic: 通过库调用 TIA Portal:
语言 通过指令任务栏直接调用系统块和标准块 PLC变量 数据块 STEP 7 Classic: 通过库调用 TIA Portal: 通过指令任务栏调用 PLC数据类型 编辑器 以功能导向分类 如所有通讯块都放置在一个分类中 在线功能 练习 与块类型无关 (FB, SFB, SFC) 自动采用合适的块类型, 如. "BSEND“: S7-300中的FB S7-400中的SFB

37 系统和标准功能块 系统功能块和标准功能块存于系统块目录 标准功能块 (FB): 如 S7-300的 "BSEND“ (FB12)
语言 系统功能块和标准功能块存于系统块目录 PLC变量 标准功能块 (FB): 如 S7-300的 "BSEND“ (FB12) FB 和背景数据块存于系统块目录 数据块 PLC数据类型 编辑器 在线功能 练习 系统功能块 (SFB): 如 S7-300的IEC计数器"CTU“ (SFB0) 只有背景数据块才存储于系统块目录 系统功能 (SFC): 如 "BLKMOV“ (SFC20) SFC不存储于系统块目录中

38 边沿检测– STEP 7 V11采用IEC标准图示 STEP 7 V5.x STEP 7 V11 RLO边沿检测 信号边沿检测
语言 STEP 7 V5.x STEP 7 V11 RLO边沿检测 信号边沿检测 PLC变量 数据块 PLC数据类型 编辑器 在线功能 练习 IEC

39 访问直接I/O“:P“ 通过符号可以更方便访问直接I/O 亮点: “:P“ 后缀 绝对寻址和符号寻址 例子:
语言 通过符号可以更方便访问直接I/O PLC变量 亮点: “:P“ 后缀 绝对寻址和符号寻址 例子: L "Temp_Sensor“:P T %QW4:P 数据块 PLC数据类型 编辑器 在线功能 练习

40 编辑器 LAD & FBD –编辑器 轻松 LAD & FBD 编程的新特点 亮点: 空的程序盒也可以用作: … 用户编写的程序块
介绍 轻松 LAD & FBD 编程的新特点 程序块 亮点: 空的程序盒也可以用作: … 用户编写的程序块 … 所有的指令例如 TSEND 编辑器 编程 编译与下载 在线功能 块比较功能 控制器创新功能

41 在FB/FC中任意数据类型的操作数 (即使复合数据类型)
编程 AT 功能(数据拆分) S7-1500 S7-1200 S7-300/400/WinAC SCL 提供了一个数据格式,可以使用符号寻址一个操着数的一部分 需求: 一个任意数据类型的变量在程序块的接口中定义 可以访问这个变量的一部分内容 使用符号寻址 方法: 使用一个符号模板的数据格式叠加到这个变量上 使用的数据格式不占用系统的内存资源 在FB/FC中任意数据类型的操作数 (即使复合数据类型) 这里是一个 DWORD数据类型的例子 „My_DW_Variable“ 数据格式: 必须手动定义 可以是任意结构 具有高的灵活性 „My_Sight.Mid_Byte“ „My_Sight.Low_Byte” 这里是一个 My_Sight.结构的(数据拆分)例子 .Upper_Word .Mid_Byte .Low_Byte

42 Example: Current length of the string: FirstWord initialized with 0 :
编程 AT 功能(数据拆分) S7-1500 S7-1200 S7-300/400/WinAC AT 结构的数据格式 在 FCs / FBs生明表中定义 必须在被拆分变量的下一行 不能超出被拆分变量的数据长度 S7-1200:也可以在 LAD/FBD中使用,但是程序块属性必须为标准访问 The data view does not appear in the parameter set when calling the block max. length=254 curr.length =0 char 1 char 2 ..... char 254 AT_FiWo. maxlength AT_FiWo. currlength AT_FiWo. letter[1] AT_FiWo. letter[2] .... AT_FiWo. letter[254] Example: Current length of the string: FirstWord initialized with 0 : 42

43 编程 程序信息 快捷纵览程序资源 用户程序信息包括下列视图: 调用结构 嵌套结构 分配列表 资源 介绍 程序块 编辑器 编程 编译与下载
在线功能 块比较功能 控制器创新功能

44 编程 生成指令集 使用案例:生成一个指定CPU类型的指令集 (例如 S7-1200, S7-1500 等) 新
可以为每一个控制器家族和每种编程语言生成这里集 只有激活的指令集才能在指令单中显示并可以被程序编辑器应用 可以生成多个指令集,但同时只能有一个被激活

45 TIA 博途V12 介绍 程序块 编辑器 编程 编译与下载 在线功能 块比较功能 控制器创新功能 45

46 编译与下载 程序块编译 功能: 在程序块下载之前必须进行编译 下列内容可以被编译: 单个程序块 选择的程序块 整个程序 整个站(包括硬件)
介绍 功能: 在程序块下载之前必须进行编译 下列内容可以被编译: 单个程序块 选择的程序块 整个程序 整个站(包括硬件) 多个站点 程序块 编辑器 编程 编译与下载 在线功能 编译视窗包含编译过程的信息,例如 :错误信息,双击错误条目,直接进入到故障位置。 块比较功能 控制器创新功能

47 编译与下载 程序块编译 在项目树编译程序块: Compile Software(only changes):
介绍 在项目树编译程序块: Compile Software(only changes): 用于编译独立的程序块或在程序块文件夹中同时编译多个程序块 Compile Software (rebuild all blocksk): 重新编译所有程序块 Compile Software( rebuild and initialize DB memory reserve (S7-1500) 预留存储器初始化,存储于预留存储器中的过程值丢失。(后面的胶片中详细介绍) 程序块 编辑器 编程 编译与下载 在线功能 块比较功能 控制器创新功能

48 所有变化的程序块将被编译,FB1和FB2接口被更新
程序块 编译方式: 软件 – 仅改变的部分 S7-1500 S7-1200 S7-300/400/WinAC 示例:FB2接口改变 在程序编辑器中触发编译按钮 在项目树中选择整个程序文件夹并触发编译按钮 FB1 MAIN FB2 In : Bool1 FB1 MAIN FB2 In : Bool1 MAIN FB1 FB2 FB2 FB2 FB2 In : Bool1 改变FB2的接口 只有FB2 被编译 所有变化的程序块将被编译,FB1和FB2接口被更新 调用FB2的FB1将被标记为红色

49 所有变化的程序块将被编译,FB1和FB2接口被更新
程序块 编译方式: 软件 – 所有的块 S7-1500 S7-1200 S7-300/400/WinAC 示例:改变FB2的接口 在项目树中选择整个程序文件夹并点击鼠标右键选择 “Compile => Software all Blocks” 编译后 FB1 MAIN FB2 In : Bool1 MAIN FB1 所有变化的程序块将被编译,FB1和FB2接口被更新 FB2 FB2 FB2 In : Bool1 改变FB2的接口

50 程序块 编译软件与硬件 硬件配置 硬件配置 软件程序块 软件程序块(只有改变的FB1和FB2) 选择站点,触发编译按钮 改变FB2的接口
S7-1500 S7-1200 S7-300/400/WinAC 选择站点,触发编译按钮 改变的硬件配置 S7-1500 编译后 硬件配置 硬件配置 软件程序块 软件程序块(只有改变的FB1和FB2) MAIN FB1 FB2 FB2 In:Bool 改变FB2的接口

51 “Download selection” only with S7-300/400/WinAC possible
在线功能 下载程序块 介绍 功能: 通过菜单、工具栏和下拉菜单都可以启动下载功能 编译自动启动( 如果需要?) 对话框中选择下载选项 一致性下载: 与在线相比,只有不同、不存在的程序块将 被下载 只有在在线中存在的程序块将被删除 S7-1500/S7-1200的缺省选项 S7-300/400/WinAC 必须选择 下载选择: 只有选择的程序块被下载 只有S7-300/400/WinAC 可以选择 程序块 编辑器 编程 编译与下载 在线功能 块比较功能 控制器创新功能 “Download selection” only with S7-300/400/WinAC possible

52 在线功能 下载方式 从项目数中下载 选择PLC站: 下载 Hardware and Software
介绍 从项目数中下载 选择PLC站: 下载 Hardware and Software 编译的硬件和软件数据下载到PLC 下载 Hardware configuration 编译的硬件数据 下载 Software(only changes): 下载经过修改的软件和工业对象TO 下载 Software (all blocks): 所有的程序块将被下载,所有的变量被初始化到初始值 程序块 编辑器 编程 编译与下载 在线功能 块比较功能 控制器创新功能

53 TIA 博途V12 介绍 程序块 编辑器 编程 编译与下载 在线功能 块比较功能 控制器创新功能 53

54 在线功能 程序块的在线视图 在项目树中直接进行离线-在线比较 通过一个点击联机PLC 直接显示操作模式并在项目树中 显示诊断总览
S7-1500 S7-1200 S7-300/400/WinAC 介绍 在项目树中直接进行离线-在线比较 程序块 通过一个点击联机PLC 直接显示操作模式并在项目树中 显示诊断总览 在项目树中直接进行离线-在线块比较 编辑器 编程 CPU站点 CPU诊断信息 编译与下载 Offline = Online 相等 在线功能 只存储于离线 块比较功能 Offline ≠ Online 有差异 控制器创新功能 只存储于在线设备

55 在线功能 上载程序块到 PG/PC 通过在线视图: 打开离线项目 连接PLC 选择程序块文件夹
S7-1500 S7-1200 S7-300/400/WinAC 介绍 通过在线视图: 打开离线项目 连接PLC 选择程序块文件夹 菜单 „Online  Upload from device“ 或通过工具栏 通过活动列表: 现在可访问的站点 现在程序块文件夹 通过拖拽移到到存在的文件夹 程序块 编辑器 编程 编译与下载 在线功能 块比较功能 注意: 此功能仅用于程序块的上载 (不能用于硬件配置!) 控制器创新功能

56 S7-1500/S7-1200: 所有的程序注视和变量也被上载
在线功能 什么可以上载到 PG/PC? S7-1500 S7-1200 S7-300/400/WinAC 介绍 硬件: 硬件配置不能上载 软件: 选择站点并触发上载功能 整个程序将被上载,整个离线程序被删除 (所有程序块、 所有 PLC 数据类型, 所有变量) 选择程序块文件夹并触发上载功能: 只有与离线程序不同的程序块被上载,离线程序块不删除,在线程序块复制到离线程序块中并带有新的名称 DB块的过程值存储于快照栏中, 对于S7-300/400/WinAC,也存储于初始值栏中。 程序块 编辑器 编程 编译与下载 在线功能 块比较功能 S7-1500/S7-1200: 所有的程序注视和变量也被上载 控制器创新功能

57 在线功能 上载不一致的程序块 步骤: 进行在线联机 选择程序块文件夹 通过按钮触发上载
S7-1500 S7-1200 S7-300/400/WinAC 介绍 步骤: 离线项目 在线项目 程序块 进行在线联机 选择程序块文件夹 通过按钮触发上载 只有与离线程序不一致的程序块被上载,离线程序块不被覆盖,上载的程序块使用新的名称添加到程序块文件夹中。 程序块 程序块 编辑器 OB1 Main OB1 Main 编程 FC1 My_FC FC1 My_FC 编译与下载 FB1 Local My_FB FB1 Local My_FB 在线功能 DB1 My_Buffer DB1 My_Buffer 块比较功能 FB1 Local FB1 控制器创新功能 DB1 DB1

58 ! 在线功能 数据块: 快照与上载 下载到 PLC 初始化 启动(下载之后) SFC 83 („READ_DBL“) 快照
S7-300/400/WinAC 介绍 下载到 PLC 初始化 启动(下载之后) SFC 83 („READ_DBL“) 快照 上载到 PG (丢失符号名!) 写到装载存储器 SFC 84 („WRIT_DBL“) 离线项目 S7-300/400 装载存储器 程序块 „Data_Block_1“ „Data_Block_1“ „Data_Block_1“ 编辑器 缺省值(只读) 缺省值(只读) 编程 初始值 初始值 编译与下载 ! 工作存储器 在线功能 „Data_Block_1“ „Data_Block_1“ 块比较功能 快照 过程值 控制器创新功能

59 在线功能 程序块的监控 S7-1500 S7-1200 S7-300/400/WinAC 介绍 CPU 操作面板 程序块 测试任务单
Start monitoring 编辑器 调用环境 Call environment setup 编程 PLC 寄存器 编译与下载 在线功能 块比较功能 控制器创新功能

60 调用路径: 根据程序块调用的路径或背景数据块的选择而显示程序的监控状态
在线功能 程序块的监控:调用路径 S7-1500 S7-1200 S7-300/400/WinAC 调用路径: 根据程序块调用的路径或背景数据块的选择而显示程序的监控状态 调用路径的设置: 可以有多种设置选择 根据设置的调用路径显示程序的当前状态

61 STL中的断点 当前位置 双击或通过菜单增加断点 在线时,激活断点 断点功能: 继续执行 运行到标记位置 单步 / 跳出 进入 跳回 语言
PLC变量 数据块 当前位置 PLC数据类型 编辑器 双击或通过菜单增加断点 在线功能 § Connection 在线时,激活断点 § Block compare § Block monitoring § 监视表 § Forcing 练习 断点功能: 继续执行 运行到标记位置 单步 / 跳出 进入 跳回

62 监视表 功能: 在"监视表“目录中建立监视表 从下列对象中拖拽变量: 数据块 变量表 程序块 显示 / 隐藏修改列 修改变量 监控全部
语言 功能: 在"监视表“目录中建立监视表 从下列对象中拖拽变量: 数据块 变量表 程序块 PLC变量 数据块 PLC数据类型 编辑器 显示 / 隐藏修改列 在线功能 § Connection 修改变量 § Block compare § Block monitoring 监控全部 § 监视表 § Forcing 练习 激活修改值

63 Enable peripheral outputs
监视表– 高级功能 语言 显示 / 隐藏触发器列 PLC变量 数据块 PLC数据类型 编辑器 在线功能 Enable peripheral outputs 使用外设输出 (当CPU停止时) § Connection § Block compare § Block monitoring § 监视表 § Forcing 练习 触发器设置

64 强制变量 功能: 单独的强制表位于“监视表”目录 可监视和强制强制表中的变量 (不能修改) 不能在监视表中强制变量
语言 功能: 单独的强制表位于“监视表”目录 可监视和强制强制表中的变量 (不能修改) 不能在监视表中强制变量 PLC变量 数据块 PLC数据类型 编辑器 在线功能 § Connection § Block compare § Block monitoring § 监视表 § Forcing 强制只能访问直接I/O (如 %Q0.0:P) 练习 强制位于“监视表”目录

65 强制变量 1. 监视变量 2. 输入强制值 3. 选择强制变量 变量已选择, 但还未激活强制 4. 启动 / 停止当前变量强制
语言 1. 监视变量 PLC变量 2. 输入强制值 数据块 3. 选择强制变量 PLC数据类型 编辑器 变量已选择, 但还未激活强制 在线功能 § Connection 4. 启动 / 停止当前变量强制 § Block compare § Block monitoring § 监视表 § Forcing 练习 当前变量被强制

66 强制变量 – 指示 前提: 在线 站级指示 本地模块的指示 操作面板上的指示 监视表中的指示 程序编辑器中的指示 语言 PLC变量 数据块
在线功能 § Connection 本地模块的指示 § Block compare 操作面板上的指示 § Block monitoring § 监视表 § Forcing 监视表中的指示 练习 程序编辑器中的指示

67 TIA 博途V12 介绍 程序块 编辑器 编程 编译与下载 在线功能 块比较功能 控制器创新功能 67

68 离线/在线比较 & 离线/离线比较 块比较: 离线/离线比较: 比较两个离线程序 同一项目或不同项目 离线/在线比较:
离线/在线比较 & 离线/离线比较 语言 块比较: 离线/离线比较: 比较两个离线程序 同一项目或不同项目 离线/在线比较: 离线程序与在线程序比较 PLC变量 数据块 PLC数据类型 编辑器 在线功能 § Connection § Block compare § Block monitoring § 监视表 § Forcing 练习

69 块比较 编辑器 在块比较编辑器中也可以使用拖放功能 编辑器区域: 比较编辑器的工具栏
S7-1500 S7-1200 S7-300/400/WinAC 在块比较编辑器中也可以使用拖放功能 编辑器区域: 比较编辑器的工具栏 拖放区:可以拖放程序块文件夹进行比较,使用 V12 可以比较库文件 左比较区 右比较区 状态与动作区 手动/自动比较按钮 比较结果 1 2 2 6 4 3 5 7

70 块比较 离线/在线比较 功能: 在相同或不同项目中 两个离线程序的比较 比较离线项目中的程序与库中包含的程序 S7-1500 S7-1200
S7-300/400/WinAC 功能: 在相同或不同项目中 两个离线程序的比较 比较离线项目中的程序与库中包含的程序 只显示差别或显示所有内容 打开详细比较

71 块比较: 详细比较 可在比较结果有差异位置前后跳转 可复制在线窗口中的内容 离线窗口项目可编辑 比较结果 语言 PLC变量 数据块
编辑器 在线功能 § Connection § Block compare § Block monitoring § 监视表 § Forcing 练习 可复制在线窗口中的内容 离线窗口项目可编辑 比较结果

72 TIA 博途V12 介绍 程序块 编辑器 编程 编译与下载 在线功能 块比较功能 控制器创新功能 72

73 S7-1500的系统架构 S7-300/400/WinAC S7-1500 I/Q/M/C/T L 标准DB I/Q/M/C/T L
介绍 S7-300 S7-400 WinAC S7-300/400/WinAC S7-1500 程序块 I/Q/M/C/T L 标准DB 编辑器 I/Q/M/C/T L DB standard L DB classic L 优化 优化DB 编程 编译与下载 ACCU 1-4 ROL ACCU 1-2 DB1 / DB2 寄存器 DB1 / DB2 寄存器 AR1 / AR2 寄存器 AR1 / AR2 寄存器 ROL /FC S7-1500的数据管理系统提供两种程序块访问机制: 优化程序块访问 标准程序块访问 (与 S7-300/400兼容) 传统的 STL-寄存器 (ACCU, DB寄存器等.) 被仿效 在线功能 OR STA OV OS 块比较功能 A1 A0 BIE 控制器创新功能

74 建议: 以最小程度减少标准与优化程序块的混用。系统自动调整访问模式,但是需要占用处理器资源
系统架构 标准与优化程序块访问的比较 S7-1500 S7-1200 S7-300/400/WinAC 标准程序块访问 S7-1200/1500,与S7-300/400兼容 优化程序块访问 只适合S7-1200/1500 数据管理 取决于变量的生明 用户可以生成用户定义或一个内存优化的数据结构 数据被系统管理和优化 用户可以生成用户定义的数据结构,系统进行优化以节省内存的空间 性能 影响S7-1200/1500数据速度 – 取决于变量的声明和创建,可能造成的数据存储低效率 系统对数据进行优化存储,与用户声明无关,以最快速度进行访问 出错几率 绝对地址访问 (例如 HMI或间接寻址 ),声明修改后可能导致数据的不一致 缺省为符号访问,不会造成数据的不一致,例如HMI只与符号名称对应。 数据保持属性 整个数据块 可选择变量 建议: 以最小程度减少标准与优化程序块的混用。系统自动调整访问模式,但是需要占用处理器资源

75 结论: 标准块访问类型多、灵活但是容易出错。 优化块访问具有高的特性及数据类型安全功能(匹配)
系统架构 标准与优化程序块访问的比较 Planned S7-1500 S7-1200 S7-300/400/WinAC 访问类型 标准程序块访问 S7-1200/1500,与S7-300/400兼容 优化程序块访问 只适合S7-1200/1500 符号 索引 (域) Slice 访问 AT 访问 * 准备中 绝对地址 间接寻址 (指针) 下载数据无初始化 * S7-1200准备中 结论: 标准块访问类型多、灵活但是容易出错。 优化块访问具有高的特性及数据类型安全功能(匹配)

76 系统架构 优化程序块访问-S7-1200 标准块 优化块 B y t e s Bits B y t e s Bits
S7-300/400/WinAC 标准块 优化块 Standard DB Optimized DB B y t e s Bits 1 2 3 4 5 6 7 X1 B1 X2 X3 W1 X4 8 W2 9 B y t e s Bits W1 W2 B1 X1 X2 X3 X4 在优化快中地址偏移不可见 大的数据类型在块的开始,小些的数据类型在块的末端用于优化数据结构 处理器优化的数据管理提高访问速度

77 系统架构 优化程序块访问-S7-1500 标准块 优化块 B y t e s Bits B y t e s Bits S7-1500
S7-300/400/WinAC 标准块 优化块 在优化快中地址偏移不可见 Standard DB Optimized DB B y t e s Bits 1 2 3 4 5 6 7 X1 B1 X2 X3 W1 X4 8 W2 9 B y t e s Bits W1 W2 B1 X1 X2 X3 X4 大的数据类型在块的开始,用于优化数据结构 处理器优化的数据管理提高访问速度 S7-1500: 位变量以字节宽度存储用于快速访问 预留地址区用于下载数据无初始化功能使用 预留地址区

78 优化块 改变访问模式 程序块生成后缺省设置为优化访问,在属性中可以修改访问模式。 在特性中选择优化块访问 选择块属性
S7-1500 S7-1200 S7-300/400/WinAC 介绍 程序块生成后缺省设置为优化访问,在属性中可以修改访问模式。 程序块 在特性中选择优化块访问 编辑器 编程 选择块属性 编译与下载 3 在线功能 2 1 块比较功能 使用 FBs 和 DBs: 确认提示 选择块 控制器创新功能 4 必须每个块单独访问.

79 优化块 本地临时变量自动初始化 当程序块调用时,简单数据类型的临时变量 (Int, Byte,…) 被自动初始化为0。 不需要编写程序
Planned S7-1500 S7-1200 S7-300/400/WinAC 介绍 当程序块调用时,简单数据类型的临时变量 (Int, Byte,…) 被自动初始化为0。 不需要编写程序 由于疏忽造成的错误不会再出现了。 程序块 编辑器 编程 标准快 优化快 FC FC 编译与下载 在线功能 Temp_Var值是未确定的 Temp_Var的值为0 块比较功能 S FW V1支持自动初始化功能, S7-1200计划在 FW V4支持自动初始化功能,如果使用老版本,用户需要编程做初始化,当在不同的PLC间复制程序块时需要特别注意。 控制器创新功能

80 程序块的理念 组织块 OB块的增加提高用户搭建层次分明的程序架构,同时做成模板添加到库中 OB 最大数量 S7-1200 S7-1500
S7-300/400/WinAC 介绍 OB块的增加提高用户搭建层次分明的程序架构,同时做成模板添加到库中 程序块 最大数量 S7-1200 S7-1500 用户的利益 启动OB和循环OB 100 用户程序模块化 硬件中断 50 每一个事件可以有一个独立的OB 时间延迟中断 4 20 循环中断 日期时间中断 编辑器 OB 编程 编译与下载 在线功能 块比较功能 控制器创新功能

81 程序块的理念 组织块 启动OB和循环OB 硬件中断 OBs以号码次序调用 程序被模块化 在定义的事件触发时调用 快速以及可以选择的响应时间
S7-300/400/WinAC 介绍 启动OB和循环OB 硬件中断 程序块 User program 编辑器 Main_1 OB1 FB Local FC 例如I6.1下降沿 例如I0.0上升沿 编程 Main_y OB200 FB Local FC 编译与下载 硬件中断 OB40 硬件中断 OB41 Main_x OB300 FB Local FC 在线功能 OBs以号码次序调用 程序被模块化 块比较功能 在定义的事件触发时调用 快速以及可以选择的响应时间 控制器创新功能

82 OB在不同PLC间进行复制时,类型需要匹配 ( S7-300/400不支持优化块) – 检查OB是否有效!
程序块的理念 减少组织块的启动信息 S7-1500 S7-1200 S7-300/400/WinAC 在优化 OB中,临时变量被缩减, 例如中断 OB: 优点: 清楚 少的本地变量 标准 OB 优化 OB EV_CLASS STRT_INF PRIORITY OB_NUMBR RESERVED_1 IO_FLAG MDL_ADDR POINT_ADDR DATE_TIME Event class Start information Priority OB number Reserved for system Module type (In/Out) Hardware identifier Interrupt status Date & time OB started LADDR USI IChannel EventType Hardware identifier User structure identifier Interrupt channel nr. Event type RD_SINFO (SFC6)可以读出激活S OB的开始信息 SFC OB在不同PLC间进行复制时,类型需要匹配 ( S7-300/400不支持优化块) – 检查OB是否有效! 如果需要本地数据,可以切换到标准OB

83 OB块的优先级可以修改,从而优化程序的执行 诊断缓冲区的条目与定时故障OB可以被抑制
程序块的理念 灵活的循环中断编程设置 S7-1500 S7-1200 S7-300/400/WinAC 目前为止循环中断过负荷的运行情况 优化循环中断OB块的有效设置 Priority OB块的优先级可以修改,从而优化程序的执行 Time 1 2 3 4 5 6 循环中断定期的调用 高优先级的事件中断导致循环中断的执行延迟 由于时间延迟,一条记录被写进诊断缓冲区并 带有高的优先级 这样将导致下一个循环中断执行的延迟 影响:将导致定时故障OB的调用 循环中断再次被延迟 1 诊断缓冲区的条目与定时故障OB可以被抑制 3 2 5 3 4 通过查询OB的开始信息,丢失的事件可以捕获(1:只是当前事件) 5 6 在过载的情况下有好的响应

84 程序块的理念 错误处理 – 全局 可以进行全局或本地错误处理 全局错误处理 CPU 保持运行,故障条目进入诊断缓冲区 S7-1200
S7-300/400/WinAC 介绍 可以进行全局或本地错误处理 程序块 全局错误处理 编辑器 CPU 保持运行,故障条目进入诊断缓冲区 编程 S7-1200 FC 例如编程错误 : 没有编写OB121: CPU 停止,故障条目进入诊断缓冲区 编写 : CPU 保持运行,故障条目进入诊断缓冲区 编译与下载 错误在程序块中 OB121 在线功能 例如 IO 访问错误: 没有编写OB122: CPU 保持运行,故障条目进入诊断缓冲区 编写 : CPU 保持运行,故障条目进入诊断缓冲区 调用OB122 块比较功能 S7-1500 控制器创新功能 OB122

85 ENO can be used for error handling (only active when error occurred)
程序块的理念 错误处理 – 本地 ENO can be used for error handling (only active when error occurred) S7-1500 S7-1200 S7-300/400/WinAC 介绍 本地错误处理 程序块 FC FC OB SFC 编辑器 错误在程序块中 在程序块中GET_ERROR或 GET_ERR_ID 没有OB调用,没有诊断条目进入诊断缓冲区 编程 在程序块的属性中显示 编译与下载 在用户程序中进行错误处理 错误发生在GetError-调用前:显示错误代码 错误发生在GetError-调用后:不显示错误代码,没有OB调 用 必须在每一个程序块中独立使用,例如GetError-的调用不能 应用被调用的程序块或正在调用的程序块 使用户自定义带有错误处理的库更完美 在线功能 块比较功能 ENO可以用作错误处理(当错误发生时激活) 控制器创新功能

86 Live Demo 优化的组织块 现场演示次序 打开对话框 “Add block“ ,总览有效的OB块 插入循环中断块

87 程序块的理念 程序块总览 工作存储器中程序块的容量被增加 S7-1500工作存储器分为代码块和数据块 最大容量和块号 (工作存储器不考虑)
介绍 程序块 最大容量和块号 (工作存储器不考虑) S7-300/400 S7-1200 S7-1500 最大容量 64 kB 5 MB (优化) 最大块号 16.000 65.535 512 kB (优化) 7.999 最大块数量 4.096 (CPU319) (CPU412) 1.024 6.000 (CPU1516) 共享 工作存储器 S7-300 分开的 用于代码 和用于数据 S7-400 S7-300 S7-400 WinAC 编辑器 DB 编程 DB 编译与下载 FB FC FB FC 在线功能 FC FB DB FB FC DB FB FC DB 块比较功能 DB 控制器创新功能 FB FC

88 编程语言 总览 S7-1500 S7-300/400/WinAC 机器码 S7-1500 所有语言是平等的:
介绍 S7-300 S7-400 WinAC S7-1500 S7-300/400/WinAC 程序块 LAD FBD SCL STL 编辑器 SCL LAD FBD 编程 机器码 S7-1500 编译与下载 STL 在线功能 所有语言是平等的: 所有的编程语言提供相同的性能(使用相同的访问方式) 所有的编程语言支持所有的访问方式 LAD/FBD 与 STL不能切换 机器码 S7-300/400/WinAC 块比较功能 控制器创新功能

89 编程语言 总览 S7-1500 S7-1200 S7-300/400/WinAC 介绍 程序块 编辑器 编程 编译与下载 在线功能
块比较功能 控制器创新功能 89

90 HMI: (U)LInt 只能用于符号访问 (Basic/Comfort P.)
S7-300/400/WinAC 介绍 S7-1500数据类型的扩展 HMI: (U)LInt 只能用于符号访问 (Basic/Comfort P.) 程序块 可以选择更多的数据类型和合适的取值范围,例如整数数据类型: HMI: 在变量表中有效的数据类型 编辑器 数据类型 大小 取值范围 S7-1500 S7-1200 S7-300/400/ WinAC 编程 USInt 无符号短整数 8 位 编译与下载 SInt 短整数 8 位 UInt 无符号整数 16 位 在线功能 Int 整数 16 位 UDInt 无符号双整数 32 位 0 .. 4,3 Mio. 块比较功能 DInt 双整数 32 位 -2,14 Mio. .. 2,14 Mio. ULInt 无符号长整数 64 位 ,4 Trio. 控制器创新功能 LInt 长整数 64 位 -9,2 Trio. .. 9,2 Trio.

91 所有S7-1200/1500编程语言 新的数据类型 浮点数据类型(S7-1200/1500) 额外数据类型: (S7-1500)
S7-300/400/WinAC 介绍 浮点数据类型(S7-1200/1500) 数据类型 大小 取值范围 程序块 Real 32 位 (1位符号, 8位指数, 23位尾数) – 10 个数字 -3.40e e+38 编辑器 LReal 64 位 (1位符号, 11位指数, 52位尾数) – 16个数字 -1.79e e+308 编程 额外数据类型: (S7-1500) LWord (长字) LTime_Of_Day (长日期时间) LTime (长定时器) LDT (日期和长时间 – UNIX-时间) 编译与下载 DTL 数据类型(长日期和时间 – S7-1200/1500) 在线功能 Year Month Day Weekday Hour Minute Second Nanosecond 系统时间提供 DTL格式 – 使用符号名,很容易访问每个独立的值。例如 My_Timestamp.Hour 块比较功能 控制器创新功能 指针数据类型VARIANT (S7-1200/1500) 当前只支持系统函数,将来再进行评估

92 All languages S7-1200/1500 Indexed field access
S7-300/400/WinAC Introduction Indirect addressing directly in LAD/FBD, STL and SCL Blocks Editors Syntax: Variable [„Control variable“] Programming Compile & Download Example: “Field_Data”. Numbers[“i”] i := INT Online functions Compare blocks Innovated controllers 6 7 1 5 8 4 3 9 2 § Optimized blocks § Block concept § Programming § STL STL: § LAD/FBD § Online Dynamic access during runtime § PLCSim V12 SCL:

93 所有S7-1200/1500编程语言 Slice 访问 Slice 访问 代表性的操作名称 BYTE 程序块、DBs 和 I/Q/M的操作数
S7-300/400/WinAC Slice 访问 代表性的操作名称 „My_B_Variable“ BYTE 程序块、DBs 和 I/Q/M的操作数 „My_W_Variable“ WORD „My_DW_Variable“ DWORD „My_LW_Variable“ LWORD 示例: „My_DW_Variable.W1“ „My_W_Variable.X0“ X 1 2 63 „Slice“ 访问 不必要定义 高效编程 很简单访问控制位 Bit-方式 B0 B1 B7 Byte-方式 W0 W1 W3 Word-方式 D0 D1 DWord-方式

94 所有S7-1200/1500编程语言 间接寻址 (Peek) 访问未结构体化的数据区域 – 使用PEEK读
S7-300/400/WinAC 介绍 访问未结构体化的数据区域 – 使用PEEK读 S 与 S7-1500兼容 程序块 PEEK 这个指针有下列参数: 数据区: 输入 输出 位存储区 标准DB (与 S7-300/400兼容) DB 号 偏移 编辑器 指针 编程 例如:值„False“ 例如:指向地址 M0.0 编译与下载 I / Q / M / DB 在线功能 Int Bool Data type Var_C Var_B Var_A Name %MW4 %M0.0 %E0.0 Address 123 Monitor value True False 块比较功能 控制器创新功能

95 所有S7-1200/1500编程语言 间接寻址 (Poke) 访问未结构体化的数据区域 – 使用Poke写
S7-300/400/WinAC 介绍 访问未结构体化的数据区域 – 使用Poke写 S 与 S7-1500兼容 程序块 这个指针有下列参数: 数据区: 输入 输出 位存储区 标准DB (与 S7-300/400兼容) DB 号 偏移 指针 POKE 编辑器 编程 例如:指向地址 M0.0 例如:值„False“ 编译与下载 I / Q / M / DB 在线功能 Int Bool Data type Var_C Var_B Var_A Name %MW4 %M0.0 %E0.0 Address 123 Monitor value True False 块比较功能 控制器创新功能

96 UTC 时间 (起点子午线 – 英国格林威治时间)
所有S7-1200/1500编程语言 时间功能 S7-1500 S7-1200 S7-300/400/WinAC 介绍 设置本地时间 – WR_LOC_T 与SET_TIMEZONE 程序块 UTC 时间 (起点子午线 – 英国格林威治时间) 系统时间 编辑器 新! (当前只支持 S7-1500) 编程 编译与下载 例如 UTC + 1 德国本地时间 本地时间 当前只支持 S7-1200 在线功能 本地时间 系统时间 时区 / 冬令时-/夏令时 + = SET_TIMEZONE WR_SYS_T WR_LOC_T 块比较功能 控制器创新功能 RD_SYS_T RD_LOC_T

97 S7-1500 STL编程 总览 S7-1500支持S7-300的指令 除了下面几点,具有相同的实时行为, 创新: 不支持的功能:
S7-300/400/WinAC 介绍 S7-1500支持S7-300的指令 除了下面几点,具有相同的实时行为, 对于绝对地址寻址,寄存器可以独立使用 如果无限定访问或块调用,DB寄存器将被关闭 创新: 支持索引访问 – 例如: L #my_array[#index] AT 功能, Slice 访问 使用特殊的函数库,支持64位数据格式 不支持的功能: 没有64位累加器 断点调试在准备中 程序块 编辑器 编程 编译与下载 在线功能 块比较功能 控制器创新功能

98 寄存器在调用时可以独立使用 (不需要对寄存器的内容作转存操作)
S STL编程 寄存器 S7-1500 S7-1200 S7-300/400/WinAC 介绍 寄存器独立使用 一个指针装载到地址寄存器1中 程序块 AR1 P#M1.0 块调用不中断寄存器的内容 编辑器 寄存器在调用时可以独立使用 (不需要对寄存器的内容作转存操作) 编程 编译与下载 线 8: AR1 包含的值在线2中已分配 在线功能 块比较功能 对于绝对地址寻址,寄存器可以独立使用: 在整个块调用过程中,值不变。 系统修改寄存器(例如AR2) 的情况被去除。 控制器创新功能

99 S7-1500 STL编程 寄存器 确定的动作复位寄存器 „OPN DB“ 只能用于DB块的标准范围 有效的访问 块调用将关闭DB寄存器
S7-300/400/WinAC 介绍 确定的动作复位寄存器 „OPN DB“ 只能用于DB块的标准范围 DB-R1 %DB1 %DB2 - 程序块 编辑器 有效的访问 块调用将关闭DB寄存器 编程 无效的访问: 块调用关闭 DB寄存器 编译与下载 在线功能 DB-R1 %DB1 - 有效的访问 无限定访问数据块,DB寄存器将关闭 块比较功能 无效的访问:无限定访问数 据块,DB寄存器将关闭 控制器创新功能

100 S7-1500 STL编程 最好的实施 – 示例 符号访问 增加性能: better: 替代: OPN "Data"
S7-300/400/WinAC better: 介绍 符号访问 增加性能: 使用 Slice 访问: 使用 索引访问: 避免间接方式打开DB块(OPN DB[#DBNummer]) 程序块 替代: OPN "Data" L %DBW0 L "Data".Setpoint 编辑器 better: 编程 替代: OPN "Data" U %DBX2.0 U "Data".Status.x0 编译与下载 better: 在线功能 替代: OPN "Data" L #index SLD 3 LAR1 L DBW [ AR1 , P#10.0 ] 块比较功能 L "Data".my_array[#index] 也可以用于优化DB块 控制器创新功能

101 S7-1200/1500 LAD / FBD编程 总览 S7-1200 与 S7-1500兼容
S7-300/400/WinAC 介绍 S 与 S7-1500兼容 相比 S7-300/400扩展了编程指令,例如 Calculate box 支持64位数据类型 创新的访问方式: 索引访问、间接寻址、AT 功能、Slice 访问 进一步的提高: 为了增加性能,可以停止ENO 输出 可以集成STL 网络被 (LAD / FBD 不使用寄存器) 不支持的功能: LAD / FBD 与 STL的切换 程序块 编辑器 编程 编译与下载 在线功能 块比较功能 控制器创新功能

102 跟随的指令根据前一个指令的结果判断是否执行
S7-1200/1500 LAD / FBD编程 停止ENO输出 S7-1500 S7-1200 S7-300/400/WinAC 介绍 确定的指令允许 停止 ENO输出 并可以在一个网络段中生成多个网络分支 跟随的指令根据前一个指令的结果判断是否执行 程序块 编辑器 1 编程 编译与下载 在线功能 跟随的指令总是执行 优点:快速执行,更少的检测 块比较功能 2 每个网络段可以有跟多的分支 控制器创新功能

103 S7-1200/1500 LAD / FBD编程 隐形类型转换 数据类型的自动转换 数据类型自动转换 不需要手动转换 转换的显示用于控制
S7-300/400/WinAC 介绍 数据类型的自动转换 程序块 数据类型自动转换 不需要手动转换 转换的显示用于控制 如果必要,数值取整 编辑器 SInt 编程 编译与下载 类型转换 REAL 到 SINT (检查运行动作!) ADD Int 无错类型的转换INT 到 REAL Real 在线功能 EN ENO DInt 块比较功能 Int IN1 OUT SInt 控制器创新功能 IN2 Real LReal

104 S7-1200/1500 LAD / FBD编程 隐形类型转换运行错误
S7-300/400/WinAC 介绍 当监控这个块时,隐形类型转换的运行错误很容易观察 程序块 类型转换 REAL 到SINT 没有运行错误 ENO: TRUE 类型转换 REAL 到SINT 没有运行错误 ENO: FALSE 编辑器 编程 新的AUTO类型 系统选择数据类型 编译与下载 在线功能 块比较功能 控制器创新功能 49 * 2.4 = 117.6 118 (SInt 取整) 50 * 10.0 = 500 值超限 (SInt: )

105 LAD / FBD for S7-1200/1500 CALCULATE
S7-300/400/WinAC Introduction Complex calculations with one instruction Blocks Editors One call instead of numerous mathematical functions Configuration time-saving Programming Compile & Download Online functions Enter the formula Compare blocks Innovated controllers § Optimized blocks § Block concept § Programming § STL § LAD/FBD § Online § PLCSim V12 Start formula assistant

106 在线 下载无重新初始化( re-initialization)功能
Planned S7-1500 S7-1200 S7-300/400/WinAC 下载无重新初始化(re-initialization)功能将块的实际值保持(只是优化的 FBs/DBs) 块在 项目中 块在 CPU中 块在 项目中 块在 CPU中 Name Name Value Name Name Value Variable1 Variable1 3.4 Variable1 Variable1 3.4 Variable2 Variable2 451 Variable2 Variable2 451 下载到 CPU 激活下载无重新初始化功能 下载到 CPU Variable3 Variable3 23 Variable3 Variable3 23 Variable4 Variable4 Variable5 Variable5 带有存储区预留的程序块用于下载无重新初始化功能 预留功能占用更多地存储区 新增的变量必须小于预留的存储区 实际值被保留

107 在线 设定下载无重新初始化( re-initialization)功能
Planned S7-1500 S7-1200 S7-300/400/WinAC 介绍 新建的优化块中,下载无重新初始化(re-initialization)功能自动激活。下列设定可以修改: 程序块 编辑器 编程 打开块属性 编译与下载 在线功能 块比较功能 2 1 存储区大小可以设置(最大2M) 控制器创新功能 预留存储区也可以激活用于保持的变量 选择块

108 在线 下载无重新初始化( re-initialization)功能次序
Planned S7-1500 S7-1200 S7-300/400/WinAC 介绍 下载无重新初始化( re-initialization)功能次序 程序块 生成和下载带有存储区预留的FB/DB 1 2 编辑器 激活下载无重新初始化( re-initialization)功能 (变量变灰) 2 1 5 编程 3 6 添加新的变量 3 4 编译与下载 添加一个保持的变量 4 在线功能 改变存在变量的初始值 5 2 块比较功能 下载新的块接口 实际值被保留 新生成的变量变灰(没有更多的变化) 6 控制器创新功能

109 在线 改变和下载次序 (1) 修改 标准DB和 优化DB 不选择 „下载无重新初始化“ 功能 DB1 DB1 DB1 DB2 DB2 DB2
S7-1500 S7-1200 S7-300/400/WinAC 修改 标准DB和 优化DB 不选择 „下载无重新初始化“ 功能 离线项目 CPU 装载存储区 CPU 工作存储区 DB1 DB1 DB1 STOP/RUN 改变初始值 非保持 保持 初始值 非保持 保持 2 实际值 非保持 保持 下载 MRES 1 STOP 3 „Data_Block_1“ 2 RUN DB2 保持存储区 DB2 DB2 STOP/RUN 新变量 变量 改名 初始值 非保持 保持 2 实际值 非保持 保持 „Data_Block_1“ Download 下载 1 STOP 1 3 2 MRES RUN 4 Watch table 改变值

110 在线 改变和下载次序 (2) 修改 优化DB ,选择 “下载无重新初始化” 功能 DB3 DB3 DB3 : STOP/RUN 旧变量
Planned S7-1500 S7-1200 S7-300/400/WinAC 修改 优化DB ,选择 “下载无重新初始化” 功能 离线项目 CPU 装载存储区 CPU 工作存储区 DB3 DB3 DB3 STOP/RUN 旧变量 非保持 保持 初始值 非保持 保持 2 实际值 非保持 下载 1 STOP „Data_Block_1“ 2 MRES RUN 3 预留存储区 新变量: 新变量: 新变量: STOP/RUN 新变量 非保持 保持 初始值 非保持 保持 2 实际值 非保持 保持 „Data_Block_1“ 下载 Download STOP 1 1 2 RUN 4 Watch table 修改值

111 PLCSim V12 总览 PLCSim 用于在软件控制器中测试程序
Planned S7-1500 S7-1200 S7-300/400/WinAC 介绍 PLCSim 用于在软件控制器中测试程序 程序块 用于 S (FW V1) 和 S (计划 FW V4) 功能与实际硬件相同 感知与TIA博途相同 视图 设备配置 仿真表 次序 编辑器 编程 编译与下载 在线功能 块比较功能 控制器创新功能

112 PLCSim V12 设备配置 设备配置 配置的CPU和模块图像逼 真 可以模拟CPU和中央IO模 块 在没有硬件的情况下也可 以模拟程序
Planned S7-1500 S7-1200 S7-300/400/WinAC 介绍 设备配置 配置的CPU和模块图像逼 真 可以模拟CPU和中央IO模 块 在没有硬件的情况下也可 以模拟程序 可以缩小为紧凑视图 程序块 编辑器 编程 编译与下载 在线功能 块比较功能 控制器创新功能

113 通过一个点击,一个字节类型变量的每个独立位信号可以监控
PLCSim V12 仿真表 Planned S7-1500 S7-1200 S7-300/400/WinAC 介绍 仿真表 用于显示和监控PLC变量 输入、输出、标准位以及数据块可以修改 值被立即修改 几个变量同时修改 程序块 编辑器 输入、输出、标准位以及数据块可以仿真 编程 编译与下载 显示符号名称 在线功能 块比较功能 通过一个点击,一个字节类型变量的每个独立位信号可以监控 控制器创新功能

114 Thank you for your attention!
I CS LS TS FA  Siemens Ltd., China


Download ppt "TIA 博途V12 STEP 7 V12 (LAD, FBD, STL)编程."

Similar presentations


Ads by Google