elsa in mac

tevo tarantula 업그레이드 - part4 (MKS Gen 1.4 & TMC2100) 본문

3D 프린터/tevo tarantula

tevo tarantula 업그레이드 - part4 (MKS Gen 1.4 & TMC2100)

elsa in mac 2017. 9. 13. 21:43

tevo tarantula 업그레이드 4번째 포스트로 Major Upgrade로는 마지막 파트가 될 것 같습니다. 

X축, Y축, 그리고 Z축에 대한 업그레이드를 모두 완료하고 나서, 최초 조립 당시 보다는 매우 월등히 향상된 품질의 출력물을 얻을 수 있게 되었지만.. 보통 좀 큰 프린트 모델에 대한 출력을 걸면 5시간을 넘기는 것은 기본이기도 하고, 집에 귀가하면 저녁이기에 대부분 밤새도록 프린트를 걸어 놓는게 다반사 입니다.  

헌데.. 이게 모터 소리가 그리 조용한 편이 아니죠.. 물론 간이 챔버를 만들어서 넣어 놓았기는 하지만, 조용한 밤에 징징~ 거리는 소리를 밤새도록 낸다면 신경이 쓰입니다. (저는 괜찮은데.. 집안 식구들의 날카로운 눈초리가.....)

이미 3D 프린터를 사용하는 분들 가운데서는 많이들 적용하고 있는 모터 구동 드라이버인 TMC2100을 사용하게 되면, 프린트 구동 시 발생하는 모터 소음을 줄일 수 있다고 하죠.. 

tevo tarantura의 제어보드(Control Board)는 MKS Base 보드를 기반으로 한 Custom 보드 입니다. PC로 치면 All-In_One PC라고 할까요 ? 모터 구동 드라이버 IC를 포함하야 3D 프린트와 관련된 모든 Part들을 제어할 수 있도록 하나의 기판에 구성을 하긴 했지만, 구성 부품이 수준이 그리 높은 것은 아닙니다.  그래서 가격도 싸죠...

TMC2100 같은 외부 모터 드라이버를 사용하려면 MKS Gen 같은 별도의 사용자 커스텀 가능한 보드를 사용해야만 합니다. 

일단 얼마나 소음의 차이가 있는지 TMC2100 모터 드라이버를 사용하기 전과 MKS Gen 1.4 보드에 TMC2100를 사용하여 출력할 때의 영상을 보겠습니다. 

아래 영상은 기본 Controller로 출력하는 영상 입니다. 작은 파트를 출력하는 거라 그 나마 소리가 많이 나지는 않지만, X,Y,Z,E 모터가 구동함에 따라 띠리리, 붕붕 등 온갖 모터 소리가 짬뽕되어 들립니다. 

이번엔, MKS Gen 1.4 보드에 TMC2100 드라이버로 구동한 출력 영상 입니다. 

모터 소리가 나지 않다 보니, 유독 펜 소리가 더 크게 들립니다. 역시 작은 파트를 출력 중이긴 하지만, 모터 소리가 거의 하나도 들리지 않는 것을 알 수 있습니다.  실제로 출력할 때 보면 정말 무소음? 신세경이라는 단어가 떠오를 정도의 느낌이 들게 합니다..

하지만.. 엄밀히 말하면...
소리가 아주 작아진 것이지 아예 안 나는 것은 아닌데요.. 출력 구동 속도를 높이면 역시 소리도 커짐니다. 하지만, 시끄러울 정도로 커지지 않으며, 커진다 하더라도 기본 Controller로 출력할 때와 비교할 수 없이 조용합니다. 

TMC2100으로 구동 시킬 경우 저소음의 잇점 이 외에 얻을 수 있는 Side Effect로는 모터의 진동이 작아지다 보니, 출력물의 품질이 좋아 진다는 점 입니다.  이 점은 뒤에서 다시 논해 보기로 하고 우선 기본 Controller를 MKS Gen 1.4 + TMC2100으로 업그레이드 하는 방법을 알아보도록 하겠습니다. 

일단, TMC2100의 정품은 국내에서 구하기도 쉽지 않고 가격도 만만치 않습니다. 국내에 들어와 있는 TMC2100 은 대부분 중국산 Clone 이죠. 물론 전 Aliexpress를 통해 구입을 했는데요.. 국내에선 마진을 좀 붙이기 때문에 원 가격을 비교해 보면 Aliexpress 구매가 좀 더 저렴 합니다.  배송에 시간이 기본 2주는 걸리지만.. 그렇다고 또 당장 급한 것도 아니니...  

일단 제가 구입한 경로는 아래와 같습니다. 

