2013년 11월 17일 일요일

[BeagleBone Black]비글본 블랙 + 3D 프린터? (부제: 프로젝트 실패기)

1편(개봉기): http://wakalics.blogspot.kr/2013/10/beaglebone-black.html
2편(프로젝트 실패기): http://wakalics.blogspot.kr/2013/11/beaglebone-black-3d.html
3편(후기): http://wakalics.blogspot.kr/2013/12/beaglebone-black.html


안녕하세요?  한국과학영재학교 1학년에 재학중인 조정민입니다.

제가 다니는 학교는 전교생이 모두 기숙사를 사용해야 합니다.
그리고, 학생들이 밤 새도록 게임하는것을 막기 위해 밤 11시 20분에 노트북을 입고해야 하고, 다음날 오전 5시 30분에 노트북이 들어있는 책꽂이의 자물쇠가 풀립니다.

여기까지는 좋습니다만, 현재 저는 직접 만든 3D 프린터,  Prusa mendel을 운용중입니다.
아시다시피, 3D 프린터는 출력하는데 시간이 상당히 오래 걸립니다. 작은것은 괜찮지만, 큰 것은  출력하는데만 하룻밤을 훌쩍 넘기죠. 그렇기에 일반적인 3D 프린터 유저들은 밤에 출력을 걸어놓고 아침에 일어나서 확인합니다.

저의 문제는 여기서부터 시작됩니다. 3D 프린터를 구동하려면 컴퓨터가 필요한데, 밤에는 노트북을 입고해야 하기 때문에 밤새도록 3D 프린터를 구동할 수 없는 것입니다.

물론, SD카드에 G코드(3D 프린터를 움직이기 위한 명령어)파일을 넣고 출력하면 밤새도록 출력하는 것이 가능합니다만, 이 경우 노트북을 연결해 Z축 영점과 베드 수평을 잡아주고, SD카드의 파일을 출력하도록 G코드로 명령어를 넣어주어야 하므로 여간 귀찮은 것이 아닙니다.

여기서 잠시, 3D 프린터의 툴체인에 대해 말씀드리겠습니다 3D 모델로 3D 프린터를 구동시킬때는, 

1. Slicer 을 이용해 3D 모델은 G code(3D 프린터용 명령어)로 전환한다.
2. G code를 Printer Host를 이용해 시리얼 통신으로 3D 프린터 제어보드에 전송한다.
3. 3D 프린터 제어보드의 펌웨어가 각 축(X,Y,Z)의 스텝모터를 구동시켜 출력한다.

의 과정을 따릅니다.

여기서, 밤새도록 걸리는 과정은 2번입니다.
또한, 많은 연산이 필요해 컴퓨터의 성능이 중요시되는 과정은 1번 뿐입니다.

그러면, 노트북으로 슬라이싱을 한 Gcode를 ARM 기반의 소형 컴퓨터를 이용해 Hosting한다면 어떨까요?

이 경우, Host 프로그램을 이용해 베드의 수평이나 노즐/베드 예열, Z축 염점 세팅이 가능하므로 노트북을 연결할 필요가 없고,
FTP서버를 구축하면 USB메모리 등을 이용해 G code를 이동시킬 필요 없이 서버에 업로드만 하면 됩니다.

이런 아이디어를 가지고, 라즈베리파이로 삽질을 시도하려던 중, ICbanQ의 체험단 모집 공지가 눈에 들어왔고, 위의 아이디어로 신청을 해 체험단에 선정되게 되었습니다.



본격적인 프로젝트 진행입니다.
비글본 블랙을 IO 보드로 쓸 때는 동봉된 케이블만으로도 충분하지만, 저는 비글본 블랙을 독립된 컴퓨터로 사용할 것이기에 모니터, 마우스, 키보드가 필요합니다.

키보드와 마우스는 어렵지 않게 구할 수 잇었고, 문제는 모니터입니다.
비글본 블랙은 HDMI Out만을 지원합니다.(라즈베리파이는 HDMI와 RCA를 지원합니다.)
하지만, HDMI를 지원하는 모니터는 상당히 고가입니다.
그렇기에 DVI젠더를 사용해야 합니다.

하지만, 이 경우에도 DVI를 지원하는 모니터가 필요합니다.
안타깝게도, 제게는 DVI를 지원하는 모니터가 없습니다.

