(자작) 3D프린터로 볼륨컨트롤러 DIY (for Mac) : 클리앙

안녕하세요. Fabricator 입니다.

저번 글에서 3D프린터와 PCB제작으로 1Key 키보드를 만든 글을 올렸습니다.

이전 글 : https://www.clien.net/service/board/lecture/18799573CLIEN

현재 키보드 프로젝트를 계속해서 진행하고 있는데,자작D프린터로볼륨컨트롤러DIYforMac클리앙 이번에 만든 볼륨컨트롤러는 앞으로 만들 n키 키보드에 들어갈 예정입니다.

이번에도 이전글들과 마찬가지로 제작방법과 소스파일들을 공유하고자 글을 씁니다. 참고로 준비한 아두이노 코드는 윈도우에서는 작동하지 않습니다. 윈도우용은 추후에 작업할 예정입니다.


스크린샷 2024-10-02 오후 1.47.19.png


LINK

제작방법

준비물

3D 모델파일 다운로드

아두이노 소스코드 다운로드

- 전자 부품 :

(1) Arudino Micro x 1 (2) NeoPixel ring (12LED) x 1

(2) Rotary Encoder (PEC11R-4015F-S0024) x1

(3) Resistor(10k ohm) x 4

(4) Capacitor(0.01uF) x 2 


 먼저 전자부품의 CAD 데이터를 참고하여 3D모델링을 진행합니다. 이번에 설계한 볼륨컨트롤러 모델은 Body, Cover, Ring 총 3개의 주요파트로 구성되어 있습니다. 3D데이터는 위 링크에 들어가셔서 다운가능합니다.


https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FcvtIfp%2FbtsJTI8xufB%2F16p9kds1Nd8k3HBX3csiNK%2Fimg.pngLINK


https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FGYhyQ%2FbtsJTBBPJ9M%2F5WPVxulut7vKkHiDiKPWT1%2Fimg.png3D 모델링 LINK


3D모델파일이 준비가 되었으면 G-code로 변환하고 3D프린터로 출력합니다. 메탈릭한 느낌을 살리기 위해 블랙 유광 필라멘트를 사용하였고, Ring.Stl 파일은 네오픽셀의 LED 불빛이 투과해야하기 때문에 투명필라멘트를 사용하였습니다.


https://blog.kakaocdn.net/dn/r1ows/btsJTSXxtLh/M2ka2VmfbNr4tR0E2SRq9K/img.gif3D 프린팅



3D프린팅 파트들도 다 준비되었으니 이제 전자회로 작업을 진행합니다.

LINK



https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FbKnGgs%2FbtsJSrz4bD0%2FKkdsb5MCBK2IitAcS5hnQ1%2Fimg.png회로도


위 그림처럼 회로를 구성하였습니다. 아두이노 마이크로의 D2, D3핀은 외부인터럽트(CHANGE)를 사용하여 엔코더의 변화를 센싱하고,

D4핀은 엔코더의 스위치에 연결합니다. 엔코더 스위치는 아두이노의 내부풀업저항을 사용할 예정이므로 스위치의 한쪽 핀은 D4핀과 연결하고 나머지 핀은 GND와 연결합니다.

 

D6핀은 네오픽셀의 데이터핀(IN) 과 연결합니다.



LINK



https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FceBFdJ%2FbtsJSrttEeb%2FaqnKJUZyxjlDabNDcc4szk%2Fimg.png데이터시트 자료 LINK

엔코더의 A,B,C 핀은 데이터시트가 제공하는 회로대로 구성하였습니다.

회로가 다 구성되었으면 브레드보드 레벨에서 동작 테스트를 하면 좋은데요. 상단에 아두이노 소스코드파일을 다운받아 아두이노 마이크로에 업로드합니다.

한가지 주의할 점이 아두이노 예제에서 제공하는 keyboard.h에서는 볼륨조절하는 키가 구현되어 있지 않습니다. 그래서 아래 파일 다운받으셔서 원시 헤더파일을 수정해야합니다.

keyboard_headerfiles.zip

mac 기준으로 볼때 파인더 -> 폴더로 이동 -> /Users/xxx/Library/  -> Arduino15 -> libraries -> Keyboard -> src 에 들어가서 위 파일을 덮어 씌웁니다.

 

코드를 아두이노에 업로드하고 제대로 동작되는지 테스트 해봅니다.


https://blog.kakaocdn.net/dn/dLg1Dc/btsJSoKe3wc/VckxVS2Z6RKR76mUb9TeW0/img.gif볼륨컨트롤러 기능 테스트 LINK


기본 기능이 잘 작동되면 납땜 작업을 진행하고, 조립하여 완성합니다.


https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FDSYqd%2FbtsJT71mxur%2FKEp3loJBOK7FKtEI1lZVk0%2Fimg.png납땜작업 LINK



https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FyrlEk%2FbtsJUcBtnol%2FRAFLFG4nek8fOMmtoYb55k%2Fimg.png완성된 3D Printed 볼륨컨트롤러 LINK



이제 키보드를 만들때 볼륨 노브를 넣어줄 준비는 다 되었습니다. 다음 프로젝트에서도 더 빌드업된 디바이스로 찾아뵙겠습니다.

긴글 읽어 주셔서 감사합니다.


자료실