西门子过程自动化应用_第1页
西门子过程自动化应用_第2页
西门子过程自动化应用_第3页
西门子过程自动化应用_第4页
西门子过程自动化应用_第5页
已阅读5页,还剩40页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、过程自动化应用wwww PLCworld cn使用 WinCC OLE DB Provider,将 WinCC / CAS 归档数据导出为 Excel 文件应用技术文章质量保证、责任与支持35840700注wwww PLCworld cnV1.008.10.20092/45Copyr0ig9ht s应用示例无约束力,并不说明完整的电路、配备或未知项,也不代表客户 解决方案,只是为一般用途提供支持,用户应保证所述产品用正确的方法使用。这些应用举例不能减轻用户在应用、安装、操作和 时采用正确方法的责任。在使用这些应用示例时,用户应承认我公司对责任条款描述以外的任何损失/索赔不承担责任。 保留在任何

2、时候对这些应用示例进行变更的权利,恕不另行通知。如果本应用文章示例所提供的建议与西门子其它 物如产品目录有任何差异,应以其它文件的内容为准。质量保证、责任与支持35840700质量保证、责任与支持我公司不对本文档所含信息承担任何责任。任何由于使用本应用文章示例中所描述的例证、信息、程序、工程及性能数据等所引起的对我公司的索赔要求,不管以何种法律理由,我公司概不接受。本排除责任不适用于法定义务,如德国产品责任法案(Produk ftungsgesetz)所定义的在下述情况下的义务:故意或严重过失、人身或健康、产品质量包换、性隐瞒缺陷、或合同基本条款(wesentliche Vertragspfl

3、ichten)。但是,如果由于违反合同基本条款所引起的索赔要求应限于合同本身所能预见的损失,除非该损失是由于故意或过失造成,或该损失基于人身或健康所应承担的法定责任。上述规定不表示用户对其损害提出举证责任的改变。 2009 西门子工业业务领域工业自动化。没有得到西门子工业业务领或分发这些应用示例或摘录域工业自动化其内容。的明确同意,不允许以如对本文由任何疑问,请用以下与我公司联系:online-support.autowwww PLCworld cnV1.008.10.20093/45Copyr0ig9ht s目录35840700目录质量保证、责任与支持3目录前言1. 4. 5简介71.11.

4、21.31.4背景知识7文档结构7运行环境8. 82结构、功能和应用.12.2.2应用程序的首次调用10应用程序窗口设置11的设计14表格视图14应用程序的运行15调用应用程序.w.w.w.P.L.C.w.o.r.l.d.c.n15基本设置16过滤器设置17消息结构的调整21消息..5w3工作原理背景知识.33.2SQL 语句25SQL 语句的组成25添加消息语言26添加消息类型28消息结构的扩展能力334附录34.4宏的启用37相关数值的通配符的解释40为相关数

5、值创建通配符42为 WinCC Runtime 数据库创建一个新用户445修订历史45V1.008.10.20094/45Copyrig0h9t s前言35840700前言该应用文章的目标本应用文章为用户提供了一种简单的工具,通过这种工具用户可以使用 WinCC进行归档的过程值(变量)和消息数据,并将其导出为 Excel 格式的文件。因此,这些数据可以保存为 WinCC 以外的格式,然后进行评估。本应用文章主要描述了 WinCC 归档数据的应用程序没做阐述。过程,对如何创建和描述一个 VBA所使用的技术应用程序通过 VBA 编程语言进行编写。通过 OLE DB数据库。使用 WinCC OLE

6、DB Provider,建立应用程序和过程值或消息归档之间的连接。注wwww PLCworld cn功能范围可从 OS 服务器或 CAS(据可组合过程值和消息信息 可插补遗漏值(过程值) 可调节时间间隔(过程值)归档服务器)的 WinCC Runtime 数据库,数可不同语言(消息)的归档信息可使用过滤器,例如时间间隔和消息类型(消息)可在消息文本(消息)中对通配符进行说明V1.008.10.20095/45Copyrig0h9t s点击下述,可获取有关 WinCC 归档的不同选项:/WW/view/en/22578952前言35840700限制为了对本文档的范围进行限制,并不包含下述项目的完

