고장 난 3D프린터를 분해한 부품들을 사용하여 뭘 만들어볼 것이 있을까 생각하다가 펜플로터를 만들어보기로 하였다.
예전에 Roland사에 제작한 xy plotter를 사용해 본 적이 있는데 유사한 것을 만들어 볼 수 있다는 생각에 마음이 들뜨게 된다.
일단 참고할 모델을 찾아보았다.
설계도면 사이트인 GrabCad에서 괜찮아 보이는 모델을 참고하여 일부를 수정하고 만들어보았다.
나중에 혹시 참고하게 될지도 모르니 참고한 사이트를 아래에 적어 둔다.
https://grabcad.com/library/drawbot-corexy-1
아래와 같이 만들어서 그림을 출력하기까지 거의 한 달 정도 소요된 것 같다. 짬짬이 시간 내서 하다 보니 시간이 걸리긴 했지만 그래도 쉽지 않은 일이었다.
남들이 완성한 글을 읽어보면 아주 쉽게 제작한 것처럼 보이는데 내게는 생각지 못한 매우 어려운 과정이 몇 차례 있었다.
어려운 문제 중의 하나는 펌웨어였다.
pen plotter에 사용할 수 있는 펌웨어는 크게 GRBL과 Marlin으로 알고 있는데 (이 두 가지 종류 외에도 실제로는 더 많이 존재함) 두 가지 펌웨어를 설치했다 지웠다 하는 과정을 합쳐서 십여 차례 시도했던 것 같다.
3D프린터를 사용하면서 Marlin을 접해보긴 했지만 사실 소스자체까지 분석할 정도는 아니었는데 Pen plotter를 하다 보니 #3D프린터를 사용할 때보다 펌웨어에 대한 지식을 더 많이 필요로 하게 되었다.
3D프린터에 비해 Pen plotter를 사용하는 사람이 훨씬 적다 보니 업데이트속도나 공유되는 정보가 적어서 그만큼 본인이 알아서 찾아가야 하는 것들이 많아 어려움을 느끼게 되는 것이 아닌가 싶다.
Pen Plotter를 운용하려면 펌웨어에서부터 컴퓨터 소프트웨어까지 여러 단계의 프로그램을 사용해야 하는데 참 번거롭고 귀찮은 작업이다.
유료 소프트웨어를 사용하면 이 모든 것이 한 번에 해결될 수도 있긴 하지만 DIY 하는 입장에서는 처음부터 끝까지 가급적 Open source를 찾아 작업해야 한다는 강박에서 벗어나기 어렵다.
사용해야 하는 펌웨어와 소프트웨어를 정리하면 다음과 같다.
- 아두이노보드에 적용할 펌웨어 : GRBL 또는 Marlin
- Gcode를 아두이노보드로 전송하는 프로그램 : laserWeb, OpenbuilderControl, Pronterface 등
- Gcode 생성 프로그램 : Inkspace 등
- 이미지파일을 만드는 프로그램 : Fusion360, CoreDraw 등
실제로는 개인의 역량에 따라 위에 언급한 프로그램보다 더 많이 사용해야 할 수도 있고 더 적게 사용할 수도 있다
펜플로터를 제작하기 위해 나는 아두이노메가 2560과 ramps1.4라는 3D프린터용 실드를 사용하기로 하였다. 특별한 이유는 없는 그냥 갖고 있는 재고품을 활용하는 것이다.
펌웨어는 처음에 GRBL을 사용하였는데 적당한 GCODE 전송프로그램을 찾기 어려웠고 x축과 y축의 Endtop 스위치를 인식하면서도 오토홈을 하면 계속 에러가 나는데 그 문제를 해결하기 어려웠다.
펌웨어를 Marlin으로 변경해 보았지만 일반적으로 많이 사용하는 펜플로터용 GCODE 전송프로그램들이 대부분 GRBL은 지원하는데 marlin은 지원하지 않는 경우가 많아서 다시 GRBL로 돌아가기도 했다.
펌웨어 버전을 바꿔보는 등 위와 같이 GRBL과 Marlin을 설치했다가 지웠다가 하는 과정을 여러 차례 반복한 후에 그래도 Marlin이 사용하기 익숙하고 쉬워서 Malin 2.0을 설치하였다.
Gcode전송프로그램은 Repetier-Host를 사용하였고 Gcode 생성프로그램은 Inkspace와 4 xiDraw라는 Extension을 사용하였다.
그동안 이런저런 시행착오를 겪으며 많은 부분들을 이해하였고 적응되었지만 Inkspace의 Extension 기능은 아직도 어렵게 느껴진다. 버전에 따라 결과가 실행되는 경우도 있고 먹통인 경우도 있고 잘 되던 것이 다시 설치하면 안 되기도 하는 등 무언가 알 수 없는 변수들이 너무 많아 집어던져버리고 싶은 심정이 많이 들게 된다.
이 모든 것이 Freeware를 사용하다 보면 당연한 결과라고 생각한다.
이제 대략적으로 이미지를 펜플로터로 출력하는 작업을 하게 되었지만 아직 해결하지 못한 부분이 많이 있다.
그중에 하나는 이미지의 외곽라인은 출력가능하지만 그 내부를 해칭 하거나 색을 칠하는 것을 하지 못하는 것이다.
이 작업은 Inkspace에 Extension를 설치해서 Gcode 생성 이전에 해칭을 해 줘야 하는데 남들은 쉽게 되는 작업이 내게는 어떤 문제인지 아직도 해결하지 못하는 숙제로 남아있다.
아래 출력 이미지들이 앞서 설명한 해칭이 빠진 출력물이다.
아주 무의미한 것은 아니지만 그래도 뭔가 좀 아쉬움이 많이 느껴진다.
또 하나 해결하지 못한 것이 있다면 DXF파일을 Inkspace에서 Gcode로 변환시키지 못하는 것이다. DXF파일을 직접 Gcode로 변환하면 라인을 직접 플로터로 출력하여 Cad도면이나 또는 3D 라인 드로잉을 출력물로 얻을 수 있는데 앞으로 해결해야 할 숙제로 남겨둔다.
아래 이미지는 3D 라인 드로잉을 직접 Gcode로 출력하지 못하고 Bitmap으로 변환한 뒤에 Gcode로 다시 변환시키다 보니 라인이 부드럽게 연결되지 못하고 매우 지저분하게 보인다.
그나마 전체적으로는 입체감이 느껴진다는 것에 위안을 가진다.
내가 만든 Line 드로잉을 직접 출력하지 못하니 남이 만든 것이라도 출력해 보자는 심정으로 몇몇 드로잉 예제를 찾아서 출력해 보았다.
참고로 아래 파일들은 원본이 CorelDraw로 작성된 파일이다. Inkscape에서 다행히도 CoreDraw파일은 잘 인식이 되고 있다.
다음에는 소프트웨어 기능을 잘 찾아 익히는 것 이외에도 이번에 만든 플로터 프레임을 좀 더 튼튼하게 제작해서 간단한 CNC 작업도 해보면 좋을 듯싶다.
※ 유투브에 어느 외국인이 배선도를 올려달라고 요청을 했는데 유투브에 이미지를 별도로 올릴 수 있는 기능이 없어서 이곳에 올리고 링크를 보내려고 합니다.
'생활자작품' 카테고리의 다른 글
3D프린터 분해 부품으로 간단 CNC 만들기 #1 (0) | 2023.08.24 |
---|---|
메트로놈 Muztek MM-100에 18650 충전 배터리 내장하기 (0) | 2023.08.08 |
숫자로 그린 사람 얼굴 그리고 3D프린터로 출력 (2) | 2021.11.03 |
CAD로 직접 그리고 3D프린터로 출력해 본 오징어게임 (2) | 2021.09.29 |
고양이 식탁 다리 늘리기 (2) | 2021.07.12 |
최근댓글