IT를 품은 기계공학도

아름돌이의 아두이노 강좌 (1) :: 아두이노 소개 및 IDE 다운로드 본문

아름돌이의 아두이노 강좌

아름돌이의 아두이노 강좌 (1) :: 아두이노 소개 및 IDE 다운로드

아름돌이 2020. 11. 9. 01:00

※ 본 포스팅은 아두이노를 처음 시작하는 분들을 위하여 작성되었습니다.

아두이노란 무엇인가?

아두이노는 MCU(Micro Controller Unit)의 일종으로 입력을 받거나 내부적으로 연산하여 출력부로 나가는 신호를 제어하는 역할을 합니다.

출처 : [메카솔루션] http://Mechasolution.com

쉽게 말하자면 일종의 뇌의 역할을 합니다. 날아오는 공을 잡는 과정으로 비유해보겠습니다. 우선 나에게 날아오는 공을 눈으로 봅니다(입력) 그런 다음에 저희는 판단을 합니다. 어느 시점에서 몇 초 뒤에 손을 뻗고 잡아야 공이 잡힐지를 계산합니다(연산) 그 후 뇌가 손에게 명령을 하여 손을 뻗어(출력) 공을 잡습니다.

"아두이노는 뭔가 잘 모르겠지만.. 생각하는 부분, 연산하는 부분, 명령하는 부분을 담당하고 있구나!"

 

정도로만 이해하시고 넘어가시면 됩니다. 더 자세한 내용은 아두이노와 좀 더 친해진 뒤 해도 늦지 않으니까요.

 

그럼 아두이노를 구성하는 요소들을 한번 살펴볼까요?

아두이노의 구성

아두이노의 구성요소를 아주 크게 나눠본다면 다음과 같습니다.

 

1. 연산이 실제로 일어나는 부분인 ATmega(CPU)

2. 액추에이터(손,발)이나 센서(눈, 귀, 혀)가 작동할 수 있는 전원을 공급하는 전원

3. 엑추에이터(손,발)에 명령을 주고 센서(눈, 귀, 혀)로 받은 정보를 아두이노(뇌)에 전달해주는 입출력 핀, 아날로그 입력핀

4. 아무 생각이 없는 아두이노(뇌)에 생각을 넣어줄 수 있는 USB소켓

5. 뇌가 작동할 수 있게 전원을 공급하는 외부 전원 소켓

 

아두이노에 생각을 불어넣는 IDE

아두이노는 앞서 말했듯 뇌의 역할을 합니다. 하지만 아두이노는 어떻게 보면 한낱 컴퓨터에 불과합니다. 저희가 아두이노에 생각을 불어넣어주기 전까지는 아두이노는 아무런 생각도 하지 못하고 아무런 행동도 하지 못합니다. 그럼 이러한 아두이노에 어떻게 생각을 넣어줄까요?

 

바로 IDE(통합개발환경)를 통해 아두이노에 전달할 생각을 코딩한 뒤 USB 소켓을 통해 아두이노에 생각을 불어넣습니다.

 

"잠시만요! IDE라는 말이 뭔지 모르겠어요. 뭐에 쓰는 건가요?"

 

IDE(Integrated Development Environment)는 통합 개발 환경으로

 

1. 코딩을 할 수 있는 편집기(Editor)

2. 내가 한 코딩을 아두이노가 알아들을 수 있는 말(기계어)로 바꿔주고 틀린 부분이 있으면 알려주는 컴파일러(Compiler)

3. 아두이노에게 전달해주는 업로더(Uploader)

 

위 세 가지 기능이 합쳐진 것입니다. 

쉽게 말해 복잡한 과정 없이 IDE하나로 명령을 만들고 아두이노에게 전달하는 과정이 통합적으로 이루어지게 됩니다.

새로 접하는 용어가 너무 생소하고 어렵겠지만 지금은

 

"컴퓨터에서 내가 IDE를 통해 아두이노에게 넣어줄 생각을 프로그래밍(코딩) 하는구나. 또한 내 명령을 기계가 알아들을 수 있도록 기계어로 번역해주는 컴파일 과정을 거치고 이 결과물을 아두이노에게 전달(업로드) 해주면 되는구나!"

 

라고 이해하신다면 충분합니다.

IDE 다운로드

우선 본격적인 사용을 위하여 IDE를 다운로드하여줍니다.

www.arduino.cc/en/software

 

Software

Open-source electronic prototyping platform enabling users to create interactive electronic objects.

www.arduino.cc

위 사이트에 들어간 뒤, 바로 보이는 DOWNLOAD화면에 자신의 운영체제에 맞는 IDE를 다운로드하여줍니다.

다운로드 후 따로 선택할 것 없이 쭉쭉 다음 눌러서 설치해주시면 됩니다. IDE를 실행하시면 다음과 같이 창이 뜬다면 설치 완료입니다.

 IDE에 대한 더 자세한 설명과 프로그래밍은 다음 포스팅에서 이어나가겠습니다.

Comments