본문 바로가기

ATTiny85를 사용한 WS2812B 체커기 만들기

by rudals.kim 2022. 12. 14. 댓글 개
반응형

WS2812B LED Strip을 몇 개 가지고 있는데 여러 가지 용도로 활용하여 사용하고 있습니다.

이 LED를 사용하면서 불편했던 점이 LED가 모두 잘 동작되는지 점검하는 부분이었습니다.

WS2812B 특성상 LED Strip의 중간에 불량이 발생될 경우 이후 모든 LED가 점등이 되지 않는 문제가 있습니다.

관련해서 WS2812, WS2812B, WS2813에 대해 비교해 놓은 아래 게시글을 참고하시면 좋을 것 같습니다.

 

[아두이노] WS2812, WS2812B, WS2813 비교 및 WS2812B 사용하기

WS2812B를 저렴하게 구매 할 기회가 생겨서 한 묶음 구매하였습니다. 구매하고 동작방법을 알아보던중 이 LED가 여러 버전이 있고 각 버전별로 무엇이 다른지 궁금해졌습니다. 그래서 각 각의 WS2812

rudalskim.tistory.com

그래서 사용전에 LED를 점검해야 하는데 매번 커넥터를 납땜하여 동작시키는게 불편하여 간단히 WS2812B LED를 테스트할 용도로 WS2812B 체커기를 만들어 보았습니다. 회로는 단순히 ATTiny85에 LED용 커넥터와 외부 전원 커넥터 그리고 추후에 사용될지 몰라 추가해 넣은 스위치가 전부인 매우 간단한 회로입니다. 

아래와 같이 배치하여 PCB를 그린 후 거버 파일을 생성하였습니다.

아래 JLCPCB 사이트에 접속하여 생성된 거버 파일을 업로드하였습니다.

 

PCB 프로토타입; PCB 제조 업체

JLCPCB, 더 빠른 PCB & SMT 어셈블리를 위한 것이다 모든 단계에서 시간과 비용 절감한다. 클릭하시면 동영상을 볼 수 있습니다.

jlcpcb.com

제가 주문할 때는 아래와 같은 주문 페이지가 아니었는데 주문 페이지가 개편이 된 것 같습니다.

아마도 이번에 다층 PCB 서비스를 시작하면서 Advanced PCB 메뉴가 추가된 듯 보입니다.

관련해서 좀 살펴보니 저렴한 가격에 최대 20층의 고주파 회로 기판까지 지원할 수 있다고 합니다.

현재 6층 PCB를 $2에 제작할 수 있다고 하니 관심 있으신 분들은 아래 내용을 참고해 보셔도 좋은 것 같습니다. 

 

6 Layer High Precision PCBs for $2 - JLCPCB News

6 Layer High Precision PCBs for $2 Currently, on JLCPCB, we've launched many promotions for 6-layer PCBs prototype. There are No Extra Charges for via-in-pad for 6-layer PCBs anymore. In addition, for the 6-layer, there's a $2 limited-time special offer be

jlcpcb.com

아무튼 거버 파일을 업로드한 후 한 번도 사용해 보지 않은 노란색 PCB를 선택 후 주문번호 표시 해제만 선택하여 주문을 넣었습니다.

PCB 색상을 변경하니 제작에 3일이 추가됩니다. 여기에 배송 3일이 더해져 6일 만에 배송되어졌습니다.

워낙 작은 사이즈라서 그런지 PCB 5장을 주문을 넣었는데 10장이 배송되어져 왔습니다.

역시 PCB로 제작하니 깔끔하고 보기 좋습니다. 나름 노란색 PCB도 괜찮은 듯 보입니다.

워낙 간단한 회로인 데다가 사용하지 않는 핀은 건너뛰고 8핀소켓, 전원잭, 스위치, 커넥터를 손으로 납땜을 하였습니다.

작은 사이즈의 PCB인데 너무 다닥다닥 붙여 넣어 좀 답답한 느낌이 듭니다. 

가지고 있는 ATTiny85가 DIP 타입이 아닌 SOIC의 칩을 가지고 있어서 아래와 같은 SOIC TO DIP 변환 PCB를 사용하여 꽂았습니다.

테스트용 소스는 아래 github의 코드를 사용하였습니다. 단순히 포트와 LED 개수만 변경하였습니다.

 

GitHub - DannyHavenith/ws2811: AVR code to control WS2811/WS2812 LED strings from an 8Mhz or 9.6 Mhz AVR. Includes sample animat

AVR code to control WS2811/WS2812 LED strings from an 8Mhz or 9.6 Mhz AVR. Includes sample animations. - GitHub - DannyHavenith/ws2811: AVR code to control WS2811/WS2812 LED strings from an 8Mhz or...

github.com

ATTiny85에 업로드를 한 후 테스트해 보았더니 아래와 같이 LED가 무지개색으로 변경되면서 잘 동작됩니다.

아래 이미지는 제가 왜 게시글 제목을 'ATTiny85를 사용한 WS2812B 체커기 만들기' 로 작성했는지를 보여주는 이미지입니다. 우연한 기회에 중고 WS2812B LED Strip 한 다발을 얻게 되었는데 정말 많습니다.

LED를 테스트해 보려면 일일이 아래와 같은 커넥터나 전선을 연결한 후 브레드 보드와 연결하여 테스트해야 합니다.

한 두 개면 그냥 사용하겠는데 LED가 많은 경우 또는 중간에 LED가 파손된 경우라면 테스트하기가 매우 번거롭습니다.

그래서 아래와 같이 '콕 콕' 찍어서(?) 테스트할 수 있는 게 필요하여 이 PCB를 제작하게 되었습니다.

원하는 부분에 커넥터를 찍어서 테스트하고 불량 난 곳은 마킹 후 다음 LED 커넥터로 옮겨 빠르게 테스트를 할 수 있어서 편리합니다.

이로써 LED 체크를 좀 더 쉽고 빠르게 점검할 수 있게 되었습니다.

반응형

댓글