아두이노 IDE  : 통상 아두이노 사이트에서 제공하는 아두이노 IDE( Integrated Development Environment : 통합개발환경 )를 활용하여 아두이노 관련 개발을 하고 여기에서 작성되는 프로그램을 스케치라고 한다. 이때 사용하는 언어가 C 언어이다. 

 

 

 

스크래치? : 위 아두이노 IDE에서 사용하는 프로그램 C언어가 어려운 사람들을 위해 미국 MIT 미디어랩에서 명령어 블록들을 가지고 레고조립하듯이 그림 연결하기 방식으로 프로그래밍하는 도구를 보급하고 있는데, 이를 스크레치라고 한다. 스크래치를 이용해도 기본적인 아두이노 프로그래밍은 가능하나 한계가 있고, C언어에 조금만 익숙해지면 아두이노IDE가 오히려 사용하기 간편하다.   

 

 

PC에 아두이노 IDE 설치하기

 

   http://www.arduino.cc 에 접속하여 Download메뉴에서 IDE를 다운받아 설치한다.

    -  화면 아래 왼쪽의 JUST DOWNLOAD를 눌러 다운로드 받으면 된다.

    -  설치 진행중 driver 설치하겠냐는 질문에 예로 계속 진행

    -  설치가 완료되면 바탕화면에 Arduino 아이콘이 생성된다.

 

 

 

아두이노 IDE 사용하기

 

 

 

a. 컴파일 버튼 : 소스코드 편집기에 있는 내용을 컴파일한다.  소스코드에 문법적인, 구조적인 에러가 없는지 확인하여 메시지 영역에 표시된다.

b.업로드 버튼 : 컴파일 + 업로드를 일괄작업 실행한다. 소스를 컴파일해서 아두이노에  올려주는 과정까지 이 버튼 하나로 실핸된다. 소스코드에 문제가 있거나 아두이노와의 USB 연결에 문제가 있거나 업로드 과정에 문제가 있는 경우 메세지 영역에 표시된다.

c.시리얼 모니터 버튼 : 이버튼을 누르면 별도의 시리얼모니터 창이 표시된다.  USB로 아두이노와 연결된 상태로 아두이노가 동작하면 아두이노에서 PC로 메시지를 보낼 수 있는데 이 Serial Monitor를 통해 그 메시지를 확인할 수 있으므로 보통 디버깅 용도로 사용한다.

d.소스코드 편집기 : 아두이노 소스코드를 일력하고 편집하는 영역.

e.메시지 영역 : 아두이노 개발환경을 사용하면서 발생하는 알림 메시지나 컴파일, 업로드 결과 등등 메시지가 표시되는 영역.

 

 예제 프로그램 실행해 보기 

 

1. 위 그림처럼 [파일 - 예제 - 01.Basics - Blink] 를 선택한다. 그러면 소소코드 편집기에 새로운 프로그램 소스코드가 불려져 온다.

 

2. 사용할 보드 종류를 선택하고 USB케이블로 아두이노 나노를 연결하면 [툴 - 포트] 영역에 새로 포트번호가 표시되는데 이를 선택한다.

3. [업로드] 버튼을 클릭하면 컴파일 및 업로드 과정이 진행되고 잠시후에 메세지영역에 완료되었다는 메세지가 표시되고 작동이 시작된다.  


      즉, 아두이노나노 보드에 있는 붉은색 LED가 1초간격으로 깜박이기 시작한다.  

 

예제프로그램 설명

 

아두이노 프로그램은 기본적으로 setup함수(1~4 line), loop 함수(6~12line) 두개의 함수로 구성된다.
 
- setup 함수 : 아두이노에 전원이 들어오거나 reset 되었을 때 처음 1회만 실행되는 함수. 따라서 아두이노가 가진 pin 들을 초기화하거나 소스코드내에서 사용되는 변수 및 각종 하드웨어를 초기화 하는 코드를 작성한다.

- loop 함수: setup이 실행된 후 무한반복해서 호출되는 함수이다. 즉, 아두이노가 작동되는 동안 계속해서 반복 수행할 일의 내용을 지정하는 동작코드를 작성한다.

- 전역변수나 라이브러리 헤더include문 등 선언사항은 setup함수 윗부분에 작성한다.

 

 

3 line : 디지털 13번핀을 OUTPUT모드로 선언한다. (13번핀은 보드상의 LED와 연결되어 있다. 즉 별도의 하드웨어 연결없이 즉석에서 예제를 실행해보기 위해 보드상의 LED를 출력용으로 사용하겠다는 의미이다.)

9 line : 13번핀으로 HIGH신호 즉 5V 전압을 출력하라는 명령. 실행되면 보드상의 붉은색 LED가 켜진다.

10 line :  1000밀리세컨드 즉 1초 동안 대기하라는 명령. 윗줄에서 LED가 켜진 상태로 1초간 대기하게 된다.

11~12 line : 13번 핀에 LOW신호(0V)출력, 즉 LED를 끄고 1초간 대기하라는 명령이다.

-loop()함수 안에 있는 9~12 line명령이 반복 실행되므로 LED는 1초간격으로 켜졌다가  꺼지는 동작을 계속 반복하게 된다.    

 

 

 

예스이십사

 

nefing.com

 

 

컬러별 LED 전구 사양

 

 