7、整说明:VBA 编程语言SQL 数据库语言OLE DB 的工作原理WinCC Runtime 数据库所需的知识对于第 2 章能描述的理解,不需要用到之前学习的知识。但是,第 3 章中对应用程序的结构和扩展选项进行了说明,理解这一章内容需要用到 VBA 和 SQL 的基本知识。自动化与驱动服务和支持可以进入自动化与驱动服务和支持因特网应用门户,通过以下,直达本文页面。/WW/view/en/35840700wwww PLCworld cnV1.008.10.20096/45Copyrig0h9t sError! Style not defined.3584070011.1简介背景知识对于 V6.

8、0 或更高版本的 WinCC,WinCC Runtime 数据库就采用了分段结构。这意味着数据将被保存在多个归档分段中(多个数据库),部分为压缩的二进制格式。WinCC 和 WinCC Connectivity Pack 选件包都提供有 WinCC OLE DB Provider 软运行系统数据。WinCC OLE DB Provider 可件,用于直接以提供解压缩变量和格式的各个归档段中的数据。这样,用户在变量和数据时,不必担心归档的分段以及加密。基于这一点,以 Excel 宏的形式创建 VB 应用程序。它可以非常方便地为用户提供相应的功能,并且方便程序调整和扩展。图 1-1:数据流示意图E

9、xcel 客户端WinCC/WinCC Connectivity Packwwww PLCworld cnOS 服务器/ OS 单站图 1-1 所示为数据流概览。Excel 客户端是指应用程序运行的那台计算机。基本上,只要满足第 1.3 节中所列出的条件,任何一台计算机都可以用 OS 服务器(作为短期归档)和 CAS(归档服务器,交换数据长期归档)作为数据源使用。1.2文档结构本文档分为两个主要部分:有关结构、功能和应用的描述有关主要调整选项的例子以及如何执行相应修改的说明第二部分讲述了背景知识,如果是仅仅使用应用程序,则不需要用到这部分内容。V1.008.10.20097/45Copyrig

10、0h9t sError! Style not defined.358407001.3运行环境可在具有下述配置的工作站上对应用程序进试:MS Excel 2003 和WinCC V6.0 SP 3a 到 V7.0 SP1或/和各自相关的 WinCC Connectivity Pack应用程序要求 WinCC Runtime 在要从-中数据的计算机上处于激活状态。在任何满足上面所列要求并通过网络与 OS 服务器或 CAS 进行连接的计算机上,都可以使用该应用程序(前提是具有相应的权限)。使用该应用程序,还可以对本地归档(例如 OS 单站)进行意事项:。敬请遵守下述注wwww PLCworld cn

11、有关测试系统列表,请参见第 1.4 节。1.4下表所示为构建测试环境所需的计算机配置,以及在果。消息时归档的某些测试结由于过程值在很大程度上取决于设置,所以没有列出。表 1-1:计算机配置V1.008.10.20098/45Copyrig0h9t s注意SIMATIC PC工作站名称操作系统WinCC/ ConPack版本CPUGHzRAM MBOS 服务器OS_SV1MS Win Server 2003 SP2WinCC6.0.3a3.42kOS_SV2MS Win Server 2003 SP2WinCC1kCASCASMS Win Server 2003 SP2WinCC

12、2kOS 客户端OS_CL1Win XP 2002 SP3WinCC6.0.3a3.4512OS_CL2Win XP 2002 SP3WinCC512OpeS 7工作站OpenWin XP 2002 SP2WinCC512ConnectivityCP_CLWin XP 2002 SP2ConPack6.2.20,8512在执行应用程序时,必须将其它的计算负荷考虑在内,因为这可能会影响到WinCC Runtime 的反应时间。这一条对客户端和数据源同样适用!Error! Style not defined.35840700表 1-2:注wV1.00

13、8.10.20099/45Copyrig0h9t s每秒消息数仅仅指的是对之前所数据的处理速度。因此,在该值中并不包含实际的持续时间。总持续时间是从读命令开始,到最后数据调整结束,主要由 SCL 命令的执行时间和将所有数据接收到工作表中所需时间组成。数据选择和格式化以及假数据替换需要的时间相对较少。www PLCworld cn客户端名称数据源消息数量总持续时间分钟消息/秒OS_CL1OS_SV12193201:54219OS_CL2OS_SV12294301:20310OpenCAS711600:19396OpenOS_SV2310200:24389SiStSiSt2226501:11405