집에 잇는 모니터는 상당히 오래되어 VGA만을 지원하구요, 심지어 제가 사는 곳은 학교 기숙사(부산)인데 집은 서울이라 이 모니터를 사용하기도 힘듧니다.

학교에서 모니터를 빌려보려고 했지만 DVI를 지원하는 모니터들은 최근에 구입한 것이라 빌려줄 수 없다는 답변을 들었습니다.

결국 남은 것인
1. 연구실에 있는 CRT 모니터(VGA Input 지원)
2. 교실마다 설치되어 잇는 빔프로젝터(VGA Input 지원)

뿐입니다.

결국, 비싼 돈을 지불하고 HDMI to VGA 젠더를 구입했습니다.
물론, Micro HDMI포트를 가지고 있는 비글본 블랙을 위해 Micro HDMI to HDMI 젠더도 구입했습니다.



며칠 후, ICBanQ에서 주문한 젠더 두 개가 도착했습니다.

VGA 젠더는 노트북에 연결해 사용해 본 결과 아주 잘 작동합니다.



그런데 아뿔싸! HDMI젠더가 Micro HDMI가 아닌 Mini HDMI 젠더입니다.


결국, 아까운 배송비 2,500원을 다시 내고 Micro HDMI 젠더를 주문했습니다.(제 리뷰가 늦어지게 된 주원인입니다.





이제, 이 녀석과 비글본 블랙, VGA 젠더를 연결해 사용할 차례입니다.






대략 이와 같이 연결됩니다.


그 다음은 모니터와의 연결입니다.



비글본 블랙에 전원을 인가하고 모니터의 VGA 케이블을 연결하였습니다. 하지만!




모니터에는 연결되지 않는다고 표시됩니다.

두번째 방안인 빔프로젝터에도 연결해 보았으나, 마찬가지로 입력 신호가 없다는 문구가 표기되었습니다.
반면, 노트북을 HDMI to VGA 젠더로 연결했을 때는 모니터와 빔프로젝터 모두에서 정상적으로 작동했습니다.
(모니터에서 신호없음이 뜬 이후로는 제정신이 아닌 상태로 삽질을 하는 바람에 사진이 남아있지 않습니다....)

이유를 찾아보니, HDMI와 DVI는 디지털 방식이지만 VGA는 아날로그 방식이라 HDMI to VGA는 내부에 신호를 바꿔주는 칩이 필요한데, 이 칩이 특정 운영체제와 호환되는 듯 합니다.

결국, "모니터가 없어서"라는 어이없는 이유로 프로젝트는 무기한 연기되었습니다;;;;

학교에 모니터를 요청해 놨으니, 이후에 DVI를 지원하는 모니터를 빌리게 된다면 그 때 다시 재개할 수 있을 것 같습니다.

후에, 다시 하게 된다면, 다시 올리도록 하겠습니다.


감사합니다.


본 제품은 ICbanQ에서 후원하고 ICbanQ 무상 체험단 10기 활동의 일환으로 체험 제품을 제공받아 작성되었습니다.

댓글 4개:

  1. 안녕하세요. 지나가던 한과영 떨어진 학생입니다.
    저도 비글본 블랙을 사용하고 있습니다.
    SSH접속을 해보시는 것은 어떠할지요?
    아마 openssh-server가 깔려 있을것으로 짐작됩니다.
    SSH접속을 통해 커맨드라인으로 조작해보시면 좋을 것 같네요.
    이경우 랜선만 연결되어 있다면 내부 네트워크 혹은 DDNS 설정후 포트포워딩으로 외부네트워크에서도 조작이 가능합니다.

    답글삭제
    답글
    1. USB로 연결해서 커맨드로 제어하는 것 말씀이시죠?
      좋은 생각인 것 같습니다. 혹시 커맨드로 GUI도 작동시킬 수 있나요? 제가 비글본 블랙에서 구동시키려는 프로그램이 pronterface인데요, 이 프로그램이 커맨드로도 작동할지는 모르겠습니다.
      그리고 서버의 경우에는 공유기를 학교에서 관리하다 보니 포트포워딩 설정이 매우 어려울 것 같습니다.
      좋은 의견 감사합니다.

      삭제
  2. 안녕하세요. EOS 09 정태희입니다.
    제 기억으로는 써실에 모니터가 아마 몇 대 있을건데..

    답글삭제