基于LonWorks的一体化集成系统

北京工业大学电子工程系 郭维钧教授 刘文博硕士

一.引言
目前,系统网络与集成技术发展的大趋势是网络集成已由以主处理器为中心的集中处理模式和接下来的基于局域网的以Client/Server(客户机/服务器)为中心的分布式信息处理模式,发展到目前的基于Web的更方便、更优越的浏览器/服务器模式。这种一体化集成完全基于智能建筑内部的互联网Intranet(企业网),通过Web服务器和浏览器技术来实现建筑内信息的交互,做到信息、资源和任务的综合与共享,以及全局事件的处理和一体化的综合管理,从而在新的互联网技术基础上达到提高服务质量,实现高效率管理的理想目标。
为了实现上述目标,我们与香港城市大学合作开了基于LonWorks的一体化集成系统,它是指以LonWorks现场总线为基础,利用LNS技术实现Internet/Intranet和LonWorks的结合,从而提供了建立远程监控和管理的解决方案,通过信息网络实现了用户与信息的集成和数据传输。一方面通过LonWorks现场总线将网络中的所有智能节点统一管理起来,完成一系列网络服务功能,另一方面在Web端实现数据和页面的集中服务和人机交互界面的统一,实现在局域网上的任何装有浏览器软件的微机或在远程通过上网,均可访问Web服务器站上的信息,监控智能节点。页面完全遵循浏览器的操作规则,支持构架显示,窗口推出,支持查询,实现带有口令验证的安全管理操作。
在该系统中,充分利用了业已成熟而广泛采用的Internet技术,以TCP/IP协议为基础,以Web为核心作用,在智能建筑内部构成统一和便利的信息交换平台。用户通过WWW的工具能方便地浏览大厦内部Intranet和因特网Internet上丰富的信息资源。最重要的是通过LNS将大厦内部各智能节点的管理和各种数据库应用等系统集成到浏览器上来,从而将BMS实时的机电设备和安全监视与控制,平滑地过渡到准实时的Intranet上。该一体化集成系统的建立使Internet与Intranet更好的结合,通过充分利用已有的网络通讯资源,极大地提高了系统的集成度。
二.系统的设计
为实现该系统,开发过程主要包含以下内容:
●建立基于PC机的Internet Web Server软件。该PC机上有两块接口卡,一块是TCP/TP网卡,另一块是LonWorks Network接口卡(NSI),提供信息网络与控制网络的通信链路。
●当向服务器发出指令时,服务器端软件可以被外部访问,并可通过服务器端软件查询Web数据库信息。
●通过远程用户Web页面,建立用户命令和LNS命令连接的表单,通过动态网页ASP技术将用户使用的LNS网络变量命令清单提交给LonWorks网络服务器(LNS)中的网络服务器(NSS)和网络服务接口(NSI)。NSS处理标准网络服务、维护网络数据库、允许协调对其服务和数据的多点访问。NSI提供到LonWorks网络的物理连接,管理NSS和应用服务器的信息处理、实现对NSS和应用网络服务器的透明远程访问,从而满足在任意地点通过浏览器实现对智能节点进行监控的要求。
●所设计的服务器端软件应能进行用户命令和LNS命令的转换,反之亦然。LCA是协调在Windows NT和Windows95的主机上对LNS服务进行访问的软件组件。主要有向导层、公共对象层、组件层和网络服务层。LCA通过向导层来浏览LCA对象;网络服务层满足基本网络服务请求,分层管理设备和网络变量地址,在Windows平台上,网络服务层通过Windows动态度链接库(DLL)接口来访问。
系统的集成示意图如图1所示。
三.系统的实现
下面介绍一下实现该系统所用到的主要技术:
LNS技术简介
LNS(LonWorks Network Service)是Echelon公司最新开发的LonWorks总线的开发工具,它提供给用户一个强大的客户机/服务器网络构架,是未来LonWorks总线互操作性的基础。LNS是网络控制领域中第一个多客户端网络操作系统,是一套给LonWorks网络提供基本目录、管理、监视和控制服务的网络操作系统。LNS为所有需要与LonWorks网络相互作用的应用程序提供这些服务,以确保各个应用程序可以不间断地观察网络而且保持同步。这种特性使那些无论是运行在同一主机或不同主机上的软件组件,都可以进行互操作性。比如,用户可以在不限数量的用户界面上操作系统级的监视和控制,而且可以和网络的配置改变保持同步。安装者可以并行的工作以减少安装时间,维护工程师可以在网络上的任意一点访问所有的网络和网络服务,这就给终端用户和系统集成者提供了更大的功能性和生产效率。
LNS结构支持运行在任何平台上客户的网络工具。For Windows NT和for Windows95的LNS应用程序界面由LonWorks组件结构(LCA)定义。LCA是应用多种软件组件的LonWorks网络组件结构。LCA提供有标准网络工具内核程序的工放标准。为调用网络服务和LCA软件组件,LCA定义了标准Windows ActiveX服务界面和标准应用程序界面。
LNS技术为开发者提供了极大的方便性,正如许多行业使用软件正在趋于简单化,这是由于终端用户要求减少软件应用复杂性并且增加其功用性而出促进的,同时软件结构的进步支持了复杂应用程序的快速开发。对工具开发者来讲,LNS结构可被看作一整套核心服务程序,可以用来实现监视、控制、安装、维护和配置的网络工具。就象多任务制作系统提供一套服务程序允许多程序共同使用存储器资源一样,LNS结构提供共同访问LonWorks网络资源的工具。工具开发者同样可以把LNS作为基础,在此基础上开发自己的适用于其他工具的特定应用服务程序。
LNS对象使用客户服务器结构访问。客户向服务器提出网络服务请求,服务器执行服务并且在服务完成后通过客户机。标准网络服务由单一网络服务器提供,但专用应用服务要由应用服务器提供。从物理上讲,LNS处理标准网络服务、维护网络数据库、允许和协调对其服务和数据的多点访问。NSI提供到网络的物理连接、管理NSS和应用服务器的信息处理、实现对NSS和应用网络服务器的透明远程访问。
对多数用户,NSS是一个远程资源,通过网络对其进行透明远程访问执行所请求的服务。但是客户机同样可以在物理上与NSS相连的主机上运行。对客户机来讲,处于LNS网络服务层上的本地或远程主机没有什么区别。任何情况下,客户机通过LNS的API、NSI使客户机体会不到其间的差别,并且能在NSI和NSS之间进行透明地发送请求。图2所示为一个客户机/服务器主机的网络中,客户机、LNS的API、NSI和NSS的相互关系。
数据访问技术
数据库是信息的仓库,数据有几各不同的类型,本系统中利用了Microsoft的Access数据库,它是当今世界上最通用的数据库类型。利用Microsoft的ADO数据访问技术,它是应用层的编程接口,它通过ActiveX提供的COM接口访问数据,适合于各种客户机/服务器应用系统和基于Web的应用,尤其在一些脚本语言中访问数据库操作是ADO的主要优势。ADO是一套用自动化技术建立起来的对象层次结构,它比其他的一些对象模型如DAO(Data Access Object)、RDO(Remote Data Object)等具有更好的灵活性,使用更为方便,并且访问数据的效率更高。ADO的另外一个特性是使用简单,不仅因为它是一个面向高级用户的数据库接口,更因为她使用了一组简化的接口用以处理各种数据源。这两个特性使得ADO必将取代RDO和DAO,成为最终的应用层数据接口标准。图3示出了ADO对象和数据集合之间的关系。
在图3中,Connection对象与Command对象可以通过Execute方法产生Recordset对象,而Recordset对象可以通过Fields数据集合取得Field对象的内容;而Connection对象也可以通过Parameters数据集合产生Parameter对象,并利用Parameter对象将参数在应用程序数据库之间传递;Recordset对象也可以利用Source属性在程序中动态地指定Command对象。
基于Web的ASP技术
ASP(Active Service Pages,动态服务器主页)提供了一个服务器端(Server-Side)的Scripting环境,使你能够利用它建立和运行动态的、交互的、高效的网络服务器(Web Server)的应用程序。你只要运行普通的浏览器,不必担心你的浏览器能否运行设计出来的ASP程序,网络服务器会自动将ASP程序解释成标准的HTML(Hypertext Markup Language)格式的网页内容(Web Pages),在送到用户的浏览器端显示出来,这样你的浏览器只要能运行一般的HTML代码就可以浏览ASP所设计的网页了。
当我们在浏览器输入一个统一资源定位符(URL)时,浏览器解析URL,发送一个消息给域名服务器来把文本名称(如www.bjpu.edu.cn)转换与IP地址(207.84.25.23)。然后浏览器用此IP地址连接Web服务器并请求文件。一般地,这种请求针对一个指定文件。服务器的响应则取决于所请求的文件类型。如果文件是HTML文件(有.htm或.html扩展名),服务器简单读取文件内容,编码内容字符串,然后把编码后的字符串送回到请求浏览器。若是ASP文件,则是把服务器处理后的结果送回到浏览器。整个过程,从请求到应答,是客户端和服务器之间的事务。总是客户端启动事务,然后等待服务器返回响应,在服务器返回响应这个时刻事务才完成。
下面介绍一下系统实现的过程:
数据库访问与Web应用程序
LNS应用程序编制好后,为了实现通过浏览器直接监控LonWorks智能节点,需要构建一个Web服务器。存放节点信息和管理信息的数据库可以放在该服务器或与之相连的一台PC机上。从图4基本模型可以看出,LNS应用程序通过NSI网络接口卡管理和监控LonWorks网络上的各个智能节点,并将网络中各个节点的状态以及网络变量的情况与数据库交互。对于浏览器端的客户,则可以通过登录到Web服务器,利用ASP技术实现对Web服务器上数据库的远程访问,并对节点状态命令信息库进行修改,从而最终实现对智能节点设备的远程监控。
Web应用程序
Web应用程序主要是指浏览器与Web服务器的交互。这里,Web应用程序不同与Web站点。Web站点所提供的信息都是预先建立好的并且能够存储在静态的超文本标记语言(HTML)文件中。Web站点中的信息主要是从服务器传送到客户端。当用户必须输入信息时,服务器会提供一个一般的、固定的响应。在多个请求之间,服务器不会在意客户端所做的事情。客户端可以从一个地方跳跃到另外一个地方而不影响Web站点,因为每个页面都是一个独立的单元;Web是由分离的多组超文本文档组成。与此不同,Web应用程序用来提供由单个用户或一组用户专门检索的和格式化的信息。信息的传送是双向的——用户的输入或身份通常决定了浏览器上所显示的内容。在此,通过Microsoft推出的ASP这一服务器脚本规范,一方面利用ADO强大的数据访问能力实现与数据库的交互,另一方面通过ASP引擎使用户在浏览器端可以与Web应用程序进行交互。这样就可以通过改变数据实现对节点设备的远程监控。比如,不管用户在世界上的任何地点,只要他能够通过上网登录互该Web服务器,就可以方便地监视到远端设施的情况,还可以方便地控制远端设施,如照明、空调、安全防范等。
四.总结
Internet前所未有的发展,越来越多的人们把他们的生活和理想与Internet紧密地结合在一起,因为Internet特有的广域性和交互性已经在几乎所有的地方显示出了其强大的优势与活力。伴随着信息产业的迅速发展与人们生活水平的极大提高,社会的信息化与生活的多元化,也越来越成为人们追求的目标。无论你身在何处,只要通过WWW浏览器,就可以利用Internet互联网随时监控远方的情况。这些曾经看起来遥远的事情,正逐渐成为现实。
作为当今世界上最先进的现场总线之一,LonWorks技术以其独特的优点显示出巨大的发展潜力。特别是面向LonWorks的LNS技术的推出,为最终实现一体化集成的综合信息管理系统提供了一条非常重要的途径。在本系统中,利用LNS技术、数据库技术以及Web动态数据访问等技术为实现这一目标提供了一种可行的方法。