编辑: lqwzrs 2018-08-16

2 前提条件 本章的基础是 SIMATIC S7 CPU1214C 功能块编程.为完成本章的学习,您可能需要重新温习 如下项目: 031-200_功能块-编程_S7-1200….zap13

3 理论 3.1 使用 SIMATIC S7-1200 时的单实例和多实例 功能块的调用被称为实例.功能块的每次调用均对应归属于一个实例,而实例起到数据存储器 的作用.实例里保存着功能块的实际参数和静态数据. 功能块里所列出的变量决定了实例数据块的结构. 单实例和多实例的运用 实例可按照以下方式完成对应归属: 作为单实例来调用: - 为一个功能块的每个实例各分配一个自带实例数据块. 作为多实例来调用: - 为一个或多个功能块的多个实例分配一个实例数据块. SCE 教学资料 | TIA Portal 模块 031-300,版本 06/2015 | Digital Factory(数字化工厂),DF FA Restricted 可供培训或研发机构自由使用.? Siemens AG 2015.保留所有权利.

5 SCE_ZH_031-300 IEC-Times and Counters S7-1200_R1504.docx 3.1.1 实例数据块/单实例 所调用的功能块若对应归属于一个自带的 实例数据块 ,则将其称作单实例. 若功能块是按照有库访问能力的标准模块的规则来创建的,则这种功能块也可以进行多次 调用. 但每次作为单实例来调用时,必须将其对应归属到一个其他实例数据块中. 单实例的示例说明: 下图展示的是两台电机利用一个功能块 FB10 和两个不同数据块来完成控制的方式: 各个电机的不同数据(例如转速、热机启动时间、总运行时间)均保存在不同的实例数据块 DB10 和DB11 中. 提示:某些指令,如定时器和计数器,操作方法同功能块一样.若调用这些指令,它们也同样 需要一个对应归属的存储区,例如一个实例数据块形式的存储区. OB1 调用 FC1 DB11 用于第二次调用电 机2数据的实例数 据块 DB10 用于第一次调用电 机1数据的实例数 据块 FC1 调用 FB10 ...带实例 DB10 用于控制电机

1 调用 FB10 ...带实例 DB11 用于控制电机

2 FB10 标准模块带有 电机程序 FB10 标准模块带有 电机程序 SCE 教学资料 | TIA Portal 模块 031-300,版本 06/2015 | Digital Factory(数字化工厂),DF FA Restricted 可供培训或研发机构自由使用.? Siemens AG 2015.保留所有权利.

6 SCE_ZH_031-300 IEC-Times and Counters S7-1200_R1504.docx 3.1.2 多实例 由于所使用的 CPU 的存储空间大小问题,您可能更希望或者说也只能使用有一定数量限制的实 例数据块. 如果您需要将已有的功能块、定时器、计数器等调用到用户程序的某个功能块中时,无需自带 (即额外的)实例数据块便可完成这一类功能块的调用. 可简单通过选择调用选项 多实例 实现: 提示:多实例可以将所调用功能块的数据放在发出调用指令的功能块的实例数据块中. 发出调用指令的模块在这个过程中必须始终是一个功能块. 由此可将实例数据集中在一个实例数据块里,即可充分利用数据块的可使用数量. 若发出调用指令的模块仍作为标准模块可重复利用时,上述过程也会反复进行. SCE 教学资料 | TIA Portal 模块 031-300,版本 06/2015 | Digital Factory(数字化工厂),DF FA Restricted 可供培训或研发机构自由使用.? Siemens AG 2015.保留所有权利.

7 SCE_ZH_031-300 IEC-Times and Counters S7-1200_R1504.docx 多实例的示例说明: 下图展示在一个功能块内两次调用一个 TP(脉冲)类型 IEC 计时器的方法. 两个计数器的不同数据将作为不同的多实例保存在发出调用指令的功能块 FB1 的实例数据块 DB1 中. DB1 (FB1 的实例 数据块) 静态变量 (Static) #时间

下载(注:源文件不在本站服务器,都将跳转到源网站下载)
备用下载
发帖评论
相关话题
发布一个新话题