아두이노: 두 판 사이의 차이

잔글편집 요약 없음
편집 요약 없음
1번째 줄: 1번째 줄:
Arduino
'''아두이노'''(Arduino)는 [[이탈리아]]{{ㅊ|중국}}에서 만들어진 마이크로 컨트롤러. 보편화된 모델은 아두이노 우노 (UNO) R3이다. 보통은 정품이 매우 비싸기 때문에 호환 보드를 쓴다. 4만 원 이상 차이날 때도 있다!<ref>회로도 및 기판 배치, 프로그램 라이브러리 등 각종 정보를 [[크리에이티브 커먼즈 라이선스]]로 전부 풀어놨기 때문에, 약간의 관련지식만 있으면 똑같은 성능의 카피 보드를 누구나 만들 수 있다.</ref>
[[이탈리아]]--중국--에서 만들어진 마이크로 컨트롤러. 보편화된 모델은 아두이노 우노 (UNO) R3이다. 보통은 정품이 매우 비싸기 때문에 호환 보드를 쓴다. 4만원 이상 차이날 때도 있다!<ref>회로도 및 기판배치, 프로그램 라이브러리 등 각종 정보를 CCL로 전부 풀어놨기 때문에, 약간의 관련지식만 있으면 똑같은 성능의 카피보드를 누구나 만들 수 있다.</ref>
 


==장점==
==장점==
* 프로그래밍이 비교적 쉽다. 원래 마이크로프로세서를 다루기 위한 과정에서 필수인 엄청난 숫자의 레지스터(및 그 관련 문서)를 건드리지 않고서도 아두이노 라이브러리만으로도 어느정도 프로그래밍이 가능하다. 거기다가 라이브러리 자체가 유저친화적인 설계나 하위호환성 등의 이유로 굉장히 간결하다.  
* 프로그래밍이 비교적 쉽다. 원래 마이크로프로세서를 다루기 위한 과정에서 필수인 엄청난 숫자의 레지스터(및 그 관련 문서)를 건드리지 않고서도 아두이노 라이브러리만으로도 어느 정도 프로그래밍이 가능하다. 거기다가 라이브러리 자체가 유저친화적인 설계나 하위 호환성 등의 이유로 굉장히 간결하다.  
* 유저베이스가 넓다. 포럼이 매우 활성화 되어있고, 초부부터 고수까지 어마어마한 숫자의 유저들이 전세계에 포진해 있다. 덕분에 막히는 점이 있을 때 이런저런 도움을 받기가 쉽다.
* 유저 베이스가 넓다. 포럼이 매우 활성화 되어있고, 초부부터 고수까지 어마어마한 수의 유저들이 전 세계에 포진해 있다. 덕분에 막히는 점이 있을 때 이런저런 도움을 받기가 쉽다.
* 기능확장이 쉽다. 유저베이스가 넓기 때문에(=돈이 되기 때문에) 확장보드가 많다. 왠만한 마이크로프로세서 자작에 쓰일법한 통신모듈, 센서모듈, 액추에이터 모듈들은 아두이노 쉴드Arduino Shields라는 이름으로 검색해보면 다 나온다.
* 기능 확장이 쉽다. 유저베이스가 넓기 때문에(=돈이 되기 때문에) 확장 보드가 많다. 왠만한 마이크로프로세서 자작에 쓰일 법한 통신 모듈, 센서 모듈, 액추에이터 모듈들은 아두이노 쉴드(Arduino Shields)라는 이름으로 검색해보면 다 나온다.
==단점==
==단점==
* 성능이 영 좋지않다. 실제 동작속도가 그다지 빠르지 않은 AVR기반의 프로세서<ref>Due같은, 고성능 프로세서를 쓰는 버전도 있기는 하다</ref>에다가, 아두이노를 돌리기 위한 시스템 오버헤드도 있다.  
* 성능이 영 좋지 않다. 실제 동작 속도가 그다지 빠르지 않은 AVR 기반의 프로세서<ref>Due 같은, 고성능 프로세서를 쓰는 버전도 있기는 하다.</ref>에다가, 아두이노를 돌리기 위한 시스템 오버헤드도 있다.  
* 고급 기능을 쓰기 힘들다. 초보자들도 프로그래밍을 쉽게 하기위해 선택한 라이브러리의 간결함이 결국 고급기능을 지원하지 않기 때문에, HW상으론 가능한 고급기능들이 기본라이브러리만으로는 구현할 수 가 없다. 오히려 기본라이브러리에서 어설프게 건드린 레지스터가 족쇄가 되어 프로그램이 더욱 복잡해질 여지도 많다.  
* 고급 기능을 쓰기 힘들다. 초보자들도 프로그래밍을 쉽게 하기 위해 선택한 라이브러리의 간결함이 결국 고급 기능을 지원하지 않기 때문에, HW상으론 가능한 고급 기능들이 기본 라이브러리만으로는 구현할 수가 없다. 오히려 기본 라이브러리에서 어설프게 건드린 레지스터가 족쇄가 되어 프로그램이 더욱 복잡해질 여지도 많다.  


