【《基于STC89C52RC微控制器的大口径水表数据采集终端设计》14000字(论文)】_第1页
【《基于STC89C52RC微控制器的大口径水表数据采集终端设计》14000字(论文)】_第2页
【《基于STC89C52RC微控制器的大口径水表数据采集终端设计》14000字(论文)】_第3页
【《基于STC89C52RC微控制器的大口径水表数据采集终端设计》14000字(论文)】_第4页
【《基于STC89C52RC微控制器的大口径水表数据采集终端设计》14000字(论文)】_第5页
已阅读5页,还剩34页未读 继续免费阅读

付费下载

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

基于STC89C52RC微控制器的大口径水表数据采集终端设计摘要水资源的管理越来越受到重视,尤其对于中国这种水资源比较匮乏的国家,如果能够采用合适的科技手段率先将这部分用水实现自动化计量和管理,就可以将水资源管理提高到一个比较高的层次,有利于提高节水意识,进一步节约水资源,同时带来显著的经济效益和社会效益。为此设计了以STC89C52RC低功耗微控制器为核心,利用无线网络实现数据采集及远传的数据采集终端。通信部分采用NB-IoT窄带物联网技术,弥补了传统机械水表存在的缺点,具有功耗低、成本低、大连接、覆盖广等优点;主控芯片采用低功耗的STC89C52RC微控制器,可实现电池电压预警、周期数据上报、远程下发指令等功能;提出了专用的脉冲计数平衡算法,实现了正、反向流量双向计量功能;通过综合运用通信终端的三种工作方式,达到了低功耗的设计目标;本文较为详细的介绍了硬件及软件设计,通过一系列的技术手段,不断优化大口径水表数据采集终端系统的性能,提高了大表计量和管理的科学技术水平,在自来水自动化管理中得到广泛应用。关键词:大口径水表;NB-IoT;数据采集;单片机目录5322摘要 绪论信息化时代的到来,自来水公司越来越追求对水表数据的自动采集和智能管理。大口径水表是自来水公司必要的计水工具,水表的选择和管理对于降低水管的漏损,提高供水行业的效益,具有明显且深远的意义。目前大口径水表查抄工作存在着一系列的缺陷,为了克服一系列的难题,实时掌握用户的用水状态,积极研发对采集到的的水表数据的管理系统是十分必要的。随着通信技术的不断成熟和智慧水务[1]的不断发展,大口径水表的数据采集终端系统的研究与应用必将成为未来智能水表的发展趋势。课题背景在这个现代化和后工业化的城市中,对天然水资源的保护和管理受到了高度重视,尤其对于中国目前处在这样一个天然水资源严重匮乏的发展中国家来说,对水资源的科学利用显得尤为重要。有公论说,水很有可能在几十年之后成为制约中国发展的主要瓶[2]。在中国城市水的使用当中,供水行业是城市设施建设的基础,工业用水在整个用水量中占到了很大的比重,除了用水计量、用水付费、节约用水等措施外,加强管网监测,控制管网漏损也是一个重要措施。然而,我国现阶段的供水运输行业的技术和发展能力水平仍然比较落后。国内自从开始使用人工抄表等计量器械手机进行测定以来,多年来都采取了由查表工作人员接受机械入户的查表和收费模式,但由于当时城市中人口稠密、房屋小区分散、高层住房居民的用户日益扩大,人工抄表等收费模式的弊端日益凸显,并且这种模式在互联网信息技术网络高速发展和迅速普及的今天,显得尤其落后。目前,大口径水表主要用于供水区域入口计量,与流量计相比,具有价格便宜、通信费用低、便于实现电池供电等优点,因而在全国供水企业中常采用大流量的大口径水表。大口径水表(公称口径>50mm),常见的有水平螺翼式、垂直螺翼式及超声波水表三种形式[2]。大口径水表的位置安装分布分散,如果仅仅依靠现场查抄,很难做到水表数据的统一管理,并且抄表周期过长。除此之外,人工抄表并不能及时检查水表是否处在正常的工作状态,无法及时检测到水表的各种异常情况。供水企业若不及时发现并排除这些情况,则会提高漏损率,造成水资源浪费,严重影响自来水行业的经济效益和管理水平。因此,如何可以实现大口径水表数据采集的智能化,实时监测用户用水情况和检查水表的工作状态,是当前自来水公司面临并需要解决的问题。除此以外,水表通信终端的工作环境非常恶劣,常年处于高温、高湿环境,甚至会浸于水中,网络信号差,要求电池供电保持数年的正常工作时间,恶劣的工作环境对大口径水表通信终端的设计研究提出了更苛刻的要求。国内外发展概况国外发展概况20世纪80年代,美国研发出了自动查抄水表技术,得到了不错的效果,进而被广泛地应用到各种行业和各种领域。美国、加拿大等国家对于自动抄表技术的研究比较早,技术也相对来说较为成熟,经过不断的研发和总结,已经大致形成了一套相对完成规范的技术体系。随着时间的发展,某些中东国家的自来水公司近年来开始普及自动抄表技术,要求水表具有M-Bus接口或内置无线M-Bus模组[3]。这种方案同时也得到了欧洲一些国家的认同和使用。欧洲形成一套以OPENmeter体制架构为核心的标准,涉及到了智能抄表技术中的多种方面。随着欧洲大范围普及智能抄表设施后,大大小小的问题层出不穷。根据地方人口的分布特点和居住环境的各种因素的考虑,非洲、东南亚、中东等人口密度高的国家采用宽带PLC技术,在人口低密度的拉美等国家,采用无线通信技术,来保障最高性价比。无线通信技术中又以基于NB-IoT无线通信技术的eLTE-IoT方案最佳,NB-IoT无线通信技术具有广覆盖的特点,可以满足较大规模的集中抄表。国内发展概况我国发展不平衡,各个地区发展差异较大,欠发达地区还在使用传统的机械水表,在较为发达的大城市已经开始试用远传式智能水表,这种远传式的智能水表改变了传统的抄表方式,可以自动采集水表数据并且上传的云平台进行统一的管理[4]。但是长期以来,我国的大口径水表一直使用经典的可拆卸垂直翼式水表和水平螺翼式水表,如果要想获取水表的数据,则必须得有专人专门到指定的表井或者特定的场所进行抄表。这种人工查抄水表的方式劳动强度大、查抄周期长、数据统一管理难,并且查抄到的数据准确度较低。20世纪90年代,智能水表被中国引入,通过不断的更新和发展,已经逐步形成了较为完整的技术体系。但对大口径水表数据采集终端设计的开发仍存在一些问题,需要不断地完善其系统功能,更好的更好的满足用户需求和供水企业的要求。本文主要研究内容本文研究的“大口径水表数据采集终端设计”,主要包括硬件选择及其电路的设计和软件设计调试两部分。系统的硬件部分是脉冲传感器、数据采集器及单片机等进行选择设计;软件方面涉及大口径水表数据的采集、存储、处理及数据远传[5]。本文主要的研究内容如下;(1)大口径水表数据的采集在大口径水表中加上干簧管传感器,当用户用水时,干簧管开始工作产生计量脉冲。大口径水表数据的自动采集是整个终端设计系统中最基础的工作。大口径水表数据的脉冲信号直接发送到CPU中,实现单片机与数据采集系统的连接,由单片机来监视大口径水表的工作状态,实现对水表数据的采集、分析、加工、处理和存储。(2)大口径水表数据的传输无线远传水表以实现非接触式的数据获取为主要目标,本文通过采用NB-IoT无线通信技术对大口径水表进行数据的远程传输和发送,不再需要人工检测和查抄水表,这不仅大大提高了采集水表数据的精度和准确性,同时也降低了抄表工人的劳动强度。除此之外,利用NB-IoT无线通信技术可实时反映用户的用水情况,在一定程度上降低了偷水盗水现象的发生。本设计题目要求设计大口径水表数据采集终端,设计时需考虑以下因素:(1)以单片机为核心的应用系统设计;(2)输入接口电路设计,按双脉冲信号采集用水信息;(3)通信接口设计,考虑采用NB-IoT方式;(4)通信协议设计;协议应符合CJ/T188并以软件实现;(5)计量程序设计;(6)通信程序设计;(7)其它相关程序设计。总体方案设计总体方案设计原理大口径水表数据采集终端设计由高能锂电池供电,使用超低功耗的STC89C52RC控制器来管理整个系统,对大口径水表进行数据采集,通过外接式水表采集器将干簧管采集到的脉冲信号按CJ/T188通信协议的格式发送到MCU中,再通过无线通信NB-IoT模块将数据传输至远程主站[6]。电池的供电能力、电源的管理和通信方式都是大口径水表通信终端能否正常运行5年以上的关键。总体方案设计图图2-1系统总体方案设计图方案小结本系统主要由NB-IoT通信网络、单片机系统、水表数据采集器(干簧管)等构成,单片机通过传感器采集到用水数据并实现本地存储(也就是存储到单片机内部EEPROM或外扩的FLASH中),数据在单片机中进行分析处理并存储,规定的时间到或是接收到平台的读命令后,系统上传数据,在单片机中对于加工处理的数据都是可以由NB-IoT无线通信网络传输并发送到物联网平台的。对于大口径水表数据采集终端设计的研究与应用,既可以有效提高自来水公司的管理水平和运营工作效率,又可以给公司带来一定的经济效益和社会效益。下面就硬件选择和软件设计分别作以叙述。硬件设计硬件设计原理大口径水表数据采集终端设计的主要思路是:首先在当前使用的传统机械水表中加装传感器和数据采集器,实现将用户用水的物理量变成电信号,将采集到的的电信号发送到MCU中进行数据分析加工和处理并最后进行存储。本设计采用基于NB-IoT窄带物联网技术的无线通信模块,把单片机分析加工处理后的水表数据传输到云平台上,对大口径水表数据进行统一的管理[7]。终端设计硬件主要划分为数据采集系统、单片机系统和通信模块三个部分。数据采集系统主要由数据采集器、脉冲式传感器等组成,其中采集器是水表数据采集终端的核心,不但负责对大口径水表的脉冲个数进行计量统计,进而算出用户累计用水量,同时通过通信模块接收来自单片机系统的各种指令,并对相应的指令做出即时的响应。单片机系统接收来自数据采集系统采集到的水表数据并进行加工数据。系统硬件电路的原理框图如图3-1所示。图3-1硬件设计原理图单片机单片机的选取单片机是实现大口径水表数据采集终端设计的核心元器件,该器件负责接收采集到的计量脉冲,并对接收到的脉冲信号进行分析加工处理并进行存储,同时要实现上传等工作[8]。单片机的选择要同时可以满足上述所有功能要求,除此以外,还应在以下几个方面进行考虑,选择最为合适的单片机进行设计:(1)选择自己较为熟悉的单片机系列,容易上手操作,所以决定在STC8,AVR[9]单片机,STM8三个系列中进行选择。(2)选择抗干扰性强的单片机能更好的适应实际的工作环境,一般大口径水表的工作环境会产生噪声等,影响脉冲信号的传输。(3)选择功能性强的单片机,同时考虑功耗问题,在满足系统要求功能的前提下尽量降低功耗。(4)选择知名度较高的单片机类型,不但可以保障质量,并且货源充足稳定,相比之下,成本更低。除此之外得到的相关资料、技术支持更多。根据以上所有方面的综合考虑,在满足基本功能的前提条件下,尽可能达到低成本,低功耗,最终敲定选择使用STC89C52RC芯片[10]。STC89C52RC的结构STC89C52RC单片机是中国宏晶旗下的一款产品,它具有运行速度快、驱动功耗低、抗干扰能力强等优点,他的内部结构与MCS-51的内部结构基本相同。STC89C52RC单片机的指令系统和引脚功能与MCS-51的完全兼容[11]。STC89C52RC单片机内部软硬件架构框图设计如图3-2所示。图3-2STC89C52RC单片机结构STC89C52RC主要性能指标:1)8K字节可重擦写2)1000次可擦写周期3)全静态操作:0Hz-24MH4)三级加密程序存储器5)256*8字节内部RAM6)32个可编程I/O口线7)3个16位定时/计数器8)8个中断源9)可编程串行UART10)三种工作方式:低功耗模式,空闲模式,掉电模式11)Flash闪速存储器STC89C52RC管脚展示STC89C52RC是一种八位的微控制器[7],芯片管脚如图3-3所示,采用了经典的MCS-51内核。图3-3STC89C52RC芯片管脚传感器(干簧管)传感器的选取本文所用的传感器主要作用是将感受到的水流量,按一定规律转换成便于计量和传输信号的装置,电信号容易被处理和传输,常用的传感器类型有干簧管、光电传感器、霍尔元件等。干簧管:我们完全可以把它看成是一种特殊的磁敏感性开关,两个由磁性材料焊接制成的触点被紧紧密封在没有空气的真空玻璃管里。只要其中有一根极性磁铁向这个干簧管靠近,干簧管的另外两个电极连接点接合处便会分别产生两个磁性相反的电极,从而直接引起两个连接点由于吸引力而吸合在一起,电路也就导向贯通,因此,干簧管传感器可以直接用来作脉冲计量传感器。霍尔效应传感器:工作电压的范围宽、应用多变灵活、采样频率高,可靠性较高。光电传感器:光学通路把需要被测量的物理变化量转化成光学信号变化量,然后再通过光电元器件将其转换成最终的电信号。这种传感器具有不接触、测量参数精度高、反应快等优点,而且可以测量各种参数,形式多种多样。干簧管作为一种特殊的磁敏式开关,比传统的电子开关具有更强的抗负载冲击能力,比一般传统的机械式开关结构设计简单、可靠性高、体积小、运行速度快、使用寿命长。因此,本设计中选择使用干簧管作为大口径水表数据采集的传感器,实现对用户用水量从物理信号到脉冲电信号的转变。干簧管的特点干簧管传感器是一种脉冲式传感器,在实际使用的过程中能够较为有效地克服感应点震动而导致信号被错误发出等弱点,具有传输信号更加准确、防磁能力强等突出优点,具体表现在以下几个方面:1)干簧管传感器是一种无源器件,没有电源供电也可以输出理想的方波信号,远距离传输可达一公里;2)干簧管传感器采用加层的不锈钢外壳,起到了防磁作用,也能够较为有效的防止用户盗水现象的发生;3)干簧管传感器通过一定的技术手段,使其在触点吸合时的稳定性在平衡状态时得到了大大的提高,并且干簧管在平衡状态时就有一定的能量强度,只要没有较大的外部作用,干簧管的状态就不会发生任何的改变,这种技术手段能够较为有效的克服水锤等临界感应点因小范围的震动而导致信号被错误发出等弱点,从而大大的提高了信号的传输准确性;4)干簧管传感器可以实时监察到用户的用水状态;5)干簧管传感器为真空密封结构,这种结构可防潮、防水;6)使用寿命长。干簧管结构对用户用水量的数据采集是通过双干簧管传感器实现的。本文设计采用MARR-5干簧管进行水表数据的采集,其结构如图3-4所示。MARR-5干簧管中有两个簧片,簧片的一端是由磁性材料焊接制成的触点,两个触点被紧紧密封在没有空气的真空玻璃管里且接点处不接触,留有一定的空隙[12]。图3-4干簧管结构图当有一种磁性物质(磁铁)靠近MARR-5干簧管时,接点处就会出现两个极性相反的磁极。由磁极同性相斥异性相吸的工作原理可知,当磁力的吸引力不断增大达到一定程度时,两片簧片就会吸合在一起,干簧管开始进行脉冲计量。干簧管工作原理在用水管道中安装一个可以自由旋转的叶轮,当有用户用水时,水流会推动叶轮的旋转,用水量越大,水流的流动速度就会变得越快,同时叶轮被水流带动的旋转速度就会越高。在叶轮的轴向方向上方安装一个计数的旋转盘,叶轮的转动带动计数转盘的转动,同时在转盘上放置一片永磁铁并加以固定,最后将两个MARR-5干簧管安装在装有永磁铁的转盘上方,这就实现了将机械信号变成电信号的过程,用水量每到100升,干簧管的两个接点顺序吸合与断开一次,这就实现了脉冲记数[13]。整个干簧管的工作过程示意图如图3-5所示。图3-5干簧管工作结构图计量转盘每转一圈,其上放置的永磁铁就会经过一次MARR-5干簧管,干簧管中的两个接点顺序吸合与断开一次,从而产生一个计量脉冲,将该脉冲信号传输到单片机中进行加工处理即可得出用户的用水量。本文采用两个MARR-5干簧管传感器(见图3-5)。当单片机检测到A信号时,先记录下来不作处理;当再检测到B信号时,认为此次采集的数据有效,将产生的计量脉冲发送到单片机中进行分析处理并存储。这种方式很大程度上克服了水锤现象、外界噪声干扰等因素的影响,提高了大口径水表数据采集的准确性。干簧管技术指标干簧管的各项技术指标如下:1)双干簧管采样1发一个脉冲;2)密封性:无泄露;3)工作电流:≤50mA;4)工作电压:3.6V±0.5V。数据采集电路MARR-5干簧管可看做一个开关,该脉冲传感器与单片机的接口电路如图3-6所示。图3-6脉冲采集电路该脉冲采集电路采用并联一个小电容的方式,来消除干簧管吸合断开时的机械抖动。开关K控制着P3.2引脚接收到何种类型的电平,当开关K闭合时,INT0引脚将会接收到低电平,当开关K断开时,INT0引脚将会接收到高电平。MARR-5干簧管每吸合断开一次就会输出一个计量脉冲,而每输出一个计量脉冲单片机接收到该计量脉冲后就会触发外部中断。当脉冲常数为100时,STC89C52RC单片机每触发一次外部中断则用户累计用水量将会增加100。通信模块在现阶段,我国对于大口径水表数据的远程传输管理,主要趋势是普遍采用诸如ZigBee、LoRa、5G等通信技术,这些无线通信技术手段普遍存在系统功耗大、成本高、难度系数大等一系列缺点,而采用NB-IoT技术可以在一定程度上有效的客服这一系列缺点,提高水司的工作效率。于此同时,国内大口径水表数据采集终端设计的开发主要侧重于对大口径水表数据采集端的开发,缺少对采集到的数据的分析管理与远传的研发。因此,本文设计了基于NB-IoT物联网传输技术的大口径水表数据采集系统,实现了对水表数据的自动采集,同时对数据进行管理、分析、远传。本文采用NB-IoT窄带物联网技术作为数据传输网络的核心技术。数据的采集过程如下:数据采集器在采集到脉冲信号后,通过NB-IoT网络将该计量脉冲传输到MCU中,采集到的数据在单片机中进行分析处理并存储,最后再通过无线通信网络技术将大口径水表数据传输到云平台上,供水企业进行统一的管理。通信技术的选取图3-7为三种无线通信技术的技术性能指标的比较情况。图3-7几种无线通信技术性能比较通过几种无线通信技术的各个性能的对比,本文研究采用了NB-loT技术作为通信模块的核心技术。NB-IoT技术可以满足大口径水表数据采集的网络远程传输要求,能够有效解决在查抄水表过程中所遇到的各种难题。例如,在查抄水表的过程中如何让采集到的信号能够具有更强的穿透能力?这样可以方便下一步对数据的分析与处理[10]。NB-IoT网络3GPP是电信协会的协作组,负责解决蜂窝技术的开发和维护问题。3GPP发布了多个版本(Phase1、Phase2、…Release13),提出并计划蜂窝网络和技术的增强和开发。3GPP第13版(Rel-13)解决了随机接入网络(RAN)的进步,并引入了增强MTC和NB-IoT等新技术以支持蜂窝物联网。NB-IoT其规范主要针对设备低成本、低功耗、远距离和易于部署的目标,使其成为物联网部署的合适候选者[11]。新技术的部署具有挑战性,在大规模商业化之前需要解决、分析和解决一些复杂或意外的问题。尽管NB-IoT具有许多有用且有前途的特性,例如,20dB增强的链路预算、低部署成本以及与传统网络(4G和GSM)的兼容性,但它容易受到网络同步和时钟偏移。NB-IoT的目标是实现低至5欧元的设备成本[14]。在设备中发现的时钟振荡器的质量极大地影响了网络中的同步问题。NB-IoT的性能特点NB-IoT的目标是支持低成本设备、设备电池寿命长、网络的扩展覆盖范围和低部署成本以及延迟容忍服务和应用。这些目标可以通过3GPP在第13版(Rel.13)中添加到LTE的几个扩展和修改来实现。已经有多项关于NB-IoT假设各种参数和系统部署的性能分析的研究[15]。(1)电池寿命长设备的电池寿命旨在达到10年甚至更长的最大覆盖水平,最大耦合损耗(MCL)为164,电池容量为5瓦。研究表明,由于较长的eDRX和省电模式(PSM),可以延长电池的使用寿命。eDRX允许UE休眠长达1000秒,同时定期唤醒以检查寻呼,而在PSM中,UE处于断电或休眠模式,已注册但无法通过网络访问。(2)覆盖范围广NB-IoT的目标是通过将灵敏度提高20dB来实现164dB的MCL,从而提高小区覆盖范围。多项研究的独立和带内模式NB-IoT的链路预算表明,对于考虑使用Rel的信道,可以实现164dB的MCL特点。在带内部署中,LTE6和NB-IoT下载时eNodeB46dBm功率可用,其中35dBm用于NB-IoT(对应于基线的6dB功率提升)。应用层的下行和上行数据速率分别为0.40kbps和0.27kbps。(3)设备成本低设备成本的主要因素是网络的复杂性。系统的复杂性随着其性能的优化而增加。3GPP最新版本Rel.12和Rel.13引入了更低复杂性和更简单的设备类别来支持IoT和M2M。NB-IoT中170kbps(DL)和250kbps(UL)的较低数据速率、半双工模式、180KHz带宽、1天线UE特性大大降低了设备的复杂性和成本,并且可以生产低于5欧元的设备。此外,20/23dBm的低功率器件允许将功率放大器集成在单个芯片中并大规模生产,大大降低了器件成本。(4)容量大NB-IoT旨在连接大量设备,目标是在一个蜂窝站点内支持近52000台设备。研究表明,每个NB-IoT运营商的蜂窝站点扇区可以支持7250,000个设备,并且可以通过多个运营商支持更多设备。这些研究基于具有环绕干扰分配的19个站点、57个小区系统设置的传统宏系统模拟。(5)延迟NB-IoT的目标是支持对延迟不敏感且可容忍长达10秒的延迟的服务。研究分析表明,9.9秒的延迟可以达到99.9%的置信度。假设延迟报告包括20字节的应用报告、65字节的上层协议报头和15字节的SNDCP/LLC/RLC/MAC/CRC开销。(6)部署成本低现有网络(LTE和GSM)的复用可以大大降低NB-IoT网络的部署成本。此外,在现有LTE网络上进行简单的软件升级,无需重新安装硬件,将降低覆盖比现有LTE网络更高的NB-IoT网络的部署成本。LTE网络和NB-IoT可以使用相同的硬件并共享频谱,而不会因为部署模式不同(带内、保护带和独立)而遇到共存问题。NB-IoT工作模式NB-IoT占用了180kHz的数据频谱和网络带宽,在工业实践和实际应用发展过程中,它可以采用三种不同的独立部署解决方案,分别是带内部署、独立部署和保护带部署。不同的部署方式,信号源的抗干扰和抗衰减能力也必然是千差万别的。NB-IoT的工作模式是采用半双工模式,这种工作方式在很大程度上降低了功耗,功耗问题实在设计当中必须重点考虑的问题。通过对采集到的脉冲计量信号的检验,判断基站与终端之间的水表数据传输的准确性。NB-IoT数据传输完成数据采集后,传感器需要将采集到的水表数据传输到CPU中,再经过CPU的分析加工和处理传输到云平台上。因为终端在同一时刻只能使用一个固定的载波进行数据传输,因此通过多次数据传输进行信号的检测,这种多次传输的方式有效的降低水表数据传输的错误率,避免错误脉冲信号的传输。在数据传输过程中,各个大口径水表的地址也确定很重要(所在小区的位置),也就是小区搜索[16]。NB-IoT下行信道窄带主同步信号(NPSS)用于执行小区搜索,包括时间和频率同步以及小区标识检测。它使用子帧中的最后11个OFDM载波在每10毫秒帧中在子帧中传输。窄带辅助同步信号(NSSS)它具有与NPSS类似的功能,例如小区标识组检测,它在子帧中传输,也使用子帧中的最后1个OFDM符号,它具有20毫秒的周期。窄带物理广播信道(NBPBC)它携带主信息块(MIB),每10毫秒在子帧中传输。窄带物理下行链路共享信道(NPDSCH)它携带来自高层的数据和寻呼消息、系统信息和RAR消息。NPDSCH的最大传输块大小为680位。NPDSCH和NPDCCH被分配了各种子帧来承载信息。窄带参考信号(NRS)用于为下行链路信道的解调提供参考。所有下行信道都使用LTE咬尾卷积码(TBCC)来降低UE的复杂度。NB-IoT上行信道窄带物理随机接入信道(NPRACH)它是为NB-IoT全新设计的,因为传统LTE使用1.08MHz的带宽,高于NB-IoT的总带宽,即180KHz。NPRACH的前导码由4个符号组组成,每个符号组有一个CP和5个符号。CP长度根据格式0和格式1变化,对应于10km小区半径的66.67us和最多40km小区半径的266.7us。NPRACH的波形称为跳频,为了支持覆盖扩展,前导码可以重复128次。窄带物理上行共享信道(NPUSCH)它有两种格式:格式1和格式2。前者用于承载上行数据,最大TB为1K比特。它支持传统LTE那样的多音传输,并且可以分配12、6或3个音调。后者用于发送NPDSCH的HARQ确认信号,并使用重复码进行纠错。NPUSCH支持基于15KHz和3.75KHz载波间隔的单音传输,它使用/2-BPSK或/4-QPSK,符号之间具有相位连续性,以降低PAPR。软件设计软件设计主要研究内容包括通信协议设计(协议应符合CJ/T188);计量程序设计;通信程序设计和其它相关程序设计。执行程序中主要是对系统的中断进行一系列基本的初始化设置;而外部中断服务子程序则是为了实现数据采集器与单片机的通信连接,使用中断可以提高单片机的工作效率,方便进行下一步的水表数据的处理操作,中断服务子程序包括串行口通信中断与外部中断0,其中,外部中断0的优先级高于与串行口通信中断。开发软件采用目前流行的KeilC5编译器。数据采集端主要实现如下功能:采集大口径水表的脉冲信号、数据采集端接收来自单片机的命令以及单片机命令做出及时响应。对大口径水表计量脉冲信号的采集通过触发外部中断事件的方式实现,将采集到的水表数据传输到单片机中进行处理操作,依靠从站NB-IoT通讯模块实现与主机的通信,每次接收与发送数据时均会触发中断事件。主程序设计大口径水表数据采集终端设计系统软件采用KeilC5编译器编译生成,软件要实现的主要功能如下:(1)STC89C52RC单片机接收来自干簧管产生的脉冲信号;(2)对采集到的水表数据在单片机中进行分析加工处理并存储;(3)对加工处理的数据通过无线通信进行远程传输。首先,进行初始化的设置(包括设置堆栈指针、设置定时器的工作方式与初值、设置串口的初始态和工作方式、设置8563的初始值、设置各种默认参数等等[17]),初始化完成后,CPU进入休眠状态,当CPU接收到数据采集器采集到的脉冲信号后,触发中断被唤醒。整个软件流程图如图4-1所示。图4-1整个软件设计流程图初始化的软件流程图如图4-2所示。图4-2主程序软件设计流程图数据采集程序设计MARR-5干簧管采用单计数脉冲输入,2个0.1的电容用来消除双干簧管接点吸合时产生的机械抖动。计数转盘每转一圈,永磁铁经过MARR-5干簧管一次,此时,干簧管会产生一个计量脉冲。双干簧管工作原理的具体的程序流程如图4-3所示。图4-3双干簧管工作流程图当检测到干簧管A的脉冲信号时并不直接开始计算,还要检测干簧管B的脉冲信号。当干簧管B的脉冲信号也被检测到的时候,认为此次计量脉冲有效,修改累积量,清除A标志,并进行记录,与以前的检测脉冲数求和,最后返回继续从新检测A、B脉冲信号。外部中断服务程序设计MARR-5干簧管发送的脉冲信号由P3.2管脚接收,STC89C52RC单片机采用外部事件中断的工作方式,保障了对计量脉冲信号的可靠采集。STC89C52单片机的外部中断源有两个,分别是INT0-由P3.2端口引入,低电平或下降沿引起。INT1-由P3.3端口引入,低电平或下降沿引起。这两个外部中断源标识和它们的触发方式控制位由特殊功能寄存器TCON的低4位控制。把边沿直接触发的操作方式设置为外部中断请求信号的触发方式,当接收端的引脚发生从高电平向低电平的负跳变时,就会触发外部中断0,同时向CPU发送中断指令,中断0指令优先级最高,CPU会先进行中断指令的处理,在中断服务子程序中将数据采集端新采集到的用水量进行存储。中断0服务程序流程图如图4-4所示。图4-4外部中断0服务程序通信中断服务程序设计STC89C52内部中断源有3个,分别是T0-定时器/计数器0中断,由T0回零溢出引起。T1-定时器/计数器0中断,由T1回零溢出引起。TI/RI-串口IO中断,串行端口完成一帧字符发送或接收后引起。这3个内部中断源的控制位分别锁存在特殊功能寄存器TCON和SCON中。串行口工作之前需要对相关寄存器进行配置,设定其工作模式:(1)设置T1的工作方式(编程TMOD的寄存器);(2)计算T1的初始值,装载TH1,TL1;(3)启动T1(编程TCON中的TR1位);(4)确定串行口控制(编程SCON寄存器);(5)如需串行口在中断方式工作时,要进行中断设置编程IE寄存器。两个16位定时器/计数器:定时器0(T0为P3.4)和定时器1(T1为P3.5)这里说的16位是指定时/计数器内部分别有16位的计数寄存器。当工作在定时模式时,每经过一个机器周期内部的16位计数寄存器的值就会加1,当这个寄存器装满溢出时,我们可以计算出工作在定时模式时的最高单次定时时间为65535*1.085us=时间(单位us)当工作在计数器模式时,T0(P3.4引脚),T1(P3.5引脚)每来一个脉冲计数寄存器加1。数据采集端接受来自STC89C52单片机发送来的命令和上传水表数据是,都是通过串行口来完成的[18]。波特率可由式(4)计算得出:方式1波特率=式(4)在实际应用中,按照系统所要求的通信波特率,设置SMOD=0后,在计算出T1的时间常数。由式(4)可得出:式(5)本设计要求定时/计数器T1为工作方式2,设置晶振频率fosc为11.0592MHz,此时的串行口波特率为9600bit/s,根据式(5)计算可以求出T1的时间常数。单片机与数据采集端之间的通信主要是对数据采集端进行各种读写操作,本文中单片机访问数据采集端的命令主要有读水表计量数据、读水表地址以及写水表数据初始值(底数),数据采集端接收到单片机发送的命令后会返回相关程序进行及时的响应,数据采集端与单片机的通信程序流程如图4-5所示。图4-5采集器与上位机的通信程序流程图通讯协议设计CJ/T188协议作为一种仪表的通信协议,与多功能电表协议类似,规定了计量仪表数据传输的各类标准,包括接口的形式、通信数据帧的格式、各类数据的表示内容、数据通信链路的形式和每组数据表达的内容,该协议经常应用于集中抄表系统中[19]。协议说明见后续各个小节:接口形式仪表的通讯接口应符合图4-6的规定,优先采用图4-6的接口形式。当采用其他接口时应符合相关标准的规定。图4-6仪表的通讯接口字节格式采用主从结构的半双工通信方式,每字节含8位二进制码,在进行通信传输时,总共要发送11位,在需要被发送的八位数据的前面加上一个起始位(0),后面首先加上一个偶校验位(E)再加上一个停止位(1)。D0是字节的最低位,D7是字节的最高位。传输次序为从低位到高位依次传输,字节传输序列如下图4-7所示。图4-7字节传输序列帧格式传输数据帧应符合规定,如图4-8所示。图4-8帧格式仪表类型及其代码应符合规定,如图4-9所示。图4-9仪表类型及其代码说明地址域(A0~A6)由七个字节组成,每个字节为2位BCD码格式。地址长度为14位十进制数,地址由低到高进行从前到后进行排列。控制码(C)图4-10控制码格式D7:0—由主站发出的控制帧;1—由从站发出的应答帧。D6:0—通信正常;1—通信异常。D5~D0:00×000—保留;00×001—读数据;00×100—写数据;00×011—读地址(表号);01×101—写地址(表号);01×110—写机电同步数(置表底数);1*×***—厂商自定义。数据长度域(L)占用一个字节,为数据域的字节数,用十六进制表示。数据域(DATA)包括数据标识、序列号和数据,其结构随控制码的功能改变。校验码(CS)为一个字节,从帧起始符开始(包含帧起始符)到校验码之前的所有各字节进行二进制算术累加,不计超过FFH的溢出值。传输要求传输次序所有数据的传输均按由低字节到高字节依次传输的方式。传输响应每次请求发生通信时,先由主站发出命令帧,被选择与主站进行通信的从站根据命令帧的指令做出及时响应。主站请求进行通信不同响应结果的时序见图4-11、图4-12和图4-13。二进制位传送时间Tbit=1/波特率(s);字节传送时间Tbyte=11Tbit;延迟时间Td=1Tbyte;帧传输时间Tframe=帧字节数×(Tbyte+Tb);最长响应时间Tr=500ms+30×Tbyte;线路空闲时间Tli=30ms;实际帧传输时间Tfba=实际帧字节长度×(Tbyte+Tb);字节间的停顿时间Tb≤1Tbyte;重复通信次数I≤3。图4-11主站请求成功时序图图4-12主站请求无应答失败时序图图4-13主站请求应答错误失败时序图命令举例关于本设计的通信功能有以下基本要求:首先,可将干簧管传感器产生的脉冲计量信号作为水表数据被准确读出;其次,用户使用的水表地址可随时被准确读出。因此本设计的基本通信指令总共有三个,分别是读计量脉冲、写水表数据与读水表地址,对于其它发送错误格式的指令均不做响应[20]。主站请求操作的报文格式如下图4-14所示。图4-14主站请求操作报文格式图4-15从站正常应答报文格式读计量响应(1)主站请求读对地址为00000130721608的水表计量数据的指令如下:FEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFE6810081672300100000103901F011B16(2)主站请求读水表地址的指令如下:FEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFE6810(水表地址)0303810A01B016,对单个模块进行读水表地址的操作。(3)主站请求对地址为00000140802509的水表写入初值236.65m3指令如下:FEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFE6810092580400100001608A01601653602002C5716指令说明:指令中2C表示单位为立方米关键程序代码展示STC89C52RC单片机之间串行通信代码(1)发送端:#include<reg52.h>unsignedcharcodetable[]={0xc0,0xf9,0xa4,0xb0, 0x99,0x92,0x82,0xf8, 0x80,0x90};//0-9sbitk1=P3^2; //定义按键voiddelay(unsignedintm) //延时函数{ unsignedinti,j; for(i=0;i<m;i++) { for(j=0;j<100;j++); }}voidmain(){ unsignedcharn=0; TMOD=0x20; SCON=0x50; TH1=0xfd; //波特率9600 TL1=TH1; TR1=1; //启动定时器1 while(1) { if(RI) { P0=SBUF; RI=0; } if(k1==0) { delay(100); if(k1==1) //按键按下有效 { SBUF=table[n]; while(!TI); TI=0; if(n==9) n=0; else n++; } } }}(2)接收端:#include<reg52.h>unsignedcharcodeTABLE[16]={ 0x01,0x02,0x03,0x04, 0x05,0x06,0x07,0x08, 0x09,0x0a,0x0b,0x0c, 0x0d,0x0e,0x0f,0x00};unsignedinti=0;sbitK1=P3^2;sbitLED=P2^4;voiddelay(unsignedintm) //延时函数{ unsignedinti,j; for(i=0;i<m;i++) { for(j=0;j<100;j++); }}voidmain(){ TMOD=0x20; SCON=0x50; //串口工作在方式3 TH1=0xFD; //波特率9600 TL1=TH1; TR1=1; //启动定时器1 while(1) { if(RI) { LED=0; P0=SBUF; RI=0; } if(K1==0) { delay(100); if(K1==1) { SBUF=TABLE[i]; while(!TI); TI=0; if(i==16) i=0; else i++; } } }}结论我国供水行业对大口径水表在管理方面上存在许许多多的问题,例如查抄水表的工作量大;采集到的水表数据汇总缓慢;水表出现故障时,自来水公司不能及时发现并派人维修;使用的传统水表也容易产生偷水盗水现象的发生。高效管理大口径水表对于自来水公司有着举足轻重的作用。因此,我进行了大批量文献的查阅,翻看了大量的国内外相关文献,最终敲定采用基于NB-IoT无线通信技术的大口径水表数据采集技术是较为理想的解决方法。本文研发的基于NB-IoT无线通信网络的大口径水表的数据采集终端,主要包括硬件选择和软件设计两部分。首先介绍了大口径水表的国内外使用研发现状,明确了大口径水表数据采集终端设计研发的大致思路。完成了大口径水表数据采集系统中的硬件选择设计,其中包括传感器、单片机、通信模块等设计工作。完成了对水表数据远程传输中基于NB-IoT窄带物联网的传输协议的设计工作,较为详细的分析了CJ/T188协议并完成了对其数据的收发程序的设计。设计并开发了大口径水表数据采集终端设计。本文关于大口径水表数据采集终端设计具有较强的实用性,通过不断地技术完善,可广泛的应用于各行各业。数据采集系统采集数据准确、实时,自动化的系统采集节省了人力,缩短了抄表周期,同时也提高了供水部门的经济效益和服务管理水平。展望未来,随着5G技术的不断成熟和发展,5G技术将慢慢广泛应用于中国智能水表产品行业的主要领域和方向,5G技术具有数据传输快,流量支出费用的可控和智能终端维护及时等优点,利用NB-IoT的技术优势再结合5G技术符合未来社会的发展,将有极大地可能应用于水表行甚至其他领域的大规模商用,这种对新一代技术的完美结合也充分展示了中国对未来社会发展的要求。参考文献包振虎,温伟,邢增招,等.城市智慧水务管理信息系统的设计与实现[J].四川水利,2021,42(2):145-150.[2]张祥.基于GPRS技术的农村用水远程自动抄表系统的设计与实现[D].内蒙古:内蒙古科技大学,2015.DOI:10.7666/d.D665877.[3]吴慧玲,邵丽红.一种基于Modbus协议的改进智能水表解决方案[J].现代计算机(专业版),2014(24):63-66.DOI:10.3969/j.issn.1007-1423.2014.36.018.[4]郦红英,王培永,林圳钇.大口径水表性能及应用的研究[J].城镇供水,2017,(3).28-32,42.[5]佀金玲.无线远传大口径水表的数据采集与管理系统[D].河北:河北科技大学,2013.DOI:10.7666/d.D468585.[6]陈薇.能耗监测系统数据采集终端的设计与实现[D].陕西:西安科技大学,2016.[7]张协衍,王玲.大口径水表数据采集通讯终端的研究和设计[J].计算机系统应用,2010,19(5);133-136,128.DOI:10.3969/j.issn.1003-3254.2010.05.031.[8]魏琳.单片机多路数据采集系统设计[J].通信电源技术,2019,36(4):73-74.DOI:10.19399/ki.tpt.2019.04.032.[9]桑顺,牛晓聪,赵媛媛.AVR单片机与51单片机的比较[J].企业技

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论