14、SIMATIC PC工作站名称操作系统WinCC/ ConPack版本CPUGHzRAM MBPack 客户端OS 单站SiStWin XP 2002 SP3WinCC7.0.12,82kError! Style not defined.358407002结构、功能和应用本章详细阐述了应用程序的功能范围。2.1应用程序的首次调用位置应用程序并不一定要分开安装。可将“OLE-DB Tag and Alarm Export.xls”文件直接到所需位置。该 Excel 文件包含全部宏形式的源代码,这些宏将会在行。运调用应用程序通过双击 Excel 文件,可以启动应用程序。当打开应用程序时,可能会显示

15、下述警告信息,这取决于 Excel 设置:图 2-1:有关宏处于禁用状态的警告wwww PLCworld cn出现该警告信息的原因是由于宏安全等级被设置为“高”。在本示例中,为了确保应用程序具有运行能力,请按照第 4 节附录中所描述的内容进行操作。V1.008.10.200910/45Copyrig0h9t sError! Style not defined.358407002.2应用程序窗口设置概述图 2-2 和图 2-3 显示了直接进行调用后出现的应用程序。显示哪个界面取决于在上次保存期间激活了哪一个选,并显示上次保存时使用的条目。图 2-2:开始画面(“Tags(变量)”选)wwww P

16、LCworld cn图 2-3:开始画面(“Alarms()”选)V1.008.10.200911/45Copyrig0h9t sError! Style not defined.35840700注通过选择位于 Excel 窗口底部的相应选,可以在“Tags(变量)”和“Alarms()”选之间进行切换。图 2-4:选切换wwww PLCworld cnV1.008.10.200912/45Copyrig0h9t s用户界面完全以英文显示。另外,可以在“Alarms()”选的“Alarm Language(语言)”下拉列表中,选择消息的显示语言。Error! Style not defined

17、.35840700工作区域的结构这里,以“Alarms(构。)”选为例,来图示说明工作区域的两个选结图 2-5:工作区域的结构(“Alarms()”选)三个所选部分中的每一个都可w执ww行PL其Cw本orld身cn功能,在下面的表 2-1 中对这些功能进行了说明。w表 2-1:工作区域划分V1.008.10.200913/45Copyrig0h9t s注意“Toolbar( )”和“Column Headers( )”部分方框中的内容被保护起来,以防意外更改。为了确保不影响应用程序的运行能力, 建议保持这种保护状态。范围功能所有所需设置都通过使用来完成。这些设置包括数据源的选择以及消息过滤器或

18、过程过滤器的定义。有关本部分的详细信息,请参见第 2.2.1 节。表头表头用于对所显示的消息结构进行定义。注:可以根据要求,调整顺序和结构。确切的步骤,参见第 2.3.4节。消息(“ Tags (变量)”选:过程值)本部分包含具有所选结构的读出消息或过程值。消息表头Error! Style not defined.358407002.2.1的设计在中,可以进行所有必要设置,以使用所选格式显示所需数据。的设计可分为三部分(在图 2-6 中通过“Alarms()”选举例说明):基本设置:在大多数情况下,一旦设定好这些设置后,即在整个会话期间都保持不变。过滤器:用以更加详细地描述所需归档数据,改进搜

19、索结果。操作部分:在该部分中,可以调整所显示的消息(选择消息块)或过程值(选择静态值)的结构,并可开始操作。这些部分中的每一个都包含有多个控制元件,这些元件稍后将会在第 2.3 节的操作应用程序说明中作详细阐述。图 2-6:的结构(“Alarms()”选)wwww PLCworld cn.2.2表格视图接收到的归档数据具有多种表述样式,可以根据需要,选择一个合适的结构。例如对于过程值,可以执行不同的静态功能,并显示其结果。用于显示消息的表格视图则基于 WinCC系统的日志列表。与原始数据类似,也可以分别对不同消息块的显示进行设计(参见第 2.3.4 节)。V1.008.10.200914/45

20、Copyrig0h9t s过滤器操作部分基本设置Error! Style not defined.358407002.3应用程序的运行本章节描述了如何从归档中过程值和消息。除了过滤器的解释以外,由于过程值的处理与其之间的差别不大,消息处理可以仿效过程值。2.3.1调用应用程序表 2-2:调用应用程序wV1.008.10.200915/45Copyrig0h9t s描述控制元件1.启动应用程序。注:在启动应用程序后,有可能应用程序会短时间内没有反应。其原因在于网络繁忙,并导致列出可用计算机的过程极其缓慢。如果存在多个子网,则显示自己工作组内的计算机。虽然如此,只要存在有效连接,还是可以对没有显示

