基于无线通信的数据采集系统的设计_第1页
基于无线通信的数据采集系统的设计_第2页
基于无线通信的数据采集系统的设计_第3页
基于无线通信的数据采集系统的设计_第4页
基于无线通信的数据采集系统的设计_第5页
已阅读5页,还剩61页未读 继续免费阅读

下载本文档

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

文档简介

北京交通大学硕士学位论文基于无线通信的数据采集系统的设计姓名:汤文申请学位级别:硕士专业:电气工程指导教师:王毅20090601中文摘要摘要:本文以一种基于中文摘要摘要:本文以一种基于RF的无线数据采集系统研制过程为主要内容,详细阐述了利用无线收发芯片nRF2401设计的数据采集系统的设计流程、开发方法和开发过程,给出了具体的实现方案并对设计完成的系统进行了性能测试。在系统设计中采用了模块化的设计思想,按照系统功能划分为三大模块,即数据采集模块、无线通信模块、计算机显示处理模块。数据采集模块主要完成现场数据的采集;无线通信模块是基于Nordic公司的nRF2401无线收发芯片设计的,其设计功能是完成数据的无线传输:计算机处理显示模块是应用VisualC++软件编写的,通过可视化、友好的编程界面实现数据的显示与处理。系统开发的最终硬件成果是一个小巧的数据采集装置,通过USB接口与PC机连接,工作人员在基于WindOWS的图形界面上对各项功能进行操作,方便直观。调试结果表明:本系统可以在无线通信方式下实现数据采集,满足数据采集系统的要求,达到了预定的技术指标。关键词:数据采集;射频;无线传输分类号:ABABSTRACTABSTRACT:ThethesiscontainscontentwithakindofwirelessdataacquisitionsvstembasedonRF'whichdesignedbythereceivinganddispatchingchipnRF2401.Thepaperexplainsdetailedlythedesignapproach,method,procedure,providestheconcreterealizationschemeandcarriesOilthetestoftheperformance1ndesignedsystem.Du订ngthedesignprocedure,thesystemisdividedintothreemajormodulesaccordingtothefunctionalstructure,namelydataacquisitionmodule,wirelessconununicationmoduleandcomputerdealingmodule.Dataacquisitionmoduleco瑚【pletesthedataacquisitiononthespot,wirelesscommunicationmoduleismadeupofnRF2401chip,whichmainlyrealizeswireless.datatransmission.Thecomputerdealingmoduledisplaysanddealswiththedatathroughthevisual,friendlyprogramminginterface.FinalachieverIlentofthesystemdesignisacompactdataacquisitiondevice,whichconnectswithPCthroughUSBinterface.systemisoperatedthroughtthegraphicaluseriInerf.acebasedonwindows,whichisveryconvenienttooperate.Debuggingresultindicatedthatthedataacquisitioncouldbeachievedinwirelesswayusingthissystem,datat舢smissionsatisfytherequestofthedataacquisitionsystemandreachthepreconcertedtechnicalindex.KEYWORDS:Dataacquisition;Radiofrequency;WirelesstransmissionCLASSN0:学位论文版权使用授权书学位论文版权使用授权书本学位论文作者完全了解北京交通大学有关保留、使用学位论文的规定。特授权北京交通大学可以将学位论文的全部或部分内容编入有关数据库进行检索,提供阅览服务,并采用影印、缩印或扫描等复制手段保存、汇编以供查阅和借阅。同意学校向国家有关部门或机构送交论文的复印件和磁盘。(保密的学位论文在解密后适用本授权说明)、7 学位论文作者签名: 沏乏 导师签名:签字日期:沙c}年6月24口!q 签字日期: 沙。彳年多月独创性声明独创性声明本人声明所呈交的学位论文是本人在导师指导下进行的研究工作和取得的研究成果,除了文中特别加以标注和致谢之处外,论文中不包含其他人已经发表或撰写过的研究成果,也不包含为获得北京交通大学或其他教育机构的学位或证书而使用过的材料。与我一同工作的同志对本研究所做的任何贡献均已在论文中作了明确的说明并表示了谢意。学位论文作者签名:>勿主 签字R期: 沙多年石月矽同63致谢致谢本论文的工作是在我的导师王毅教授的悉心指导下完成的,王毅教授严谨的治学态度和科学的工作方法给了我极大的帮助和影响。在此衷心感谢两年来王毅老师对我的关心和指导。王毅教授悉心指导我们完成了实验室的科研工作,在学习上和生活上都给予了我很大的关心和帮助,在此向王毅老师表示衷心的谢意。在实验室工作及撰写论文期间,罗礼全、常广、刘思佳,鄢素云等博士师兄和谢将剑、马力、王佳曦、柏泽龙等同学对我论文中的研究设计工作给予了热情帮助,在此向他们表达我的感激之情。另外也感谢我的父母,他们的理解和支持使我能够在学校专心完成我的学业。引言引言1引言1.1课题的背景和意义我国lOkV的电力系统大多采用中性点不接地系统或经消弧线圈接地的运行方式,即为小电流接地系统。中性点不接地系统,当发生单相接地时,不构成短路回路,可继续运行一段时间。但此时非接地相对地电压却升高为相电压的√3倍,而且,由于输电线路对地有电容,中性点不接地系统单相接地时,接地点接地电流属容性电流。随着网络的延伸,该电流也愈益增大,完全有可能使接地点电弧不能自行熄灭并引起弧光接地过电压,甚至可能发展成严重的系统性事故。因此,必须及时判断、查找出故障线路,进行处理。单相接地是电力系统最常见的故障,由于接地电流微弱、故障电弧不稳定等原因检测起来困难很多。该类型故障的定位一直是困扰电力部门线路维护人员的难题。故障指示器是目前应用较多的一种产品,当供电线路有短路或接地故障发生时,安装在架空线上的故障指示器的传感器检测出电流电压突变信号。故障指示器内部CPU对信号进行分析比较运算后,进行翻牌显示(转红),达到设定时间能自动复位,恢复初始指示状态。工作人员通过报警指示信号,能够迅速准确地找到电力线路故障位置而及时排除,大大加快了故障查找和处理速度。然而,在应用过程中,发现部分故障指示器不能正确动作,甚至误动作。究其原因,是由于故障指示器动作值整定不合理,整定值太高,发生故障时指示器不动作;整定值太低,指示器误动作lIJ。因此,为了研究发生故障时电力线路中的故障参数,更加准确地设定故障指示器的整定值,需要研制一套电力线路数据采集系统,收集输电线路正常工作时和发生故障时的参数。本设计将无线通信技术应用于电力线路的数据采集中,旨在改善信号的输出方式。要采集架空线路上电流的参数,并在上位机上显示采集到的数据,使用无线通信方式是最有效和最安全的。如果使用有线方式传输数据,电力线路间以及线路与大地之间的分布电容参数将受到影响,无法获得有效准确的数据。电力线路的高压环境也对数据的传输有一定影响,对设备的绝缘有很高的要求。本系统的应用,将有助于了解线路的实际运行情况,为故障指示器的动作准确性的提高创造了条件,也便于对故障时的参数进行分析。数据采集系统对环境要求低、抗干扰能力强,传输距离较远,灵敏度高、性能稳定,接口方便这些良好的性能特点使得它能广泛应用于多个领域,如车辆监控、无线抄表、无线遥控、好的性能特点使得它能广泛应用于多个领域,如车辆监控、无线抄表、无线遥控、生物信号采集、水文气象监控等领域,具有广泛的应用前景。1.2国内外发展状况近年来随着计算机技术、通信技术、集成电子技术的飞速发展,在国内射频(RF)技术也趋于成熟,开发出了种类齐全的射频无线数据传输芯片。这些射频芯片,不仅传输速率快,而且失真度、灵敏度等指标较以前都有较大的提高。如今这些芯片正向集成化,小型化方向发展,使用成本也大大降低,采用射频芯片来开发嵌入式产品有非常广阔的应用前景。目前,国内外知名厂商都非常重视射频传输芯片开发研究以及应用射频芯片的嵌入式系统设计。在无线传输芯片制造方面,由于微电子技术的飞速发展,现在RF无线数据传输的发射与接收电路己经实现了集成化。其组成电路也更趋于简单。如现在应用比较广泛的Nordic公司的NRF系列和Chipcon公司的CC4000无线数传芯片,它们只需要较少的外围辅助元件就可以实现数据的无线收发。用于数据传输的芯片按照数字调制方式分主要包括振幅键控(ASK),频移键控(FSK),移相键控(PSK)三种方式,而短距离传输芯片常采用FSK调幅方式。这类芯片发射功率比较小,适合于用于短距离的数据采集,其中国际通用的数传频段433MHz,传输速率多为2400bps,4800bps,9600bps等。现代随着射频技术的发展,无线数传芯片尺寸越来越小,功能也越来越齐全,再加上辅助元件后在性能上更加优越,传输距离更远,信号的稳定性更高,传输速率更快,硬件实现简单,抗干扰能力强,特别适合工业控制场合,现在市场上的无线数据传输芯片主要为FSK调制方式,其频率发生器种类繁多,但基本上分为三类:第一种采用LC振荡器,可靠性低,但是价格便宜;第二种是采用声表振荡器,频率稳定性高于LC振荡器;第三种采用锁相环技术,晶振稳频,性能比较优良,价格也比较昂贵。在国内,应用这些高集成度的芯片嵌入要开发的系统中,广泛应用到国民经济的各个领域中:如无线数据采集传输系统,车辆监控,小型无线网络,无线抄表,工业数据采集系统,无线遥控系统,生物信号采集,水文气象监控,机器人制造,无线232数据通信等等。这些应用为国家和企业节省了大量人力物力,使我们现代办公和生活更加方便安掣41。2引言引言1.3本文的主要内容本文的主要内容是实现无线数据采集系统的设计。数据采集端对电力线路参数进行测量采集并通过无线方式把数据发送出去,数据接收端对采集端发送的数据进行接收并显示给用户。文章在系统硬件设计上详细阐述系统各个模块的硬件选择与连接,对模块设计中比较重要和需要注意的问题做重点介绍。在软件设计上,总体分为数据无线传输控制和PC机用户界面软件两部分的设计。本设计具体内容如下:1.对应用无线技术的数据采集系统的组成作以概括性的介绍,结合实际情况选择了合适的硬件器件。2.完成基于无线技术的数据采集系统的总体方案设计:主要描述了该数据采集系统的工作原理并给出系统框图;根据要求选择了无线传输方案,确定相关各硬件器件的选型。3.系统硬件电路设计:针对所选方案及选定器件,完成硬件电路的连接蝣并对各部分电路的原理及其在系统中所完成的功能作详细说明。4.系统软件设计:系统软件是基于模块化的设计思路,本文中按照硬件电路所完成不同的功能来设计不同的模块,给出了系统各部分模块的程序流程图。,5.系统调试情况:对仿真环境作简单的介绍,阐述了利用编程环境进行程序调试的步骤和过程,以及应用程序的测试结果。6.总结本论文的研究内容,针对系统在其他更高要求领域中的应用,提出了一些改进完善措施。3无线数据采集系统总体方案设计2无线数据采集系统总体方案设计2无线数据采集系统总体方案设计2.I系统结构综述本装置主要分为两个部分:(1)安装在电力线路上的电量采集发射单元,包含电压、电流互感器,单片机和无线发射单元。(2)无线接收单元和用于显示数据的监测计算机。本设计的数据采集系统工作原理是:在电力线路上需要数据采集的位置点安装电量采集发射单元,通过其中的电压电流互感器采集模拟信号,单片机把采集到的模拟信号进行AD转换,得到的数字信号通过单片机的SPI接口传输给无线发射芯片nRF2401进行数据的发射;在接收端,无线接收芯片收到有效数据后传送给单片机,单片机通过USB接口与监测计算机进行数据通信,用户可以在监测计算机的用户界面上看到数据及波形。其结构框图如图2.1所示。电磁疑堑髓射馥疋电琢互感器 陋 无群 蓊 /1 八∥ >移。 N数∥逋侨l毡流了t感器睁$ 鬟刀 卜 | 电鳖采黻射单元 氐粼划蠢p; ;l il 电壁采集发射译元 汐数掰通饿无线蓑模块 /L.。—、图2.1数据采集系统结构框图Figure2—1BlockdiagramofDataAcquisitionSystem52.2.2系统设计原则1.确保功能的完全实现系统设计的根本依据是所要实现的预定功能,它必须得到保证,一切对系统的优化及功能的扩展,都是基于系统满足功能要求的前提下进行的。2.系统性能指标达到要求要保证系统性能指标,如采样速率、系统分辨率、系统精度等等,主要应考虑系统输入信号的特性,如输入信号的通道数、信号的强弱及动态范围等。此外,还应充分考虑数掘量的大小,数据传输的速率,存储器的容量等因素。3.系统结构的合理选择。系统结构的合理与否,对系统的可靠性、性能价格比等有直接影响。首先是硬件、软件功能的合理分配。原则要尽可能“以软代硬”,只要软件能做到的就不要用硬件;其次要考虑系统的布局以及接口特性,接口特性包括采用什么样的总线、采样数据的输出形式(串行还是并行)、数据的编码格式等。4.有足够的抗干扰能力抗干扰能力也是设计本系统时所考虑的重要因素,根据工作环境的特殊性,以及系统结构设计、元器件选择等因素,数据将受到来自系统内部和外部的各种电气干扰,因此提高系统的抗干扰能力,从而保证系统的可靠性是设计中的又一关键【5】o2.3系统硬件电路的器件选型系统硬件电路的器件选型可以分成两部分进行:无线通信器件的选型、单片机器件的选型。2.3.1无线通信器件的选型无线通信方案有多种,其中由于应用环境和距离等因素的作用,使得蓝牙技术与射频技术显得更加适合本设计方案。这里,通过对比蓝牙模块和射频nRF模块,最终确定通信方案【61。两者的性能特点对照如表2.1所示:6无线数据采集系统总体方案设计无线数据采集系统总体方案设计表2.1蓝牙模块与射频nRF模块的特性对比Table2.1contrastofbluetoothmoduleandnRFmodule产品 硬件设计 接口方式 编程 通讯速率 通讯距离蓝牙 由发射接收处理, 复杂,时序严 通讯协议 30伊一 10米模块 基带处理等多个芯 格 和软件堆 400kbps片组成,硬件复杂 栈复杂,需要较长时间熟悉nRF 高频电感和滤波器 简单,只需跟 编程较方 IMbps 室内约30—模块 全部内置,所需外 单片机I/O或 便 50米,室外部元件少 SPI连接 8嗍00米比较可以看出,射频芯片具有许多优越的特征,集成了内部的基带处理器,设备调试容易,且速率也较蓝牙高,通信距离长,成本相对较低,尤其是在接口与编程方面,其简单的特性更是优于蓝牙模块,因此在满足本系统各方面要求的前提下,决定采用射频芯片作为本系统的通信模块。市场上的无线射频芯片的种类很多,如表2.2所示,对几种典型芯片进行比较:表2-2几种典型射频芯片的比较Table2-2comparisonofthetypicalRFchips品牌 nRF2401 RF2915 BC418 XCl201 CC400Nordic RFMD Bluechip Xemics ChipCon工作电压 1.9—3.6v 2.4~5.0v 2.5~3.4v 2.铷5.5v 2.7—3.3v数据是否 可以直接 不能直接接 不能直接接 不能直接接 不能直接可以直接 接单片机 单片机串口, 单片机串 单片机串口, 接单片机接单片机 串口,数 数据需要进 口,数据需 数据需要进 串口,数据串口使用 据无需曼 行曼彻斯特 要进行曼彻 行曼彻斯特 需要进行彻斯特编 编码,效率低 斯特编码, 编码,效率低 曼彻斯特码,效率 效率低 编码,效率古 低同最大输出 0dBm +5dBm +12dBm +5dBm +14dBm功率7速率速率1Mbps9.6kbps128Kbps64kbps9.6kbps需要外接l1221天线的数量外围元件1450502025数量由于无线收发芯片的厂商和种类比较多,如何在设计中选择所需要的芯片是非常关键的,正确的选择可以少走弯路,降低成本。以下几点是在选择芯片时注意的问题。(1)功耗大多数无线收发芯片是应用在便携式产品上的,因此功耗非常重要,应该根据需要选择综合功耗比较小的产品,nRF2401芯片能耗非常低,以.5dBm的功率发射时,工作电流只有10.5mA,接收时工作电流只有18mA,多种低功率工作模式,节能设计更方便,是同类产品中在同等发射功率下相对比较小的。(2)收发芯片数据传输的编码方式采用曼彻斯特编码的芯片,在编程上会需要较高的技巧和经验,需要更多的内存和程序容量,并且曼彻斯特编码大大降低数据传输的效率,一般仅能达到标称速率的1/3。而采用串行传输的芯片,应用及编程非常简单,传送的效率很高,标称速率就是实际速率,因为串行传输数据对大家来说是再熟悉不过了,编程也很方便,nRF2401收发芯片只需通过微处理器的普通I/O口就能和芯片传输数据。而且对nRF2401的工作方式的控制方法非常简单,只需通过nRF2401的三线串行接VI线(时钟、数据、使能)对内部的三个寄存器进行初始化,就可设定nRF2401的接收、发送等各种工作状态。(3)收发芯片所需的外围元件数量芯片外围元件的数量不但直接决定了模块的体积和重量,而且决定了产品的成本,因此应该选择外围元件少的收发芯片。有些芯片似乎很便宜,可是外围元件使用很多昂贵得元件如变容管以及声表滤波器等:有些芯片收发分别需要两根天线,会大大增加成本。这方面nRF2401做得很好,外围元件几乎在无线通信模块中是最少的,而且无需声表滤波器、变容管等昂贵得元件,只需要一个便宜且易于获得的16MHz晶振即可,并且收发天线合一。无线数据采集系统总体方案设计(4)无线数据采集系统总体方案设计(4)收发芯片的封装芯片最好是有较少的引脚和较小的封装,有利于减少印制电路板的面积。考虑到各种因素本方案最后选用nRF2401无线收发一体芯片。nRF2401芯片和蓝牙芯片一样,都工作在2.4GHz自由频段,能够在全球无线市场畅通无阻。nRF2401支持多点间通信,最高传输速率超过1Mbit/S,而且比蓝牙具有更高的传输速度。它采用SoC方法设计,只需少量外围元件便可组成射频收发电路。与蓝牙不同的是,nRF2401没有复杂的通信协议,它完全对用户透明,同种产品之间可以自由通信。更重要的是,nRF2401比蓝牙产品更便宜。所以nRF2401是业界体积较小、功耗较少、外围元件最少的低成本射频系统级芯片。2.3.2单片机器件的选型系统的数据采集部分是以微控制器为核心,对整个系统的各种操作通常都是由微控制器来完成的,一般来说,选择控制器的重要原则是看它是否能够满足系统的工作要求。对于本系统来说,微控制器的选择以单片机为主,在各种单片机器件中,MCS.51系列的单片机应用最为普遍,但运行速度过慢:对于高速控制器ARM和DSP来说,成本又成为了取舍的瓶颈;AVR、PIC等单片机无论在功能还是速度上都可满足本系统的要求。但PIC单片机采用精简指令集,编程比较简单,同时具有低工作电压、低功耗、驱动能力强等特点。因此,在现有实验设备的条件下,最终选择了PIC单片机。所选用的PICl6LF818单片机是一种低功耗、低电压、高性能的8位单片机,体积小,只有18个管脚,供电电压2到5.5v,用电池就可维持长时间供电;它的指令处理速度能够达到8MHz,内部集成5通道的10位A/D采样转换模块,具有转换速度快、精度高等特点,非常适用于实时数据采集。另外,单片机内部的SPI串行通信模块实现数据接收模块与上位机的同步通信,将实时信息传送至上位机进行处理。9无线数据采集系统的硬件设计3无线数据采集系统的硬件设计3无线数据采集系统的硬件设计整个无线数据采集系统的设计分为硬件设计和软件设计两个方面。硬件设计的根本任务是根据总体设计要求,在所选器件的基础上确定系统扩展所用到的外围电路,以及各器件之间的连接,然后设计系统的电路原理图。系统的硬件设计是否合理极大地影响着系统的性能和使用,对整个系统设计来说非常关键。本章就主要阐述系统的硬件设计。3.I系统硬件电路设计原则根据信号的特点、本系统所要实现的功能以及所选择的器件,在硬件设计过程中应采用以下原则:1.尽可能选择典型的电路及电子元器件(一般选择市场上已有,且能够买得到的器件)。2.软硬件设计应兼顾考虑。软件可实现的功能应尽量由软件来执行,以简化硬件电路,但同时也应注意到软件执行硬件功能时将占用较多的CPU时间。3.整个系统器件应尽可能作到性能匹配。例如选用的晶振频率较高时,应选择速度较快的IC;选择CMOS单片机构成低功耗系统时,系统所有的IC都应选用低功耗的工C。4.可靠性及抗干扰设计是硬件设计中极其重要的部分,包括器件选择、电路板布线等。5.单片机微处理器外接电路较多时,必须考虑其驱动能力,否则系统工作不可靠。充分考虑上述原则,本系统在硬件电路的设计中,将系统分为数据采集部分和无线通信部分。设计内容主要包括:根据选择的器件设计外围应用电路和接口电路,提出适合本系统的抗干扰措施。其中电路设计各个部分都应尽可能以典型电路来完成,力求在实现系统功能的前提下简化硬件电路。3.2系统总体工作原理系统的工作原理是:首先将现场信号转换为电信号,经过单片机内部模/数转换器ADC采样、量化、编码后转换成数字信号,在单片机进行初步处理,然后利用nRF2401无线数据传输芯片通过无线方式将有效数据发送给接收端,接收端在接收到有效数据后用单片机串行口将数据送入PC接收到有效数据后用单片机串行口将数据送入PC机,PC机通过VC语言编写的控制程序完成数据的显示。系统为了满足安全可靠,有足够抗干扰能力,经济合理,方便使用的设计要求,采用了模块化设计思想。采用模块化设计可以使系统结构清晰,不仅容易设计也容易管理和修改,方便系统测试和调试,有助于提高系统的可靠性和可修改性,同时,模块化设计也有助于系统开发的组织管理。基于上述模块化思想,现将系统分为数据采集模块和无线通信模块。3.3数据采集模块部分的硬件设计由于单片机内部A/D转换只能接受正电平,所以从互感器输出的模拟波形需使用运算放大器抬升电平。所选用的MC33202是双通道运放,工作电压低,输入和输出满幅值,具有噪声低、失真低、转换速度(压摆率)高及驱动能力大的性能。在放大器的硬件设计中,设置了两路输入,分别利用放大器的两通道进行电平抬升,由式(3-1)可知抬升的幅度由同向输入端的输入电压决定,可以通过改变与同向输入端连接的电阻阻值,来调整电平抬升的幅度。抬升后的电压从OUTl和oUT2口输出。具体硬件连接图如图3-1所示。放大器输出电压为R, 足,‰一子圪+(1+吾)一 (3—1)P其中■为同向输入端的输入电压, (1+孚)一即为电平抬升的幅值。Kj放大器输出的电压经RA0和RAl口进入单片机,AD转换后储存在ADRESH和ADRESL两个8位的寄存器中,再把数据进行转移,从单片机的输出口传输到射频芯片。图3-2所示的是单片机外围的电路连接,包括复位电路和晶振电路。12无线数据采集系统的硬件设计图无线数据采集系统的硬件设计图3.1电平抬升电路Figure3—1voltageupliftCircuit图3-2单片机外围连接图Figure3-2Single-chipperipheralcircuits图3图3—3和图3-4所示的是稳压电路和电源滤波电路。VCCCllCaplOpF图3-3稳压电路 图3-4电源滤波电路Figure3-3regulatorcircuit Figure3-4powersupplyfiltercircuit3.4无线通信模块部分的硬件设计单片机在获得互感器的数据后,还需要把数据传输到主机上,系统的无线通信模块是用单片机控制无线收发芯片nRF2401进行无线数据传输。以往设计无线数据传输产品常常需要相应的无线电专业知识和昂贵的专业设备,而且传统的电路设计方案不是电路太复杂就是调试困难而令人望而却步,以至影响了用户的使用以及新产品的开发研制工作。系统无线通信模块采用nRF2401芯片制作,其性能显著,特点是所需要的外围器件少而且设计比较方便,在该芯片内集成了高频发射、高频接收、PLL合成、FSK调N/解调、参量放大、功率放大、频道切换等功能。本系统的无线通信模块在单片机的控制下分为发送和接收两部分,其中发送部分是由单片机在采得数据以后通过单片机串行口送到模块由模块发送,而接收部分是由模块接收到数据以后,由单片机控制通过通用串行总线发送给计算机。3.4.1 nRF2401芯片介绍nRF2401是单片射频收发芯片,工作于2.4~2.5GHzISM频段,芯片内置频率合成器、功率放大器、晶体振荡器和调制器等功能模块,输出功率和通信频道可14无线数据采集系统的硬件设计通过程序进行配置。芯片能耗非常低,以无线数据采集系统的硬件设计通过程序进行配置。芯片能耗非常低,以-5dBm的功率发射时,工作电流只有10.5mA,接收时工作电流只有18mA,多种低功率工作模式,节能设计更方便。其DuoCeive技术使nRF2401可以使用同一天线,同时接收两个不同频道的数据。nRF2401适用于多种无线通信的场合,如无线数据传输系统、无线鼠标、遥控开锁、遥控玩具等。nRF2401的主要特点如下口1:●采用全球开放的2.4GHz频段,有125个频道,可满足多频及跳频需要:·速率(1Mbps)高于蓝牙,且具有高数据吞吐量:·外围元件极少,只需晶振和电阻即可设计射频电路:·发射功率和工作频率等所有工作参数可全部通过软件设置:● 电源电压范围为1.9-3.6V,功耗很低:· 电流消耗很小,一5dBm输出功率时的典型峰值电流为lO.5mA;·芯片内部设置有专门的稳压电路,因此使用任何电源(包括DC/DC开关电源)均有很好的通信效果:◆ 每个芯片均可以通过软件设置最多40bit地址,而且只有收到本机地址时才会输出数据(提供一个中断指示),同时编程也很方便:● 内置CRC校验硬件电路和协议:◆ 采用DuoCeiverTM技术可同时接收两个nRF2401的数据:●采用ShockBurstTM模式时,能适用极低的功率操作和不严格的MCU执行:·无需外部SAw滤波器:●可100%RF检验:· 带有数据时隙和数据时钟恢复功能。nRF2401内置地址解码器、先入先出堆栈区、解调处理器、时钟处理器、GFSK滤波器、低噪声放大器、频率合成器,功率放大器等功能模块,需要很少的外围元件,因此使用起来非常方便。QFN24引脚封装,外形尺寸只有5x5mm。nRF2401的功能模块如图3-5所示。图3-5图3-5nRF2401功能模块Figure3-5nRF2401functionmodulesnRF2401芯片的引脚图如图3-6所示。PWR_UP VSS 回回回团囤回DR2 DoUl2 ^N他田田田田田固 回回固回回回团田团回回回DA'rADVDD XC2 图3-6 nRF2401引脚图Figure3-6nRF2401pinmap16无线数据采集系统的硬件设计nRF2401无线数据采集系统的硬件设计nRF2401芯片的管脚描述如表3-1所示。表3-1管脚定义说明Table3.1PmDefinitions引脚 名称 引脚功能 描述1 CE 数字输入 使nRF2401工作于接收或发射状态2 DR2 数字输出 频道2接收数据准备好3 CLK2 数字FO 频道2接收数据时钟输入输出4 DOUT2 数字输出 频道2接收数据5 CS 数字输入 配置模式的片选端6 DRl 数字输出 频道1接收数据准备好7 CLKl 数字I/o 频道1接收数据时钟输入输出8 刀4捌 数字FO 频道1接收/发送数据端9 DVDD 电源 电源的正数字输出10 VSS 电源 电源地11 XC2 模拟输出 晶振212 XCl 模拟输入 晶振113 VDDPA 电源输出 给功率放大器提供1.8v电压14 ANTl 天线 天线接口115 ANT2 天线 天线接口216 VSSPA 电源 电源地17 VDD 电源 电源正端18 VSS 电源 电源地19 IREF 模拟输入 模数转换的外部参考电压20 VSS 电源 电源地21 VDD 电源 电源正端22 VSS 电源 电源地23 PWRUP 数字输入 芯片激活端24 VDD 电源 电源正端173.3.4.2 nRF2401射频电路的设计系统的射频电路由nRF2401和一些外围元件构成。在分析了nRF2401的参考电路之后,采用图3-7所示的电路实现无线收发功能。图3.7nRF2401射频电路的设计Figure3-7nRF2401RFcircuitdesign其中nRF2401的电源采用Nordic公司给出的参考电路,C6,C7为去耦合电容。天线部分参考电路采用的是鞭型天线,所占空间较大。现在无线通信领域常采用的天线是倒F型天线。倒F天线结构紧密,带宽适中,不容易损坏,而且和鞭型天线比起来功率吸收更小。因此本设计采用倒F天线。3.4.3 nRF2401与单片机的连接电路PICl6LF818单片机的同步串行接口模块有SPI和12C两种模式,而nRF2401用的是DRI,CLK和DATA三线传输。考虑到速率的因素,单片机和nRF2401的连接准备用SPI接口实现∞1。SPI(SerialPeripheralInterface,串行外设接口)接口是一种同步串行外设接口,它可以使MCU和各种外围设备进行通信以交换信息。外围设备包括FlashRAM,网络控制器,LCD显示驱动器,A/D转换器和MCU等。其特点包括:无线数据采集系统的硬件设计·无线数据采集系统的硬件设计·全双工,三线同步数据转换●主从模式·8个可编程主时钟频率●可编程的极性和相位的串口时钟●写冲突保护标准· 主模式下具有中断能力的缺省错误标志单片机SPI串行接口与无线射频芯片的接口连接,SDI和SDO口接DATA端,完成单片机与无线射频芯片的数据交换;cE、CS、PWR口完成射频芯片的模式控制,CLKl口作为时钟信号的输入口,DRl口传输的信号表示接收信号已准备。单片机与射频芯片连接原理图如图3-8所示。NRFlR6 PWRRA0,AN0 RB0_fINT V-DR2RAl,ANl RBl.『SDI_IsDA 100RA2,AN2眦F- RB2|lSDO.CCpl R7 DOUT2裂萤RA3,AN3眦F} RB3JcCPlliPGM v-- DRll沮4,AN4t'FOCKl RB4,SCK_『sCL 100GNDRA5lI卫-dCLI叽,pP RB5_『SSRA6_10SC2_|fcLK0 髓6厂r10SO,rlCKIJfPGCRA710SCllI|cLKI 船7,nOSI,PGDR15100‘LEDl图3.8单片机与射频芯片连接原理图Figure3-8MCUandRFchipconnectionschematic3.5系统硬件抗干扰设计在本系统中,由于干扰比较严重,所以需要采取了相应的硬件抗干扰措施。系统的硬件抗干扰设计主要为以下几点睁111:1、正确选择元器件系统使用的无源器件并不是理想的,其特性与理想特性是有差异的,元件本身可能就是一个干扰源,因此正确选择元器件就很重要了,在设计中充分利用元19件的特性抑制和防止干扰。2件的特性抑制和防止干扰。2、正确布线降低各管脚和连线之间的相互影响,对分布参数进行抑制。分布参数主要由系统的布线决定,所以布线是系统的电磁兼容技术的关键,也是系统电磁兼容设计的基本体现。布线技术包括环绕布线、线径布线、分层处理等。因为系统的频率高以及要求的几何尺寸小,多层电路板是解决这个问题的主要模式,多层板的一个重要功能就是可以大大降低系统各连线之间的分布参数的影响。所以在本系统设计中各个模块都采用多层板制作。3、合理接地接地是系统设计的一个很重要的问题。接地的目的主要有3个:1)接地使整个电路系统中的所有单元电路都有一个公共的接地,使整个电路系统中的所有单元电路都有一个公共的参考零电位,保证电路系统能稳定的工作。2)防止外界电磁场的干扰。机壳接地可以使得由于静电感应而积累在机壳上的大量电荷通过大地泻放,否则这些电荷形成的高压可能引起系统内部的火花放电而造成干扰。另外,对于电路的屏蔽体,选择合适的接地,可获得良好的屏蔽效果。3)屏蔽干扰。屏蔽就是对两个空间区域进行金属的隔离,以控制电场、磁场和电磁波由一个区域向另一个区域的感应和辐射。具体的讲,就是用屏蔽体将元件、电路、组合件或整个设备的干扰源包围起来,防止干扰电磁场向外辐射:用屏蔽体将接收电路或系统包围起来防止它们受外界电磁场的影响。因为屏蔽体对于来自导线、元件、电路等的外部的干扰电磁波和内部电磁波均起着吸收能量(涡流损耗)、反射能量(电磁波在屏蔽体上的界面反射)和抵消能量(电磁感应在屏蔽层上产生反向电磁场,可抵消部分电磁波)的作用,所以屏蔽体具有减弱干扰的功能。4、采取滤波技术 滤波是抑制和防止干扰的一项重要措施。滤波器可以显著的减小传导干扰电平,因为干扰频谱成分不高于有用信号的频率,滤波器对于这些与有用信号频率不同的成分有良好的抑制能力。从而起到其他干扰抑制难以起到的作用。所以,采用滤波网络无论是抑制干扰源和消除干扰耦合,或增强接收设备的抗干扰能力,都是有力的措施。用电容去耦能把电路和电源隔离开,消除电路之间的耦合,并避免干扰信号进入电路。5、频率设计技术频率设计技术是要解决系统的频率兼容的问题,也是单片机系统设计中比较复杂的技术。单片机使用同一频率源,保证频率性的要求。频率设计包括电平(幅度,边沿和频率)核实、最高工作频率以及降频和谐波分离(低频信号的频串不与无线数据采集系统的硬件设计高频信号成整数倍,特别是无线数据采集系统的硬件设计高频信号成整数倍,特别是A/D转换的速率)技术。对某些输出信号采取平滑措施。对功率较大的输出信号要考虑降频处理。3.6PCB设计与制作3.6.1Protel软件设计流程Protel软件设计流程如图3-9所示。首先建立原理图设计环境和原理图文件;在此环境下,在PROTEL元件库中查找元件并放置在合适的位置。然后进行布局和连线完成原理图。最后检查布局与连线的正确性。确定无误后形成“*.NET”网表文件,以备随后进行自动PCB设计及检查使用。放置元件时,若所需元器件无法在库中找到,则应该进行元器件的制作。元器件的制作可以在原理图元件库文件编辑环境下,运用“PLACETRACK"、“PLACEPINS等命令实现元器件的制作。布局时先把所需的元器件调出并进行简单布局,根据基本布局要求,调整元件之间的连接关系。图中元素要进行正确的标注,应该采用“NETLABEL"命令把标注放在相应走线的左上角。21建立数据库文件原理图设计建立数据库文件原理图设计 咖设计l 』建立原理图文件 建立PCB文件是 一i 上建立原理图元件库文件 {宁 建,Y_PCB元fl:库文件 乍特殊元器件设计 特殊元器件设计原理图设计k一 元器件布局k一检查生成网表文件 布线保存文件 检查生成网表文件保存文件图3-9Protel设计流程Figure3-9Proteldesignprocess3.6.2 PCB设计流程首先建立PCB文件进入PCB设计环境,接着确定PCB外形及尺寸,然后进行PCB原件布局和布线,最后检查结果并形成网表文件,准备生产或试制。PCB外形无线数据采集系统的硬件设计及尺寸的确定要根据所设计的无线数据采集系统的硬件设计及尺寸的确定要根据所设计的PCB在所处的位置、占据的空间大小、外观以及与其它部分的关系来进行,一般使用PLACETRACK等命令在相关层画出PCB的外形。设计工作的最后检查必须对所设计的PCB进行检查,这既包括原理上的检查,还包括相互间连接和位置合理性的检查,检查完成后才能生成网表文件。在Protel中的PCB的元器件非常丰富,常用的元器件在系统内已经集成,可以直接调用,但对于一些特殊的元器件则需自行制作。为此必须进入元器件库的编辑环境建立了一个相应的元器件库文件。在元器件库编辑环境中,选择“NEWCOMPONENT"命令就可以进行元器件的设计;可以用PLACEPAD等命令在一定的位置画出相应的焊盘,双击并编辑成所需的焊盘(包括焊盘形状、大小、内径尺寸及角度等),另外还应标出焊盘相应的管脚名;以元器件的适当位置为参考点,以自定的元器件名存入元器件库中就完成了元器件的制作。布局和布线的合理性是PCB设计能否成功的关键之一,布局时要首先确定与其它PCB或设备的接口元器件的位置,然后确定与连接和配合有关的元器件的位置(特别是那些体积较大的元器件)或一些有特殊要求的元器件的位置,然后应该根据设计进行功能块的划分,同~功能块的元器件应尽量放置在一起。布局的实现方法可以采用PLACECOMPNENT命令在适当的位置放置合适的元器件。旋转元器件的方法是在元器件未固定下来之前按空格键,这样可以将元器件以90。(或180。、270。)旋转,但若想旋转任意角度则需对元器件进行编辑,在“PROPERTY”对话框中的“RATATION"选项中填入需旋转的角度即可。布线的总体原则是:信号线的粗细应尽量一致并尽量短,信号线不要拐直角,电源线与地线应尽量粗,还应注意各功能模块间最好以地线进行隔离等。布线可以采用PLACETRACK命令进行,线条的粗细可通过对话框直接编辑线条的尺寸。布线与布局是紧密联系互相影响的,在进行布线时,往往需要对元器件位置进行调整以利于更好地布线,因此,布局与布线可以说是同时完成的。自动布线结束后,可能存在一些令人不满意的地方,可以通过手工调整,修改电路板中的瑕疵。3.6.3问题和措施在设计和制作PCB板过程中遇到过一些问题:(1) 电源噪声因为数字部分有几个输入输出电压幅度,所以它能容许较大的电源噪声。但是模拟信号对电源噪声尤其是毛刺信号和高频分量却相当敏感.因此数模混合的板子比起纯数字板,电源部分的布线需格外注意,应避免自动布线。数字电路和模拟电路集成在一块PCB板上时,若布线或制版不好,系统的实际性能往往达不到设计的要求。由于现代的微处理器都是CMOS际性能往往达不到设计的要求。由于现代的微处理器都是CMOSI艺,在突发模式下,在它一个内部时钟周期里可能要占大部分功耗。因此,如果微处理器工作在IMHz下就要求电源也按这个频率供电。此时如果不对电源使用适当的去耦电路,那么不可避免的会产生毛刺电压。如果这些毛刺电压到达射频部分,可能产生严重的后果。因此必须把电源线分成模拟和数字部分。(2) 射频部分的接地射频电路的接地层应该连到负电源上。如果没有做好,可能会产生旁路效应。虽然对数字电路而言,不连接地层不影响效果。可是对射频电路,一条很短的线路,都可能成为电感。以上遇到问题的解决措施:(1)一个可靠的接地层一个可靠的接地层可以产生一个0v参照电压,给所有的信号提供去耦合。由于接地层的阻抗,两个接地的接点将不会耦合。所有的布线和所有的元件应该放在同了面,另一面为接地层。对于2层以上的板子,接地层应该在靠近上层信号的那一层。在信号层里所有的空余地方,应尽可能的和接地层连接。需要注意的是,靠近接地点的电感的性能会发生改变,因此必须考虑好接地点的位置。(2)PCB板的底板设计为了减少高噪声模块对模拟部分的影响,必须考虑各模块的位置。通常的做法是避免将灵敏的模块(比如射频模块)和高噪声模块(比如高速、高电压数字电路)放在一起。不在同一层的高噪声模块和线路会像在同一层一样,造成同样的影响,除非在两层之问有接地层隔离,必须要立体考虑。无线数据采集系统的软件设计4无线数据采集系统的软件设计4无线数据采集系统的软件设计在系统设计中,除了硬件部分设计之外,软件设计也是一项非常重要的内容。软件设计的任务是根据应用系统总体设计方案的要求和硬件结构,设计出能够实现系统要求的各种功能的控制程序,一般情况下,在程序设计的时候应采用模块化设计思想。对于本系统而言,软件设计整体上可以分为两部分:数据采集传输部分和计算机用户界面部分。由于无线通信模块需要由单片机配置,并且控制数据的发送和接收,因此将无线通信环节归入数据采集部分来介绍。在系统软件设计时遵循结构合理、操作性能好、具有一定的保护措施、兼容性好的设计原则来开发设计。本章就主要阐述系统的软件设计。4.1数据采集传输部分软件设计数据采集传输部分软件包括单片机、nRF2401初始化配置和数据采集传输的主程序。下面就对无线发送部分的软件做详细的阐述。4.1.1单片机初始化配置实现单片机PICl6LF818对nRF2401的控制首先要对单片机内部配置寄存器进行正确的设置。具体配置如下:voidpic——initial0{INTCON=0x00:RBPU:O:PIEI=Ox00:PIRI=Ox00:PORTB=Ox00:TRISA7=I:TRISA5=I:TRISA6=O:TRISB=Ox03:}初始化时,先关闭单片机所有的中断使能位和标志位。设置RA口和RB口的方向,控制数据的输入和输出。接着初始化AD方向,控制数据的输入和输出。接着初始化AD转换的设置,开启AD转换中断和外部中断,清除AD转换中断标志位,选择AD转换通道。AD转换后的结果储存在ADRESH和ADRESL两个8位寄存器中。AD转换初始化程序和中断服务程序如下:voidadinit(unsignedcharchannel)//选择输入通道+AD初始化{ADIE=I: //A/D转换中断允许PEIE=I: //外围中断允许ADIF=O:ADCONl=Ox83:if(channel==O){ADCONO=Ox81://RAOTRISAO=I:}if(channel==1){ADCONO=Ox89://RA1TRISAI=I:)delay(6):)voidinterruptadint0A中断服务程序木/{ADIF=O: //清除中断标志transmit—data[O]=ADRESL:transmit—data[1]=ADRESH:)无线数据采集系统的软件设计4无线数据采集系统的软件设计4.1.2 I心2401初始化配置nRF2401有四种工作模式:收发模式、配置模式、空闲模式和关机模式。nRF2401的工作模式由PWR—UP、CE和CS三个引脚决定。具体配置如表4-1所示。表4.1nRF2401主要模式Table4.1mainmodeofnRF240l工作模式 PWRUP CE CS收发模式 1 1 0配置模式 1 O 1空闲模式 l O 0关机模式 0 (1)收发模式nRF2401的收发模式有ShockBurstTM收发模式和直接收发模式两种,收发模式由器件配置字决定。本设计主要采用ShockBurstTM收发模式。在ShockBurstTM收发模式下,使用片内的先入先出堆栈区,数据低速从微控制器送入,但高速(1Mbps)发射,这样可以尽量节能。因此,使用低速的微控制器也能得到很高的射频数据发射速率。与射频协议相关的所有高速信号处理都在片内进行,这种做法有三大好处:(1)大大减少电流损耗;(2)降低系统费用(可以使用低成本的微控制器);(3)数据在空中停留时间短,抗干扰性高。nRF2401的ShockBurstTM技术同时也减小了整个系统的平均工作电流。ShockBurstTM收发模式下,微控制器与nRF2401数据传输时序图如图4-1所示。F一nn¨图4.1微控制器与rtRF2401数据传输时序图Figure4一lmicrocontrollerandnRF2401datatransfertimingdiagram在ShockBurstTM在ShockBurstTM收发模式下,nRF2401自动处理字头和CRC校验码。在接收数据时,自动把字头和CRC校验码移去。在发送数据时,自动加上字头和CRC校验码,当发送过程完成后,数据准备好引脚通知微处理器数据发射完毕。(2)配置模式在完成单片机的内部寄存器配置后,需要对nRF2401芯片进行配置,才能使它正常工作。在配置模式下,需要通过CS,CLKl和DATA引脚向nRF2401芯片写入配置字,把其配置为ShockBurstTM收发模式需要15字节的配置字,而如把其配置为直接收发模式只需要2字节的配置字。这些配置字使nRF2401能够处理射频协议。在配置完成后,在nRF2401工作的过程中,只需改变其最低一个字节中的内容,以实现接收模式和发送模式之间切换。ShockBurstTM的配置字可以分为以下四个部分:(1)数据宽度:声明射频数据包中数据占用的位数。这使得nRF2401能够区分接收数据包中的数据和CRC校验码;(2)地址宽度:声明射频数据包中地址占用的位数。这使得nRF2401能够区分地址和数据;(3)地址:接收数据的地址,有通道l的地址和通道2的地址:(4)CRC:使nRF2401能够生成CRC校验码和解码。当使用nRF2401片内的CRC技术时,要确保在配置字中CRC校验被使能,并且发送和接收使用相同的协议。nRF2401配置字的各个位的描述如表4—2所示。表4.2nR_F2401配置字Table4-2nRF2401configurationword位 位数 名字 功能Shock143:12024TEST保留119:112 8 DATA2W 接收频道2有效数据的长度Burst1l1:104 8 DATAlW 接收频道1有效数据的长度103:64 40 ADDR2 接收频道2的地址,最高为5字节TM63:24 40 ADDRl 接收频道1的地址,最高为5字节配置 23:18 6 ADDRW 接收频道地址位数17 l CRCL 8或16位CRC16 1 CRCEN 使能CRC校验常用 15 1 RX2EN 使能第二频道14 1 CM 通信方式设置28无线数据采集系统的软件设计器件无线数据采集系统的软件设计器件 13 1 RFDR——SB 发射数据速率(1Mbps需要16MHZ晶振)12:10 3 XOF 晶振频率配置9:8 2 RFPWR 发射输出电源7:1 7 RFCH# 频道设置O 1 RXEN 接收或发射操作在配置模式下,注意保证PWR—UP引脚为高电平,CE引脚为低电平。配置字从最高位开始,依次送入nRF2401。在CS引脚的下降沿,新送入的配置字开始工作。首先在头文件中定义每个配置位的值://nRF2401关键配置字//收发:lb#defineRF—RXEN 0 //1:收0:发//频率:7b,最大127FREQ=2400+RF_FREQ#defineRFFREQ 2 110——1277f。现率:2#defineRF—PWR 3 //o:一201:一102:一53:0//晶体频率:3#defineRF—CRYS 3 //0:4MHzl:82:123:16MHz4:20MHz//速率:1#defineRF—BPS 1 //o:250k1:1M//通信模式:1#defineRFMODE 1 IiO:直接1:ShockBurst//双通道:l#defineRF—RX2EN 0 //o:禁止1:使能//使能硬件CRC:l#defineRF—CRCEN l //o:禁止1:使能//CRC8/CRCl6:l#defineRF_CRCL l //0"CRC81:CRCl6//通道地址长度:6,最大40#defineRF—ADDRW 16 //o一40//通道1地址:最大5字节#defineRF_ADDRIOOxcc#defineRF—ADDRl1Oxaa#defineRFADDRl2Ox00#define#defineRFADDRl3Ox00#defineRFADDRl4Ox00//通道1数据长度:2#defineRFDATAWl16//通道2地址:最大5字节#defineRFADDR20Oxcc#defineRFADDR21Oxcc#defineRFADDR22Oxcc#defineRF——ADDR23Oxcl#defineRFADDR24Ox00//通道2数据长度:28#defineRFDATAW2224由上面的配置可知配置后的状态:·发射模式;●频道频率2402删Z;●输出功率OdBm;●晶振频率16MHZ:●发射数据速率1Mbps:·通信方式ShockBurst模式;●单通道接收;●使能CRC校验;●16位CRC;地址宽度16位;●通道l地址{CC,aa,00,00,00};●通道1数据宽度16位,·通道2地址{cc,ca,ce,cl,00);●通道2数据宽度224位。在实际操作中,一旦配置字被装进了nRF2401系统,则每次只需要有一个字节的配置字来更新,以选择发送模式或接收模式。在主程序中,把15个配置位的值保存为15个字节的数组。constunsignedcharconfigbyte[15]={RF—RXENl(RF—FREQ<<1), //收发+频率30无线数据采集系统的软件设计RF_PWR无线数据采集系统的软件设计RF_PWR』(RFCRYS<<2)l(RF_BPS<<5)I(RF_MODE<<6)f(RF_RX2EN<<7),//功率+晶体+速率+模式+双通道RF_CRCENI(RF_CRCL<<1)I(RF_ADDRW<<2),//地址长度+CRC使能//通道1地址RF_ADDRIO,RF—ADDRl1,RFADDRl2,RF_ADDRl3,RF—ADDRl4,//通道2地址RFADDR20,RF_ADDR21,RF_ADDR22,RF_ADDR23,RF_ADDR24,//通道1数据长度RF_DATAWl,//通道2数据长度RF_DATAW2,}:在配置模式下,通过SPI接口,把15字节的配置字从最高位开始,依次送入nRF2401。CS置低使配置有效。 voidnRF2401powerup—config0//NRF配置{unsignedchari:CS=O:delay(2):CE=O:delay(2):PWR=I://standbymodedelay(600):CS=1: //2401进入配置方式delay(40):3lfor(i=15:for(i=15:i>O:i一){nRF2401_WriteByte(configbyte[i一1]):}delay(40):CS=O://cs置低使配置有效}(3)空闲模式nRF2401的空闲模式是为了减小平均工作电流而设计,其最大的优点是,实现节能的同时,缩短芯片的启动时间。在空闲模式下,部分片内晶振仍在工作,此时的工作电流跟外部晶振的频率有关,如外部晶振为4MHz时工作电流为12uA,外部晶振为6MHZ时工作电流为32uA。在空闲模式下,配置字的内容保持在nRF2401片内。(4)关机模式在关机模式下,为了得到最小的工作电流,一般此时的工作电流小于luA。关机模式下,配置字的内容也会被保持在nRF2401片内,这是该模式与断电状态最大的区别。4.1.3数据采集传输主程序设计在配置完单片机和nRF2401芯片之后,置PWRUP=I,CE=I,CS=O,nRF2401进入收发模式。把接收机的地址和要发送的数据按时序依次输入nRF2401。本设计把地址设为address[2]={Oxcc,Oxaa},将以两个字节依次送入nRF2401。在装置的输入端接入模拟信号,经过电平抬升电路后,信号输入单片机进行AD转换。PICl6LF818单片机内部AD转换的结果为10位数字信号,储存在ADRESH和ADRESL两个8位寄存器中。AD转换结果有两种储存方式,一种是10位的转换结果右对齐,ADRESH的高六位置”0”;另一种是左对齐,ADRESL的低六位置”0”。储存方式的选择可通过配置ADCONI寄存器的ADFM位设置。本设计中选择的是第一种方式。由上节单片机的AD初始化配置可知,AD转换的时钟频率为32分频,即0.25MHZ.当AD转换完成后,状态位GO/DONE清零,AD中断标志位ADIF置l。AD转换结果从寄存器移出后,ADIF重新置零,开始新一轮的AD转换。为了取得特定的AD转换精度,充电保持电容需要饱和充电以达到输入通道的32无线数据采集系统的软件设计电压水平,这个过程需要一定的时间无线数据采集系统的软件设计电压水平,这个过程需要一定的时间TAco=40us。AD转换器转换每一位的时间定义为%。为了能够正确进行AD转换,单片机要求AD时钟的选择必须保证%越小越好,但要在1.6us和6.4us之间。本设计中,%=32‰=4us,符合系统的要求。在AD转换完成后,需要等待2LD的时间才能开始下一次AD转换。完成一个数据的AD转换的时间T为:T2L∞+10TAD+2LD240us+12*4us288usAD转换后得到的数据通过模拟SPI串口传输到nRF2401,用到的引脚是CLKl和DATA。数据的传输由CLKl的时序决定,数据在CLKl的下降沿输出。在CLKl制造一个下降沿,输出uiData数据的高位BIT7,然后把CLKl的电平拉高,uiData中的数据依次右移一位,再将CLKl的电平拉低,又一次输出uiData的高位,这时,输出豹就是原来uiData中的次高位BIT6位,如此重复,uiData右移八次就完成了一个字符的输出。把数据写入nRF2401的程序如下:voidnRF2401一WriteByte(unsignedcharuiData)//数据发送{unsignedchari:for(i=0:i<8:i++){CLKl=0:if(uiDatalox80)DATA=l:elseDATA=0:CLKl=1:asmknop,:uiData=uiData<<1:}CLKl=0:}把接收机地址和要发送的数据写入nRF2401后,把CE置低,激发nRF2401进行ShockBurstTM发射。在ShockBurstTM发射模式下,给射频前端供电,nRF2401自动加上字头和CRC校验码,高速发射数据包。发射完成后,nRF2401进入空闲状态。接收端的nRF2401接收端的nRF2401也需通过单片机配置15字节的配置字,包括接收的地址,接收数据的大小和CRC校验码。把CE置高,使nRF2401进入接收状态,200us后,监听周围的数据,等待正确的数据到来。如果监听到有正确的地址和数据大小,并通过了CRC校验,nRF2401会自动把数据包的字头、地址和CRC校验位移去,然后把DRl引脚置高,引起单片机中断,通知单片机把数据移出nRF2401。所有数据移完后,nRF2401把DRl置低,此时,如果CE为高,则等待下一个数据包,如果CE为低,开始其它工作流程。单片机把从nRF2401移出的数据通过串行口传输到计算机,进行数据的用户界面显示。数据包的结构:数据包头,可设为4bit或8bit。它的值与地址第1位有关。当地址第1位为0时,包头取值为“01010101”,反之则为,”10101010”。一帧数据从地址到CRC最多包含256bit。地址为接收方通道硬件地址段,可设为8bit--40bit,只有符合本机硬件地址的数据帧才会被接收。CRC为数据校验段,可设定8bit或16bit校验位。数据为待发送数据段,长度为帧长度减去地址段和CRC段的长度。无线数据采集系统的软件设计发送端的软件流程图如图无线数据采集系统的软件设计发送端的软件流程图如图4-2所示。图4-2发送流程图Figure4·2Flowchartofthetransmission35接收端的软件流程图如图4-3接收端的软件流程图如图4-3所示。图4-3接收流程图Figure4·3Flowchartofthereceiving无线数据采集系统的软件设计4无线数据采集系统的软件设计4.2计算机用户界面设计数据采集系统的计算机用户界面是整个系统的重要组成部分,系统功能实现的前提就是可以通过串口读取参数,在Windows平台下将参数及其图表显示在PC机上,向用户提供方便、灵活的计算机操作使用界面。因此,上下位机的通讯是整个数据采集系统功能实现的先决条件。它不但完成波形显示功能以及对硬件的控制,而且能够实现对数据的保存,方便以后查阅数据,并作进一步分析。计算机用户界面是在windows系统下采用Microsoft公司的VisumC++6.0软件设计的。界面包括接收地址的设置,开始和停止接收的控制,数据和图像显示,以及保存数据。4.2.1 VisualC++语言的概述VisualC++是Microsoft公司推出的开发Win32环境程序,它是面向对象的可视化集成编程系统。它不但具有程序框架自动生成,灵活方便的管理,代码编写和界面设计集成交互操作,可开发多种程序(应用程序、动态链接库、ActiveX控件等)等优点,而且通过简单的设置就可使其生成的程序框架支持数据库接口、OLE2,WinSock网络、3D控制界面。因此,它现己成为开发Win32程序的主要开发工具n33。VisualC++6.0是微软的VisumC++编译器的最新且最好的版本,它己经远非只是一个编译器了。它包括了综合的软件基础类库(MFCLibrary),这使得开发Windows应用程序变得简单而高效:它提供有复杂的资源编辑器,可以编辑对话框、菜单、工具栏、图像和其他许多Windows应用程序的组成元素:它还有一个非常好的集成开发环境DeveloperStudio,用它可以在编写C++程序时对程序的结构进行可视化的管理。此外,一个完全集成的Debug工具可以从各个角度来检查程序运行中的微小细节。这些还只是VisualC++6.0的众多特点中的-d,部分。总之,使用VisualC++6.0可以迅速开发出有特点的一流的应用软件n钔。4.2.2用户界面设计Windows应用程序工作的基本流程是从用户那罩得到数据,经过相应的处理之后,再把处理结果输出到屏幕、打印机或者其他的输出设备上。应用程序是从用户那里得到数据,并且再将修改后的数据显示给用户,这就需要用到Windows应用程序中一个很重要的用户接口——对话框。37jE童窑堂厶芏亟士堂焦监奎jE童窑堂厶芏亟士堂焦监奎对话框是应用程序同用户进行交互的主要手段之一,由于对话框使用非常频繁,因此,只有设计良好,操作方便的对话框才能满足当前用户对应用程序交互性的高要求。虽然对话框也是一个窗口,但与普通的窗口比起来,有很大的不同:(1)对话框是一个包含许多控件的窗口。(2)窗口几乎总是和应用程序的资源联系在一起的,这些资源指定了对话框的大小和布局,而且指定了其中的控件的大小和位簧。(3)对话框的丰要目的往杵是用于数据交换。下面主要介绍软件设计的具体步骤和过程:在Visualc++环境下,新建一个工程,在对话框中选择MFCAppWJzard(exe).并输入工程的名称a接下来在步骤l中,要创建的应用程序类型选择第三个:基本对话框。在剩下的步骤中,全部选择默认设置,直到完成这个工程的新建工作。这样就用Ap酣izard创建了一个MFc应用程序。新建工程窗口如图4-4所示。文件工程l工作日I#t妯J闰44新建I:程窗口Figure44NdwProjectwindow无线数据采集系统的软件设计新建工程向导步骤无线数据采集系统的软件设计新建工程向导步骤1如图4-5所示。g目E《自S;女gik。。。i-“。鼬i您要创建的应用程序类型是:单文档嘲多重文I自凹·纂差圈疆}萤画您的资源使用的语言是:}中文【中国I[APPWZCHS.ouJ 二j一<I步. 登} 堕{圈4.5新建工程向导步骤IFigure4-5SteplofnewP删ectwlza“t为了实现用户界面的人机交互功能,需要在对话框中放置一些按钮和文本框,方便用户的操作和数据的显示。在Visualc十+的编辑窗口旁边有一个控件面板,它提供了Wlndows常用的通用控件.如文本框,列表框,按钮,滑块等。控件是独立的小部件,在对话框与用户的交互过程中,担任着主要角色。控件的引入使Windo哪编程相对于DOS编程大大简化,极大地减轻了编程人员的负担。Visualc++提供的控件的种类很多,如图“显示了对话框中的一些基本控件。型~爱矗型~爱矗—————叫**捶什■^t^镕————一d_曲I删mB———3o———JⅫ女&_h————一窿厦———————4&}《Ⅷmah———————商国}———————鼎《¨^r.☆∞*——————.鲫囱——————一十自镕r^*}’**————————●_§————一mJ宁*m4薪-——————舡印一——*镕日&F”—————固蕊——*RI甓*口}。t_n——£3日———叫日F¨jz$**“——娃囱———JIⅫ和吖K*≈nq月m#帖————圉瞄——一l啪“捎%n≈文&*——————罄售量—————寸%∞自☆E图4石控件面板Figuxe4-6ConavlPanel表4-3列出了一些常用的控件及其对应的控件类。表4.3常用的控件Table4-3CommonConfxoh控件 功能 对应控件类静卷文本框 显示文本,一般不能接受输入信息 CStatic(StaticTcxt)图像控件显示位图、国标、方框和图元文件,一般不能CStatic(Picture) 接受输入信息编辑框(Edit输入并编辑正文,支持单行和多行编辑CE小tBox)按钮(Burrom相应用户的输入,触发相应的事件CButlon复选框fCheck用作选择标记,可以有选中、未选中和不确定CBui=tonBox)三种状态单选按钮(Radio 用来从两个或多个选项中选中一项 CBtIttonButton)组框(Group 显示正文和方框,主要用来将相关的一些控件 CButtonBox)(用于共同的目的)组织在一起玉丝塑壅墨墨墨錾盟墼堂丝盐列表框玉丝塑壅墨墨墨錾盟墼堂丝盐列表框(List显示一个列表,用户可以从该列表中选择一项 CListBoxBox) 或多项组合框(Combo 是一个编辑框和列表框的组合,分为简易式, CComboBoxBox) 下拉式和下拉列表式滚动条(Scroll 主要用来从一个预定义范围值中迅速而有效 CScrollB8u-Bar) 地选取一个整数值控件面板中,把选中的控件用鼠标拖至对话框中,调整为合适大小。在控件上点击鼠标右键,在弹出的快捷菜单中选择【属性】菜单命令,即可显示这个控件的属性对话框,利用这个对话框,可以设

温馨提示

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

评论

0/150

提交评论