728x90
300x250

[기초전자실습] 온도(LM35), 온습도(DHT22)센서와 아두이노메가 2560 사용

 

아두이노를 활용하여 온도, 온도/습도를 측정할 수 있는 방법에 대해서 소개하려고 한다.

 


1. 아두이노 라이브러리

 

[첨부(Attachment)]

 

https://github.com/adafruit/DHT-sensor-library

 

[DHT11 버전]

DHT11_library.7z

 

[DHT 통합버전(DHT11, DHT22 등)]

DHT-sensor_library.7z

 


2. 하드웨어

 

번호

구분

항목명

비고

1

센서(Sensor)

온도센서

 

2

센서(Sensor)

DHT11(습도, 온도 센서) || DHT22

 

3

보드(Board)

아두이노 메가 2560

 

 

[DHT-11, DHT-22 특징]

 

항목명

DHT-11

DHT-22

온도 측정 범위

0~50℃

-40~80℃

온도 측정 오차

2℃

0.5℃

습도 측정 범위

20~80%

0~100%

습도 측정 오차

5%

2%

측정 간격

1초

2초

 

[LM35 특징]

 

번호 

구분

영어(문장)

한글

1

특징(Features)

 Calibrated Directly in Celsius (Centigrade)

 직접 섭씨(중앙)로 보정됨

2

특징(Features) 

 Linear + 10-mV/°C Scale Factor

 선형(리너) + 10mV/°C 스케일 팩터

3

특징(Features) 

 0.5°C Ensured Accuracy (at 25°C)

 0.5°C의 정확성 보장(25°C)

4

특징(Features)

 Rated for Full −55°C to 150°C Range

 전체 -55°C~150°C 범위에 대해 등급 설정

5

특징(Features)

 Suitable for Remote Applications

 원격 애플리케이션에 적합

6

특징(Features)

 Low-Cost Due to Wafer-Level Trimming

 웨이퍼 레벨 트리밍으로 인한 저비용

7

특징(Features)

 Operates From 4 V to 30 V

 4V ~ 30V 작동

8

특징(Features)

 Less Than 60-μA Current Drain

 60μA 미만의 전류 방전

9

특징(Features)

 Low Self-Heating, 0.08°C in Still Air

 낮은 자체 가열, 정지 공기 중 0.08°C

10

특징(Features)

 Non-Linearity Only ±¼°C Typical

 비선형성만 ±1⁄4°C 일반

11

특징(Features)

 Low-Impedance Output, 0.1 Ω for 1-mA Load

 저임피던스 출력, 1mA 로드의 경우 0.1Ω

12

적용(Applications)

 Power Supplies

 전원 공급류

13

적용(Applications) 

 Battery Management

 베터리 관리

14

적용(Applications)

 HVAC

 

15

적용(Applications)

 Appliance

 가전

 

 

 


3. 소스코드

 

#include <DHT11.h>

const int temperaturePin = 0;
const int DHTPIN = 2;

#define DHTTYPE DHT11

DHT11 dht11(DHTPIN);

float dht_temperature;
float dht_humidity;

void setup() { 
     Serial.begin(9600); //시리얼 통신속도 설정
}
 
void loop() {
     char type = NULL;
     int reading = analogRead(temperaturePin);           // LM35 센서값 읽어오기
  
     printTemperatureHumidity();
  
     Serial.print((5.0*reading*100.0)/1024.0);               // LM35 센서
     Serial.print(",");

     Serial.print( dht_temperature );
     Serial.print(",");
     Serial.print( dht_humidity );
     Serial.print("%");

     delay(1000); // 측정 간격 설정 (1000 = 1초)

}

void printTemperatureHumidity(){
 
     int err;
  
     if (err = dht11.read(dht_humidity, dht_temperature) == 0 ) {
         dht_temperature = dht_temperature + 28; // 보정값
     }else{
         Serial.println("Failed to read from DHT sensor!");
         return;
     }
}


소스코드(DHT11)

 

#include "DHT.h"       // DHT.h 라이브러리를 포함한다

#define DHTPIN 2      // DHT핀 (DATA핀 - 디지털 포트로 구성)

#define DHTTYPE DHT11  // DHT타입을 DHT11 DHT22,

 

DHT dht(DHTPIN, DHTTYPE);  // DHT설정 - dht (디지털 포트번호, dht11)


void setup() {

     Serial.begin(9600);    // 9600 속도로 시리얼 통신을 시작한다

}

 

