极客工坊

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 25432|回复: 19

arduino学习笔记42 - Arduino Leonardo + 数字震动传感器演示实验

[复制链接]
发表于 2012-9-4 18:11:46 | 显示全部楼层 |阅读模式
本帖最后由 Randy 于 2012-9-5 09:11 编辑

一、模块接口说明(3线制)

1 VCC 外接3.3V-5V电压(可以直接与5v单片机和3.3v单片机相连)
2 GND 外接GND
3 DO  小板数字量输出接口(0和1)
注:AO口在此无效,不用做任何处理。

二、使用说明
1震动传感器采用MEC原装震动开关SW-18015P,灵敏度高,对环境震动敏感,一般用来检测周围环境的震动强度
2模块在无震动或者震动强度达不到设定阈值时,DO口输出高电平,当外界震动强度超过设定阈值时,模块D0输出低电平;
3小板数字量输出D0可以与单片机直接相连,通过单片机来检测高低电平,由此来检测环境的震动;
4小板数字量输出DO可以直接驱动本店继电器模块,由此可以组成一个震动开关;

三、模块应用
1:摩托车,汽车报警器的制作
2:防盗报警等

四、测试说明
使用本店51开发板与震动传感器模块测试
接线说明:

模块VCC接开发板VCC
模块GND接开发板GND
接好VCC和GND,模块电源指示灯会亮

将模块轻放桌面上,调节板上蓝色电位器,直到板上开关指示灯亮,然后稍微回调电位器,让开关指示灯灭,再用手敲打桌面,使震动传感器有震感,此时,开关指示灯再会到亮状态。震动停止,开关指示灯也会灭。这个现象就是说明,震动可以触发模块,从而使开关指示灯点亮。
在使用我们的传感器时要注意,先判断该传感器是数字的还是模拟的,然后观察连接线的颜色是否是对应的连接线。

数字传感器:
这是一款基于弹簧摆动原理设计的震动传感器,震动势能传到弹簧末端引起共振,左右摆动碰触到金属外壁形成通路。由于导通时间和弹簧的刚性有关,所以该震动传感器的输出带宽很窄,在使用Arduino读取时,建议使用外部中断功能。

五、实验中我们所使用的模块
1.jpg


六、Arduino外部中断代码:
  1. //接口D2:振动,水银,干簧管 数字输入传感器。
  2. #define SensorLED     13
  3. #define SensorINPUT   2  

  4. unsigned char state = 0;

  5. void setup()
  6. {
  7.   pinMode(SensorLED, OUTPUT);
  8.   pinMode(SensorINPUT, INPUT);
  9.   attachInterrupt(0, blink, FALLING);//D2口为外部中断0,当有下降沿触发的时候调用blink函数

  10. }
  11. void loop()
  12. {
  13.       if(state!=0)
  14.       {
  15.         state = 0;
  16.         digitalWrite(SensorLED,HIGH);
  17.         delay(500);
  18.       }  
  19.       else
  20.         digitalWrite(SensorLED,LOW);
  21. }  


  22. void blink()//数字输入传感器下降沿触发中断服务函数
  23. {
  24.   state++;
  25. }
复制代码
最后结果可观察数字口13脚上的L指示灯,震动后可以看见L灯亮500ms。
回复

使用道具 举报

发表于 2012-9-4 20:47:54 | 显示全部楼层
额...水银开关。。。。不推荐大家买这个,建议用滚珠。。。水银开关太危险
回复 支持 反对

使用道具 举报

发表于 2012-9-4 22:26:37 | 显示全部楼层
还有弹簧开关
回复 支持 反对

使用道具 举报

 楼主| 发表于 2012-9-5 09:03:25 | 显示全部楼层
迷你强 发表于 2012-9-4 20:47
额...水银开关。。。。不推荐大家买这个,建议用滚珠。。。水银开关太危险

是的,只是觉得论坛里还没教程,所以就发一下,方便有的同学们学习学习!
回复 支持 反对

使用道具 举报

发表于 2012-10-12 00:11:55 | 显示全部楼层
学习了,谢谢!
回复 支持 反对

使用道具 举报

发表于 2012-10-23 11:33:57 | 显示全部楼层
谢谢分享了
呵呵~~~~~~~~!
回复 支持 反对

使用道具 举报

 楼主| 发表于 2012-10-23 12:25:27 | 显示全部楼层
zhangdeyue1 发表于 2012-10-23 11:33
谢谢分享了
呵呵~~~~~~~~!

不客气,拿去!哈哈!
回复 支持 反对

使用道具 举报

发表于 2013-1-28 09:39:14 | 显示全部楼层
学习中,谢谢楼主
回复 支持 反对

使用道具 举报

发表于 2013-7-4 22:28:01 | 显示全部楼层
迷你强 发表于 2012-9-4 20:47
额...水银开关。。。。不推荐大家买这个,建议用滚珠。。。水银开关太危险

水银开关为什么会 危险。。。。
回复 支持 反对

使用道具 举报

发表于 2013-8-15 20:07:23 | 显示全部楼层
ro0t 发表于 2013-7-4 22:28
水银开关为什么会 危险。。。。

水銀有毒,要很小心使用哦
回复 支持 反对

使用道具 举报

发表于 2013-10-26 23:17:07 | 显示全部楼层
问下楼主,怎么才能实现震动传感器控制外接电路中led灯或蜂鸣器工作呢,上面的代码如何修改实现,新来的改不来
回复 支持 反对

使用道具 举报

发表于 2014-1-1 22:55:37 | 显示全部楼层
Thank you
回复 支持 反对

使用道具 举报

发表于 2014-5-12 13:46:45 | 显示全部楼层
谢谢分享呀
回复 支持 反对

使用道具 举报

发表于 2015-3-20 15:55:41 | 显示全部楼层
哇学习了.
回复 支持 反对

使用道具 举报

发表于 2015-4-19 10:24:45 | 显示全部楼层
高大上,谢谢分享。
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

Archiver|联系我们|极客工坊 ( 浙ICP备09023225号 )

GMT+8, 2020-1-22 02:42 , Processed in 0.052052 second(s), 27 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

快速回复 返回顶部 返回列表