基于无线数据方式的多路数据采集与传输 .doc

上传人:精*** 文档编号:879993 上传时间:2024-03-10 格式:DOC 页数:22 大小:346.31KB
下载 相关 举报
基于无线数据方式的多路数据采集与传输 .doc_第1页
第1页 / 共22页
基于无线数据方式的多路数据采集与传输 .doc_第2页
第2页 / 共22页
基于无线数据方式的多路数据采集与传输 .doc_第3页
第3页 / 共22页
基于无线数据方式的多路数据采集与传输 .doc_第4页
第4页 / 共22页
基于无线数据方式的多路数据采集与传输 .doc_第5页
第5页 / 共22页
点击查看更多>>
资源描述

1、 第 17页 共22页基于无线数据方式的多路数据采集与传输摘要:本系统设计了一种基于SPCE061A板单片机和射频芯片nRF905模块所构成的无线数据方式的多路温度数据采集系统。同时介绍了系统的具体工作流程,给出了无线数据采集部分和各个模块的结构框图。在软件设计上,采用了汇编语言和C语言编程,最终实现了多路温度数据采集系统的设计。另外SPCE061A片内集成了一个在线仿真电路接口,使得对该芯片的编程、仿真都变得非常方便,结合凌阳科技提供的集成开发环境(nSP IDE)可以利用它对芯片进行真实的仿真;本文采用nRF905射频模块、温度传感器组成无线数字温度数据采集与传输系统,能实时检测环境中的温

2、度,适用于各种不宜进行有线测温的场合,该设计具有简单可靠和灵活方便的特点。关键词:DS18B20,SPCE061A, nRf905,LED数码管。1 引言在测控系统中,数据通信可以采用有线的方式,但在一些地理条件复杂,线路架设困难的场合,无线方式就显出了优势。目前,短距离无线通讯方式主要有两种:红外技术和工作于ISM频段的射频技术,其中ISM频段的射频技术又分为普通RF(Radio Frequency),蓝牙技术,HomeRF等。红外技术的缺点是红外方向性强,通信距离较短,不能有遮挡物等。而与普通RF技术比,蓝牙和HomeRF不仅技术复杂度高,软硬件设计及其协议编程复杂,而且传输距离相对较近。

3、目前国内外已经开发出各种基于RF技术的无线数据传输模块,其显著特点是:所需外围元件少,设计方便; 本文从低功耗、小体积、使用简单等方面考虑,基于射频 nRF905和数字温度传感器DS18B20设计了一个多路无线测温系统,整个系统由数字温度传感器DS18B20进行多路温度数据采集,并通过数码管将数据显示出来,同时可以通过RS-232串口将数据发送给PC。2 设计的基本要求利用SPCE061A单片机,DS18B20模组和nRF905模组设计了一个基于无线数据方式的多路温度数据采集与传输系统,基本要求如下:1.能实现多路温度的实时采集;2.温度通过数码管显示;3.通过无线方式实现多路温度数据的采集与

4、传输。3 硬件电路设计3.1 硬件设计思路无线测温系统主要可分为主机系统和从机系统两大部分。从机系统包括微控制器及射频发送单元、显示单元、传感器采集单元;主机系统主要是微控制器及射频接收单元。主机与从机的CPU都是使用SPCE061A单片机,从CPU负责采集两路温度数据,同时进行数据处理以及数据显示;其中主CPU与从CPU的通讯采用nRF905进行无线方式发送和接收,从CPU和PC机之间的通信采用RS232标准接口。系统结构图如图1所示:传感器 单片机nRF905PC机单片机nRF905从收发器主收发器图1系统结构数码显示从机系统主机系统 3.2 硬件总体设计框图 系统整体硬件设计包括从机系统

5、硬件设计和主机系统硬件设计,其框图分别如图2,图3所示:从机系统包括DS18B20传感器输入电路, nRF905发送电路,和LED数码管显示电路,利用SPCE061A单片机作为核心控制器,通过两个DS18B20器件实现两路温度的实时采集,在实际应用中,可以使用多个DS18B20传感器实现对多路温度数据的采集,接收到数据后,单片机将温度信息通过数码管显示出来, nRF905将采集的多路温度数据发送出去。主机系统硬件部分主要通过nRf905接收温度数据,并将温度数据传送给单片机,单片机通过RS-232接口和PC进行通信。图2 从机系统框图 图3 主机系统框图3.3 系统各部分电路的设计3.3.1测