MKS Gen 1.4 보드와 TMC2100 5개를 묶어 대략 60달러에 판매를 합니다. (그래도 만만치 않은 가격.....)

2주가 지나.. 어제 도착을 했습니다. ^^ 역시 Aliexpress 쇼핑의 백미는 잊을 만 할 때 불연듯 벨이 울리는 점이라는 거가 아닐까...ㅋ

MKS Gen 1.4 보드와 각각 개별 포장된 TMC2100 Clone 5개 그리고, PC와 연결하기 위한 USB 케이블 입니다. 

아래는 Tevo Tarantula 구매 시 들어 있던 Controller와 비교한 것입니다. 

노란색 박스로 표시한 부분이 모터 드라이버 부분으로, tevo 보드의 경우엔 기판에 실장이 되어 있고, MKS Gen 1.4 보드의 경우에는 위의 사진 처럼 Driver 보드를 꽃을 수 있게 되어 있습니다. 총 5개의 모터 구동 단자에 4개(X, Y, Z, E)를 설치한 모습입니다. 너머지 1개 포트는 듀얼 Extruder를 위한 것인데, 저는 Single Extruder를 사용하니 TMC2100 한 개는 그냥 Spare Part로 남는 셈 입니다. ^^

자.. 우선은 위의 사진에는 TMC2100 을 설치 했지만, 설치하기 전에 12V 전원을 연결하고, USB를 Mac 이나 PC와 연결 Audino를 통해 Marlin 펌웨어를 입혀 줘여 합니다.  보드 자체가 문제가 있을 지도 모르니... 순서대로..

일단, 보드에 LCD를 연결해야 하는데.... Tarantula에서 사용하는 LCD는 RepRap discount smart controller 2004 LCD 인데요.. 2004는 20글자 x 4줄 이라는 의미죠.. ^^   


이 녀석을 연결할 때 주의할 점이 있습니다. EXP1과 EXP2 두 개의 케이블을 MKS Gen 1.4 보드의 해당 포트에 각각 아래의 포트에 연결을 해 주면 되는데, 연결 방향이 반대 입니다. 

즉, 케이블의 홈이 반대로 들어가야 합니다. 당얀히 홈에 맞게 넣어야 되는데, 홈 반대로 돌려 넣으려면 들어갈 수가 없습니다. 그래서 이 홈을 Sand Paper(빼빠)로 갈아내야 합니다. 이유는 원래 Smart Controller와 Discount Smart Controller의 핀 연결 방향이 뒤집혀 있기 때문입니다. TT

암튼 정리하면 EXP1 - EXP1 , EXP2 - EXP2에 연결하는 것은 맞지만, 커넥터를 홈에 끼우면 안되고, 180도 돌려 끼워야 하고, 그러기 위해서는 케이블에 난 홈 돌출부를 갈아내야 한다는 것 입니다. 

연결을 하고, USB 케이블을 연결하면 (전원은 아직 연결하지 않습니다) LCD에 아무것도 나오지 않습니다. 소프트웨어가 올라가 있지 않기 때문이죠.. Tevo 보드가 MKS Base 이기 때문에, 펌웨어는 수정 없이 기본 Controller에 사용하던 펌웨어를 수정 없이 그대로 펌업 해 주면 됩니다. 수정할 부분이 없습니다.  기존 컨트롤러에 Marlin을 업로드 하는 것과 동일한 방법으로 업로드 해 주면 됩니다. 업로드가 끝나면 LCD 화면에 Marlin이 표시될 것 입니다. 

자 이제 USB 케이블을 빼고, TMC2100을 꽃아 줍니다. 

위의 사진에서 보는 바와 같이 보드에는 각 포트에 3개의 점퍼들이 꿏혀 있는데요., 이 점퍼들을 모조리 뽑아 줍니다. 총 15개 갰죠.. 뽑은 점퍼들은 잘 보관을 하시면 됩니다.  이 점퍼는 MS1, MS2, MS3 라는 명칭을 갖고 있는데, Stepping Motor의 Format을 설정하는 점퍼들 입니다. 

보시는  바와 겉이 3개의 점포를 어떻게 연결(1) 혹은 분리(0) 하느냐에 따라 stepping이 결정됩니다. 모두 다 뺀다는 것은 000으로 Full Step으로 설정하겠다는 의미가 됩니다.  점퍼는 뭐 이 정도...


TMC2100을 위의 그림에서 보는 바와 같이 가변저항 조절 나사가 보드의 케페시터 쪽으로 오도록 해서 꽃아 주면 됩니다.  Single Extruder라면 위의 그림에서 볼때 제일 오른쪽은 꽃을 필요가 없습니다. 

자 이제 나머지 부분들을 아래의 그림을 참고해서 연결해 주면 됩니다. 

