라즈베리 파이 가스 센서
이 튜토리얼은 라즈베리 파이와 MQ2 가스 센서를 사용하여 LPG, 연기, 알코올, 프로판, 수소, 메탄 및 일산화탄소와 같은 가스의 농도를 측정하여 공기 질을 평가하는 방법을 안내합니다. 자세하게는 다음을 배웁니다:
- MQ2 가스 센서를 Raspberry Pi에 연결하는 방법
- Raspberry Pi를 프로그래밍하여 MQ2 가스 센서의 값을 읽는 방법
Hardware Preparation
1 | × | Raspberry Pi 4 Model B | Amazon | |
1 | × | MQ2 Gas Sensor | Amazon | |
1 | × | Jumper Wires | Amazon | |
1 | × | (추천) Screw Terminal Block Shield for Raspberry Pi | 쿠팡 | Amazon | |
1 | × | (추천) USB-C Power Cable with On/Off Switch for Raspberry Pi 4B | Amazon | |
1 | × | (추천) Plastic Case and Cooling Fan for Raspberry Pi 4B | Amazon | |
1 | × | (추천) HDMI Touch Screen Monitor for Raspberry Pi | Amazon |
MQ2 가스 센서에 대해
MQ2 가스 센서는 주변 환경에서 LPG, 연기, 알코올, 프로판, 수소, 메탄, 일산화탄소 등의 다양한 가스를 감지할 수 있습니다. 디지털 출력 핀과 아날로그 출력 핀 두 가지 출력 옵션을 제공합니다.
MQ2 가스 센서는 각 가스에 대한 정보를 개별적으로 제공하지 않는다는 점을 유의해야 합니다. 대신, 가스의 조합 또는 전체적인 가스의 존재에 대한 정보를 제공합니다.
MQ2 센서를 사용하여 가스 누출 여부나 공기 질이 나쁜지를 판단할 수 있습니다. 이러한 정보는 경보를 발동하거나 환기 시스템을 활성화하는 등 우리의 안전을 보장하기 위한 적절한 조치를 취하는 데 유용합니다.
핀아웃
MQ2 가스 센서는 각기 다른 용도를 가진 네 개의 핀을 가지고 있습니다.
- VCC 핀: 이 핀은 5V 전원 공급원 (VCC)에 연결되어야 합니다.
- GND 핀: 이 핀은 적절한 회로 작동을 위해 접지 (0V)와 연결되어야 합니다.
- DO 핀: 이 핀은 가연성 가스의 존재를 나타내는 디지털 출력 핀입니다. 가스 농도가 감지되면 핀이 LOW로 설정됩니다. 반대로, 가스가 감지되지 않으면 핀이 HIGH로 설정됩니다. 가스 농도 감지 임계값은 내장된 가변 저항기를 사용하여 조정할 수 있습니다.
- AO 핀: 이 핀은 가스 농도에 비례하는 전압을 생성하는 아날로그 출력 핀입니다. 가스 농도가 증가함에 따라 이 핀의 전압도 상승합니다. 마찬가지로 가스 농도가 감소하면 전압도 감소합니다.
요약하자면, VCC 및 GND 핀은 전원 공급과 접지를 제공하고, DO 핀은 가스 존재를 디지털로 나타내며, AO 핀은 가스 농도에 대응하는 아날로그 전압을 생성합니다.
또한, MQ2 가스 센서는 두 개의 LED 표시등이 장착되어 있습니다:
- PWR-LED 표시기: 이 LED는 전원 표시기로 사용되며, 센서가 전원을 받고 있음을 보여주기 위해 점등됩니다.
- DO-LED 표시기: 이 LED는 DO 핀에 연결되어 있으며 가스 농도의 시각적 표시를 제공합니다. 가스 농도가 감지되고 DO 핀이 LOW로 설정되면 DO-LED 표시기가 켜집니다. 반대로 가스 농도가 감지되지 않고 DO 핀이 HIGH로 설정되면 DO-LED 표시기가 꺼집니다.
작동 방식
DO 핀과 관련하여:
- MQ2 모듈에는 가스 농도의 민감도 또는 임계값을 조정할 수 있는 내장 가변 저항기가 포함되어 있습니다.
- 주변 환경의 가스 농도가 설정된 임계값을 초과하면 센서의 출력 핀이 LOW가 되고 DO-LED가 켜집니다.
- 반대로, 주변 환경의 가스 농도가 임계값 아래로 떨어지면 센서의 출력 핀이 HIGH가 되고 DO-LED가 꺼집니다.
AO 핀에 관하여:
- 가스 농도가 증가함에 따라 AO 핀의 전압도 비례하여 증가합니다.
- 반대로, 가스 농도가 감소하면 AO 핀의 전압도 그에 따라 감소합니다.
포텐셔미터는 AO 핀에서 관찰된 값에 영향을 미치지 않는다는 점을 주의하는 것이 중요합니다.
MQ2 센서 예열
MQ2 가스 센서는 효과적으로 사용되기 전에 예열 과정이 필요합니다. 세부 사항은 다음과 같습니다:
- 센서가 오랫동안(약 한 달 이상) 보관되어 처음 사용하는 경우, 24-48시간의 예열이 필요합니다. 이 연장된 예열 시간은 정확한 측정 값을 보장합니다.
- 그러나 최근에 센서를 사용한 경우, 완전한 예열 상태에 도달하는 데 약 5-10분 정도만 소요됩니다. 이 예열 기간 동안 센서는 처음에 높은값을 제공할 수 있지만, 점차 안정화되면서 감소할 것입니다.
MQ2 센서를 예열하려면 VCC 및 GND 핀을 전원 공급 장치에 연결하거나 Raspberry Pi의 VCC 및 GND 핀에 연결하세요. 그런 다음 센서가 연결된 상태로 필요한 시간 동안 유지되도록 하세요.
Wiring Diagram
MQ2 가스 센서 모듈에는 두 개의 출력이 있으므로 필요에 따라 하나 또는 둘 다 사용할 수 있습니다.
- 라즈베리 파이와 MQ2 가스 센서를 DO만 사용할 때의 배선 다이어그램.
이 이미지는 Fritzing을 사용하여 만들어졌습니다. 이미지를 확대하려면 클릭하세요.
배선 구성을 간단하고 체계적으로 만들기 위해, Raspberry Pi용 스크루 터미널 블록 실드 사용을 권장합니다. 이 실드는 아래와 같이 더욱 안정적이고 관리하기 쉬운 연결을 제공합니다:
라즈베리 파이 코드 - DO 핀에서 값 읽기
Detailed Instructions
- 라즈베리 파이 또는 다른 라즈베리 파이 호환 운영 체제를 Pi에 설치했는지 확인하세요.
- 라즈베리 파이가 PC와 동일한 로컬 네트워크에 연결되어 있는지 확인하세요.
- 라이브러리를 설치해야 할 경우 라즈베리 파이가 인터넷에 연결되어 있는지 확인하세요.
- 라즈베리 파이를 처음 사용하는 경우, 라즈베리 파이 설정 방법을 참고하세요.
- Linux 및 macOS에서는 내장된 SSH 클라이언트를 사용하거나 Windows에서는 PuTTY를 사용하여 PC를 라즈베리 파이와 SSH로 연결하세요. PC를 라즈베리 파이에 SSH로 연결하는 방법을 참조하세요.
- RPi.GPIO 라이브러리가 설치되어 있는지 확인하세요. 설치되어 있지 않다면 다음 명령어를 사용하여 설치하세요:
- Python 스크립트 파일 gas_sensor.py을(를) 생성하고 다음 코드를 추가하십시오.
- 파일을 저장하고 터미널에서 다음 명령어를 실행하여 Python 스크립트를 실행하세요.
- 감지하려는 연기/가스 근처에 MQ2 가스 센서를 놓으세요.
- 결과를 터미널에서 확인하세요.
스크립트는 터미널에서 Ctrl + C를 누를 때까지 무한 루프로 계속 실행됩니다.
LED 상태가 계속 켜져있거나 꺼져있는 것을 발견하면, 가변 저항기를 조정하여 센서의 감도를 미세 조정할 수 있음을 기억하십시오.
라즈베리 파이 코드 - AO 핀에서 값 읽기
AO 핀에서 값을 읽으려면 라즈베리 파이에는 ADC 핀이 없으므로 ADS1115 ADC 모듈을 사용해야 합니다. 라즈베리 파이와 함께 ADS1115 ADC 모듈을 사용하는 방법을 참조하세요.
Video Tutorial
비디오 제작은 시간이 많이 걸리는 작업입니다. 비디오 튜토리얼이 학습에 도움이 되었다면, YouTube 채널 을 구독하여 알려 주시기 바랍니다. 비디오에 대한 높은 수요가 있다면, 비디오를 만들기 위해 노력하겠습니다.