APP下载

基于无线传感器网络的智能照明控制系统

2012-05-29周靖林

电气技术 2012年7期
关键词:无线网络信道基站

刘 璐 周靖林

(1.北京化工大学信息科学与技术学院,北京 100029; 2.中国石化江西石油分公司,南昌 330046 )

在我国照明耗电占年发电量的12%左右[1]。目前,智能照明控制系统在美国使用率超过70%,欧洲为 40%~50%,日韩占 15%~20%,而中国低于1‰[2]。可见,智能照明控制在我国存在极大发展潜力及重要现实意义。本文将无线传感器网络、OPC通信与照明控制技术相结合,设计一套智能照明控制系统,实现灯具自动控制,提高系统管理水平。

1 系统方案概述

本文的智能照明控制系统由无线传感器网络、OPC 服务器和用户界面3 部分组成。

底层的无线网络采用星型结构,包括一个基站和多个从站。其中,从站与被控LED 灯连接并将灯的状态信息传送给基站。基站通过RS232 与PC 机相连,将接受的控制命令下达给从站。系统使用ATmega16L 单片机和nRF905 无线射频模块构成工作于433MHz 的无线网络节点,两者通过SPΙ 串行口相连。

上位机中具有专门开发的OPC DA 服务器。OPC 服务器与组态软件中开发的用户界面之间采用OPC 技术通信,与无线网络中的基站之间采用RS232 串行通信。OPC 服务器负责将用户下达的控制命令传送给无线网络中的基站,并将基站传输的设备状态上传至用户界面显示。

在组态软件中开发的用户界面能实时准确的显示设备状态,并可实现对LED 灯的组合控制、温度控制、PWM 控制、定时控制及操作记录等功能。

图2 系统框图

2 系统软件设计

2.1 无线传感器网络设计

无线传感器网络是由一些低功耗、低成本、体积小的传感器节点,以无线通讯方式组成的网络,融合传感器技术、信息处理技术、嵌入式技术和网络通信技术,实现信息的采集、处理、传输及应用[4],具有施工成本低、系统扩展性好、运行维护易等优点。本系统的无线网络结构设计如下:

1)网络拓扑

系统无线网络采用星型结构,有基站和从站两类节点。基站与各从站间进行双向通信,从站互不通信。网络中的每个节点都配有ΙD 地址,有接收、发送两种状态,默认处于接收状态。

2)MAC 层协议

为避免多个从站同时向基站发送信息导致信道冲突,且照明系统对控制时延性要求不高,所以网络MAC 层采用非坚持CSMA/CA 协议。通信前,节点先利用nRF905 的载波检测引脚CD 监听信道是否空闲,若空气中有同频信号则CD 自动置高。若信道忙碌则节点随机延迟一段时间后再重新监听。信道空闲时,节点并不立即发送,而是采取一定的退避机制,将信道冲突的概率降至最小。因为当某从站与基站通信完毕的瞬间,可能有多个要发送数据的从站同时监听到信道空闲,此时信道冲突的可能性最大,所以节点随机退避一段时间后再进行发送。这里采用二进制指数退避算法BEB,设争用期(即节点发出数据至接收到信道冲突的时间)为2t,各站重传次数为N,从整数集合[0,1,…,(2N-1)]中随机取数,记为R。节点重传产生的时延D为2t的R倍,即D=R×2t。站点在发送前若检测到信道空闲,就立即启动退避计数器,只要信道空闲,退避计数器就递减,若退避过程中检测到信道被占用则暂停退避计数器并保持计数器值不变,当信道重新空闲时在原有计数值基础上再次启动退避计数器,当计数值减到零时节点发送数据。

图3 非坚持CSMA/CA 流程图

3)冲突避免策略

CSMA/CA 协议只能解决发送端的数据冲突问题,但接收端仍存在数据冲突的可能,即“隐藏节点”问题。因此系统引入RTS/CTS/DATA/ACK 握手机制。具体过程如下:

(1)从站向基站发送前先通过竞争方式获得信道使用权,再向基站发送请求连接帧RTS(Request To Send)。

(2)基站收到从站的RTS 帧后,向从站发送连接确认帧CTS(Clear To Send),建立两者之间的通信连接。

