最新消息:

【Arduino教程】第二十二讲:人体传感器实验

Arduino 少儿编程 3058浏览 0评论
Arduino教程一

产品介绍

HC-SR505小型人体感应模块是基于红外线技术的自动控制产品,灵敏度高,广泛应用于各类自动感应电器设备,尤其是干电池供电的自动控制产品

特点:

1、全自动感应:人进入其感应范围则输出高电平,人离开感应范围则自动延时关闭高电平,输出低电平。

2、 小体积。

3、 可重复触发方式:即感应输出高电平后,在延时时间段内, 如果有人体在其感应范围活动,其输出将一直保持高电平,直到人离开后才延时将高电平变为低电平(感应模块检测到人体的每一次活动后会自动顺延一个延时时间段,并且以后一次活动的时间为延时时间的起始点)。

4、工作电压范围宽:默认工作电压DC4.5V-20V。

5、 微功耗:静态电流<50微安,特别适合干电池供电的自动控制产品。

6、输出高电平信号:可方便与各类电路实现对接。

产品参数:

工作电压范围 4.5V~9V

静态电流 <60uA

电平输出 高3.3V/低0V

触发方式 可重复触发(默认)

感应角度 <100度锥角

感应距离 3米以内

工作温度 -20~+80度

实验器件及连线

【Arduino教程】第二十二讲:人体传感器实验

■ 人体热释电:1个

■ LED发光二极管:1个

■ 220欧电阻:1个

■ 多彩面包板实验跳绳:若干

程序代码

【Arduino教程】第二十二讲:人体传感器实验

Arduino代码:

int ledPin = 13;       // led指示灯引脚

int inPin  = 12;       // 定义输入引脚

int buttonState;             // 读取的当前状态

void setup() {

  // 声明引脚为输出模式

  pinMode(ledPin, OUTPUT); 

  pinMode(inPin, INPUT);

  Serial.begin(9600);

}

 

void loop() {

   buttonState =digitalRead(inPin);

  if(buttonState == HIGH) //如果读入是高电平,说明有人进入区域

  digitalWrite(ledPin, HIGH);  //点亮LED

  delay(3000);          //延时   

  buttonState = digitalRead(inPin);

  if(buttonState == LOW) //如果读入是低电平

  digitalWrite(ledPin, LOW);  //熄灭LED

  Serial.println(buttonState);

}

实验结论

有人进入感应区域,小灯泡就会点亮一会之后熄灭,如果人还在区域内,小灯泡就会循环点亮熄灭。人离开区域后,小灯泡不再点亮。

转自公众号:
29号造物吧

您必须 登录 才能发表评论!