21、出来的计算机进行的。www PLCworld cn您只需要将目标计算机的名称输入到下拉菜单“Host(主机)”的文本字段中即可。2.根据需要,还可启用宏。Error! Style not defined.358407002.3.2基本设置在大多数情况下,对于整个会话,保持基本设置都一样。这包括对源计算机和消息语言进行的定义。表 2-3:基本设置wV1.008.10.200916/45Copyrig0h9t s描述控制元件1.选择“Alarms()”选。2.在“Host(主机)”下拉列表中,选择用作信息源的计算机。在启动程序后,输入调用计算机的名称。注:需要在该计算机上启动 WinCC Runt

22、ime,以与 WinCC OLE DB Provider 进行通讯。此外,只能该计算机中的本地数据。如果正在使用的是 CAS(归档服务器),则必须在该服务器(长期归档)和 OS 服务器(短期归档)之间进行选择,以接收指定时间范围的消息。3.在下拉列表中,选择要导ww出w消PL息Cw的orl语d cn言。有下列语言可供使用:德语英语法语意大利语西班牙语注:对于过程值,不能选择语言。如果未单独组态这些消息语言,则该语言的消息包含标准文本。Error! Style not defined.358407002.3.3过滤器设置通过过滤器设置,如通过设置变量、时间范围、时间间隔(过程值)或时间、类型和原

23、始信息(消息),可只返回所感和消息处理步骤之间的区别。的数据。下文中还将同时解释一下过程值表 2-4:过滤器设置wV1.008.10.200917/45Copyrig0h9t s描述控制元件1.在两个输入框中,定义要搜索归档数据的时间范围。确保开始时间要早于结束时间。默认情况下,设定为当前日期的 024 小时。注:必须以规定格式输入时间和日期:YYYY-MM-DD hh:mm:ss此外,还必须确保输入信息要符合逻辑(例 如,不存在 2 月 30 日,不存在 70 分钟或类似的输入)。退出输入字段时,如果值无效,则将出现一条警告,并恢复到前一个输入值。2.点击“Read Tags(变量)”/“A

24、reas(区域)”按钮,以w归w档PL的Cw过orl程d cn值(变量)或组态(工厂)区域。注:时,必须事先选择好相关主机。错误处理:如果显示了下述消息,则与数据库之间进行的通讯失败:“Area(区域)”/“Tag determination failed(变量检测失败)”+错误描述可能原因:网络问题(主机不可用)缺少权限(排除方法,请参见第 4.4 节)OS 没有运行信息后,这些信息将显示在相应的下拉列表中。3.对于“Tags(变量)”选:在“Archive Tags(归档变量)”下拉列表中,可以选择想要其归档值的过程值。Error! Style not defined.35840700wV

25、1.008.10.200918/45Copyrig0h9t s描述控制元件对于“Alarms()”选:如果想要根据一个特定区域对消息进行过滤,则在“Areas(区域)”下拉列表中选择该区域。如果不想根据区域进行过滤,则选择空白行。注:某些消息(例如系统消息)无法被分配给一个区域。如需继续接受这些消息,请不要使用该过滤器。若在 WinCC 中,应用了区域过滤器,则在读取了消息并更换掉假数据后,在该应用程序中,由于性能方面的原因,可通过 SQL 命令直接完成上述过程。在那些“区域”出现频率最高的消息块中进行搜索(“Text2”和“PText2”)。如果被定位在其它位置,则区域过滤器将不会给出所需结

26、果。4.对于“Tags(变量)”选 :以秒为 ,指定所需时间间隔,最初出现的值(“原生”)必须通过它进行汇总。如果不需要使用时间间隔(值仍ww为w“PL原Cw生orl”d cn),则输入“0”。注:使用时间间隔,可在不丢失大量信息的情况下,减少过程值的数量。通过设定时间间隔,可对所有在某一特定时间间隔内出现的过程值进行汇总(例如一分钟或一小时内的所有值)。然后对这些值进行评估(例如最大值、最小值、总计)。在图 2-7 中举例说明了时间间隔的表示。对于“Alarms( )”选 :对于不同消息类型(等级)的过滤,提供有六个选项框,以根据需要进行组合。若没进行任何选择,则会禁用按消息类型过滤。Err

