elsa in mac

Slic3r PE(Prusa Edition) 1.42.0 메뉴얼 서포트(Manual Support) 적용 방법 본문

3D 프린터/3D 프린터 관련 정보

Slic3r PE(Prusa Edition) 1.42.0 메뉴얼 서포트(Manual Support) 적용 방법

elsa in mac 2019. 1. 21. 15:49

slic3r pe 아이콘

이번 포스트에서는 최근에 릴리즈된 Slic3r PE(Prusa Edition) 1.42.0의 보강된 Manual Support 기능에 대해 알아보겠습니다. 

3D 프린터를 사용할 때, 반드시 거쳐야 하는 단계 중 하나는 3D Mesh 모델을 각 Layer로 나누고, 어떤 순서로 출력을 할지를 결정하기 위해 Slice를 하는 것 입니다. 

소위 Slicing S/W 들이 그것을 위한 도구(Tool)인데, 대중적인 인지도를 갖고 있는 Slicer에는 Ultimaker의 Cura, Slic3r, Simplify3D(이하 S3D) 정도가 있습니다. 물론, 이 밖에도 매우 많은 Slicer들이 있지만, 거의 대부분의 유저들은 이 3중 하나 이상을 자산의 주력 Slicer로 사용합니다.  그 만큼 트렌드를 선도하고 있고, 사용자 층도 두텁기 때문인데요.  Slic3r의 경우에는 Slic3r이 있고, Prusa의 3D프린터를 지원하기 위해 보강한 Slic3r PE 버전이 있습니다. Slic3r도 좋지만, 이를 한번 더 검토하고 업그레이드한 Slic3r PE 버전을 주로 사용하죠..  Slic3r PE가 Prusa 프린터를 대상으로 하고는 있지만, Cura가 그러하듯이 Prusa 프린터가 아니더라도 사용하는데 문제는 없습니다. 

각자 장/단점들이 있지만, 사용자들이 어떤 Slicer를 사용할 것인가를 결정하는 판단기준들 중 하나는 원하는 위치에 서포트(Support)를 만들 수 있는지의 여부 입니다. 

support 예 스샷Support 예

Support는 Orverhang 즉, 출력할 부분이 지지가 없이 공중에 출력을 할 수 밖에 없는 영역을 출력하는 문제와 관련된 것입니다. 아래는 가장 대표적인 Overhang의 예 입니다. 

overhang 예Overhang 예시

바닥면 부터 순차적으로 Layer를 적층해 나가다가 화살표가 가르키는 Layer에 다다르면, Overhang이 발생하게 됩니다.  즉, 공중에다가 출력을 해야 하는 것이죠..

이런 overhang문제는 3D 프린터의 가장 근본적이고 구조적인 출력문제 중 하나 입니다. 따라서, 대부분의 Slicer들이 이 문제에 대응하기 위해 Support 기능을 제공합니다.  기본적으로 각 Slicer들은 Overhang이 발생하는 지점을 자동으로 인지할 수 있으며, 인지된 결과에 따라 자동으로 Support를 생성해 줍니다. 물론 관련된 몇 가지 옵션을 제공하기는 하죠. ^^ 

서포트 자동 생성 예서포트 자동 생성 예시

Slicer가 친절하게 자동으로 생성해 준 Support가 모든 사용자들의 입맛에 맞는 것은 아닙니다. 때로는 너무 과도하고, 때로는 특정 영역을 너무 많이 침범하며, 또 때로는 예상했던 위치에 만들어 지지 않는 경우도 있습니다. Slicer가 분석을 할 때는 굳이 Support를 만들 필요가 없다고 판단하여 만들지 않았지만, 사용자 입장에서는 생성되지 않은 특정 영역에 Support가 있었으면 하고 바라는 경우도 있습니다. 

따라서, 가장 좋은 해결 방법은 사용자가 직접 원하는 Support 위치를 결정하고, Support 생성 여부를 설정하는 것 입니다. 이것을 자동이 아닌 수동으로 Support를 만든다고 하여 Manual Support(메뉴얼 서포트) 기능이라고 하죠..  이러한 Manual Support 기능은 모든 Slicer들이 제공하는 것은 아닙니다. 

Cura나 Slic3r의 경우에는 Support 옵션에 Manual Support 기능이 아예 없습니다. S3D의 경우에는 Support 옵션에 Support Bar를 Add 하거나 Remove 할 수 있는 옵션을 가지고 있죠. 

SImplify3D의 Support Generation 창SImplify3D의 Support Generation 설정 창

Cura나 Slic3r이 직접적으로 Manual Support를 지원하지는 않지만, 그렇다고 해서 사용자가 원하는 위치에 Support를 세울 수 없는 것은 아닙니다. 임의의 모양을 갖는 Mesh Block을 Support 영역으로 지정함으로써, Manual Support를 세울 수 있습니다. Mesh block을 Support Blocker로 지정을 하면, 반대로 특정 위치의 Support 생성을 금지 시킬 수도 있습니다. 

