论文部分内容阅读
摘 要:本文提出了一种基于LonWorks技术的智能照明系统设计方案,并利用MiniEVK工具对方案进行了开发。测试结果表明,系统通信效果良好、互操作性强,满足了设计要求。
关键词:电力线载波通信;LonWorks技术;Mini EVK;电力线智能收发器;照明系统
中图分类号:TP18文献标识码:A
Design of Smart Lighting System Based on LonWorks Technology
WANG Zhen-chao, MA Jin-long,XUE Wen-ling,GAO Ru-bo
(College of Electronic and Information Engineering, Hebei University,Hebei Baoding 071002)
Key words: Graph coloring problem;PSO;Memory mechanism
电力线载波通信(Power Line Communication,简称PLC)是一门古老而又年轻的技术。利用中高压电[1]力线载波进行通信在电力系统已有几十年的历史,而低压PLC技术直到上个世纪九十年代才引起了广泛重视。低压PLC技术是利用现有的低压配电线路(220V或380V交流供电线路)作为通信介质,实现数据、话音、图像等综合业务传输的通信技术,主要应用于楼宇及住宅小区管理自动化,家庭高速数据网络,家庭自动化网络,自动抄表等领域,不需新增布线,应用前景广阔,被国外媒体称为最后一座未被开掘的金山[1]。但是,低压PLC通信环境恶劣,信道的传输特性随地点、时间剧烈变化且存在大量强脉冲宽带噪声和多径干扰,是一种很差的通信媒介,曾被认为是载波通信的禁区,所以利用L-PLC通信对组网技术有特定要求[2]。美国Echelon公司推出的LonWorks技术是利用PLC组网的特色技术,目前在我国的应用效果最理想。但是它的开发成本太高,难以在民用市场领域大规模推广[3]。本文提出一种智能照明系统设计方案,并利用低成本的Mini EVK工具进行了开发,有效降低了成本。
1 Mini EVK工具
Mini EVK评估工具是Echelon公司最新推出的低成本的评估LonWorks技术的工具, 既可以用来评估LonWorks技术,又可以用来开发LonWorks控制网络的设备。Mini EVK由四个硬件部分组成:评估板,输入/输出(I/O)板,供电电源和USB网络接口卡。每一个套件中,包括两个评估板,一个是基于PL3120核心的智能收发器,片上包括flash存储器、RAM、收发器和三个8位的CPU;一个是基于PL3150核心的智能收发器,支持外部存储器扩展,配置有64K字节的外部Flash存储器。Mini EVK将配置灵活的硬件平台和示例Neuron C程序以及Neuron C编译器有机地结合在一起。用户可以就评估工具所提供的硬件搭建一个电力线的控制网络的评估环境,继而可以编写、编译和下载自己设计的新应用程序[4]。
普通智能节点开发包括六个步骤[5]:1)确定节点的硬件;2)建立节点的应用程序;3)对节点存储空间编程;4)安装节点;5)装载节点;6)测试节点。以开发智能照明系统节点为例,使用MiniEVK工具做如下工作[4]:1)建立一个Neuron C应用程序映像,调用ISI库文件;2)设置硬件模板和程序ID;3)添加用户应用程序代码编译;4)装载应用程序映像到硬件装置;5)测试装置性能。
2 LonWorks智能照明系统开发过程
本智能照明系统由上位管理计算机、网络适配器以及若干个智能节点组成,使用LonWorks现场总线作为控制网络把各节点连接成一个分布式智能控制系统。智能节点采用PL3150智能收发器为核心设计而成。在此网络中,PC机通过网络适配器与LonWorks网络进行连接,用于整个系统的现场节点进行集中监控管理。现场各智能节点之间可以通过电力线网络实现互操作。
本系统采用ISI技术组网。ISI是一个应用层协议,它的组网技术称为可互操作的自安装技术,是一种即插即用的组网技术。它允许LonWorks设备自动地或通过按下按钮即可实现自安装,可以随时添加或者删除网络内的设备节点。设备节点通过内置的电力线载波技术与其他节点进行信息交换,实现节点间的互操作。当使用ISI的时候,不需要使用网络管理工具安装设备或管理网络的配置,这样对于相对较小的网络降低了开发成本。当需要开发大型网络时,此网络可以转换成由管理工具管理的网络[6]。
2.1智能节点硬件设计
节点选用Echelon公司的PL3150电力线智能收发器芯片为核心进行设计。PL 3150智能收发器将一个Neuron处理器核心和一个电力线收发器集成在一起。本系统中,PL 3150外接的Flash存储器AT29C51,能够在掉电的情况下保证数据不丢失,在上电的情况下还能够对它进行有限次数的数据写操作。PL3150提供的12个I/O管脚可以配置成38种预定义标准输入/输出模式[7]。本系统的I/O设计根据实际需要用到了移位(Bitshift)输出对象输入/输出对象模式。
本节点时钟采用10MHz。为了能有效利用有限的I/O口,采用74HC595和74HC165将I/O进行了扩展。74HC595是串行输入并行输出的转换芯片,接受来自PL3150芯片的输入来控制外扩的8个LED的状态。74HC165是并行输入串行输出的转换芯片,接受按键的输入,将这一输入串行地输入到PL3150芯片中。PL3150芯片是中央处理器,进行按键与LED的对应点亮。它可以模拟各个楼层的灯,利用LonWorks网络控制,这样整个楼宇的照明系统可以统一控制,同时又能依照各个房间的需求而自己控制,节约了能源。
2.2.智能节点软件设计
Neuron C是以ANSI C为基础专门为Neuron芯片设计的一种程序设计语言。它在标准C的基础上进行了一些自然扩展,直接支持Neuron芯片的固化软件,删除了标准C中一些不需要的函数库,增加了一些访问特定I/O对象所需要的内部函数,并为分布式LonWorks环境提供了特定的对象集合及访问这些对象的外部环境,还提供了内部类型检查,是一个开发LonWorks应用的有力工具[8]。
(1) 网络变量
此节点的软件部分主要实现按键控制LED的亮灭的状态,本节点的按键负责对应的LED的熄灭状态,这个过程由网络变量(SNVTswitch)实现。本节点中所需要的网络变量以及声明如下:
SFPTclosedLoopActuator: //LED功能模块
network input SNVT_switch nviLight;
network output SNVT_switch bind_info(unackd) nvoLightFb;
SFPTclosedLoopSensor: //按键功能块
network input SNVT_switch nviSwitchFb;
network output SNVT_switch nvoSwitch;
(2) I/O对象设计
硬件设计上利用串并转换芯片74HC595和并串转换芯片74HC165将IO进行了扩展,在设计中采用移位(Bitshift)输入/输出对象模式,在程序中定义如下:
IO_1 output bit ioLEDLd = 1;
IO_2 output bitshift numbits(8) ioLEDs;
//74HC5958bit串并转换器。IO2(时钟),IO3(串行数据输入端),IO1(并行输出控制端)
IO_4 input bitshift numbits(8) clockedge(-) ioButtons;
IO_6 output bit ioButtonLd = 1;
//74HC1658bit并串转换缓冲器。IO4(时钟),IO5(数据),IO6(低电平获得并行输入)
(3) 任务
每个NeuronC程序具有多个独立的调度任务,一个任务是在事件驱动的when语句之后的一系列命令语句,且事件必须在任务执行之前发生。本节点主要模块的应用程序代码如下。
74HC595程序代码:
io_out(ioLEDs, ~LEDs);// ~LEDs表示传输的数据,即LED的状态
io_out(ioLEDLd, 0);
io_out(ioLEDLd, 1);//上升沿将数据送到缓冲,控制并行输出
74HC165程序代码:
io_out(ioButtonLd, 0);
io_out(ioButtonLd, 1);//控制并行输入
Buttons &= (unsigned)io_in(ioButtons);//HC165串行输出到Neuron芯片
3 系统现场评估测试
本测试采用Mini EVK工具所带的PL3120和PL3150评估板,用这两个评估板模拟现场两个节点,进行组网。利用PL3150节点的开关就控制PL3120节点对应的小灯亮灭。
测试地点选在河北大学电信学院办公楼的303室,办公室电力线负荷有电脑10台、中央空调、日光灯20支,电扇3台和打印机2台等用电设备,测试期间负荷均处于工作状态。PL3150评估板作为控制节点,PL3120评估板作为受控节点在303室通过电力线插座进入电力线网络。我们选定9:00、15:00和21:00分别进行测试,每次测试100次,通信成功率达到100%。然后,加大测试距离,两个评估板分别在303室和305室接入电力线网络,两室直线距离约30米,电力线长度估计约200米,中间间隔2个办公室,各室电力线负荷大致相同。做测试100次,通信成功率为100%。结果表明两节点在低压电力线环境下可以完成既定的控制任务,通信效果良好。
4 结束语
本文提出的基于LonWorks技术的智能照明系统技术方案,实现了整个系统的智能节点的互操作和即插即用功能;采用Mini EVK套件进行系统开发,降低了开发成本;在电力线环境下对系统进行了测试评估,通信效果良好,互操作性强,满足了设计要求。
参考文献:
[1]汤效军.电力线载波通信的发展及特点[J].电力系统通信,2003,1,47-51
[2]Wang Zhenchao,Zhang Junlin,Shi Jie,et al.The Channel Characteristics of Low-Voltage Power Line Communication Affected by Electric Power Loads[C]. International Conference on Engineering Education(ICEE) 2006,YongPyong Resort,Korea,2006.
[3] 阳宪惠.工业数据通信与控制网络 [M].北京:清华大学出版社,2003:325-389
[4] EehelonCorp.Mini EVK User's Guide[M],Revision 3
[5] 马莉.智能控制与Lon网络开发技术[M].北京:北京航空航天大学出版社,2003.2,136-140
[6] EehelonCorp.ISI Protocol Specification [M],Revision 3
[7] EehelonCorp.PL 3120 and PL 3150 Smart TransceiversData Book[M]
[8]凌志浩编著,从神经元芯片到控制网络,北京:北京航空航天大学出版社,2002.2,34-53
基金项目:中小服装制造企业综合信息管理系统
河北省科技攻关计划项目(072135190)
关键词:电力线载波通信;LonWorks技术;Mini EVK;电力线智能收发器;照明系统
中图分类号:TP18文献标识码:A
Design of Smart Lighting System Based on LonWorks Technology
WANG Zhen-chao, MA Jin-long,XUE Wen-ling,GAO Ru-bo
(College of Electronic and Information Engineering, Hebei University,Hebei Baoding 071002)
Key words: Graph coloring problem;PSO;Memory mechanism
电力线载波通信(Power Line Communication,简称PLC)是一门古老而又年轻的技术。利用中高压电[1]力线载波进行通信在电力系统已有几十年的历史,而低压PLC技术直到上个世纪九十年代才引起了广泛重视。低压PLC技术是利用现有的低压配电线路(220V或380V交流供电线路)作为通信介质,实现数据、话音、图像等综合业务传输的通信技术,主要应用于楼宇及住宅小区管理自动化,家庭高速数据网络,家庭自动化网络,自动抄表等领域,不需新增布线,应用前景广阔,被国外媒体称为最后一座未被开掘的金山[1]。但是,低压PLC通信环境恶劣,信道的传输特性随地点、时间剧烈变化且存在大量强脉冲宽带噪声和多径干扰,是一种很差的通信媒介,曾被认为是载波通信的禁区,所以利用L-PLC通信对组网技术有特定要求[2]。美国Echelon公司推出的LonWorks技术是利用PLC组网的特色技术,目前在我国的应用效果最理想。但是它的开发成本太高,难以在民用市场领域大规模推广[3]。本文提出一种智能照明系统设计方案,并利用低成本的Mini EVK工具进行了开发,有效降低了成本。
1 Mini EVK工具
Mini EVK评估工具是Echelon公司最新推出的低成本的评估LonWorks技术的工具, 既可以用来评估LonWorks技术,又可以用来开发LonWorks控制网络的设备。Mini EVK由四个硬件部分组成:评估板,输入/输出(I/O)板,供电电源和USB网络接口卡。每一个套件中,包括两个评估板,一个是基于PL3120核心的智能收发器,片上包括flash存储器、RAM、收发器和三个8位的CPU;一个是基于PL3150核心的智能收发器,支持外部存储器扩展,配置有64K字节的外部Flash存储器。Mini EVK将配置灵活的硬件平台和示例Neuron C程序以及Neuron C编译器有机地结合在一起。用户可以就评估工具所提供的硬件搭建一个电力线的控制网络的评估环境,继而可以编写、编译和下载自己设计的新应用程序[4]。
普通智能节点开发包括六个步骤[5]:1)确定节点的硬件;2)建立节点的应用程序;3)对节点存储空间编程;4)安装节点;5)装载节点;6)测试节点。以开发智能照明系统节点为例,使用MiniEVK工具做如下工作[4]:1)建立一个Neuron C应用程序映像,调用ISI库文件;2)设置硬件模板和程序ID;3)添加用户应用程序代码编译;4)装载应用程序映像到硬件装置;5)测试装置性能。
2 LonWorks智能照明系统开发过程
本智能照明系统由上位管理计算机、网络适配器以及若干个智能节点组成,使用LonWorks现场总线作为控制网络把各节点连接成一个分布式智能控制系统。智能节点采用PL3150智能收发器为核心设计而成。在此网络中,PC机通过网络适配器与LonWorks网络进行连接,用于整个系统的现场节点进行集中监控管理。现场各智能节点之间可以通过电力线网络实现互操作。
本系统采用ISI技术组网。ISI是一个应用层协议,它的组网技术称为可互操作的自安装技术,是一种即插即用的组网技术。它允许LonWorks设备自动地或通过按下按钮即可实现自安装,可以随时添加或者删除网络内的设备节点。设备节点通过内置的电力线载波技术与其他节点进行信息交换,实现节点间的互操作。当使用ISI的时候,不需要使用网络管理工具安装设备或管理网络的配置,这样对于相对较小的网络降低了开发成本。当需要开发大型网络时,此网络可以转换成由管理工具管理的网络[6]。
2.1智能节点硬件设计
节点选用Echelon公司的PL3150电力线智能收发器芯片为核心进行设计。PL 3150智能收发器将一个Neuron处理器核心和一个电力线收发器集成在一起。本系统中,PL 3150外接的Flash存储器AT29C51,能够在掉电的情况下保证数据不丢失,在上电的情况下还能够对它进行有限次数的数据写操作。PL3150提供的12个I/O管脚可以配置成38种预定义标准输入/输出模式[7]。本系统的I/O设计根据实际需要用到了移位(Bitshift)输出对象输入/输出对象模式。
本节点时钟采用10MHz。为了能有效利用有限的I/O口,采用74HC595和74HC165将I/O进行了扩展。74HC595是串行输入并行输出的转换芯片,接受来自PL3150芯片的输入来控制外扩的8个LED的状态。74HC165是并行输入串行输出的转换芯片,接受按键的输入,将这一输入串行地输入到PL3150芯片中。PL3150芯片是中央处理器,进行按键与LED的对应点亮。它可以模拟各个楼层的灯,利用LonWorks网络控制,这样整个楼宇的照明系统可以统一控制,同时又能依照各个房间的需求而自己控制,节约了能源。
2.2.智能节点软件设计
Neuron C是以ANSI C为基础专门为Neuron芯片设计的一种程序设计语言。它在标准C的基础上进行了一些自然扩展,直接支持Neuron芯片的固化软件,删除了标准C中一些不需要的函数库,增加了一些访问特定I/O对象所需要的内部函数,并为分布式LonWorks环境提供了特定的对象集合及访问这些对象的外部环境,还提供了内部类型检查,是一个开发LonWorks应用的有力工具[8]。
(1) 网络变量
此节点的软件部分主要实现按键控制LED的亮灭的状态,本节点的按键负责对应的LED的熄灭状态,这个过程由网络变量(SNVTswitch)实现。本节点中所需要的网络变量以及声明如下:
SFPTclosedLoopActuator: //LED功能模块
network input SNVT_switch nviLight;
network output SNVT_switch bind_info(unackd) nvoLightFb;
SFPTclosedLoopSensor: //按键功能块
network input SNVT_switch nviSwitchFb;
network output SNVT_switch nvoSwitch;
(2) I/O对象设计
硬件设计上利用串并转换芯片74HC595和并串转换芯片74HC165将IO进行了扩展,在设计中采用移位(Bitshift)输入/输出对象模式,在程序中定义如下:
IO_1 output bit ioLEDLd = 1;
IO_2 output bitshift numbits(8) ioLEDs;
//74HC5958bit串并转换器。IO2(时钟),IO3(串行数据输入端),IO1(并行输出控制端)
IO_4 input bitshift numbits(8) clockedge(-) ioButtons;
IO_6 output bit ioButtonLd = 1;
//74HC1658bit并串转换缓冲器。IO4(时钟),IO5(数据),IO6(低电平获得并行输入)
(3) 任务
每个NeuronC程序具有多个独立的调度任务,一个任务是在事件驱动的when语句之后的一系列命令语句,且事件必须在任务执行之前发生。本节点主要模块的应用程序代码如下。
74HC595程序代码:
io_out(ioLEDs, ~LEDs);// ~LEDs表示传输的数据,即LED的状态
io_out(ioLEDLd, 0);
io_out(ioLEDLd, 1);//上升沿将数据送到缓冲,控制并行输出
74HC165程序代码:
io_out(ioButtonLd, 0);
io_out(ioButtonLd, 1);//控制并行输入
Buttons &= (unsigned)io_in(ioButtons);//HC165串行输出到Neuron芯片
3 系统现场评估测试
本测试采用Mini EVK工具所带的PL3120和PL3150评估板,用这两个评估板模拟现场两个节点,进行组网。利用PL3150节点的开关就控制PL3120节点对应的小灯亮灭。
测试地点选在河北大学电信学院办公楼的303室,办公室电力线负荷有电脑10台、中央空调、日光灯20支,电扇3台和打印机2台等用电设备,测试期间负荷均处于工作状态。PL3150评估板作为控制节点,PL3120评估板作为受控节点在303室通过电力线插座进入电力线网络。我们选定9:00、15:00和21:00分别进行测试,每次测试100次,通信成功率达到100%。然后,加大测试距离,两个评估板分别在303室和305室接入电力线网络,两室直线距离约30米,电力线长度估计约200米,中间间隔2个办公室,各室电力线负荷大致相同。做测试100次,通信成功率为100%。结果表明两节点在低压电力线环境下可以完成既定的控制任务,通信效果良好。
4 结束语
本文提出的基于LonWorks技术的智能照明系统技术方案,实现了整个系统的智能节点的互操作和即插即用功能;采用Mini EVK套件进行系统开发,降低了开发成本;在电力线环境下对系统进行了测试评估,通信效果良好,互操作性强,满足了设计要求。
参考文献:
[1]汤效军.电力线载波通信的发展及特点[J].电力系统通信,2003,1,47-51
[2]Wang Zhenchao,Zhang Junlin,Shi Jie,et al.The Channel Characteristics of Low-Voltage Power Line Communication Affected by Electric Power Loads[C]. International Conference on Engineering Education(ICEE) 2006,YongPyong Resort,Korea,2006.
[3] 阳宪惠.工业数据通信与控制网络 [M].北京:清华大学出版社,2003:325-389
[4] EehelonCorp.Mini EVK User's Guide[M],Revision 3
[5] 马莉.智能控制与Lon网络开发技术[M].北京:北京航空航天大学出版社,2003.2,136-140
[6] EehelonCorp.ISI Protocol Specification [M],Revision 3
[7] EehelonCorp.PL 3120 and PL 3150 Smart TransceiversData Book[M]
[8]凌志浩编著,从神经元芯片到控制网络,北京:北京航空航天大学出版社,2002.2,34-53
基金项目:中小服装制造企业综合信息管理系统
河北省科技攻关计划项目(072135190)