void loop() {

     delay(2000);

    

     int h = dht.readHumidity();  // 변수 h에 습도 값을 저장

     int t = dht.readTemperature();  // 변수 t에 온도 값을 저장

    

     Serial.print("Humidity: ");  // 문자열 Humidity: 를 출력한다.

     Serial.print(h);  // 변수 h(습도)를 출력한다.

     Serial.print("%\t");  // %를 출력한다

     Serial.print("Temperature: ");  // 이하생략

     Serial.print(t);

     Serial.println(" C");

 

}


소스코드(통합 DHT)

 


4. 참고자료(Reference)

 

1. Arduino Playground - DHT11Lib, Last Modified , Accessed by 2018-08-14, http://playground.arduino.cc/main/DHT11Lib

2. adafruit/DHT-sensor-library: Arduino library for DHT11DHT22, etc, Temp & Humidity Sensors, Last Modified , Accessed by 2018-08-14, https://github.com/adafruit/DHT-sensor-library

3. DHT11, DHT22 and AM2302 Sensors - Adafruit, Last Modified , Accessed by 2018-08-14, https://cdn-learn.adafruit.com/downloads/pdf/dht.pdf

4. LM35 Precision Centigrade Temperature Sensors datasheet (Rev. H), Last Modified , Accessed by 2018-08-14, www.ti.com/lit/ds/symlink/lm35.pdf

반응형
728x90
300x250
[전자부품관리] 효율적이고 체계적인 부품 관리

 

전자부품에 대해서 소개하려고 한다.

전자부품은 의외로 소모품도 존재하지만, 남을 때도 꽤 있다.

오래되어서 폐기할 때도 물론 있겠으나 남을 때도 있다.

 

전자부품은 종류가 상당한 수준으로 다양하다.

 

"저항, IC, 트랜지스터, CPU(중앙처리장치), MB(메인보드), ARM Board(암 보드), LCD, Diode(다이오드)" 등 종류만 해도 수 십가지이다.

 

다 기억할 수 있는가?

 

거의 불가능하다고 할 수 있다.

 

이번에 소개할 내용은 어떻게 하면, 이러한 전자부품을 보다 효율적으로 관리할 수 있을지를 소개하려고 한다.

 


1. 관리대장을 만들어라

 

 

그림 1-1. 관리대장의 예, 도도(Dodo)

 

도도는 대략적으로 이렇게 설계를 했는데, 더 낳은 아이디어가 있으면 편하게 설계해보면 좋을 것 같다.

 

[첨부(Attachment)]

 

Operation.7z

 

 


2. 맺음글(Conclusion)

 

훨씬 더 많은 일들을 수행할 수 있다.

 

부품을 다루는 데 있어서 재사용성(Reuse)도 구현할 수 있다고 본다.
또 소모성도 존재할 수 있다.

반응형
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/

반응형
728x90
300x250

[기초전자실습] 사운드카드를 활용한 오실로스코프 프로브 구현

 

이번에 소개할 것은 "오실로스코프"의 프로브를 구현하려고 한다.

"오실로스코프"라는 장비는 매우 고가의 장비로 파형을 측정할 때 사용되는 장치이다.

 

"저가형"도 있다.

 

오실로스코프 프로브를 구현함에 있어서 중요한 것은 파형을 측정할 수 있냐는 것이다.

 


1. 오실로스코프가 되기 위한 조건

 

오실로스코프가 되기 위해서는 몇 가지 조건이 있다.

 

- 프로브를 비롯한 측정도구를 지원할 것 (하드웨어)

- 측정 소프트웨어를 갖출 것

 

고가의 하드웨어로 구성된 오실로스코프 본체를 컴퓨터로 구현하면 이렇게 생긴 소프트웨어를 제작할 수가 있다.

 

 

그림 1-1. 오실로스코프 (소프트웨어)구현의 예, 도도(Dodo)

 

이 프로젝트는 유럽의 한 국가에 사는 사람이 만든 것으로 보인다.

 

 

그림 1-2. Zeitnitz가 만든 SoundCard Scope

 

참고로 독일 사람이다. 자이니즈라는 독일 사람이 만든 프로젝트로 추정된다.

관심이 있는 사람은 한번 구현을 해보는 것도 나쁘지 않다.

 

이 프로그램은 "무료는 아닌데, 교육적인 것 등에는 무료로 사용할 수 있다고 되어 있고, LabView 등의 라이브러리에 대해서 표기"를 해놨다.

 

