叶 崧
(金陵科技学院信息技术学院,江苏南京 211169)
照明集控系统是伴随着计算机和通信网络的迅速发展而兴起的自动化应用系统。它主要由监控中心 (主站)、数据通信、RTU(子站或节点)三大部分组成。监控中心是系统的核心,负责控制管理整个系统的运行。RTU是智能测控模块,完成各种远端现场数据的采集与处理、现场执行机构的控制,并将采集的数据上传到主站,接受主站的指令对远端现场遥控;数据通信则根据应用对象的不同有多种不同的通信规约。[1]
数据传输方式按数据传输介质不同分为有线和无线两类。有线传输方式如:电力线载波、RS-485或CAN现场总线等。电力线载波利用现有的供电线路不需要另外铺设专用通信线路,但载波信号只能在一个配电变压器区域内传送;RS-485或CAN总线具有通信效率高、可靠性好等优点,但是铺设专用的线路工程造价较高,布线不便。无线传输方式如:VHF/UHF无线数传电台、ISM扩频电台、GPRS/3G等。无线通信方式能适应地理环境复杂、布线不方便的要求,同时在需要扩建子站时十分方便。
本系统采用基于电力线载波通信与远程无线组网相结合的系统架构,本系统的模型如图1所示。
通过系统结构示意图可知,集中器作为系统主站,负责管理系统中的所有通信,并对收集到的各个现场采集终端的数据进行处理。从控节点使用无线通信与各个传感器节点连接,并将采集到的数据通过载波通信主动上报给集中器。传感器节点采用多点布置的方式,主要负责将其监测区域内的环境参数经由无线的方式传递到从控节点。系统也可采用定时查询方式,由集中器发送命令查询请求,由从控节点将各个传感器节点的数据收集并返回。用户可以通过任意一台连入 Internet的终端访问集中器。
本系统主要是由四大模块组成,第一是电力载波模块,主要是完成主机设备到从机设备的载波通信,实现数据的正常发送以及远程数据的反馈;第二是Zigbee无线模块,主要是完成实现传感器节点数据通信;第三是集中器模块,选择ARM+Linux系统作为主控平台,内嵌数据库与Web服务器,来实现远程控制命令的发送以及节点状态显示;第四是控制模块,采用EasyArm615用于搭建一个从控节点,与一个Zigbee协调器节点相结合,形成一个星状网络拓扑结构,完成的无线组网,同时与照明配电箱一起完成照明控制。
传感器节点主要是将捕捉的现场信号经转换器ADC采样、量化、编码后,变成数字信号传给微处理器,从控节点使用无线通信与各个传感器节点连接,并将采集到的数据通过载波通信主动上报给集中器。集中器主要工作是接收数据信息、进行节点管理、数据处理和数据管理。
由于从控节点的控制及状态变化频率并不是很高,并且采集的传感器数据量也不大,因此窄带电力线载波通信就能满足本系统的需求。PL3106是专为自动抄表、物联网以及远程监控系统而开发设计的单芯片片上系统。采用增强型8051兼容微处理器,其内嵌了载波扩频通信调制解调电路,外围电路连接设计如图2所示。[2]
电力线载波通信模块的功能是实现各个节点间的通信,除了载波芯片外,还要包括发送电路和接收电路。PL3106芯片是基于PSK调制方式、采用直序扩频通讯,载波发射中心频率 120K,带宽15kHz。当发送数据的时候,载波信号由PL3106芯片的PSK_OUT引脚输出,载波信号经过由 Q1、Q2、Q3和Q4组成的互补推挽功率放大电路后进行功率放大后,经过一个由电容电感构成的滤波器,过滤掉高次谐波后通过耦合线圈传输到电力线上。当接收数据时,电力线上被调制的信号经过一个由电容电感构成的并联谐振回路,通过选频处理后,再经过一个电容输入到PL3106芯片的SIGIN引脚。[3]
CC2430芯片整合了ZigBee射频前端、内存和8051微控制器。具有128 KB可编程闪存和8 KB的RAM,还包含模数转换器、一个 IEEE 802.15.4 MAC定时器、一个16位定时器 and 2个8位定时器、AES128协同处理器、看门狗定时器、32kHz晶振的休眠模式定时器、上电复位电路、掉电检测电路,以及21个可编程I/O引脚。因此CC2430芯片不仅作为无线通信模块,也同时作为整个传感器节点的CPU模块。外围电路连接设计如图3所示。
光传感器节点的结构由一个CC2430模块和2节1.5V电池构成,各个光测量节点被初始化为无信标网络中的终端设备。上电复位后,开始搜索指定信道上的PAN协调器,并发出连接请求,建立连接成功后,它将得到一个16位短地址,并在以后用这个短地址通信。[4]节点开启睡眠定时器,每隔6分钟醒来一次,利用光传感器检测环境亮度,并发送给主节点,然后立即再次进入睡眠状态,最大程度地降低功耗,延长从节点电池使用时间。
集中器模块主要包括ARM主控板 (控制器、存储器、LCD显示、以太网、上下行串行通信接口)、GPRS通信模块、电力载波通信模块(PLCC)。硬件总体框图如图4所示。
ARM主控板硬件分为核心板、扩展底板和外接通信模块3部分。核心板包括主控制器和存储器;在扩展底板上扩展电源电路、调试接口、以太网通信接口、串口/485通信接口、人机接口等电路。外接通信模块包括GPRS模块和电力载波通信模块,核心板和外接通信模块插接在扩展底板上。
本系统中,各节点独立完成相应的数据采集、传输、以及显示等任务,数据通信时各节点与数据集中器是“主从式接入”,采用点对点方式或全局广播方式通信。因此系统软件设计主要包括3大部分:电力载波通讯模块;zigbee无线网络通信模块;集中控制器控制模块。
图3 无线通信芯片及外围电路
图4 多功能网关硬件总体框图
电力载波模块通信为总线方式通信,不同载波模块分配不同地址,为了防止多个模块在电力线上产生通信冲突,通常将载波模块常态为接收模式,检测载波线路的同步帧头 (0x09、0xAF),当检测到同步帧头后,按通讯规约接收数据,接收到正确数据,将数据通过串口上传控制板。只有收到控制板指令后,才启动载波发射态,将控制板下发数据发送到载波线路上,发射结束后自动转入载波接收状态。[5]整个接收和发送过程均通过中断方式处理,如图5所示。
图5 载波中断流程图
WSN传感器采集节点的主程序流程图如图6所示,从控节点的主程序流程图如图7所示。在主程序中主要是对CC2430运行环境进行设置、初始化变量等,用一个while无限循环来等待中断的发生,实现整个系统的功能。
图6 传感器采集节点的主程序流程图
集中器平台选用基于ARM720T的ARM芯片SEP4020,该平台已经裁剪并移植好Linux操作系统,便于在其基础上完成各项相关应用程序的开发。
集中器监控软件包括:数据采集、数据存储、数据显示 (测试用)和远程数据传输。数据采集功能负责获取从串口传过来的数据。具体过程是主线程中初始化并打开串口,建立串口接收信号,在信号处理函数里面,处理接收到的数据。当接到数据包时产生信号,在信号处理函数里调用协议转换程序按照载波协议的定义解析数据,解析出原始数据中的节点号、传感器模拟量、开关量值等信息。利用多线程技术,将数据处理部分、数据存储部分分别放在单独的线程中处理,以提高程序的运行速度,通过在Linux上移植了嵌入式数据库系统,可以有效的实现实时数据的管理。
图7 从控节点的主程序流程图
为了便于远程管理,系统移植了嵌入式WEB服务器BOA,并实现HTML表单和服务器端程序的接口 (CGI),用户通过Web浏览器完成Web网页中表单 (Form)数据的输入,并提交给Web服务器,CGI程序根据用户的选择完成一般的处理、数据库查询,将响应结果再回送给Web服务器及Web浏览器[6]。
为满足现场环境复杂、采集点分散的数据采集需要,本系统将WSN、电力线载波有机地结合在一起,将信息汇集之后通过WEB达到远程管理的目的。该设计适合于现实应用中的多种需求,可以根据具体应用进行快速的裁剪和配置,具有实际的应用价值。同时该系统成本低,易构建,具有很强的扩展性,在一个具体的环境下进行照明控制和光传感器实时地采集,通过实际应用,证实该设计的合理性及通用性,达到设计的初衷。本系统稍加改装,在采集终端增加其他传感器,例如二氧化碳传感器、温湿度等可用于室内环境参数监测,满足经济实用的要求,具有良好的实用价值和应用前景。
[1]潘启勇.城市路灯监控系统RTU的设计与实现[D].苏州大学,2007.
[2]PL3106系列芯片手册.北京福星晓晨电子科技股份有限公司 [EB/OL].北京:2008
[3]高守玮,王健,黄全振,朱晓锦.基于电力线载波通信的智能家居系统嵌入式网关设计 [J].电气应用,2010,(15).
[4]高守玮,吴灿阳著.ZigBee技术实践教程:基于CC2430/31的无线传感器网络解决方案 [M].北京:北京航空航天大学出版社,2009.
[5]贺同见,华泽玺.基于低压电力线载波通信的温湿度监测系统 [J].仪表技术与传感器,2010,(12).
[6]王芳,王凯,王先超.基于ARM-Linux与DS18B20的温度监测系统 [J].计算机工程与设计,2010,(12).