0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

通过Raspberry Pi和Python使用PIR运动传感器

而无返还 来源:而无返还 作者:而无返还 2023-02-25 17:44 次阅读

这篇文章来源于DevicePlus.com英语网站的翻译稿。红外线是一种没有特殊设备的辅助就无法看到的光线,但是我们可以通过热量感受到它的存在。这种光线被称为“红外线”,是因为它的波长超出了可见光谱中的红色光线边界。

这引起了设备制造商的兴趣,有一部分原因是人类、动物和物体会一直辐射红外线。

pYYBAGPzHW-AEcDOAAAkrG2hKas681.png

虽然这听起来很奇怪,但是其实您应该已经对某些类似的东西很熟悉了:火,温度非常高,会发出热量和可见光。

虽然火可以达到足够高的温度来发出可见光,但是我们的身体不会,而且我们所辐射的光—红外线—人眼是无法看到的。

如果Raspberry Pi可以利用红外线来查看是否有人出现,会不会有人觉得很便利呢?

通过使用非常便宜、可用、耐用、可靠和经济的组件,我们可以做到这一点!
这种设备叫“被动红外运动传感器”,通常称为“被动红外传感器”或者简称“PIR传感器”。

PIR运动传感器是如何工作的

PIR运动传感器由一对热释电传感器上的透镜组成:一种晶体材料,当它接收到红外光时会产生电压。
但是任何含有一定热量的物体都会辐射出一些红外线。这意味着单个热释电传感器会一直产生电压,即使视野中的所有物体都是完全静止的。
那么如何将它变成一个运动传感器呢?这很简单,但是很有技巧性。将两个热释电传感器进行连接,这种连接使得来自环境红外线的信号可以相互抵消。
当足够大且具有一定温度的物体在镜头前移动时,两个信号将会停止相互抵消,传感器会报告有物体在移动。

PIR运动传感器可能会产生误报

当您将PIR运动传感器连接到电源时,它需要30秒到60秒才能稳定下来。在还没有稳定的时候就运行可能会引发误报,这在某些电路中会很让人头疼。在Raspberry Pi项目中,很容易编写出软件来让它在启动后等待片刻再运行。
更大的问题是由动物、昆虫甚至阵风所触发的传感器响应。
您通常可以将组件校准到更低的敏感度,这样可以阻止您的小猫或者小狗触发警报。而对于在传感器前飞行的昆虫来说,这种调整的作用不大。
但是,不要把这些误报看作是一个破坏者,而是想想如何聪明地处理它们。

Python中处理PIR运动传感器

从可视化编程工具(如Scratch down)到“close-to-the-metal(能够以编程方式管理操作系统内存)”的编程语言(例如C),有很多方法可以将PIR运动传感器和Raspberry Pi进行连接。
在这里,我们将使用Python 和GPIO Zero库,这些库已经帮我们整理好了大部分的细节内容。
如果您从来没有写过Python代码,可以尝试学习来自“Automate the Boring Stuff With Python(用Python将枯燥的工作自动化)”的一些教程。如果您不打算了解这些内容,也可以直接使用下面的代码,如果您能理解下文代码中的内容,将会学到更多的知识。
本文假设您对GPIO 引脚有了基本的了解。如果它对您来说是全新的知识,请查看过去的指南。下面的图表会提醒您有哪些相关基础知识。

poYBAGPzHXGAPlPDAACLfuvo1LY065.png

将PIR运动传感器连接到Raspberry Pi

为了开始构建您的Raspberry Pi 运动传感器,您将需要:

一个带电源的Raspberry Pi以及一个安装了Raspbian的SD
一个面包板
一个GPIO 扩展板(可选,但是推荐使用)
一个PIR 运动传感器
(我使用的是XC-4444)

您还需要一些可以让您输入代码的设备,例如USB键盘或者SSH连接。

将组件连接到面包板

从背面看这台XC-4444,可以看到引脚在底部,这些引脚为:
• 左边用于5伏电源
• 中间用于数字输出
• 右边用于接地
虽然PIR运动传感器往往大同小异,但是不同型号上的引脚可能顺序会有所不同。如果您不确定的话,请查看组件规格。
将Raspberry Pi上的5伏引脚连接到正电源轨,然后将接地引脚连接到负电源轨。
然后,让镜头背对您,将运动传感器的电源引脚连接到正电源轨,将接地引脚连接到负电源轨,并将数字输出引脚连接到面包板中间的某处。
最后,将该面包板行连接到GPIO引脚,我使用的是引脚13。