6、温电路的设计 系统电路中对多路温度数据采集关键是温度传感器,在众多应用于温室环境监测的温敏元件中,温敏电阻虽然成本低,输出为模拟信号,且输出信号较弱故需后续接放大及A/ D 转换电路, 但后续电路复杂,且需进行温度标定;其若采用普通运放则精度难以保证,本系统中采用数字式温度传感器DS18B20, DS18B20能实时采集温度数据, 接收到温度转换命令后,开始启动转换将温度物理量变换为数字信号并以总线方式传送到计算机进行数据处理,单片机可通过单线接口读到该数据,读取时低位在前,高位在后。DS18B20可以采用两种供电方式:一种是采用电源供电方式,GND接地,数据线与单片机的IO 口相连;另一种是

7、寄生电源供电方式,此时VDD和GND接地,数据线接单片机IO口。无论是寄生电源方式还是外部供电方式,IO口线都要接5 k左右的上拉电阻。这是由于温度转换和写入EEPROM时要求电流较大、持续时间较长,因此要求数据线在此期间要强制上拉。本设计中采用外接电源方式,如图4所示:图4 DS18B20电路DS18B20 测温原理如图5所示。图中低温度系数晶振的振荡频率受温度影响很小,用来向计数器1提供固定频率的脉冲信号。高温度系数晶振的振荡频率受温度影响较大,随温度的变化而明显改变,其产生的信号作为计数器2 的脉冲输入,用于控制闸门的关闭时间。初态时,计数器1和温度寄存器被预置在与- 55相对应的一个基

8、值上。计数器1对低温度系数晶振产生的脉冲信号进行减法计数,在计数器2 控制的闸门时间到达之前,如果计数器1的预置值减到0 ,则温度寄存器的值将作加1运算,与此同时,用于补偿和修正测温过程中非线性的斜率累加器将输出一个与温度变化相对应的计数值,作为计数器1 的新预置值,计数器1重新开始对低温度系数晶振产生的脉冲信号进行计数,如此循环,直到计数器2控制的闸门时间到达亦即计数到0 时,停止温度寄存器值的累加,此时温度寄存器中的数值即为所测温度。 图5 DS18B20的测温原理 图6 数码显示电路3.3.2 数码显示电路的设计本系统的显示部分采用4位数码管进行动态扫描显示,一位位地轮流点亮各位数码管,

9、段选线由8个8050三极管驱动,各位LED显示器的位选线由ULN2003A驱动,动态显示时各数码管轮流选通,addp经过8路同相驱动8085后接至数码管各段,用另一个输出口ULN2003A作为LED的位选控制口;其中ULN2003A是单片高电压、高电流达林顿晶体管阵列,每片包含7对NPN型达林顿管,具有高电压输出特性,并带有共阴极的续流二极管使器件可用于开关型感性负载。每对达林顿管的额定集电极电流是500mA, ULN2003A中每对达林顿管的基极都串联有一个2.7k的电阻,可直接与TTL或5V CMOS器件连接;数码显示电路原理如图6所示;在使用时,将adp接IOA8IOA15,DIG1接I

10、OB8,DIG4DIG6接IOB1113。 3.3.3 无线发送和接受电路的设计nRF905模块主要是进行温度数据采集和无线发送;其中nRF905有两种工作模式和两种节电模式。在Shock BurstTX模式中,MCU按时序把接收机的地址和要发送的数据通过SPI接口传送给nRF905,首先MCU置高TRX -CE和TX-EN来激活nR F905发送;然后nRF905自动产生前导码和CRC校验码,数据就绪输出信号通知MCU数据传输已经完成;最后设置TRX-CE为低,nRF905结束数据传输并自动进入standby模式。当TRX-CE为高、TX-EN为低时,nRF905进入Shock BurstR