과거 S3D가 Cura나 Slic3r보다 경쟁력을 갖고 있던 분야 중 하나가 바로 Support 기능이였다면.. 최근에 Cura와 Slic3r이 Manual Support 기능을 지원하게 되면서 그 격차가 줄어들었다고 할 수 있습니다. 물론, Manual Support 나 Support Blocker 기능이 추가되기는 했지만, 여전히 S3D 가 지원하는 것 만큼 조작이 쉽고 직관적이지는 못합니다. 그래도 유료와 무료라는 큰 갭을 놓고 보면.. 상당한 진척이 있었다고 평가할 수 있는 것입니다. 

이번 포스트는 Slic3r PE와 관련된 것이므로 Cura는 논 외로 하도록 하겠습니다. 

Support Enforcer
Slic3r PE의 Support Enforcer라는 것은 말 그대로 Support를 강제적으로 할당한다는 의미 입니다. 이 기능은 이미 예전부터 추가가 되어있었지만, 사용자 UI가 너무 열악해서 거의 무용지물이였었죠.. 하지만, 이번 1.42.0에서는 보다 쉽게 사용할 수 있도록 UI가 많이 개선되었습니다.  그럼, 앞선 예제를 가지고  Support Enforcer를 하나 만들어 봅니다. 

step 1. 모델 선택
Support Enforcer를 어떤 모델에 적용할지를 결정하기 위해 특정 모델을 선택 합니다. 모델을 마우스로 선택하면, 아래와 같이 선택 테두리가 처지는 것을 알 수 있습니다.  

Object 선택Object 선택


step 2. Support Enforcer 메뉴 선택
모델(Object)이 선택된 상태에서 마우스 오른쪽 버튼을 누르게 되면, 아래와 같이 Contextual Menu 가 나타나게 되는데, 여기서 아래와 같이 Support Enforcer를 선택합니다. 그러면, Sub menu가 나타나는데, Load(불러오기), Box(상자), Cylinder(원 기둥), Sphere(구), Slab(길쪽한 판) 들 중에 선택을 할 수 있도록 되어 있습니다.  

모델 선택 Contextual menu

Load는 사용자가 Support로 사용하기 위해 만든 STL 파일을 불러오는데 사용됩니다. 아래는 Box를 선택한 예입니다. 

support enforcer 생성 예Support Enforcer 생성 예

Box를 선택하면 Plater에 Box가 새로 생성되고, 좌측의 Project 상세 창에는 Test.stl 모델과 별도로 lambda-Box라는 요소가 생성된 것을 보실 수 있습니다. 새로 생성된 Support Enforcer를 지칭하는 것입니다. 

step 3. Support Enforcer를 원하는 위치와 크기로 배치
기본적으로 사용자가 생성한 lambda-box 등의 요소들은 생성될 때, 모델의 Center에 생성이 됩니다. 따라서, 이를 사용자가 원하는 위치로 이동 시킨 후, 사용자가 원하는 영역을 커버하도록 크기를 가변 시켜 줍니다. 모델의 center에 생성이 되기 때문에.. 기본적으로 모델에 가려 보이지 않습니다.(향 후에 보안되었으면 하는 점)

Support Enforcer 배치Enforcer도 모델처럼 이동/확대/축소/스케일링 등이 모두 가능하다.

step 4. Manual Support 생성
이 4번째 Step이 중요 한데요.. 사용자가 설정한 Support Enforcer 영역에만 Support를 만들려면, 우선 Slic3r의 Auto generated supports 기능을 OFF 시켜야 합니다.  이는 Print Setting > Support Material 에서 설정해 주면 됩니다. 

support material 옵션Autogenerated supports 옵션

그리고, Plater로 돌아가서, 아래와 같이 Support를 Everywhere로 변경해 줍니다. 

Support 옵션 설정 창Support 옵션을 Everywhere로 변경한다.

자 이제 결과를 보기 위해 Preview 모드로 전환을 해 보면 결과는 아래와 같습니다. 

Support Enforcer 결과Support Enforcer 결과 1

Support Enforcer 영역을 지정해준 부분에 Support가 만들어지기는 했는데, 뭔가 좀 이상하죠 ? 모델의 끝 부분에만 살짝 만들어 진 것을 확인할 수 있습니다. 기본 설정에서는 저 정도의 Support만 만들어도 Overhang에 대응할 수 있다고 할 수 있는데요.. Enforcer의 Box영역 만큼 만들지 않고, 끝부분에만 만든 이유는 나머지 영역이 Bridge 영역에 해당되기 때문입니다. 따라서, Bridge 영역을 포함하여 Enforcer의 원래 Box 영역 만큼을 모두 커버할 수 있도록 Support를 생성하려면, Bridge 영역이라도 Support를 만들라고 옵션을 설정해 줘여 합니다. 

