一种采用LoRa技术的智能水表设计
2017-11-07李红信
杨 欢,李红信
(兰州大学 信息科学与工程学院,甘肃 兰州 730000)
一种采用LoRa技术的智能水表设计
杨 欢,李红信
(兰州大学 信息科学与工程学院,甘肃 兰州 730000)
为提高水表的抄表效率及计量精度,同时针对Zigbee、红外等无线技术在抄表方案中存在通信距离短、抗干扰能力弱的缺陷,通过对LoRa无线标准协议的研究,将MCU系统和LoRa技术相结合,设计了一种基于LoRa无线通信技术的智能水表。介绍了水表的硬件组成和功能模块的作用,给出了通信单元和电磁阀门控制单元硬件原理图,简述了通信协议和节点软件设计过程,对水表的通信距离和在定时、单播和广播抄表方式下进行测试。测试结果表明,该水表具有通信距离远、可靠性高和实时性强的特点。
智能水表;LoRa;SX1278;无线抄表
0 引言
自动抄表 (Automatic Meter Reading,AMR)是采用通信、计算机等技术,通过专用设备对各种仪表(如水表、电表和气表等)的数据进行主动采集和处理的系统[1]。近年来,抄表行业出现了红外、蓝牙和ZigBee技术等抄表方式,其在数据共享等方面存在很多缺陷,需要进行改进,同时随着通信设备的复杂度的増加,这些技术已经不能满足无线抄表要求。
低功耗广域网络技术(Low Power Wide Area Network,LPWAN)是一种物联网无线接入新技术,具有低功耗、网络扩展性强和通信距离远等优点。LoRa(Long Range)[2]作为一种非授权频谱的LPWAN无线通信技术,采用自适性数据速率策略,使其接收电流低达10 mA,休眠电流小于200 nA,实现了超低功耗;其次利用先进的扩频调制技术和编码方案,使载波频率不断跳变而扩展频谱,增加了链路预算和更好的抗干扰性能[3],对深度衰落和多普勒频移具有更好的稳定性[4],其接收灵敏度可达到-148 dBm[5],使其在密度较低区域的通信距离达15 km。本文将LoRa通信技术应用到无线抄表中,旨在设计一个准确可靠、方便操作的水表终端。
1 总体设计
智能水表是无线抄表方案的最末端设备,可采集、记录用户的用水量,同时接收服务器指令,受服务器控制,是服务器指令的执行者。该智能水表的设计是在低功耗的原则下实现多功能。当水表接收到有效脉冲时,单片机由休眠模式转换为工作模式,通过中断计数该脉冲,记录用水量。当LoRa无线通信单元接收到集中器命令时,水表进行水量等其他数据上报。当欠费时,水表通过LoRa通信单元接收关阀指令,电磁阀门实现对水表关阀。此外,通过RS485通信模块,可以在特殊情况下实现与上位机RS485的通信功能[6],实现数据传输。水表组成如图1所示,由MCU控制单元、LoRa无线通信单元、电磁阀门控制单元、脉冲输入采集单元及其他部分组成。
图1 水表硬件总体框图
2 硬件设计
2.1 MCU控制单元
智能水表作为一个电池设备,需要超低的功耗,微控制的选择决定着整个智能水表的性能和功耗。文中采用意法半导体公司基于Cortex-M3内核的32位高性能超低功耗微控制器STM32L151作为控制核心,该芯片工作频率可达32 MHz,具有512 KB的闪存以及80 KB的SDRAM[7],性能强劲,实时性好,代码灵活。同时该芯片低功耗运行模式、睡眠模式、低功耗睡眠模式、停止模式和待机模式5种低功耗工作模式,以及创新型自主动态电压调节功能,方便了系统低功耗设计,可以轻松满足无线抄表的各种需求。MCU控制单元是智能水表的控制器,起着决定性的作用。
2.2 通信单元
水表终端与上层集中器通信是无线抄表过程的关键,其通信性能决定着抄表过程的优劣。设计采用Semtech公司推出的低功耗半双工高灵敏度的SX1278收发器,该收发器工作的频率范围为-137~1 020 MHz[8],采用LoRa扩频调制解调技术,其传输距离远远超出使用FSK等调制解调技术,能够极大地降低网络部署成本,易于管理和监控[9]。同时,SX1278软件配置具有很大的灵活性,用户可通过程序决定扩频调制带宽(BW)、纠错率(CR)和扩频因子(SF)。此外,LoRa在选择性和阻塞性能方面的显著优势,进一步提高通信可靠性。设计中STM32L151通过SX1278的SPI接口来设置寄存器实现数据的接收发送[10]。SX1278射频模块是无线抄表系统的通信接口,一方面和集中器进行无线通信,另一方面采和MCU控制单元进行通信,是无线抄表过程的关键。
由于SX1278是半双工收发器,因此收发数据时要进行模式切换[11]。模式选择模拟开关电路如图2所示,其中U1为模拟开关,通过CTRL引脚和VDD引脚的高低电平来选择天线连接的是接收电路还是发射电路。当VDD为低电平,CTRL为高电平时,RF1接通RFC,SX1278收发器进入发射模式,此时MCU系统将要发送的数据通过SPI串口写入SX1278的FIFO中,待数据写入完毕后,SX1278收发器将自动完成发射,实现数据的上传;当VDD为高电平,CTRL为低电平时,RF2接通RFC,SX1278收发器进入接收模式,此时SX1278收发器将接收到的数据保存在FIFO中,收完后进行CRC校验,待校验通过后,会在DIO0引脚发出取数据信号,MCU即可通过SPI串口来读取FIFO中的数据,实现服务器发下指令的接收。
图2 模式选择模拟开关电路
2.3 电磁阀门控制单元
智能水表中,控制阀口是实现控制用水的关键部分。目前主要有电磁水表、超声水表、射流水表和涡街水表等类型[12]。电磁阀因其灵敏度高、功耗低和可靠性好[13]优点,在实际中得到广泛应用。设计中通过电磁阀对水表进行控制,其控制电路如图3所示。电磁阀控制电路中,STM32L151芯片的P6.6和P6.7引脚控制阀门的正反转动。从图中可以看出,当P6.7引脚输入低电平,P6.6引脚输入高电平时,开关SW1闭合,打开电磁阀,反之,则关闭电磁阀,进而实现对水表终端的控制。
图3 电磁阀门控制电路
3 软件设计
3.1 通信协议设计
协议是通信过程中保证收发双方能可靠通信的约定。设计中,无线抄表方式分为定时抄表、单播和广播抄表。在抄表中,服务器通过集中器下发满足水表通信规约的DL/T645-2007协议指令,数据传输中对数据进行循环冗余校验CRC校验确保数据准确无误[14]。所有水表设备收到唤醒码并对地址进行比对,若地址不符则继续休眠,若地址符合,则该水表立即唤醒进入工作状态,集中器接着发送抄表或其他指令到该水表,该水表收到指令后再向集中器返回数据,随即进入休眠状态以降低能耗[15],由此完成一次通信。读写水表报文格式如表1所示,其中表地址即设备号,根据每个SX1278射频模块分配给各个水表节点独一无二的设备地址,由5 Byte非字母的十六进制数表示,低字节在前高字节在后。控制字1低6 等于为0x1时表示此条指令读水表数据数据,等于0x04时表示此条指令为向水表写入数据;第7位为应答标志等于0表示正常应答;第8位表示传输方向,等于0表示集中器发出命令,等于1表示水表返回指令。有效数据用于返回水表应答数据,主要包括设备状态字、流量数据、计量数据类型和RTC时钟等信息。结束符固定为0x16,表示一帧数据的结束。
表1 读写水表报文格式
起始符表地址控制字2控制字1帧序号数据域长度数据域起始符1Byte5Byte1Byte1Byte1Byte1Byte1Byte数据标识D0数据标识D1有效数据上行信号强度下行信号强度CS校验结束符1Byte1Byte22Byte1Byte1Byte1Byte1Byte
3.2 水表节点软件设计
水表节点主要完成对流量数据的采集,同时通过LoRa网络对数据进行上报及接收集中器指令。主程序中,为保证事件响应的时效性,各分支程序的执行依靠标志位进行,当查询到UART或者LoRa数据时,由硬件产生一个中断,中断程序收集数据,设置任务状态标志位,等到主程序到了这个分支再做进一步处理[16]。总体上讲,定时器每隔100 ms循环扫描一次整个系统的状态字,当发现有状态字被置位,立刻开始执行任务。为了防止程序陷入死循环,在程序延迟和容易发生死循环的程序段加入看门狗监听复位程序[17]。当程序发生死机后,看门狗复位寄存器一直累计,当累加的次数大于 1 000 次之后,MCU 默认程序发生死循环,迅速发送一个低电平脉冲使单片机自动复位。整个水表平时处在掉电状态,当有中断信号时,将从睡眠状态下唤醒,执行程序,水表节点软件工作流程如图4所示。
图4 LoRa终端无线模块程序流程
4 测试结果与分析
4.1 通信距离测试
LoRa的传输距离对于整个抄表系统具有重要参考价值,为此在楼宇内对集中器和水表节点之间的有效传输距离进行了数据收发测试。设备天线发射功率20 dBm、射频中心频率为 470 MHz,测试中将水表置于10楼,集中器通过RS232接口和PC连接,在各楼层进行测试。测试结果如表2所示,水表和集中器在穿透3层楼后仍可保证100%通信,相对其他无线技术,通信距离有很大提升。
表2 集中器和水表有效传输距离测试结果
集中器所在楼层通信成功率/%信号强度/dBm8100-467100-516100-59594-75470-88330-101
4.2 流量数据采集测试
抄表的成功率是设备性能优良的重要指标。设计中测试了单播抄表、定时抄表和广播抄表,主要包括唤醒、抄表和休眠3个过程。设计中对水表进行单播抄表,一共抄收200次,平均抄收成功率达到99.5%。定时抄表时,设定设备每天下午2:00定时上报参数,测试10天,测试成功率100%。广播抄表实现对一个集中器下面所有水表设备进行远程统一管理,设计中对5块水表同时分别下发冻结指令、校时/实时时间查询指令、读取设备信息指令等指令,一共抄收100次,抄收成功率达到100%。
5 结束语
本文从实际应用出发,分析了LoRa技术的原理和优势,针对现存无线抄表技术的特点,设计了基于LoRa技术的智能水表。该水表工作在433 MHz,和ZigBee等无线技术不在一个频段,因此收到的干扰很小。同时由于ZigBee等无线技术通信频率相对较高,信号在空中衰减较快,导致传播距离不远,而LoRa技术在相同发射频率下,通信距离能够显著增加。从实验结果可知,水表运行状态良好,能很好地满足无线智能抄表的需求,为构建智能抄表方案提供了一种有效的解决方案。
[1] 姜启.智能水表抄表系统的研究与设计[D].贵阳:贵州大学,2009:1-3.
[2] 孙曼,张乃谦,金立标.基于LoRa标准的MAC层协议研究[J].电视技术,40(10):77-81.
[3] LEWARK U J,ANTES J.Link Buget Analysis Forfuture E-band Gigabit Satellite Communicate Links[J].CEAS SpaceJournal,2013(4):42-46.
[4] MOHAMED Aref,AXEL Sikora.2014 2nd International Symposium on Technology and Applications(IDAACS-SWS)[C]∥Offenburg,2014:19-23.
[5] 龚天平.LoRa技术实现远距离、低功耗无线数据传输[J].电子世界,2016,82(10):115-117.
[6] 郑子含,刘高平.基于ADE7755的单相电子式电能表设计[J].微计算机信息,2012,28(4):59-61.
[7] JOSEPH Y.Cortex-M3权威指南[M].宋岩,译.北京:北京航空航天大学出版社,2009:17-20.
[8] 付河.SX1276的LoRa与FSK技术在室内定位中的应用研究[J].单片机与嵌入式系统应用,2016(10):57-61.
[9] 王洋,温向明,路兆铭.新兴物联网技术—LoRa[J].信息通信技术,2017(2):55-59.
[10] 孙丽,孙顺远.曲房低功耗无线温湿度检测系统设计与应用[J].测控技术,2017,36(5):29-32.
[11] 王瑞,李跃忠.基于SX1278的水表端无线抄表控制器[J].电子质量,2015(12):67-74.
[12] 姚灵.电子水表传感与信号处理技术[J].自动化仪表,2009(3):1-5
[13] 冯静.基于PIC16F84的电磁阀式IC卡水表设计研究[J].电子工程师,2008(11):75-77.
[14] 赵太飞,陈伦斌,袁麓.基于LoRa的智能抄表系统设计与实现[J].计算机测量与控制,2016.24(9):298-301.
[15] 罗贵英.基于LoRa的水表抄表系统设计与实现[D].杭州:浙江工业大学,2016.
[16] 郭晓.基于GPRS和MBUS远程无线抄表系统的设计与实现[D].天津:河北工业大学,2016.
[17] 贾明伟.基于休眠调度的无线传感器网络高能效数据收集机制研究[D].南京:南京邮电大学,2016.
DesignonIntelligentWaterMeterBasedonLoRaTechnology
YANG Huan,LI Hong-xin
(SchoolofInformationScienceandEngineering,LanzhouUniversity,LanzhouGansu730000,China)
In order to improve the efficiency and accuracy of water meter,at the same time taking into consideration the defects of Zigbee and infrared wireless technology in meter reading scheme including short communication distance and weak anti-interference capability,an intelligent water meter based on LoRa wireless communication technology is designed based on research of LoRa wireless standard protocol and by combining the MCU system and LoRa modulation technology.First the hardware structure of the water meter and the function of function modules are introduced.The hardware principle diagram of the communication unit and the electromagnetic valve control unit are given.Secondly,the communication protocol and node software design process are described briefly.Finally,the communication distance of the water meter and the method of timing,unicast and broadcast meter reading are tested.The test results show that the water meter has the advantages of long communication distance,high reliability and real-time performance.
smart meter;LoRa;SX1278;wireless meter reading
10.3969/j.issn.1003-3106.2017.12.17
杨欢,李红信.一种采用LoRa技术的智能水表设计[J].无线电工程,2017,47(12):75-78.[YANG Huan,LI Hongxin.Design on Intelligent Water Meter Based on LoRa Technology[J].Radio Engineering,2017,47(12):75-78.]
TP216.1
A
1003-3106(2017)12-0075-04
2017-08-20
杨欢男,(1990—),硕士研究生。主要研究方向:无线传感器网络。
李红信男,(1968—),博士,硕士生导师,副教授。主要研究方向:工业自动化、工业通信网络。