사용하는 데는 크게 문제가 되지 않을 것으로 보인다.

 

프로그래밍을 조금 할 수 있는 있다면, 구현이 충분히 가능하다.

 


2. 하드웨어 구현

 

스키메틱은 다음과 같다.

프로브의 모양을 변형시킬 수가 있다.

 

하나는 그림으로 표현을 했는데, 파란색 화살표 모양과 같은 타입으로 만들 수가 있다.

하나는 L, GND, R을 독자적으로 뽑아내서 구현할 수도 있다.

 

[첨부(Attachment)]

180811-probe.zip

 

이걸 만들려면, 부품과 몇 가지 기기가 필요하다.

스키메틱2는 앞에 프로브 단자가 다를 수 있다.

 

[제작 소요 부품, 기기]

- 인두기, 선(Wire), 다이오드(1N4001~1N4007 x 8개 x (여분 + 3~4개) ), PC오디오케이블 선, 절연테이프 검은색 1개

 


3. 프로브의 종류

 

프로브라는 것에 대해서 차분하게 정리하겠다.

프로브라는 건 측정이 가능한 센서 계통이라고 봐도 된다.

 

그림 3-1. 프로브의 종류

 

이러한 프로브를 이용하여 하드웨어 환경 또는 컴퓨팅 환경에서 데이터를 도출할 수가 있다.

 


4. 맺음글

 

운영체제는 크게 무관하다. 윈도우 사용해도 무방하고, 리눅스 사용해도 괜찮다.

그래프와 사운드를 처리할 수 있는 프로그래밍을 할 수 있다면, 구현이 가능하다.

 


5. 참고자료(Reference)

 

1. zeitnitz.eu, Accessed by 2018-08-11, https://www.zeitnitz.eu/scms/images/scope_146_en.png

2. Soundscard Scope, Accessed by 2018-08-11, https://www.zeitnitz.eu/scope_en

반응형
728x90
300x250

[(기초전자실습)] 멀티미터(아날로그, 디지털)를 활용한 7세그먼트(Anode) LED

 

이번에 소개할 것은 멀티미터를 활용하여 7세그먼트를 측정하겠다.

7세그먼트에는 크게 종류가 두 종류가 있다.

 

에너드 타입하고 캐서드 타입 두 종류가 있다.

 

 

부품의 큰 차이를 보면 접지된 방향들이 서로 반대라는 점이다.

한쪽은 "+" 타입, "-" 타입.

 

이 부품을 설계하기 위해서 필요한 식들이 있을 수가 있는데, 그건 조금 복잡하고 계측기와 부품 사용에 대해서 소개하겠다.

 


1. 시연

 

시연을 크게 4가지 각도로 구성하였다.

 

 

그림 1-1. 찝개로 접지하기, 도도(Dodo)

 

찝개는 실제로 사용할 때 편의상 색깔로 구분할 수가 있다.

색깔로 구분하지 않아도 동작은 한다. 찝개가 무슨 접지를 하고 있는지 식별하고자 색깔 타입을 사용한다.

 

그림 1-1은 찝개로 7세그먼트(7Segment)의 다리를 찝은 모습이다.

물론 찝개를 사용하지 않고, 태스터(Tester) 할 때 다리에 접지봉을 살짝 접착하여 시연해볼 수도 있다.

 

 

그림 1-2. 7세그먼트 동작의 예, 도도(Dodo)

 

접지 다리 등을 잘 접촉하면 이렇게 불이 들어오는 것을 확인할 수 있다.

 

 

그림 1-3. 아날로그 멀티미터로 측정하기, 도도(Dodo)

 

그림 1-3은 그림이 흐릿해서 잘 안 보일 수가 있겠으나 수치로 된 측정값이 나오는 것을 확인할 수 있다.

 

 

그림 1-4. 디지털 멀티메터로 측정하기, 도도(Dodo)

 

그림 1-4는 디지털 멀티메터로 아날로그 멀티메터와 같이 실험을 진행하였다.

불이 들어오는 것을 확인할 수가 있다.

 

 

그림 1-5. 7세그먼트 다리에 찝개로 찝은 모습, 도도(Dodo)

 

그림 1-5는 7세그먼트 다리에 찝개로 찝은 모습이다.

불이 들어오고 있는데 사진이 희미해서 잘 안 보일 수가 있다.

접지를 한다면 이러한 모습으로 LED의 동작을 확인할 수 있다.

 

두 번째로 중요한 것은 디지털 멀티미터에서 측정값이 나왔냐는 것이다.