이를 위해 다시 Print settings 화면으로 가봅니다. 

support bridge 옵션Bridge에 대한 Support 지원 여부 설정

위의 스샷을 보시면, Print Settings > Support material > Option for Supports 항목 중에 Don't support bridges 가 ON 되어 있는 것을 보실 수 있습니다. Bridge 영역에는 Support를 만들지 말하는 의미이죠.. 따라서, 이 옵션을 OFF(끔) 하면, Bridge 영역에도 Support를 만들게 됩니다. 이 옵션을 OFF 시킨 후 결과를 보면 아래와 같습니다. 

Support Enforcer 결과 2Support Enforcer 결과 2

결과가 잘 반영된 것을 확인할 수 있습니다. 

Support Blocker
Support Enforcer를 살펴 봤으니, Support Blocker는 이제 쉽습니다. Blocker는 Enforcer와는 반대로 Support 생성을 금지하는 영역이라고 설명을 드렸었죠.. 앞서와 마찬가지로 모델을 선택하고, 마우스 오른쪽 버튼을 눌러 Contextual Menu를 나타나게 한 다음, 이번에는 Support Blocker를 생성해 봅니다. 

Support Blocker 예시Support Blocker 예시

위의 스샷을 보시면, 파란색 영역이 Support Enforcer 영역이며, 벽돌색 부분이 Support Blocker 부분 입니다. Support 영역이 둘로 나뉘질것으로 예상을 해 볼 수 있습니다. 이제, Slice를 해 보면 결과는 아래와 같습니다. 

Support blocker 결과Support Blocker 적용 결과

간단하죠? 어렵지 않습니다. 

자.. 아래는 God Of War 게임에 등장하는 Kratos의 흉상 모델인데요.. 

기본적으로 이 모델은 Support 없이도 출력을 할 수 있도록 디자이너가 디자인을 했지만, 아래는 자동생성 옵션을 활성화 시켰을 경우의 Support 생성 결과를 보여 줍니다. 

서포트 자동 생성 결과 2Support자동생성 옵션으로 Slicing 한 경우

우...

Support가 너무 과도하게 들어가면, 출력 시간도 그 만큼 오래 걸리고, Support를 때어내어야 하는 부분도 많기 때문에 후 처리 과정도 많아 집니다. 때로는 최종 결과물의 품질에 영향을 주게 될 수도 있죠. 

굳이 Overhang을 검토해 본다면, 턱, 코, 허리띠 정도가 있을 것 같군요.. 

overhang 검토

아래는 턱, 코, 허리띠 부분에만 Support Enforcer를 준 예 입니다.  

그리고, 아래는 Slicing의 결과 입니다. 

눈, 코, 턱, 허리티 dpaks Enforcer를 준예눈, 코, 턱, 허리티 dpaks Enforcer를 준 경우


과거 어느 한 때, Slicer들의 수준을 비교 검토하고 Support 기능 때문에 S3D를 선택하여 사용하고 계셨다면.. 그 동안 Open Source Slicer들이 얼마나 발전했는지 무관심했을 수 있습니다.  S3D가 다른 Slicer들이 그러했듯이 보다 적극적인 업데이트와 신 기능 추가를 꾸준히 해 왔다면 여전히 Slicer 분야에서 경쟁력 우위를 갖추고 있었을지 모르겠지만, 그러하지 못했죠.. 그 사이에 다른 Slicer들의 기능과 성능은 비약적으로 발전을 해 왔습니다. 앞서 언급했듯이 Manual Support 기능에서는 S3D가 훨씬 더 직관적이고 사용하기 편하지만.. Slicer의 성능을 Support 기능만으로 판단할 수는 없죠.. 저도 S3D 정식 유저 이기는 하지만, 요즘들어서는 Slic3r만 사용합니다. 훨씬 더 깔끔하고 튼튼한 프린팅을 할 수 있는 것은 물론, S3D가 내포하고 있는 각종 부족한 부분, 버그 등을 S3D에서는 언제일지 모르겠지만, 고쳐 줄 때까지 해소할 수 없기 때문입니다. 

그 동안 상대적으로 약점이었던 Manual Support 기능에서 Slic3r나 Cura는 나름 발전을 해 왔고.. Slic3r PE가 아직은 alpha 버전에 머물러 있지만, 정식버전이 나오면 사용자들의 요구를 충분히 반영... 보다 쉽고 직관적이며 뛰어난 Manual Support 기능을 지원하게 될 것이라 믿어 의심치 않습니다. 


출력 예시Slic3r PE 1.42.0 alpha3 출력 예시

3D Printer : Snowflake
Filament : ESUN PLA+ - Yellow
Speed : 150mm/s
size : 80 x 32 x 45 mm
Controller : Duet 2 (Duet WiFi)
Firmware : RRF(Reprap Firmware 2.02)
Hotend : TITAN AERO
Nozzle : 0.4mm
Layer Height : 0.2mm

공유하기 링크
Comments