如何在WinCC项目中监控S7 300/400 PLC中的定时器及计数器

发布时间:2024-03-17
wincc中变量的数据类型可能会不同于自动化系统中所使用的数据类型。因此,当组态外部变量时,除了要定义该变量的数据类型,还必须对所有数字型数据类型执行类型转换。类型转换定义如何从wincc格式转换到as格式,该定义适用于双向传送。
下表显示哪些wincc数据类型支持类型转换: 数据类型 类型转换
二进制变量 否
无符号8位数 是
有符号8位数 是
无符号16位数 是
有符号16位数 是
无符号32位数 是
有符号32位数 是
浮点数32位ieee 754 是
浮点数64位ieee 754 是
文本变量8位字符集 否
文本变量16位字符集 否
原始数据类型 否
有关类型转换的详细信息,您可在wincc信息系统中的“通讯”>“过程通讯”>“wincc过程通讯”>“外部变量”中找到。
下面我们分别说明如何利用wincc的类型转换功能来实现在wincc项目中监控300/400plc中的time,s5time数据类型变量及定时器和计数器的值。 1.在wincc项目中监控s7 300/400 plc中的time类型变量 1.1关于time数据类型
time为带符号的32位iec时间数据类型,时间增量为1ms,取值范围为t#-24d_20h_31m_23s_648ms至t#24d_20h_31m_23s_647ms。 1.2具体步骤 (1) 在step中创建plc站的db1,并在db中创建time类型的变量t,如下图所示:
图 1.2.1 (2) 在wincc项目中创建变量time1,数据类型为“有符号32位数”, 调整格式为“longtosigneddword”。选择对应plc变量的地址db1,dd0。此时的变量单位为毫秒,为了使该变量对应单位为分钟,设置相应线性转换参数,如下图所示:
图 1.2.2 (3) 在wincc画面中创建用于访问该变量的i/o域,设置如下图所示:
图 1.2.3 (4) 运行效果如下图所示:
图 1.2.4 (5) 如果需要在wincc项目中以浮点数格式来监控plc中的time类型变量,则在创建wincc变量时应选择“浮点数32位ieee754”,调整格式为“floattosigneddword”, 选择对应plc变量的地址db1.dd0。具体设置如下图所示:
图 1.2.5 在wincc画面中创建用于访问该变量的i/o域,设置如下图所示:
图 1.2.6 运行效果如下图所示:
图 1.2.7 2. 在wincc项目中监控300/400plc中的s5time类型变量 2.1 关于s5time数据类型
s5time为无符号16位s5时间数据类型,由3位bcd码时间值(0-999)和时基组成,如下图所示:
图 2.1.1 时间基准定义将时间值递减一个单位所用的时间间隔。最小的时间基准是10毫秒;最大的时间基准是10秒。如下表所示:
用于s5time的通用格式对范围和分辨率的限制如下: 2.2 具体步骤 (1) 在step中创建plc站的db1,并在db中创建s5time类型的变量st,如下图所示:
图 2.2.1 (2) 在wincc项目中创建变量s5time,数据类型为“无符号32位数”, 调整格式为“dwordtosimaticbcdtimer”。选择对应plc变量的地址db1,dw4。此时的变量单位为毫秒,为了使该变量对应单位为秒,设置相应线性转换参数,如下图所示:
图 2.2.2 (3) 在wincc画面中创建用于访问该变量的i/o域,设置如下图所示:
图 2.2.3 (4) 运行效果:
图 2.2.4 (5) 如果需要在wincc项目中以浮点数格式来监控plc中的s5time类型变量,则在创建wincc变量时应选择“浮点数32位ieee754”,调整格式为“floattosimaticbcdtimer”, 选择对应plc变量的地址db1,dw4。具体设置如下图所示: 图 2.2.5 在wincc画面中创建用于访问该变量的i/o域,设置如下图所示:
图 2.2.6 运行效果为:
图 2.2.7 2.3定时器的监控
s7 300/400 plc为定时器保留了一片存储区域。每个定时器由一个16位的字和一个二进制位组成,定时器的字使用的是s5time类型,用来存放当前的定时时间值,定时器的位状态用于存放触点的状态。
用定时器地址(t和定时器号,例如t10)存取它的时间值和定时器位,plc中使用带位操作数的指令存取定时器位,使用带字操作数的指令存取定时器的时间值。在wincc中我们可以定义变量来监控定时器的当前值,其方法同监控s5time类型变量相同:
 图 2.3.1 3.在wincc项目中监控s7 300/400 plc中的计数器值 3.1 关于计数器
s7 300/400 plc为计数器保留了一片存储区域。每个计数器由一个16位的字和一个二进制位组成,计数器的字用来存放它当前的计数值,计数器的位状态用于存放触点的状态。
用计数器地址(c和计数器号,例如c10)存取当前的计数值和计数器位,plc中使用带位操作数的指令存取计数器位,使用带字操作数的指令存取计数器的计数值。在wincc中我们可以定义变量来监控计数器的当前值。
计数字的0-11位是计数值的bcd码,计数值的范围为0-999。二进制格式的计数值只占用计数器值的0-9位,如下图所示:
图 3.1.1 3.2 具体步骤 (1) 在wincc项目中创建变量counter1,数据类型为“无符号16位数”, 调整 格式为“wordtosimaticbcdcounter”, 选择对应plc变量的地址c8(显示为z8)。如下图所示:
图 3.2.1 (2) 在wincc画面中创建用于访问该变量的i/o域,设置如下图所示:
图 3.2.2 (3) 运行效果:
图 3.2.3
上一个:违约金过高可不可以调整
下一个:华为c8813怎么重装,华为c8813怎么恢复出厂设置

功率电感发生故障的时候如何解决?
吉祥花草好运满屋
二级域名不备案能用吗
小米怎么转换输入法,小米5怎么切换输入法
入室盗窃被杀怎么判刑
ni数据采集卡公司的温度计为您提供多种选择
小米手机启动电脑(小米手机开不了机怎么用电脑刷机)
RS-05K105JT在线查库存,今日报价
荷兰六出花的栽培技术
nvme固态硬盘装系统启动不了,m2固态硬盘nvme怎么装系统