이러한 점들을 다양한 각도로 충분하게 생각해보고 실습을 해보면 도움이 될 것이다.

 

 

그림 1-6. 디지털 멀티미터, 접지 상태 - 도도(Dodo)

 

 

그림 1-7. 디지털멀티미터와 7Segment Anode, 도도(Dodo)

 

그림 1-7은 디지털멀티미터와 7세그먼트 에노드 타입을 연결한 모습이다.

 


2. 영상

 

쉽게 체험할 수 있도록 영상을 구성하였다.

아날로그 계측기라고 영상에는 표현되어 있다. 용어의 혼동인데, 멀티미터기가 정확한 표현이긴 하나 계측기라고 사용해도 크게 무리가 되진 않는다.

멀티미터가 정확한 표현인 이유는 "옴(Ohm), 저항(R), V(볼트)" 등을 다양하게 측정할 수 있기에 멀티미터라고 보는 게 타당하다고 주장한다.

그러나 계측기라고 해도 되는 이유는 "측정"을 한다는 것이다.

 

영어합성어로 번역된 표현인데 멀티미터라는 건, "계측기"는 한자 등으로 번역된 뜻이니 사용하는 데 "이러한 용어가 있구나." 정도만 알면 도움이 될 것이다.

 

 

영상 2-1. 에노드 - 아날로그 미터기, 도도(Dodo)

 

 

영상 2-2. 에노드, 디지털 멀티미터, 도도(Dodo)

 


3. 맺음글

 

7세그먼트를 사용할 때 데이타시트(Datasheet)를 잘 확인해보기 바란다. 구성에 따라서 동작 등의 반응이 달라질 수가 있기 때문이다.

반응형
728x90
300x250

[임베디드(Embedded)] 아두이노 메가 2560, 우노 R3 - LCD 2004A + I2C 동작

 

이번에 소개할 것은 아두이노 메가 2560 - LCD 2004A + I2C 동작을 시키는 실습을 진행할 것이다.

크게 어려운 구성은 아니다.

 

