工业监控环境下Web页面实时数据的自动更新第2

优采云 发布时间: 2021-08-23 04:33

  工业监控环境下Web页面实时数据的自动更新第2

  工业监控环境下网页实时数据自动更新Vol. 2l, No. 11, 2001。11 计算机应用,计算机应用 Vo 1.21。编号 1I N0v。 . 2(x)1 文章Number: 1001 One~1(2001)l)一0089-02 工业监控环境下网页实时数据自动更新(西安耀通电气工程学院)陕西西安大学 710049)Abstract: 当前工业监控环境实现了网页实时数据的自动更新,针对不同的需求提出了三种不同的解决方案,并在TimeLines设计更详细。说明。美式关键词:ASP;TimeLines;Java小程序;数据绑定中文库分类号:TP393.09 文档识别码:A概述ASP的出现(.网页不再是难事.一个ASP应用以多个后缀为asp和rL的文件为主体,一个hun文件一般对应用户通过9浏览器看到的最后一个页面,当然是正常的,htm文件不同,不是所有这些。调用的文件是可见的(显示为用户看到的页面),那些不可见的。 asp文件经常完成一些后台功能,比如在不同的chi或者。

  htm 文件形成逻辑关联,将分离的设计页面有机地组合成一个整体。 ASP 应用程序的这种组织自然地为用户和服务器之间的交互提供了一种通用模式。这种模式完全可以满足网站一般用户的接入需求,但是这种模式尚不适合工业控制环境下监控数据的快速自动实时更新,获取最新的数据信息。本文重点介绍如何实现网页数据的自动实时更新,讨论了几种实现方法。并比较了其优缺点。常用的数据库控件和对象考虑允许用户通过访问某个页面来观察某个工业现场的处理参数数据的实时变化,以便用户采取相应的措施。一般来说,ASP 应用程序是基于实时数据库的。工业现场数据通过相应的采集程序发送到数据库,ASP应用通过访问数据库将现场数据反映给用户。访问数据库可以使用~-#dve,Server0b提供的ASP。眼角诱饵,简称ADO。 ADO 对象包括命令对象、连接对象和记录集对象。通过使用 ADO 对象,您可以轻松访问支持 ODBC 的数据库。以Mieax~:dt的sqlSeB~r为例,下面在服务器上执行的脚本说明了如何完成抗数据库访问。使用M)O通过代码访问获取到的ADO记录集对象,对记录集中的记录进行插入、删除、修改,并可以影响数据库中的表。

  另外,还可以使用Interdever集成开发环境提供的数据库控件AeS~'eK控件Adode,与ADO功能相同,通过Ado6~访问数据库,用户无需写代码,只需要填写控件属性页即可。 Adode属性页分为C-~neml、Authemie。 . ~m,字体,颜色和记录。在 Source General 页面中,用户选择到数据库的连接方法。可用的数据连接文件 ODBCDSN。连接字符串完成与数据库的连接;在Authcnticallon页面,填写数据库的用户名和密码;在 ReeordSouwe 页面中,根据需要选择 SQL 语句查询、表查询或存储过程查询。本页填写的内容决定了最终的查询结果,是数据库运行的关键。另一个 Font 页面和 Color 页面决定了控件的外观属性。使用ADO对象或Ado&控件完成查询结果的获取。要通过网页反映结果,需要使用代码或数据控件来实现。使用代码以表格的形式反映查询结果,可以在~ample.下面的脚本写在asp文件中。假设已经通过ADO对象获取了一个记录集myRecord,该记录集收录了所有居住在圣地亚哥J州的以从SQL Server提供的pubs数据库中的authors表中获取的firstnnme开头的作者的所有记录。

  (META Awu P—EQU]V="REFRESHCON'TEhl"=3:Mypage">Team D>在一次刷新中,整个文件重新执行一个数据库的连接,查询和显示,只要数据库相同 如果对应的数据发生了变化,页面可以将数据的变化反映给用户,这种方式最简单,适合的平台以只读的方式提供给用户,刷新频率应该不高太高了,否则会是提取出来的数据 很多时候,出现一次的数据可能会显示不稳定,fork 开始新的进程,不利于数据的监控。慢的情况下32 使用Java小程序更新数据 在需要图像和数据结合的情况下,例如监控某电源一次的相关数据系统,需要将实时数据与主系统诊断紧密结合ram,开关的变化和相关变化反映在图中。电压和电流值。在这种情况下,可以“考虑利用Java小程序自身的多线程和绘图优势来解决头部问题。当考虑一个如图1所示的主系统页面时,将背景图像和实时数据相关图像和字符区分开来.背景图片加载双缓冲技术,实时数据相关图片和字符显示代码写在Java小程序的Paim()函数中,在Java小程序的线程Run()函数中使用DAO或者RD0查询数据库,Java小程序线程的休眠时间可以通过Sleep(im time)函数确定(单位为毫秒)。

  线程每次运行时,都会重新查询数据库获取新数据,并重新绘制小程序,从而将不断变化的电源系统反映给用户。使用 Java 小程序还可以通过响应事件来响应用户操作。相反,用户通过响应点击事件来点击图中的开关来关闭或断开站。不仅可以体现在图中,还可以通过某种方式来体现。 Java小程序的执行速度很快,一旦下载并运行,直到小程序所在的页面关闭。此外。由于Java小程序本身也是一个容器(Contalne~),可以根据需要在小程序中按一定的布局添加现成的控件,形成友好的网页。 3.3 使用设计时控件 TinlcL{rm~ 更新数据。上面提到的两种实现方式都需要一定的编码工作,尤其是Java小程序的使用。虽然实现定制化的工程仿真图更方便,但在需要标准化表格格式的情况下,使用Java小程序就没有那么方便了。这时。使用前面提到的数据库控件Ad或其他各种数据控件,结合设计时控件,只需很少的编码就可以完成数据的实时显示。充分发挥控件的优势。在编写 VC++ 应用程序时,我们对计时器(firaer)并不陌生。在 Web 应用程序中,我们可以使用具有类似功能的设计时控件。设计时控件可以通过单个或多个 canthal 对象确定 Web 页面上事件的发生。

  使用该控件,我们可以为网页中的脚本指定一个Tm~Line,并为单个或多个事件指定一个Tm~Line。您可以使 1 个对象在加载它的页面时自动运行,或者您可以在用户操作中使用脚本来启动、暂停和停止 rdiIle 对象。对于 TmlelAnes 设计时控件中的每个 TwaeL~ne 对象,我们可以为其分配多个事件。并且有三种事件类型可供选择。这三类事件分别是离散事件(Discrete events)、循环事件(我脚口eY吣)和连续事件(Gevents)。离散事件是指下载Ttme_nes控件后只发生一次不再触发的事件;循环事件是指在下载TrmelAnes控件后的一段时间(D)内重复触发的事件,在这个时间到来之前和之后不会触发此类事件;连续事件是指从第n个控件下载后,从开始时间起每隔一定时间就会触发的事件。通过T视图控件的属性页,我们可以确定每个Tm~Lme对象的每个事件的相关属性。其中,对于每种类型的事件,都有事件的开始时间(Sta.'tTm~),格式为分:秒和毫秒。该值来自:00 59:59999。 T|eBre 的值用于确定每个具有相同开始时间的事件的优先级。值越小,触发优先级越高,TieBe事件的触发优先级最高。

  如果为事件指定了 'fieBreak 值,则该事件将与指定了 TieBreak 值且具有相同开始时间的其他事件进行比较。其触发优先级最低。此*敏*感*词*与开始时间格式和取值范围相同。如果一个事件2的取消阈值为:000,开始时间为:05000,那么在08.0,另一个事件1在它完成之前或尚未完成之前被触发,那么事件2将不会被触发。在正常情况下,我们不会为活动指定取消门槛。对于连续事件,时间间隔(Inkm1)表示该类事件的发生间隔;对于循环事件,时间间隔和周期数(LD)共同定义了该类事件的Du shed,计算公式为I~JudtiE01=(Loop一1)*lme~'al。使用Tmzline时,事件列表中同一个事件可以多次出现,实现多次触发。可见TimeLizes控件提供了一个大量空间处理周期操作,可以满足更灵活的时间要求的环境,为了说明TimeJSnes控件的应用,给出如下演示程序。在网页上每隔10ros刷新一次。在Tm~在eLines中定义了一个连续的事件actionl,时间间隔为0o:00010。网页上也使用了Adode控件来完成与数据库的连接和查询,并且数据是绑定到数据控件DataGrid来显示。

  (SCR)I:q'LANGUAGE=ia*'asc6~> (!一一函数nmeLinet_~fiml() DataGridIhll~-Utzdate=false DataGddlEnabled=foot DataGddlDataSc~me=Adoricl AdcdclRefre~()), 一一> (/SCRIPT> Reference I) Stephen Walthe~ActiveSe~'erPab, es20U~leashed [M] 北京希望电子出版社, 2O00 2] 闪四清。 ~~tosofts0LSet,mr2OOO实用教程[M]北京:^ 中国邮电出版社,2O0O

0 个评论

要回复文章请先登录注册


官方客服QQ群

微信人工客服

QQ人工客服


线