微控制器

MCU 产品

MCU 设计支持

入门

基于 PIR 的运动检测:传感器解决方案

作者:Zack Albus (MSP430 应用 )

这种解决方案几乎无处不在,如邻居的私人车道、超市,而在住宅和工作场所的走廊上更是应用得越来越多。相关解决方案既不十分复杂,价格也不昂贵,而其应用范围已经深入到我们日常生活的方方面面。这就是运动检测器。无论是安装在隔壁的安防灯,还是自动光控智能器件,运动检测都是一种非常有用的技术,其在为我们带来更高安全性的同时还能帮助我们节约成本。本文将探讨如何使用无源红外 (PIR) 传感器实现简单的运动检测器。在系统设计过程中,设计人员必须确保实现两个目标:即低功耗和低成本,二者都是设计运动检测器时必需考虑的关键要素。

我们首先讨论硬件。我们针对本设计选定的传感器是 Glolab (www.glolab.com) PIR325 对偶元素热释传感器 (dual element pyroelectric sensor)。从单元素 (single element) 到四元素,市面上有多种 PIR 传感器可供选择。每种产品的基本原理相同:晶体物质 (crystalline material) 在红外线的辐射下产生电荷,辐射情况的变化(即热量的变化)会导致电荷的变化,而集成了高灵敏度 FET 元件的传感器可以感知到这些变化。

下图 1 显示了传感器检测到红外辐射出现变化时的输出特性。传感器具有一个内置的光学滤波器,能够将检测到的辐射限制在人体辐射 8 ~ 14um 波长的范围内。

图 1. PIR325 与信号输出

可将辐射变化进行内部放大,并在外部进行模拟输出脉冲的测量。VCC信号输出仍然很小,因此要特别注意设计方案必须能检测到几毫伏甚至几十微伏这样细微的峰至峰变化,但这要取决于传感器与辐射体之间的距离以及辐射体的大小。此外,输出偏移电压由 VCC 决定。在此实例中,我们选择 3V 电池供电,输出偏移电压为 500mV。

条件是必须将信号放大至可以使用的范围,毋庸置疑,使用额外的放大器级 (amplifier stage) 来实施放大工作是一种切实可行的解决方案。放大器级的增益取决于用于后端处理的、最终的模数 (A/D) 转换方法。设计中通常针对 A/D 转换采用简单比较器,其输出可驱动继电器或者触发微控制器 (MCU) 以执行某些功能。在这种情况下,仅存在两种可能的结果:高电平或低电平。对于稳定性更高的实施方案而言,可以用高准确度 A/D 转换器替代比较器,向 MCU 提供更多的信息以执行高级信号处理 (advanced signal processing)。无论是比较器还是低成本的高精度 A/D 转换器,一般要求其增益级放大1,000 倍或以上。

针对该设计案例,我们采用了一种独特的方案。为了降低成本和功耗,我们选用了单芯片 MCU,其在同一芯片上集成了所有必需的元件,这使该解决方案具有更小的体积、更低的成本、更易于设计和控制。我们选定的 MCU 集成有 16 位 A/D 转换器,从而 使测量精度更高,而且对传感器的增益需求较低。MCU 较重要的特性很可能是将集成可编程增益放大器 (PGA) 嵌入到 A/D 转换器中,以便直接进行传感器连接。要使模拟连接更简单直接,PGA 及 A/D 转换器的输入应为全差动,这不仅有助于处理信号的较大偏移,而且还能使传感器的小信号输出与 A/D 转换器动态范围的匹配最大化。

当然,传感器自身的输出并不是差动信号。使用传感器自身的输出信号来针对反相 PGA 输入创建 DC 偏置可以解决这一问题。图 2 给出了传感器与 MCU 及模拟信号链相连的详细图示。

图 2. 模拟输入配置

