跳到主要内容

物体倾倒检测传感器(GPIO)

一、本例程实现功能

通过滚珠型倾倒检测传感器模块感应传感器是否发生倾倒或角度变化,当发生倾倒时,Core电路板上的LED1灯亮,当传感器的位置恢复时LED1灯灭。

二、倾倒检测

利用倾倒检测传感器,我们可以检测各种物体是否发生倾倒,比如仪器、设备、家电是否发生倾倒,以便于及时发现问题或采取断电保护等措施。

三、倾倒检测传感器介绍

1. 倾倒检测原理:

用于倾倒检测的传感器主要有两种,一种是水银开关,一种是滚珠开关。它们的原理类似,也很简单,就是当发生倾倒时,传感器内的水银或滚珠会流向另外一个方向,从而触发传感器输出状态的改变(比如:输出的电平值发生变化)。

2. 倾倒检测传感器种类:

水银开关:

shuiyin

滚珠开关:

gunzhu

由于环保及安全问题,滚珠开关已逐渐取代水银开关。

3. SW-520D滚珠型倾倒检测开关介绍:

SW-520D是滚珠型倾斜感应单方向性触发开关,垂直悬挂的倾斜开关探头在受到外力作用且偏离垂直位置15度以上时,倾斜开关内部的金属球触点动作,常闭触点断开。当外力撤消后,倾斜开关回复到垂直状态,金属球触点复又闭合。它能设计各种产品倾斜、倾倒触发报警,倾倒断电传感器,倾斜传感器。

gunzhu1

四、材料清单

名称推荐购买链接(或者您可以自己制作)模块/芯片硬件资料下载
倾倒传感器模块传感器模块购买链接下载地址
声明:这里推荐的购买链接仅供参考,您完全可以去其他商家或渠道购买,只要功能相似即可,如果需要更低的成本建议自己开发硬件模块或定制。

product1

product2

五、接线图

layout

六、完整代码

传感器的使用非常简单,我们仅用Core提供的Gpio库函数来读取传感器DO引脚输出的电平即可判断是否发生倾倒,当发生倾倒时传感器DO引脚输出低电平LED1灯亮,反之高电平LED1灯灭。

--配置D8为普通输出,控制LED1
LIB_GpioOutputConfig("D8","STANDARD")
--设置D5口为普通输入,连接倾倒传感器的DO引脚,也可以将D5换成D0-D7中的任意一个引脚
LIB_GpioInputConfig("D5","NOPULL")
--开始大循环
while(GC(1) == true)
do
gpio_value = LIB_GpioRead("D5")
if gpio_value == 0 then --传感器感应到倾倒状态
LIB_GpioWrite("D8",0)--LED1灯亮
else
LIB_GpioWrite("D8",1)--LED1灯灭
end
end
如果感兴趣,上面代码中出现的LIB开头的库函数可以在 API文档 中通过Ctrl+F查询。