11、X模式。当一个有效的数据包接收到后,nRF905自动移去前导码、地址和CRC校验位,然后把数据准备就绪引脚( DR)置高,通知MCU数据传输已经完成。MCU以设定的速率通过SPI接口读出有效数据,并把TRX-CE置低,nRF905进入空闲模式。图7 nRF905电路3.3.4 接口电路的设计接口单元是为了方便控制系统和PC的通信,由于SPCE061A串行口为TTL电平,可采用RS-232接口,使用MAX3232芯片为电平转换驱动,实现RS-232电平与TTL电平之间的转换,通信速率为9600波特率,数据5秒传输一次。电路图如图8所示: 图8 接口电路3.3.5 电源转换电路的设计61板的内核S

12、PCE061A电压要求为3.3V,而I/O端口的电压可以选择3.3V也可以选择5V。所以,在板子上具有两种工作电压:5V和3.3V。对应的引脚中15、36和7必须为3.3V, 对于I/O端口的电压51、52、75可以为3.3V也可以是5V,这两种电平的选择通过跳线J5来选择。 5V供电可以用3节电池来供电,5V直流电压直接通过SPY0029(相当于一般3.3V稳压器)稳压到3.3V,为整个61板提供了5V和3.3V两种电平的电压。另外也可以直接外接5V的直流稳压源供电,5V电压再通过SPY0029稳压到3.3V。电源转换电路如图9所示: 图9 电源转换电路4 主要芯片的介绍:4.1 DS18B

13、20温度传感器的简介DS18B20是一种单总线数字温度传感器,与传统的热敏电阻等测温元件相比,DS18B20能直接读出被测温度,并可根据实际需要通过简单的编程实现912位的数字值读数方式。3引脚封装的DS18B20形如一只三极管,其内部结构如图10所示。主要由四部分组成:64位光刻ROM、温度传感器、非易失性的温度报警触发器和配置寄存器。此外,还有电源检测模块、存储和控制逻辑器、中间结果缓存器和8位循环冗余校验码(CRC)发生器。DS18B20 将温度传感器、A/D 传感器、寄存器、接口电路集成在一个芯片中, 代替模拟温度传感器和信号处理电路,直接与单片机沟通,完成温度采集和数据处理,具有直接

14、数字化输出、测试及控制功能强、传输距离远、抗干扰能力强、微型化微功耗、便于多点测量且易于扩展的特点。图10 DS18B20内部结构4.2 nRf905芯片的介绍nRF905是一种单片射频发射器芯片,工作电压为1.93.6V,工作于433/868/915MHz3个ISM频道。本系统中使用433MHz,nRF905可以自动完成处理字头和CRT的工作,可由片内硬件自动完成曼彻斯特编码/解码,使用SPI接口与微控制器通信。nRF905由频率合成器、接收解调器、功率放大器、晶体振荡器和调制器组成,断控制器支持5个扩展中断源:ADC中断、SPI中断、唤醒中断和两个无线收发中断。此外,还扩展了两个数据指针,

15、使得片外RAM存取数据更为方便。微控制器内有256B的数据RAM和512B的ROM。上电复位或软件复位后,控制器自动执行ROM引导区中的代码,用户程序通常在引导区的引导下,nRF905传输数据时为非实时方式,即发送端发出数据,接收端收到后先暂存于芯片存储器内,外面的MCU可以在需要时再到芯片中去取。4. 由nRF905组成的高频头用户接口的简介图11中给出了由nRF905组成的高频头用户接口,该接口由10个数字输入/输出I/O组成,按照工作可分为三组:图11 由nRF905组成的高频头用户接口PWRTRX_CETXEN工作模式0XX掉电和SPI编程模式10X待机和SPI编程模式110接收111

16、发射表1 各种模式的控制模式1. 模式控制该接口由TRX_CE、TXEN、PWR组成控制由nRF905组成的高频头的四种工作模式:掉电和SPI编程模式;待机和SPI编程模式;发射模式;接收模式,各种模式的控制模式见上表1。2. SPI接口SPI接口由SCK、MISO、MOSI以及CSN组成。(1)在配置模式下单片机通过SPI接口配置高频头的工作参数;(2)在发射/接收模式下单片机SPI接口发送和接收数据。3. 状态输出接口提供载波检测输出CD,地址匹配输出AM,数据就绪输出DR。4.单片机SPCE061A的介绍 SPCE061A是一款十六位单片机,可方便实现复杂的数据处理,包括基本的加减运算和

