杨新凯
1 引言 LonWorks是美国Echelon公司于1990年发布的技术,用以把传感器、执行器等组成网络来完成控制任务。它是一种开放性的控制网络平台,提供完整的系统解决方案,支持多种介质,如双绞线、电力线、光纤、红外线等,并具有互操作性。LonWorks的众多优点使它有着非常广泛的应用,如楼宇自动化、工厂自动化、智能家居、能源管理、交通运输系统等。但是从网络的角度看,这些系统中的应用属于局部的小型网络,它们形成了所谓的“信息孤岛”。随着互联网的迅猛发展,这些信息孤岛与互联网的融合也成为一种必然的趋势。Echelon公司认识到了这一趋势,在其许多产品中都提供了对于IP网络的支持。该公司于2000年初发布的i.LON 1000网络设备就是这样一种产品,通过这个设备可以把LonWorks网络与互联网进行无缝连接。这是借助硬件产品实现远程监控。另外从软件的角度看,通过Java技术也可以实现远程监控。我们在实验室建立了一个具体的LonWorks网络,分别实现了两种不同的监控方案。 2 LonWorks控制网络实例
 图1 LonWorks网络模型
我们建立的LonWorks网络演示模型如图1所示,用来对HVAC模拟系统进行控制。HVAC系统包括报警子系统、空调子系统和温度检测子系统。报警子系统由红外探头、蜂鸣器和信号灯组成,在有外界侵入时控制声光报警输出。空调子系统由冷却塔风机、冷却水水泵、冷却水流量检测仪表和水冷机组组成,可以通过指令控制系统的开启和关闭,并在冷却水流量过小时自动关闭系统。温度检测子系统由温度传感器和电动阀门组成,在外界温度发生变化时自动控制水管阀门的开度,通过调节热媒水的流量来控制温度。LonWorks网络由模拟量输入模块AI、模拟量输出模块AO、开关量输入模块DI、开关量输出模块DO1和DO2共五个LonWorks节点组成。节点之间根据需要进行网络变量的绑定,例如AI模块把温度传感器检测到的温度值通过变量绑定的方式发送给AO模块,AO模块则输出相应的数据去控制电动阀门的开度。由这五个节点组成的网络已经可以完成HVAC系统所需规定的监控任务,但为了实现Web监控,需要增加一台PC机以运行LNS Server和Web Server。 3 基于i.LON的Web监控方案 基于Web管理的LonWorks网络远程监控方案的构成比较简单,在如图1所示的LonWorks网络的基础上,只要添加一台i.LON设备(该设备需要接入Internet),并使用HTML语言进行相应的编程工作就可以了。i.LON设备以Web Server方式运行,在互联网上做为实际网络的代理,具体实现细节对监控端是完全透明的。监控端可以是任何一台接入Internet并运行浏览器程序的PC机,PC机的接入方式非常灵活,如通过局域网接入、电话拨号、xDSL等方式都可以。
 图2 i.LON实现Web监控的主界面
 图3 空调子系统监控界面
