新现场总线技术 第2版 教学课件 刘泽祥_第4部分:产品培训资料 S7 PLC 硬件及编程.pptVIP

  • 3
  • 0
  • 约8.52千字
  • 约 34页
  • 2016-10-28 发布于广东
  • 举报

新现场总线技术 第2版 教学课件 刘泽祥_第4部分:产品培训资料 S7 PLC 硬件及编程.ppt

程序结构 STEP 7为设计程序提供三种方法。基于这些方法,可以选择最适合于你的应用的程序设计方法。 线性化编程 线性编程实例 - 传送带控制 模块化编程 模块化程序的执行 结构化编程 程序块类型 用户定义的块 系统块 数据块类型和结构 调用程序块 循环程序执行 过程映象 S7-300 模块的编址 S7-400设备的组态 STEP 7 的可能寻址范围 STEP 7基本数据类型 BOOL 1 True 或 False (1 或0) BYTE 8 B#16#A9 WORD 16 W#16#12AF DWORD 32 DW#16#ADAC1EF5 CHAR 8 w S5TIME 16 S5T#5s_200ms INT 16 123 DINT 32 L#65539 REAL 32 1.2 或 34.5E-12 TIME 32 T#2D_1H_3M_45S_12MS DATE 16 D#1993-01-20 TIME_OF_DAY 32 TOD#12:23:45.12 关键字 长度 (位) 该类型的常数举例 复杂数据类型 关键字 长度 (位) 举例 DATE_AND_TIME 64 DT#97-09-24-12:14:55.0 STRING 8 * (字符个数+2 ) ′This is a string′ (最多254个字符的字符串) ′SIEMENS′ ARRAY 用户定义 测量值: ARRAY[1..20] (相同数据类型的元素组) INT STRUCT 用户定义 Motor: STRUCT (不同数据类型的元素组) Speed : INT Current: REAL END_STRUCT UDT UDT as block UDT as array element (用户定义数据类型 = 用户定义 基本或复杂数据类型组成的 STRUCT Drive: ARRAY[1..4] 模板) Speed : INT UDT1 Current: REAL END_STRUCT 线性化编程 所有的程序都在一个连续的指令块中。这种结构和PLC所代替的固定接线 的继电器线路类似。系统按照顺序处理各个指令。 模块化编程 程序分成不同的块,每个块包含了一些设备和任务的逻辑指令。组织块中 的指令决定是否调用有关的控制程序模块。例如,一个模块程序包含有一 个被控加工过程的各个操作模式。 结构化编程 结构化程序包含有带有参数的用户自定义的指令块。这些块可以设计成一 般调用。实际的参数(输入和输出的地址)在调用时进行赋值。一个带参 数的程序块的例子如下: - 一个“泵控”块含有对泵的操作指令,例如控制过程中的泵的输入和输 出信号。 - 对泵进行控制的程序块负责调用(打开) “泵控”块,并指出哪个泵要进 行控制。 - 当“泵控”块完成其操作指令后,程序返回到调用块(例如,OB1), 然后,继续执行其他的指令。 什么是线性化编程 ? 线性化编程具有不带分支的简单结构:一个简单的程序块包含系统的 所有指令。线性编程类似于硬接线的继电器逻辑。 它如何执行? 顾名思义,线性化程序描述了一条一条重复执行的一组指令。所有的 指令都在一个块内(通常是组织块)。块是连续执行的, 在每个 CPU 扫描周期内都处理线性化程序。 优点和缺点是什么? 所有的指令都在一个块内,此方法适于单人编写程序的工程。由于仅 有一个程序文件,软件管理的功能相对简单。但是,由于所有的指令 都在一个块内,每个扫描周期所有的程序都要执行一次,即使程序的 某些部分并没有使用。此方法没有有效地利用CPU。 另外,如果在 程序中有多个设备,其指令相同,但参数不同, 将只得用不同的参数 重复编写这部分程序。 适于线性化编程的一个应用是传送带控制。因为程序逻辑由一系列的简单指令组成,不需要 存储数据. 在一个块内可以监视所有的输入设备和控制输出设备。 设计方法 当设计一个控制过程时,请采用如下的步骤: 1. 描述过程的具体任务。 2. 把任务分解成输入任务和输出任务。 3. 对每个任务确定输入和输出。 4. 对每个任务编制程序,直到所有的任务都完成。 解决方案 建立 OB1, 只要CPU进入运行状态,该程序块就一直执行。用必要的 指令编制程序块,保存并调试程序。 为了易于理解程序,确保外设的 I/O定义正

您可能关注的文档

文档评论(0)

1亿VIP精品文档

相关文档