728x90
300x250

[기초전자실습] Lub 18.04 - 아두이노 센서 구현하기

 

루분투 18.04를 활용하여 아두이노 센서 구현 프로젝트를 진행하도록 하겠다.

크게 어렵지 않게 할 수 있다.

 

축약어를 사용하였음. (Lub = Lubuntu 18.04)

 

소프트웨어: Microsoft Windows 10, Oracle VirtualBox GNU/GPL 5.2.16, Arduino 1.8.5, Lubuntu 18.04

 

[참고사항]
1. 아두이노 실험 또는 실습에 임하는 태도는 주변환경을 깨끗하게 치운다.
 -> 적어도 청소는 꼭 하고 진행하기 바람.2. 전기 코드 및 USB 등의 전원사항, 주변 환경 온도 등을 잘 체크하기 바란다.
 -> 노트북 등에서 사용할 경우, 경우에 따라서 USB포트가 고장날 수도 있으니 허브 등으로 예방하기 바란다.

3. 아두이노가 코드 등에 있어서 외형은 쉬워보여도 의외로 많은 시간을 소비한다.

4. 아두이노 실습 또는 실험이 끝난 후에는 뒷 정리를 해야 한다.
    -> 청소  (반드시 부품 등을 식별해야 함. 섞이면 안 됨.)

-> 전선 등을 반드시 줍도록 하고.

-> 케이블, 저항 등은 분류해서 차분하게 정리해서 넣도록 한다.

 


1. 하드웨어 구성하기

 

아래의 그림처럼 키트를 구성하도록 한다.

 

 

그림 1-1. 아두이노와 LM35 센서

 

LM35센서 등을 알고 싶다면, 조그만한 센서 가까이에 눈을 크게 뜨고 본다면 LM35라고 적혀져 있는 것을 볼 수 있다.

눈을 크게 뜨고 봐야 센서의 타입을 알 수 있다.

 

PCB 기판 위에 IC가 박혀있다.(납땜이나 정밀납땜 등으로 굳어진 상태??를 표현하고자 함.)

 

육안으로 보기에는 조금 간신히 보인다.

 

 

그림 1-2. 온도 센서, 도도(Dodo)

 

이 센서는 실제로 다리가 3개 있다.

 

그림 1-3. 온도센서의 실제 모습, 도도(Dodo)

 

실제로는 LM35의 모습은 이렇게 다리가 3개로 구성된 IC로 되어있다.

이러한 타입의 다양한 부품들이 실제로 더 많이 존재한다고 보면 된다.

 

이해를 돕기 위해서 부품을 몇 개 그려보았다.

부품을 만지다보면, 섬세해지는 경향이 있을 수 있다. 참고하기 바란다.

 

 

그림 1-4. 다양한 종류의 부품 형상 예 - 도도(Dodo)

 

적어도 최소한은 데이터시트를 반드시 참고하길 바란다.

 

[첨부(Attachment)]

diversityOfSensor.7z

LM35.7z

 

 


2. 아날로그 - 포트 이해하기

 

나는 아두이노 메가 2560으로 작성하게 되었다.

ESP8266 펌웨어가 내장이 되어있지 않은 제품군이다. 다만, 포트 확장성이 우노(Uno)에 비해서 좋다.

 

아두이노 메가 2560을 자세히 살펴보면, 포트가 굉장히 많다.

아날로그 13개, 디지털 53개 정도 구성되어 있다.

 

쉽게 이야기하면, LCD도 여러 개 부착해도 된다.

 

나는 아두이노 메가 2560이 굉장히 제어할 수 있는 디바이스, 부품이 많다고 주장한다.

 

그림 2-1. 스키메틱(Schematics) - 도도(Dodo)

 

 

 

 

그림 2-2. 스키메틱(Schematics) - 도도(Dodo)

 

그림 2-2에서 보면 아날로그 포트가 A01~A15까지 있다.

즉, 15개의 아날로그 포트가 존재한다는 의미이다.

 

이렇게 Fritizing으로 Atmega 2560 칩에 대한 모습을 살펴볼 수 있겠으나 자세한 건 데이터시트를 찾아보는 것이 좋다.

 

 

 

그림 2-3. 스키메틱(Schematics) - 도도(Dodo)

 

[첨부(Attachment)]

mega2560-lm35.7z

 


3. 실제 구동 시연

 

다음은 두 가지 측면으로 작성하였다. (동시에 진행한다고 가정하고 시청하길 바란다.)

영상 3-1, 영상 3-2를 동시에 보는 것도 하나의 방법이다.

 

임베디드 작업에서 중요한 것은 하드웨어와 소프트웨어를 동시에 작업한다는 것이다.

 

 

영상 3-1. 아두이노 하드웨어

 

 

영상 3-2. 소프트웨어 - 도도(Dodo)

 


4. 코드 

 

아래의 내용은 아두이노에서 작성한 소스코드이다.

 

const int temperaturePin = 0;
 
void setup() {
  Serial.begin(9600); //시리얼 통신속도 설정
}
 
void loop() {
  int reading = analogRead(temperaturePin); //센서값 읽어옴
 
  Serial.print((5.0*reading*100.0)/1024.0);
  Serial.println("do");
  delay(1000); // 측정 간격 설정 (1000 = 1초)
}

 

 


5. 맺음글(Conclusion)

 

간단한 아두이노 메가 기반의 센서에 대해 살펴보았다.

그리고 아날로그 포트와 디지털 포트 등에 대해서도 충분히 자세히 소개하였다.

 


6. 참고자료(Reference)

 

1. LM35 Interfacing with Arduino Mega 2560, Last Modified 2016-07-05, Accessed by 2018-08-12, http://bravelearn.com/lm35-interfacing-with-arduino-mega-2560/

반응형

+ Recent posts