振动报警器(戚明杰)
众所周知,居家安全中门是第一道安全防线。随着各种安全锁的发明与进步。家用门的防盗性也逐渐趋于完美。但所谓道高一尺魔高一丈,再安全的门也会被小偷用合适的工具撬开。而在这种时候,仅增加门的厚度已是徒劳。因此,鉴由这一点,笔者开发了一种简易的震动报警器。虽然只是一个理想模型,但在实际生活中也能发挥巨大作用。所需元件1*2*若干1*1*硬件连接首先,说明一下主要组件在成品中的应用及作用。LED灯,在理想模型里模拟实际生活中的报警灯,在报警器被触发时,会发出强烈且间歇的亮光。蜂鸣器在报警器被触发后,会发出固定的报警声。其它元件在此不多做解释,实际操作时会再加以说明。
连接图如上。输入代码//震动报警器
int sensorled = 6;
int sensorzdkg = 3;//使灯的引脚设为6,震动开关设为中断1
unsigned char state = 0;
float sinVal;
int toneVal; //该两段定义蜂鸣器报警
void setup () {
pinMode(sensorled,OUTPUT); //LED为输出模式
pinMode(sensorzdkg,INPUT); //震动开关为输入模式
pinMode(8, OUTPUT);
//低电平变高电平的过程中,触发中断1,调用blink函数
attachInterrupt(1,blink,RISING);
}
void loop(){
if(state!=0){ // 如果state不是0时
digitalWrite(sensorled,HIGH);
delay(150);
digitalWrite(sensorled,LOW);
delay(100);
for(int x=0; x<180; x++){
sinVal = (sin(x*(3.14/180)));
toneVal = 2000+(int(sinVal*1000));
tone(8, toneVal);
delay(2);
}
}
else
digitalWrite(sensorled,LOW);
}
void blink(){ //中断函数blink()
state++; //一旦中断触发,state就不断自加
}
在设计完成后,把报警器安装在门上,只要门一有轻微震动,报警器就会发出警报并亮灯。这样的装置在晚上家里人入睡时能起到很好的防盗作用。实物连接
本篇由戚明杰制作,罗亮指导
感谢分享 已经分享到猫友汇
页:
[1]