针对这个具体的网络,我们需要制作相应的网页代码,并将其上传到i.LON 1000,之后就可以通过浏览器来访问,并通过主页进行监控。这个监控系统的主界面如图2所示。如在图2所示界面中点击“空调子系统”,就可以看到图3所示界面,可以在这个界面中选择开启或者关闭空调系统,所对应的HTML源文件代码的主体部分如下。报警、温度子系统的界面及源文件与空调子系统非常类似,因此不做赘述。 <HTML> <HEAD> <META HTTP-EQUIV="refresh" content="1"> <TITLE>中央空调监视</TITLE> <SCRIPT LANGUAGE="JavaScript"> function dispy() {…} function listview() {…} </SCRIPT></HEAD> <body bgcolor="#ccccff" > <form name="KongTiao1" method="get" action= "KongTiao1.htm"><ILONWEB_URL> <div align=center> <FONT SIZE=5 COLOR="#0000ff">中央空调监视界面</FONT> <HR WIDTH=344 > <P>   启动按钮:<iLonWeb func=Hidden size=2 symbol=NVL_zndi_DIv1> <input name="NVL_zndi_DIv1" size=2> </iLonWeb> <input name="AnNiu" size=4 value="0"> </P> <P>冷却塔风机:<iLonWeb func=Hidden size=2 symbol=NVL_zndo1_DOv1> <input name="NVL_zndo1_DOv1" size=2 ></iLonWeb> <input name="FengJi" size=4 value="0"> </P> <P>  冷却水泵:<iLonWeb func= Hidden size=2 symbol=NVL_zndo2_DOv0> <input name="NVL_zndo2_DOv0" size=2 ></iLonWeb> <input name="ShuiBeng" size=4 value="0"> </P> <P>   水冷机组:<iLonWeb func=Hidden symbol=NVL_zndo2_DOv1> <input name="NVL_zndo2_DOv1" size=2 ></iLonWeb> <input name="JiZu" size=4 value="0"></P> <P>冷却水流量:<iLonWeb func=Hidden symbol=NVL_znai_AIv0!FORMAT:RAW> <input name="NVL_znai_AIv0" size=6 ></iLonWeb> <input name="LiuLiang" size=4 value="0"> T/h</P> <P><A HREF="startK.htm" ><H5>开启空调</H5></A> <A HREF="closeK.htm" ><H5>关闭空调</H5></A></P> </div></form></body></HTML> 从程序可以看出,它与普通网页不同的地方在于使用了iLonWeb标签,i.LON 1000内置的Web Server能够理解这个标签的意义,当Web Server向浏览器发送页面时,它把其中对于网络变量的引用转换成具体的数值,这个数值则是通过i.LON 1000 向网络中所对应的设备获取的。由于浏览器自身的特点,必须通过页面刷新才能实现网络变量数值的更新。即在需要获得新的变化情况时,通过点击浏览器页面的刷新按钮,向Web Server发送请求,i.LON 1000才会把新值返回给浏览器。 4 基于Java的Web监控方案 在这个方案中不需要i.LON 1000,只需要将图1所示系统通过一台PC机连接到互联网,并在PC机上运行Web Server,编写网页代码,就可以通过浏览器来访问LonWorks网络,对HVAC系统进行相关的控制和监测。在实验室我们把这个系统接入局域网,在PC机上运行PWS,然后通过浏览器进行监控。所使用的网页代码如下: <HTML> <HEAD> <META NAME="GENERATOR" ><TITLE> LonWorks Web Control</TITLE> </HEAD> <BODY background = "blue"> <DIV align=center> <APPLET code=Myapplet.class align="middle" height="300" width="400" archive = "lonweb.jar, lnshmi.jar"><PARAM NAME="192.168.1.41" VALUE="yxk"> </APPLET> </DIV></BODY></HTML> 从程序可以看出,这个网页代码相当简单,其主要部分就是嵌入的Java小程序,所有的监控任务都是通过Java小程序实现的。这个Java小程序所实现的界面如图4所示。
 图4 Java Applet实现监控的主界面
从图4可以看到监控主界面分为上、中、下三部分,上面的部分称做UpPanel,分别显示服务器的IP地址(我们是在局域网的范围内进行测试)、网络名称、网络中所有的节点名称和所选中节点所包含的网络变量名称。中间的部分称做MidPanel,分别用来显示报警、空调和温度检测子系统的各种状态和检测值;连接到服务器后,系统的各种信息就自动显示在这里,并且随着系统的变化而不断刷新。下面的部分称做DownPanel,由三个按钮组成,当按下“开启空调”按钮后,空调子系统会进入启动过程,冷却塔风机、冷却水水泵和水冷机组会依次打开,在MidPanel面板可以看到系统状态的改变;“关闭空调”按钮用于关闭空调子系统;按下“关于”按钮后会弹出一个信息框,显示程序的一些相关信息。 实现上述监控任务的程序共有七个文件组成。Myapplet.java是真正的Java applet,它实现了Runnalbe接口,通过调用三个类LonModel、LonView和LonGlue 来访问LNS Server,实现对LonWorks网络的监控任务;UpPanel、MidPanel和DownPanel用来完成界面的显示和刷新任务。这些文件都是由冗长的代码构成,由于篇幅的限制,在此就不做详细介绍了。 5 结语 从前面的比较可以看出,通过i.LON 1000这个硬件设备实现Web监控,从实现的角度看要简单一些,因为主要只是做一些HTML编程方面的工作。但这种方案的缺点在于(1)硬件设备成本较高;(2)受浏览器自身的限制,必须通过不断刷新页面才能获得数据的更新;(3)i.LON内存有限,只能存放1M的HTML源文件,因此其最好的使用方式是建立与其它Web Server的链接。 通过Java 小程序来实现Web 监控,则不需要i.LON这样的硬件设备,并且能够实现实时数据的动态刷新。但是这种方案需要针对具体的网络编写复杂的代码,并借助于Web Server才能实现Web监控。 总之,LonWorks技术在我国的应用还处于发展阶段,i.LON互联网接入设备的出现及其广泛的应用前景更加显现出这种技术的先进性与优越性。我们相信,随着互联网技术的发展以及对社会生活各个方面的渗透,把我们周围的电子设备接入互联网,真正实现控制网络与互联网的完全融合,必定能够带给人们更加美好的未来。
参考文献: [1] Reza S, Raji. Control Networks and the Internet. Echelon Corporation, January 1999. [2] 樊永生, 杨新凯. 基于Web的LonWorks网络的监控方案. 测控技术, 2001,20(2):37-38. |