이종훈's 작업실


기구부는 거의 손대지 않고 전자부품들을 정리하고 있습니다. 












외부 스텝 드라이버(TB6560)을 쓸 예정입니다. 












추가로 Heat Bed ON/OFF 용 릴레이와 SMPS OFF용 SMPS 를 1개 보드에 몰아넣어서 제작했습니다. 










RAMPS 보드에서는 Heat Bed 와 연결된 전원부가 잘 나가기고 하고


보다 빠른 가열을 위해 24V Heat Bed를 쓴다던가 하는 경우가 있기 때문에 위와 같은 제품도 판매를 하더군요.


저는 항상 그렇듯 보유중인 오래된 부품들 처리용으로 제 전용 PCB를 만들었습니다. 













RAMPS 보드에서 위의 하늘색 화살표로 가리키는 부분에 선을 연결하면 


M80 / M81로 파워 서플라이를 제어 가능합니다. 








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



사실 릴레이만 있으면 바로 보드와 파워 연결해서 써도 됩니다. 


저는 히트베드용 릴레이도 있고 하다보니 부품 고정이 지저분해지는게 싫어서 


별도로 보드를 만들었습니다.  











RAMPS 보드에서 신호가 제대로 나오는지 확인해 봤습니다. 




저작자 표시 비영리 동일 조건 변경 허락
신고

Comment +0

일단 P5 핀을 아날로그 입력으로 꼭 써야만 하는 상황에서.




알고보니 아날로그 입력시에는 핀 번호가 다르네요. P5 = A0 라서 


analogread(0) 이 P5 핀의 아날로그 입력이라는군요








다만 analogWrite는 그냥 핀번호 그대로고요.




하여간 계속 리셋문제가 생겨서 다시 구글링을 했더니 


레딧에 저와 같은 분이 계시더군요





결론은 원래 정품 Digispark는 괜찮은데 클론버전은 퓨즈비트 설정이 안돼있어서 그런듯.





하여간 이걸 또 어떻게든 새 부트로더를 업로드해야 하는 상황입니다. 



Arduino as ISP를 사용해보려 했으나



안되는군요


알아보니 boards.txt에 Digispark 보드가 등록이 안되어 있어 그런것 같은데..


설명을 읽어봐도 무슨 말인지 잘 모르겠어서 직접 ISP로 hex 파일을 굽는게 낫겠다 싶었습니다. 




https://www.instructables.com/id/Digispark-DIY-The-smallest-USB-Arduino/


이 링크를 참조했습니다. 






ATMEL 홈페이지에 가서 Atmel Studio를 다운받았습니다.


그런데 소지중인 MKii ISP가 잡히지가 않네요.. 인식은 되는데 에러가 납니다. 


알아보니 윈도우 7 이상에서 드라이버 문제가 있다는 것 같은데 드라이버는 이상없이 잡혔는데 말이죠


더 알아보니 드라이버 버전이나 Atmel Studio에 따라 인식되는 펌웨어가 있고 안되는 경우가 있다는데


이제 슬슬 너무 지치기도 했고 그냥 알리익스프레스에서 USBASP 새로 주문하고 


만들던 보드는 아두이노 미니로 다시 원상복귀해서 완성하는걸로 결정지었습니다..



돌고돌아 제자리네요



저작자 표시 비영리 동일 조건 변경 허락
신고

Comment +2

  • 하얀마음 2017.06.23 08:35 신고

    안녕하세요?
    이런 경우가 생기기도하는군요
    저는 큰 문제없이 테스트가 되었는데 나중에 같은 문제가 발생하면 좋은 정보가 될거 같습니다.

직접 설계를 하며 델타에 없었던 편리한 기능들을 이것저것 넣고 있습니다. 





스텝 드라이버는 CNC에 쓰이고 남은 TB6560 드라이버입니다. 


기존에 쓰던 A4988은 편리하긴 하지만 2A 까지만 드라이빙이 가능하고


그나마도 최대출력 연속사용은 매우 불안합니다만


TB6560은 3A 드라이빙이 가능하고 아차하면 쇼트나는 A4988보다 안정성이 있습니다. 


사실 저소음의 TB6600을 쓰고싶긴 한데 최대한 소지중인 부품들 소모하는 걸 목적으로 했습니다. 








요건 접이식 스풀거치대고요. 가운데 튀어나온 두줄은 베어링입니다. 


대충 아무 스풀이나 걸기 쉽고 부드럽게 풀리도록. 









케이블 체인도 넣었습니다. 


