树莓派资料
显示屏资料
系统下载
树莓派Pico
首页 动态 发帖 版块 我的
 退出
游客  
等级:
金币:
经验值:

倾斜传感器实验教程,树莓派Python编程

  2895 
 0
 2
RASPI   RASPI 


一:传感器参数介绍

倾斜开关传感器,是一种很小的角度倾斜开关元件。常用于水平测试、角度开关、倾倒检测、倾倒断电等等应用。传感器的探头在水平放置是关闭状态,如果将传感器朝上90度垂直放置是打开状态。 该传感器采用了MEC原装倾斜开关SW-460D,灵敏度比较高,基于内部原理是钢球开关的数字模块,利用钢球的特性,通过垂直的重力作用使钢球向低处滚动,从而实现开关闭合或断开功能。

工作电压

3.3~5V

触发方式

水平放置关,垂直放置开

尺寸

32mm×14mm

信号输出

开关量(DO)低电平输出

指示灯状态

带开关指示灯(水平放置灯灭,垂直放置灯亮)

倾斜传感器电路原理图

二:硬件连接

树莓派主板倾斜传感器
5VVCC
GNDGND
GPIO1(BCM18)DO

Image

Image

三:Python代码

已知传感器在水平放置时无信号输出,如果朝上90度放置时输出低电平信号,那么我们可以写一个Python程序,通过实时监测该引脚是否有低电平信号输入来判断传感器的状态!

import RPi.GPIO as GPIO
import time
 
# 配置GPIO
GPIO.setmode(GPIO.BCM)
GPIO.setwarnings(False)
GPIO_PIN = 18
 
# 初始化引脚为输入模式,启用下拉电阻
GPIO.setup(GPIO_PIN, GPIO.IN, pull_up_down=GPIO.PUD_DOWN)
 
try:
    print("监测系统启动中...")
    last_status = None  # 记录上次状态
    
    while True:
        # 读取当前引脚状态
        current_status = GPIO.input(GPIO_PIN)
        
        # 只在状态变化时更新显示
        if current_status != last_status:
            if current_status == GPIO.HIGH:
                print("\r当前状态:检测正常", end="", flush=True)
            else:
                print("\r当前状态:检测倾倒   ", end="", flush=True)
            last_status = current_status
        
        time.sleep(0.1)  # 降低CPU占用率
 
except KeyboardInterrupt:
    print("\n监测已终止")
finally:
    GPIO.cleanup()

执行程序后在水平放置状态下显示: 检测正常

Image


将传感器朝上90度放置状态下显示: 检测倾倒

Image



标签:
作者签名: raspi.cc   楼主  2025-03-26 23:08:52
回复列表
Powered by RASPI _VERSION
© 2017-2025 树莓派极客版权
您的IP: 13.58.3.158 , 2025-04-03 15:08:28
Powered by RASPI _VERSION
© 2017-2025 树莓派极客版权