引 言
人们在日常生产、生话中,对于采集数据的传输大多数采用有线方式,因为有线方式的传输距离、数据传输速率以及抗干扰能力都要优于无线方式;而对于在野外或者不便于铺设线缆的地区进行数据传输时,采用有线方式就受到了限制。针对这一特点,设计了采用无线传输方式的无线数据采集模块。模块选用Philips公司的P89LPC933单片机作为微控制器,单元集参数采集、数据存储、无线传输为一体,其整体结构框图如图1所示。
1 采集单元硬件电路的设计
由于模块采用电池供电,其能量是有限的,所以模块应选用低的工作电压以及低功耗的外围电路器件。
1.1 单片机的选取
采集模块选用Philips公司的P89LPC933单片机作为微控制器,其工作电压为2.4~3.6V。P89LPC933单片机采用了高性能的处理器结构,指令执行时间只需2~4个时钟周期,6倍于标准80C51器件;以抗干扰能力强、功耗低等优点而被应用于多种嵌入式系统中。同时P89LPC933集成了许多系统级的功能,如1个8位、4路逐步逼近式模/数转换模块和1个DAC模块,400 kHz字节方式I2C通信端口,SPI接口,键盘中断,片内看门狗定时器。这样可大大减少元件的数目,减小电路板面积,并降低系统的成本,因此适合于许多要求高集成度、低成本的场合,可以满足多方面的性能要求。
为降低微控制器的功耗,模块采用低频外部32.768kHz的晶体振荡器,工作电压为3V。在采集工作完成后,控制器关闭A/D使能进入空闲模式。
1.2 传感器的选取
模块以采集空气温/湿度及光照度数据为例,实际应用中可以根据需要采集的参数更换传感器。
①温度传感器。选用美国Dallas公司的可编程单总线数字式温度传感器DS18820实现空气温度信号的采集。该传感器体积小,外形如普通三极管,其内部集成有测温传感器及逻辑控制电路。DSl8820有很多优点,例如:直接输出数字信号,省去了后继的信号放大及模/数转换部分;外围电路简单,成本低;单总线接口,只有一根信号线作为单总线与CPU连接,且每一只都有自己唯一的64位系列号存储在其内部的ROM存储器中,故在一根信号线上可以挂接多个DSl8820,便于多点测量且易于扩展。
②湿度传感器。选用法国Humirel公司的HSll01电容式相对湿度传感器。此传感器与其他产品相比。有着显著的优点:不需要校准的完全互换性,高可靠性和长期稳定性,响应时间快,适用于线性电压输出和频率输出两种电路;模块中选用频率输出电路,经CMOS TLC555振荡器输出稳定的频率信号,经单片机采集后可以转换成湿度值。湿度值与输出频率关系如表1所列。
③光照度传感器。采用硅光敏二极管3DU050C,光谱范围为450 nm~1150 nm,用于可见光、红外光检测,光电流IL(10001x,10V)≥5 mA,暗电流Id(Olx,10V)≤O.1μA,击穿电压VCEO>30 V,耗散功率Pd=150 mW,封装φ5黑胶。
通过运算放大器输出电压信号,经单片机内部A/D转换电路,将电压转换成数字信号,计算出光照强度。运算放大器选用TI公司的TLC2272CP。该运放具有低功耗、低电压、高精度等优点,适用于电池供电的设备中(硬件电路参见图4)。图2为输出电压与光照强度的关系曲线。
1.3 无线收发单元
采用PTR8000无线收发模块,带有外置天线,可直接与单片机连接,无须外接其他器件,实现数据的无线转发;最大发射功率为+10 dBm,高抗干扰的GFSK调制,传输频率为5O kHz。该模块使用nRF905收发芯片,可工作在433/868/915MHz频段,专为点对多点无线通信设计;工作电压为1.9~3.6V,待机功耗为2μA,适用于低电压、低功耗系统中;内置完整的通信协议和CRC,只需通过SPI即可完成所有的无线收发传输。
1.4 存储单元
FM24CL64是Ramtron公司的一款低电压铁电存储器芯片,用于存储采集的数据。其工作电压为2.7~3.6V,适合在低功耗的单片机系统中应用。由于采用了铁电体技术,该芯片的数据交换速度极高,数据线可以支持的频率最高达到l MHz,因此单片机向FM24CL64写入数据时一般无须加延时,并且使用寿命没有限制。FM24CL64芯片的引脚排列如图3所示。
其中SDA和SCL引脚是数据交换线,用作CPU与FM24CL64之间的数据交换和命令写入;WP为写保护口,WP为高时写禁止,WP为低时写允许;A2、Al、A0是器件地址选择引脚,在同一总线上允许同时挂接8个同类器件。整个采集模块的电路简图如图4所示。
2 系统软件设计
为了降低系统的能量消耗,软件设计是至关重要的,简洁的程序能有效地节省单片机的运行时间,从而降低能耗;使CPU工作在掉电或者空闲模式下,也能有效降低功耗。掉电模式时功耗要比空闲模式更低,但由于掉电模式需要硬件复位唤醒,所以设计中选用CPU空闲模式。
软件整体设计流程:上电后单片机初始化各个设置,进入节能模式;定时时间到唤醒处理器,依次使能内部A/D转换模块,配置无线模块,执行数据采集程序,进行数据处理和存储,转发数据,结束后关A/D,设置无线模块进入待机模式,最后单片机进入空闲模式。这样使能量消耗降到最低。
在测量程序中,如果某一项参数出现异常,就调用参数报警程序,通过无线模块发送报警信息。程序在Keil的uVision2环境下编译调试通过。程序流程如图5和图6所示。
结语
本采集模块能够监测参数,当某一项或多项参数出现异常时,处理器调用报警程序通过无线收发模块发送报警信息。通过使处理器处于空闲模式及无线收发模块处于待机状态,有效地降低了模块的功耗。采集单元每隔特定时间采集一次参数信息进行存储和转发。对于整个采集系统,上位机可以通过无线模块发送指令,实现实时数据的观测。本文只涉及单个采集模块。
本模块单元有较强的可移植能力,通过更换测量单元传感器的类型,可以应用于工业数据采集、无线抄表、智能家电等领域。