라즈베리 파이 SW-420 진동 센서
SW-420 진동 센서 모듈은 부착된 물체의 충격, 두드림, 흔들림을 감지할 수 있습니다. 누군가 문을 건드리면 반응하는 침입 경보기, 거칠게 다뤄졌는지 알려주는 소포, 비정상적인 흔들림을 알려야 하는 기계 같은 프로젝트에 유용합니다.
이 튜토리얼에서는 라즈베리 파이와 SW-420 진동 센서를 사용하여 진동을 감지하는 방법을 안내합니다. 다음 내용을 살펴보겠습니다:
- SW-420 진동 센서를 라즈베리 파이에 배선하는 방법
- SW-420 진동 센서를 사용하여 진동을 감지하도록 라즈베리 파이를 프로그래밍하는 방법.
이것이 동작하면, 진동이 감지될 때마다 LED를 켜거나, 부저를 울리거나, 릴레이로 제어되는 조명을 켜도록 코드를 확장할 수 있습니다.
준비물
| 1 | × | 라즈베리 파이 5 | 쿠팡 | 아마존 | |
| 1 | × | SW-420 Vibration Sensor Module | 아마존 | |
| 1 | × | 점퍼케이블 | 쿠팡 | 아마존 | |
| 1 | × | (추천) 라즈베리 파이용 스크루 터미널 블록 쉴드 | 쿠팡 | 아마존 | |
| 1 | × | (추천) 라즈베리 파이 프로토타이핑 베이스 플레이트 & 브레드보드 키트 | 아마존 |
SW-420 진동 센서에 대하여
SW-420 진동 센서 모듈은 충격과 흔들림에 반응합니다. 모듈 안에는 금속 접점 가까이에 놓인 작은 스프링 방식의 진동 스위치가 있습니다. 보드에 있는 LM393 비교기가 그 스위치를 감시하여 모든 흔들림을 깨끗한 디지털 신호로 바꾸고, 보드의 가변 저항으로 출력이 동작하기 전에 흔들림이 얼마나 강해야 하는지 설정할 수 있습니다.
핀아웃
SW-420 진동 센서에는 세 개의 핀이 있습니다:
- VCC 핀: 전원(3.3V ~ 5V)에 연결해야 합니다
- GND 핀: 접지(0V)에 연결해야 합니다
- DO 핀: 출력 핀입니다. 모든 것이 정지해 있는 동안에는 LOW이고, 진동이나 충격이 감지되는 즉시 HIGH가 됩니다. 이 핀은 라즈베리 파이의 입력 핀에 연결해야 합니다.

SW-420 진동 센서 모듈에는 두 개의 LED 표시등이 있습니다:
- 하나의 LED는 전원 상태를 표시합니다.
- 다른 LED는 트리거 상태를 표시하며, DO 핀이 HIGH가 될 때마다 켜집니다.
작동 원리
센서의 출력 핀은 다음과 같이 동작합니다:
- 모듈이 가만히 있는 동안에는 스프링 스위치가 열린 상태로 유지되고 출력 핀은 LOW를 읽습니다.
- 진동이나 충격이 스프링 스위치를 흔들면 접점이 닿고 출력 핀은 HIGH가 됩니다.
배선도

이 이미지는 Fritzing을 사용하여 만들어졌습니다. 이미지를 확대하려면 클릭하세요.
배선 구성을 간단하고 체계적으로 만들기 위해, Raspberry Pi용 스크루 터미널 블록 실드 사용을 권장합니다. 이 실드는 아래와 같이 더욱 안정적이고 관리하기 쉬운 연결을 제공합니다:

SW-420 진동 센서 프로그래밍 방법
- GPIO.setup() 함수를 사용하여 라즈베리 파이 핀을 디지털 입력으로 설정합니다.
- GPIO.input() 함수를 사용하여 라즈베리 파이 핀의 현재 상태를 읽습니다.
라즈베리 파이 코드 - 진동 감지
빠른 단계
- 파이에 Raspbian 또는 라즈베리 파이와 호환되는 다른 운영 체제가 설치되어 있는지 확인하세요.
- 라즈베리 파이가 PC와 같은 로컬 네트워크에 연결되어 있는지 확인하세요.
- 라이브러리를 설치해야 하는 경우 라즈베리 파이가 인터넷에 연결되어 있는지 확인하세요.
- 라즈베리 파이를 처음 사용한다면 라즈베리 파이 - 소프트웨어 설치을 참고하세요.
- Linux와 macOS에서는 내장 SSH 클라이언트를, Windows에서는 PuTTY를 사용하여 SSH로 PC를 라즈베리 파이에 연결하세요. SSH로 PC를 라즈베리 파이에 연결하는 방법을 참고하세요.
- RPi.GPIO 라이브러리가 설치되어 있는지 확인하세요. 설치되어 있지 않다면 다음 명령으로 설치하세요:
- 파이썬 스크립트 파일 vibration_sensor.py를 만들고 다음 코드를 추가하세요:
- 파일을 저장하고 터미널에서 다음 명령을 실행하여 파이썬 스크립트를 실행하세요:
- SW-420 센서를 몇 번 두드리거나 흔들어 보세요.
- 터미널에서 결과를 확인하세요.
스크립트는 터미널에서 Ctrl + C를 누를 때까지 무한 루프로 계속 실행됩니다.
여기서부터 진동이 감지될 때마다 LED를 깜빡이거나, 부저를 울리거나, 릴레이로 제어되는 조명을 켜도록 코드를 수정할 수 있습니다. 자세한 설명과 더 많은 정보는 이 가이드 끝에 있는 튜토리얼을 참고하세요.
문제 해결
SW-420 진동 센서가 예상대로 동작하지 않으면 다음 문제 해결 단계를 시도해 보세요:
- 민감도 조절: 보드의 가변 저항을 돌려 출력이 동작하는 데 필요한 흔들림의 정도를 높이거나 낮추세요.
- 주변 진동으로부터 분리: 모듈을 단단히 고정하고, 잘못된 트리거를 일으킬 수 있는 모터, 팬, 사람의 발걸음에서 멀리 두세요.
- 배선 확인: VCC, GND, DO 핀이 올바르게 연결되어 있는지 확인하세요.
- 전원 공급 확인: 일정한 측정값을 얻기 위해 전원 공급이 안정적이고 전기적 잡음이 없는지 확인하세요.
이 단계를 따르면 SW-420 진동 센서의 잠재적인 문제를 해결할 수 있을 것입니다.
동영상
비디오 제작은 시간이 많이 걸리는 작업입니다. 비디오 튜토리얼이 학습에 도움이 되었다면, YouTube 채널 을 구독하여 알려 주시기 바랍니다. 비디오에 대한 높은 수요가 있다면, 비디오를 만들기 위해 노력하겠습니다.