- LED 전구의 컬러별로 허용전압이 2.3~4.0V 이므로 아두이노 출력핀에서 나오는 5V를  그대로 연결해서는 안되고, 반드시 저항(200~300 ohm)을 달아 전압을 낮추어 주어야 한다. 


- 특히 백색/청색에 비해 적색/황색이 허용전압이 낮으므로 적색LED를 아두이노5V  출력핀에 직접 연결하면 순간적으로 망가져 버린다.

 

 

 

- LED 전구는 + / - 극성이 있으므로 잘 구분해서 연결해야 한다.

 
- 다리가 조금 긴 쪽이  +로서 출력핀 단자에 연결하고 반대쪽을 -(GND)에 연결해야 한다

 

 

 

주의사항 : 아두이노 우노  또는 나노의 출력핀은 5V전압, 40mA 까지 사용할 수 있으므로 위와 같은 LED전구 정도는 직접 연결 하여 사용할 수 있으나, 후레쉬용 LED 전구와 같이 대용량 전류가 필요한 LED 전구을 직접 연결하면 과전류가 흘러 아두이노가 정지되거나 아두이노가 망가질수 있으므로 릴레이 등 다른 방법으로 구동시켜야 한다.  

 

 

아두이노로 LED전구 사용하기

 

 

아두이노와의 연결

 

- 다음과 같이 -극은 GND에 +극은 저항을 통해 13번 핀에 연결해 본다.

 

- 아두이노 우노나 나노는 보드에 내장되어 있어 깜박이는 LED는 내부적으로 13번 핀과 연결되어 있다. 따라서 아래와 연결만 해도 아두이노에 전원을 넣는 등 작동될 때 보드내에서 깜박이는 LED와 방금 연결한 LED는 동시에 연동되어 깜박이게 된다.  

 

 

 

프로그램 샘플

 

1 line : 13번 핀을 사용하기 위해 이름을 pinRed라고 지정한다.  여기에서는 내장LED와의 연동을 확인하기 위해 13번 핀을 사용했으나 다른 핀을 사용해도 된다.


4 line: pinRed을 출력용으로 사용하겠다고 선언한다.


5 line: 처음에는 LOW값(0V)를 주어 LED전구를 끈 상태로 시작한다.


9~11 line : 붉은색 전구를 켜고 1초 대기한 후 끈다. 


12 line : 1초 대기후 위 작업을 반복한다. 즉 1초간격으로 점멸하게 된다.

 

 

PC에서의 입력장치는 키보드와 마우스가 기본적으로 사용된다. 그런데 이 키보드나 마우스는 사용하기 위해서는 많은 자원을 사용해야 하고 크기도 크기 때문에 아두이노에 부착해서 사용하기는 곤란하다. 따라서 아두이노환경에서는 좀 더 원시적이고 간단한 구조의 키패드를 주로 사용하는데, 입력할 수 있는 키의 종류는 제약되지만  두꼐 매우 얇아 기기에 부착하기 쉽고 가격도 저렴하다.       

 

아두이노 키패드의 구성과 작동원리

 

 

 위 그림은 가로 4줄, 세로 4줄의 전선을 이용하여 4X4=16개의 접점을 스위치처럼 구분하여 인식함으로써 16가지 입력을 구분하여 처리할 수 있는 입력장치의 예이다. 즉,1번 버튼을 누르면 8번핀과 4번핀,  2번 버튼을 을 누르면 8번핀과 3번핀이 쇼트되므로 8개 핀이 어떻게 쇼트되어 연결되는지 check하면 16개 버튼중 어느 버튼을 눌렀는지 확인할 수 있다.

 

아두이노 키패드의 종류 : 위와 같은 4x4 형대 이외에도 4X5배열로 20개 입력을 구분할 있는 키패드, 한줄짜리 키패드등 다양한 형태들이 출시되어 있으므로 용도별로 원하는 크기의 키패드를 선택하여 사용할 수 있다.

 

 

 

 

아두이노 키패드 사용방법

 

1) 라이브러리 설치

 

- keypad 기능 사용을 위한 전용 라이브러리를 추가로 설치해 주어야 한다.


- IDE 스케치 메뉴 -> 라이브러리 포함하기 -> 라이브러리관리하기 화면에서  "keypad" 를 검색하여 설치한다.

 

 

2) 아두이노와의 연결.

 

 

 

위 그림과 같이 암-암 듀폰케이블등을 사용하여  아두이노 2번 핀부터 차례로 8개의 입력핀에 연결한다. 

 

 

3) 아두이노 프로그램 샘플.

 

 

1 line : 키패드 라이브러리를 사용하기 위해 헤더파일을 지정한다.

2~8 line: 가로4줄 X 세로 4줄 키패드상의 버튼을 눌렀을 때 선택할 문자를 정의한다.

9~10 line : 가로줄과 세로줄의 연결핀들을 정의한다.

11 line :  customKeypad 라는 이름으로 4 x 4 키패드 장치를 선언하여 사용한다.

15 line : 시리얼통신을 시작한다. 여기에서 지정하는 9600이라는 통신속도와 시리얼 모니터  에서 선택하는 속도가 일치해야만 정상적으로 문자들이 표시된다.  

18 line :  customKeypad 라는 장치에서 한글자를 읽어 keypressed라는 변수에 저장한다.

20~23 line: 읽어 들인 문자가 있을 경우 serial장치 즉, 시리얼모니터화면에 표시한다.

 

 

+ Recent posts