티스토리 뷰

반응형

안녕하세요. 09Labs입니다.

2013년도 즈음 아두이노라는 보드가 갑자기 우리나라에 들이닥친 적이 있었습니다.

저는 AVR을 이용하여 작품을 제작했던 터라 상당히 어려운 부분이 많았습니다.

학교선배의 장난으로 AVR로 라인트레이서를 만들어 보라는 과제도 받았었지만 번번히 실패하고 말았답니다.

 

우연히 2013년 융합과학 창작 경진대회에 아두이노를 활용한 작품을 제작하여 수상하기도 했습니다.

놀라웠던 것은 우리나라에 들어오기 전 부터 이미 해외에는 수많은 자료가 존재했었습니다. 우스개 소리로

외국에 Single Ladies가 유행한 지 2년이 지난 후에 우리나라에 알려지기 시작한 것과 같이 상당히 우리나라는 

새로운 문물에 대한 유입이 느린듯 합니다. (개인적인 의견이니 너무 진지하게 받아들이지 않았으면 하네요;;)

 

여튼 서론이 길었습니다. 아두이노란 무엇일까요?

아두이노의 시작은 2005년도에 처음 고안되었습니다. 아두이노에는 Atmel 사의 AVR 계열 

마이크로 컨트롤러가 많이 사용됩니다.

 

<그림 1-1 : 아두이노 로고>

 

 

<그림 1-2 : 아두이노 UNO R3>

 

위의 사진은 아두이노 UNO R3라는 모델인데요, 이 모델에는 Atmega328P-PU라는 AVR 마이크로 컨트롤러가 사용됩니다.

R3라는 단어가 붙은 것은 Rev3, 즉 3번째 버전이라는 뜻인데요, Rev 2모델과 비교해보겠습니다.

 

 

<그림 1-3 : Arduino UNO R3과 Arduino UNO R2의 비교>

자 왼쪽이 UNO R3, 오른쪽이 UNO R2입니다.

별로 큰 차이는 안보이고 USB 업로드용 칩인 Atmega16AU2-MU의 방향이 조금 다른것, 리셋버튼의 위치입니다.

가장 큰 차이점이라고 하면 UNO R3에는 AREF핀 왼쪽에 SLA, SDA핀이 추가된 것이랄까요?

원래 아두이노는 A4, A5핀이 I2C 통신을 하기 위한 용도로 사용되었습니다. 조금 더 편의를 봐준 것이라고 할 수 있겠네요.

두 버전의 큰 차이점은 없으니 아무 아두이노 보드나 구입해도 괜찮습니다 :)

 

이렇게 봐서는 무슨 역할인지 잘 모르겠지요? 

우리 실생활 주변에 사용되는 모든 전자제품 안에는 아주 조그만 컴퓨터가 장착되어 있습니다.

자동차에도 사용자의 운전 습관과 엔진에 연료 분사량을 조절하고, 변속 타이밍을 조절하는 컴퓨터가 들어가있고요, 

모니터, TV에도 디스플레이에 정보를 뿌려주는 컴퓨터가 들어가있습니다. 심지어 냉장고나 전화기에도 들어가있지요.

 

아두이노는 한마디로 말하자면 아주 작은 컴퓨터입니다.

내장된 프로그램의 명령에 따라서 동작하는 컴퓨터이지요.

아마 지금쯤 저렇게 조그만 컴퓨터가 어딨어? 이렇게 생각하시겠지만 아두이노 메인 칩의 구조도는 아래와 같습니다.

<그림 1-4 Arduino Leonardo 내부구조도>

 

이것도 아주 간단하게 표현된 것이라 이정도지만, 실제로 안에는 수많은 트랜지스터로 구현되어있습니다.

AVR도 정해진 명령을 수행할 수 있는 컴퓨터라고 할 수 있습니다. 다만, 운영체제를 돌리거나 게임을 하는 등 

고수준 작업에는 적합하지 않은 컴퓨터라고 보면 됩니다.

 

아두이노에는 장점이 상당히 많습니다. 한 2~3가지를 살펴볼까요?

 

1. 저렴한 가격

AVR이나 ARM과 같은 실습용/개발용 보드를 보면 꽤 비싼 가격대에 형성되어있으며, 제가 수업시간에 사용하는

FPGA는 수백 ~ 수천만원에 호가하는 제품도 있다고 합니다. 아두이노는 오픈소스로 공개되어있어

다양한 업체에서 호환 보드로 생산하는 제품이 많습니다. 해외 직구를 통해서 구입하면 $2로 안하는 가격에

아두이노를 구입할 수 있습니다.

 

2. Cross Platform

FPGA나 ARM, AVR 개발용 IDE는 맥에서 돌아가지 않는 경우가 있습니다. 대부분 윈도우에 최적화 되어있죠.

때문에 FPGA를 개발하려면 어쩔 수 없이 윈도우에서 작업하곤 했습니다. 아두이노는 개발 툴이 다양한 운영체제를

지원하기 때문에 운영체제에 따라서 보드를 교체하거나 개발 툴을 따로 구입할 필요가 없습니다.

윈도우, MAC OSX, 심지어 리눅스까지 지원합니다.

 

3. USB 지원여부

아두이노 펌웨어(프로그램)을 모두 프로그래밍 했으면, 아두이노 보드에 주입해야합니다.

보통 AVR, ARM는 개발용 디버거를 따로 필요로 합니다. 저렴한 것도 있지만 3~4만원을 넘기도 하죠.

아두이노의 개발용 디버거는 따로 없으며, 아두이노에 USB 포트가 장착되어있으며,

아두이노 IDE를 설치하면 자동으로 드라이버가 설치되기 때문에 드라이버를 별도로 설치할 필요가 없습니다.

 

이러한 여러 이점때문에 요즘은 간단한 제품을 만들 때 아두이노를 사용하곤 합니다.

다음 강좌에서는 아두이노의 종류와 기본 사용법에 대해 알아보도록 하겠습니다.

반응형

'Arduino > Arduino 강좌' 카테고리의 다른 글

[아두이노] 3. Blink 예제  (0) 2020.01.12
[아두이노] 2. 아두이노 구조와 종류  (4) 2017.05.05
반응형
공지사항
최근에 올라온 글
최근에 달린 댓글
Total
Today
Yesterday
링크
«   2024/05   »
1 2 3 4
5 6 7 8 9 10 11
12 13 14 15 16 17 18
19 20 21 22 23 24 25
26 27 28 29 30 31
글 보관함