>
首页 » 技术文章 » 基于LonWorks的管控一体化系统的设计和实现

基于LonWorks的管控一体化系统的设计和实现

作者:北京邮电大学信息安全中心  时间:2003-06-12 00:00  来源:本站原创
摘 要: 本文详细介绍了“自动抄表及收缴费管理系统”的设计和实现过程,并以此为基础讨论了基于LonWorks的管控一体MIS系统的设计和实现问题,给出了完整的解决方案。

关键词:LonWorks;管控一体;自动抄表

以现场总线为基础的
管控一体化系统
现场总线是一种新型的以智能传感器、控制、计算机、数字通信、网络为主要内容的综合技术。一方面,它把单个分散的测量控制设备变成网络节点,以现场总线为纽带,连接成可以相互沟通信息、共同完成自控任务控制网络系统,另一方面,它有和计算机系统相互通信的协议标准,可以和上层的管理信息系统进行集成和互操作。图1表示了基于LonWorks现场总线的管控一体化系统的结构。
(1)现场控制层: 由传感器、执行器等智能仪表构成。
(2)过程控制层:完成基于GUI的监控功能。
(3)信息管理层:完成信息管理、生产决策等功能。

管控一体化系统设计实例
为了对管控一体化系统的设计和实现进行实践性的研究,我们设计了自动抄表和收缴费信息管理系统。
系统概述
系统采用TCP/IP(TCP/IP协议)技术和LonWorks控制网络技术(LONTALK协议),使得网络拓扑结构具有良好的可靠性和可扩展性。软件采用动态数据交换技术(DDE)和Windows可视化编程技术,实现了实时监控和信息管理二者的集成和融合,并保证了软件的可扩展性。整个系统的结构如图2所示。
整个系统包括:
TCP/IP网络数据交换机;数据服务器;自动抄表服务器;LonWorks控制网络路由器;抄表控制器;远传表。
抄表控制器的设计和实现
我们利用LonBuilder开发工具进行了抄表控制器的设计,包括硬件和软件两部分,硬件以Neuron芯片为核心元件,软件采用Neuron C语言进行编制。抄表控制器能够对电表输出的数字脉冲进行实时采集,同时将脉冲数通过LonWorks网络传输给上层的监控软件,另外还可以接受监控软件的命令对电表进行实时的关断控制。

图1 基于LonWorks的管控一体化系统的结构

图2 自动抄表及收缴费管理系统结构

图3 自动抄表控制器的硬件接口图

硬件设计
Neuron芯片我们选用MC143150,LonWorks收发器选用FTT-10A,LonWorks通信介质选用双绞线。利用MC143150的通讯口(CP0——CP4)和FTT-10A相连完成与LonWorks网络的通信,利用MC143150的I/O口(I/O0——I/O10)与远传表和关断开关相连,完成数据采集和关断控制。图3为节点的硬件接口框图。
软件设计
LonWorks抄表控制器软件的主要功能是:对远传电表的输出脉冲进行实时采集和计数,并根据监控程序传来的关断命令关断相应电度表的用电电路。软件中使用了网络变量、I/O对象、自定义事件等,其中的关键点是:
?网络变量和EEPROM存储类型数据
抄表值输出网络变量NVO_DATA:这是一个用户自定义的结构类型的输出网络变量,它用来存放与此抄表控制器相连接的最多4个电度表的脉冲输出累加值。
关断控制器状态网络变量NVI_STATE:这是一个整型的标准网络变量,它的值反映了四路关断控制开关Ki(i=1,2,3,4)的状态。NVI_STATE表示为二进制数为0000N4N3N2N1,Ki的状态对应NVI_STATE的第i位(Ni) 。当Ni为0时表示Ki 断开,相应的用电电路断开,当N1为1时表示Ki 关合,相应的用电电路通畅。可以通过此状态的变化进行用电电路的关断控制。
两个EEPROM存储类型的数据:一个是用于存储电脉冲累计值的unsigned 数组sum,另一个是用于保存关断状态的整数变量state。将它们放入EEPROM存储器中,而不是放入RAM中,这样当节点掉电时,其值不会丢失。
?I/O对象
IO0-IO3被定义为leveldetect I/O对象,用于检测远传电表发来的脉冲,该对象可以以最小间隔200ns的频率将外部TTL电平脉冲的下降沿锁定。当检测到脉冲的下降沿时,I/O对象的值被设定为1,可以用when语句对该锁定值进行采样,采样的同时清除该值。
IO4——IO7被定义为bit I/O对象,用于发出关断命令。
?系统事件和自定义事件
Neuron C语言采用事件驱动机制,当事件被用户操作或系统命令触发时,相应的事件程序将被执行。
系统reset事件:当节点上电或芯片复位时将首先触发此事件,程序中用此事件进行初始化工作。
脉冲采集事件:当I/O0—I/O3的数据位(dat—data4)由0变为1时将触发该事件,用于脉冲的检测并进行脉冲值的累加。
关断事件:当NVI_STATE网络变量有变化时,意味着有关断命令到来,这时将触发关断事件,它将根据NVI_STATE的值置关断开关状态。
定时器事件:程序定义了一个秒计时器,用于定时的将采集数据存入EEPROM中。
图4为软件流程。

