본문 바로가기

・ 덕질 :: hobbies

[3D프린터] 소음 zero 프로젝트 - 2. MKS Gen v1.4 + TMC2208

내가 사용하는 3D프린터는 Tevo Tornado라는 모델이다. 

기본적으로 Creality사의 직교형 프린터인 CR-10의 중국산 클론인데, 일부 기능은 개선되어 더 낫다는 평이 있어 구입했다.

출력 품질이나 만듦새등은 만족스러운데 소음이 상당히 거슬렸다.

물론 전에 사용하던 Prusa i3의 초기 모델에 비하면 양호한 편이지만 그래도 밤새 출력을 하기에는 고주파음이 상당히 거슬리는 편이다.

그래서 Trinamic사의 TMC2208 스테퍼 모터 드라이버로 교체하기로 했는데, Tevo Tornado는 스테퍼 모터 드라이버가 온보드 형태인 MKS Base v1.4 보드라 생각보다 일이 커졌다.

드라이버를 바꾸려면 보드도 바꿔야한다는...


[3D프린터] 소음 zero 프로젝트 - 1.스텝퍼 모터 드라이버란?



그래서 TMC2208 드라이버와 함께 MKS Gen v1.4도 주문했고 3주만에 도착했다.






우선 컨트롤 박스를 열고 메인보드를 분리했다. 각 커넥터는 그대로 새로운 보드에 연결해야하기 때문에 이름을 적어주었다.





새로 설치할 보드인 MKS Gen v1.4는 기존 MKS Base보다 크기때문에 컨드롤 박스의 볼트 구멍이 맞지 않았다.

새로 구멍을 뚫는거보다 기존 구멍에 연결할 프라켓을 디자인해서 출력했다.





컨트롤 박스에 브라켓을 설치했다. 혹시 볼트때문에 쇼트가 날 가능성이 있어 검정 절연테이프를 붙였다.





TMC2208모터 드라이버의 모습.

TMC2208은 설치에 3가지 옵션을 제공한다.

1. 레거시 모드

2. Standalone (OTP모드)

3. Dynamic모드 (UART)


레거시 모드는 그냥 보드에 껴우면 되는데 기본적으로 저소음 모드인 StealthChop2로  작동하게 된다. 

StealthChop2는 굉장히 조용하지만 발열이 심하고 모터의 토크가 낮아져서 고속 출력시 탈조가 발생한다.


두번째인 Standalone모드는 첫번째 보다는 소음이 있지만 토크가 보다 강력하다. 

다만 Standalone으로 설치시 모터 드라이버 칩의 실리콘 구조에 변화가 생겨 다른 모드로 변경이 불가능하다. 

그래서 OTP모드, 즉 One Time Programming 모드라고도 한다.



세번째는 Dynamic모드인데 위의 StealthChop2와 Standalone모드를 속도에 따라서 자동으로 변경한다.

보통 모터 드라이버의 가변저항을 돌려서 적정 전압값을 맞추곤 하는데, Dynamic 모드에서는 최대 허용 전압값(1.5v)로 설정해두고

나머지는 펌웨어에 설정된 출력 속도에 따라 자동으로 변경한다.


다만 Dynamic모드로 설치시 양방향 시리얼 통신이 가능하도록 약간의 작업이 필요하다.

이전 모델인 TMC2100은 SPI를 사용하는데 반해 TMC2208은 UART를 사용해서 보드와 통신한다.








다음과 같이 듀폰 커넥터에 1K옴의 저항을 연결해준다.





보드 상의 점퍼를 납땜에서 연결해주고






보드의 PDN핀에 만들어둔 듀폰 커넥터를 납땜해준다.










보통 소음이 많이 발생하는 X축과 Y축의 드라이버에 작업하는데, 나는 하는김에 전부 바꿔보았다.

어차피 드라이버가 하나 남아서 나중에 스킵이 발생하면 익스트루더 모터만 스텐드얼론 모드로 바꿀생각이다.




가변저항을 돌려서 최대 전압값을 맞춰주었다.




마린 펌웨어 1.1.9를 업로드하고 몇가지 설정값들을 변경해주고 작동을 해보니 생각처럼 움직이지 않았다.

모터움직임이나 엔드 스탑은 기존의 펌웨어 값을 적용해서 문제가 없었는데

핫엔드 온도가 전혀 올라가지 않았다.


몇일 삽질해서 알게 된 사실은 

MKS Base v1.4와 MKS Gen v1.4의 커넥터 배열이 살짝 다르다는 이유였다.

아.. 진짜 별거 아닌게 속을 썩였다...





위의 그림에서 파란색원 부분이 MKS Base v1.4는 반대다. 

다시말해. 기존의 보드는 히터 E0의 먼저고 E1 순서로 되어있는걸 모르고

펌웨어만 눈알이 빠져라 들여다 봤다.





기존 배선을 분리하기전에 순서대로 번호를 적어뒀는데,

MKS Gen v1.4에는 위의 그림의 1.2.3.4.... 순서가 아니라

