微型机与应用
MICROCOMPUTER & ITS APPLICATIONS
2000　No.19　No.1　P.46-48




基于LonWorks技术的远程监控系统的设计与实现
冯显勇　陈辉堂
摘 要： 一套采用LonWorks技术的电梯远程监控系统，讨论了LON节点的工作原理及其与MODEM之间的硬件连接和软件实现。比较了二种不同的实现方法在不同场合中的应用，进一步说明了现场总线的应用价值。 
关键词：远程监控 现场控制网络 串行通信电话网络计算机节点1ModemModem节点2节点3节点4
　　近几年，基于Lonworks技术的控制系统在许多领域都取得迅速发展。在很多应用性的工程中，为了管理上的方便，经常要对一些系统（特别是分散的、无人看守的小系统）的运行状态进行监控，实现集中管理和维护，以减少人力、物力，提高经济效益和工作效率。比如电梯公司或物业管理部门要对分散全市的一些电梯运行情况进行监控。对于分布在较大范围内的系统，用电话线连接实现远程监控在目前还是有着比较重要的意义。本文虽然只是具体介绍了电梯控制系统的监控，但对于类似的控制系统具有普遍的意义。
　　本监控系统的对象是采用LonWorks技术的电梯控制系统，LonWorks是美国Echelon公司1991年推出的一种典型的现场总线系统，又称局域操作网络（Local Operation Networks）。其LonTalks协议支持多种低成本的通信介质，如双绞线、电力线、同轴电缆等，这种电梯与PLC控制的电梯相比较，有着布线少、接线灵活、成本低等优点。尤其是基于LonWorks技术的各种设备的可互操作及通过LonWorks通道可链接智能大厦这2大优势，使其极具发展前途。
1 监控系统组成
　　根据应用系统的实际特点和需求，本系统考虑了2种不同的方案。第1种方案针对所要监测的控制系统为单个控制网络、现场无人值守的情况下，从经济和实用的角度出发，我们采用1个LonWorks节点来实现采集数据和通信的功能。系统的结构如图1所示。

图1 系统结构框图
　　现场部分由LON节点1和调制解调器（MODEM）及电梯控制系统组成，节点1的主要功能是采集需要监控的网络变量，并通过RS232接口与调制解调器连接，将网络变量通过MODEM发送给远端的计算机，或接收远端计算机的命令，从而实现远程监控。节点2、3、4组成电梯的控制系统，分别为外召、主控、轿箱3个控制节点，4个节点之间通过双绞线连接。之所以将数据采集和通信节点做成单独的节点，主要是为应用于别的控制系统，只要在原有的LonWorks控制网络上加1个节点即可。远端只要有计算机和MODEM即可。这种结构的特点是实现比较方便，工作原理和系统结构比较简单，成本比较低。而且通过比较发现，这种方法采集数据的速度是令人满意的，对于MODEM和电话线路的通信质量的要求不高。利用LonWorks的特点，在节点1中定义一些输入型的网络变量，用LonWorks的开发工具将节点1与控制系统中相应的网络变量连接起来，当控制系统中的网络变量发生变化时，节点1中与其相连接的网络变量也会自动更新，同时触发1个事件，所以用这种方法监测到的网络变量的变化速度快，而且简单可靠。
　　第2种方案针对同时监控多个对象（网络），在现场（附近）需要进行监控的情况下，与第1种方案比较，区别主要在现场的数据采集方法上。现场的数据采集利用计算机和SLTA／2网络适配器或PCLTA网卡完成。首先利用专用的网络适配器和软件将控制网络上的网络变量采集到计算机上，通过动态数据交换（DDE）将数据传给通信程序，再由通信程序实现和远程计算机之间的数据交换。这种方法因为在现场要配置计算机和网络适配器，若只监控1个较小的系统成本相对比较昂贵，但它有一个较大的优点：可以对已有的控制系统不做任何改动。因此比较适合于对已经投入应用的系统进行监控，或者对系统进行临时的监控。而且利用1台计算机就可以同时监控多个系统，比如对1个住宅小区的多部电梯进行监控，所以也具有一定的应用价值。这种方案的结构与上面的结构图相比，只要将图1中的节点1用计算机和网络适配器代替即可。计算机和LonWorks网络以及MODEM之间的连接是很方便的。
2 系统的硬件实现
　　在第1种方案中，还要解决LON节点1与MODEM之间的数据通信问题。所以必须了解RS232的接口信号，在常用的9个信号中，RTS／CTS请求应答联络信号是用于半双工MODEM系统中作送方式和接收方式的切换，在双工方式系统中，因配置双向通道故不需RTS／CTS联络信号。为了使节点和MODEM之间的通信简化，这里只用了RS232接口的5个接口信号，如表1所示。
表1 RS232引脚信号

CD Carrier Detect数据载波侦测
RXD Receive Data接收数据
TXD Transmit Data发送数据
DTR Data Terminate Ready数据终端准备好
SG Signal Set Ready地线

　　因现场无人值守，接MODEM的DTR信号应该一直为有效（高电平），使MODEM随时能够进行自动应答和拨号的操作。MODEM的CD引脚接节点1的一个I／O口用于判断MODEM之间是否建立了载波链路。由于神经元芯片的I／O口的电平为TTL电平，还必须用专用芯片如MAXIM202进行TTL电平到RS232电平的转化。MODEM的RXD，TXD经电平转换分别接神经元芯片的2个I／O口。（本系统采用的3150神经元芯片、I08和I010可分别定义成输入、输出串行口），3150的串行通信是半双工方式，要用一片译码器进行输入、输出的选通。节点1和MODEM之间的电路如图2所示。 

