알코올을 측정할 수 있는 센서가 있다. MQ-3 라는 센서로 예전에 한 번 다뤘던 가연성 가스 탐지 센서 MQ-2(http://deneb21.tistory.com/279)와 비슷하게 생긴 센서이다. 말 그대로 알코올을 측정할 수 있으니 아두이노와 연결하여 간이 음주측정기로 활용이 가능하다. 단, TV에서 나오듯이 혈중알콜농도 몇? 하는 수치는 계산식에 의해서 구할 수 있을 것이다. 센서는 그냥 측정값을 보내주는 역할만 하고 아두이노는 이를 읽어서 표시만 해주기 때문에 이 수치를 신뢰할 수 있는 상용 알콜측정기와 비교하면 혈중알코올 농도 계산식을 만들 수 있을 것이다. 그렇게 되면 MQ-3 센서로도 혈중알코올 농도를 표시해 줄 수 있는 음주측정기를 만드는 것이 가능해진다. 아무튼 오늘은 MQ-3 센서로 알코올이 감지가 되는지 감지가 되면 어떻게 수치가 변화되는지 관찰해 보려고 한다.
MQ-3 센서모듈의 모습이다. 주황색의 센서가 MQ-3 센서이다.
센서에 MQ-3 라고 쓰여 있다.
센서의 뒷 부분이다. 저항, 증폭기, 감도 조절용 가변저항 등의 부품들이 달려 있어 아두이노에 바로 연결해서 사용이 가능하다. 가변저항은 오른쪽으로 돌리면 감도가 증가한다. 핀은 그림의 왼쪽부터 Analog Out, Digital Out, GND, VCC 이다. 전원은 3~5V 까지 사용이 가능하다. 디지털핀은 알코올의 감지여부를 알려주고 아날로그 핀은 감지된 알코올의 측정치를 보내준다. 아래는 데이터시트에서 발췌한 MQ-3의 스펙이다.
■ MQ-3 데이터시트
MQ3.pdf
■ 연결 및 소스
MQ-3 센서 모듈 |
아두이노 우노 |
VCC |
5V |
GND |
GND |
AO |
A0 |
위와 같이 연결하고 아두이노의 13번 핀에 LED를 하나 연결해 주었다. A0 에서 읽은 값이 500이 넘을 경우 켜지도록 하였다.
/* MQ-3 Alcohol Sensor Circuit with Arduino */ const int AOUTpin=0;//the AOUT pin of the alcohol sensor goes into analog pin A0 of the arduino const int ledPin=13;//the anode of the LED connects to digital pin D13 of the arduino int value; void setup() { Serial.begin(9600);//sets the baud rate pinMode(ledPin, OUTPUT);//sets the pin as an output of the arduino } void loop() { value= analogRead(AOUTpin);//reads the analaog value from the alcohol sensor's AOUT pin Serial.print("Alcohol value: "); Serial.println(value);//prints the alcohol value delay(1000); if (value > 500){ digitalWrite(ledPin, HIGH); } else { digitalWrite(ledPin, LOW); } }
감지가 되지 않은 경우의 값이다. 150 정도의 값을 보여준다.
소독용 알코올을 휴지에 뭍혀서 센서에 가까이 가져갔다. 수치가 급속도로 상승하면서 750정도를 가르켰다.
수치가 500을 넘었으므로 LED에 불이 들어왔다.
Digital Out 도 따로 테스트를 하였는데 가변저항 맞추기가 쉽지 않았다. 알코올이 검출되는지 안되는지만 HIGH/LOW로 판단하는데 별로 쓰임새는 없어보인다.
센서의 값이 처음에는 이상하게 높게 나오는 증상이 있다. 이 센서는 워밍업이 필요하다. 센서가 따뜻하게 달궈져야 제 성능을 발휘하게 된다. 보통 전원을 인가하고 10~15분 정도의 워밍업 시간을 가지면 센서의 전면부가 따뜻해지면서 제대로된 값이 나온다.
경찰들이 쓰는 휴대용 음주측정기가 있다면 MQ-3와 비교 후 개량해서 혈중알코올 농도도 측정할 수 있는 기기도 만들 수 있을 것 같은데 그런 기회가 올지 모르겠다.
'아두이노' 카테고리의 다른 글
[아두이노] 노키아 5110 LCD (Nokia 5110 LCD) 의 사용 (0) | 2017.04.04 |
---|---|
[아두이노] SSR (Solid State Relay) 의 사용 (6) | 2017.01.24 |
[아두이노] 3색 RGB LED를 이용한 무드등 만들기 (7) | 2016.12.28 |
[아두이노] 서보모터를 이용한 자동 물고기 사료 공급장치 아두이노 버전 (0) | 2016.12.28 |
[ATtiny] ATtiny85 칩을 이용한 LED 크리스마스 트리, 찰리플렉싱 이용 (0) | 2016.12.22 |