3.4.1.2.5.6.7.8. 순으로 연결해야하니 혹시 나와 같은 사람이 있다면 주의하길 바란다.







보드를 바꾸니 브라켓과 방열핀 때문에 기존의 파워서플라이를 넣을 공간이 없어졌다.

아니 드라이버 발열을 잡아줄 쿨링팬을 설치할 자리가 없어서 파워를 그대로 밖으로 옮겼다.

최종적으로는 컨트롤 박스 아래쪽으로 고정할 생각이다.

덕분에 넓어진 자리에는 기존 40mm쿨링팬 대신 80mm쿨링팬으로 교체했다.

TMC모터 드라이버로 교체하면 모터 소음이 거의 없어져서 오히려 쿨러소리가 거슬린다.







80mm쿨링팬을 위해 컨트롤 박스를 드레멜로 잘라냈다.

안전을 위해 그릴을 출력해서 덮어줘야겠다.




이제 모든 작업이 끝나고 테스트 출력을 해보았다.

앞으로 몇몇 모형들을 뽑으며 스텝값 조정해야 하지만

일단 엄청나게 조용해진 조용해져서 새벽에 출력을 걸어두고 잘 수 있게 되었다.


어차피 난 50mm/s의 속도로 출력하니 StealthChop2모드로 작동하겠고

기존 출력 대비 10분의 1 수준의 소음이라 매우 만족스러웠다.

모터 진동이 없어져서 출력물의 표면 품질도 다소 나아진듯하다.


납땜등의 작업이 다소 성가시지만 기본 보드 또는  a4988등의 드라이버를 사용하는 사용자라면

충분히 가치가 있는 업그레이드라고 생각된다.












  • 강준영 2019.02.28 11:43

    안녕하세요 토네이도 유저입니다. 커뮤니티에도 이렇게 상세한 후기는 없네요. 뭐 하나 여쭤볼 게 있습니다. 견적은 얼마정도 나오셨나요?

    • 우식이 2019.02.28 12:08 신고

      안녕하세요! 국내에는 Tevo유저가 별로 없던데 반갑습니다^^

      알리에서 MKS Gen V1.4*1개 + TMC2208*5개 번들로 53,500원에 구입했습니다. tmc드라이버는 bigtreetech사의 제품입니다.

      본문에도 나와있지만 Uart모드로 설치를 위해서는 1k옴 저항과 전선, 수축튜브가 있어야 하는데 이런건 국내 쇼핑몰에서 쉽게 구입가능합니다.

      성공하시길 바랍니다.

  • 옥다방고양이 2019.03.26 18:54

    작업이 잘정리되어 쉬운듯해도 고생이 많았을듯합니다. ㅎ 궁금한게 하나 있른데요. 마린펌 올릴때 example에 있는 모델중에서 자신의 프린터꺼를 올리는데 mks보드는 무엇을 올리나요?

    • 우식이 2019.03.26 19:26 신고

      MKS v1.4보드를 사용하셔도 펌웨어에서는 MKS_Gen_v1.3으로 선택하시면 됩니다.

      펌웨어 configuration에서 아래에 해당하는 부분 입니다.

      // The following define selects which electronics board you have.
      // Please choose the name from boards.h that matches your setup
      #ifndef MOTHERBOARD
      #define MOTHERBOARD BOARD_MKS_GEN_13
      #endif

  • tmc 2019.05.14 20:26

    pdn 아래 핀을 제거 해줘야되나요?

    • 우식이 2019.05.14 20:30 신고

      제거하지 않으셔도 괜찮습니다. 저의 경우 살짝 인두로 녹여서 핀을 위쪽으로 밀어올리고 듀폰 커넥터를 연결했습니다.

  • tmc 2019.05.14 21:03

    답변감사합니다.
    하나만 더 물어볼게요..
    tmc2208 v2를쓰고잇는데 가운데 점퍼도 꼭 해줘야되는 부분인가요?

    • 우식이 2019.05.14 21:12 신고

      TMC2208 v2도 UART통신(다이나믹 모드) 사용하신다면 점퍼 연결 해주셔야 하는걸로 알고있습니다. 정확하진 않으니 제조사 홈페이지를 확인하시길 권합니다.

    • tmc 2019.05.14 21:17

      사진이 잘 안나와잇는데
      어디를 연결해주어야되나요?

    • 우식이 2019.05.14 21:33 신고

      참고하세요 https://github.com/KevinOConnor/klipper/issues/720

    • tmc 2019.05.14 22:44

      감사합니다.
      다행히 잘켜지네요
      모터방향도 그대로네요
      제가 ramps보드에 마를린펌을 쓰는데
      어떤부분을 바꿔줘야되나요?

    • 우식이 2019.05.15 00:05 신고

      드라이버만 바쑤신건지 메인보드도 바꾸신건지 모르겠지만 스탭값부터 엔드스탑 방향 등등 여러가지를 설정해주셔야해요. 이부분은 기기별로 다르고 사용하시는 모터별 변수가 많아서 제가 어림잡아 설명드리기 어려운 면이 있네요^^;