
倾斜开关模块也称为滚珠开关,滚珠开关也叫钢珠开关,珠子开关,其实都是震动开关的一种只是叫法不一样,都是通过珠子滚动接触导针的原理来控制电路的接通或者断开的。当倾斜传感器感应到倾斜时,触点将被连接,模块会输出低电平信号;将开关倾斜到相反的方向会导致金属球远离那组触点,从而断开该电路,输出高电平。
1、SW-520、SW-520D为滚珠型倾斜震动感应单方向性触发开关。
2、当产品向帽盖端倾斜、倾斜角大于10度时,为开路OFF状态, 当产品水平状态发生倾斜改变(并且引线平行于平面方向,上下高度一样),触发端(镀金引脚端A与B)低于水平倾斜角大于10度角时,为闭路ON状态。

| 引脚名称 | 描述 |
|---|---|
| G | GND(电源输入负极) |
| V | VCC(电源输入正极) |
| S | 数字信号引脚 |
供电电压:3.3V / 5V
连接方式:PH2.0端子线
安装方式:双螺丝固定

示例程序(UNO开发板):点击下载
int ledpin = 6; //定义数字6引脚为LED灯的引脚
int tiltSwitchpin = 4; //设置数字4引脚为倾斜开关的引脚
int val; //定义变量值
void setup()
{
Serial.begin(9600);//设置串口波特率
pinMode(ledpin, OUTPUT);//设置数字6口模式,OUTPUT为输出
pinMode(tiltSwitchpin, INPUT); //设置数字4口模式,INPUT为输入
}
void loop()
{
val = digitalRead(tiltSwitchpin); //读取数字4口值分配给 val
Serial.println(val);//串口打印读取val的值
if (val == LOW) //检测倾斜开关是否连通,连通输出低电平(0)
{
digitalWrite(ledpin, HIGH); //输出高电平,LED 亮起
}
else //检测倾斜开关是否断开,断开输出高电平(1)
{
digitalWrite(ledpin, LOW); //输出低电平,LED 熄灭
}
}
示例程序(ESP32开发板—基于Python语言,不能用Arduino IDE上传代码):
import machine
import time
pin2 = machine.Pin(2, machine.Pin.IN)
pin4 = machine.Pin(4, machine.Pin.OUT)
while True:
if pin2.value() == 0:
pin4.value(1)
else:
pin4.value(0)
time.sleep_ms(500)
示例程序(UNO开发板):点击下载

示例程序(ESP32开发板):点击下载

Arduino环境搭建
准备配件:

Micropython环境搭建
准备配件:
电路接线图:
视频教程:点击查看

器件连接好线之后,将上述程序上传到 Arduino UNO 开发板后,打开串口监视器。当倾斜开关倾斜一定角度后,串口输出低电平数值0,灯亮。回归水平后,串口输出高电平数值1,灯灭。通过学习了倾斜开关的原理和应用。倾斜开关是一种非常简单的电子元件,但简单的设备通常可以制造一些有趣的东西。