프린터 2년 정도 열심히 쓰다보면 한 3~4번쯤은 케이블 끊어짐 문제가 있었던 것 같아요






추가로 LED 등도 넣을 생각이고요.




이런 생각들을 하다가 프린팅이 완료되면 


자동으로 전체 시스템을 셧오프 해주는 기능이 있으면 좋겠더라고요.




그래서 서칭을 해봤습니다. 



Attiny 칩을 이용해서 자동으로 스위치가 꺼지도록 한 사람이 있더군요







리밋 스위치를 만들고 출력후 베드를 끝까지 내려서 스위치가 일정시간 이상 눌러지면


SSR에 신호를 보내 전원을 off 하는 방식인 듯 합니다. 









찾아보니 오픈크리에이터 카페에도 같은 작업을 하신 분이 있었고요






이대로 하면 되겠거니 하다가도 왠지 뭔가 더 간단하게 될것만 같은 생각이 자꾸 들어서 


계속 찾아봤습니다. 







출처 : http://www.tridimake.com/2012/11/auto-shutoff-at-end-of-print.html


역시나 말린 펌웨어에서 자체적으로 지원하는군요


컴퓨터용 파워 서플라이를 쓰는 경우 


ATX의 녹색 선이랑 GND 신호를 연결하면 파워가 on되고 떼면 off 되죠.


그 신호를 줄 수 있는 명령어가 존재합니다. 


M80 은 A0 핀을 HIGH 로 올려주고

M81 은 A0 핀을 LOW 로 내려줍니다. 


3D 프린팅 프로그램에서 End Gcode 마지막에 M80 이나 M81을 넣어주면 되겠네요



하지만 저는 컴퓨터용이 아닌 일반 SMPS를 사용할 예정이므로


SSR 과 푸쉬 스위치 1개가 필요합니다. 



간단하게 개념을 스케치해봤습니다.


1. 일단 SSR에 병렬로 220V 푸쉬 스위치를 달고


2. 푸쉬 스위치를 누르면 일시적으로 220V 전원이 공급됩니다. 


3. 그러면 SMPS에서 DC 12V** 가 나오므로 SSR에 신호를 공급해 줄 수 있습니다. 


4. 푸쉬 스위치를 떼도 SSR은 계속 ON 상태여서 전원을 공급하게 됩니다. 


5. 프린팅이 완료되면 RAMPS 보드에서 LOW 신호를 줍니다. 


6. 일시적으로 SSR이 off 되면서 전원이 꺼집니다. 



**신호 레벨 때문에 5V 로 다운시켜야 할 것 같습니다. 



일단 간단하게 테스트를 한번 해 봐야 할것 같네요





푸쉬 스위치를 하나 사야하나 하고 쇼핑몰을 뒤지다가


문득 생각이 나서 부품박스에서 찾아냈습니다. 


10년도 전에 구했던 부품인데 얼마전에 테스트해보니 


내부에 귀여운 꼬마전구(6V) 가 들어있습니다만 시대에 맞춰 LED로 업그레이드해뒀던 물건입니다. 


여기에 쓰면 딱이겠네요







테스트를 위해 임시로 연결해봤습니다. 



동영상을 급하게 찍었는데 카메라 오류로 날아갔네요



생각했던 대로 잘 움직입니다. 


푸쉬 스위치 누르면 전원 켜지고 SSR에 전원이 공급되니 자체적으로 계속 켜져있다가


SSR 입력 끄면 SMPS가 꺼지네요



그냥 RAMPS 에 직결하긴 좀 불안하고 TR이나 FET 로 스위칭 회로 만들어서 연결하면 딱일 듯 합니다. 




연결과 펌웨어 설정은 

https://github.com/foosel/OctoPrint/wiki/Control-your-printer's-ATX-PSU-through-a-RAMPS-board-using-OctoPrint#atx-psu-to-ramps-14-wiring 


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

참조

저작자 표시 비영리 동일 조건 변경 허락
신고

Comment +2

  • 갤리스 2017.04.29 00:02 신고

    스풀에 베어링있어서 너무 잘풀리는것도 문제가 되더라구요...
    보우덴이라면 별 문제 없겠지만, 다이렉트 같은 경우엔 헤드가 팍팍 움직이면서 스풀을 확 잡아당길때 이게 쫙 풀려버리니까 오히려 필라멘트가 꼬이고 하는 문제가 발생합니다...

    • 그런 문제도 있군요. 일단 제작하고 난 뒤 가이드 호스를 끼울 생각이긴 한데 조립하고 난 뒤 상황을 보고 결정해야 겠습니다.

여전히 CNC용 쿨런트 제어기 만들고 있습니다. 