아두이노 라이브러리의 예제 코드 찾기가 무척 힘들다. (Arduino Libraries has difficulted to Sample code.)
이론적으로는 동작이 쉽다. 그러나 코드 라이브러리 찾는데 많은 시간을 소요하다. 
(Arduino has easy to operation for text but it is spend to many time and find for libraries.

 


1. 아두이노 메가 2560 - LCD 2004A + I2C

 

아두이노 메가 2560을 활용하여 LCD 2004A + I2C를 구현하는 실습을 하겠다.

크게 어려운 건 아닌데, 라이브러리에서 찾는데 많은 시간을 소요할 것이다.

 

 

그림 1-1. 실제 구현, 도도(Dodo)

 

 

그림 1-2. 실제 구현, 도도(Dodo)

 


2. 회로 스케치 - 아두이노 2560 

 

 

다음은 회로 스케치이다. 아두이노 2560 메가를 기준으로 작성하였다.

 

 

그림 2-1. 스케치, 아두이노 메가 2560(Arduino Mega 2560) - 도도(Dodo)

 

 

영상 2-1. 회로스케치, 스케메틱(아두이노 메가 2560) - 도도(Dodo)

 

 

영상 2-2. 회로스케치 - PCB (라우팅) - 도도(Dodo)

 

참고로 알아두면 도움이 되는 것은 아두이노 우노나 아두이노 2560하고 큰 차이가 없긴 없다.

 

 

그림 2-2. 스키메틱, 아두이노 우노(Arduino Uno) - 도도(Dodo)

 

다음은 회로 스케치를 할 때 참고한 것이다.

스케치에 해당하는 부품이 없는 경우에는 종종 Fritzing 사이트에서 올라온다. 잘 찾아보면 도움이 될 것이다.

 

 

그림 2-3. LCD PowerTip - LCD 2004A(20x4) - 도도(Dodo)

 

http://fritzing.org/projects/lcd-powertip-pc2004c-20x4-con-arduino/fab/

 

이 사이트에 접속하면, LCD 2004A 부품을 얻어낼 수 있다. LCD 디스플레이를 부품으로 가져다 쓰려면 접속하면 도움이 많이 된다.

 

[첨부(Attachment)]

Arduino_Uno_i2C_LCD.zip

Arduino_Mega2560_i2c_LCD.zip

 

 

참고로 실제 LCD 2004를 직접 수작업으로 구현할 경우가 있다면, 이 글은 해당되지 않는다.

아두이노의 단점인데, I2C 변형부품을 사용하면 구현도 쉬워진다.

 


3. 아두이노 - 라이브러리

 

https://github.com/marcoschwartz/LiquidCrystal_I2C

 

이 사이트에 접속하면, LCD 2004A 화면 출력을 위한 라이브러리를 얻어낼 수 있다.

 

 

그림 3-1. 아두이노 라이브러리 - 프로젝트

 

아두이노 프로젝트 소스코드를 살짝 개조하면, C++ 처럼 사용가능하다고 주장한다.

이 프로젝트를 "Clone or download"를 눌러서 내려받는다.

 

 

그림 3-2. 라이브러리 파일 압축 해제 - 도도(Dodo)

 

그림 3-2의 모습처럼 압축이 풀어진다. LiquidCrystal_I2C-Master가 설치되었다면, 아두이노 프로그래밍을 하면 된다.

 


4. 코드(Code)

 

 

 

 #include <LiquidCrystal_I2C_AvrI2C.h>
 LiquidCrystal_I2C_AvrI2C lcd(0x27, 16, 2);

 

 // 접근주소: 0x27, 16, 2 (아두이노 Uno)

 // 접근주소: 0x3F or 0x27 (아두이노 Uno)
 

 void setup()
 {
       lcd.begin();
       lcd.backlight();
       lcd.setCursor(0, 0);
 }

 void loop(){
       lcd.clear();
       delay(1000);
       lcd.print("Hello, world!"); //
       lcd.setCursor(0, 1);
       lcd.print("mutlu aysu"); //
       delay(1000);
 }

 #include <Wire.h>                        // i2C 통신을 위한 라이브러리

 #include <LiquidCrystal_I2C.h>        // LCD 2004 I2C용 라이브러리


 LiquidCrystal_I2C lcd(0x3F,20,4);     // 아두이노 메가 2560


 void setup()
 {
      lcd.init();                      // LCD 초기화
      // Print a message to the LCD.

      lcd.backlight();                // 백라이트 켜기
      lcd.setCursor(0,0);             // 1번째, 1라인

      lcd.print("Hello, world!");
      lcd.setCursor(0,1);             // 1번째, 2라인
      lcd.print("Welcome");
      lcd.setCursor(2,3);             // 4번째, 3라인
      lcd.print("DoDo");

 }


 void loop()
 {
 } 

아두이노 우노

아두이노 메가 2560

 헤더 등이 구버전 프로젝트로 추정되는 소스코드이다.

 라이브러리 폴더를 참고하길 바란다.

 

 


5. 실제 구현

 

임베디드 프로그래밍의 장면이다. 크게 어렵게 진행되진 않는다.

 

 

 

 

 

 하드웨어 작업

 소프트웨어 작업

 (Actor): 하드웨어 작업도 보면서, 동시에 키보드를 타이핑하면서 디버깅을 한다.

 그림 5-1. 임베디드 프로그래밍 작성의 예, 도도(Dodo)

 

 

[첨부(Attachment)]

180811-design.7z

 

 


6. 참고자료(Reference)

 

1. Fritzing Project, Arduino I2C LCD Display, Last Modified , Accessed by 2018-08-11, http://fritzing.org/projects/arduino-i2c-lcd-display/fab/

2. Fritzing Project, lcd-powertip-pc2004c-20x4-con-arduino, Last Modified , Accessed by 2018-08-11, http://fritzing.org/projects/lcd-powertip-pc2004c-20x4-con-arduino/fab/

3. Marcoschwartz/LiquidCrystal_I2C, Last Modified , Accessed by 2018-08-11, https://github.com/marcoschwartz/LiquidCrystal_I2C

반응형
728x90
300x250

[(기초전자실습)] Practice of AND gate through Arduino

                            <Arduino를 통한 AND 게이트 실습>

 

아두이노를 통해 And게이트를 구현하는 방법에 대해서 소개하려고 합니다.
먼저 아두이노에 관한 내용을 소개하면서 간단한 저항 읽는 방법 등의 내용으로 글을 시작하겠습니다.
= I will show you how to implement And gate through Arduino.
= First, I will start with a brief introduction to the article about Arduino and how to read simple resistance.


번호

언어

(Language)

단어(Word)

한글 읽기

뜻(Means) 

1

영어(English)

through

뜨롯

통하여

2

영어(English)

Practice

프레티스

실습, 연습, 실험

3

영어(English)

show

보이다.

4

영어(English)

brief

브리프

간결한, 무뚝뚝한

5

영어(English)

article

아티클

글, 논문, 기사, 조항, 물건, 관사




1. 아두이노 zip 타입 - 드라이버(Driver) 설치하기

 

아두이노(윈도우 버전)를 설치 또는 압축을 해제하면 아래의 그림과 같은 내용을 살펴볼 수 있습니다.

 

 

그림 1-1. Arduino 압축 해제한 폴더 내용

 

 

그림 1-2. Arduino 압축 해제한 폴더 내용(Drivers)

 

윈도우 기반에서 설치하는 경우에는 dpinst-amd64(64bit), dpinst-x86(32)을 실행하여 설치할 수 있습니다.

 

 

그림 1-3. Arduino USB Driver 설치 모습

 

그림 1-4. Arduino 드라이버 설치 완료

 

그림 1-5. Arduino 드라이버 설치 완료(USB - COM3)포트

 

 

그림 1-6. Arduino 화면

 

아두이노는 JDK 또는 JRE가 먼저 설치되어야만 동작합니다.

 


2. 부품 / 실습 도구 구성

 

다음은 부품 및 실습에 필요한 도구의 구성입니다.


                                                표 2-1. 부품 품목표

번호

(Number)

부품명(PartName)

구분(Type)

수량(Count)

비고(Remarks)

1

 브레드보드(Breadboard)

 

1개

 

2

 아두이노 Uno R3

보드(Board)

1개

 

3

 FTDI to USB 케이블

USB 케이블(Cable)

1개

 

4

 M74HC0881

And게이트(IC)

1개

 

5

LED 초록색(발광 다이오드)

LED

1개

 

6

저항

저항 (16k ohms 5%)

2개

저항색깔표,
저항색상계산기 참고

7

리드선

 

8개

 

 

 

                                                                           표 2-2. 부품 형상

 

 

 

브레드보드(BreadBoard)

아두이노 우노 보드, USB케이블

 

 

74HC08 - IC

 

 

저항 (16k ohms 5%)

 

 

2-1. 저항의 읽기(Reading resistance)

 

아래의 색깔띠를 보고 저항을 읽으면 됩니다.

You can read the resistance by looking at the color band below.

번호

언어

(Language) 

단어

(Words)

한글 읽기

뜻(Means)

1

English(영어)

resistance

레시스텐스 

저항

2

English(영어)

can

할 수 있다.

3

English(영어)

looking

룩킹

1. 으로 보이는

2.「…하게 보이는생김새가

3.. 얼굴

4

English(영어)

at the color band

엣 디 칼라

색깔 밴드에서

5

English(영어)

color

칼라

6

English(영어)

read

리드

읽다.

7

English(영어)

below

비로우

아래

 

 

 

 

그림 2-1-1. 저항 색 분류

 

그림 2-1-1을 보면, 어떻게 구체적으로 계산하는지 등은 나와있지 않습니다.
아래의 메모에는 저항색을 읽는 방법에 대해서 구체적으로 나와있습니다.
참고하기 바랍니다.

예)