27、or! Style not defined.35840700注wV1.008.10.200919/45Copyrig0h9t s应使用过滤器选项,来将选择条件限制为最大可能的范围。这样,可以减少相关归档数据的数量,并因此减少数据库的 时间以及随后的处理时间。还应注意 Excel 的行数是有限制的。可列出的最大数据 数将限制为 65526行。如果查询返回了 的数据 ,则只会对前面的 65526 条数据 进行处理,剩余的数据 将被 。对于消息,SQL 还会把返 www PLCw 的数量限制为 65000 条。在第 3.1.1 节中回的数据说明了在何处可以确定该值。描述控制元件5.对于“Tags(变

28、量)”选:选择是否必须进行插补。注:插补需要一个非零时间间隔。使用插补,可以确保两个接收值之间的时间间隔始终保持相同。如果在某一个时点,没有对任何数值进行归档,则将根据前一个归档值和后一个归档值来确定对应的中间值。只能在处于时间范围中的两个归档值之间进行插补。如果一个数值位于时间范围中,而另一个数值位于时间范围外,则在这两个数值之间不能进行插补。Error! Style not defined.35840700时间间隔的解释下图所示为一个过程值在几个小时期间的变化过程。通过使用垂直虚线,该曲线被分为多个小时区间。图 2-7:时间间隔的表示第一个值最后一个值平均值假设每一秒都对过程值进行归w档w

29、w,PL则Cw包orld括cn 18000 个数值(5 个小时)的列表将会变得非常不清晰。但是,如果规定了一个小时的时间间隔,则在每列中给出的值的总数量最多为五个。为了仍然可以得到曲线的实际过程的真实含义,需要通过受影响数值的数量对不同的信息进行评估。在上图中的详细视图中,对此进行了举例说明。可以对曲线上的值进行分析,即在这段时间范围内出现的第一个和最后一个值、平均值和所有值的总和(没有显示出来),以及它们的数量。如果一个时间间隔内出现了特别值得关注的行为,则可以稍后相应地对时间范围进行限制,并且减少时间间隔,以便可以通过一种更加详细的方式使用所有信息对原因进行搜索。wV1.008.10.20

30、0920/45Copyrig0h9t s最小值最大值Error! Style not defined.358407002.3.4消息结构的调整通过调整消息结构(选择消息块),可以以最佳状态单独显示所接收到的消息。如果消息结构正是所需要的,则可以跳过该操作。图 2-8:消息结构调整窗口下表说明了如何调整消息结构w才ww能PL满Cw足orl具d cn体要求。w表 2-5:消息结构的调整V1.008.10.200921/45Copyrig0h9t s描述控制元件1.点击“Adapt Structure(调整结构)”按钮。弹出“Data Selection(数据选择)”框。2.在左侧列表中(“Avai

31、lable Data(可用数据)”),选择想要添加到选择内容中的元素,然后点击“-”按钮。右边列表(“Selected Data(所选数据)”)的新元素始终 入到该列表中当前所选元素的后面。Error! Style not defined.35840700w注V1.008.10.200922/45Copyrig0h9t s当启动应用程序时,它将会自动地从位于工作区域的“Column Headers(表头)”分段中的条目处,确定上一次使用的用于消息结构的设置信息。当选择过程值信息时,应确保此处的任何信息,除了时间变量和质量编码以外,都会触发其本身的过程,以便于相应的 SQL 查询功能执行。描述控

32、制元件3.如需将该元素从选择内容中移除掉,在右侧列表中选中它,然后点击“ 2009-3-17 0:0:0 AND DateTime 2009-3-170:0:0ANDDateTime Excel Objects - Sheet2 - cmdAlarmRead_Click):Select all columnsstrSQL = ALARMVIEW: SELECT * FROM AlgViewSelect the table according to the project language If Left(cmbAlarmLang.Text, 3) = Eng ThenstrSQL = strS