그림에서 하단의 터미널 블럭에 각 케이블을 연결할 때는 극성에 주의 해야 하는데, Hotend의 경우에는 극성이 없으므로, +/-는 무시하셔도 됩니다.  나머지 Fan, heat Bed, 12V 전원 케이블은 극성에 맞춰야 합니다. 

모터 케이블은 맨 마지막에 연결을 해야 합니다. 우선은 TMC2100의 reference Voltage를 확인 및 조정해야 하지요.. BLTouch를 사용하신 다면, 위의 그림에서 표시한 부분에 연결을 해야 하는데, 

듀폰 케이블의 노란색이 위로, 가운데는 빨간색(5V), 그리고 브라운 색(GND)가 제일 아래로 향하도록 연결해 줍니다. 기존 tarantula 보드에서 BLTouch를 사용하고 있었다면, 아마 빨간색과 브라운색을 서로 바꿨을 것 입니다.  MKS Gen 1.4 에 연결항 때는 이 뒤바꿨던 케이블을 다시 정상으로 되돌려 연결해야 합니다. 

자..이제 TMC2100의 Vref를 조정해야 하는데, 여기에 Multimeter가 필요 합니다. DC Voltage를 측정해야 하기 때문인데요.. 판매자는 0.65V로 설정이 되어 있다고 하지만, 절대 믿어서 안되겠죠.. 원래 Vref 값을 결정할 때는 모터가 사용하는 전류등의 정보가 필요하고 이를 기준으로 계산을 해야 하는데, 일반인들이 이를 따져 보기엔 좀 힘듬니다. 

저의 경우엔 열심히 따져 봤지만, 여러분까지 그런 수고를 반복할 필요는 없습니다. Tarantula에서 준 모터를 기준으로 하면 그냥 대략 1.25V로 맞추면 됩니다. 

그래도 식이 궁금하신 분을 위해....

BIGTREETech 의 TMC2100 clone의 경우, Current(RMS) = Vref * 1.9/2.5 라는 식을 제시하고 있습니다. 

Tevo Tarantula의 모터는 1.8A 인데, 이것은 Peak 이므로, 대략 70%를 잡으면, 1.26A이 됩니다. 

1.26 = Vref * 1.9/2.5 이므로, Vref = 1.66V 가 되는데, TMC2100 clone의 최대 Current는 1A 입니다. 즉, 예초에 1.26A 까지 설정할 수가 없는 셈 입니다. 최대 Current인 1A를 가지고 계산을 해 보면, Vref = 1.315V 이지요.. 따라서, 대략 1.2 ~ 1.25V로 설정을 하는 것인데요.. 1.3V로 설정하는 것이 좀 찜찜해서..^^ 결국 역산을 해 보면, Tevo Tarantula 모터를 기준으로 대략 56% 정도의 Power를 쓰는 셈이 됩니다. 

자 그럼 실제로 어떻게 Vref를 맞추는지 간단히 알아보도록 하겠습니다. 

Vref를 확인하는 핀은 위의 그림과 같습니다. 모터 케이블들과 USB케이블은 연결하지 않은 상태에서 12V전원을 인가하고, TMC2100의 GND에 멀티미터의 검은선을... 그리고, 가변저항 쪽에 빨간색 선을 대고 측정을 하면 되는데, + 나사 홈의 Center를 찍으면 됩니다. 힘을 너무 주지 마시고 살짝 대어 측정해야 합니다. 멀티미터가 없다면.. 곤란합니다. 절대 멀티미터가 필요하며, 없다면 다이소 같은 곳에 가시면 몇 천원에 구매 가능 하죠.... 

돌리는 드라이버는 원래 세라믹 미니 드라이버를 사용해야 하지만, 없다면 그냥 안경 십자 드라이버를 사용해도 됩니다. 대신 좀 조심해야 합니다. 이 가변저항은 아주 민감하기 때문에 힘을 빼고, 정말 천천히 매우 조금씩 세밀하게 돌려야 합니다. 

시계 방향으로 돌리면 Voltage 값이 올라가고, 시계 반대 방향으로 드라이버를 돌리면 Voltage 값이 떨어 집니다.  정말 개미 코딱지에 묻은 먼지 만큼 조금씩 돌려가며 확인해야 합니다. 

굳이 1.25V를 정확히 맞출 필요는 없습니다. 사실 맞추기도 너무 힘들죠.. 대략 1.2 ~ 1.25V 안에 들어오게 조정하면 됩니다. 

