SW-420震动传感器怎么接线?Arduino检测振动冲击做报警和防拆的方法

2026-10-19 20:34:36 26阅读

想让设备感知“被碰了一下、被震了一下”,SW-420震动传感器是最便宜直接的方案。它里面是一颗弹簧式震动开关加一颗LM393比较器,把机械振动转成一脚干净的0/1数字信号,Arduino读一个数字脚就能判断有没有被撞击或晃动。做报警、防拆、快递包裹震感检测很合适。这篇讲接线、灵敏度调节和代码。

SW-420模块引脚和接线

模块引出三个脚:VCC接电源(3.3V到5V都行)、GND接地、DO是数字输出。它内部常态时输出低电平,一旦检测到振动或冲击就输出高电平。板上还带两个小LED,一个是电源指示灯,一个在DO变高时跟着亮,方便你不用开串口就能肉眼确认触发。还有一颗蓝白色电位器,用来调灵敏度。

图上把这个模块的引脚作用标得很清楚——VCC/GND/DO三根线,配上板上那颗调灵敏度的电位器。接Arduino就是DO接一个数字脚(比如D5),VCC接5V、GND共地,三根线就全了。因为DO信号是LM393主动驱动的,不需要外接上拉电阻。

这块接线示意把模块和蜂鸣器配在一起:一检测到振动,Arduino就让蜂鸣器响,就拼出一个简易的震动报警器。把“响”换成发通知、亮灯、上锁,就能用在防盗、设备防拆、货品防摔提醒上。

读震动信号的代码和调灵敏度

代码核心是数字IO:先把DO接的引脚pinMode设为输入,循环里digitalRead读它,读到高就是检测到振动。用一段去抖逻辑(比如检测到高后等一下再复位)可以避免边缘状态误报。灵敏度用板上的电位器调,转到合适位置,太灵敏是轻微碰一下就触发,太迟钝是用力拍才触发,按你的场景慢慢微调。

排障记得三点:先看电源LED亮没亮、再确认VCC/GND/DO三根接对、最后用螺丝刀调灵敏度。SW-420不测振动的强度数值,只给“有没有超过阈值”这个数字结论,做报警和事件检测它足够用。


作者:菜鸟也想玩
链接:https://www.aiddithome.com/p/92fd970ac7e.html
本作版权归作者所有,未经允许请勿转载。若存在违规行为,您可以点击 “举报”。


登录 后发表评论
4条评论
线比代码多
1楼 · 2026-10-19 20:34:38

它只给有没有超过阈值这个0/1,不测强度数值,适合事件类判断

刷着刷着入坑了
2楼 · 2026-10-19 20:34:37

DO是三根线主动驱动的数字信号,不用外加偏置电阻

入门没多久的新手
3楼 · 2026-10-19 20:34:37

配个蜂鸣器一响就是简易振动报警,做防拆和防摔检测都好用

拆开看看再说
4楼 · 2026-10-19 20:34:36

模块上那个电位器转得太迟钝或太灵敏,按场景微调就好