pYYBAGPzHXuAHSwYAAAwjK_vk6E904.jpg

将其与GPIO Zero接合

现在是时候编写一个快速脚本了。启用命令提示符,并通过输入以下内容打开文本编辑器:
nano intruderAlarm.py
GPIO Zero已经为我们的运动传感器创建了一个类,所以我们直接导入这个类,并导入来自time模块的sleep函数。
from time import sleep
from gpiozero import MotionSensor
现在我们编写一个函数,功能为当传感器检测到运动物体时将消息打印到屏幕上。
def detectIntruders():
pir.wait_for_motion()
print(‘Intruder Alert!’)
sleep(5)
sleep指令表示打印完消息后将等待5秒钟。如果没有该指令,我们的脚本将在脉冲持续时间内用消息填满整个屏幕,这样的话就很难了解运行状况了。
如果我们不对MotionSensor对象进行初始化,那么detectIntruders()函数将无法工作,所以让我们将其设置为引脚13:
pir = MotionSensor(13)
您能相信到此我们已经快要完成了吗?现在我们只需要一个循环程序来运行我们的函数就可以完成了。
while True:
detectIntruders()
按下Ctrl+O来保存脚本,然后按下Ctrl+X退出文本编辑器。想要运行程序,请输入:
python3 intruderAlarm.py
现在起身并走过传感器,您看到打印的信息了么?
如果不起作用,请检查所有引脚是否正确连接。PIR运动传感器的接地和电源引脚很容易混淆。
如果想要停止脚本的运行,请按下Ctrl+C。

校准PIR运动传感器

这款XC-4444有两个关键指标:一个是脉冲长度,标记为Tx,另一个是灵敏度,标记为Sx。
在某些项目中,调整脉冲长度可能会很有用,但是我倾向于保持它的大小,通过编写代码来处理Raspberry Pi对信号的响应工作。
调整灵敏度会更有趣。您可以通过调整灵敏度来决定传感器需要检测出什么程度的运动才能发出信号。
一些PIR运动传感器具有更多的控件。对于一些响应特征,比如只要检测到运动,脉冲就一直维持,或者模块是否发处重复的脉冲,这些传感器会有所不同。

PIR运动传感器有多种用途

我们刚刚探讨的工作原理不仅仅只适用于警报。
它们还适用于各种家庭中的自动化项目:照明、温度控制、开门,甚至还可以在您下班回家时为您播放一些专业的摔跤风格的入口音乐。
如果您想要在某人出现的时候获悉消息,这将会是您的得力助手。

审核编辑:汤梓红

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • python
    +关注

    关注

    56

    文章

    4822

    浏览量

    85973
  • 运动传感器
    +关注

    关注

    9

    文章

    168

    浏览量

    31032
  • PIR
    PIR
    +关注

    关注

    0

    文章

    75

    浏览量

    18133
  • Raspberry Pi
    +关注

    关注

    2

    文章

    616

    浏览量

    22826