== 사용 동향 ==
== 사용 동향 ==
고급 사용자들에겐 단점이 많지만, 이는 결국 성능과 접근성 사이의 선택에 의한 결과이다. 저 많은 단점에도 불구하고 아두이노가 유행하는 이유는 프로그래밍이나 임베디드시스템에 대한 지식이 전혀없는 사람도 며칠만 고생하면 각종 센서와 액추에이터로 꽤 그럴싸한 물건을 만들 수 있을 정도의 쉬운 난이도를 자랑하기 때문이다. 덕분에 취미로 임베디드 시스템을 입문하려는 사람이나 공학적 소양이 거의 없는 예술분야에서 활용하는 사람들이 많이 찾고, 또 유용하게 사용한다.
고급 사용자들에겐 단점이 많지만, 이는 결국 성능과 접근성 사이의 선택에 의한 결과이다. 저 많은 단점에도 불구하고 아두이노가 유행하는 이유는 프로그래밍이나 임베디드 시스템에 대한 지식이 전혀없는 사람도 며칠만 고생하면 각종 센서와 액추에이터로 꽤 그럴싸한 물건을 만들 수 있을 정도의 쉬운 난이도를 자랑하기 때문이다. 덕분에 취미로 임베디드 시스템을 입문하려는 사람이나 공학적 소양이 거의 없는 예술 분야에서 활용하는 사람들이 많이 찾고, 또 유용하게 사용한다.
그러나 결국, 복잡한 동작을 하기 위해서는 아두이노만으로는 만족하지 못하는 순간이 온다. <del>근데 사실 뭘 써도 100% 만족할수는 없다. 시간 노력 돈의 트레이드오프가 있을 뿐</del>요구하는 동작이 복잡해지고 타이밍이 빠듯해질 수록 결국 모자라는 성능을 위해 기존 라이브러리를 대체/우회하게되고, 그러다보면 [[라즈베리 파이]] 같은 비슷한 분야의 더 성능이 좋은  프로세서로 옮겨가는 경우가 많다.


그러나 결국, 복잡한 동작을 하기 위해서는 아두이노만으로는 만족하지 못하는 순간이 온다. <del>근데 사실 뭘 써도 100% 만족할 수는 없다. 시간 노력 돈의 트레이드오프가 있을 뿐</del>요구하는 동작이 복잡해지고 타이밍이 빠듯해질 수록 결국 모자라는 성능을 위해 기존 라이브러리를 대체/우회하게되고, 그러다보면 [[라즈베리 파이]] 같은 비슷한 분야의 더 성능이 좋은  프로세서로 옮겨가는 경우가 많다.


