专业的编程技术博客社区

网站首页 > 博客文章 正文

如何在WinCC项目中监控西门子PLC中S5的定时器及计数器

baijin 2024-08-10 13:38:45 博客文章 17 ℃ 0 评论

在前面文章文章给大家聊过怎么通过PLCSIM仿真器来仿真WINCC与S7-300PLC连接(可以点击链接:#关于WINCC通过PLCSIM来进行仿真中要怎么设置? ),也跟大家分享了S5T数据类型的使用(回顾链接:#在西门子STEP7编程中常用的S5定时器的那些你要知道的事情 ),这里不过多赘述。

本文主要是在WINCC项目中如何监控S5T定时器及计数器,下面直接进入主题:

一、wincc中监控S5定时器

首先在Step7中新建一个DB块中创建S5TIME数据类型的变量,用于时间设定监控,再创建word类型的变量用于监控计时剩余时间。

新建一个功能FC,并编写简单的计时程序:

在wincc变量表中,添加变量,如果需要在WinCC项目中以浮点数格式来监控PLC中的S5TIME类型变量,则在创建WinCC变量时应选择"浮点数32位IEEE754",调整格式为"FloatToSimaticBCDTimer", 选择对应PLC变量的地址DB2,DW0。具体设置如下图所示:

在图形编辑器中,添加输入/输出域,设置变量及数据格式:

3、下面我们仿真运行:

二、WINCC中监控计数器

S7 300/400 PLC为计数器保留了一片存储区域。每个计数器由一个16位的字和一个二进制位组成,计数器的字用来存放它当前的计数值,计数器的位状态用于存放触点的状态。用计数器地址(C和计数器号,例如C10)存取当前的计数值和计数器位,PLC中使用带位操作数的指令存取计数器位,使用带字操作数的指令存取计数器的计数值。在WinCC中我们可以定义变量来监控计数器的当前值。计数字的0-11位是计数值的BCD码,计数值的范围为0-999。二进制格式的计数值只占用计数器值的0-9位,如下图所示:

1、在step7中新建一个变量表,如下图所示:来监控计数值

并编写一个简单计数的程序如下图所示:

2、在WinCC项目中创建变量Counter1,数据类型为"无符号16位数", 调整 格式为"WordToSimaticBCDCounter", 选择对应PLC变量的地址C1。如下图所示:

在图形编辑器中添加输入/输出域,设置变量及数据格式

3、下面仿真看看输出结果哦

注:本文所采用的wincc V7.3来做的演示,不同版本可能界面有所不同。

本文暂时没有评论,来添加一个吧(●'◡'●)

欢迎 发表评论:

最近发表
标签列表