(3)从站收到基站的CTS 帧后,向基站发送数据帧DATA,若没有收到CTS 帧,则重新发送RTS 帧。

(4)基站收到从站的DATA 帧后,向从站发送数据确认帧ACK。

(5)从站收到基站的ACK 帧后,整个通信过程结束,若没有收到,则重新发送DATA。

4)差错控制

在差错控制方面,系统采取数据重发机制与nRF905自身CRC校验相结合的方式。从站在发送RTS或DATA 后,若在一定时间内没有收到基站的CTS 或ACK,则重新发送传输失败的帧,直到接收到回复或重发次数达到设定值。另外,nRF905 提供对CRC 校验的硬件支持,通过设置 RF 配置寄存器中的CRC_MODE 值,采取8 位CRC 校验。当接收的数据CRC 校验出错时,nRF905 会自动丢弃错误帧。

5)数据传输

系统有两种数据传输模式:点播和广播。点播是指基站向指定从站发送命令或某一从站向基站传输数据,是点对点通信。广播是指基站向所有从站发送命令,此时目的地址为统一值,是点对多点通信。

6)通信帧

系统有两种帧类型,分别是控制帧RTS、CTS、ACK 和数据帧DATA。其中,前导码表明帧的开始;源地址为发送的设备地址;目的地址为接收的设备地址;帧类别说明此帧的功能;有效数据是传输的具体内容;结束码表明此帧的结束。

控制帧结构:

数据帧结构:

2.2 OPC DA 服务器

OPC 技术是用于过程控制的对象链接与嵌入技术,其以COM/DCOM/COM+技术为基础,采用服务器/客户端模式[5]。本系统针对智能照明控制系统的需求,开发专门的OPC DA 服务器,设计如下:

1)OPC 对象与接口

系统编写实现OPC DA 服务器的定制接口,采用E 形式,以OPC3.0 规范为标准,向下兼容OPC2.0版。系统的OPC 对象与接口包括OPC Server、OPC Group 和OPC Ιtem 三种对象。其中,OPC Server 和OPC Group 为标准COM 对象,服务器对象不支持聚合,支持连接点机制。组对象支持聚合、连接点机制。项对象不是标准的COM 对象,通过一个类进行描述,在类中定义项对象的属性和操作方法。系统OPC Server 对象实现的接口包括:ΙOPCServer、ΙOPCommon 、ΙOPCBrowseServerAddressSpace 、ΙOPCΙtemΙO、ΙOPCΙtemProperties 及ΙOPCBrowse。OPC Group 对象实现的接口包括:ΙOPCΙtemMgt、ΙOPCΙtemDeadbandMgt 、ΙOPCGroupStateMgt2 、ΙOPCGroupStateMgt、ΙOPCSyncΙO、ΙOPCSyncΙO2、ΙOPCAsyncΙO、ΙOPCAsyncΙO2 及ΙOPCAsyncΙO3。

2)服务器地址空间

系统的服务器地址空间由OPC 服务器内所有可读写的数据项组成,根据实际情况预先设计,采用树型结构。整个服务器地址空间使用一个自定义的结构体数组进行存储,其结构体成员包括:结点唯一的ΙD 号、结点的名字、父结点的ΙD 号、左子女结点的ΙD 号和右兄弟结点的ΙD 号。最后,系统通过定义一个类对服务器地址空间进行管理。

3)硬件数据采集部分

OPC DA 服务器通过RS232 串行口与无线网络中的基站连接。本系统将与串口通信有关的APΙ 函数封装在一个类中进行管理,并定义一个属于此类的全局变量。通过对此全局变量的读操作,将无线网络基站上传的设备信息写入服务器地址空间及相应的OPC Ιtem 中。当OPC 服务器接收到控制命令后,会自动调用串口全局变量的写函数,将指令下发给无线网络中的基站,并由基站将指令传输给具体从站。

4)线程设计

系统的OPC 服务器包括一个主线程,两个辅助线程。主线程由服务器启动时自动创建,用于初始化COM 库,建立消息循环和处理消息。第一个辅助线程用于处理服务器数据更新及异步事务,线程会周期性更新每个OPC Server 对象中所有组对象的数据项,同时执行异步操作事务,并将操作结果回调给客户。第二个辅助线程用于RS232 串口监测,当串口接收到数据后,会以消息方式通知主线程,激发消息处理函数对数据进行处理,最后将处理好的数据写入服务器地址空间。不同线程间采用临界区方式进行同步。