33、QL & EnuElsestrSQL = strSQL & Left(cmbAlarmLang.Text, 3) End If在分配了 SQL 语句的常量部分后,应检查在下拉列表中所选择的条目是否以 “Eng”开始。如果是,“Enu”将会被添加到语句中。否则,下拉列表条目中的前三个字母将被添加进去。V1.008.10.200927/45Copyrig0h9t s语言下拉列表中的条目视图名称德语GermgViewDeu英语EnglishAlgViewEnu法语FranaisAlgViewFra意大利语ItalianoAlgViewIta西班牙语EspaolAlgViewEspError! Sty

34、le not defined.35840700添加语言为了将一种消息语言添加到现有选择内容中去,请按照下述内容进行操作:表 3-3:消息语言添加步骤3.1.3添加消息类型wwww PLCworld cn务本应用程序可以通过最多六种消息类型对所归档的消息进行过滤。但是,在 PCS 7 中,除了这六种类型外,还另外存在七种消息类型。而且,还可创建自定义消息类型。因此这可能需要对过滤器进行扩展,以加入这些消息类型。同前一章节的内容一样,本章节首先给出了当前的实现方法,然后给出了可以对其进行更改的一个选项。概述在第 2.3.3 节中已经对如何将过滤器应用到消息类型上作了详细描述。在创建 SQL语句时,

35、使用选项框,可以对各个类型进行选择,并添加到 SQL 语句中。V1.008.10.200928/45Copyrig0h9t s步骤描述1.扩展下拉列表如需扩展下拉列表,应该对“ VBAProject -Excel Objects - ThisWorkBook - Workbook_Open”模块中的初始化语句进行编辑。将一个额外的 cmbAlarmLang.AddItem 命令行以“英语”形式添加到现有内容中。2.检查校验符使用 SQL Server Management Studio,确定与该语言有关的视图的名称。3.案例 1:不需要做进一步更改如果下拉列表中条目的前三个字母与视图名称的后三

36、个字母相符合,则不需要做进一步更改。4.案例 2:对 if 语句进行扩展如果字母不相同,则通过一个合适的 ElseIf 程序单元对上文中所给出的代码片段中的 if 语句进行扩展。Error! Style not defined.35840700步骤下列代码用于对 SQL 语句实现扩展(VBAProject - Sheet2 - cmdAlarmRead_Click):Excel Objects -Apply filterIf chkAlarmAlarms.Value = True Or _ chkAlarmWarnings.Value = True Or _ chkAlarmASPLCMess

37、ages.Value = True Or _ chkAlarmOSPLCMessages.Value = True Or _ chkAlarmOperatingMessages.Value = True Or _chkAlarmSystemMessages.Value = True ThenFlag to signalizet a part of the filter hasalready been enteredDepending on the flag, furtharts of the filterwill be added in a different formatDim boolIs

38、boolIsAs= TruewIf EventCategories are filtewrwewdPaLCpwroerldfixcn isnesarystrSQL = strSQL & AND (If chkAlarmAlarms.Value = True ThenstrSQL = strSQL & CLASS = 1boolIsEnd If= FalseIf chkAlarmWarnings.Value = True ThenIf Not boolIsThenstrSQL = strSQL & OR CLASS = 2ElsestrSQL = strSQL & CLASS = 2boolIs

39、 End IfEnd If()= FalseIf chkAlarmSystemMessages.Value = True ThenIf Not boolIsThenstrSQL = strSQL & OR CLASS = 18ElsestrSQL = strSQL & CLASS = 18V1.008.10.200929/45Copyrig0h9t sError! Style not defined.35840700boolIs End IfEnd If= FalseIf EventCategories are filtered a suffix isnesarystrSQL = strSQL

40、 & ) End Ifwwww PLCworld cnV1.008.10.200930/45Copyrig0h9t sError! Style not defined.35840700图 3-1 中所显示的流程图对上述代码片段的结构进行了说明。在该应用程序中,对于每种可过滤的消息类型,除了代表性地显示了一次。以外,将以灰色背景显示。为清晰起见,只是图 3-1:按照消息类型进行过滤的流程图w添加语言根据下表说明,可以将其它消息类型添加为过滤元素:V1.008.10.200931/45Copyrig0h9t s否是否选择过滤器?是是是否过滤?否www PLCworld cn结束添加后缀到strSQ

