드론 쿼드콥터/3D 프린팅

OpenSCAD를 사용한 3D 모델링

하늘이푸른오늘 2016. 1. 3. 21:09

지금까지 3D 프린팅을 위해 3D 모델을 만들때는 거의 Sketchup을 사용해 왔습니다. 


Sketchup의 강점은 무엇보다 쉽다는 것입니다. 대충 마우스로 클릭클릭한 후 Extrusion 도구를 선택하고 드래그만하면 3D 모델이 만들어지니, 간단한 모델이라면 초등학생들도 쉽게 만들 수 있습니다.


그래도 3D 모델을 만드는 것은 쉬운 일이 아닙니다. 특히 Sketchupd으로는 곡면을 만드는 건 거의 불가능에 가깝습니다. 그러다 보니 저를 포함해서 3D 모델링이 쉽지 않은 사람들은 Thingiverse같은 사이트에서 다른 분들이 만들어 놓은 파일들을 찾아 약간 변형해서 사용하는 경우가 많습니다. 


며칠 전부터 제가 찾고 있던 모델은 아래와 같은 겁니다. http://www.thingiverse.com/thing:418207 입니다. 바람이 불때 등등 문이 원하지 않게 닫히는 걸 방지하도록 문 아래에 끼워두는 겁니다. Door Stopper로 검색해 보면 이것 말고도 여러가지 모델을 찾을 수 있습니다.



그런데 이 모델에는 일반적으로 3D 프린팅에 사용되는 .STL 파일외에도 .scad 파일도 함께 들어 있습니다. 잠깐 읽어보니, 3D 모델링한 원본 파일이라고 되어 있더군요. OpenSCAD 라는 오픈소스 3D 모델링 소프트웨어로 모델링한 것이라는 겁니다.



스케치업도 근근히 사용하고 있는 중인데, 새로운 프로그램을 배워야 한다는 게 내키지 않아서 그냥 약간만 읽어보려고 했는데, 이 프로그램이 아주 재미 있었습니다. 스케치업은 형태 위주로 화면에서 직접 편집을 해야 하는데, (아마 다른 3D 소프트웨어도 비슷할 것 같습니다.) 이 OpenSCAD는 프로그램을 짜는 방식으로 3D 모델링을 한다는 점이 완전히 달랐습니다. 예들 들어, 제가 저위에 보여드린 MouseStop.scad 파일은 그냥 텍스트 파일에 불과합니다. 이걸 텍스트 에디터에서 열어보면 아래처럼 생겼습니다. 



그러니까... 프로그램을 짤 줄 아는 사람들은, 특히 java나 C 계통 프로그램을 짜본 사람들은 몇가지 기본 함수만 알면 어렵지 않게 3D 모델을 제작할 수 있습니다. 프로그램을 못짜는 사람들에게는 그림의 떡이겠지만요. ㅎㅎ


기본적으로 OpenSCAD는 구, 육면체, 원기둥 과 같은 간단한 모델(Primitives)을 조합하여 3D 모델을 만드는 방식입니다. 합집합, 교집합, 차집합 등의 연산도 지원하므로 간단한 모델들을 먼저 만든 후, 이를 조합하여 최종적인 3D 모델을 제작할 수 있습니다. 필요하다면 if 와 같은 조건문, 그리고 for와 같은 반복문도 사용할 수 있고요.


그래서 오늘 하루 종일 OpenSCAD를 공부했습니다. 그래서 대충 무엇이 들어 있는지는 이해를 했습니다. 말씀드린 것처럼 프로그램의 원리를 알면 그다지 까다로울 게 없습니다.


그리고 나서는 원래 다운받았던 MouseStop.scad 파일을 약간 수정했습니다. 제일 필요했던게...  원본은 높이가 너무 낮아서 원래 기능을 할 수 없었던 것을 높이를 높여서 해결했고요, 등부분에 골을 파서 미끄럼을 방지했습니다. 수염도 3개로 만들었네요. 이렇게 수정하다보니 원래 모델이 동작하는 부분들을 약간씩 수정했고요. 아래는 그 결과입니다.



최종 파일은 아래에서 다운 받으시면 됩니다.


http://www.thingiverse.com/thing:1242018


아래는 이 모델을 STL로 출력해서 3D 프린터로 제작한 것입니다. 



문틈에 끼워봤습니다. 크기는 잘 맞네요. 우리 마눌님은 귀엽다고 아주 좋답니다. ㅎㅎ 다만 밑바닥이 너무 미끄러워서 뭔가 조치를 해야 할 것 같네요.



다음은 제작과정. 제 Ares 프린터는 TimeLapse 제작기능이 있습니다. 모델을 출력하면 자동으로 동영상이 저장됩니다. 


===

다만, OpenSCAD로는 예술적으로 예쁘게 렌더링 한더던가 하는 기능은 제한적입니다. 그런 기능을 원하면 다른 도구를 찾으라고 되어있네요. 대신 정확한 모델을 만들 때, 예를 들어 기계 부품을 만들 때 등에서는 아주 최고의 도구가 될 수 있습니다.


아무튼 재미있는 도구를 발견해서 기분이 좋네요. 앞으로 스케치업을 사용할 일이 많이 줄어들 것 같습니다. 게다가 오픈소스이니... 어둠의 경로를 살필 필요도 없겠고... 훨씬 더 기분이 좋네요~~ ㅎㅎ


민, 푸른하늘