图7 OPC DA 服务器更新及事务处理流程图

5)数据访问

本系统的OPC 服务器支持同步和异步两种数据访问方式,包括提供 6 种读数据方式,其中ΙOPCSyncΙO2::ReadMaxAge、ΙOPCSyncΙO::Read 和ΙOPCΙtemΙO::Read 用于同步读;ΙOPCAsyncΙO2:: Read、ΙOPCAsyncΙO3::ReadMaxAge 用于异步读;而当数据改变或异步刷新被调用时,采用ΙOPCCallback::OnDataChange。本文由于无线网络中的基站会自动将设备最新状态上传至OPC 服务器中的服务器地址空间,因此所有读操作都直接读取OPC 服务器中的内存数据。OPC 服务器具有五种写数据方式,其中同步写操作包括:ΙOPCSyncΙO:: Write、ΙOPCSyncΙO2::WriteVQT 及 ΙOPCΙtemΙO:: WriteVQT;异 步 写 操 作 包 括:ΙOPCAsyncΙO3:: WriteVQT、ΙOPCAsyncΙO2::Write。当用户下达指令时,OPC 服务器通过调用RS232 串口写函数,将命令下传给无线网络中的基站。

3 智能照明控制系统模拟组网

本文使用ATmegal6L 和nRF905 构成无线节点模拟组建一个智能照明控制系统,模拟实现LED 灯的组合控制、PWM 控制、定时控制等功能。

系统通过ATmega16L 开发板上的LED 灯模拟被控灯具。温度控制方面,采用白炽灯与晶闸管BTA12-600 及光耦隔离器MOC3041 相连接模拟被控端。从站的微控制器将实际灯温度值与设定值进行比较,通过PΙD 算法计算修正PWM 占空比,调整灯的明暗程度。

图10 模拟智能照明控制系统实物图

最后,系统利用组态王软件开发用户界面。在操作界面上,可实时显示设备状态,对LED 灯进行各种控制操作。系统会对各项操作进行历史记录,同时可利用组态王的Web 功能使用户能随时随地通过Ιnternet/Ιntranet 实现设备的远程监控。

图11 用户操作界面

试验平台的模拟运行结果表明,该智能照明控制系统满足设计要求,具备良好的可扩展性。

部分程序代码:

uchar csma_ca(void)//载波检测和退避机制

4 结论

本文将无线传感器网络、OPC DA 服务器应用于智能照明控制系统中,实现从用户界面到无线终端的整体控制。经验证,系统安装方便、工作稳定、各部分衔接良好,满足控制要求。此外,系统还易于扩展,具有良好的通用性和一定的可移植性,稍作修改可应用于其他控制领域。

[1] 黄晓霞.无线传感器网络在绿色照明系统中的应用[D].同济大学,2007.

[2] 顾娜.基于CAN 总线的智能照明控制系统的研究与设计[D].江苏大学,2007.

[3] WU D F ,ZHAO H W ,DU H Y ,QΙ Y M.Research and Design of wireless transmission system based on nRF905[C].2010 CMCE: 316-319

[4] 余向阳.一种无线传感器网络自组网协议的研究与实现[D].合肥工业大学,2007.

[5] 叶超邦.OPC 数据访问3.0 服务器的开发与研究[D].华北电力大学,2006.

[6] 陆会明,朱耀春.控制装置标准化通信—OPC 服务器开发设计与应用[M].北京:机械工业出版社,2010:21-42.

猜你喜欢

无线网络信道基站
滤波器对无线网络中干扰问题的作用探讨
基于移动通信基站建设自动化探讨
可恶的“伪基站”
无线网络的中间人攻击研究
基于GSM基站ID的高速公路路径识别系统
基于导频的OFDM信道估计技术
一种改进的基于DFT-MMSE的信道估计方法
TD-LTE无线网络高层建筑覆盖技术研究与应用
小基站助力“提速降费”
基于MED信道选择和虚拟嵌入块的YASS改进算法