WINCC报表详解

WINCC报表详解
WINCC报表详解

在工业生产中报表一直占有非常重要的部分,它一般用来记录现场的工艺参数和统计信息。早期是由人工抄录然后统计出相关的报表。进入计算机控制阶段,这份工作就需要工控软件来实现。对于工控行业的工程师来说:如何开发适合用户需求的报表一直是个难题。论坛上很多人都在寻求灵活高效的解决方法。

经过这段时间的网上讨论。综合网友们的意见和建议,我们做了总结。并结合WinCC软件本身作了相关的说明。希望能对大家在以后的报表开发中有所帮助。

接下来就从报表的需求分析、WinCC报表系统的应用、复杂报表的WinCC报表系统实现这几个部分来分别介绍。最后总结出WinCC报表系统在应用的优缺点和常见的问题的解决方法。

一.报表的需求分析

从需求上来讲报表一般分为:内容上的需求、样式上和任务上的需求。 1.内容需求内容上一般涉及到数据的求和、平均、最大值、最小值等计算,同时也会涉及到关系的处理,比如班组相关对应信息的统计分析等。下面是一个很典型的报表需求,就很能说明这样的问题:

图1. 月报表分析

此报表是典型的工业现场应用,在数据采集没有难度。唯一的难度在于四班三倒后,每个月班的出勤日是不一样的,这样对于月报来说,计算出本月每个班的出勤日是需要些算法。此类报表在连续生产的行业需求很广泛。比如:钢铁冶金行业需要一天24小时不停运转的系统。

还有一种内容上是分总的关系,就是一部分是简单的数据记录,另一部分是对上一部分

数据的统计,比如汇总、求和、平均等。如下图也是很典型的应用。

图2. 总分报表

另外一种就是涉及到混合排列的问题,一张表上既有分项数据,中间也涉及到统计信息,同时也会添加一些实时的信息在上面。如下图。

图3. 复杂报表

这是一个复杂的报表,中间涉及到分项的记录,数据求平均,和一些操作信息的记录。既有历史数据也有实时信息。

当然更复杂的报表需求也是有的,比如说涉及到一张报表上既有实时信息又有历史信息同时还涉及趋势视图、报警信息等。用户自己可以灵活的定义报表的内容和样式。比如下图。

图4.用户定制报表样式

内容上的需求就本质来讲是对客户关心信息的总结和整理。内容的需求也就决定了报表的样式和可能采用的数据处理方式。

2.报表样式和打印任务

从上面的分析我们不难看出,报表在样式上要么是固定的,就是事先设计好报表的样式,然后把一个一个数据填写上去。这也是传统报表延续下来的一种方式:格式固定、内容固定(比如:图1和图3)。

另一种就是格式样式固定,但是数据信息不固定。可能返回很多的数据集,也可能是没有数据。这对报表系统的数据归纳能力提出了要求。但是对样式上没有特别明确的需求。

最后一种就是比较复杂的问题,报表内容不固定、样式不固定完全由用户自己设计和决定显示的内容。

报表其实就是数据的展示问题,早期没有存储设备,只能人共抄

写下来。现在有了机器存储。其实我们最终需要的就是一个数据的统计分析和显示。

当然如果能把这些报表的样式和需求以电子版的样式在网络上共享。我想很多人可以接受不用打印输出的报表。最终关心的是这些数据如实的存储下来,并可以随时查阅。

对于以上的问题,各家软件都有相应的解决方法。那么WinCC中提供了哪些方法来应对这些需求?

二.WinCC的报表系统

作为一款监控组态软件,WinCC针对需求提供了强大的报表组态功能。来帮助大家应对客户这方面的需求。从以下几个方面进行分析:数据存储、数据分析和数据输出。这也是处理报表问题的经典思路。1.数据存储

就存储而言,如果能自由灵活的记录数据的统计分析结果那是再好不过的了。其实WinCC 的过程归档功能提供了强大的数据处理能力。我们可以在归档管理中灵活的控制归档的动作和内容。如下图:

图5.过程值变量归档定义

仔细分析这个界面,我们几乎可以定义所有需要的数据统计种类。

1、周期的记录

2、非周期的动作触发

3、动作触发的周期记录

在数据处理上WinCC可以自动的统计出平均值、最大值、最小值等数据信息。

图6.归档设置界面

对于过程归档数据的访问,我们可以使用WinCC的在线表格控件、WinCC报表编辑器中自带的打印控件,同时也可以使用Connectivity Pack选件使用脚本读出数据。只有安装了该选件才支持特定的语法访问归档数据(该选件需要单独的授权)。对于有一定编程功底的工程师来说Connectivity Pack选件是一个很好地分析和数据处理工具。在后面会有相应的应用实例介绍。

很多人熟悉数据库的操作,那么能不能像操作数据库那样操作WinCC存储的数据呢?WinCC为我们提供了另一个强大的数据存储和处理工具:用户归档。

用户归档编辑器是一个WinCC的附加选件,需要安装相应的授权才能使用,否则只能使用DEMO模式。它可以用来在服务器 PC 上连续的保存来自技术过程的数据。在图形编辑器中,可以组态 WinCC 用户归档表格元素来以表格显示运行系统中用户归档的在线数据。用户归档还可用于准备自动化系统(例如 S5、S7)的数据。如果必要,数据可以配方或设定值的形式从控制器读出。

