通化西门子专业技术团队PLC代理商 通化西门子专业技术团队PLC代理商
浔之漫 智控技术有限公司 上海诗慕自动化设备有限公司
本公司销售西门子自动化产品,,质量保证,价格优势
西门子PLC,西门子触摸屏,西门子数控系统,西门子软启动,西门子以太网
西门子电机,西门子变频器,西门子直流调速器,西门子电线电缆
我公司大量现货供应,价格优势,,德国
WinCC中定时器使用方法介绍
1、定时器功能介绍
2、脚本中定时器介绍
3、使用脚本实现更多定时器功能
3.1 整点归档
3.2 WinCC 项目激活时避免脚本初次执行及延迟执行脚本1 定时器功能介绍
WinCC 中定时器的使用可以使 WinCC按照的周期或者时间点去执行任务,比如周期执行变量归档、在的时间点执行全局脚本或条件满足时打印报表。WinCC 已经提供了一些简单的定时器,可以满足大部分定时功能。但是在有些情况下,WinCC 提供的定时器不能满足我们需求,这时我们就可以通过 WinCC 提供的脚本接口通过编程的方式实现定时的功能,因为脚本本身既可以直接 调用 WinCC其他功能,比如报表打印,也可以通过中间变量来控制其他功能的执行,比如通过置位/复位归档控制变量来触发变量记录的执行。WinCC 提供了 C 脚本和 VBS 脚 本,本文主要以全局 C 脚本编程为例介绍定时功能的实现。
2 脚本中定时器介绍 既然在全局脚本中可以编程控制其他功能的执行,那么首先看看全局脚本的触发:
图1 脚本触发器分类 如图1所示: 脚本触发器分为使用定时器和使用变量, 定时器又分为周期执行和非周期执行一次,比如每分钟执行一次脚本属于周期执行,2012年10月1日执行一次属于非周期执行。 使用变量触发脚本,即在变量发生变化时,脚本就执行一次, 而变量的采集可以根据周期循环采集,或者根据变化采集,根据变化实际是1秒 钟采集变量一次。
3使用脚本实现更多定时器功能
利用脚本自身的定时器, 可以通过在脚本中编程的方式实现更多其它定时功能。
3.1整 点归档
WinCC提供了变量归档,变量归档分为周期归档和非周期归档,不管是周期归档或非周期的归档,都又可以通过一些 变量或脚本返回值来控制归档, 比如:整点归档。下面的设置结合WinCC脚本,实现了在 整点开始归档,归档五分种后停止归档,即每个小时仅归档前五分钟的数据。
软件环境:Windows 7 Professional Service Pack1 , WinCC V7.0 SP3
归档名称:ProcessValueArchive
归档变量:NewTag
归档周期:1 分钟
归档控制变量 startarchive
C脚本触发周期:10秒
脚本代码:
#Include "apdefap.h"
intgscAction( void )
{
#pragma option(mbcs)
#pragma code ("kernel32.dll");
void GetLocalTime (SYSTEMTIME lpst);
#pragma code();
SYSTEMTIME time;
int t1;
GetLocalTime(&time);
t1=time.wMinute;
if(t1==00)
{
SetTagBit("startarchive",1);
}
if(t1==05)
{
SetTagBit("startarchive",0);
}
return0;
}
归档设置如图2:
图2 归档设置
同理,在以上脚本的基础上做修改,可以实现在某个的时间点打印报表,只要在满足触发条件时调用下列函数:
RPTJobPrint(" Myprintjob");
Myprintjob为 事先创建好的打印作业。
脚 本主要部分在于获取系统当前时间,下 面的脚本实现了获取当前时间并分别获取年、月、日、时、分、秒、毫秒,星期几的功能。
Varname1 到 Varname8 为 WinCC 内部变量。若在 WinCC画面上显示时,由于默认 I/O 域的 格式为999.99, 要把 Varname1 的显示格式改为9999。
#Include "apdefap.h"
intgscAction( void )
{
#pragma option(mbcs)
#pragma code ("kernel32.dll");
void GetLocalTime (SYSTEMTIME lpst);
#pragma code();
SYSTEMTIME time;
GetLocalTime(&time);
SetTagWord("Varname1",time.wYear);
SetTagWord("Varname2",time.wMonth);
SetTagWord("Varname3",time.wDayOfWeek);
SetTagWord("Varname4",time.wDay);
SetTagWord("Varname5",time.wHour);
SetTagWord("Varname6",time.wMinute);
SetTagWord("Varname7",time.wSecond);
SetTagWord("Varname8",time.wMilliseconds);
return 0;
}
设置或读取系统时间的函数如下:
SetSystemTime
SetLocalTime
GetSystemTime
GetLocalTime
系统中本地计算机时间和格林威治时间是有区别的。函数“SetSystemTime / GetSystemTime”用于设置或读取格林威治时间。
函数“SetLocalTime / GetLocalTime”用于设置或读取本地计算机时间。
两种时间会因地理的时区不同而改变。两个函数使用方法相 同。
3.2 WinCC 项目激活时避免脚本初次执行及延迟执行脚本
全局脚本在项目激活时,是要执行一次的,在有些情况下,需要避免脚本执行,就采用在脚本中去判断。比如 可以创建 WinCC 内部布尔型变量 flag,脚本如下:
#Include "apdefap.h"
intgscAction( void )
{
#pragma option(mbcs)
if ( GetTagBit("flag")==1)
SetTagWord("NewTag",1);//根据自己的需求编写对应代码.
else
SetTagBit("flag",1); //Return-Type: BOOL
return0;
}
除了避免项目运行激活时触发脚本执行,我们 还可以通过 Sleep() 延迟脚步功能执行,比如开机后五分钟开始执行脚本具体功能,代码如下:
#Include "apdefap.h"
intgscAction( void )
{
#pragma option(mbcs)
- S7-1500 控制器产品系列中的入门级 CPU
- 适用于对程序范围和处理速度具有中等要求的应用
- 在具有集中式和分布式 I/O 的生产线上作为集中式控制器使用
- PROFINET IO IRT 接口,带 2 端口交换机
- PROFINET I/O 控制器,用于在 PROFINET 上运行分布式 I/O
- 用于连接 CPU 作为 SIMATIC 或 非西门子 PROFINET I/O 控制器下的 PROFINET 设备的 PRIFINET 智能设备
- 等时同步模式
- 集成运动控制功能,可以控制速度控制轴和定位轴,支持外部编码器
- 集成 Web 服务器,带有创建用户定义的 Web 站点的选项
- 运行 CPU 所需的 SIMATIC 存储卡
- CPU 1511-1 PN 是经济型入门级 CPU,用于不连续生产技术中对处理速度和响应速度要求不高的应用。 CPU 1511-1 PN/DP 可以用作 PROFINET IO 控制器,也可以用作分布式智能设备 (PROFINET 智能设备)。 集成式 PROFINET IO IRT 接口设计为 2-端口交换机以便在系统中设立总线型拓扑。 另外,CPU 通过易组态的块提供全面控制功能,以及通过标准化 PLC-open 块 提供连接至驱动器的能力。
The CPU 1511-1 PN 有:
- 功能强大的处理器:
该 CPU 的单条二进制命令的命令执行时间可低至 60 ns。 - 大容量工作存储器:
150KB,用于程序;1 MB,用于数据 - 采用 SIMATIC 存储卡作为加装存储器;
允许实现例如数据日志和归档等其它功能 - 灵活的扩展功能:
单层组持 32 个模块(CPU + 31 个模块) - 显示器的功能为:
- 显示概览信息,例如,集成接口的 IP 地址、站名称、高级别名称、位置名称等。
- 诊断信息显示
- 模块信息显示
- 显示可由用户定义的徽标
- 显示器设置显示
- IP 地址设置
- 日期和时间设置
- 选择操作模式
- 复位 CPU 至出厂设置
- 禁用/启用显示屏
- 启用保护级别
- PROFINET IO IRT 接口用于通过 PROFINET 进行分布式 I/O 连接
- 性能
- 指令处理速度更快, 取决于 CPU 型号、语言扩展和新的数据类型
- 由于背板总线速度显著提高,CPU 的响应时间缩短
- 功能强大的网络连接:
每个 CPU 均标配PROFINET IO IRT(2 端口交换机)标准接口。
- 集成技术
- 通过标准化的块 (PLCopen) 连接模拟驱动器和具有 PROFIdrive 功能的驱动器
- 支持速度控制轴和定位轴以及外部编码器,各轴之间可实现位置精确的传动
- 具有所有 CPU 变量的跟踪功能,用于实时诊断和偶发故障检测
- 全面的控制功能,例如,通过便于组态的块可自动优化控制参数实制质量
- 集成安全功能
- 通过密码进行知识保护,防止未经读取和修改程序块
- 通过复制保护,可绑定 SIMATIC 存储卡的程序块和序列号: 只有在将配置的存储卡插到 CPU 中时,该程序块才可运行。
- 4-级 理念:
也可以对和 HMI设备之间进行的通信进行限制。 - 操作保护:
该控制器可以识别工程组态数据的更改和未传输。
- 设计与操作
- 显示器,用于显示概览信息,
例如:站名、高级别名称、位置名称等概览信息、诊断信息、模块信息和显示器设置。 - 显示器上可能的操作:
设置 CPU 或者所连接以太网通信处理器的地址、设置日期和时间、选择 CPU 的操作模式、复位 CPU 至默认设置、禁用/启用显示器、激活保护等级。
- 显示器,用于显示概览信息,
- 集成式系统诊断
- 显示屏上、TIA Portal 中、人机界面设备上以及 Web 服务器上以普通文本形式一致显示系统诊断信息(甚至能显示来自变频器的消息),即使 CPU 处于停止模式也会进行更新。
- 集成在 CPU 的固件中,无须进行特殊组态
- SIMATIC 存储卡(运行 CPU 所需)
- 用作插入式装载存储器,或用于更新固件。
- 还可用于存储附加文档或 csv 文件(用于配方和归档)
- 通过用户程序的系统函数创建数据块实现数据存储/读取
- 数据记录(归档)和配方
- csv 格式配方文件存储并归档在 SIMATIC 存储卡中;
利用办公工具或 Web 浏览器可以方便地访问与设备相关的运行数据 - 通过网页浏览器或 SD 读卡器,可方便地访问机器的组态数据(与控制器之间的双向数据交换)
- csv 格式配方文件存储并归档在 SIMATIC 存储卡中;
- 编程
- 使用 STEP 7 Professional V12 或更高版本进行编程
- 移植工具,用于 SIMATIC S7-300/S7-400 至 S7-1500 的移植操作,可以自动地完成大部分程序代码的转换工作。 记录不可转换的代码,并可以手动进行调整。
- STEP 7 V11 项目可在兼容模式下继续和 STEP 7 V12 组合使用 。
- S7-1200 程序可通过复制/粘贴手段转移至 S7-1500
- 功能强大的处理器:
所有评论仅代表网友意见,与本站立场无关。