17、复杂的乘积运算处理,该芯片拥有8路10位精度的ADC,其中一路为音频转换通道,另外7路可作为普通的AD转换通道;支持标准C语言,可以实现C语言与凌阳汇编语言的互相调用,并且,61板除了具备单片机最小系统电路外,还包括有电源电路、音频电路(含MIC输入部分和DAC音频输出部分)、复位电路等,采用电池供电, 61板上有调试器接口(Probe接口)以及下载线(EZ_Probe)接口,分别可接凌阳科技的在线调试器、简易下载线,配合nSP IDE,可方便地在板上实现程序的下载、在线仿真调试。 SPCE061A在芯片内部集成了LCE仿真电路接口,SRAMI数据存储器,通用I/O端口,定时器/计数器,中断控

18、制,CPU时钟,模-数转换器A/D,DAC输出,通用异步串行输入输出接口,串行输入输出接口,低电压监测/低电压复位等若干部分。其内部结构如图12所示: 工作电压:VDD为2.6-3.6V(CPU),VDDH为VDD-5.5V(I/O);(2)CPU时钟:0.32MHZ-49.152MHZ;(3)内置2K Words的SRAM;(4)内置32K Words的FLASH。61板上具有如下主要功能模块:(1)SPCE061A单片机最小系统外围电路模块; (2)电源输入模块;(3)音频电路(包含MIC输入、DAC音频功放输出)模块;(4)按键模块;(5)I/O端口接口模块;(6)调试、下载接口模块。

19、16位控制器 FLASHUnsp+ICE RAM锁相环 CPU时钟振荡器 实时时钟低电压监测/低电压复位双16位定时器/计数器时基中断控制7通道10位ADC单通道ADC+AGC双通道10位DAC串行口输入输出接口32管脚通用输入输出断口ICE-ENICE-SCKICE-SDAVCPXI/RXOIOA15-0IOB15-0MIC-INAUD1AUD2IOB0NIOB1图12 SPCE061内部结构5 系统软件设计5.1 系统软件结构主机系统软件结构主要是nRF905初始化及射频接收函数、串口通信函数等。从机系统软件结构如图12所示,主要有以下几个关键函数:DS18B20初始化及温度采集函数、nR

20、F905初始化及射频发送函数、数据显示函数等。图中可以看出各文件之间的调用关系。下面简要介绍一下各个程序文件的功能:主程序文件(main.c):实现系统的初始化,整个系统的运行控制。数码管显示函数(Dig.asm):包含显示的端口初始化,显存的刷新,数码管的闪烁等。nRf905发送函数(fasong.c):包含了nRf905的初始化,发送温度数据。DS18B20驱动函数(ds18b20-driver.c):启动DS18B20测温,并读取测温结果。中断服务函数(ISR.asm):系统的显示刷新,温度数据发送均通过中断完成。主程序文件(main.c)数码管显示函数(Dig.asm)nRf905发送

21、函数(fasong.c)DS18B20驱动函数 (ds18b20-driver.c)中断服务函数(ISR.asm)图13 从机系统软件结构 调用显示子程序发温度转换开始命令读出温度值温度处理显示数据刷新启动发送初始化1s到?YN图14 从机系统主程序流程图5.2 系统主程序从机系统主程序如图14所示:主要功能是负责温度的实时显示,读出并处理DS12B20的测量温度值以及启动nRF905发送。返 回DS18B20初始化SOCE061A发送0延时600us释放总线R1=1延时30us超时?图15 DS18B20的初始化流程NY总线状态为0?超时?总线状态为1?R1=0NNNYYY5.3 子程序的设

22、计5.3.1 读出温度子程序设计先需将DS18B20进行初始化,其初始化流程图如图15所示;如果DS18B20初始化成功,将会返回1,否则返回0。读出温度子程序的流程图如图16所示;它的主要功能是读出RAM中的9个字节,在读出时须进行CRC校验,校验有错时不进行温度数据的改写。结束发DS18B20复位命令发跳过ROM命令发读取温度命令移入温度暂存器读取操作,CRC校验9字节完?图16 从DS18B20读一位数据流程NYCRC校验正确?NY5.3.2 nRF905发射及接收程序设计nRF905发射模式如图17,nRF905接收模式如图18所示。1.发射模式:当MCU有数据需要发往规定节点时,接收