图4 抄表控制器软件流程

监控程序设计
要对底层远传电表进行监控,需要具有DDE功能的Windows应用程序和支持LonTalk数据格式的DDE Server程序,我们选用 C++ Builder 5.0作为监控程序的开发语言,应用LonManager DDE Sever完成监控程序程序和LonWorks网络的底层通信。使用C++ Builder的DDE Seesion组件(DdeClientConv,DdeClientItem,DdeServerConv和DdeServerItem),我们进行了监控程序设计,它可以实时读取和显示用户用电情况,并可根据用电用户的交费情况计算资金结余情况,下传关断命令。
下面是监控程序设计时的几个关键点。
?建立DDE会话:使用DdeClientConv组件可以建立Windows应用程序和DDE Server的会话。因为监控程序和底层抄表节点的通讯是通过LonTalk网络变量,所以建立DDE会话的话题(Topic)是“netvar”,对应的连接函数调用形式为SetLink("lmsrvr1","netvar")。连接建立后再用函数OpenLink()打开会话,这样DDE会话初始化工作便完成了。
?脉冲值读取和用电量的换算:当DDE连接建立以后就可以实时进行数据的读取了,程序通过查询的方式对抄表节点输出的电量脉冲累加值进行读取,函数调用形式为:DdeClientConv1->RequestData(cn.NVO_DATA)。然后根据电表的脉冲常数(PlusConst)进行用电量的换算,将折合后的用电量存放到数组Count中。
?欠费关断功能:从抄表节点读出用电量后和用电用户的预存用电量进行比较,如果两者的差值大于给定值(MaxCredit),将对关断网络变量NVI_STATE进行修改,即向抄表节点下达关断命令,具体的函数调用形式为:PokeData (cn.NVI_STATE, IntToStr(New_State))
?用电情况的显示和实时更新:用电情况分为“个表监控”和“全表监控”两种方式在不同表单页上同步显示出来。同时为了实时更新数据,程序中定义了一个计时器组件,当计时时间间隔(可在程序中随时设定)到时,将进行脉冲的重新读取、用电量的换算和关断状态重新指定等。另外,在任何时间都可以进行手动的数据更新操作。
自动抄表及收缴费管理系统的设计和实现
我们在监控程序的基础上,用C++ Builder 5.0作为开发工具,利用它提供的数据库支持功能进行了“自动抄表及收缴费管理系统”的设计和实现。它除了可以完成实时监控功能外,还可以进行用电数据的抄收、查询、打印等信息管理功能。
运用C++ Builde的BDE Administrator工具,我们为整个系统建立了一个别名为CheckBD的数据库,数据库中主要含有以下数据表:
?用电用户帐户数据表Account.dbf:存储用户基本信息和帐户信息。
?用电用户用电数据表Check.dbf:存储用户的实时用电量。
?用电基本信息数据表Info.dbf:存储电价、利率基本信息等。
?系统合法用户数据表SysytemUser.dbf:存储系统合法的操作员和管理员信息。
?系统操作记录数据表Operation.dbf:存储系统每次的使用记录。
围绕CheckDB数据库,充分应用C++ Builder提供的数据库组件,包括数据访问组件(Data Access)、数据源组件(Data Source)和数据感知组件(Data Aware)等,就可以实现此应用系统。它除包含了一般MIS系统的基本功能外,还集成了对远传电表的监控和抄收等控制功能。

管控一体化系统开发设计的一般方法
通过“自动抄表及收缴费管理系统”这一实例的设计和实现过程,我们探索出了一套基于LonWorks现场总线技术的管控一体化系统开发设计的一般方法和步骤,现总结如下:
(1)运用Neuron神经元芯片及其上的专用语言Neuron C进行Lonworks网络控制节点的设计,实现现场控制层的功能。
(2)利用DDE技术和支持DDE的高级语言进行Windows下GUI监控程序的设计,完成LonWorks控制信息向信息管理系统的转换和传递,实现过程监控层的功能。
(3)在信息管理层,利用数据库技

相关推荐

基于双口RAM的LonWorks智能通信节点设计

LonWorks  通信节点  2011-08-22

LonWorks技术在测长室温度控制中的应用

LonWorks  温度控制  2009-06-07

LONWORKS技术简介及推广

STEC2000控制器在LonWorks总线系统中应用

基于LonWorks技术的远程抄表系统

LonWorks及其在智能小区中的应用

在线研讨会
焦点