文献标识码:A
文章编号: 0258-7998(2015)06-0073-04
0 引言
无线控制系统由于构建比较简单,且适应于远、近距离的无线连接,在物联网技术及自动控制中得到越来越广泛的应用。本系统以普通单片机STC12C5A60S2和单片无线通信模块WISMO228为基础,采用远程无线通信和近距离无线局域网相结合的方法,设计并实现远程无线控制系统。
1 设计思想
随着无线通信技术的发展,无线网络技术已渗透到人们生活的各个领域[1]。人们希望打破通信受地理环境、时空限制等因素的影响,能够随时随地对多种物体进行通信及监控。因此,在很多应用领域,无线通信逐渐取代了有线通信,无线控制取代了有线控制。无线控制要解决的首要问题是信息的无线传输,包括远距离无线通信和监控现场受控节点的无线连接。目前国内有多种方案,但其远距离通信主要是基于微机、平板电脑、ARM,现场节点控制主要采用ZigBee、WiFi等,系统相对比较复杂,成本也较高,真正投入实际应用不很方便[1]。
针对远程控制系统存在的不足,本系统的设计注重研究和解决了以下技术问题:
(1)直接使用人们最广泛使用的智能手机作为远程控制器,用Android系统开发应用软件,与控制现场控制器进行无线通信,实现远程控制。
(2)现场控制器以STC12C5A60S2和WISMO228为核心进行设计。单片机实现远程通信控制、现场监控节点控制以及人-机交互控制,是系统控制核心;WISMO228用来实现和手机之间的GSM/GPRS通信;控制器中设计了nRF24L01无线射频收发模块,作为现场控制网络的主节点,具有和现场控制各个从节点进行无线信号传输的功能。
(3)设计“即插即用”方式的无线射频控制节点,又称为无线控制插头,作为现场控制从节点。为了使现场控制实用方便,避免重新布设有线控制连接的困难,该控制节点设计成比普通电源插头稍大的“即插即用”式的插头,代替受控设备或电器原有的插头直接插入普通电源插座中,即可作为受控节点使用。在无线控制插头中高度集成了89c2051、nRF24L01、电源转换器和执行部件。
2 系统硬件电路设计
系统的硬件设计主要有现场控制器设计和无线控制插头设计。
2.1 主要器件简介
(1)STC12C5A60S2单片机是宏晶科技生产的CMOS高性能增强型8 bit 51系列单片机,内有60 KB的Flash和1 280 B的RAM,有36个I/O口,其驱动电流高达20 mA左右,支持STC_ISP在线可编程,具有第二串口功能、2路PWM、8路10 bit高精度ADC。指令与MCS-51兼容,应用广泛。
(2)WISMO228无线通信模块[2-3]是由AirPrime公司生产的集发射、接收于一体,信号灵敏度极高的GPRS/GSM模块,内嵌TCP/IP协议栈,工作可选GSM方式或4个频段(850、900、1 800、1 900 MHz)的GPRS方式,传输速度支持GPRS Class 10级别标准。与微处理器连线简单,支持串口、SPI、SIM卡等多种接口,典型工作电压为3.6 V。
图1为模块结构框图。模块主要由RF电路和GSM基带控制器两部分构成,可以连接控制SIM卡、进行异步串行通信、PWM控制、工作状态信号输出、外接天线、可编程I/O、A/D转换以及电源等。
(3)nRF24L01无线射频收发器[4]是Nordic公司生产的集发射、接收于一体的短距离数据传输芯片,它工作于2.4 GHz频段范围内,标准供电为3.3 V,电流损耗较少。该芯片节点工作频道多达125个,频道之间切换时间短,可实现点与点之间的一对一、一对多双向无线数据通信。它支持3种传输速率,选择低速率250 kb/s,能够传输更远的距离。
nRF24L01模块内置ShockBurst电路,传送数据中包括数据地址和CRC自动检验功能。芯片接收到数据能自动发送应答ACK信号,发送失败后能自动重发数据,为无线通信有效传输提供了有利条件。nRF24L01内部集成LNA(低噪声放大器)、PA(功率放大器)、Enhance ShockBurst电路、芯片工作模式选择电路、时钟振荡器电路等。
(4)电源转换芯片LNK304[5-6]:系统选用LNK304降压转换芯片完成非隔离电源开关转换,实现AC220 V转DC5 V电路功能,其输入交流电范围为85 VAC~265 VAC,用来代换输出电流不大于360 mA的所有线性及电容降压式非隔离电源电路。具有性能好、集成度高、效率快等优良特性。
LNK304集成1个700 V高压功率MOSFET开关电路和1个电源控制电路,只需简单的电路连接就可实现AC-DC转换,用于“即插即用”式无线控制节点受控插头的控制电路供电,实现对电器的控制。
2.2 现场控制器设计
现场控制器包括微控制器、WISMO228模块及外围电路、无线射频nRF24L01模块、人机交互电路、电源等,其框图如图2所示。WISMO228通过UART与STC12C5A60S2连接。nRF24L01通过SPI接口与微处理器相连,并与从节点控制器的nRF24L01模块进行无线通信,构成节点网络。人机交互模块主要由液晶显示、按键、LED指示灯组成。其中5110LCD液晶通过SPI接口连接微处理器,向用户提供监视界面,显示电器设备的工作状态。一组独立式按键可自定义功能。LED显示无线节点工作状态。这里主要介绍WISMO228模块和nRF24L01模块。
(1)WISMO228模块及其控制
WISMO228通过SMS外围接口建立无线通信链路,接收和发送控制信息。此接口完全符合GSM11.11标准规范,作为用户登录GSM网络的身份验证,系统使用6脚SIM卡,支持1.8 V电压输入。
WISMO228与单片机及外围电路连接如图3所示。SIM卡的VCC与VPP引脚直接与WISMO228模块的SIM_VCC引脚相连。SIM卡的CLK、I/O、RST信号线直接与WISMO228模块的对应信号线相连接;WISMO228的ON/OFF引脚,与单片机的P1.1脚相连,通过单片机控制使该引脚在上电后保持低电平至少为685 ms;单片机的复位信号RESET通过T9实现信号的变换和隔离,实现低电平复位;RXD(接收)和TXD(发送)引脚分别连接单片机的RX和TX引脚,进行串行通信,单片机通过串行通信传送命令和数据,控制WISMO228进行远程信息传输;ANT引脚连接外部天线,天线阻抗值为50 ?赘,外接板焊天线外壳接地,以保证无线信号传输[2]。
为了反映WISMO228工作状态,利用其WISMO_READY引脚电平由高变低再变高,表明WISMO228正在进行网络登录和完成初始化,引脚外接的LED3快速闪烁,最后点亮,表示模块初始化和正常启动;SIM_VCC引脚连接LED2,用来显示SIM卡状态,若SIM卡连接正常,则LED2被点亮;TX_CTRL引脚连接LED1,用来显示模块通信控制状态,若有数据正在从模块串口输出,则LED2闪烁。
(2)nRF24L01模块及其控制电路
STC12C5A60S2通过P2口模拟SPI接口,与nRF24L01连接,如图4所示。其中P2.0控制CE,作为RX或TX模式选择信号;P2.1控制CSN,作为nRF24L01片选信号;P2.2控制SCK,作为nRF24L01的时钟;P2.3连接MOSI,作为串行数据输入;P2.4连接MISO,作为串行数据输出;P3.3(/INT1)连接IRQ,用作触发中断信号[4]。
2.3 无线控制插头设计
无线控制插头是作为系统控制现场的无线控制网络节点,总体框图如图5。电路主要由MCU(AT89C2051)模块、无线节点模块、电源转换模块、继电器控制模块组成。AT89C2051只需控制射频模块无线接收数据和继电器工作。nRF24L01芯片与现场控制器中的无线节点模块,组建近距离的无线网络。电源转换模块包括交流220 V转直流5 V电路,为单片机和其他外围器件供电; 5 V转3.3 V电路为nRF24L01供电。继电器控制电器设备工作,为了避免普通继电器触点通断时的电磁干扰和较大的线圈电流,本系统采用固态继电器。控制插头中的关键技术是nRF24L01模块和交流220 V转直流5 V的电源模块。nRF24L01电路和现场控制器中的电路类似,在此不再介绍。
电源转换模块把电源插头连接的通用交流电源插座的220 V电压转换为5 V直流,该模块电路原理如图6。其中:D为漏极引脚,LNK304启动和进入稳定工作状态时,提供内部操作电流;BP为旁路引脚,用于给内部提供5.8 V的电源,外接100 nF的电容;FB为反馈引脚,正常工作状态下,控制功率场效应开关,当输入此引脚的电流超过49 μA时,场效应开关失效;S为源极引脚,构成功率场效应开关的源极,同时也作为 BP和FB引脚的接地参考点。该电路能输出5 V电压和120 mA电流,对插头内无线控制电路供电,能满足控制电路40 mA左右的供电需求。电源输入部分由阻燃可熔的绕线电阻R30、二极管D7和D8、电容C30和C31以及电感L1构成,交流220 V由R30接入,通过D7和D8全波整流,再通过C30、C31及L1滤波后接LNK304的漏极D引脚,其中R30不仅具有将二极管的浪涌电流值限制在允许范围内功能,而且若电路中出现短路或电流值过大时能起到熔断保险的作用;电路输出部分由续流二极管D9、输出电感L8及输出电容C34构成。由于LNK304使电源工作在极度不连续导通状态,因此选用D9为超快恢复二极管uF4005进行反向时间的快速恢复。L8为1 mH、280 mA的工字型磁芯电感。C34是输出滤波电容,其主要功能是限制输出电压纹波。电路的反馈及稳压部分由R1、R3、C33、D10构成, D10为慢速恢复二极管IN4005GP,设其正向压降与D9一样,则可认为电解电容C33两端电压跟随输出电压变化,选取R1和R3的阻值,对C33的电压进行分压,使得芯片反馈引脚FB电压为1.65 V时,输出电压为所要求的稳压值5 V。此外,为了防止在轻载或空载的情况下,输出电压5 V与C33电压存在跟踪误差,因此在输出端接1 kΩ的电阻R33作为假负载[7-8]。
3 单片机控制程序设计
主要包括现场控制器中的STC12C5A60S2控制软件和无线控制插头中的AT89C2051控制软件。
3.1 现场控制器程序设计
图7是现场控制器控制主流程,初始化包括液晶(5110LCD)、串行接口、WISMO228和nRF24L01的初始化。然后主要是接收手机等无线通信工具发送的远程控制指令,当有新指令信息到达时,WISMO228通过AT指令将控制信息内容传送给STC12C5A60S2。单片机根据控制命令的要求将信息通过无线节点网络转发到相应的无线控制插头节点,并随时接收现场节点反馈的状态信号,显示控制状态,同时向手机发送状态信息。
手机和现场控制器之间通过AT指令传送命令和数据,采用ASCII码方式。系统定义对控制信号采用统一的编码规则为10 bit字符,由左向右,字符1~4为系统控制密码,暂用“####”表示;字符5为为命令码,可以根据需要增减,目前只定义“T”(定时)、“G”(定量)、“C”(关闭);字符6为受控节点号“1”~“8”;字符7~10为定时或定量数据,定时以s表示,可以定时0~9 999 s;定量是指对固态继电器控制导通电量的大小,以0~220对应接通交流电压的大小,以便对可调电压的电器进行控制[3]。
3.2 无线控制插头程序设计
图8是无线控制插头中AT89C2051的控制主流程,对中断系统和nRF24L01进行初始化后,就处于待机状态。当nRF24L01接收到主节点发送的命令,就向单片机发中断,单片机读取命令并进行判断,若为本节点的指令,就处理和执行指令。
控制现场的局域无线网络是由1个现场控制器的nRF24L01主节点和若干个无线插头的nRF24L01从节点构成。nRF24L01设置为增强型ShockBurstTM 工作方式。在发送、接收程序设计中,主节点采用“发送→等待从机成功接收的应答信号→发送下个数据”的控制过程,若规定时间内未收到应答信号,主节点重发当前的数据,直至收到ACK应答信号。从节点则对接收到的数据进行校验、分析和处理,执行相关操作命令,并向主节点发送应答信号。
4 系统应用及功能扩展
系统以其在智能家居方面的实际应用作为实例进行了实验,用1个现场控制器和5个无线控制插头构成一个家居环境中的局域无线网络,5个插头分别作为空调机、电视机、换气扇、照明灯、喷水器的电源插头,以手机短信发送控制命令,实现了对家电的远程控制。例如:手机发送“####T31800”命令,可启动换气扇开机换气30 min;发送“####G50100”,可启动家庭喷水器以适当的开启度浇花等等,并把现场工作状态发送给手机。
系统采用现代无线通信技术和近距离无线网络节点相结合的控制方法,较好地实现了远程控制的实用化,系统控制现场组网简洁,受控节点可多可少,控制对象连接方便。系统有较大的应用扩展空间,例如:可以利用多种远程无线通信工具作为控制器;可以在手机上开发Android控制软件,使之具有良好的远程人机交互界面;可以设计研制不同功能的无线控制插头,满足不同的远程操控需求。
参考文献
[1] 曾国敬,宋跃,何志辉.一种智能家居远程控制系统的硬件设计[J].电子技术应用,2011,37(4).
[2] Wavecom Corp.Product technical specification & customer design Guidelines,WISMO228 wireless standard MOdem[M].France,2009.
[3] Wavecom Corp.TCP/IP AT command Manual,WISMO228 Wireless Standard MOdem[M].France,2009.
[4] 朱嵘涛,徐爱钧,叶传涛.STC15单片机和nRF2401的无线门禁系统设计[J].单片机与嵌入式系统应用,2014(6).
[5] 沙占友,葛家怡,许云峰.Link Switch-TN系列节能型单片开关电源的电路设计[J].电源技术应用,2004(11).
[6] LNK302/304-306 LinkSwitch-TN Family Lowest Component Count, Energy-Effi cient Off-Line Switcher IC[M].Power Integrations,2006.