띠의 색깔은 편의상 앞글자만을 따서 부르는 경우가 많다. 예를 들어 '파랑색, 회색, 갈색, 은색'으로 표시되어 있는
저항은 편의상 '파회갈은'으로 부르며, 저항값 680 옴에 오차 10퍼센트 내외라는 것을 뜻한다.


파회갈은 : 68×101옴 ±10%
빨갈빨금 : 21×102옴 ±5%
주주갈금 : 33×101옴 ±5%
갈갈검빨갈 : 110×102옴 ±1%
주흰검갈갈 : 390×101옴 ±1%


- 위키피디아 -

 


 

번호

언어

(Language) 

단어

(Words)

한글 읽기

뜻(Means)

1

English(영어)

significant

시기니피캔트

1.중요한
2.상당한
3.의미심장한
4.의미 있는
5.중대한

2

English(영어)

figures

피겨s(스),

1.모습
2.(세간에 이목을 끄는) 인물
3.모양
4.…을 숫자로 나타내다
5.…을 장식하다

3

English(영어)

black

블랙

검정색

4

English(영어)

brown

브라운

갈색

5

English(영어)

red

래드

빨강색

6

English(영어)

orange

오랜지

오랜지색

7

English(영어)

yellow

앨로

노란색

8

English(영어)

green

그린

녹색

9

English(영어)

blue

블루