收藏 人收藏
    相关推荐
    热点推荐

    如何在Raspberry Pi OS上安装SDK?

    Raspberry Pi OS 上安装 SDK
    发表于 04-30 06:45

    运动测量传感器概述与原理

    关键技术——运动测量传感器。本文将带你从工作原理到实际应用,全面解析这项“运动感知”技术。 第一部分:运动测量传感器概述
    的头像 发表于 03-13 14:21 201次阅读

    Raspberry Pi上使用IR v11及OpenVINO™ 2021.3后不兼容怎么办?

    PYTHONPATH=\"$PWD\" && python export.py --weights--img 512 --include openvino 转换后的 IR v11 模型与 Raspberry Pi
    发表于 03-06 07:14

    OpenVINO™是否与TensorFlow集成支持Raspberry Pi

    无法确定OpenVINO™是否与 TensorFlow* 集成支持 Raspberry Pi
    发表于 03-05 08:26

    无法在Raspberry Pi 4中通过PyPI OpenVINO™安装2022年运行时软件包,为什么?

    无法在 Raspberry* Pi 4 中通过 PyPI* 安装OpenVINO™ 2022 运行时软件包。
    发表于 03-05 07:31

    XYC-PIR233C-S0热释电人体传感器

    XYC-PIR233C-S0热释电人体传感器
    发表于 02-26 14:58 0次下载

    基于Raspberry Pi 5的情感机器人设计

    Raspberry Pi 5相较于上一代搭载了更强的处理和硬件性能,为情感机器人的开发提供了前所未有的可能性。其支持多任务处理和实时计算,为语音交互和情感判断提供了坚实的基础。此外配合高性能的摄像头模块和
    的头像 发表于 02-26 14:28 930次阅读
    基于<b class='flag-5'>Raspberry</b> <b class='flag-5'>Pi</b> 5的情感机器人设计

    Raspberry Pi树莓派新手指南

    电子发烧友网站提供《Raspberry Pi树莓派新手指南.pdf》资料免费下载
    发表于 12-23 17:05 2次下载

    树莓派传感器使用方法 树莓派 Raspberry Pi 4优缺点

    树莓派传感器使用方法 树莓派(Raspberry Pi)是一款由英国树莓派基金会开发的小型单板计算机,它因其低成本、易于编程和广泛的社区支持而广受欢迎。树莓派可以与各种传感器配合使用,
    的头像 发表于 12-06 10:35 1715次阅读

    Raspberry Pi Pico 2 W 发布

    树莓派官方今日宣布推出支持无线连接的新款 MCU(微控制)主板 Raspberry Pi Pico 2 W,售价 7 美元, 较此前的有线版本高出 2 美元 。     Raspberry
    的头像 发表于 11-25 18:25 882次阅读
    <b class='flag-5'>Raspberry</b> <b class='flag-5'>Pi</b> Pico 2 W 发布

    Raspberry Pi Pico 2

    、可选的RISC‑V内核、增强的安全特性,以及升级的接口功能。该器件由RP235x微控制平台提供支持,此平台也由Raspberry Pi设计。Pico 2将RP2350与4MB板载QSPI闪存配对
    的头像 发表于 11-25 15:10 1049次阅读
    <b class='flag-5'>Raspberry</b> <b class='flag-5'>Pi</b> Pico 2

    Banana Pi M5 与 Raspberry Pi 4 – 基准测试

    Banana Pi M5 基准测试已成为我的网站上最受欢迎的作品之一,而且似乎人们真正想看到的是它与其 Raspberry 口味的表亲之间的直接比较,所以这里就是 Banana Pi M5 与
    的头像 发表于 10-28 10:28 803次阅读
    Banana <b class='flag-5'>Pi</b> M5 与 <b class='flag-5'>Raspberry</b> <b class='flag-5'>Pi</b> 4 – 基准测试

    使用串行连接通过 Raspberry Pi 增强您的 XRP 项目

    指南更为高级。通过本指南,您将能够将 Raspberry Pi 连接到您的 XRP,从而使您的 XRP 项目更上一层楼。 传输数据: 在 Raspberry
    的头像 发表于 10-02 15:28 442次阅读
    使用串行连接<b class='flag-5'>通过</b> <b class='flag-5'>Raspberry</b> <b class='flag-5'>Pi</b> 增强您的 XRP 项目

    基于PIR传感器的电路图 带Arduino的PIR传感器设计

    PIR传感器,全称“Passive Infrared Sensor”,又称“人体红外线传感器”,是一种能够探测人体热量的电子元件。它通过检测周围环境中的红外线辐射来感知人体的存在,因此
    的头像 发表于 07-03 18:02 3669次阅读
    基于<b class='flag-5'>PIR</b><b class='flag-5'>传感器</b>的电路图 带Arduino的<b class='flag-5'>PIR</b><b class='flag-5'>传感器</b>设计

    如何将CYKIT-028 TFT模块与Raspberry Pi和ESP32微控制结合使用?

    我目前正在探索如何将 CYKIT-028 TFT 模块与 Raspberry Pi 和 ESP32 微控制结合使用。 不过,在选择集成开发环境(IDE)和使用 PSOC Creator 的必要性
    发表于 05-21 07:36

    有几种电平转换电路,适用于不同的场景

    一.起因一般在消费电路的元器件之间,不同的器件IO的电压是不同的,常规的有5V,3.3V,1.8V等。当器件的IO电压一样的时候,比如都是5V,都是3.3V,那么其之间可以直接通讯,比如拉中断,I2Cdata/clk脚双方直接通讯等。当器件的IO电压不一样的时候,就需要进行电平转换,不然无法实现高低电平的变化。二.电平转换电路常见的有几种电平转换电路,适用于

    张飞实战电子官方
    1天前
    245

    瑞萨RA8系列教程 | 基于 RASC 生成 Keil 工程

    对于不习惯用 e2 studio 进行开发的同学,可以借助 RASC 生成 Keil 工程,然后在 Keil 环境下愉快的完成开发任务。

    RA生态工作室
    05-01 10:00
    447

    共赴之约 | 第二十七届中国北京国际科技产业博览会圆满落幕

    作为第二十七届北京科博会的参展方,芯佰微有幸与800余家全球科技同仁共赴「科技引领创享未来」之约!文章来源:北京贸促5月11日下午,第二十七届中国北京国际科技产业博览会圆满落幕。本届北京科博会主题为“科技引领创享未来”,由北京市人民政府主办,北京市贸促会,北京市科委、中关村管委会,北京市经济和信息化局,北京市知识产权局和北辰集团共同承办。5万平方米的展览云集

    芯佰微电子
    1天前
    497

    道生物联与巍泰技术联合发布 RTK 无线定位系统:TurMass™ 技术与厘米级高精度定位的深度融合

    道生物联与巍泰技术联合推出全新一代 RTK 无线定位系统——WTS-100(V3.0 RTK)。该系统以巍泰技术自主研发的 RTK(实时动态载波相位差分)高精度定位技术为核心,深度融合道生物联国产新兴窄带高并发 TurMass™ 无线通信技术,为室外大规模定位场景提供厘米级高精度、广覆盖、高并发、低功耗、低成本的一站式解决方案,助力行业智能化升级。

    道生物联
    1天前
    421

    智能家居中的清凉“智”选,310V无刷吊扇驱动方案--其利天下

    炎炎夏日,如何营造出清凉、舒适且节能的室内环境成为了大众关注的焦点。吊扇作为一种经典的家用电器,以其大风量、长寿命、低能耗等优势,依然是众多家庭的首选。而随着智能控制技术与无刷电机技术的不断进步,吊扇正朝着智能化、高效化、低噪化的方向发展。那么接下来小编将结合目前市面上的指标,详细为大家讲解其利天下有限公司推出的无刷吊扇驱动方案。▲其利天下无刷吊扇驱动方案一

    其利天下技术
    05-10 16:29
    957

    电源入口处防反接电路-汽车电子硬件电路设计

    一、为什么要设计防反接电路电源入口处接线及线束制作一般人为操作,有正极和负极接反的可能性,可能会损坏电源和负载电路;汽车电子产品电性能测试标准ISO16750-2的4.7节包含了电压极性反接测试,汽车电子产品须通过该项测试。二、防反接电路设计1.基础版:二极管串联二极管是最简单的防反接电路,因为电源有电源路径(即正极)和返回路径(即负极,GND),那么用二极

    张飞实战电子官方
    05-09 19:34
    872

    半导体芯片需要做哪些测试

    首先我们需要了解芯片制造环节做⼀款芯片最基本的环节是设计->流片->封装->测试,芯片成本构成⼀般为人力成本20%,流片40%,封装35%,测试5%(对于先进工艺,流片成本可能超过60%)。测试其实是芯片各个环节中最“便宜”的一步,在这个每家公司都喊着“CostDown”的激烈市场中,人力成本逐年攀升,晶圆厂和封装厂都在乙方市场中“叱咤风云”,唯独只有测试显

    汉通达
    05-09 10:02
    811

    解决方案 | 芯佰微赋能示波器:高速ADC、USB控制器和RS232芯片——高性能示波器的秘密武器!

    示波器解决方案总述:示波器是电子技术领域中不可或缺的精密测量仪器,通过直观的波形显示,将电信号随时间的变化转化为可视化图形,使复杂的电子现象变得清晰易懂。无论是在科研探索、工业检测还是通信领域,示波器都发挥着不可替代的作用,帮助工程师和技术人员深入剖析电信号的细节,精准定位问题所在,为创新与发展提供坚实的技术支撑。一、技术瓶颈亟待突破性能指标受限:受模拟前端

    芯佰微电子
    05-09 10:36
    1.5k

    硬件设计基础----运算放大器

    1什么是运算放大器运算放大器(运放)用于调节和放大模拟信号,运放是一个内含多级放大电路的集成器件,如图所示:左图为同相位,Vn端接地或稳定的电平,Vp端电平上升,则输出端Vo电平上升,Vp端电平下降,则输出端Vo电平下降;右图为反相位,Vp端接地或稳定的电平,Vn端电平上升,则输出端Vo电平下降,Vn端电平下降,则输出端Vo电平上升2运算放大器的性质理想运算

    张飞实战电子官方
    05-08 19:34
    611

    ElfBoard技术贴|如何调整eMMC存储分区

    ELF 2开发板基于瑞芯微RK3588高性能处理器设计,拥有四核ARM Cortex-A76与四核ARM Cortex-A55的CPU架构,主频高达2.4GHz,内置6TOPS算力的NPU,这一设计让它能够轻松驾驭多种深度学习框架,高效处理各类复杂的AI任务。

    ElfBoard
    05-08 15:01
    1.1k

    米尔基于MYD-YG2LX系统启动时间优化应用笔记

    1.概述MYD-YG2LX采用瑞萨RZ/G2L作为核心处理器,该处理器搭载双核Cortex-A55@1.2GHz+Cortex-M33@200MHz处理器,其内部集成高性能3D加速引擎Mail-G31GPU(500MHz)和视频处理单元(支持H.264硬件编解码),16位的DDR4-1600/DDR3L-1333内存控制器、千兆以太网控制器、USB、CAN、

    米尔电子
    05-08 08:07
    402

    运放技术——基本电路分析

    虚短和虚断的概念由于运放的电压放大倍数很大,一般通用型运算放大器的开环电压放大倍数都在80dB以上。而运放的输出电压是有限的,一般在10V~14V。因此运放的差模输入电压不足1mV,两输入端近似等电位,相当于“短路”。开环电压放大倍数越大,两输入端的电位越接近相等。“虚短”是指在分析运算放大器处于线性状态时,可把两输入端视为等电位,这一特性称为虚假短路,简称

    张飞实战电子官方
    05-07 19:32
    554

    飞凌嵌入式携手中移物联,谱写全国产化方案新生态

    4月22日,飞凌嵌入式“2025嵌入式及边缘AI技术论坛”在深圳成功举办。中移物联网有限公司(以下简称“中移物联”)携OneOS操作系统与飞凌嵌入式共同推出的工业级核心板亮相会议展区,操作系统产品部高级专家严镭受邀作《OneOS工业操作系统——助力国产化智能制造》主题演讲。

    飞凌嵌入式
    05-07 11:26
    1.7k

    ATA-2022B高压放大器在螺栓松动检测中的应用

    实验名称:ATA-2022B高压放大器在螺栓松动检测中的应用实验方向:超声检测实验设备:ATA-2022B高压放大器、函数信号发生器,压电陶瓷片,数据采集卡,示波器,PC等实验内容:本研究基于振动声调制的螺栓松动检测方法,其中低频泵浦波采用单频信号,而高频探测波采用扫频信号,利用泵浦波和探测波在接触面的振动声调制响应对螺栓的松动程度进行检测。通过螺栓松动检测

    Aigtek安泰电子
    05-06 18:44
    1.1k

    MOS管驱动电路——电机干扰与防护处理

    此电路分主电路(完成功能)和保护功能电路。MOS管驱动相关知识:1、跟双极性晶体管相比,一般认为使MOS管导通不需要电流,只要GS电压(Vbe类似)高于一定的值,就可以了。MOS管和晶体管向比较c,b,e—–>d(漏),g(栅),s(源)。2、NMOS的特性,Vgs大于一定的值就会导通,适合用于源极接地时的情况(低端驱动),只要栅极电压达到4V或10V就可以

    张飞实战电子官方
    05-06 19:34
    586