Embedded/Raspberry Pi Pico

Raspberry Pi Pico와 기울기 센서(SZH-EK084)로 간단한 기울기 테스트하기

변화의 물결1 2024. 10. 27. 01:15

 

 

안녕하세요.

 

 업체의 Push 스위치를 누르면 기울어지는데, 그때 상태를 알고 싶고, 비용을 최소화하고 싶다고 해서 찾아보다가 간단한 센서가 있어 확인해 보았습니다. 사실, 기울기 센서(Gyro Sensor), 접점 센서 등 적용할 수 있는 것들은 많이 있었습니다. 저가이기도 하고 어느 정도 사용가능할지 확인 차 테스트해 보았습니다.

 


 

1. SZH-EK084 모듈 특징과 크기

<디바이스 마트 참조>

 

 

2. 테스트 방법

 

 Raspberry Pi Pico와 기울기 센서(SZH-EK084)를 사용하여 간단하게 기울기를 테스트했습니다. 기울기 센서(SW-520D)는 작은 공이 움직이면서 회로의 접촉 여부에 따라 기울기를 감지하는 원리로 동작합니다. 이 센서를 사용하여 디바이스의 기울어짐을 감지합니다.

 

 

 

SZH-EK084 모듈은 기울기센서(SW-520D)가 기울어지면 디지털 신호로 값을 주기 때문에 Pico의 IO 핀에 연결하고 좌우로 흔들어 보면서 테스트했습니다. 

 

 

3. 배  선

 

Pico -> SZH-EK084

3V3 -> VCC

GND -> GND

GP15 -> D0

 

 

 

4.  소스코드

 

 SZH-EK084 출력이 디지털 신호 핀이 하나다 보니 디지털 입력 하나만 사용해서 기울어짐을 확인할 수 있는 간단한 코드로 만들었습니다.

  

import machine
import time

# 15번 핀을 PULL_UP으로 설정
sensor_pin = machine.Pin(15, machine.Pin.IN, machine.Pin.PULL_UP)

# 상태 확인을 위해 LED 출력 핀 설정 (필요시)
led_pin = machine.Pin(25, machine.Pin.OUT)

# 메인 루프
while True:
    sensor_value = sensor_pin.value()

    if sensor_value == 0:
        print("센서가 안정 상태 (LOW)")
        led_pin.on()  # LED 켜기 (필요시)
    else:
        print("센서가 기울어짐 (HIGH)")
        led_pin.off()  # LED 끄기 (필요시)

    time.sleep(0.1)  # 100ms 지연

 

 

 볼센서(SW-520D)의 핀 부분 세워놓는다고 가정했을 때, 출력 핀(DO)이 LOW(0) 신호를 보내며, Raspberry Pi Pico에서는 핀 값이 0으로 읽습니다. 그때 Pico에 달려있는 LED는 켜지고 출력도 안정된 상태 출력합니다.  모듈 자체를 세울 수도 있고, 센서를 핀을 세워서 사용할 수도 있을 것입니다.

 

 

 

5. 회로 확인

 

 알리 사이트에 있는 회로도를 가져왔습니다. 볼센서 자체는 Open/Close 역할만 합니다. LM393 비교기를 추가하여 기준전압을 설정할 수 있게 되어 있고, 가변저항 값을 최소 혹은 최대로 할 경우 항상 0 혹은 1로도 출력 가능합니다. 기본 출력은 풀업으로 되어 있습니다.

 

 

 

 

6. 작동 확인

 

 센서를 좌우로 움직이면 안전상태 혹은 기울어짐이라고 출력하고 Pico의 LED도 켜지고 꺼지는 것을 확인할 수 있습니다.

 

 

  

7. 결  론

 

 저가로 기울어짐을 확인할 수 있는 센서라고 생각합니다. 그러나 정확한 기울기를 알 수 없고 안에 볼이 있다 보니 아주 천천히 움직일 때와 빠르게 움직일 때 동작하는 각도가 다를 수 있습니다. 그리고 약간 기울어진 상태에서 흔들림이 있다면 기울어졌다 정상이다 변화가 계속 일어날 수 있습니다.

  

 결론적으로 정상인 상태에서 80~90도 정도 확 기울어진 상태를 확인이 필요하다면 사용하면 도움이 될 거라고 생각됩니다. 그 나머지 각도에서는 정확도를 보장할 수 없다고 생각됩니다. 정확한 각도를 생각한다면 다른 정밀 기울기 센서 사용하는 것을 추천드립니다.

 

 

감사합니다.

 

 

<참고 사이트>

1. [SMG] SW-520D 기울기센서 모듈 [SZH-EK084]

https://www.devicemart.co.kr/goods/view?no=1314306

2. SW520D SW-520D Tilt Sensor

https://www.sunrom.com/p/sw520d-sw-520d-tilt-sensor

3. Golden SW520D SW-520D Angle sensor module Ball switch Tilt sensor module

https://www.aliexpress.com/i/32921911584.html?gatewayAdapt=glo2kor   

 

 

반응형