您的位置:控制工程论坛网论坛 » PLC与PAC » 如何在 WinCC (TIA Portal) PC 运行系统中用脚本将信息存储成文件?

wuwei01

wuwei01   |   当前状态:在线

总积分:3850  2024年可用积分:0

注册时间: 2010-03-25

最后登录时间: 2023-08-11

空间 发短消息加为好友

如何在 WinCC (TIA Portal) PC 运行系统中用脚本将信息存储成文件?

wuwei01  发表于 2016/1/18 22:33:49      2752 查看 3 回复  [上一主题]  [下一主题]

手机阅读

  描述
  TIA Portal 提供了不同的系统函数,可以将归档数据和配方数据永久地存储在移动媒介和网络驱动器中。 如果希望存储过程数据和项目数据以备日后上传,那么需要使用 Visual Basic 脚本。本文负责解释如何编写存储过程数据的脚本以及如何在 WinCC (TIA Portal) 高级版 PC 运行系统中使用这些脚本。
  说明
  在如下例子中,过程变量“Material”,“Pressure”和“Temperature”被写入到特殊 命名“FileName”的文件中,并且以“MaterialFromFile”,“PressureFromFile”和 “TemperatureFromFile”读出。
  1. 在 TIA Portal 中创建一个已组态了 WinCC RT Advanced 的 SIMATIC PC Station 的项目。
  2. 在 WinCC RT 的变量表中创建需要存储和读出的过程变量。(如:“Material”,“Pressure”和“Temperature”,同时创建 “MaterialFromFile”,“PressureFromFile”和“TemperatureFromFile”)。原则上,这些变量可以是 任何类型。除此之外,创建一个名为“FileName”的变量,数据类型为“WString”。它将包含在文件的路径和名称中。确保在路径中有足够的可使 用的空间。

  图. 01


  3. 组态两个脚本“Write_data_to_file”和“Read_data_from_file”。(也可在本文下方直接拷贝这些脚本)。

  图. 02

  图. 03


  4. 在合适的事件中链接执行这两个脚本,例如按钮的点击事件。

  图. 04


  脚本“Write_data_to_file”每一次被调用,一条“数据记录”会以一个新行的形式附在已经存在的文件中。脚本“Read_data_from_file”从特定的文件中读取所有的数据记录并且复制它们的最后一个值,然后写入到合适的工程变量。
  这两个脚本将按照如下方式进行工作。
  1. 创建文件系统对象,意为连接到 PC 的文件系统。
  2. 创建或打开包含存储值的文件。
  3. 值的写入或读取。
  4. 关闭这些文件,与文件系统断开连接。
  为了适应系统环境,在 36 行
  (“Write_data_to_file”)
  ts.WriteLine(Material & ";" & Pressure & ";" & Temperature)
  和 28 行及如下
  (“Read_data_from_file”)
  MaterialFromFile = field(0)
  PressureFromFile = field(1)
  TemperatureFromFile = field(2)
  可根据需要存储和读取的变量,替换指定变量的名称。可以指定希望存储和读取任意多的变量。确保当存储和读取时,在每一次执行时用分隔符分开变量(本例:“;”,行 36 和 26 )。
  例程的功能
  以下功能在提供的例程中完成:在如下的三个输入 / 输出域(“Current values:”)关联要存储变量的过程值(“Material”,“Pressure”和“Temperature”)。底部指定了要使用的文件的路 径。点击按钮“Write to disk”调用脚本“Write_data_to_file”并且写入数据记录到文件中。点击按钮“Read from disk”调用脚本“Read_data_from_file”并且从文件中读取所有的数据记录,进而在条目“Values on file:”中显示这些数据记录的最后一个写入值。

  图. 05

1楼 0 0 回复
  • jijun

    jijun   |   当前状态:在线

    总积分:5844  2024年可用积分:2

    注册时间: 2007-09-24

    最后登录时间: 2023-08-18

    空间 发短消息加为好友

    jijun   发表于 2016/1/24 10:19:54

    谢谢分享

    2楼 回复本楼

    引用 jijun 2016/1/24 10:19:54 发表于2楼的内容

  • sweect

    sweect   |   当前状态:在线

    总积分:5941  2024年可用积分:0

    注册时间: 2007-11-07

    最后登录时间: 2023-08-21

    空间 发短消息加为好友

    sweect   发表于 2016/1/24 15:16:13

    学习了

    3楼 回复本楼

    引用 sweect 2016/1/24 15:16:13 发表于3楼的内容

  • swy

    swy   |   当前状态:在线

    总积分:8595  2024年可用积分:0

    注册时间: 2006-08-05

    最后登录时间: 2023-08-21

    空间 发短消息加为好友

    swy   发表于 2016/1/25 14:15:14

    好文章

    4楼 回复本楼

    引用 swy 2016/1/25 14:15:14 发表于4楼的内容

总共 , 当前 /