跳转至内容
  • 版块
  • 最新
  • 标签
  • 热门
  • 世界
  • 用户
  • 群组
皮肤
  • 浅色
  • Brite
  • Cerulean
  • Cosmo
  • Flatly
  • Journal
  • Litera
  • Lumen
  • Lux
  • Materia
  • Minty
  • Morph
  • Pulse
  • Sandstone
  • Simplex
  • Sketchy
  • Spacelab
  • United
  • Yeti
  • Zephyr
  • 深色
  • Cyborg
  • Darkly
  • Quartz
  • Slate
  • Solar
  • Superhero
  • Vapor

  • 默认(不使用皮肤)
  • 不使用皮肤
折叠

工控达摩院

  1. 主页
  2. 诺软科技
  3. 内部技术讨论区
  4. WinCC如何访问 S7 控制器中数据类型为 DATE_AND_TIME 的变量 ?

WinCC如何访问 S7 控制器中数据类型为 DATE_AND_TIME 的变量 ?

已定时 已固定 已锁定 已移动 内部技术讨论区
3 帖子 1 发布者 6 浏览 1 关注中
  • 从旧到新
  • 从新到旧
  • 最多赞同
回复
  • 在新帖中回复
登录后回复
此主题已被删除。只有拥有主题管理权限的用户可以查看。
  • 小
    小
    小诺
    发表于 最后由 编辑
    #1
    WinCC如何访问 S7 控制器中数据类型为 DATE_AND_TIME 的变量 ?

    描述:
    为了使WinCC能够访问S7控制器 DATE_AND_TIME数据类型的变量,必须创建一个对应DATE_AND_TIME数据类型的结构变量。

    字节
    S7 数据类型
    DATE_AND_TIME
    WinCC
    结构元素
    时间标识
    0
    Year
    YEAR
    "yyyy"
    1
    Month
    MONTH
    "m"
    2
    Day
    DAY
    "d"
    3
    Hour
    HOUR
    "h"
    4
    Minute
    MINUTE
    "n"
    5
    Second
    SECOND
    "s"
    6
    1/10 and 1/100 second
    MILLISEC1
    7
    4MSB: 1/1000 second
    4LSB: weekday
    MILLISEC2

    表 01

    使用VBS函数“DatePart”,可以确定WinCC日期/时间变量的组成元素(如,年,日,分钟),通过“DateAdd”改变日期/时间的组成。这两个VBS函数需要在表中指定时间标识以确定日期/时间的组成。
    更多信息:
    • 关于结构变量DATE_AND_TIME 的信息请参考手册Programming with STEP 7下的:
      "Appendix" > "Data and parameter types" > "Combined data types" > "Format of the data type DATE_AND_TIME";
    • 关于读取指定 date/time 组成的信息请在WinCC Information Service 下索引:DatePart;
    • 关于编辑指定 date/time 组成的信息请在WinCC Information Service 下索引:DateAdd。
    说明:
    以下说明是组态创建必需的WinCC 结构变量。为此,WinCC项目必须已经打开,并且到控制器的连接也已经组态。

    No.步骤
    1
    在树形图中右键点击“结构变量”并选择菜单“新建结构类型”;
    2
    在"OS" 区域右键点击"New Structure",选择菜单"重命名" 并输入新的结构名称 (如S7_DATE_AND_TIME);
    3
    点击按钮“新建元素”,右键点击“SHORT New Tag”,选择数据类型为“BYTE” ;
    4
    选中“BYTE New Tag”,在类型转换下拉列表中选择“ByteToBCDByte”;
    5
    再次右键单击已插入的结构元素(“BYTE New Tag”),选择菜单“重命名”并输入名称“YEAR”;
    6
    重复步骤3-5创建如下变量,然后点击“OK”确认此对话框。
    • MONTH
    • DAY
    • HOUR
    • MINUTE
    • SECOND
    • MILLISEC_1
    • MILLISEC_2

    图 01
    7
    在变量管理器中 ,双击已经建立的通道(如TCP/IP)并且点击新建的连接;
    8
    右键单击明细窗口的空白区域,选择菜单"新建变量"。
    9
    输入名称 (如 CPUTime),数据类型选择已创建的结构名称 (如 S7_DATE_AND_TIME);
    10
    选择数据区 (如数据块 DB 2)及 DATE_AND_TIME 变量的起始字节 (如 0),然后点击“OK” 确认所有对话框。
    图 02


    注释:
    • 在变量管理中不能删除结构变量。仅在 "Structure Types" > "Name of Structure" > "Name of Tag"才能删除结构变量。
    • 如果为同样结构的多个结构创建函数,必须transfer函数的结构名称。结构元素的变量名称是动态生成的,例如 DATE_AND_TIME 结构:Sub S7TimeToWinCCTime(Byval StructName)
      ...
      Set CPUtimeYEAR = HMIRuntime.Tags(StructName & ".YEAR")
      Set CPUtimeMONTH = HMIRuntime.Tags(StructName & ".MONTH")



    1 条回复 最后回复
    0
    • 小
      小
      小诺
      发表于 最后由 编辑
      #2

      原帖链接:https://support.industry.siemens.com/cs/document/35947175/wincc%E5%A6%82%E4%BD%95%E8%AE%BF%E9%97%AE-s7-%E6%8E%A7%E5%88%B6%E5%99%A8%E4%B8%AD%E6%95%B0%E6%8D%AE%E7%B1%BB%E5%9E%8B%E4%B8%BA-date_and_time-%E7%9A%84%E5%8F%98%E9%87%8F-%EF%BC%9F?dti=0&dl=zh&lc=en-US
      1 条回复 最后回复
      0
      • 小
        小
        小诺
        发表于 最后由 编辑
        #3


        将DateTime转化成String格式,WinCC读取
        Converting Time and Date and DateandTime To String in Plc
        https://support.industry.siemens.com/tf/ww/en/posts/converting-time-and-date-and-dateandtime-to-string-in-plc/49146/?page=0&pageSize=10#top

        1 条回复 最后回复
        0

        你好!看起来您对这段对话很感兴趣,但您还没有一个账号。

        厌倦了每次访问都刷到同样的帖子?您注册账号后,您下次访问时都将自动回到上次浏览的位置,并可选择接收新回复的通知(通过电子邮件或推送通知)。您还可以收藏帖子、为帖子点赞,以此向其他社区成员表达您的感谢。

        有了你的建议,这篇帖子会更精彩哦 💗

        注册 登录
        回复
        • 在新帖中回复
        登录后回复
        • 从旧到新
        • 从新到旧
        • 最多赞同


        • 登录

        • 登录或注册以进行搜索。
        Powered by NodeBB Contributors
        • 第一个帖子
          最后一个帖子
        0
        • 版块
        • 最新
        • 标签
        • 热门
        • 世界
        • 用户
        • 群组