본문 바로가기
KIPFA 교육센터/정규교육

[피지컬 컴퓨팅_Physical computing] 상상을 현실로 만드는 플랫폼

by kipfanews 2014. 6. 26.

[피지컬 컴퓨팅_Physical computing상상을 현실로 만드는 플랫폼 


피지컬 컴퓨팅을 할 수 있는 기기는 두 가지가 있습니다.


아두이노(Arduino)와 라즈베리파이((Raspberry Pi)입니다. 그럼 하나씩 알아볼까요.


첫 번째 아두이노에 대해 알아보도록 하겠습니다.


아두이노란 무엇일까? 간단하게 말해보면 아주 작은 소형 컴퓨터라고 볼 수 있습니다.

이 아두이노엔 아트멜사의 AVR이라는 8Bit 마이크로컨트롤러가 들어가 있습니다. 우리가 주변에서 흔히 볼 수 있는 전광판, 세탁기, 에어컨 등 전자제어가 필요한 기기에서 중추적인 역할을 하는 녀석이죠.


일반적인 상황에서 이 AVR을 이용해 개발하기란 쉽지 않은 일입니다. 하지만 아두이노는 누구나 쉽게 이를 이용하여 개발할 수 있는 환경을 만들어줍니다.


단지 아두이노를 USB로 컴퓨터에 연결하고, 전용 개발 툴(mac os x)에 프로그램 코드를 작성해서 ‘실행’하면 됩니다.


이렇게 쉽게 개발할 수 있다는 장점 때문인지, 개발자뿐만 아니라 디자이너, 예술가 그리고 학생까지 아두이노에 많은 관심을 보이고 있습니다. 또 이를 이용해 가전, 패션, 예술 등 다양한 분야에서 아두이노가 맹활약하고 있죠.





Arduino DUE

[출처]arduino.cc






그럼 아두이노로 무엇을 할 수 있을까요? 궁금하시죠. 정말 상상하는 모든 것을 만들 수 있습니다.


예를 들어, 아두이노에 습기를 측정할 수 있는 센서와 네트워크 모듈을 연결하여 화분에 물이 없으면 물을 달라는 트윗을, 물을 주면 고맙다는 트윗을 하는 장치를 만들 수 있습니다.


또 현재 집의 온도를 측정하여 서버에 기록을 한다던가, 전기적 스위치인 릴레이를 부착하여 특정 조건에 따라 방에 불을 켜고 끄는 일도 할 수 있죠.






화분에 물을 주면 thank!트윗을 날리는 장치

*출처:makezine.com





약간의 전기지식만 있다면 시중에 나와 있는 모든 전자부품을 사용하여 재미있는 장치를 만들어 볼 수 있답니다.


[출처] http://funsmartlife.com/arduino/


그럼 이번에 두 번째로 라즈베리파이에 대해서 알아볼까요.


라즈베리 파이(Raspberry Pi)는 한 마디로 컴퓨터입니다. 키보드와 마우스, 모니터를 연결하여 네트워크에 연결하고 프로그래밍을 할 수 있으니 컴퓨터이지요. 


컴퓨터라면 운영체제가 있겠죠. 라즈베리 파이의 운영체제는 라즈비안(Raspbian)입니다. 바로 이 점이 아두이노와 다릅니다. 


라즈비안 이름이 이상하죠? 라즈베리 파이와 데비안을 합친 말입니다. 데비안은 아시다시피 리눅스 배포판의 한 갈래입니다. 다시 말해, 라즈베리 파이는 리눅스가 운영체제인 컴퓨터입니다.


도대체 "라즈베리파이가 무엇인가?”


자세하게 시작하기 전에 깔끔하게 정리하여 정의를 내려 보자면 “아주 작은 컴퓨터” 라고 말씀드릴 수 있습니다.


크기가 작은 컴퓨터. 아마 일반사용자분들이 생각을 하시면, 이렇게 작은데 여기에 윈도우 돌리면 엄청 느리지 않나? 게임은할 수 있겠어? 이거가지고 무엇을 하지? 이런 생각들이 먼저 나실 겁니다.


라즈베리파이와 비슷한 스펙의 예를 들면 여러분들이 흔히 사용하고 계시는 스마트폰을 말씀드릴 수 있습니다.

스마트폰 스펙을 보면 보통 1Ghz에 메모리는 512MB~1GB 정도일겁니다. 컴퓨터 스펙에 비하면 엄청 낮은 스펙이죠.


그런데 여기서 여러분들은 게임을 즐기고 드라마, 영화를 보고 노래를 듣고 인터넷을 하고 여러 작업들을 하십니다.

어떻게 가능하냐고요?


그 스펙에 맞춰 OS(윈도우같은 운영체제)를 별도로 만들어 제공하기 때문에 가능한 것입니다.

라즈베리파이에도 스마트폰OS처럼 ‘안드로이드’가 있기는 있습니다. 하지만! 최적화가 안 되어 있기에 느리기는 합니다.


전자에 말씀드린 것처럼 스마트폰으로 하는 일은 주로 전화, 게임, 영상, 음악, 인터넷위주입니다.









라즈베리파이도 당연히 주로 하는 일들이 있겠죠?


라즈베리파이는 일반사용자들 중심으로 말씀드리면 인터넷, 1080p영상재생, 웹서버(자신만의 홈페이지), FTP서버(자신만의 파일서버), 기기컨트롤(임베디드)를 중점으로 사용하실 수 있습니다.


1080p영상재생 : 디스플레이 해상도의 분류에서 축양한 이름으로, HDTV를 가리키고 있습니다. 해상도는 1920x1080의 사이즈를 말하고 있으며, 고해상도의 영상을 재생할 수 있다. 라고 말씀드릴 수 있습니다.


웹서버 :

워드프레스, 텍스트큐브, 제로보드, 킴스큐 등 설치형 블로그, 홈페이지를 들어보신 적이 있습니다. 24시간 컴퓨터가 켜져 있어서 홈페이지를 구동하는 것을 말하는데 라즈베리파이는 웬만한 전자기기보다 전기세가 엄청 적게 나오기 때문에 웹서버를 가동시킬 수 있습니다.


FTP서버 :

USB들을 많이 들고 다니시죠? 그런데 이를 잃어버리거나 더 큰 용량이 필요할 때, 외장하드를 생각하실 거예요. FTP서버를 구축하게 되면 외부에서도 인터넷만 되는 환경이라면 손쉽게 파일들을 내려 받아 자신만의 네트워크 파일서버환경을 만들 수 있는 것이지요.


기기컨트롤 :

라즈베리파이에는 기기컨트롤을 할 수 있게 핀이 존재합니다. 이러한 핀들은 로우레벨의 전력을 출력해주고 1과 0으로 신호를 주고받을 수 있습니다. 이를 통해 스위치를 만든다거나 LED에 불이 들어오게 한다거나 등으로 외부기기를 자유자재로 컨트롤할 수 있습니다.


원래 같으면 이러한 낮은 스펙에서는 고해상도의 영상을 돌릴 수 없습니다. 실시간으로 처리해야하는 영상처리가 부담이 되기 때문이지요.


그런데 라즈베리파이에는 영상만 따로 처리할 수 있는 GPU라는 것이 존재하여 1080p같은 고해상도도 무리 없이 돌릴 수 있는 것입니다.


이러한 활용 가능한 기능을 구축해보기전에 일반사용자분들이라면 윈도우처럼 무언가 눈에 보이는 것을 보셔야 “와!!!” 라고 감탄을 하실 것 같습니다.


그래서 윈도우처럼 GUI(Graphic User Interface)환경으로 보이는 ‘라즈비안(Respbian)’ 이라는 OS를 설치해보도록 하겠습니다.


라즈비안은 데비안 리눅스 OS를 라즈베리파이에 맞게 포팅 되어 나온 라즈베리파이 전용 OS라고 말씀드릴 수 있으며, 일반 컴퓨터처럼 보이는 화면으로 마우스를 통해 여러작업들을 할 수 있는 그런 OS입니다.



[출처] http://blog.puding.kr/142


아두이노와 라즈베리파이에 대해 알아보았습니다.

위에 설명되어 있는 글을 보았듯이 아두이노와 라즈베리파이는 공통점과 차이점이 있습니다.


공통점은 둘 다 작은 소형 컴퓨터이고 기본이 되는 부품이라는 점이죠.


차이점은 아두이노는 OS소프트는 mac os x 가 있고 라이베리파이는 라즈비안이라는 OS가 있습니다.


이제 피지컬 컴퓨팅의 장단점과 전망에 대해서 적어보겠습니다.


- 피지컬 컴퓨팅의 장점

1. 초보자에게도 손쉽고 편리한 통합개발 환경

2. 부품 구매가 용이하고 저렴하며 작습니다.

3. 많은 작품들이 소스코드와 제작 과정이 공개되어 있습니다.

4. 공개된 소스를 마음대로 변경할 수 있습니다.

5. 공개구조여서 보조 장치를 이용해 각종 모터, 센서, 주변기기를 제어할 수 있습니다.

6. 확장성이 뛰어나고 신속한 업데이트가 가능합니다.


- 피지컬 컴퓨팅의 단점


1. 동작원리를 이해하지 못하고 사용법만 알았을 경우 기능이 제한적입니다.

2. 다양한 예제에 압도돼 잡탕 작품이 많아지고 표절여부 판단도 힘들어 집니다.

3. 계산 성능과 메모리 부족 시엔 주변장치를 확장해야 합니다.


-피지컬 컴퓨팅 교육의 전망


첫째, 피지컬 컴퓨팅은 빠른 속도로 발전 및 확장되고 있으며, 초급자의 메카트로닉스 교육용으로 사용하는데 많은 장점들이 존재합니다.


둘째, 공유된 인터넷 정보들을 이용하여 여러 작품들을 손쉽게 제작 가능하여 아이디어에 대한 교육을 더 집중 교육할 수 있다. 피지컬 컴퓨팅은 창의성 및 융합 교육에 매우 유리한 도구로 여겨집니다.


[출처] http://www.irobotnews.com/news/articleView.html?idxno=2236



<유용한 아두이노 사이트>


메이크 존 : http://cafe.naver.com/makezone/50

아두이노 설치 및 시작부터 다양한 프로젝트를 통한 실습 강좌가 마련되어 있습니다. 초보 아두이노 사용자의 오아시스.


Sparkfun tutorial : https://learn.sparkfun.com/tutorials

갖가지 센서, 보드, 부품들을 판매할 뿐 아니라 체계적으로 방대한 양의 강좌가 잘 정리되어 있습니다. 영어라 읽기 힘들어도 고급 자료들 찾기에 더할나위 없는 곳.


Adafruit learning system : http://learn.adafruit.com/

부품들을 판매할 뿐 아니라 유용한 라이브러리를 오픈소스로 배포하고, 아두이노, 모듈, 센서 강좌, 회로이론, 다양한 DIY 작품들에 대한 정보를 얻을 수 있습니다. 북마크 반드시 해둬야 합니다.


Wiring + Arduino Workshop : http://tokage.cafe24.com/ww/

아두이노 보드의 다양한 활용법과 각종 센서 사용법에 대한 강좌가 있습니다. 난이도 중급.


Arduino Playground : http://playground.arduino.cc/

아두이노 공식 홈페이지에서 운영하는 Tutorial 페이지 입니다. 아두이노 관련 자료를 찾다보면 자연스레 아두이노 공식 홈페이지를 자주 들리게 됩니다.


Arduino Reference : http://arduino.cc/en/Reference/HomePage

아두이노 프로그래밍을 할 때 문법, API에 대한 참고자료가 필요한 순간이 반드시 옵니다. 그래서 자주 찾게되는 페이지.


Instructables : http://cafe.naver.com/convergencekorea

다양한 DIY 프로젝트와 구현방법을 소개하는 사이트입니다. 직접 자신의 프로젝트를 소개할 수도 있고 컨테스트에 참가할 수도 있습니다. 아이디어를 얻고 공유하는데 도움이 많이 됩니다.


Arduino Reference : http://arduino.cc/en/Reference/HomePage

아두이노 프로그래밍을 할 때 문법, API에 대한 참고자료가 필요한 순간이 반드시 옵니다. 그래서 자주 찾게되는 페이지.


아두이노 스토리 – 네이버 Cafe : http://cafe.naver.com/arduinostory/

아두이노 관련 커뮤니티 중 규모가 있는 곳. 회원가입을 해야합니다.


Convergence Korea Cafe : http://cafe.naver.com/convergencekorea

아두이노 초보-심화 강좌를 전문으로 하나보네요.


김용환의 블로그 :

http://knight76.tistory.com/category/%EC%95%84%EB%91%90%EC%9D%B4%EB%85%B8

다재다능한 주인장께서 아두이노 강좌도 하시네요.


메카솔루션 아두이노 동영상 강좌 :

http://roboholic1.godo.co.kr/shop/board/list.php?id=tutorial

강좌는 몇 개 안되지만 이 정도면 초보 벗어나기에는 딱!


가치창조기술 위키 아두이노 강좌 : http://wiki.vctec.co.kr/opensource/arduino

아두이노 강좌 및 기술자료가 알차군요. 이런 사이트는 북마크 하는거라 배웠습니다.


아두이노 매트랩 연동 강좌 :

http://www.matlabinuse.com/index.php?mid=Arduino_with_MATLAB&document_srl=2389

아두이노와 매트랩을 연동한 강좌? 중상급 내용인듯 합니다.


Bionic Arduino : http://todbot.com/blog/bionicarduino/

다양한 스케치 예제를 구할 수 있습니다. 영문의 압박.


MPU cafe : http://cafe.naver.com/mpucafe

다양한 예제 뿐 아니라 전자 기초강좌, 부품별 사용방법에 대한 자료가 풍부해서 강력히 추천합니다. 북마크 필수. 아두이노에 대한 기초지식만 있다면 매우 유용한 카페입니다. 주인장께서 공동구매를 계속 진행하는데 저렴하게 부품 구매도 가능합니다.


[출처] http://www.hardcopyworld.com/ngine/aduino/index.php/archives/44




<유용한 라즈베리파이 사이트>


1. 라즈베리파이 커뮤니티 및 카페(블로그)


[국내]


오로카 : http://www.oroca.org


산딸기마을 : http://www.rasplay.org


라즈베리파이 카페 : http://cafe.naver.com/pipc


닥터R의 블로그 : http://blog.naver.com/rnc_ohm


[해외]


라즈베리파이 포럼 : http://www.rasberrypi.org


Element14 : http://www.elemen14.com/community/groups/raspberry-pi


2. 라즈베리파이 판매점 및 액세사리 판매


Element14 : http://www.elemen14.com


RS Components : http://kr.rs-online.com/web/


ICBanQ : http://www.icbanq.com


늘솜 : http://www.nulsom.com


3. 스타트시 참조


주변장치의 호환여부 확인 : http://elinux.org/RPI_VerifiedPeripherals


라즈베리파이 OS다운로드 : http://www.raspberrypi.org/downloads


Win32DiskImager 다운로드 : http://sourceforge.net/projects/win32diskimager


4. SSH원격 접속


무선랜 어덥터 호환성 확인

http://elinux.org/RPI_VerifiedPeripherals#USB_Wi-Fi_Adapters


Putty다운로드(윈도우 PC용 SSH프로그램)

http://www.chiark.greenend.org.uk/~sgtatham/putty/download.html




[출처]

http://blog.naver.com/PostView.nhn?blogId=smartinfo&logNo=80208252235&categoryNo=0&parentCategoryNo=19&viewDate=&currentPage=1&postListTopCurrentPage=1



*한가지 더 유용한 정보*

한국인터넷전문가협회에서는

협회 회원들을 위한 피지컬 컴퓨팅 DIY 과정을 개설합니다.

남녀노소 누구나 참여가 가능하며 게다가 무료 강좌이니 금상첨화.


2014년 7월 8일과 7월 12일 양일간 평일에 시간이 안 되어 못 듣는 다면 주말 강좌에 들으시면 됩니다.

강사님은 바로 숙명여대학교 교수님이시면서 영화배우이신 피지컬 컴퓨팅을 한국에 전파하러 오신

피지컬 컴퓨팅 아티스트!!


-토드 홀로우백 (Todd Holoubek): 교수, 영화배우




<경력사항>


- 2012~ 현재 숙명여자대학교 미술대학 시각영상디자인과 교수


- 미국 뉴욕대학교 전임강사


- 미국 뉴욕대학교 부교수


<학력사항>


- 뉴욕대학교 대학원 석사


- 뉴욕대학교 연극 학사


- 강사님의 더 많은 정보는 아래를 참조하세요.



<토드 홀로우백 교수님 공식 사이트>


http://www.toddholoubek.com/