西门子wincc数据报表的实现方式 下载本文

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

【摘要】随着工业领域的不断发展,用户需求一种以人机界面为控制主体的视窗控制体系的过程监控系统,以此来取代原来的以现场操作按钮和仪表为主的操作体系。通过开放性、灵活性的可视化界面,迅速并直接的处理生产过程中的事件信息。凭借这种战略思想,WINCC,运行于Windows系统下的控制中心,已发展成为工业市场领域的领导者,乃至业界遵循的标准。Wincc集生产自动化和过程自动化于一体,应用于各种工业自动化领域,是提高工厂生产效率的上乘之选,并支持多种语言。

工业生产中,报表系统通常是控制系统中非常重要的一部分,是企业管理的基本措施和途径,它通常用来记录重要的现场工艺参数和统计信息。早期,都是由人工记录的方式进行统计汇总,数据也只能有一种几乎只有记录员才能理解的表现形式,且这种形式难于更改。当进入计算机时代后,报表这部分工作完全可以由计算机软件来实现,数据动态化,格式多样化,用户可以自己修改数据或格式。针对自动化工程师而言,如何利用wincc软件来开发适合用户需求的报表,并且高效灵活的解决统计数据是自动化工程师必须掌握的一门技术,也是企业日常生产维护和管理中不可或缺的管理手段之一。

报表的变现形式分为许多种,大体上可分为两种形式:曲线格式和表格格式。

曲线形式主要是利用WINCC自带控件来实现,在控件属性中,可对趋势、常规、字体、趋势窗口、时间轴、数值轴、工具栏、状态栏、在线组态、导出中具体参数进行设置,以符合用户的生产需求和审美要求。例如,时间轴可设成1分钟,1小时或者1天的形式,数值轴可以设置成根据实际测量值实时改变数值轴的范围。应用在线趋势曲线的前提条件是,用户需要在变量记录里设置需要归档的变量内容和归档周期等一系列参数。

针对于一些特殊归档要求,曲线形式的归档可能满足不了用户的需求,往往用户需要生成一种支持打印功能并以表格形式查询的数据归档报表。针对于这类复杂的报表,可以通过用户归档和Wincc报表编辑器来实现此类功能。用户归档可以用来在工控机上连续的保存来自技术过程中的数据信息,在图形编辑器中,可以组态用户归档表格元素来显示控制系统中用户归档的在线数据。根据用户需要,数据支持读取和写入的功能,并可在线更改数据。它是一种用户自己创建的数据库的数据库表格,用于用户存储数据,并根据SQL数据库规则提供这些数据的标准化访问。

在项目编辑器里的树状结构图中找到用户归档视图,双击打开。在归档视图界面插入一个新归档,在新建的归档界面中按照提示步骤依次输入归档名称和控制变量。在常规选项卡里的归档名输入框内填入需要建立的归档名称,归档类型选择无限制,点击下一步,进入控制变量的选项卡。在这里,可以使用软件默认的命名方式,左键单击创建按钮,会直接分配新的控制变量到ID、指令、域和值这四个接口中,并在变量记录中生成这四个指令的相关信息。接下来,在归档

的空白处右键插入新域,依次输入域名,别名,选择数据类型并连接Wincc归档变量,将所需要的变量值保存进用户归档中。为了日后查找方便,可在变量管理中的SYSTEM INFO下,创建变量用于取得系统的小时或分钟等信息。另一种方式就是通过Step7中的数据传送到Wincc变量中。

控制变量是用户归档中十分重要的一个概念,利用这四个变量,可以触发用户归档,必须为“ID”和“Job”变量或“Job”、“Field”和“Value”变量提供相应的值,其赋值意义如下。“ID”用于记录编号。“Job”为作业的功能,其中读=6,写=7,删除=8,意思就是说,把变量的数据读到用户归档写到控制系统变量或者用户归档中把数据记录删除。通常需要用到两种组合方式,如将变量写入用户归档中的操作“ID=-1,job=6”,将用户归档中的数据写入变量的操作是“ID=-1,job=7”。

完成上述工作后,在报表布局设计中新建一个页面布局。在合适的位置放置ODBC数据库表控件,连接用户归档中的变量。在ODBC数据源处选择需要连接的数据库,在变量处连接一个文本类型的变量。并在对象属性中的列选项卡中填写好返回的字段数。针对布局列宽的调整可以通过控件的属性窗口设置实现。

接下来,创建一个新的打印任务连接的布局,根据报表设计,选择好纸张尺寸和打印格式,并建立打印作业任务,选择好之前建立好的布局名称。

执行打印作业的话需要在画面编辑器中建立一个按钮,在按钮属性中,建立一个内容为“RPTJobPreview”(“打印布局名称”)的脚本。至此,就完成了所有的任务设计。

在制作数据报表时,我们有时需要以Excel的形式来呈现所设计的表格,并注明报表生成日期和时间等一系列数据。面对此类问题,我们需要用脚本的形式来解决处理。

在Wincc项目编辑器里,将所需的变量用变量记录选项卡保存在SQL数据库中并设置好归档参数后,打开全局脚本里面的C或VBS脚本编辑器,这里,以VBS脚本为例,进行描述。

点开下拉菜单“动作”,在这里面新建立一个VBS脚本。首先,需要对EXCEL表格进行预定义,并读取当前操作系统的日期等相关属性,如年/月/日等相关信息,上述语句表设计完成后,就会在目标文件夹内通过预设值表格,生成新的报表。

接下来,需要对表格的行与列和工作表格创建形式的设计,最后需要做的就是将归档变量定义到Excel表格之中。

使用VBS汇编语言制作脚本程序是Wincc比较高级的一种语言格式,同时还可以自定义脚本触发周期来实现数据采集或处理。在画面编辑器中结合VBS脚本,可以使画面做到动态化效果。是在日常编写程序时不可或缺的一种程序设计语言之一,可以使人机操作界面更加符合审美需求。也是设计复杂报表设计时,

不可缺少的元素,可以使通过自带插件实现不了的功能得以实现。

另一种方法就是通过系统自身带的DDE功能来实现数据交互。

打开WinCC项目管理器中,在WinCC Explorer选项卡中点击“计算机属性->启动”后,添加应用程序: DdeServ.exe,同时添加命令行参数。随后会弹出DDE-Server 对话框,左键点击 Tag List 按钮,在列表中选择想要访问的变量,再点击“确定”,这样该变量的连接信息就会被拷贝到Windows剪贴板之中。接下来,打开Excel,随便(双击)选中一个单元格,将Windows剪贴板的内容拷贝到该单元格中,然后在第一个字符前添加“=”,这样就完成对单元格的输入。这时在Excel中就能够得到WinCC的内部和外部过程数据了。如果要访问多个数据,可以重复上述方法,但要确保DdeServ.exe需要一直运行。这样,就可以通过本地DDE通讯的方法实现和EXCEL的数据连接,生成自己需要的报表格式。

根据项目积累的经验,报表的形式多种多样,选择正确的设计形式来实现客户需要的效果,并节约设计周期,是设计报表的最终目的。

参考文献

[1]深入浅出西门子Wincc V6.北京航空航天大学出版社

[2]S7-300/400 PLC应用技术.机械工业出版社