用户归档的控制变量可以很好地实现数据的读取和写入。从而免去了用户自己写脚本的工作(登录https://www.360docs.net/doc/4115045156.html,,在技术文档综合搜索中输入文档编号A0296,查询到《使用用户归档实现报表简介》下载即可获得详细信息)。在用户归档编辑器中,可以最多组态 500 个归档和 500 个视图。每个归档最多可创建 500 个域。归档中的数据记录的最大数目受到限制,取决于已组态列的数目和归档中包含的数据记录。列和数据记录的乘积不能大于 320000。这样用户归档基本上可以满足数据存储量不是很大的需求。同时又可以像操作数据库那样操作数据。很方便实用。

当然更灵活的方法就是使用WinCC的脚本操作外部数据库。这个已经超出了咱们讨论的范围。

2.数据分析和输出

其实这两个问题我们需要结合来讲。如何把存储和分析的结果很好地展示出来,这应该是大家最关心也是对报表系统体会最深的地方。很多时候我们的问题就出现在如何分析和展示数据上。很多人希望报表格式能像EXCEL那样灵活。当然我们可以把数据读出来写入EXCEL这不失为一个方法。但是这需要开发者的一些编程功底。如何不用编程序或者使用很少的程序代码就能实现报表功能呢?其实WinCC在数据分析和数据输出上提供了很好的工具。

最简单和直接的方法,就是调用WinCC的控件集成的打印功能。它是一种所见即所得的方式实现的打印工具。用户可以很轻松的执行打印任务。

对于普通归档的访问如果编程的话WinCC提供了Connectivity pack工具,用于分析和统计数据。对于用户归档WinCC的报表系统提供了直接的接口控件。同时也可以像操作普通数据库的表一样来操作用户归档中的归档和视图。对于外部数据WinCC也提供了ODBC数据表和数据域控件来直接连接获取数据。从而省去了部分编写数据库访问脚本的工作。如下图:

图8.报表系统选件

图9.ODBC动态对象

对于这些控件只需要简单的配置就能得到相应的数据结果。

图10. 参数配置图

其中ODBC数据源变量用于填写数据源的名称,SQL语句变量用于创建一个变量写入查询条件。列数处填写返回数据记录的变量数。

很多人理想中的报表:是既有EXCEL的易用性同时又能兼顾很好的数据库接口。并在系统中保留EXCEL的数据统计分析功能和数据展示功能。

其实WinCC是可以实现这样的报表的。WinCC有一个选件Dat@Monitor它的一项功能就是使用EXCEL连接WinCC的归档数据,主要就是结合WinCC的存储功能和EXCEL强大的数据处理功能来实现满足报表需求。同时它可以把相应的报表发布到网络上,实现网络的共享。用户还可以使用这个工具实现自定义报表样式。

该产品的定位,主要是对现场工艺和采集数据的分析、整理和发布。它包括"Process Screens"、"Webcenter"、"Trends and Alarms"、"Excel Workbooks"、等工具,可以根据不同的工具实现不同的功能。

三.复杂报表的WinCC报表系统实现分析

针对需求如何使用WinCC的报表系统实现复杂的报表呢?之前已经发了一个使用用户归档结合ODBC数据表控件实现复杂报表的文档。下面介绍使用Connectivity Pack结合普通归档如何实现复杂报表(以图1为例)。论坛上有位网友已经使用用户归档实现了该种报表,那么我们看看如实使用普通归档实现。

要求:现场是四班三运转,月底的时候对各个班的数据情况进行统计分析。

难点:各个班的上班时间不固定,每月的天数不固定。涉及到最大值、最小值和平均值的计算。

关键点:在于如何确立某班和某一时间段的对应关系。

1.普通归档结合Connectivity Pack实现报表

首先数据存储问题。WinCC的归档中,对应一个过程变量其实可以生成多个归档变量(如图12)。归档的启动和停止可以由事件来控制(图13)。那么可以通过不同的用户登录来确定启动哪一个归档。从而确定班组和数据的对应关系。

图12.归档定义

图13.归档起始和停止动作的定义

创建全局动作如下(针对两个班组的测试代码,三个班的类似):int gscAction( void ) {

#pragma option(mbcs)

if(!strcmp(GetTagChar("@CurrentUser"),"yiban")) {

IA&DT Service & Support

Page 13-34

SetTagBit("AarcE",0); //Return-Type: BOOL SetTagBit("AarcB",1);

//Return-Type: BOOL

SetTagBit("BarcE",1); //Return-Type: BOOL SetTagBit("BarcB",0);

//Return-Type: BOOL

}

else if(!strcmp(GetTagChar("@CurrentUser"),"erban")) { SetTagBit("BarcE",0); //Return-Type: BOOL SetTagBit("BarcB",1);

//Return-Type: BOOL

SetTagBit("AarcE",1); //Return-Type: BOOL SetTagBit("AarcB",0);

//Return-Type: BOOL

} }

该动作通过WinCC内部变量@CurrentUser的变化来触发。

图14.触发条件

这样在项目中A班的用户登录就触发ATagArc变量的归档,B班的用户登录就触发BTagArc。从而达到分班统计的目的。过程变量属性在这里我们选择实际值。

图15.归档参数设置

其次数据分析。在归档设计中,已经确定了数据和班组的对应关系。那么下一步就是如何整理数据了。在这里我们需要借助于WinCC的一个选件Connectivity Pack来实现,通过该软件可以使用特定的语法格式访问WinCC的归档数据。在画面中添加一个按钮创建如下脚本(只有安装了Connectivity Pack选件才支持下面的归档访问方式):

Dim sPro, sDsn, sSer,sCon, sSql Dim V,Sum,Avg,Std,Min,Max Dim conn, oRs, oCom, oList, oItem Di m m,n,s,nRec Dim BeginTime

Set BeginTime = HMIRuntime.Tags("BeginTime") Dim EndTime

Set EndTime = HMIRuntime.Tags("EndTime") Dim Printer0

Set Printer0 = HMIRuntime.Tags("Printer")

'建立连接

sPro = "Provider=WinCCOLEDBProvider.1;" sDsn="Catalog=CC_FXReport_09_02_08_13_58_39 R;" sSer = "Data Source=.\WinCC" sCon = sPro + sDsn + sSer

BeginTime.Read EndTime.Read

sSql="Tag:R,'MyPA\ATagArc','" + BeginTime.Value + "','"+ EndTime.Value +"'" MsgBox "Opened with " & vbCr & sCon & vbCr & sSql & vbCr, vbOKCancel Set conn=CreateObject("ADODB.Connec tion") conn.ConnectionString = sCon conn.CursorLocation = 3

conn.Open

Set oRs=CreateObject("ADODB.Recordset") Set oCom=CreateObject("https://www.360docs.net/doc/4115045156.html,mand") https://www.360docs.net/doc/4115045156.html,mandType = 1

Set oCom.ActiveConnection = conn https://www.360docs.net/doc/4115045156.html,mandText = sSql Set oRs = oCom.Execute

n=oRs.RecordCount'返回的数据集数 MsgBox n If (n>0)Then oRs.MoveFirst n = 0 Sum = 0 Avg = 0

Min = oRs.Fields(2).Value Max = oRs.Fields(2).Value Do While Not oRs.EOF

n = n + 1

IA&DT Service & Support

Page 17-34

V = oRs.Fields(2).Value

Sum = Sum + V

If V>Max Then Max = V If V

oRs.MoveNext

Loop oRs.Close

If(n>1) Then Avg = Sum / n HMIRuntime.Tags("incount").Write n

HMIRuntime.Tags("AavgTag").Write FormatNumber(Avg,2) HMIRuntime.Tags("AmaxTag"). Write FormatNumber(Max,2) HMIRuntime.Tags("AMinTag").Write FormatNumber(Min,2)

Else

HMIRuntime.Trace "selection return no fields"&vbNewLine

End If

conn.Close Set oCom= Nothing Set oRs=Nothing Set conn=Nothing

'打印调用(创建了一个全局动作通过Printer的变化调用打印作业) Printer0.Read

If Printer0.Value = 0 Then Printer0.Write 1 Else

Printer0.Write 0 End If

上面的方法就能得出A班的最大值、最小值和平均值,并把这些值存放在预先定义的内部变量里。同样的方法可以求出别班的数据信息。

最后就是布局设计。这个布局的设计原理很简单,就是把“变量”添加到布局中。排列对齐就可以了。如下图

图16.报表布局

最后组态输出界面。在画面中组态如下界面,调用脚本和打印任务就可以了。

图17.操作界面

该程序可以实现对任意时间范围呢的数据进行统计打印。输出结果如下图:

图18.打印输出

2.用户归档实现分总式报表

报表图2涉及到数据的统计。单纯的存储不难,关键如何统计。从报表上分析,一天只会产生一条记录。完全可以选择使用用户归档实现。

首先在用户归档中创建一个归档,分别连接相应的需要记录的变量。并创建一个字符串类型的域用于存储日期。

图19.用户归档

针对用户归档创建如下控制变量

图20.控制变量

关于控制变量的说明参考:

WinCC Information system-->选项--〉用户归档--〉组态--〉组态用户归档--〉控制变量的属性。当ID=-1 指令=6时,就可以把过程值存放到归档数据库中。 IA&DT Service & Support

Page 19-34

关于日期可以通过如下脚本得到:

riqi=CStr(Year(Now))&"-"&CStr(Month(Now))&"-"&CStr(Day(Now))

可以新建一个系统变量选择日期函数,通过每天的变化触发用户归档控制变量的指令和ID 的变化,从而达到定时触发的目的。如图:

图21.系统变量定义

这样我们就得到了每天的数据记录。下一步组态页面。在页面布局中添加一个用户归档表格控件、一个静态文本和一个ODBC数据库表。为了实现分页功能需要对静态文本的属性作如下设置:

图22.页面布局

图23.静态文本属性设置

下面我们分别设置用户归档和ODBC数据库表控件的参数。

图23.归档控件设置

图23.ODBC控件设置

画面中查寻按钮的代码: Dim riqivar

Set riqivar = HMIRuntime.Tags("riqivar") Dim xinjiangFilter

Set xinjiangFilter = HMIRuntime.Tags("xinjiangFilter") Dim xinjiangorder

Set xinjiangorder = HMIRuntime.Tags("xinjiangorder") Dim mytestsql

Set mytestsql = HMIRuntime.Tags("mytestsql") riqivar.Read xinjiangFilter.Read xinjiangFilter.Write " MyDate like '"&riqivar.Value&"%'" xinjiangorder.Read

xinjiangorder.Write "MyDate ASC" mytestsql.Read

mytestsql.Write "select sum(picishu)as '批次数',sum(zongzl) as '总重量',sum(zhuliao) as '主料',sum(fuliao1) as '1#辅料',sum

(fuliao2) as '2#辅料',sum(fuliao3) as '3#辅料',sum(fuliao4) as '4#辅料',sum(fuliao5) as '5#辅料',sum(fuliao6) as '6#辅料'

from UA#peixianchengzhong where MyDate like '"&riqivar.Value&"%'"

至此在画面中输入查询日期的条件执行上面的代码就能返回相应的数据集。最后调用打印任务就可以了。

打印中常见问题的说明希望对大家有所帮助。整点触发问题:

可以通过在变量管理? SYSTEM INFO下创建变量用于取得系统小时值。这个值是随着系统时钟而变化的。一旦改变就可以用来触发归档或者打印任务。也可以通过脚本实现,参照网上的例子:如何整点启动归档:https://www.360docs.net/doc/4115045156.html,/CN/view/zh/11012406

对齐问题:WinCC提供很好的数据接口,那么在报表格式上来讲如何控制一直是个难题。下面是一些细节介绍希望对大家能有所帮助。

通过菜单栏中的放大功能可以很好的查看控件的对齐效果。

图24. 放大功能

通过菜单栏工具—〉设置,可以把页面精确设置到毫米,同时可以设定控件是否和网格对齐。从而方便我们的排版设计。

图25. 网格设置

四.WinCC报表功能总结

通过上面的分析我们不难看出,WinCC的报表系统提供了很好的数据接口,我们可以很方

便的就取出WinCC的归档数据和外部数据库的数据。无需很多的编程知识。同时在过程归档可以很容易的就得到变量的最大值、最小值、平均值等信息。

过程值归档中无法建立关系和对字符串进行归档。这些功能使用用户归档可以实现。其实很多人不使用WinCC自带的报表功能,很大程度上是因为布局不好掌控。确切来讲在格式的控制上WinCC是有些不适合中国国情。

延伸话题:其实数据的报表打印就是对数据的存储记录工作,有时候我们需要的并不是打印出一张纸,而是需要对数据的分析和整理。从这个角度出发,WinCC如果能提供一个强大的前台数据统计分析控件就更完美了。当然对于数据的分析统计,在现场应用中很大程度上是由MIS系统和ERP系统来实现的。WinCC在这个环节是作为一个数据源的身份出现的。但是它的Dat@Monitor工具提供了很好的数据接口,用于分析和输出数据。也不失为一个很好的数据分析统计选件。

五.使用脚本和EXCEL实现报表

论坛中很多人使用VBS和EXCEL实现报表功能。下面做了一个示例仅供参考: 1.在WINCC 中使用VBS脚本通过EXCEL实现报表

使用VBS脚本和EXCEL工具,同样可以生成需要的报表。一般的思路是:预先使用excel设计好报表的样式,然后在WinCC中使用VBS脚本把相应的数据写入事先定义好的表格中。下面给出实现的方法。

右键点击按钮打开属性对话框,在事件页右键单击鼠标动作选择VBS动作。如下图

图26. 动作定义

WINCC报表详解

在工业生产中报表一直占有非常重要的部分,它一般用来记录现场的工艺参数和统计信息。早期是由人工抄录然后统计出相关的报表。进入计算机控制阶段,这份工作就需要工控软件来实现。对于工控行业的工程师来说:如何开发适合用户需求的报表一直是个难题。论坛上很多人都在寻求灵活高效的解决方法。 经过这段时间的网上讨论。综合网友们的意见和建议,我们做了总结。并结合WinCC软件本身作了相关的说明。希望能对大家在以后的报表开发中有所帮助。 接下来就从报表的需求分析、WinCC报表系统的应用、复杂报表的WinCC报表系统实现这几个部分来分别介绍。最后总结出WinCC报表系统在应用的优缺点和常见的问题的解决方法。 一.报表的需求分析 从需求上来讲报表一般分为:内容上的需求、样式上和任务上的需求。 1.内容需求内容上一般涉及到数据的求和、平均、最大值、最小值等计算,同时也会涉及到关系的处理,比如班组相关对应信息的统计分析等。下面是一个很典型的报表需求,就很能说明这样的问题: 图1. 月报表分析 此报表是典型的工业现场应用,在数据采集没有难度。唯一的难度在于四班三倒后,每个月班的出勤日是不一样的,这样对于月报来说,计算出本月每个班的出勤日是需要些算法。此类报表在连续生产的行业需求很广泛。比如:钢铁冶金行业需要一天24小时不停运转的系统。 还有一种内容上是分总的关系,就是一部分是简单的数据记录,另一部分是对上一部分 数据的统计,比如汇总、求和、平均等。如下图也是很典型的应用。

图2. 总分报表 另外一种就是涉及到混合排列的问题,一张表上既有分项数据,中间也涉及到统计信息,同时也会添加一些实时的信息在上面。如下图。 图3. 复杂报表 这是一个复杂的报表,中间涉及到分项的记录,数据求平均,和一些操作信息的记录。既有历史数据也有实时信息。 当然更复杂的报表需求也是有的,比如说涉及到一张报表上既有实时信息又有历史信息同时还涉及趋势视图、报警信息等。用户自己可以灵活的定义报表的内容和样式。比如下图。

WinCC数据报表实现方法介绍

WinCC数据报表实现方法介绍 在工业生产中报表一直占有非常重要的部分,它一般用来记录现场的工艺参数和统计信息。早期是由人工抄录然后统计出相关的报表。进入计算机控制阶段,这份工作就需要工控软件来实现。对于工控行业的工程师来说:如何开发适合用户需求的报表一直是个难题。 接下来就从报表的需求分析、WinCC报表系统的应用、复杂报表的WinCC报表系统实现这几个部分来分别介绍。最后总结出WinCC报表系统在应用的优缺点和常见的问题的 解决方法。 1.报表的需求分析 从需求上来讲报表一般分为:内容上的需求、样式上和任务上的需求。 内容需求 内容上一般涉及到数据的求和、平均、最大值、最小值等计算,同时也会涉及到关系 的处理,比如班组相关对应信息的统计分析等。下面是一个很典型的报表需求,就很能说明这样的问题: 图1. 月报表分析 此报表是典型的工业现场应用,在数据采集没有难度。唯一的难度在于四班三倒后,每个月班的出勤日是不一样的,这样对于月报来说,计算出本月每个班的出勤日是需要些算法。此类报表在连续生产的行业需求很广泛。比如:钢铁冶金行业需要一天24小 时不停运转的系统。 还有一种内容上是分总的关系,就是一部分是简单的数据记录,另一部分是对上一部

分数据的统计,比如汇总、求和、平均等。如下图也是很典型的应用: 图2. 总分报表 另外一种就是涉及到混合排列的问题,一张表上既有分项数据,中间也涉及到统计信息,同时也会添加一些实时的信息在上面。如下图: 图3. 复杂报表 这是一个复杂的报表,中间涉及到分项的记录,数据求平均,和一些操作信息的记录。既有历史数据也有实时信息。 当然更复杂的报表需求也是有的,比如说涉及到一张报表上既有实时信息又有历史信息同时还涉及趋势视图、报警信息等。用户自己可以灵活的定义报表的内容和样式。比

用户归档实现wincc报表

使用用户归档实现报表简介Use User Archive Create Report

摘要 简单介绍了用户归档,介绍如何通过用户归档和WinCC报表编辑器实现复杂报表。 关键词 用户归档,报表 Key Words User Archive ,Report IA&DT Service & Support Page 2-17

目录 使用用户归档实现报表简介 (1) 一.用户归档介绍 (4) 二.用户归档的使用 (6) 三.结合用户归档实现报表 (8) 1.数据的存储 (9) 2.报表布局的设计 (12) 3.报表输出 (14) 附录-推荐网址 (17) IA&DT Service & Support Page 3-17

一.用户归档介绍 用户归档编辑器是一个WinCC的附加选件,需要安装相应的授权才能使用,否则只能使用DEMO模式。 它可以用来在服务器 PC 上连续的保存来自技术过程的数据。 在图形编辑器中,可以组态 WinCC 用户归档表格元素来以表格显示运行系统中用户归档的在线数据。用户归档还可用于准备自动化系统(例如 S5、S7)的数据。如果必要,数据可以配方或设定值的形式从控制器读出。 用户归档编辑器提供两种数据库表格: 用户归档: 用户归档是用户可在其中创建自己的数据域的数据库表格。 用户归档用于存储数据,并根据 SQL 数据库规则提供对这些数据的标准化访问。 视图: 视图接收来自用户归档的数据并用于数据的相加,例如,为获得有关产品组的概述。 其在WinCC默认情况下是不会被安装的。可以通过以下步骤安装。插入WinCC安装光盘,选择安装SIMATIC WinCC,弹出界面(图1),选择安装或者卸载的组件,在弹出的选择组件界面中左侧选择选项,右侧选中用户归档,点击下一步开始安装。 图1 安装卸载 IA&DT Service & Support Page 4-17

WINCC报表说明

WINCC报表制作说明 本次报表制作以WINCC7.0为基础,利用自带的“变量记录”功能,进行变量归档操作。然后利用WINCC自带的控件“Wincc Online Table Control”关连变量归档,可实现简单的报表的查询功能。 另一种方法为利用EXCEL的宏访问WINCC数据库(变量归档)。本方法中需安装Microsoft Office 2003版本。此种方法优点在于利用WINCC的数据库的开放性,将EXCEL与数据库进行关联,可方便的读取所要查询的数据。另外EXCEL文件可以按照要求编辑修改表格样式、数据格式等,方便用户存档及打印。具体实现方法如下: 1、在WINCC中新建变量归档 2、新建EXCEL文件,用于读取变量归档数据 3、打开EXCEL文件,按照要求编辑报表表格样式,在表格中添加“Microsoft Date and Time Picker Control6.0”控件,此控件用于设定要查询报表的日期 4、在EXCEL表格中新建查询按钮,作为报表的查询触发器 5、编辑代码,进入Visual Basic编辑器进行代码编写,代码中涵盖WINCC归档时间与本地时间的转换及变量与表格的关联性操作。 6、代码编辑完成后,需运行WINCC组态软件,打开新建的EXCEL文件,提示是否启用“宏”操作,此时要选择启用,进入报表表格界面,在日期控件中选择要查询的数据日期,点击查询按钮,归档变量数据就可以显示在对应的表格中,可保存,可打印,可修改。 以上两种报表均在1608009风机在线监测项目上应用。对于VB代码编辑部分,只需要根据EXCEL表格的样式及变量归档数据名称做出相应的修改即可。 设计部:付友维 2017年6月20日

在wincc 中怎么做才能把报表生成按日期的excel 文件

在wincc 中怎么做才能把报表生成按日期的excel 文件在wincc 中怎么做才能把报表生成按日期的Excel 文件 VBS脚本实现,就是把文件名称以变量的形式表示。参考 '关闭保存 Dim patch,filename filename=CStr(Year(Now))&CStr(Month(Now))&CStr(Day(Now))&CStr(Hour(N ow))+CStr(Minute(Now))&CStr(Second(Now)) patch= "d:\"&filename&"demo.xls" objExcelApp.ActiveWorkbook.SaveAs patch objExcelApp.Workbooks.Close objExcelApp.Quit Set objExcelApp= Nothing 对于Excel报表,用VBS最灵活,Excel 定义好格式后wincc来填空,平均累计值就用Excel 的功能。 Dim excelapp Dim aa,bb,cc Set excelapp = CreateObject("Excel.Application") Set aa = HMIRuntime.tags("tag1") excelapp.visible = False'True excelapp.workbooks.open "D:\excel.xls" bb = Now 'getcurrent_datetime() aa.Read MsgBox CStr(bb) excelapp.cells(1,1).value = "rrrrrr"'111111 excelapp.cells(1,2).value = CStr(bb)

Wincc报表Excel

Sub OnClick(Byval Item) Dim MyVar1 Dim MyVar2 Dim objExcel Dim wb Dim xlsheet Dim rangee Dim Years,mounth,Days,hours,min,sec,daysweek Dim jj,kk,year1,mounth1,Days1,hours1,min1,sec1 Dim yi,er,san,si,wu,i,i1,lei,lei1,lei2,lei3,lei4,lei5 Dim zhou,yue,nian Dim shi,feng,miao,mytime Dim MyHour,MyMinute,myday,mymonth,myyear,a,b,c,d,e,f Set MyVar1=HMIRuntime.Tags("MyVar1") MyVar1.Write Date Set MyVar2=HMIRuntime.Tags("MyVar2") MyVar2.Write Time year1 = CStr(MyVar1.value) mounth1 = CStr(MyVar2.value) kk="d:\report2\" jj=".xls" Set yi = HMIRuntime.Tags("hunhe_1") yi.Read Set er = HMIRuntime.Tags("hunhe_2")

er.Read Set san = HMIRuntime.Tags("hunhe_3") san.Read Set si = HMIRuntime.Tags("hunhe_4") si.Read Set wu = HMIRuntime.Tags("hunhe_5") wu.Read Set objExcel = CreateObject("Excel.Application") objExcel.Visible = True Set wb=objExcel.Workbooks.Open ("c:\ExcelExample2.xls") Set xlsheet = wb.sheets("Sheet1") xlsheet.range("B4").Value=yi.Value xlsheet.range("C4").Value=er.Value xlsheet.range("D4").Value=san.Value xlsheet.range("E4").Value=si.Value xlsheet.range("F4").Value=wu.Value wb.SaveAs kk & year1 & jj wb.CLOSE objExcel.quit wb=Nothing

WinCC和EXCEL数据传递

1、DDE简介 动态数据交换(DDE)是基于Windows的消息机制,两个Windows应用程序通过相互之间传递消息进行“对话”,这两个程序被分别称为“服务器”和“客户”。DDE服务器是一个维护着其他Windows程序可能使用的数据程序,而DDE 客户则是从服务器获得这些数据的程序。 DDE对话是由客户程序发动的。客户程序将一条称为WM_DDE_INTITIATE的消息发给当前运行的所有Windows 程序,这条消息指明了客户程序所需要的数据类别,拥有这些数据的DDE服务器可以响应这条消息,这样一个对话就 开始了。 DDE的对话方式有3种: ①服务器数据变化时,直接把数据送给客户,由客户对这些数据进行处理,这类对话方式称为热链;②服务器的数据变化时,服务器通知客户,再由客户取数据,这种方式称为温链;③由客户申请数据、 服务器发送数据的方式称为冷链。 一、Wincc作为DDE的客户端,Excel作为DDE服务器(本地) 1、在变量管理上按鼠标右键--添加新的驱动程序--选“windows dde.chn” 图1 2、在DDE上按鼠标右键--新驱动程序连接--点属性,在其连接属性中: “计算机名称”为空;“应用程序”为excel;“主题”为[]工作表名,比如[DDE.xls]sheet1。

图2 3、在DDE\excel下建变量,在变量属性中选择地址,条目名称填:r行数c列数,比如r1c1(表示第一行 第一列的单元格),重复步骤3可以加入更多的DDE变量 图3 4、Excel程序 图4 Wincc程序 图5 5完成

用OPC做比较省事。 WinCC做OPC Server,Excel做OPC Client。 这种情况下,WinCC端不需要做任何设置,只要在Excel 里用少量的代码就能实现双方的通讯。 对于WINCC与S7-300的通讯,首先要确定PLC的通讯口类型,PLC一般都集成了MPI/DP口,还可以安装通讯模块。计算机(PC)上安装适当的通讯卡(不同的通讯卡支持的通讯协议不同)。看你需要啦! 其次是WINCC软件里的通讯协议要与PC机对应。WINCC提供了SIMATIC S7 PROTOCOL SUITE 通讯驱动程序,包含了多种通讯协议! 最终还有自己亲自实际操作了才有深刻的了解的!! Sub X6309X94AE9X0000X6539_OnClick(Byval Item) Dim fso,myfile Set fso = CreateObject("scripting.FileSystemObject") Set MyFile = fso.GetFile("d:\Excelcode.xls") Dim ObjExcelApp Set objExcelApp = CreateObject("Excel.Application") 'objExcelApp.Visible = True objExcelApp.Workbooks.Open MyFile '上面的程序段是为了打开d盘下叫Excelcode.xls名字的excel文件 objExcelApp.worksheets ("sheet1").Cells(1, 1).VAlue = HMIRuntime.Tags("usercodenew1").read objExcelApp.ActiveWorkbook.Save '上面两行的作用是将wincc变量"usercodenew1"的值写到Excel表中的A1格子里面,并且保持一下 Dim coldold Set coldold=HMIRuntime.Tags("usercodeold1") coldold.Value = objExcelApp.worksheets ("sheet1").Cells(1, 1).value '上面这两句的作用是将刚才保持到Excel表格中的数据重新读回wincc,存到"usercodeold1"变量中,当然现在其实并没有存入"usercodeold1"变量,只是存在了叫coldold的临时变量里面 objExcelApp.Workbooks.Close objExcelApp.Quit Set ObjEXceLapp = Nothing '到这里为止,我们可以通过上面的语句关闭刚才打开的excel程序了 coldold.Write '最后是把读到的excel值从临时变量coldold中写入它对应的"usercodeold1"变量中 End Sub 上面这个例子已经调试通过。网上有很多wincc值写入excel中的例子,一直找不到从excel中读取数据到wincc中的例子,结合网上朋友的一些经验,这里给出个小例子,供大家参考。

WINCC+VBS报表

WINCC+VBS报表 1概述 介绍如何在WinCC项目中使用VBS脚本读取变量归档值,并把获取的数据保存成新的Excel文件。文中示例代码仅适用于以绝对时间间隔方式访问。 2软件环境 Windows XP SP3中文版、WinCC7.0 SP2 ASIA、Microsoft office Excel 2007 3访问原理 WinCC变量归档数据是以压缩的形式存储在数据库中,需要通过WinCC连通性软件包提供的OLE-DB接口才能够解压并读取这些数据。关于WinCC连通性软件包的详细信息请参考连接:37436159 当使用 OLE-DB方式访问数据库时关键需要注意连接字符串的写法 和查询语句的格式。连接字符串格式为 “Provider=WinCCOLEDBProvider.1; Catalog= ***; Data Source= ***;”,其中Catalog为WinCC运行数据库的名称,当修改项目名称或在其它计算机上打开原项目时, Catalog会发生变化。建议使 用WinCC内部变量“@DatasourceNameRT”获得当前项目的Catalog。Data Source 为服务器名称,格式为“<计算机名 称>\WinCC”。

3.1 查询语句格式 数据的查询语句的格式要求如下: 8 字节长 ValueID 的请求: TAG_LLVID:R,,,[,][, ] 4 字节长 ValueID 的请求: TAG:R,,,[,][, ] 其中: ValueID:过程值归档变量的唯一标识符。 ValueName:过程值归档变量的名称,格式为 “ArchiveName\Value_Name”,可以使用多个名称。 TimeBegin,TimeEnd:时间范围,格式“YYYY-MM-DD hh:mm:ss.msc”。 SQL_Clause:SQL 语法中的过滤标准。 TimeStep:时间间隔。使用 时,必须将 指定为绝对时间。禁止使用相对语句“0000-00-00 00:00:00.000”。 其中ValueID和ValueName的对应关系如下图所示:

WINCC嵌入式EXCEL报表系统使用手册

WINCC 嵌入式EXCEL 报表系统使用手册 1、打开报表画面 点击主画面中“报表”按钮,打开报表画面: 2、界面介绍 报表画面功能介绍 时间设置

3、选择报表文件 在“报表选择”栏中选择需要生成报表的名称: 4、选择报表类型 在“类型选择”栏选择报表类型:日报表、月报表、年报表、自由报表,具体介绍如下: ●日报表——为一天的报表数据,每小时产生一个记录,共24条记录, 时间为“00:00:00”至“23:59:59”。 ●月报表——为一月的报表数据,每天产生一个记录,根据月份的不同分 别产生28-31条记录,时间为“01 00:00:00”至“30 23:59:59”(或“28 23:59:59”/“29 23:59:59”/“31 23:59:59”)。 ●年报表——为一年的报表数据,每月产生一个记录,共12条记录,时 间为“01-01 00:00:00”至“12-31 23:59:59”。 ●自由报表——为指定时间段的报表数据,时间段由“开始时间”和“结 束时间”共同决定,每一个“时间间隔”产生一个记录,记录条数由时 间段和时间间隔决定。 5、设置报表时间 根据报表类型,选择报表时间。点击“日历”可以打开日历控件,控 件中可以快速选择日月年,也可以通过下拉窗口进行选择。 当为日报表时,需要设置“年”、“月”、“日”;当为月报表时,需要设置“年”、“月”;当为年报表时,需要设置“年”;当为自由报表时,需要设置开始和结束时间的“年”、“月”,“日”、“时”、“分”等全部项,间隔时间也需要设置。

6、生成报表 当“报表选择”、“类型选择”和时间选择均设置完成后,点击“生成报表”按钮,系统将开始在右边表格中生成出报表,在生成报表的过程中能看见表格中数据逐渐显示,也能通过下方进度条看见完成情况。生成报表时,空数据区用“#”填充,错误数据区用“##”填充,报表生成完毕后将有“成功生成数据文件!”提示。同时,报表生成后将自动保存到项目中“report”文件夹下。 在生成报表前如果该报表已经生成将提示“报表文件XXX_X-X-XXX.xml 已经存在,是否重新生成?”,如果选择“是”将重新生成报表,并替换掉原有报表,如果选择“否”将不重新生成,自动将原有报表装载到表格中。 7、查看已生成的报表 当设置好报表名、类型和时间后,点击“查询报表”将在表格中装载选择的报表数据,如果报表没有生成将提示“报表文件不存在!”,需要先生成报表。

西门子wincc数据报表的实现方式

西门子wincc数据报表的实现方式 【摘要】随着工业领域的不断发展,用户需求一种以人机界面为控制主体的视窗控制体系的过程监控系统,以此来取代原来的以现场操作按钮和仪表为主的操作体系。通过开放性、灵活性的可视化界面,迅速并直接的处理生产过程中的事件信息。凭借这种战略思想,WINCC,运行于Windows系统下的控制中心,已发展成为工业市场领域的领导者,乃至业界遵循的标准。Wincc集生产自动化和过程自动化于一体,应用于各种工业自动化领域,是提高工厂生产效率的上乘之选,并支持多种语言。 工业生产中,报表系统通常是控制系统中非常重要的一部分,是企业管理的基本措施和途径,它通常用来记录重要的现场工艺参数和统计信息。早期,都是由人工记录的方式进行统计汇总,数据也只能有一种几乎只有记录员才能理解的表现形式,且这种形式难于更改。当进入计算机时代后,报表这部分工作完全可以由计算机软件来实现,数据动态化,格式多样化,用户可以自己修改数据或格式。针对自动化工程师而言,如何利用wincc软件来开发适合用户需求的报表,并且高效灵活的解决统计数据是自动化工程师必须掌握的一门技术,也是企业日常生产维护和管理中不可或缺的管理手段之一。 报表的变现形式分为许多种,大体上可分为两种形式:曲线格式和表格格式。 曲线形式主要是利用WINCC自带控件来实现,在控件属性中,可对趋势、常规、字体、趋势窗口、时间轴、数值轴、工具栏、状态栏、在线组态、导出中具体参数进行设置,以符合用户的生产需求和审美要求。例如,时间轴可设成1分钟,1小时或者1天的形式,数值轴可以设置成根据实际测量值实时改变数值轴的范围。应用在线趋势曲线的前提条件是,用户需要在变量记录里设置需要归档的变量内容和归档周期等一系列参数。 针对于一些特殊归档要求,曲线形式的归档可能满足不了用户的需求,往往用户需要生成一种支持打印功能并以表格形式查询的数据归档报表。针对于这类复杂的报表,可以通过用户归档和Wincc报表编辑器来实现此类功能。用户归档可以用来在工控机上连续的保存来自技术过程中的数据信息,在图形编辑器中,可以组态用户归档表格元素来显示控制系统中用户归档的在线数据。根据用户需要,数据支持读取和写入的功能,并可在线更改数据。它是一种用户自己创建的数据库的数据库表格,用于用户存储数据,并根据SQL数据库规则提供这些数据的标准化访问。 在项目编辑器里的树状结构图中找到用户归档视图,双击打开。在归档视图界面插入一个新归档,在新建的归档界面中按照提示步骤依次输入归档名称和控制变量。在常规选项卡里的归档名输入框内填入需要建立的归档名称,归档类型选择无限制,点击下一步,进入控制变量的选项卡。在这里,可以使用软件默认的命名方式,左键单击创建按钮,会直接分配新的控制变量到ID、指令、域和值这四个接口中,并在变量记录中生成这四个指令的相关信息。接下来,在归档

在wincc 中怎么做才能把报表生成按日期的Excel 文件

在wincc 中怎么做才能把报表生成按日期的Excel 文件VBS脚本实现,就是把文件名称以变量的形式表示。参考 '关闭保存 Dim patch,filename filename=CStr(Year(Now))&CStr(Month(Now))&CStr(Day(Now))&CStr(Hour(Now))+CStr(Minute(Now))&CStr(Second(Now)) patch= "d:\"&filename&"demo.xls" objExcelApp.ActiveWorkbook.SaveAs patch objExcelApp.Workbooks.Close objExcelApp.Quit Set objExcelApp= Nothing 对于Excel报表,用VBS最灵活,Excel 定义好格式后wincc来填空,平均累计值就用Excel 的功能。 Dim excelapp Dim aa,bb,cc Set excelapp = CreateObject("Excel.Application") Set aa = HMIRuntime.tags("tag1") excelapp.visible = False'True excelapp.workbooks.open "D:\excel.xls" bb = Now 'getcurrent_datetime() aa.Read MsgBox CStr(bb) excelapp.cells(1,1).value = "rrrrrr"'111111 excelapp.cells(1,2).value = CStr(bb) excelapp.cells(2,2).value = CStr(aa.value) excelapp.cells(3,2).value = CInt(aa.value) excelapp.cells(4,2).value = CSng(aa.value) excelapp.cells(5,2).value = CDbl(aa.value) excelapp.cells(6,2).value = CLng(aa.value) excelapp.cells(3,3).value = ScreenItems("33").outputvalue excelapp.cells(4,4).value = ScreenItems("35").outputvalue cc = "D:\excel" + Mid(CStr(bb), 1, 4)+ Mid(CStr(bb), 6, 2)+ Mid(CStr(bb), 9, 2)+ Mid(CS tr(bb), 12, 2)+ Mid(CStr(bb), 15, 2)+ Mid(CStr(bb), 18, 2) + ".xls" MsgBox cc excelapp.DisplayAlerts = False '对打开的文件,直接保存时,避免弹出对话框窗口,而是直接覆 盖 excelapp.activeworkbook.saveas cc '根据当前日期时间,另存为新的文件 'excelapp.activeworkbook.save ’对打开的文件,直接保存 'excelapp.activeworkbook.saveAs "D:\excelcopy.xls" ’直接另存为新的文件 excelapp.workbooks.close excelapp.quit Set excelapp = Nothing 这个报表的数据采集没有难度;唯一的难度在于4班3 倒后,每个月班的出勤日是不一样的,这样对 于月报来说,计算出本月每个班的出勤日是需要些算法的。这个报表用WinCC完全可以实现。关键就

西门子wincc 报表

WinCC数据报表实现方法介绍 How use WinCC create data report

摘要本文对数据报表的需求进行了分析,结合WinCC就复杂数据报表的实现进行了介绍。 关键词WinCC,报表 Key Words WinCC, Report IA&DT Service & Support Page 2-34

目录 WinCC数据报表实现方法介绍 (1) 1.报表的需求分析 (4) 1.1内容需求 (4) 1.2报表样式和打印任务 (6) 2.WinCC的报表系统 (7) 2.1数据存储 (7) 2.2数据分析和输出 (9) 3.复杂报表的WinCC报表系统实现分析 (12) 3.1普通归档结合Connectivity Pack实现报表 (12) 3.2用户归档实现分总式报表 (19) 4.WinCC报表功能总结 (24) 5.使用脚本和EXCEL实现实时数据报表 (24) 5.1在WINCC中使用VBS脚本通过EXCEL实现实时数据报表 (24) 5.2如何使用EXCEL访问WinCC中的实时数据实现报表 (28) IA&DT Service & Support Page 3-34

在工业生产中报表一直占有非常重要的部分,它一般用来记录现场的工艺参数和统计信息。早期是由人工抄录然后统计出相关的报表。进入计算机控制阶段,这份工作就需要工控软件来实现。对于工控行业的工程师来说:如何开发适合用户需求的报表一直是个难题。论坛上很多人都在寻求灵活高效的解决方法。 经过这段时间的网上讨论。综合网友们的意见和建议,我们做了总结。并结合WinCC 软件本身作了相关的说明。希望能对大家在以后的报表开发中有所帮助。 接下来就从报表的需求分析、WinCC报表系统的应用、复杂报表的WinCC报表系统实现这几个部分来分别介绍。最后总结出WinCC报表系统在应用的优缺点和常见的问题的解决方法。 1.报表的需求分析 从需求上来讲报表一般分为:内容上的需求、样式上和任务上的需求。 1.1内容需求 内容上一般涉及到数据的求和、平均、最大值、最小值等计算,同时也会涉及到关系的处理,比如班组相关对应信息的统计分析等。下面是一个很典型的报表需求,就很能说明这样的问题: 图1. 月报表分析 此报表是典型的工业现场应用,在数据采集没有难度。唯一的难度在于四班三倒后,每个月班的出勤日是不一样的,这样对于月报来说,计算出本月每个班的出勤日是需要些算法。此类报表在连续生产的行业需求很广泛。比如:钢铁冶金行业需要一天24小时不停运转的系统。 IA&DT Service & Support Page 4-34

wincc报表打印

wincc6.0报表打印 ?悬赏分:10 ?- 解决时间:2010-3-17 15:08 wincc6.0报表里面,打印数据时,压力流量等采样时间范围需要单独选择,可否只操作一次采样时间范围的选择??? 问题ID: 49392提问者:飞我想- 新生第1级 最佳答案 如果要调整对象选项板和样式选项板的大小,首先将鼠标指针移到选项板的框架上,按住鼠标左键,将其拖到文件窗口;将鼠标指针移到选项板的框架上,确定指针变成黑色的双箭头时,按下鼠标,拖动选项板的框架,调整到期望的大小。 3)编辑布局 在消息顺序报表的布局中,右击表格,在弹出的菜单中,单击“属性”选项,在对象属性中,单击“连接”标签,单击“连接新的”,在“连接”对话框中,选择“消息顺序报表”,单击“确定”按钮, 在“对象属性”对话框中,单击“连接”按钮,单击“编辑”按钮,确认在“报表的列顺序”域能够找到将在消息顺序报表中打印的所有消息块,单击“确定”按钮。 移动消息块的按钮可以改变将要打印的消息块的顺序,在“对象属性”对话框中,单击“属性”标签,单击图标,以固定对话框,单击布局中表格外的区域,编辑布局属性,在左边窗口中,单击“几何”按钮,检查右边子窗口中“纸张大小”,双击“纸张大小”,在其对话框中,选择自己需要的纸张型号,单击“确定”按钮,单击按钮,保存上述布局设置, 创建一个打印作业的过程如下: 在WinCC资源管理器的左边子窗口中,右击“打印任务”,在弹出的菜单中,单击“新建打印作业”,命名打印任务为“打印作业001”,右击“打印作业001”,在弹出的菜单中,单击“属性”选项,将打印作业命名为“消息顺序报表”,在列表中,选择“@alrtmef.rpl”作为要使用的布局,标记“开始时间”复选框, 单击“打印机设置”,选择打印机,单击“确定”按钮。 4 设置启动参数 在WinCC资源管理器的左边子窗口中,右击“计算机”,在弹出的菜单中,单击“属性”选项,单击“启动”按钮,标记“报表运行系统”复选框,单击“确定”按钮,“计算机属性”设置完毕。 5 激活项目 为了能够在运行时打印消息顺序报表,单击“激活”按钮,在Windows任务栏中,单击“WinCC资源管理器”,右击“消息顺序报表”打印作业,在弹出的菜单中,单击“预览打印作业”项。在需要打印时,单击“打印”按钮。 7.3.5 打印变量记录运行系统报表 1 创建布局 在WinCC资源管理器的浏览器窗口中,用鼠标右键单击“布局”,从快捷菜单中选择“新建布局”, 名为“NewRPL00.RPL”的新布局添加到WinCC资源管理器数据窗口中列表的末尾,用鼠标右键单击“NewRPL00.RPL”,从快捷菜单中选择“重新命名布局”,更名为“TagLogging.rpl”。 2 编辑静态部分 在WinCC资源管理器的数据窗口中双击新建布局“TagLogging.rpl”,打开“报表编辑器”,显示一个空白页,首先在静态部分添加日期/时间、页码、布局名称和项目名称,单击菜单中“视图”→“静态部分”,编辑页面的静态部分。点击“系统对象”选项板上的“日期/时间”,页面布局中显示事件和日期。 把对象放在左下角,按住鼠标拖动调整对象大小,用鼠标右键单击“日期/时间”对象,从快捷菜单中选择“属