在该案例的配置中,可用传感器的源极输出 S 经由小型抗混淆信号 RC 滤波器 (R1/C1) 向 PGA 的非反相输入端提供所需的输出信号。另外,可将该输出信号用于为差分对的 A 输入端创建所需的 DC 偏压,这可通过在 A 输入端使用较大型 RC 低通滤波器 (R2/C2) 来完成。RC 滤波器足够大时,不仅能够过滤信号的噪声,而且还能过滤相关的信息信号,从而创建可根据 VCC 进行自动调整的 DC 电平。其优势在于,无需附加电路便可创建独立的偏移电压。该配置的 A/D 转换器输出约为 60uV/LSB,这一结果是基于如下条件计算得出:1.2V 内部参考电压、PGA 增益为 16 倍(VLSB = [(1.2/2)/16]/[216-1])。

尽管许多运动/现场检测系统 (presence detection system) 可能需要单位数 (single digit) 毫伏级的灵敏度,但检测范围为几十米的通用系统也可采用图 2 所示的设计。由于这些系统具有极高的分辨率,因而需要额外放大传感器的输出。

既然定义了模拟接口,那么控制系统的软件设计当属第二大重要因素。请谨记,低成本和低功耗是设计人员需要实现的两个主要目标。所选择的硬件想要满足以上目标的确尚需时日,因为硬件不仅要通过模拟和数字集成来实现低成本,而且还要使集成组件的电源管理简便易行,以实现低功耗。但是,高效率的软件开发是达到上述目标的关键。图 3 显示了系统的高级软件流程图。

图 3. MCU 软件流程图

软件的主要作用是保证整个系统由中断驱动。这意味着除非需要完成某些操作,否则不产生CPU 指令。本例中,CPU 处于低功耗待机模式,等待下面两个事件之一的发生:一是新的 A/D 转换开始时的计时器中断,二是表示结果就绪的 A/D 中断。

结果就绪后将与最后的采样进行对比,差值绝对值再与用户定义的设定值进行比对,超过此设定值则表示有物体运动发生。这个简单的流程非常灵活,能够通过内部计时器定义采样速率,处理转换结果时不用标志位轮询且不会发生软件延迟等情况。

在大多数情况下MSP430F2003 MCU可以在低于 1uA 的低功耗模式下工作,可以延长单个CR2032 3V 钮扣电池的使用寿命。使用嵌入式内部低频振荡器为计时器提供时钟信号,新的转换过程每隔 340 兆秒启动一次。大约 3SPS 的采样速率听起来可能很慢,但考虑到传感器在人体互动应用中的输出信号频率极低,这样的采样速率足以保证可靠的运动检测。该器件还可以使用快速开启、1MHz的高频内部时钟源,使 A/D 转换器每隔 1.024毫秒对每个采样进行一次转换。出于降低功耗的考虑,保证转换时间尽可能短非常重要,因为内部参考电路及 A/D 转换器所消耗的电流占总数的 70%。

图 1 详细列出了该应用的工作电流及平均电流,借此可以清楚了解系统的电流消耗。

表 1. 系统电流表

功能

开启时间长度

工作电流(典型值)

平均电流

PIR325 传感器

一直开启

6uA

6uA

参考电路及 A/D 转换器

每秒开启3毫秒

1mA

3uA

CPU 处于工作状态

每秒开启300 微秒

300uA

0.9nA

低功耗待机

999.7毫秒

0.6uA

0.599uA

 

 

总计

~9.6uA

根据最终解决方案的不同系统消耗的总电流也不同。通过上表可以清楚看到,工作电流的消耗主要来自 A/D 转换参考及转换。但是平均电流主要由传感器消耗,原因是 PIR325 传感器需要几秒或更长的开启稳定时间,不能让传感器电源周期性工作。尽管传感器必须保持开启状态,其电流消耗却很小,就本设计及软件流程为例,一般目的的运动检测系统的总体平均电流可以低于10uA。采用标准 3V CR2032 系统, 电池的寿命可以超过两年。

这就是使用标准PIR 传感器的简单的运动检测设计,其硬件比较简单,软件为中断驱动程序。增加 Fresnel 光学镜头提高传感器方向性,增加基本的继电器来驱动泛光灯,也可以为安防系统的主机处理器增加通信通道,这样,一个完整的终端应用就完成了。谁说运动检测应用不是简单到只需选择合适的 MCU 及传感器呢?