41、L否是否选择了元件?是boolIs否= False?是添加字符串 1 到 strSQL添加字符串 2 到 strSQL boolIs= False添加字符串到 strSQL boolIs = FalseboolIs=True添加前缀到 strSQL开始Error! Style not defined.35840700表 3-4:消息类型添加步骤wV1.008.10.200932/45Copyrig0h9t s步骤描述1.去掉表单的保护在 控制元件之前,必须去掉表单的保护。使 用 下 述 菜 单 选 项 : “Tools(工具)” -“Protection(保护)” -“Unprotect Sh

42、eet (去掉表单保护.)”2.控制元件将一个附加的选项框到现有选项框中,然后为其输入一个具有代表性的名称。注:为了防止出现布局问题,将控制元件的位置和尺寸属性同单元格的属性分隔开:打开“Format(格式)”-“Control(控制)”菜单选项。跳到“Properties(属性)”选。选择“Dont move or size with cells(不随单元格进行移动或发生尺寸变化)”。确认更改。3.扩展源代码以下述形式的程序单元对上文所给出的代码片段进行扩展:If chkAlarmSystemMessages.Value = True Then If Not boolIsThenwwswtr

43、SPLQCLwo=rldsctnrSQL & OR CLASS = 18ElsestrSQL = strSQL & CLASS = 18boolIs= False End IfEndIf必须对选项框的名称和消息类型的数量进行更改。在 较 高 等 级 的 查 询 中 (If chkAlarmAlarms.Value = True Or )输 入 一 个 适 当 的 条 件 ( Or chkAlarmSystemMessages.Value = True ).注:使用 SQL SERVER MANAGEMENT STUDIO,可以找到有关在当前项目中所使用的消息类型编码的概览信息。当启动应用程序时

44、,选择相应的 WinCC 服务器。转 到 下 述 列 表 ( 示 例 ) :数据库- CC_OS_1 09_03_19_18_33_31 - 表格 - dbo.MSMsgGroup对于来自“GROUPDAT”列中的相关编码信息,请参见该表。相关条目为“类型 3”。4.表单保护通 过 下 述 操 作 进 行 表 单 保 护 : “ Tools (工具 ) - “ Protection (保护)” - “ Protect Sheet (进行表单保护.)”Error! Style not defined.358407003.2消息结构的扩展能力任务本应用程序提供有用来显示所有消息信息(列)的选项,在

45、 WinCC 中也有该选项。但是,归档消息还包含附加信息,例如“变量”、“确认类型”和“服务器名称”,这些附加信息不能通过这些设置进行选择。为了方便理解,首先对当前的实现过程进行了说明,然后,对如何调整消息结构进行了逐步解释。概述在第 2.3.4 节中,详细阐述了消息结构的调整步骤。这些设置都在一个独立的窗口中完成。在确认更改,应用程序的工作区域将自动进行调整。wwww PLCworld cnV1.008.10.200933/45Copyrig0h9t sError! Style not defined.35840700步骤消息结构会在大多数不同区域内对应用程序产生影响。为便于解释,需要知道如

46、何初始化必要的基本信息。所有随后的顺序都会适应该设置(只要它们与程序逻辑相符合)。三个数组了消息结构的基础:表 3-5:消息结构的基础wV1.008.10.200934/45Copyrig0h9t s数组内容strAlarmDataNames名称包含在该数组中,并显示出来供选择。目前的条目对应于在Graphics Designer 中编辑 WinCC 消息结构时所使用的名称。注:这些名称与在数据库中所使用的名称不相同,更方便理解。AlarmRecordSetID本数组包含了集各个消息信息片段的位置信息。注:在通过 SQL 语句请求消息时(参见第 3.1.1 节),以集的形式将它们返回。只要数据

47、源(视图)和查询的结构(SELECT *)都没有发生变化,集的结构就始终是完全相同的。因此,本集中的每个消息片段都具有一个固定的位置。www PLCworld cndblAlarmColumnWidth本数组包含了在默认状态下被分配给一个消息片段的列宽信息。注:调整消息结构时,指定列的宽度将会自动进行调整,以适应每个所选择的消息信息片段(参见第 2.3.4 节)。这样做的目的是确保最佳显示消息。Error! Style not defined.35840700借助于常量,可以对数组进行,从而可以确保具有的结构(VBA-Project -Modules - MngAlarmitions):Pub