如何实现wincc用VBS做报表

如何实现wincc用VBS做报表

1概述 介绍如何在WinCC项目中使用VBS脚本读取变量归档值,并把获取的数据保存成新的Excel 文件。文中示例代码仅适用于以绝对时间间隔方式访问。 2软件环境 Windows XP SP3中文版、WinCC7.0 SP2 ASIA、Microsoft office Excel 2007 3访问原理 WinCC变量归档数据是以压缩的形式存储在数据库中,需要通过WinCC连通性软件包提供的OLE-DB接口才能够解压并读取这些数据。关于WinCC连通性软件包的详细信息请参考连接:37436159 当使用OLE-DB方式访问数据库时关键需要注意连接字符串的写法和查询语句的格式。连接字符串格式为“Provider=WinCCOLEDBProvider.1; Catalog= ***; Data Source= ***;”,其中Catalog 为WinCC运行数据库的名称,当修改项目名称或在其它计算机上打开原项目时, Catalog会发生变化。建议使用WinCC内部变量“@DatasourceNameRT”获得当前项目的Catalog。Data Source 为服务器名称,格式为“<计算机名称>\WinCC”。 3.1 查询语句格式 数据的查询语句的格式要求如下: 8 字节长ValueID 的请求: TAG_LLVID:R,,,[,][,] 4 字节长ValueID 的请求:

