您好,欢迎来到划驼旅游。
搜索
您的当前位置:首页基于DSP和nRF24L01的无线环境监测系统设计

基于DSP和nRF24L01的无线环境监测系统设计

来源:划驼旅游
基于DSP和nRF24L0 1 的无线环境监测系统设计 郝文延,焦明华 (长治医学院生物医学工程系,长治0460OO) 摘要:设计基于DSP(Digital Signal Processor)和nRF24L01的无线环境监测系统。系统的主控部件选用的是 TMS320LF24O7,无线通信模块选用的是nRF24L01。文中论述了系统各硬件模块的选择方案,给出了各部分的软件设 计。实验表明,该系统可以实现对环境温度、光照强度等的无线监测。 关键词:DSP;nRF24L01;无线传输;温度传感器;光度传感器 中图分类号:TH765 文献标识码:A Wireless Environment Monitoring System Based on DSP and nRF24L0 1 Hao Wenyan,Jiao Minghua (Department of Biomedical Engineering,Chang Zhi Medical College,Changzhi 046000,China) Abstract:This paper designs a wireless environmental monitoring system based on DSP and nRF24L01.TMS320LF2407 is used as the main control unit,and nRF24 L0 1 is used as the wireless communication module.Design plans of system hardware modules are dis— cussed,and the software designs are given.Experiment results show the system realizes the wireless monitoring of the environment tem— perature and light intensity. Key words:DSP;nRF24L01;wireless transmission;temperature sensor;luminosity sensor 不利于蔬菜的生长。因此,需要根据监测值适时调节棚内 引 言 目前,我国环境监测设备已经有了长足的发展,例如 应用卫星遥感技术进行环境监测,采用GPRS系统对地下 温度,以有效地避免不当的温度、光照对蔬菜的危害。 1 方案论证 本无线环境监测系统是由一个主站和两个分站组成。 主站由无线收发模块、信息处理模块、显示模块构成,功能 是无线发送分站的编号和命令,并无线接收分站发送的信 息,同时显示这些信息及分站的编号;分站由传感器模块、 编码模块、信息处理模块、显示模块和无线收发模块构 成,功能是采集温度、光照信息,显示所测信息,并将这些 水监测等,各种环境采样器也更加精确。但是大部分监测 站的仪器装备技术含量较低,功能单一,稳定性和可靠性 差,多数小型仪器采用有线通信方式,亟待更新换代。而 且,我国在环境监测仪器方面的自主开发能力较弱,精密 仪器的技术含量和工艺要求都比较高,使得目前大量的精 密仪器无法实现本地化生产,主要依靠进口,这就导致了 价格非常昂贵。 本文基于DSP和nRF24L01设计了一种无线环境监 测系统。该系统操作简便、测量迅速、造价低廉、便于携 信息和自己的编号无线传输给主站。系统结构图如图1 所示。 1.1 主控模块 本方案中主控模块选择TI公司的DSP芯片 TMS32OLF24O7。TMS32OLF24O7内置1O位(双8路或 带,能满足一定灵敏度和准确度的要求,且采用无线数据 通信作为传输载体,可应用于蔬菜大棚、生产车间、温室、 矿井等场所的温度、光度监测与控制系统。 例如,在蔬菜大棚中,蔬菜生长的适宜温度为2O~ 30℃,大棚内白天增温快,当棚外平均气温为15℃时,棚 内可达4O~50℃,不利于蔬菜生长。同样,适当的光照强 度对植物体内的盐代谢起极为重要的作用,是决定植 株盐含量的主要因素之一口],但过弱或过强的光照也 单16路)A/D转换器、看门狗定时器模块;有41个可 编程的数字I/0引脚,绝大部分有复用功能;外设接口有 串行通信SCI(Serial Communication Interface)与串行外 设SPI(Serial Peripheral Interface);2个事件管理器EVA、 EVB可为所有类型电机提供控制技术,为工业自动化方 面的应用奠定了基础;2个16位通用定时器,3个具有死 paper@mesnet.corn.cn(投稿专用) 201 7年第3期 平 机 摄入式条皖应冈 51 不同地点的当前环境温度、光度值。 1.4无线传输模块 选用无线传输模块nRF24L01。它是一款工作在 2.4~2.5 GHz世界通用ISM频段的单片无线收发器芯 片,采用FSK调制,内部集成自己的协议,有自动应答及 自动重发功能、地址及CRC检验功能,可实现点对点或 1对6的无线通信,无线通信速度可达2 Mbps;而且,电流 消耗极低,当工作在发射模式下发射功率为一6 dBm时电 流消耗为9 mA,接收模式下为12.3 mA。nRF24L01与 PT2262/2272相比,不需要编码和解码,程序简单;与 图1 系统结构图 nRF905相比,外围元件更少,不需要曼彻斯特编码;与 nRF401相比,价位更低。 区功能的全比较单元 ]。 较MCS一51系列单片机而言,TMs32OLF2407内部 有32 KB的Flash程序存储器和2.5 KB的SRAM,更能 满足软件对空间的要求,且方便在线调试。利用其内置的 TMs320LF24O7只需为nRF24L01模块预留6个I/O 口,分别与其6个控制和数据信号CSN、SCK、MISO、MO— SI、IRQ、CE相连。TMS320LF2407与nRF24I 01的连接 电路如图3所示。 1O位A/D转换器,可以直接接温度、光度传感器模块,将 测得的温度值、光照强度值等模拟量转换为 TMS32OLF24O7可以处理的数字信息,避免了用MCS一 51进行A/D扩展带来的麻烦 ]。另外,TMS320LF2407 有41个可编程的数字I/O引脚,绝大部分有复用功 能,更能满足硬件对i/o口的需求。使用TMS320LF2407 的串行外设接口SPI,可以直接和无线传输模块 nRF24I 01提供的SPI接口相连,不需要软件模拟SPI。 使用的开发环境是CCS3.0,完全支持C语言,方便程序 编写。 1.2传感器模块 选用热敏电阻来测量温度。其值较为准确,灵敏度较 高;配合电桥使用,工作温度范围宽、体积小,使用方便;电 阻值可在0.1~100 kQ问任意选择。与热电偶相比,热敏 电阻价格低廉;与DS18B20相比,热敏电阻需要编写的程 序更加简单。 图3 TM¥320LF2407与nRF24L01的连接电路图 1.5 显示模块 选用型号为LG5011BSR的共阳极数码管,与液晶显 示器相比,价格低廉。它由7段发光二极管组成,共有 10只引脚。其中,3、8引脚为共阳极,其他引脚加低电平 时对应的二极管就会亮,从而控制数码管显示相应的 数值。 选用光敏电阻来测量光 照。较光敏二极管,光敏电阻 更能显示出光的强弱;而且,它 能够和热敏电阻应用到同一电 路中。传感器模块电路如图2 所示。 图2 传感器模块电路 1.6 系统硬件结构 传感器模块是信息采集的枢纽。如图2所示,电源电 压经稳压管TI 431稳压到2.5 V,提供给由普通电阻和热 敏电阻组成的分压电路,以及普通电阻和光敏电阻组成的 分压电路。热敏电阻分得的电压通 过TO输出,接 1.3编码模块 选用跳线开关组成编码模块。与普通开关组成编码 模块相比较,成本更加低廉。用两列排针(各8位):一列 排针接到TMS32OLF2407的i/o口,并经过10 kQ电阻 接+5 V电源VCC,另一列排针接地。两列排针对应的位 用跳线帽相连时置0,否则为1。这样可以设置分站的编 TMS320LF2407的ADCIN0;光敏电阻分得的电压通过 LO输出,接TMS320I F2407的ADCIN1。利用读取A/D 转换后的结果,并计算出对应的温度值和光线强度值,经 号0~255,即本系统最多可以扩展256个分站,用来监测 5 2 Microcontrollers&Embedded Systems 20 1 7年第3期 www.mesnet.com.CR 查表输出显示。 2.1初始化部分 将数据地址、数据显示区地址等内容初始化为0,设 置数据显示区地址的内容,进行数码管显示,以进行系统 自检。 for(i一0;i<3;i++){ 无线传输模块是数据传输的核心。如图3所示, TMS320LF2407通过6个I/0端口(IOPC0,IOPC1, SPISIMO,SPISOMI,SPICLK,SPISTE),依次与 nRF24L01模块的6个控制和数据信号IRQ、CE、MOSI、 MISO、SCK、CSN相连。其中,CSN为芯片的片选线, DISHE(); DISPLAY(); DELLS(); BLANK(); DISPLAY(); DELLS(); ) //调用要显示的内容 //输出显示 //延时 //内容为0 //显示 //延时 CSN为低电平时芯片工作;SCK为芯片控制的时钟线; SOMI为芯片控制数据线;MOSI为芯片控制数据线;IRQ 为中断信号,无线通信过程中DSP主要是通过SPI接口 的SPISIMO、SPISOMI与nRF24L01进行通信。CE为芯 片的模式控制线,在CSN为低的情况下,CE协同 nRF24L01的CONFIG寄存器共同决定nRF24L01的 状态 。 2.2无线发射部分 首先设置nRF24L01为发射模式(设置发射和接收节 点地址),使能自动应答,配置自动重发次数,选择通信频 率,配置发射参数,选择通道0有效数据宽度,配置 nRF24I 01的基本参数以及切换工作模式;然后设置发射 数据,启动发射,发射完数据后会自动转入接收模式接收 应答信号。 inkNRF24L01(); 显示模块用TMS320LF24O7的IOPB0、IOPB1来模 拟串行发送数据的过程,外接串入并出移位寄存器 74LS164构成。当需要显示信息时,数据从IOPB0端在 移位脉冲(由IOPB1输出)的控制下逐位移人74LS164, 74LS164能将输入的串行数据转换为并行数据输出到数 码管。这样的设计不仅节省I/o口,而且不占用串口资 源。编码模块通过IOPA0~IOPA7与DSP相连。 //初始化无线通信模块 //置低SPISTE引脚,选 {{、通nRF24L01 PCDATDIR一0x2000: 2 软件设计 系统的主站、分站程序流程如图4所示。主站程序主 要包括初始化、无线发射、无线接收、数码管显示等部分; while((SPISTS&0x40)! Ox40){) readspibuf=SPITXBUF; //等待SPI写结束 7,读SPIBUF寄存器,清 }} SPI INT FLAG 分站程序主要包括初始化、无线发射、无线接收、数据采 集、数码管显示等部分。 nRF24L01TxPacket(TxBuf); //发送Tx—Bur中的数据 PCDATDIR=PCDATDIR&0x0202;//置高CE,激活数据发送 2.3无线接收部分 首先设置接收模式(即写接收节点地址),使能自动应 答,通道0接收地址允许,选择通信频率,选择通道0有效 数据宽度,配置发射参数,配置nRF24L01的基本参数以 及切换工作模式;然后启动接收,130 s后开始检测空中 数据,若收到,则数据模块会自动发射应答信号 。 SetRXMode(); //数据接收配置 SPIRW Reg(WRITEREG+STATUS,0xFF);//nRF24L01读写寄存器函数 while((SPISTS&0x40)!一Ox400){}//等待SPI读结束 rdsbfl—SPITXBUF; PCDATDIR=0x2020; (a)主站程序流程 (b)分站程序流程 图4主站分站程序流程 //读取寄存器 //置高SPISTE引脚,禁止nRF24L01 2.4数据采集部分 分站对温度、光照、地址编号进行采集,通过读取I/O paper@ mesnet.com.cn(投稿专用) 201 7年第3期 平专机 嵌入式系皖应用 53 口得到地址编号的值,通过读取A/D来获得温度、光照的 最初值,经过DSP处理后得到准确的温度、光度值。 MAXCONV一0x0000: ②将分站放置在自然光下,用手遮挡光度传感器,由 亮到完全遮蔽,当暗到几乎无光线进入时,从LED数码管 上读得的光度原始数据为198 lx。 根据以上试验结果,结合人们的习惯思维,在程序上 进行了一些设计。用195减去测得的原始数据,值小于等 于零时显示为零,光照越强显示值越大。 CHSELSEQ1—0x0000; //第0通道 ADCTRL2—0x4000; ADCTRL2—0x2000; //复位使排序器指针指向CONV00 //启动A/D转换 while((ADCTRL2 8L0xl000)=一0xl000); asm(”NOP”): asm(”NOP”); //等待转换完成 3.4无线通信调试 首先进行分站单发送信息、主站单接收信息的调试, 经过一步步改进,最终通信成功。然后再进行主站、分站 (即发送又接收信息)的调试,经反复调试最终通信成功。 2.5数码管显示部分 程序以模拟串口的方式实现数据显示,过程为:取一 字节数据,移一位数据到Vo口中,通过置位另一Vo口 结 语 本文介绍的无线环境监测系统的控制采用 TMS320LF2407实现。TMS320LF2407内部资源丰富, 既有A/D转换器,又有SPI、SCI,省去了系统扩展的麻烦; 另外,I/O口比较多,内部存储空间较大,有利于系统功能 扩充。无线部分采用高度集成的nRF24L01器件,大大简 高低电平来模拟时钟信号,即把数据一位一位地移到移位 寄存器74LS164中,然后并行输出到数码管显示数据。 3调试分析 3。1 系统板硬件部分调试 系统板硬件部分调试主要是万用表检查电路通断情 况,并测量部分关键引脚的电压是否达到要求。 化了系统硬件和软件设计,减小了体积,提高了系统工作 的可靠性。 经试验验证,用编码模块可以设置分站的地址编 号1~255,并能实时采集到周围环境的温度和光照数 据,平均误差控制在0.5℃以内,温度测量范围在0~ 100℃,各项数据都能通过数码管清晰地显示出来。光 的有无还可通过一个发光二极管显示,有光时发光二 极管灭,无光时发光二极管亮。主站能准确无误地无 3.2环境温度测量调试 首先,把标准温度计和热敏电阻同时放入冰水混合液 中,标准温度计的示数为Y1,根据基础表值探测点显示为 X1。接着,将它们放入沸水中,标准温度计的示数为Y2, 根据基础表值探测点显示为X2,得出比例系数K一(X2一 X1)/(Y2一Y1)一2。最后,在沸水和冰水混合液之间的 温度内,测得标准温度Yi(i一3,4,…,30)和探测点显示 线接收分站数据,距离50 m左右仍能无线通信,但响 应较慢。该系统携带方便,价格低廉,可应用到狭小的 环境,可以随意放置;此外,还可再接人其他传感器,以 测量更多的环境参数。鼹 参考文献 [1]马光恕,廉华.设施内环境要素的变化规律及对蔬菜生长发 育的影响[J].黑龙江八一农垦大学学报,2002,14(3):16— 2O. 值Xi(i一3,4,…,30)共28组,从而得到近似比例系数 K一2±0.5。再通过软件部分进行数据的校准,建立温度 数据表。最终,将温度计和温度传感器置于同一环境下记 录测得的温度值,如表1所列。 表1 温度测试数据 测量条件 温度计显示温度/℃ 系统显示温度/℃ 误差/℃ 响应时间/s E2]刘和平,严利平,等.TMS320LF240X DSP[M].北京:北京 26.5 98.4 27.0 99.0 0.5 1.0 冰水混合液 室温(1) 室温(2) 室温(3) 沸水 0.7 1.0 O.3 1.0 22.5 22.0 O.5 1.2 24.8 25.0 1.3 1.0 航空航天大学出版社,2002. [3]李广第,朱月秀,等.单片机基础[M].3版.北京:北京航空航 天大学出版社,2007. 0.6 1.0 [4]李勇波,周川I.基于DSP的环境监测仪信号采集系统设计 [J].微计算机信息(嵌入式与SOC),2009,25(3):53—55. E5]付聪,付慧生,等.基于nRF24L01的无线温度采集控制系统 的设计[J].工矿自动化,2010(1):73—75. 平均误差一(O.3+0.5+0.2+0.5+0.6)℃/5—0.42℃ 平均响应时间一(1.0+1.2+1.0+1.0+1.O)s/5—1.04 S 3.3环境光度测量调试 ①将分站放置在灯光下,从最亮逐渐调暗,当暗到人 眼看字有些费力时,从LED数码管上读得的光度原始数 据为195 lx。 一一 wwW.mesnet.com.cn 5 4 Microcontrollers&Embedded Systems 20 1 7年第3期 

因篇幅问题不能全部显示,请点此查看更多更全内容

Copyright © 2019- huatuo6.com 版权所有 湘ICP备2023023988号-11

违法及侵权请联系:TEL:199 1889 7713 E-MAIL:2724546146@qq.com

本站由北京市万商天勤律师事务所王兴未律师提供法律服务