파란색

10

English(영어)

violet

바이올렛

보라색

11

English(영어)

grey

그레이

회색

12

English(영어)

white

화이트

흰색

13

English(영어)

gold

골드

금색

14

English(영어)

silver

실버

은색

15

English(영어)

none

없음

16

English(영어)

Multiply

멀티플라이

곱하다.

17

English(영어)

tolerance

토레렌스

공차

18

English(영어)

Temperature

축약어:Temp

탬퍼레츄어

/탬프 

온도

19

English(영어)

 coefficient

(축약어: coeff)

코에피시언트/

코이프

계수

20

English(영어)

Fail

페일

실패

21

English(영어)

Rate

레이트

비율

 


3. 게이트 읽기(데이타시트 보는 방법)

     < Read Gate (How to view datasheet) >

 

아래의 사이트에 접속합니다.

 

 

그림 3-1. AllDataSheet.co.kr

 

그림 3-1처럼 사이트에 접속한 후 부품명을 검색합니다.

 

 

그림 3-2. 부품에 맞는 데이타시트 선택하기

 

보유하고 있는 기종의 IC에 맞는 데이타시트를 클릭합니다.

 

 

그림 3-3. 데이터시트 PDF 파일, AllDataSheets

 

그림 3-3처럼 데이터시트를 확인합니다. PDF 파일을 자세히 관찰하면 해당 부품에 대한 설계 사양도를 볼 수 있습니다.

 

 

그림 3-4. 핀 배열도

 

그림 3-4의 핀 배열도를 참고하도록 합니다.

 


4. 구현(Implements)

 

아래와 같이 브레드보드에 부품들을 체결하도록 합니다.

 

번호

 부품명

 체결 시작 위치

 체결 종료 위치

비고(Remarks) 

1

저항

게이트의 A입력단자

+

 

2

저항

게이트의 B입력단자

+

 

3

노란색 선

VCC(3.3V)

LED (긴다리) 

 

4

+ 리드선

브레드보드 (+) Ln1

아두이노의 GND(+)

 

5

- 리드선

브레드보드 (-) Ln1

VCC(3.3V)

 

6

게이트

적당한 위치

 

 

7

게이트

14번 리드선

(VCC)

14번

+

 

8

LED

다리(긴 거, 작은 거) 순서

적당한 위치 

 

9

게이트 입력Y

리드선

Y입력

LED 작은 다리

 

10

게이트 7번

리드선

(GND)

7번

-

 

 

 

 

그림 4-1. 브레드보드에 체결한 부품들, 도도(Dodo)

 

 

 

그림 4-2. 완성 코드, 도도(Dodo)


[첨부(Attachment)]

example.7z


코드 설명은 간단합니다.

HIGH로 출력할 때, 게이트 입력을 1, LOW로 표현하면 게이트는 입력 0으로 처리합니다.

 

참고로 알면 도움되는 것

- 실제로 논리회로에서 입력 A의 1, 입력 B의 1은 실제로는 1이 아닙니다.
   미세하게 파형이 움직입니다.

 

실제로 그림 4-1, 그림 4-2와 같이 구현하면, 동작하는데 반응이 특이합니다.

입력 A

입력 B

출력 Y (LED)

LOW

LOW

출력(녹색) 또는 OFF(출력 없음)

LOW

HIGH

출력(녹색)

HIGH

LOW

출력(녹색)

HIGH 

HIGH

OFF(출력 없음)



5. 참고자료(Reference)

 

1. AllDataSheet, AllDataSheet, https://www.alldatasheet.co.kr/, 접속일자 2018-07-25

2. 74HC08 데이터시트, Datasheet, 올데이터시트, https://www.alldatasheet.co.kr/view.jsp?Searchword=74HC08, 접속일자 2018-07-25

3. Arduino - Software, Arduino, https://www.arduino.cc/en/Main/Software, 접속일자 2018-07-25

4. Resistor color code, Resistorguide, http://www.resistorguide.com/resistor-color-code/, 접속일자 2018-07-25

5. 저항기, 위키피디아, https://ko.wikipedia.org/wiki/저항기, 접속일자 2018-07-25

6. looking - 다음 어학사전, http://dic.daum.net/search.do?q=looking, 접속일자 2018-07-25

7. figures - 다음 어학사전, http://dic.daum.net/search.do?q=figures, 접속일자 2018-07-25

8. article - 다음 어학사전, http://dic.daum.net/search.do?q=article, 접속일자 2018-07-25