TAG:R,,,[,][,] 其中: ValueID:过程值归档变量的唯一标识符。 ValueName:过程值归档变量的名称,格式为“ArchiveName\Value_Name”,可以使用多个名称。TimeBegin,TimeEnd:时间范围,格式“YYYY-MM-DD hh:mm:ss.msc”。 SQL_Clause:SQL 语法中的过滤标准。 TimeStep:时间间隔。使用 时,必须将 指定为绝对时间。禁止使用相对语句“0000-00-00 00:00:00.000”。 其中ValueID和ValueName的对应关系如下图所示: 图1 ValueID和ValueName的对应关系 3.2几种常用的查询需求和语句

如何使用WinCC DataMonitor基于Web发布浏览Excel报表文档

1.WinCC DataMonitor是什么? DataMonitor 是SIMATIC WinCC 工厂智能中用于数据显示和分析的一个组件,它基于WinCC 的实时、历史数据进行车间管理级的数据汇总和分析,借助标准工具(例如微软的IE 浏览器或者MS Office Excel)可以显示并分析WinCC 上的过程信息和历史数据。 1.1 简介 SIMATIC WinCC/DataMonitor 提供用于显示交互数据及分析当前过程状态和历史数据的分析工具集合。DataMonitor 客户端是纯粹用于显示和评估来自WinCC 的过程值或来自WinCC 长期归档服务器的数据的系统。 1.2 WinCC DataMonitor 的主要功能 "Published Reports"

