아두이노 온도 컨트롤러 - adu-ino ondo keonteulolleo

안녕하세요?

개발자를 꿈꾸는 오원입니다.

이번 학기에는 학교에서 좋은 교수님을 만나게 되어, 다른 수업과는 다른 내용의 수업을 하게 되었습니다.

아두이노 온도 컨트롤러 - adu-ino ondo keonteulolleo

그 수업 내용 중에 바로 아두이노를 이용한 제어가 있어서 배우게 되었는데요..

저는 진행하는 텀 프로젝트에서 온도센서를 맡고 있어서 그 자료를 한번 올려보겠습니다.

아두이노 온도 컨트롤러 - adu-ino ondo keonteulolleo

(1) 온도 센서의 구조 및 특징 

저희가 사용할 온도 센서는LM35입니다. 구현할 대상인 재난 경보 시스템에서필요한 온도 센서는 교수님 lab에서 지원하지 않아 아두이노 킷(Kit)을 구비하여 구성품으로 들어있는 온도센서를 사용하기로 했습니다. 실물 사진은 아래쪽 그림과 같습니다. 까만 색깔의 센서부와 3개의 핀들로 구성되어 있습니다. 센서의 크기는 10원과 비교했을 때 매우 작은 것으로 볼 수 있습니다.

 센서의 각 핀은 아래와 같이 할당되어 있는데 1번에는 전원이 인가되고 2번 아날로그 값을 읽어드리는 부분이고 3번은 접지(GND)입니다.

( 출처 - http://www.instructables.com/id/LM35-Temperature-Sensor/ )

아두이노 온도 컨트롤러 - adu-ino ondo keonteulolleo

아두이노 온도 컨트롤러 - adu-ino ondo keonteulolleo

 온도 센서의 스펙을 살펴보면 25°C에서 250mV이 인가되는 것을 알 수 있고, -55°C에서 -550mV, 150°C에서 1500mV가 인가되는 것을 알 수 있습니다. 그래서 우리는 아날로그(analog) 핀으로 인가되는 값을 읽어와 그것을 사람이사용하는 섭씨온도[°C]로 바꾸어 주는 작업을 해주게 되는 것입니다. 이때 아날로그 핀으로는 0에서 5V의 전압 값이 0에서 1023의 값에 대응되어서 들어오게 됩니다.

 라이브러리 출처 - http://ricardo-sequeira.com/lm35-arduino-library/

아두이노 온도 컨트롤러 - adu-ino ondo keonteulolleo

아두이노 온도 컨트롤러 - adu-ino ondo keonteulolleo

 따라서 입력전압을 구하기 위해서는 입력 값은 전압 값으로 환산하여 바꿔줄 수가 있고, 전압에 의해 섭씨 온도를 구할 수 있게 됩니다그 식으로는 아래와 같이 표현할 수 있습니다.

(2) 아두이노와 온도센서의 연계

 위 스펙에서 조사했던 대로 각 핀들을 아두이노에 아래 그림과 같이 해당되는 곳으로 인가를 해줍니다. 그리고 코드를 작성해 줍니다. 상황을 설정해주자면, 재난 상황을 표현하기 위해 특정 온도가 되면 LED (13pin)으로 출력을 내보내는상황을 표현하겠습니다. 실제로 구현된다면 화재가 발생하는 온도인 100°C로 설정을 해야하지만 실제 불을 내기가 여의치 않아 시뮬레이션 온도로 29°C로 설정하였습니다.

( 사진 출처 - http://gent.tistory.com/80  )

아두이노 온도 컨트롤러 - adu-ino ondo keonteulolleo

(3) 결과 확인

먼저 연결하고 초기 상태 때 모습입니다. 에어컨 온도 23°C와 비교했을 때 온도 센서로 관측한 결과 22.46°C2.35%의 오차로 일치하는 것을 볼 수 있습니다.

★ 제가 만든 안드로이드 앱 실험오차 계산기로 계산을 하면 더욱 편리해요!

지금 다운로드 하기! ▼ click!

아두이노 온도 컨트롤러 - adu-ino ondo keonteulolleo
 

그리고 설정한 재난 온도 29°C를 넘기기 위해 실온보다 높은 온도를 가진 손으로 온도센서를 잡아보았습니다그 결과 온도가 서서히 올라가는 것을 볼 수 있었습니다.

그리고 온도가 29°C가 넘어가는 순간 PC Serial 모니터에 29°C 이상의 온도가 찍히게 되고 29°C 이상이 유지되는 동안에는 13pin에 연결된 아두이노 내부 LED에 불이 들어오는 것을 알 수 있었습니다.

 

https://www.youtube.com/watch?v=wo0qZmpLGmk

아두이노 온도 컨트롤러 - adu-ino ondo keonteulolleo

유투브에 올라가 있는 시연동영상이에요!!ㅎㅎ

재미없지만 재미있게봐주세요~

아두이노 온도 컨트롤러 - adu-ino ondo keonteulolleo

이상으로 글을 마치겠어요..

오랜만에 블로깅을 해보는데..

방학이 되면 더욱 활발히 활동을 할 거에요!

곧 다시뵈요!! ^ㅡ^

아두이노 온도 컨트롤러 - adu-ino ondo keonteulolleo