모든 TMC2100의 Vref를 맞췄다면, 이제 전원을 OFF 하고, 비로서 모터 케이블을 연결합니다.  연결이 끝나면 전원을 넣고 LCD Controller를 이용하여 X, Y, Z 모터를 각각 1mm 해상도로 조금씩 돌려 올바르게 구동하는지를 확인합니다.  모터가 잘 움직인다면, 이제 Nozzle의 온도를 170도 이상으로 올린 후에, LCD Controller를 이용하여 Extruder의 모터도 구동을 해 봅니다. 

모든 모터가 잘 동작한다면.. 일단은 1차로 완료가 된 것입니다. 

자.. 이제 모터와 관련된 각종 파라미터를 좀 조정해야 합니다. 이유는... TMC2100로 모터를 구동할 경우 소음이 작은 이유가 16분주 모터를 내부적으로 256분주로 보다 세밀하게 조정하기 때문인데, 이 때 계산하는 데 시간이 걸립니다. 

따라서, 이 연산에 필요한 시간보다 더 빠르게 모터를 가변 시킬 경우 소위말하는 탈조, 즉 Motor Skipping 현상이 발생하게 됩니다. TMC2100으로 모터를 구동시킬때 속도를 좀 낮춰 구동해야 한다는 이유가 여기에 있는데..

TMC2100은 원래 다양한 모드로 설정을 할 수 있습니다, 크게 보면 저소음 모드인 stealthchop 모드와 모터의 구동력에 중점을 둔 spreadCycle 모두가 있습니다 만, 중국산 Clone을 사용할 경우에는 이러한 모드에 대해 검토할 필요가 하나도 없습니다. 이유는 모드 변경을 할 수 없기 때문입니다. TT, 가장 저소음 모드인 16분주 stealthchop 모드로 고정되어 있죠... 아래의 테이블에서 제일 밑에 녀석(CFG1 open, CFG2 open) 입니다. 

엄밀히 말하면 중국산 Clone 제품도 사용자가 미세한 남땜 기술을 이용하여 모드를 변경할 수 있지만, 일반인들은 거의 불가능 합니다. 

위에서 언급했듯이 stealthChop 모드로 설정되어 있을 경우, 급격한 속도의 변화 즉, 가속도의 변위가 클 경우 탈조 현상이 벌어지게 되기 때문에 모터 구동과 관련된 파라미터 중에, Velocity, Acceleration, Jerk 값들을 모두 낮춰줘야 합니다. 물론 이 값들을 낮춘다고 해서 출력물 품질에 큰 영향을 주지는 않습니다.  적어도 제가 판단하기엔 말이죠... ^^

아래의 값들은 제가 현제 설정한 값들 입니다. 

Velocity
Vmax X : 500, VmaxY : 500, Vmax Z : 7, Vmax E : 50

Acceleration
Accel : 500, A-retract : 10, A-travel : 1200, Amax X: 500, Amax Y: 500, Amax Z:60, Amax E:50

Jerk
Vx-Jerk:4, Vy-Jerk:7, Vz-Jerk:+000.20, Ve-Jerk:1

위의 설정에서 Amax Z , Amax E 값은 LCD로 설정이 불가 합니다. 기본 0 에서 100단위로 올라가죠.. Vz Jerk (0.2)도 마찬가지 입니다. 따라서 터미널에서 Gcode로 설정을 해 줘야 합니다. 

Velocity의 경우

M201 Z60 E50

Jerk의 경우

M205 Z0.2

명령을 내린 후에, M500으로 EEPROM 업데이트를 해 주면 됩니다. 

 

보드의 크기가 tarantula의 기본 Controller보다 크기 때문에 보드 설치에 좀 난해 합니다. 기존의 설치 위치에 그대로 설치가 어려울 수 있습니다. ^^ 

저의 경우에도 일단 쳄벼 벽에 홀을 내고 바깥으로 보드를 챔버 벽쪽에 설치하는 방향으로 컨셉을 잡았습니다. 아직 케이스를 만들기 전이라 엉망이죠.. 지금 열싴히 보드 holder를 출력 중에 있습니다. ^^

탈조에 대한 파라미터만 제대로 잡으면, 정말 더할 나위 없이 좋은 드라이버 입니다.  6만원 가량을 투자할 가치는 충분하다고 생각이 드는데요.. 모터가 저 소음 모드로 구동을 하다보니, 프레임에 전달되는 모터 구동 진동도 현격하게 줄어 들게 됩니다. 이 영향으로 출력 시에도 출력물에 보다 안정감을 주게 되어, 출력물 품질 개선에 다소나마 좋은 효과를 주게 됩니다. 

자 이번 포스트는 여기까지 입니다. 

다음 포스트에서는 나머지 기타부분에 대한 업그레이드 부분들을 소개해 드리며 마무리 짓도록 하겠습니다. 


공유하기 링크
Comments