张玲玲,王建中,石 磊
(中国电子科技集团公司第58研究所,江苏 无锡 214035)
随着物联网概念的日渐普及,传感器市场再次迎来快速发展的机遇。传感器主要包括压力传感器、温度传感器、流量传感器、水平传感器、无线传感器和生物传感器等等。传感器是信息产业的重要组成部分,可以应用于航天、军工、医疗和汽车电子等方面。目前国际上集成化智能传感器技术发展迅速,然而由于我国技术和资金等方面的不足,导致在传感器的研究上落后于国外。
温度是和人类生活环境密切相关的物理量,是工业过程三大参量(流量、压力、温度)之一,温度测量是一个经典的话题,长久以来,在这方面已有多种测温元件和传感器得到普及,但是对于一些特殊行业或特定环境应用,传统的测量方式已不能满足其需求。
因此,我们针对电力部门配电柜测温监控系统,从传统的温度传感器入手,通过结合无线收发技术,研制开发了无线温度传感器。本文主要讲述该无线温度传感器硬件结构及软件处理过程。
高精度无线数字化温度传感器应该包含两个主要部分:一部分是高精度的温度测量(含发射)电路,另一部分是温度信息处理(含接收)电路。温度测量部分主要由高精度传感器、MCU、电源控制电路和无线发射模块构成,见图1。温度处理部分主要由无线接收模块、MCU、通讯接口电路和显示模块构成,见图2。
图1 温度测量电路框图
图2 温度处理电路框图
温度传感器的种类非常多,选择的空间也很广阔。传统传感元件可以使用热电偶、热电阻等测温元件,也可以选用集成温度传感器。
对于传统的传感元件,由于测量精度比较低,因此只能使用在一些要求不高的场合。另外在使用时,传统传感元件还需要搭建额外的电路,需要进行A/D转换才能与控制器连接,因此不便于集成和小型化。在此,本文不对传统传感元件进行深入探讨。
本设计选择的温度传感器是集成温度传感器,以下给出了两种选择:DS18B20和Tic。
表1 两种温度传感器参数比较
从表1中可以看出,与DS18B20相比,Tic具有精度高、测量范围宽、同等分辨率下转换速度快、操作简单、支持模拟输出等优点。因此,本文选用Tic作为了高精度温度传感器。
目前,工程应用比较主流的单片机是89C51系列。但是由于受到单片机指令运行速度的影响,89C51单片机不能满足数据高速采集的要求,同时它也不具备低功耗的要求,所以舍弃不用;此外可供选择的还有高速数字信号处理器(DSP),它的特点是速度快、硬件结构简单、I/O端口丰富、软件编程灵活,但是由于其价格昂贵,对于批量生产的产品来说没有价格优势。
基于低功耗的设计要求以及价格方面的考虑,本设计中采用了PIC系列单片机作为微处理器单元,PIC系列拥有各种型号,选型灵活,其指令非常精简,执行效率高,而且还具有低功耗睡眠模式。通讯的I/O端口也非常丰富,在大多数场合下基本可以满足要求。
2.4.1 无线发射模块
无线发射采用ASK调制方式,另外,由于目前系统都要求小型化,因此发射模块不能采用市场上传统的发射电路,需要应用微带天线技术将发射部分整合从而减小系统体积。详细电路图见图3。
振荡源采用声表谐振器SAW稳频技术,频率稳定度极高。所谓SAW(Surface Acoustic Wave)器件是指利用压电材料将高频信号转换为表面弹性波,再用压电材料反转为高频信号的器件。高频三极管T1的基极通过SAW谐振器接地并通过R1接控制信号;高频三极管T1的集电极连接阻抗匹配电路并通过电感L1接电源正极Vcc,电感L1和电源正极Vcc之间通过电容C1、C2接地,分别用于低频(控制信号)和高频(载波)去耦;高频三极管T1的发射极通过电阻R2和电容C4接地。振荡源的频率输出由SAW决定,常用的是315MHz或433.92MHz。
图3 无线发射模块
匹配网络起到振荡源与发射部分的桥梁作用。从振荡源输出的功率通过匹配网络输入到天线部分发射,但如何进行有效的功率传输是硬件设计的关键,因为高频三极管有效T1的S参数是随频率变化而改变的,即振荡源输出阻抗是随频率变化而变化的,对于不同的频率(315 MHz、433.92 MHz、868 MHz等),其匹配电路是不同的。失配的电路工作电流大且输出功率小,而匹配的电路在合理的电流下能输出最大的功率。
2.4.2 无线接受模块
本设计中无线模块采用超外差接收模式,接收芯片是Infineon公司的TDA5201,通过选频接收、混频、比较实现有效数字信号的输出。由于该芯片的应用技术已较为成熟,在这里不再赘述,外围配置电路见图4。
图4 无线接收模块
数据的输出一共有三个字节。第一个字节的8位和第二个字节的高4位是地址码。第二个字节的低4位和第三个字节组成了温度数据位。在每个数据包发送之前都有一个同步码。当检查到正确温度后,MCU将控制发射模块连续发送3帧。图5给出了同步码、逻辑1和逻辑0的电平占空比。
从数据编码方式可以看出,每一帧之间都有同步码隔开,所以如果使用单片机软件解码,那么程序只要判断出同步码,然后对后面的字码进行脉冲宽度识别即可。以下给出了两种解码方法,并且假设已经检测出了同步码。
(1)方法一:从第一个上升沿开始延时450μs左右,检测电平高低,高即为逻辑1,低即为逻辑0。重复上述方法,连续检测,直到检出所有码位。
(2)方法二:从第一个上升沿开始记时,并不断检测电平变化,一旦发现电平改变,立即记录电平宽度,再继续记时直到出现第二个上升沿,此时记录下了两次电平变化的脉冲宽度。重复以上步骤,判断脉冲宽度是否符合逻辑1和逻辑0的占空比要求,正确则继续译码,否则认为误码,应丢弃。连续正确检测,直到译码结束。
图5 数据编码的占空比
两种解码方式的优缺点如下:
方法一程序体结构简单,MCU的开销小,但是精度差,当MCU的时钟频率发生变化时容易产生误操作;方法二程序解码精度高,误操作少,但是程序体结构复杂,对MCU 的程序空间和内存空间要求比较高,MCU的开销也比较大。
不过,为了满足高精度解码的需要,本文还是采用了方法二,以避免无线频段中大量干扰信号以及毛刺引起的误解码。
以下给出了C语言解码代码,包括了同步码和逻辑0(逻辑1识别类似于逻辑0)的识别。此外,需要注意的是,实际接收到的信号往往第一帧都是不完整的,所以在编写解码代码时需要考虑进去。
MCU配置在4MHz的时钟频率上,High_line(),low_line()为高低电平计时函数。
(1)同步码的识别:
板级调试时,我们参照前期EDA工具的仿真结果,PIC单片机选择了dsPIC30F4011和PIC12F629,显示模块选择了MAX7219。
图6是实验时使用的在线调试平台,即Microchip MPLAB IDE。
图6 Microchip调试平台
图7给出了实际在线调试的结果,并且在调试时已经加入了无线发射模块,以验证在无线发射的情况下,整个系统的正确性和可靠性。
由图7中可以看出,调试时得到的地址是56,温度是26.5999℃。因此,设计方案的性能达到了设计要求。并且通过测试,发射和接受能够在15米以上,由于在解码时已经考虑了软件容错功能,所以后期只要稍微修改发射模块,就可以实现更远距离的传输。
图7 在线调试结果
本文探讨了采用价格低廉的PIC系列单片机、高精度温度传感器和无线收发模块实现了无线温度传感器的功能。在设计过程中,通过前期论证、仿真和后期的板级调试,该款无线温度传感器具有较高的测量精度,无线传输的功率及距离也完全满足设计要求。因此,该无线温度传感器具有一定的实用价值。通过后续的完善和扩展,其以较低的成本和高精度将开拓出更广阔的应用空间。
[1] M.M.拉德马内斯. 射频与微波电子学[M]. 北京:科学出版社,2006.
[2] 李学海. PIC单片机实用教程[M]. 北京:北京航空航天大学出版社,2002.
[3] MICROCHIP. PIC12F629 / 675数据手册[P].
[4] MICROCHIP. dsPIC30F4011 / 4012数据手册[P].
[5] MAXIM. 串行接口、8位、LED显示驱动器[P].
[6] Infineon. Wireless Components ASK Single Conversion Receiver TDA5201 Version1.5[P].