基于热释电效应的人体热释运动传感器,能检测到人体或动物身上发出的红外线,配合菲涅尔透镜能是传感器探测范围更远更广。与Arduino专用传感器扩展板结合使用,可以非常容易地实现与人体或动物相关的互动效果。

当红外热释电运动传感器的附近有人在移动,这个小装置就会即刻触发,输出高电平,就算人离开了,高电平也依旧持续一段时间才会改变会低电平,而这个持续的时间长短可以由传感器模块上的那个黄色可变电阻调整,时间长短约为0.3至18秒。然后如果检测到没人再移动,这个传感器又会回到“休眠”状态,传感器维持低电平。

实验现象是:手在传感器附近移动,传感器被触发,Processing画布上的灯点亮,人偶从画布左端开始移动,到画布右端消失,然后,画布黑屏,直到传感器又被移动物体触发,再重复上述过程。

下面给出Arduino和Processing的程序, 我用蓝色字体标注了两者串口通讯的程序段。

Arduino程序:

int ledPin = 13;   // LED 连接到数字端口13

int sensor = 2;    //传感器连接到数字端口2

//红外热释电运动传感器发出高电平,则被触发

//发出低电平,则其处于休眠状态

int val = 0; //存储传感器输出的数字量

void setup()

{

pinMode(ledPin, OUTPUT);      // sets the digital pin as output

pinMode(sensor, INPUT);       // sets the digital pin as input

digitalWrite(ledPin,HIGH);    //初始化熄灭灯

Serial.begin(9600);//设置串行通信的波特率

}

void loop()

{

val = digitalRead(sensor);   // read the input pin

//如果红外热释电运动传感器被触发,将保持高电平一段时间

if(HIGH == val)

{

Serial.print(1,BYTE);//向Processing发出传感器被触发标志

digitalWrite(ledPin,LOW);   // LED亮

delay(50);//延时,以使串行通讯不至于太忙

}

else

{digitalWrite(ledPin,HIGH);    // LED灭

Serial.print(0,BYTE);//向Processing发出传感器休眠标志

delay(50);

}

}

Processing程序:(与动画相关的指令用红色字体标注)

/*Processing接受到Arduino控制器的红外热释传感器发出的

触发信号后,画布上的路灯点亮,当人走过画布后,画布黑屏*/

import processing.serial.*;//导入serial通信库

Serial duankou;//创建对象duankou

//变量存储Arduino传来数据,用来标志传感器是否被触发

int data;

int frame=0;//动画变量

int flag=0;//路灯是否亮标志

//声明一个PImage类型

PImage photo1;//人偶图片定义

PImage photo2;//路灯图片定义

//串行通讯子程序

void communication()

{

if(duankou.available()>0)

{

//把Arduino传来的字节存入变量data

//一个字节数值范围是0~255.

data=duankou.read();

//把Arduino传来的字节显示在控制台中

println(data);

//如果data=1,则说明红外热释被触发

if(data==1)

{

flag=1;//路灯亮标志

}

}

}

//初始化程序

void setup()

{

size(700,400);//画布尺寸定义

//调用图片到变量photo

photo1=loadImage("Puppet.JPG");

photo2=loadImage("light_bulb.png");

//设定通讯端口为COM3,波特率为9600

duankou = new Serial(this,"COM3",9600);

}

//主程序

void draw()

{

if(flag==1 && frame<=680)//如果路灯亮

{

background(255);

image(photo2,200,-10);//设置路灯在画布的位置

for(int i=0;i<50;i++)//延时

{ communication();//调用通讯程序

}

image(photo1,frame,235);//人偶沿X坐标

frame+=1;//增加动画变量值

}

else

{

background(0);//画布黑屏

flag=0;//flag设置为路灯不亮标志

frame=0;//动画变量清零

communication();//调用通讯程序

}

}

Processing程序文件请下载,里面有路灯与人偶的图片。

