S7-1200第14讲:扩展指令讲解5-FC和FB编程、DB块讲解、数据记录指令.pptxVIP

  • 101
  • 0
  • 约4.26千字
  • 约 33页
  • 2021-09-17 发布于河北
  • 举报

S7-1200第14讲:扩展指令讲解5-FC和FB编程、DB块讲解、数据记录指令.pptx

博途1200课程--第14讲;数据记录指令:;DataLogCreate 指令的 DATA 参数: DATA 参数指向用作新日志记录临时缓冲区的存储器,必须将其分配给 M 或 DB 位置。可以分配整个 DB(源自创建 DB 时分配的 PLC 数据类型),也可分配部分 DB(指定的DB 元素可以是任何数据类型、数据类型结构、PLC 数据类型或数据数组)。 所声明数据元素的总数应与标题参数中指定的列数相对应。可以分配的最大数据元素个数为 253(带时间戳)或 255(不带时间戳)。这一限制使记录始终处于 Excel 工作表的 256 列限制范围内。 DATA 参数可在“标准”(与 S7-300/400 兼容)或“优化”DB类型中分配保持性数据元素或非保持性数据元素。 要写入数据日志记录,首先必须用新过程值装载临时 DATA 记录,然后执行DataLogWrite 指令将新记录值保存到 Datalog 文件中。; 以数据日志文件存储在 S7-1200 CPU 装载存储器中,使用PLC Web 服务器进行管理为例,实现下述功能: (1)执行“DataLogging”指令将产品型号“型号”,长度“长度”,宽度“宽度”三个变量值写入到数据日志文件; (2)当写入的条数达到设定的3条记录条数时,自动关闭该数据日志文件 ; (3)当写入的条数达到设定的3条记录条数时,可选择以下两种情况之一再分别写入数据记录: 情况一:如果旧的变量值允许被新的变量值覆盖,再打开这个数据日志文件,循环写入1条数据记录; 情况二:如果想保存之前的变量值,创建一个新的数据日志文件,再写入1条新的数据记录。 ;1. 启用 Web 服务器 按照以下路径和方法为要连接的 CPU 启用 Web 服务器:“设备视图”→“鼠标选中CPU”→“属性”→“Web服务器”→“启用模块上的Web服务器前打钩”。如下图所示:;2. 创建数据日志名称、标题和 Data 结构 数据日志名称和记录的所有数据元素的数据类型、列标题分别由 名称、数据 参数和 标题 分配。因此需先创建 DB 块,这里使用非优化DB块。如下图所示:; 在创建的 DB块 中,创建数据日志名称(如:产品)、新名称(如:新产品)、标题(如型号、长度、宽度)和 数据 结构等。如下图所示:;创建数据日志DB时注意以下几点: 数据日志名称:此变量仅支持 String 数据类型。(该名称应符合 Windows 文件名称的限制,不允许使用以下字符:“\”、“/”、“:”、“*”、“?”、“”、“”、“|”、“空格”) 2. 数据日志标题:标题 参数指向数据日志文件中第一行的列标题名称,各列名称需要用逗号(英文)分隔;如果未设置该值,则不会在数据日志文件中创建标题行。 3. 数据日志 数据 结构:指定数据日志记录的各个数据元素(列)及其数据类型:用户自定义类型 (UDT) 或数组。 4.新名称(创建新日志时使用,命名方法同第1点) ;3.创建和初始化数据日志文件 创建数据日志需调用“DataLogCreate”指令。调用该指令时会自动弹出创建相应背景数据块的界面,如下图所示:; 将所创建的数据日志名称、标题和 数据 结构为“DataLogCreate”指令分配输入、输出参数。当触发该指令输入参数 REQ 时,创建数据日志文件。如下图所示:; DataLogCreate(创建数据日志)指令: 创建和初始化数据日志文件。CPU 在\DataLogs 文件夹中使用 NAME参数中的名称创建文件,并且以隐式打开以便执行写操作。在程序中,可使用 Datalog 指令将运行系统过程数据存入 CPU的闪存或存储卡中。;捕捉创建完成信号: 完成数据日志的创建需多个扫描周期,且 DONE 位仅在一个扫描周期内有效,因此可编程捕获“DataLogCreate”指令的 DONE 信号位。如下图所示:;4. 写入数据记录 数据日志创建成功后,使用“DataLogCreate”指令的 Done=1 信号使能“DataLogWrite”指令,并触发该指令 REQ,将产品型号“型号”,长度“长度”,宽度“宽度”三个变量值写入到数据日志文件。如下图所示: ; DataLogWrite(写入数据日志)指令: 将数据记录写入指定的数据日志。必须先打开已有目标数据日志,才能使用 DataLogWrite指令对其执行写入操作。;5. 关闭打开的数据日志文件 当写入的条数达到设定的3条记录条数时,数据日志已满“DataLogCreate”指令的输出参数 STATUS=1。因此,可编程使用该状态字节自动关闭该数据日志文件。如下图所示:; DataLogClose(关闭数据日

文档评论(0)

1亿VIP精品文档

相关文档