linkdfrobot 发表于 2015-4-12 10:52:02

振动报警器(戚明杰)

众所周知,居家安全中门是第一道安全防线。随着各种安全锁的发明与进步。家用门的防盗性也逐渐趋于完美。但所谓道高一尺魔高一丈,再安全的门也会被小偷用合适的工具撬开。而在这种时候,仅增加门的厚度已是徒劳。因此,鉴由这一点,笔者开发了一种简易的震动报警器。虽然只是一个理想模型,但在实际生活中也能发挥巨大作用。所需元件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就不断自加
}

在设计完成后,把报警器安装在门上,只要门一有轻微震动,报警器就会发出警报并亮灯。这样的装置在晚上家里人入睡时能起到很好的防盗作用。实物连接
本篇由戚明杰制作,罗亮指导

大连林海 发表于 2015-4-12 12:41:04

感谢分享 已经分享到猫友汇
页: [1]
查看完整版本: 振动报警器(戚明杰)