반응형
728x90
300x250

[(기초전자실습)] 멀티미터(아날로그, 디지털) 사용하기

 

이 글은 물리에서  등을 학습하는 사람에게도 어울립니다. (간단한 부품 측정 실험 또는 실습)

또 기계 장치 등에서 전압, 옴, 암페어 등을 측정하는 경우도 있습니다. (예: 전기 용접기기 등)

전자, 전기 부품과 관련한 곳에서 공통으로 사용될 수 있을 것입니다.

좀 더 정확한 표현으로는 계측, 정밀측정기기라고 보는 것이 바람직합니다.

This article is suitable for people who are learning physics and so on.
In some cases, voltage, ohm, ampere, etc. may be measured at machinery.
Electronics, and electrical components.
As a more accurate representation, it is desirable to regard it as a measurement and precision measuring instrument.

1. 영어 단어(English Dictionary)

 

 번호

언어
(Language)

단어(Words)

한글 읽기

뜻(Means) 

1

영어(English)

Voltage

볼테이지

전압

2

영어(English)

 Ohm

저항 단위: 옴

3

영어(English)

Suitable

(미) 스르블,

(영) 스투블

적당한

4

영어(English)

ampere

암페어

암페어(전류 단위) / 기호(Symbol): A

5

영어(English)

symbol

심블

기호

6

영어(English)

measure

메셔

(치수・양 등을 표준 단위로) 측정하다
(치수・길이・양 등이) …이다
(중요성・가치・영향을) 판단하다  

7

영어(English)

Electronics

엘렉트로닉스

전자, 전자공학

8

영어(English)

precision

(미국) 프리시즌,
(영국) 프시즌

정확(성, 정밀(성), 신중하다.

9

영어(English)

accurate

(미국) 애큐레이트,

(영국) 아큐레이트

1. 정확한
2. 정밀한
3. (목표물에) 명중하는, 정확한 

10

영어(English)

Physics

(미국) 피직스,

(영국) 피식스

물리학

11

영어(English)

Regard

(미국) 리갈드,

(영국) 리과드 

1. …을 … 으로 여기다
2. (특히 어떤 감정・태도를 갖고) …을 보다
3. 관심, 고려, 배려

Regard ... as
∼을 …으로 간주하다.
…으로 여기다.

12

영어(English)

Representation

(미국) 레프레젠테이션,

(영국) 레프리젠테이션

묘사, 나타내는 것 

13

영어(English)

desirable

(미국) 디자이에블

(영국) 디자이에블

바람직한, 호감가는, 가치있는
성적 매력이 있는, 섹시한

 


2. 디지털 멀티미터와 아날로그 멀티미터
     (Digital multimeter and analog multimeter)


 

 

그림 1-1, 아날로그 멀티미터기(계측기기)

그림 1-2, 디지털 멀티미터기(계측기기)


점퍼선을 그림과 같이 꽂아줍니다.
그리고 DCV를 측정할 것인지, 암페어를 측정할 것인지, 볼트를 측정할 것인지 세부적인 것을 돌려서 맞춥니다.
측정 대상물에 찍어보도록 합니다.

참고로 아날로그 멀티미터기는 TR(트랜지스터)의 NPN, PNP형을 찾아내는 기능도 있습니다.



2. 참고자료(Reference)

 

1. Measure, 네이버 어학사전, https://dict.naver.com/search.nhn?dicQuery=measure&query=measure&target=dic&ie=utf8&query_utf=&isOnlyViewEE=, Accessed by 2018-07-25

2. Regard, 네이버 어학사전, https://dict.naver.com/search.nhn?dicQuery=regard&query=regard&target=dic&ie=utf8&query_utf=&isOnlyViewEE=, Accessed by 2018-07-25

3. Accurate, 네이버 어학사전, https://dict.naver.com/search.nhn?dicQuery=accurate&query=accurate&target=dic&ie=utf8&query_utf=&isOnlyViewEE=, Accessed by 2018-07-25

4. Representation, 네이버 어학사전, https://dict.naver.com/search.nhn?dicQuery=representation&query=representation&target=dic&ie=utf8&query_utf=&isOnlyViewEE=, Accessed by 2018-07-25
5. Regard...as, 네이버 어학사전, https://dict.naver.com/search.nhn?dicQuery=Regard+...+as&query=Regard+...+as&target=dic&ie=utf8&query_utf=&isOnlyViewEE=, Accessed by 2018-07-25

반응형

+ Recent posts