6ES7 312-1AE14-0AB0,6ES7 312-1AE14-0AB0
产品让您放心,服务让您舒心,价格让您开心
产品:全新原装 {现货} 价格:电议
售后:质保一年 起购:1台(件)(米)
联系人:黄工(经理) 外加技术服务
24小时联系电话:18301709106
商务QQ:203789088
电话:021-31669565
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-200系列 PLC的数据存储器寻址
在S7-200PLC中所处理数据有三种,即常数、数据存贮器中的数据和数据对象中的数据。
1.常数及类型
在S7-200的指令中可以使用字节、字、双字类型的常数,常数的类型可指定为十进制、
十六进制(6#7AB4)、二进制(2#10001100)或ASCII字符(‘SIMATIC’)。PLC不支持数据类型的处理和检查,因此在有些指令隐含规定字符类型的条件下,必须注意输入数据的格式。
2.数据存贮器的寻址
(1)数据地址的一般格式 数据地址一般由二个部分组成,格式为:Aal.a2。其中:A区域代码(I,Q,M,SM,V),al字节首址,a2位地址(0~7)。例如I10.1表示该数据在I存储区10号地址的第1位。
(2)数据类型符的使用 在使用以字节、字或双字类型的数据时,除非所用指令已隐含有规定的类型外,一般都应使用数据类型符来指明所取数据的类型。数据类型符共有三个,即B(字节),W(字)和D(双字),它的位置应紧跟在数据区域地址符后面。例如对变量存贮器有VBl00、VW100、VDl00。同一个地址,在使用不同的数据类型后,所取出数据占用的内存量是不同的。
3.数据对象的寻址
数据对象的地址基本格式为:An,其中A为该数据对象所在的区域地址。A共有6种:T(定时器),C(计数器),HC(高速计数器),AC(累加器),AIW(模拟量输入),AQW(模拟量输出)。
SINAMICS S120 西门子变频器是全系列通用和模块化的产品 ,标准装置功率范围从0.12kW-4500KW,供电电压从200-690V均有覆盖。在所有功率范围中的装置(变频器、逆变器)和系统元件(整流单 元、制动单元)都有一个统一的设计和相同的接线系统。他们能以任何方式组合并能并列安装以满足传动系统各种要求。作为系统模块,该产品可用于建立单独传 动、成组传动或多电机传动的最佳传动系统。 SINAMICS S120 高品质变频器是西门子功能最强大的低压变频系统,可以驱动各种低压异步电机、低压同步电机以及伺服电机。
6SE70数字交流变频器,SINAMIC S120变频器具有AC/AC单机变频和DC/AC多机传动两种形式SINAMICS S120是一种高性能、高精度的变频器。硬件上具有模块化的结构设计,安装、维护简单易行;强大的软件功能,使其适用于各种复杂应用的场合。既能做伺服控制,也能做矢量控制,能实现速度控制,转矩控制,位置控制多种控制方式,同时能满足运动控制的要求;多种冷却方式,更使其能适应于各种场合和应用。
A+DPTR
MOV P0,A ; 输出到P0
INC R0 ;取码指针加1,取下一个码。
MOV A,R0
MOV DPTR,#TABLE ;取数据表下半部份的代码
MOVC A,
S7-200数据长度和数值范围
S7-200 寻址时,可以使用不同的数据长度。不同的数据长度表示的数值范围不同。S7-200 指令也分别需要不同的数据长度。
S7-200系列在存储单元所存放的数据类型有布尔型( BOOL)、整数型( INT )、实数型和字符串型四种。数据长度和数值范围如表6所列。
表1 数据长度和数值范围
数据类型
|
数据长度
|
字节 (8位值)
|
字 (16位值)
|
双字 ( 32位值)
|
无符号整数
|
0~255
0~FF
|
0~65535
0~FFFF
|
0~4294967295
0~FFFF FFFF
|
有符号整数
|
-128~+127
80~7F
|
-32768~+32767
8000~7FFF
|
-217483648~+2147483647
8000 0000~7FFF FFFF
|
实数IEEE32位
浮点数
|
|
|
+1.175495E-38~+3.402823E+
38(正数)
-1.175495E-38~-3.402823E+38
(负数)
|
● 实数的格式
实数(浮点数)由32位单精度数表示,其格式按照ANSI/IEEE 754-1985标准中所描述的形式。实数按照双字长度来存取。对于S7-200来说,浮点数精确到小数点后第六位。因而当使用一个浮点数常数时,最多可以指定到小数点后第六位。
● 实数运算的精度
在计算中涉及到非常大和非常小的数,则有可能导致计算结果不精确。
● 字符串的格式
字符串指的是一系列字符,每个字符以字节的形式存储。字符串的第一个字节定义了字符串的长度,也就是字符的个数。一个字符串的长度可以是0到254个字符,再加上长度字节,一个字符串的最大长度为255个字节。而一个字符串常量的最大长度为126字节。
● 布尔型数据(0或1)。
● S7-200CPU不支持数据类型检测
例如:可以在加法指令中使用VW100中的值作为有符号整数,同时也可以在异或指令中将VW100中的数据当作无符号的二进制数。
● S7-200提供各种变换指令,使用户能方便地进行数据制式及表达方式的变换。
西门子股份公司是全球电子电气工程领域的领先企业,创立于 1847 年,主要业务集中在工业、能源、医疗、基础设施与城市四大业务领域。西门子最早在中国开展经营活动可以追溯到 1872 年,当时西门子公司向中国出口了第一台指针式电报机。 140 多年来,西门子以其创新的技术、卓越的解决方案和产品坚持不懈地对中国的发展提供全面支持,并以出众的品质和令人信赖的可靠性、领先的技术成就、不懈的创新追求,确立了在中国市场的领先地位。西门子以其环保业务组合与创新解决方案全面投入到与中国的合作中,彰显了其致力于帮助中国实现可持续发展的坚定决心。公司见证了中国改革开放带来的巨大变化,同时也顺应时代潮流,不断积极进行自身的改革与发展。至今,西门子已在中国建立了 17 个研发中心、 73 家运营企业 * 和 65个地区办事处。西门子遍及中国的业务组织及区域总经理和省级总经理使公司更好地把握市场脉搏、了解本地信息、更加快速高效的满足客户的需求。
人机界面的设计过程可分为以下几个步骤:
1、创建系统功能的外部模型设计模型主要是考虑软件的数据结构、总体结构和过程性描述,界面设计一般只作为附属品,只有对用户的情况(包括年龄、性别、心理情况、文化程度、个性、种族背景等)有所了解,才能设计出有效的用户界面;根据终端用户对未来系统的假想(简称系统假想)设计用户模型,最终使之与系统实现后得到的系统映象(系统的外部特征)相吻合,用户才能对系统感到满意并能有效的使用它;建立用户模型时要充分考虑系统假想给出的信息,系统映象必须准确地反映系统的语法和语义信息。总之,只有了解用户、了解任务才能设计出好的人机界面。
2、确定为完成此系统功能人和计算机应分别完成的任务
任务分析有两种途径。一种是从实际出发,通过对原有处于手工或半手工状态下的应用系统的剖析,将其映射为在人机界面上执行的一组类似的任务;另一种是通过研究系统的需求规格说明,导出一组与用户模型和系统假想相协调的用户任务。
逐步求精和面向对象分析等技术同样适用于任务分析。逐步求精技术可把任务不断划分为子任务,直至对每个任务的要求都十分清楚;而采用面向对象分析技术可识别出与应用有关的所有客观的对象以及与对象关联的动作。
3、考虑界面设计中的典型问题
设计任何一个机界面,一般必须考虑系统响应时间、用户求助机制、错误信息处理和命令方式四个方面。系统响应时间过长是交互式系统中用户抱怨最多的问题,除了响应时间的绝对长短外,用户对不同命令在响应时间上的差别亦很在意,若过于悬殊用户将难以接受;用户求助机制宜采用集成式,避免叠加式系统导致用户求助某项指南而不得不浏览大量无关信息;错误和警告信息必须选用用户明了、含义准确的术语描述,同时还应尽可能提供一些有关错误恢复的建议。此外,显示出错信息时,若再辅以听觉(铃声)、视觉(专用颜色)刺激,则效果更佳;命令方式最好是菜单与键盘命令并存,供用户选用。
4、借助CASE工具构造界面原型,并真正实现设计模型软件模型一旦确定,即可构造一个软件原形,此时仅有用户界面部分,此原形交用户评审,根据反馈意见修改后再交给用户评审,直至与用户模型和系统假想一致为止。一般可借助于用户界面工具箱(Userinterfacetoolkits)或用户界面开发系统(Userinterfacedevelopmentsystems)提供的现成的模块或对象创建各种界面基本成分的工作。
5、在人机界面分析设计中所要考虑的人文因素主要包括以下内容:
1)人机匹配性:用户是人,计算机系统作为人完成任务的工具,应该使计算机和人组成的人机系统很好地匹配工作;如果有矛盾,应该让计算机去适应人,而不是人去适应计算机;
2)人的固有技能:作为计算机用户的人具有许多固有的技能。对这些能力的分析和综合,有助于对用户所能胜任的,处理人机界面的复杂程度,以及用户能从界面获得多少知识和帮助,以及所化费的时间做出估计或判断;
3)人的固有弱点:人具有遗忘、易出错、注意力不集中、情绪不稳定等固有弱点。设计良好的人机界面应尽可能减少用户操作使用时的记忆量,应力求避免可能发生的错误;
4)用户的知识经验和受教育程度:使用计算机用户的受教育程度,决定了他对计算机系统的知识经验;
5)用户对系统的期望和态度。[1]
6ES7 312-1AE14-0AB0
利用S7-200 PLC定时中断功能编制一个程序
利用定时中断功能编制一个程序,实现如下功能:当I0.0由OFF→ON,Q0.0亮1s,灭1s,如此循环反复直至I0.0由ON→OFF,Q0.0变为OFF。
程序如图1所示。
主程序
LD I0.0
EU
ATCH INT_0, 21
ENI
LDN M0.0
A I0.0
TON T32, +1000
LD T32
= M0.0
LD I0.0
ED
DTCH 21
DISI
INT0
LDN Q0.0
= Q0.0