V6.2版本已发布的报表,查询浏览WinCC 的PDF 文件打印作业和已发布的Excel 工作簿,执行打印功能。 基于时间进行周期或定时打印文件,也可以基于WinCC的变量事件触发输出打印文件。

“Excel Workbooks” V6.2版本使用WinCC DataMonitor 的"Excel Workbooks",可以通过Excel 表格显示WinCC 项目的过程或归档变量的消息和值。除当前值外,还可以显示其它信息,如变量的时间戳或质量代码。WinCC 数据可以在Excel 中进一步处理,或者在报表中以图形方式准备(例如,平均值计算、趋势显示)和汇总。 但是对于DataMonitor V7.0 版本开始,"Published Reports"和“Excel Workbooks”都合并到“报表”组件中。组件“报表”允许在Internet Explorer 中组态和运行报表模板。创建的报表可以通过电子邮件或Internet Explorer 中的“下载”进行分发。报表提供许多功能,如下图所示包括:?创建DataMonitor Excel Workbook 或WinCC Reports 中的模板。 ?事件驱动或基于时间生成报表:每小时、每天、每周、每月。 ?使用WinCC 报表模板生成PDF 文件。 ?保存报表或通过电子邮件发送报表。可以选择是将信息另存为公共报表(所有人都可以访问)还是私人报表(只有特定人员才能访问报表信息)。

相关文档
最新文档