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")
你好!看起来您对这段对话很感兴趣,但您还没有一个账号。
厌倦了每次访问都刷到同样的帖子?您注册账号后,您下次访问时都将自动回到上次浏览的位置,并可选择接收新回复的通知(通过电子邮件或推送通知)。您还可以收藏帖子、为帖子点赞,以此向其他社区成员表达您的感谢。
有了你的建议,这篇帖子会更精彩哦 💗
注册
登录