48、lic strAlarmDataNames(1 To MAX_ALARM_DATA_COLUMNS) As String该常量对应于消息信息片段的数量,在默认情况下,片段数量为 38。可以通过的常量使数组作出反应,例如在数组的初始化期间,这些常量中的每一个都分别对应于一个消息信息(VBA-Project - Modules - MngAlarm InitializeAlarmArrays):strAlarmDataNames(C_DATE_TIME) = Date / Time这样,可提高源代码的可读性,简化更改过程。itions -根据它们的功能(作为数组的索引),用于消息信息的常量包含连续

49、的数字(对于联合使用的常量,VBA-Project - Modules - Constants;对于 Project - Modules - ConstantsAlarm):Public Const C_DATE_TIME = 1 Public Const C_MS = 2Public Const C_PRIORITY = 3常量 VBA-标准信息的片段将根据它们的顺序被保存在 WinCC Graphics Designer 中。消息结构的扩展消息结构的扩展仅要求对常量和数组的初始化进行调整。为了实现这一目的,请按wwww PLCworld cn照下表中所述内容进行操作:表 3-6:消息结构扩

50、展步骤V1.008.10.200935/45Copyrig0h9t s步骤描述1.调整最大值常量通过菜单 VBA-Project - Modules - ConstantsAlarm,输入消息信息项的数量,用于 MAX_ALARM_DATA_COLUMNS 常量。注:通过该常量,应用程序调整至更改后的状态。因此需要一个用于该常量的修正值。Error! Style not defined.35840700wwww PLCworld cnV1.008.10.200936/45Copyrig0h9t s步骤描述2.添加索引常量在相同模块中,按照要求将足够多的常量添加到现有索引常量中(例如 C_PRI

51、ORITY)。注:确保新的是连续的,并且没有超过在MAX_ALARM_DATA_COLUMNS 中所定义的值。3.数组初始化的扩展通过菜单“ VBA-Project - Modules - Mngitions -InitializeArrays”,对出现的数组进行初始化。将数量与想要进行添加的消息信息片段的数量一样多的元素插入到每一个数组(共三个)中,并将相关数据填入到这些元素中(参见表 3-5)。Error! Style not defined.3584070044.1附录宏的启用应用程序参考信息如第 2.1 节中所述,宏的“高”安全等级设置会正确地执行应用程序。背景知识“高”安全等级为默认

52、设置,用于保护您的计算机免受有害应用程序的安全等级降低到“中”,可使对所信任和不信任的源信息进行定义。将宏在什么情况下安装等级设置过高?图 4-1:有关宏处于禁用状态的警告当宏由于安全等级设置过高而无法运行时,将会出现如图 4-1 中所显示的警告信息。图 4-1:有关宏处于禁用状态的警告wwww PLCworld cn如何启用宏?如需启用宏,必须将宏的安全等级设置为“中”。可如下操作:1.2.3.打开 Excel(设置并不只针对特定文件)。关闭所有可能出现的消息。选择“Tools(工具)” -“Options(选项)”菜单选项。V1.008.10.200937/45Copyrig0h9t sE

53、rror! Style not defined.358407004. “Options(选项)”窗口打开。图 4-2:安全等级设置“Options(选项)”窗口wwww PLCworld cn5.选择“Security(安全)”选(宏安全)”按钮。,然后在该选中点击“Macro SecurityV1.008.10.200938/45Copyrig0h9t sError! Style not defined.358407006. “Security(安全)”窗口打开。图 4-3:安全等级设置“Security(安全)”窗口wwww PLCworld cn7.选择“Medium(中)”。8.点击相

54、应的“OK”按钮,可关闭两个窗口。V1.008.10.200939/45Copyrig0h9t s注意将安全等级的设置降低到“Low(低)”,也可以将宏置于可用状态。但是,如果使用这种设置,在运行具有潜在不安全性的 Excel 文件中的有害宏时,所有保护功能都将不起作用。Error! Style not defined.358407009. 从现在起调用应用程序时,一条警告信息将显示出来,出现提示信息,决定是否要使能还是禁用这些宏。该应用程序包含宏。图 4-4:有关使能宏的提示信息的确认通过点击“Enable Macros(启用宏)”按钮,来启用宏。随后,在宏处于启用状态下加载应用程序,应用程序即具有完整功能。.2相关值的通配符的解释www PLCworld cnw为了对消息数据库的大小进行优化,在 WinCC 中出现的消息包含有通配符。这样可以确保不需要反复地对消息中的静态信息进行保存。因为该应用程序是以 WinCC 的系统为基础的,

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论