摘 要:针对传统电梯电话呼叫系统存在的布线复杂和维修不便等问题,设计了一种采用MSP430为控制核心,nRF24L01为无线收发模块核心芯片,并配以相应的输入模块和报警显示模块的低功耗电梯无线呼叫系统设计方案。系统是由若干个发送端和一个接收端组成的多对一的无线呼叫系统。经过实测表明,系统具有稳定性高、功耗低和高抗干扰性等优点,能有效地应用于各种电梯中。
关键词:MSP430;nRF24L01;低功耗;高稳定性
随着电子技术的发展,电梯在生活中已经有了很广泛的使用[1-2]。当人们在使用电梯的时候,难免遇到电梯故障,这时就需要呼叫系统来求救。常用的电梯呼叫系统是有线电话呼叫系统,但是由于其布线复杂和维修不便等问题,在实际应用中受到很大的限制[3-5]。
本文设计了一种低功耗电梯呼叫系统的设计方案,其采用MSP430为控制核心,nRF24L01为无线收发模块核心芯片,并配以相应的输入模块和报警显示模块。该系统具有高稳定性、低功耗和高抗干扰性等优点。
1 系统设计方案
本系统由若干个发送端和一个接收端组成,发送端和接收端都是由超低功耗MSP430单片机为主控模块,控制Nordic公司的无线收发芯片nRF24L01实现无线收发功能,在发送端配以按钮作为信号输入模块,在接收端配以报警显示模块实现信号的直观显示。系统结构框图如图1所示。
图1中,每一部电梯中都安装一个发送模块,其中,电梯内部安装一个按钮作为信号的输入。无线接收模块安装在值班室,并配以报警显示模块以便信号的直观显示,供值班人员及时处理,配以复位电路对报警显示模块进行复位。
2 硬件电路设计
本系统设计为一个“多对一”系统,即由若干个系统发送端和一个系统接收端组成。每一部电梯内安装一个发送端,而接收端只需要在值班室安装一个。系统硬件由供电电路、输入模块、MSP430主控模块、无线收发模块、报警显示模块和复位模块这几个部分组成。其中输入模块是由安装在电梯内部的按钮构成,复位模块的功能由对应的按钮完成。本文重点介绍如下几个部分。
2.1 供电电路
MSP430单片机是一款超低功耗单片机,其工作电压范围为1.8 V~3.6 V,nRF24L01的供电电压为1.9 V~3.6 V,故本系统中采用两节5号干电池提供3.4 V电压并配以稳压芯片LM1117即可正常工作。供电电路如图2所示。
2.2 MSP430主控模块
系统主控模块主要是由MSP430F149低功耗单片机来实现。这款单片机拥有丰富的外围功能模块:包括采样/保持功能ADC内核的12位A/D转换器ADC12、转换存储逻辑、内部参考电平发生器、多种时钟源、采样及转换时序电路。有8个外通道,4个内通道,高达200 kb/s的采样速率,多种采样方式。两路USART通信串口,可用于UART和SPI模式;片内有精密硬件乘法器、两个16位定时器,6个并行口P1~P6,48条I/O口线,其具有64 KB的闪存,用于存储采集数据。
2.3无线收发模块
本设计中无线收发功能主要依靠nRF24L01来实现,nRF24L01是一款2.4 GHz的无线单片收发芯片。主要特性:GFSK调制;硬件集成OSI链路层;具有自动应答和自动再发射功能;片内自动生成报头和CRC校验码;数据传输率为1 Mb/s或2 Mb/s;SPI速率为0 Mb/s~10 Mb/s;125个频道;与其他nRF24系列射频器件相兼容;QFN20引脚4 mm×4 mm封装;供电电压为1.9 V~3.6 V。
无线传输单元的电路设计主要是MSP430单片机与nRF24L01模块的连接电路。本设计中,IRQ中断与P2.6脚相连,CE使能与P2.7脚相连,CSN片选与P2.4脚相连,SOMI与P3.2相连,SIMO与P3.1脚相连,UCLK与P3.3脚相连。连接电路如图3所示。
2.4报警显示模块
在本系统中,电梯内系统发送端发出的求救信号由值班室系统接收端接收后,需要将信号显示,以便值班人员及时处理。在此处,设计一个蜂鸣器和LED指示灯,当系统接收端接收到相应的信号时,控制蜂鸣器发出蜂鸣,LED指示灯闪烁。为了更直观地显示接收到的信号,系统还设计了将接收端接收到的信号传给屏幕进行显示。
由于串行输入输出口是TTL电平信号,TTL电平在0~5 V之间,其逻辑1的电平在2 V以上,逻辑0的电平在0.8 V以下。而只有RS-232电平才能与PC机连接。RS232为全双工通信,通信距离为15 m。RS-232电平:逻辑1的电平在-3 V~-25 V之间,通常为-12 V;逻辑0的电压在+3 V~+23 V之间,通常为+12 V。所以要用到MAX3232转换电平。转换电路如图4所示。
3 系统软件设计
系统的发送端和接收端的主控模块均采用MSP430单片机,为了使单片机正常工作,需要先对单片机进行初始化,停止看门狗,设置时钟频率,电源上电复位。单片机MSP430与PC通过串口连接,要根据UART协议来编程。对串口的初始化:首先USART1控制寄存器UCTL中SWRST和CHAR位置位,即USART的状态机构和运行标志初始化成复位状态,选择字符以8位发送。
主控单片机控制nRF24L01是通过配置其寄存器来实现的,这些配置寄存器可通过SPI口访问。nRF24L01的配置寄存器共有25个,其常用的寄存器如表1所示。
当按钮按下时,启动配置PTX,数据进行预设格式编码后,开启发送。编码后的一帧数据共占9 B,帧格式如图6所示。
其中,帧头采用0x14、0x6F,占用2 B,标志着一帧数据的开始,也即接收端识别到0x14、0x6F时,将识别接收的数据为有效数据,这样可以一定程度地去除乱码的干扰。
设备号,占1 B,用来区分对传感器的哪个电桥进行操作。
电梯号,占1 B,用来存放发送端的号码,以供接收端识别接收的数据具体是哪个号码的发送端发送的数据,这样能识别发出呼叫求救信息的具体是哪部电梯。
楼层号,占1 B,用来存放按钮按下输入信号时发送端所处的楼层,也即发出呼叫求救信息的电梯所处的楼层,这样接收端能够准确地定位发送端的具体位置。
校验值字,占用两个字节,为了提高无线通信的准确度和抗干扰性。
帧尾,占用2 B,标志一帧数据的结束,固定为0xeb,0x90。
发送端将nRF24L01配置为增强型的ShockBurstTM发送模式,在该模式下,只要MCU有数据要发送,nRF24L01就会启动ShockBurstTM模式来发送数据。在发送完数据后nRF24L01转到接收模式并等待终端的应答信号。如果没有收到应答信号,nRF24L01将重发相同的数据包,直到收到应答信号或重发次数超过SETUP_RETR_ ARC寄存器中设置的值为止,如果重发次数超过了设定值,则产生MAX_RT中断。
3.2 系统接收端
系统接收端安装在值班室,本系统只需要一个系统接收端。接收端的MSP430主控模块通过配置无线收发芯片nRF24L01的寄存器,使其总是处于接收模式,以便随时接收发送端发送的信息。接收端在接收到发送端有效的信息后,主控单片机对信息进行解码,并将解码后的信息显示在屏幕上,同时控制蜂鸣器发出蜂鸣和LED灯闪烁,以便提醒值班人员有呼叫信息传入。其具体流程如下。
(1)nRF24L01的ShockBurstTM接收模式是通过设置寄存器中PRIM_RX位为高来选择的。EN_RXADDR寄存器必须被使能,所有工作在增强型ShockBurstTM模式下的数据通道的自动应答功能是由EN_AA寄存器来使能的,有效数据宽度是由RX_PW_Px寄存器来设置的。
(2)接收模式由设置CE为高来启动。
(3)130 μs后nRF24L01开始检测空中信息。
(4)接收到有效的数据包后(地址匹配、CRC检验正确),数据存储在RX_FIFO中,同时RX_DR位置高,并产生中断。状态寄存器中RX_P_NO位显示数据是由哪个通道接收到的。
(5)如果使能自动确认信号,则发送确认信号。
(6)MCU设置CE脚为低,进入待机模式I(低功耗模式)。
(7)MCU将数据以合适的速率通过SPI口将数据读出。
接收端工作流程图如图7所示。接收端还加入了3个复位开关,以便值班人员在识别到报警信息后,按下开关,输入信号,使MSP430单片机控制对LED灯、蜂鸣器和屏幕的复位。
本文采用MSP430F149低功耗单片机为主控芯片,nRF24L01实现无线收发功能,并搭配报警显示电路设计了多对一的低功耗电梯呼叫系统。经过实测,本系统性能稳定,抗干扰性好。在电梯呼叫端个数控制在一定范围内时,误码率为零,能够有效地满足实际应用要求。
参考文献
[1] 杨光祥,曹晓莉.基于无线传感器网络的楼层呼叫与层门自锁系统研究[J].传感器与微系统,2012,31(2):54-56.
[2] 叶萍. 组态监控PLC控制的电梯系统[J]. 自动化应用,2011(10):29-31.
[3] 果争, 许丽艳, 冯一航, 程亚冰.无线病房呼叫系统设计[J].青岛大学学报(工程技术版),2012,27(2):32-35.
[4] 郝妍娜,洪志良.基于MCU和nRF905的低功耗远距离无线传输系统[J].电子技术应用,2007,33(8):44-47.
[5] 余芬,林基明,关炜. 基于完全互补码的DS-UWB无线通信系统性能[J].火力与指挥控制,2009,34(2):13-16.