{{각주}}
[[분류:컴퓨터]]
[[분류:컴퓨터]]

2016년 12월 1일 (목) 06:45 판

아두이노(Arduino)는 이탈리아중국에서 만들어진 마이크로 컨트롤러. 보편화된 모델은 아두이노 우노 (UNO) R3이다. 보통은 정품이 매우 비싸기 때문에 호환 보드를 쓴다. 4만 원 이상 차이날 때도 있다![1]

장점

  • 프로그래밍이 비교적 쉽다. 원래 마이크로프로세서를 다루기 위한 과정에서 필수인 엄청난 숫자의 레지스터(및 그 관련 문서)를 건드리지 않고서도 아두이노 라이브러리만으로도 어느 정도 프로그래밍이 가능하다. 거기다가 라이브러리 자체가 유저친화적인 설계나 하위 호환성 등의 이유로 굉장히 간결하다.
  • 유저 베이스가 넓다. 포럼이 매우 활성화 되어있고, 초부부터 고수까지 어마어마한 수의 유저들이 전 세계에 포진해 있다. 덕분에 막히는 점이 있을 때 이런저런 도움을 받기가 쉽다.
  • 기능 확장이 쉽다. 유저베이스가 넓기 때문에(=돈이 되기 때문에) 확장 보드가 많다. 왠만한 마이크로프로세서 자작에 쓰일 법한 통신 모듈, 센서 모듈, 액추에이터 모듈들은 아두이노 쉴드(Arduino Shields)라는 이름으로 검색해보면 다 나온다.

단점

  • 성능이 영 좋지 않다. 실제 동작 속도가 그다지 빠르지 않은 AVR 기반의 프로세서[2]에다가, 아두이노를 돌리기 위한 시스템 오버헤드도 있다.
  • 고급 기능을 쓰기 힘들다. 초보자들도 프로그래밍을 쉽게 하기 위해 선택한 라이브러리의 간결함이 결국 고급 기능을 지원하지 않기 때문에, HW상으론 가능한 고급 기능들이 기본 라이브러리만으로는 구현할 수가 없다. 오히려 기본 라이브러리에서 어설프게 건드린 레지스터가 족쇄가 되어 프로그램이 더욱 복잡해질 여지도 많다.

사용 동향

고급 사용자들에겐 단점이 많지만, 이는 결국 성능과 접근성 사이의 선택에 의한 결과이다. 저 많은 단점에도 불구하고 아두이노가 유행하는 이유는 프로그래밍이나 임베디드 시스템에 대한 지식이 전혀없는 사람도 며칠만 고생하면 각종 센서와 액추에이터로 꽤 그럴싸한 물건을 만들 수 있을 정도의 쉬운 난이도를 자랑하기 때문이다. 덕분에 취미로 임베디드 시스템을 입문하려는 사람이나 공학적 소양이 거의 없는 예술 분야에서 활용하는 사람들이 많이 찾고, 또 유용하게 사용한다.

그러나 결국, 복잡한 동작을 하기 위해서는 아두이노만으로는 만족하지 못하는 순간이 온다. 근데 사실 뭘 써도 100% 만족할 수는 없다. 시간 노력 돈의 트레이드오프가 있을 뿐요구하는 동작이 복잡해지고 타이밍이 빠듯해질 수록 결국 모자라는 성능을 위해 기존 라이브러리를 대체/우회하게되고, 그러다보면 라즈베리 파이 같은 비슷한 분야의 더 성능이 좋은 프로세서로 옮겨가는 경우가 많다.

각주

  1. 회로도 및 기판 배치, 프로그램 라이브러리 등 각종 정보를 크리에이티브 커먼즈 라이선스로 전부 풀어놨기 때문에, 약간의 관련지식만 있으면 똑같은 성능의 카피 보드를 누구나 만들 수 있다.
  2. Due 같은, 고성능 프로세서를 쓰는 버전도 있기는 하다.