23、节点的地址(TX-address)和有效数据(TX-payload)通过SPI接口传送给高频头;MCU设置TRX_CE,TXEN为高来启动传输;当AUTO_RETRAN被设置为高,高频头将连续地发送数据包,直到TRX_CE被设置为低;当TRX_CE被设置为低时,高频头结束数据传输并将自己设置成待机模式。设置nRF905为Standby模式进入Shockburst TX模式启动发送SPI寄存器配置DR置低TRX-CE=高?TRX-CE=高?AUTO-RETRA=高?否是否否是是图17 nRF905发射模式2.接收模式:通过设置TRX_CE高,TXEN低来选择RX模式;650us以后,高频头监测空

24、中的信息;当高频头发现和接收频率相同的载波时,载波检测(CD)被置高;当高频头接收到有效的地址时,地址匹配(AM)被置高;当高频头接收到有效的数据包(CRC校验正确)时,高频头去掉前导码,地址和CRC位,数据准备就绪(DR)被置高;MCU设置TRX_CE低,进入standby模式(待机模式);MCU可以以合适的速率通过SPI接口读出有效数据;当所有的有效数据被读出后,高频头将AM和DR置低。设置nRF905为Standby模式nRF905进入Standby模式模式启动接收有载波信号CD为低DR和AM被置低TRX-CE=高?CRC校验正确?否否是是接收数据地址是否正确TRX-CE=高?DR=高A

25、M=高AM=低图18 nRF905接收模式否否是5.3.3 从机中断服务程序该系统用到了以下中断: IRQ2_TMB、IRQ4_4KHz、IRQ5_2Hz、IRQ7-433MHZ。下面逐个介绍其作用及中断服务流程:IRQ2_TMB中断如图19:自动模式下,切换DS18B20通道。IRQ4_4KHz中断如图20:数码管动态显示的刷新。IRQ5_2Hz中断如图21:设置状态下,闪烁被设置位。IRQ7-433MHZ中断如图22:nRf905发送数据。22IRQ2-TWB中断返 回切换通道uiChannel清除中断标志位图19 IRQ2-TWB中断服务流程自动模式?YIRQ4-4KHZ中断返 回调用显

26、示驱动函数清除中断标志位图20 IRQ4-4KHZ中断服务流程IRQ5-2KHZ中断返 回调用显示闪烁函数清除中断标志位图21IRQ5-2KHZ中断服务流程IRQ7-433MHZ中断返 回调用nRf905发送函数清除中断标志位图22 IRQ7-433MHZ中断服务流程 本科毕业设计说明书(论文) 第 22 页 共 22 页5.3.4 RS232接口通信软件设计在本设计中PC机发送字符与接受字符均采用查询方式,发送前先读取通信或状态寄存器,查询发送保持寄存器是否为空;接收前先读取通信或状态寄存器,查询一帧据是否收完。从机采用中断方式,即接受到地址帧后就进行串行口中断申请,CPU响应后,进入中断服

27、务程序,按照通讯协议要求发出命令号,完成相应功能,便能实现数据通讯。5 系统调试 SPCE061A片内集成了一个ICE(在线仿真电路)接口,使得对该芯片的编程、仿真都变得非常方便,而ICE接口不占用芯片上的硬件资源,结合凌阳科技提供的集成开发环境(nSP IDE)用户可以利用它对芯片进行真实的仿真;而程序的下载(烧写)也是通过该接口进行下载。 步骤一:根据电路连接示意图连接硬件,并连接下载线(Probe)。 步骤二:打开电源。 步骤三:启动unSP IDE。步骤四:下载程序代码到61板上。步骤五:运行程序结 论本文基于nRF905和DS18B20设计了一个无线测温系统,具有体积小、功耗低等优点

28、,且充分利用了SPCE061A的资源, SPCE061A的16位特性、DSP功能以及快速的处理能力,使得该系统的数据采集和运算处理十分的方便简单,适用于采油厂、发电厂、钻井施工等不宜进行有线测温的场合,应用前景广阔。方案的扩展: 本方案的可扩展性比较强,整个程序的程序框架已经搭建好,可以接多个DS18B20实现更多路的温度采集,另外nRF905在接受数据成功时连续接受,接受不到数据时连续显示为0,可进一步改进:使发-接,不是无限连续的。致 谢整个毕业论文的过程,在曹成茂老师的悉心指导和严格要求下,我终于完成了基于无线数据方式的多路温度数据采集与传输的论文。从课题选择、方案论证到具体设计,每一步

