基于STM32的红外测温仪的设计与实现
红外测温仪是一种将红外技术与微电子技术相结合的新型温度测量仪器。与传统接触式测温仪器相比,具有测温精度高、非接触、不影响被测对象温度场、响应速度快及稳定性好等一系列优点,在电力、石油、化工、医疗等领域得到广泛应用[1]。
热释电红外测温仪是利用热释电效应工作的一种新型红外测温仪。与其他传统测温仪相比,具有不需制冷、能在室温下工作和光谱响应宽等优点,且其灵敏度高、响应速度快、抗干扰能力强[2]。本文利用热释电探测器,结合32 bit ARM核处理器低功耗、高性能和低成本的优点,设计了一个以ARM微控制器STM32为核心的红外测温仪。
1 红外测温的原理
一切温度高于绝对零度的物体都在不停地向周围空间发出红外辐射能量,其辐射能量的大小及其波长的分布与其表面温度有密切关系,由维恩位移定律可知,温度为Tc,的物体,对应于波长为λ1和λ2的单色辐射功率之比Z 由下式表示:
2 总体构成
由于本系统需要测量的是高温物体的表面温度,故采用比色测温方案,即利用同一被测物体在两个波长下的单色辐射亮度之比随温度变化这一特性作为其测温原理。红外测温仪的结构组成如图1所示,主要由光学系统、红外探测器、信号处理和显示输出等部分组成。光学系统完成光线的收集和视场大小的确定,红外探测器用来将聚焦在探测器上的红外能量转换成电信号,经放大、滤波等进行信号调理,然后送至微控制器进行模数转换及信号处理,最后再经温度补偿和标定后转换为被测目标的温度并用LCD显示出来。
2.1 微控制器STM32
STM32系列基于为要求高性能、低成本、低功耗的嵌入式应用专门设计的ARM Cortex-M3内核。并带有512 KB的高速Flash存储器,其内部集成了3个12 bit的ADC,1个2通道12 bit DAC,有多达11个定时器,其中有两个16 bit带死区控制和紧急刹车,用于电机控制的PWM高级控制定时器。利用此控制器可快速进行数字滤波、温度补偿等数据处理任务[3]。
2.2 光学系统
这部分采用的是反射式光学系统中典型的牛顿系统,这种系统相对于透射式和透射--反射组合式光能损失小、不存在色差、结构简单、易于加工。
2.3 探测器及斩波器设计
本系统采用的是热释电传感器,目前热释电传感器的核心元件--热释电材料主要有锆钛酸铅PZT、钛酸锶钡(BST)和钽钪酸铅(PST)等,在这里选择是用BST薄膜,热释电薄膜相对于热释电体材,具有小型轻量、分辨率高、反应快、能与微电子技术兼容等优点,因接受到的辐射很微弱且直流放大器存在零点漂移,故在辐射信号到达传感器器前必须对辐射能进行调制,使其变为交变信号。本系统使用的扇形调制盘由STM32的脉宽调制器输出口PA8产生的占空比为50%的方波信号驱动步进电机。
2.4 信号的调理
信号的放大电路分为前置放大电路和后级放大电路。尤其是前置放大器的噪声系数对整个检测系统的噪声具有决定性作用。本设计采用的放大器是美国MAXIM公司生产的OP07, OP07是一种超低失调的运算放大器(一般为10 μV左右),其共模输入阻抗可达200 MΩ,输出阻抗仅为60 Ω,可满足系统设计需要。由于STM32的A/D转换器输入信号范围为0~3.3 V,需选择合适的放大倍数,使最高测温时对应的输出电压在3.3 V内。
当信号经放大器放大后,其宽带噪声较大,因此,在前置放大器和后级放大器之间加了带通滤波器来抑制宽带噪声,提高信噪比。但带通滤波器的带宽应做的宽一些,否则当温度发生变化时,信号的频谱很容易偏离滤波器的通频带而导致测量误差[4]。根据本系统需要,系统采用二阶巴特沃斯型带通滤波器,其中心频率设计为100 Hz,带宽约在20 Hz。
2.5 检波电路
本文设计中采用电子开关型检波器,与模拟乘法器型检波器相比具有电路简单、精度更高、运行速度快、没有非线性等优点,具体的电路如图2所示。
由图2可见.输入信号V4是传感器经主放大器放大的输出信号,V5是STM32的PWM端口发出的,经过移相后用于斩波调制的脉冲信号;V6为V5的反相电压,通过加一反相器来实现的。图中R27=R28=R29=R31=R32=0.5 R33,当V5为高电平时,Q2导通,OP07的同相端接地;当V5为低电平时,Q2截止,OP07反相端接地,输出电压。
经上述电路后信号中还混有噪声,主要通过低通滤波器来消除这些噪声。
2.6 温度补偿单元
由于受到环境温度的影响,需要对系统进行温度补偿,本系统采用的是集成温度传感器AD592,是美国AD公司的一款高性能集成温度传感器,具有精度高、非线性的误差小、输入的范围宽等优点。系统中的可调电阻R2用来校准输出电压V2,当环境温度为0时输出电压V2为0;R5用来校准温度系数。经校准后,输出电压V2即为温度系数与环境温度的积,接到STM32的ADC端口PC0。
2.7 模拟/数字转换单元
STM32内置了3个12 bit的模拟/数字转换器(ADC),每个ADC共有多达21个外部通道,可以实现单次或扫描转换,在扫描模式下,自动进行在选定的一组模拟输入上的转换[5]。其A/D转换器测量范围为0~5 V,因为本系统的工作频率为150 Hz,每周期采样10次,所以ADC的转换速率设为1.5 kHz,系统中采用PC1端口对电压进行采样。
2.8 输入输出单元
STM32拥有多达80个多功能双向I/O口,因此设计键盘时可采用5个独立式按键,分别为开机、摄氏与华氏温度转换、辐射率修正和背光显示键,LCD显示器采用字符型液晶NT7502显示,微处理器通过8 bit串行接口向NT7502发送数据/命令,用GPIO实现LCD的读写控制时序以及数据信号,完成对LCD的操作控制,同时可用来显示环境温度的值。液晶显示器接口电路如图3所示。
- STM32-FSMC机制的NOR Flash存储器扩展技术(11-20)
- 基于Cortex-M3的 STM32微控制器处理先进电机控制方法(11-23)
- 基于STM32控制的声音导引系统(01-16)
- 基于Cortex-M3的STM32微控制器处理先进电机控制方法(03-07)
- 基于STM32的嵌入式语音识别模块设计(03-29)
- 新一代嵌入式微处理器STM32F103开发与应用(05-08)