图2 节点1与MODEM的硬件连接示意图
3 监控软件设计
　　软件实现分为二部分，现场节点数据采集、通信和远端计算机通信部分和监控界面部分。LonWorks提供了Neuron C的编译器，Neuron C是1种面向对象的语言，语法与C语言类似，但可以对I／O口和网络变量的变化以事件触发方式进行处理，极大地方便了软件的开发。只要根据用户的需要对各种事件进行处理，就可以实现控制、通信等各种功能。从监控的要求出发，只要实时监控系统中能反映电梯运行的一些网络变量。对于整个系统我们要求现场和远端主机都应具备双向通信功能，即应答和呼叫的功能，所以双方的MODEM都要设置成自动应答方式。远端计算机拨通现场的电话后，节点1首先将当前的网络变量值发送过来，此后便随着系统的运行而实时地进行更新。远端主机要停止监测只需挂断电话即可。节点1还要具备自动拨号的功能，在检测到控制系统的故障信号（比如相应的网络变量或I／O口发生变化时）时，应该通过给MODEM发送AT命令，拨通远端主机的电话进行报警。在系统正常运行的情况下，各状态信号只有在双方建立连接后，才会将数据发送出去，整个节点的工作流程如图3所示。
　
图3 节点程序流程
　　在reset（ ）复位程序中包括对MODEM的初始化和网络变量、I／O口状态的初始化。此后，系统等待事件的发生，如果此时远端计算机进行拨号，拨通后首先要进行用户的口令检查，以避免他人误拨进入系统，一旦建立了连接，则连接MODEM的CD信号脚的I／O口将变为高电平，同时触发io＿changes（ ）事件，在此事件的处理过程中首先调用poll（ ）内部函数对网络变量进行轮询，并将网络变量的当前值发送出去。然后每当有网络变量发生变化时，会触发nv＿update＿occurs（ ）事件，在本事件中首先判断CD是否有效，若有效则将该网络变量编码并发送给MODEM，再通过电话线送给远端计算机。如果系统发生故障，则相应的网络变量值会发生变化，不同的值代表不同类型的故障，此时若还没有建立载波链路，程序应调用拨号子程序dial（ ）拨通设定的远端计算机电话号码。在一定时间内若没有拨通，还要进行重拨。
　　远端计算机的数据是通过串口进入的，软件的设计与控制系统并无直接关系，所以其编程是相对独立的，只需对串口通信进行处理，利用DELPHI中的VBX控件实现Tcomm对串口的通信是非常方便的。有数据进入指定COM口的缓冲区时，会触发1个通信事件，收到数据后，首先要判断信息的类别，区分是控制信号还是要监测的数据，然后分别进行处理。值得注意的是，通过MODEM收发数据，因为数据格式和长度不固定，要采取一定的措施保证数据的有效传输和接收。对监控的数据的处理相对比较简单，只需按照电梯的工作原理和各种信号的逻辑关系用图形动态模拟或用文字加以说明。对故障的发生还要进行记录，包括故障的类型、发生时间、次数等，以便为日后维修提供历史数据。用户也可以通过MODEM向控制系统发送数据以控制网络的运行，但从安全性的角度出发，本系统中并不向电梯发送控制命令，以免误操作引起系统故障。
　　对于第2种方案，即现场用计算机进行数据采集，其工作原理类似。计算机通过网络适配器接到LonWorks网络上，系统的客户程序是采用Delphi编写的，主要是因为Delphi编写的软件具有执行效率比较高的优点，用它可以很方便地实现应用程序与底层数据采集系统之间的动态数据交换，底层的数据采集要利用LonWorks的开发工具：LonManagerTM DDE Server软件，DDE Server主要的功能就是实现Windows应用程序与LonWorks控制网络之间的通信，实现Windows应用程序和控制网络之间的动态数据交换。DDE Server可以监测LonWorks网络上的网络变量或消息及其变化。利用DELPHI的DDE编程技术，将DDE Server作为服务程序，指定网络变量（netvar）为主题，项目则为具体的网络变量名，就可以实现和DDE Server之间的联系，收集数据或发送命令。上位机的软件比较简单，只要对收到的数据进行判别、处理，再运用各种方法直观地显示出来（用DELPHI丰富的控件或者自己编制控件进行模拟显示非常方便）。程序的流程和上述一样，当然用计算机实现串口通信、与MODEM之间的数据传输操作更为方便。功能上也可以做得更为完善，只是由于数据的采集是通过动态数据交换得到的，在数据的更新速度上会有一些不足。
　　本系统采用了LonWorks现场总线控制系统，由于其对等通信、无中心控制，在进行系统设计时解决数据通信问题非常轻松，而且由于其智能分散控制方式等优点，大大降低了调试难度，提高了系统的开发和设计的周期，实验表明用这种方法实现远程监控原理简单，工作可靠，具有较强的实用价值。
冯显勇（上海同济大学电气工程系200092）
陈辉堂（上海同济大学电气工程系200092）
参考文献
1，深圳网通软件有限公司．MODEM应用技术．北京：电子工业出版社
2，汪之松，陈辉堂，蒋平．基于LONWORKS技术的电梯系统．1998上海市自动化学会、化学化工学会专业委员会学术年会论文摘要
3，ECHELON．NEUCRON C Reference Guide．ECHELON，1995
4，姚庭宝．精通DELPHI．北京：电子工业出版社
5，ECHELON．LonManager DDE Server User＇s Guide
收稿日期：1999－08－11