동작은 간단하게 1개의 수동 on/off 스위치로 CNC 입력 모드와 메뉴얼 모드를 전환하고


수동조작시는 1개의 아날로그 입력으로 제어하도록 하고 있습니다


그런데 수동on/off 스위치를 입력하면 


자꾸 리셋되는 현상이 일어나 원인을 찾지 못해 한동안 고생했는데요






알고보니 그게 리셋핀입니다;;







리셋핀을 입력으로 지정해서 쓰는 바람에 입력신호가 GND로 떨어지면 리셋이 되던거였습니다. 


다른 핀과 바꾸고 테스트해보니 여전히 작동이 잘 안되는 부분이 있더군요.


순서대로 하나씩 테스트해보니 


i2c LCD 용으로 사용하는 0번,2번핀을 제외하고


1,3번핀은 입력 사용시 이상없음


4,5번핀은 입력 사용시 리셋됩니다. 


입력핀마다 풀업 저항을 연결해놓은 상태라 변수가 있을수도 있겠습니다.



하여간 현재는 일단 아날로그 입력을 5번 핀으로, 모터 출력을 4번으로 잡고


입력 두개를 1,3번 핀으로 할당했더니 괜찮아졌네요









생각보다 시간이 좀 걸리는군요


저작자 표시 비영리 동일 조건 변경 허락
신고

Comment +2

  • 하얀마음 2017.04.19 09:39 신고

    디스플레이를 tft-lcd를 사용하면 어떨까요?
    국내에서 1.8inch가 1만원정도하고 알리에서는 3.96불정도 합니다.
    좋은 글 잘보고 갑니다.

    • 아두이노 쓰면 더 편한데 효율적으로 자원을 쓰고 싶어서 Attiny85 쓰는거라서요.
      Character LCD도 이번에 타오바오에서 저렴하게 10개쯤 샀습니다.
      사진에 나오는 LCD와 i2c 모듈 합쳐서 1500원 정도 합니다. :)

절삭유 컨트롤러를 일단 조립해놔야 알미늄 가공을 할 수 있으니


슬슬 가공테스트도 해 볼겸 해서 마무리를 급히 지었는데요





회로 마련하고


이제 그냥 스케치만 업로드해서 최종 테스트만 하면 되는 상황


그런에 이 Digispark 보드가 드라이버가 이상한건지 업로드가 되다말다.. 


최초 업로드는 정상으로 되고 두번째부터는 제대로 안되고 하는 현상이 자주 벌어집니다


아예 보드를 분리한채로 깨끗하게 연결해봐도 되는 경우보다 안되는 경우가 더 많네요.


그럴때 제어판 장치관리자를 보면 드라이버에 [?] 마크가 떠있어서 재설치해봐도 되다말다..


원인도 못찾겠고 며칠간 이걸로 골치아파서 어차피 Attiny85 칩 사용하는거니 


그냥 아두이노 부트로더 올려서 쓰면 되겠지 했습니다. 







hardware 폴더에 attiny.zip 파일만 압축풀어주면 된다고 해서 했는데










 


보드 리스트에 안뜨네요. 



지금 이걸 먼저 해결해야 할지 다시 아두이노 미니 보드를 쓸지 이것도 고민입니다. 

저작자 표시 비영리 동일 조건 변경 허락
신고

Comment +0


현재 상황입니다. 기구부의 디테일을 잡고 있습니다. 









간단한 설계할때는 볼트같은건 귀찮아서 잘 넣지 않지만


이렇게 제대로 설계할때는 전부 넣어주지 않으면 제작할 때 간섭이 생기기도 하니 신경써주는게 좋죠.











BOM 작성하면 어떤 부품이 얼마나 쓰이는지도 알 수 있어 더 좋고요












익스트루더랑 XY베이스 잡을 때 케이블 체인은 나중에 넣을 생각이었는데


너무 타이트하게 설계를 잡아서 공간이 살짝 모자라더군요


꼭 어딘가 전선이 끊어져 문제가 생기죠. 


결국 Y축방향 프로파일은 20mm 늘렸습니다. 


저게 없어도 당장 문제가 생기는건 아니지만 실제로 프린터를 몇년 써보면


미리미리 설계당시에 대비해주는게 좋습니다. 



사실 블로워팬 자리도 애매해서 지금 고민중입니다...

저작자 표시 비영리 동일 조건 변경 허락
신고

Comment +0


얼마라고??



저작자 표시 비영리 동일 조건 변경 허락
신고

Comment +0

', 'auto'); ga('send', 'pageview');