java 路灯感应器_Processing互动之红外热释与感应路灯相关推荐

  1. arduino红外热释电传感器_Arduino与Processing互动之红外热释电与感应路灯

    基于热释电效应的人体热释运动传感器,能检测到人体或动物身上发出的红外线,配合菲涅尔透镜能是传感器探测范围更远更广.与Arduino专用传感器扩展板结合使用,可以非常容易地实现与人体或动物相关的互动效果 ...

  2. 【资料转发分享】基于STM32智能路灯灯光自动控制系统设计-基于STM32无刷电机BLDC速度控制器系统设计-基于STM32热释人体感应智能门禁报警系统设计-基于STM32居家加湿器控制仿真系统设计

    1604基于STM32智能路灯灯光自动控制系统设计-毕设课设资料 实现的功能如下,下图是仿真原理图: 通过ARM内部的ADC采集光敏电阻电压,判断电压值 电压值低于设定的值,表示光强太弱,开路灯 光强 ...

  3. 38、基于51单片机红外热释电人体感应蓝牙防盗报警器系统设计

    摘  要 随着现在社会的发展,时代进步,高新技术的快速融入,人们的生活发生了巨大的改变,人们置购了大量高新技术的产品,许多高科技产品的使用越来越成为家庭生活的主旋律,因此人们对自己所处环境的安全要求就 ...

  4. arduino红外热释电传感器_压力传感器在汽车空调系统中的应用

    汽车空调是汽车空气调节(Air Conditioning,A/C)的简称,其含义是指在封闭的空间内,采用人工制冷和采暖的方法,对空气的温度.湿度.流速及清洁度进行调节和控制. 根据业内通常分类方法,传 ...

  5. 基于arduino UNO R3的远程可控的红外热释传感器 (转)

    首先实物图奉上,比较简陋别见怪啦哈哈 <ignore_js_op> ●实验名称:基于机智云平台的红外热释传感器的应用 ●实验目的:1. 能够在云平台下,手机实时观测传感器返回的AD值:   ...

  6. STM32单片机蓝牙APP智能温控风扇红外热释电

    实践制作DIY- GC0144-蓝牙APP智能温控风扇 基于STM32单片机设计---蓝牙APP智能温控风扇 二.功能介绍: 硬件组成:STM32F103C最小系统板+DS18B20温度湿度+OLED ...

  7. 基于51单片机红外热释电人体感应蓝牙防盗报警器系统设计

    毕设帮助.开题指导.技术解答(有偿)见文末. 目录 摘要 一.硬件方案 二.设计功能 三.实物图 四.原理图 五.PCB图 六.Proteus仿真 七.程序源码 八.资料包括 摘要 随着现在社会的发展 ...

  8. Arduino人体红外热释传感器检测实验

    相关资料链接 链接:https://pan.baidu.com/s/1eE0rkaSJsKJMU_RUorS5OA 提取码:3ujh 1.1 项目介绍: 人体红外热释电传感器是一款基于热释电效应的人体 ...

  9. 【毕业设计】模块介绍:人体红外热释电传感器 -物联网 嵌入式 单片机

    文章目录 1 简介 2 模块介绍 2.1 模块参数 2.2 可应用场景 3 引脚与连接 5 参考代码 6 最后 1 简介 Hi,大家好,这里是丹成学长,今天向大家介绍 人体红外热释电传感器 模块 模块 ...

最新文章

  1. My way on Linux - 知识梳理计划
  2. can协议crc计算_CAN总线的升级版——CAN FD简介
  3. Qt工作笔记-使用QCustomplot实现鼠标拖动数据点画曲线
  4. 设计模式解密(12)- 桥接模式
  5. java与html关联_HTML页和ashx页之间的关联
  6. 《强化学习》中的第10章:基于函数逼近的同轨策略控制
  7. mongodb 日志,(一个看日志解决新问题的方法) -- clwu
  8. CRM 客户资源管理 (一)
  9. headfirstjava_1.BreakingTheSurface
  10. 松下伺服电机a6测试软件,松下A6伺服选型步骤
  11. C++ fstream详解
  12. hive分区表快速复制
  13. 谷歌Google验证
  14. KinectFusion
  15. CJ88项目或WBS结算报错:消息号 KD506 “为接收者类型 FXA 定义一个成本要素“
  16. burpSuite之安装+配置代理+安装证书抓取https
  17. IDEA输入字母间距变大报红处理方法
  18. 【Unity3D】 物体始终朝向目标物体的实现
  19. JavaScript高德地图中绘制echarts图表随地图移动
  20. HTML第三章 form表单(详解,内含详细代码示例)

热门文章

  1. 计算机科学导论挂了,山东高校曝民间版挂科率排行榜 高等代数挂的人最多
  2. vue项目中 axios 请求成功 却进入catch中
  3. 从OSI七层模型详谈《计算机网络基础》
  4. Python笔记_84_我的订单_使用celery完成订单超时_视频播放_使用保利威视频加密
  5. 截图(终极利器---Win+Shift+S win10自带截图功能)
  6. 适用于所有人的Nextjs-具有一些React的基础知识
  7. 8月TIOBE编程语言排行榜出炉:它稳了!
  8. 51单片机0-99秒表计数器+60秒倒计时(数码管两位数)
  9. 不适当的云安全 后果很严重
  10. 【封神台】无WAF的SQL注入