29、对我来说无疑是巨大的尝试和挑战,也成就了我在大学期间独立完成的最大的项目。记得在刚接到这个课题时,由于对NRF905芯片以及相关知识不是很了解,我都有些茫然不知所措。在具体设计的过程中,我遇到了更大的困难。我不断地给自己提出新的问题,然后去论证、推翻,再接着提出新的问题。在这个循环往复的过程中,我这篇稚嫩的设计日臻完善。这次毕业设计使我学到了很多,我感到不论做什么事都要真真正正用心去做,才会使自己更加的成长,没有学习就不可能有实践的能力,没有自己的实践就不会有所突破,希望这次的经历能让我们在以后的学习生活中不断成长与进步。参 考 文 献1 张洪润、张亚凡等编著. 单片机原理及应用M.北京:清华

30、大学出版社,2005 2 戴佳、戴卫恒主编. 51单片机C语言应用程序设计实例精讲M. 北京:电子工业出版社,2006.3 沙占友著. 单片机外围电路设计(第2版)M. 北京:电子工业出版社,2006.4 凌阳科技主编. 凌阳16位单片机开发实例M. 北京:北京航空航天大学出版社,2006.5 全国大学生电子设计竞赛组委会编著. 全国大学生电子设计竞赛获奖作品选编(第一版)M.北京:北京理工大学出版社, 2005. 6 李东生主编.PROTEL 99SE电路设计技术入门与应用M.北京:电子工业出版社,20027 储昌吟.LED显示屏系统原理及工程技术M.成都:电子科技大学出版社,20009 张

31、俊谟编著.单片机中级教程原理与应用M. 北京:北京航空航天大学出版社,200210 ATMEL.8-bit Microcontroller with 20K Bytes Flash AT89C55WD, 199811JacbMillman,ArvinGrabel:Microeletronics,2ndEdition,McGraw-Hill,I-nc.,198812 Sun-MoKang,Yusuf Leblebici:CMOS Digital Integrated Circuits-Analy-sis and Design,McGraw-Hill,Inc.,1996Title A design

32、 of Multi-channel temperature data acquisition and transmitsbased on Wireless data mode Abstract The system designed one kind of the multi-channel temperature data gathering system ,It was based on the SPCE061A board monolithic integrated circuit and the radio frequency chip nRF905 module. Simultane

33、ously It had introduced systems work flow and given the wireless data acquisition, the transmission part as well as each module structure diagram. In the software design .The system had used the assembly and the C language to programming, It had realized the multi-channel temperature data acquisitio

34、n systems design finally. Moreover SPCE061As internal integrated an online artificial circuit connection,this causes this chips programming and the simulation becoming very conveniention, The integrated development environment (nSP IDE) which was provided by the Ling Yang science and technology coul

35、d be used to simulate to the chip. This article used the nRF905 radio frequency module and the temperature sensor They had compositied wireless digit temperature datas acquisition and the transmission system, it can be used in the real-time examination for environment warm, it be suitable in each kind situation which was not suitable carries on the wired temperature measurement, this design had simple reliable and the nimble convenience characteristic.Kewords SPCE061A, Nrf905 , DS18B20,RS232。附录A 61板图附录B 61板电路原理图本文是通过网络收集的资料,如有侵权请告知,我会第一时间处理。 .

展开阅读全文
相关资源
相关搜索
资源标签

当前位置:首页 > 学术论文 > 毕业设计

版权声明:以上文章中所选用的图片及文字来源于网络以及用户投稿,由于未联系到知识产权人或未发现有关知识产权的登记,如有知识产权人并不愿意我们使用,如有侵权请立即联系:2622162128@qq.com ,我们立即下架或删除。

Copyright© 2022-2024 www.wodocx.com ,All Rights Reserved |陕ICP备19002583号-1 

陕公网安备 61072602000132号     违法和不良信息举报:0916-4228922