산업 제조
산업용 사물 인터넷 | 산업자재 | 장비 유지 보수 및 수리 | 산업 프로그래밍 |
home  MfgRobots >> 산업 제조 >  >> Manufacturing Technology >> 제조공정

정밀 워드 클럭: 단어 단위 분 단위 시간 표시

부품 및 소모품

정밀 워드 클럭: 단어 단위 분 단위 시간 표시
Arduino Nano R3
전체 부품 목록은 프로젝트 사이트에서 확인 가능
× 1

프로젝트 소개

이 프로젝트에 대한 자세한 내용은 워드 클럭 사이트에서 확인할 수 있습니다.

단어 단위로 분 단위 시간을 표시하고 초를 선형으로 표시하는 아두이노 워드 클럭입니다.

정밀 워드 클럭: 단어 단위 분 단위 시간 표시

디지털 시계, 아날로그 시계, 온습도 표시 모드와 라이프 게임, 사이먼, 테트리스 등 3가지 게임 모드도 탑재되어 있습니다.

마스터 클럭 없이 독립 실행하거나, 필요 시 마스터 클럭의 슬레이브로 동작할 수 있습니다.

마스터 클럭이 없으면 내장된 온도 보상형 실시간 시계(RTC)로 시간을 제어합니다.

PIR 센서나 도플러 레이더를 옵션으로 장착해 사람이 없을 때 자동으로 디스플레이를 끌 수 있습니다.

시계 크기는 500mm × 500mm(19.68″ × 19.68″), 무게 12lb(5.5kg)로 벽걸이형으로 설계되었습니다. 네 모서리에 터치 패드가 있어 설정과 제어가 가능합니다.

1단계: 워드 클럭이란?

워드 클럭은 단어, 숫자, 문자의 매트릭스를 이용해 시간을 표시합니다. 여러 설계 유형이 있으며 복잡도가 다릅니다.

단순형: 5분 단위 블록 표시

정밀 워드 클럭: 단어 단위 분 단위 시간 표시

가장 단순한 유형은 '정각', '5분 전', '10분 전' 등 5분 단위 단어 블록을 사용합니다. 약 20개 LED 블록만 필요해 제작이 가장 쉽지만, 정해진 형식으로만 시간을 표시할 수 있습니다.

중급형: 11×10 매트릭스 + 모서리 4개 LED

정밀 워드 클럭: 단어 단위 분 단위 시간 표시

110개 개별 LED로 숫자와 기본 이미지 표시가 가능합니다. 여전히 5분 단위 단어 표시지만 '5분 막 지남', '10분 거의 다 됨' 등으로 해상도를 약간 높입니다. 모서리 4개 LED로 5분 사이 4분을 채웁니다. LED 스트립을 사용해 제작 난이도를 낮춥니다.

정밀 워드 클럭: 단어 단위 분 단위 시간 표시

이 유형의 상용 제품도 있습니다. 450mm 벽걸이형은 약 1,000파운드에 교체 가능한 다양한 색상/소재 전면 패널을 제공하며, 소형 데스크톱 버전과 손목시계형도 있습니다.

고급형: 16×16 매트릭스(256개 LED)

정밀 워드 클럭: 단어 단위 분 단위 시간 표시

가장 복잡한 유형은 256개 LED를 제어하는 16×16 매트릭스를 사용합니다. 1분 단위 단어 해상도로 시간을 표시하며, 오전/오후/밤 등도 표현합니다. '따뜻함', '매우 추움' 등 온도도 단어로 표시합니다.

256개 LED로 다양한 표시 모드가 가능하지만, 매트릭스 배선 연결이 많아 제작이 꽤 복잡합니다. 표면 실장 부품으로 PCB에 LED 매트릭스를 구성하면 슬림한 본체와 단순한 제작이 가능하지만, 500mm 이상이면 PCB 비용이 비싸집니다.

본 프로젝트처럼 직접 배선하는 방식은 공간이 필요하며, 500mm × 500mm가 배선 다발을 수용하기 좋은 시작점입니다. 더 큰 벽면 전체 크기도 수제 매트릭스로 제작 가능합니다.

2단계: 주요 변경 사항

정밀 워드 클럭: 단어 단위 분 단위 시간 표시

이 클럭은 Wouter Devinck 클럭의 하드웨어와 '카탈란' Pijuana 클럭의 소프트웨어를 결합했습니다. 커스텀 PCB 없이 기성 모듈과 전원용 소형 베로 보드 3개만 사용했습니다.

주요 변경 내용

영어 표현 변경 상세

3단계: 케이스 설계

정밀 워드 클럭: 단어 단위 분 단위 시간 표시

커스텀 PCB를 쓰지 않아 Wouter 설계보다 케이스가 깊습니다. 본 케이스는 후면 먼지 씰 2mm + 후면 MDF 14mm + 전면 디스플레이 보드 14mm + 4mm 플로트 유리 = 34mm 깊이입니다. Wouter 케이스는 18mm MDF + 2mm 유리 = 21mm입니다.

정밀 워드 클럭: 단어 단위 분 단위 시간 표시

극단적 측면에서 보면 본 케이스가 더 두꺼워 보입니다. 이를 보완하기 위해:

정밀 워드 클럭: 단어 단위 분 단위 시간 표시

정면에서 볼수록 후면 패널이 시야에서 사라져 얇은 14mm 전면 보드만 보입니다. 4mm 유리도 전면 보드보다 1-2mm 짧게 잘라 숨깁니다. 결과적으로 34mm 두꺼운 케이스가 Wouter의 21mm 케이스만큼 슬림해 보입니다.

4단계: 제어부

정밀 워드 클럭: 단어 단위 분 단위 시간 표시

디스플레이 네 모서리(좌상, 우상, 좌하, 우하)에 TTP223 터치 컨트롤 모듈이 있습니다.

정밀 워드 클럭: 단어 단위 분 단위 시간 표시

버튼 기능은 현재 모드에 따라 달라집니다(위 표 참조).

5단계: 서머타임 자동 설정

사용하지 않음.

6단계: 디스플레이 모드 - 시계 & 환경

정밀 워드 클럭: 단어 단위 분 단위 시간 표시
정밀 워드 클럭: 단어 단위 분 단위 시간 표시

애니메이션 1: 4가지 모드 순환 - 워드 클럭 → 디지털 클럭 → 온습도 → 아날로그 클럭

정밀 워드 클럭: 단어 단위 분 단위 시간 표시

애니메이션 2: 시작 모드에서 소프트웨어 버전, 제작자명, 클럭 이름이 스크롤됩니다.

7단계: 디스플레이 모드 - 게임

정밀 워드 클럭: 단어 단위 분 단위 시간 표시

콘웨이의 라이프 게임: 무한 2차원 격자에서 세포가 생/사 상태로 진화하는 세포 자동자. 카탈란 클럭 코드 그대로 사용.

정밀 워드 클럭: 단어 단위 분 단위 시간 표시

사이먼: 컴퓨터가 생성한 시퀀스를 따라 하는 기억력 게임. 마지막 입력은 더블 탭으로 종료. 실패 시 점수 표시.

정밀 워드 클럭: 단어 단위 분 단위 시간 표시

테트리스: 1984년 소련산 타일 매칭 퍼즐 게임. 버튼 제어 부분이 아직 개선 필요.

8단계: 프로토타이핑

MAX7219 모듈에 딸린 도트 매트릭스 LED로 프로토타입 제작 및 테스트 가능.

※ 이 임시 수정은 도트 매트릭스 디스플레이로 코드 테스트 시에만 필요합니다.

소프트웨어/단어 레이아웃 수정 사항을 실물 크기 제작 전 미니어처로 검증할 수 있습니다. 도트 매트릭스 LED 배선을 소프트웨어 연결에 맞게 수정해야 합니다.

정밀 워드 클럭: 단어 단위 분 단위 시간 표시

수정 방법:

  1. LED 매트릭스 핀 16, 15, 3, 4, 10, 11을 90° 구부림(상단 핀 위, 하단 핀 아래)
  2. 매트릭스를 디스플레이 PCB 소켓에 꽂음(구부린 핀은 미연결)
  3. 소켓 뒷면에서 다음 링크 와이어 납땜:
    • LEDA → 핀 16
    • LEDB → 핀 15
    • LEDG → 핀 3
    • LEDF → 핀 4
    • LEDE → 핀 10
    • LEDC → 핀 11
정밀 워드 클럭: 단어 단위 분 단위 시간 표시

멀티미터로 디스플레이 모듈 핀아웃 확인. 소프트웨어 핀 번호와 LED 핀 번호 차이표 작성.

정밀 워드 클럭: 단어 단위 분 단위 시간 표시

단어 레이아웃 테스트용으로 62mm × 62mm 크기로 축소 출력한 용지를 디스플레이에 대고 확인.

정밀 워드 클럭: 단어 단위 분 단위 시간 표시
정밀 워드 클럭: 단어 단위 분 단위 시간 표시
정밀 워드 클럭: 단어 단위 분 단위 시간 표시

LED 디스플레이 보드 방향이 소프트웨어 레이아웃과 일치하도록 주의. Wouter Devinck 클럭과 동일한 회전 방향 유지.

정밀 워드 클럭: 단어 단위 분 단위 시간 표시

브레드보드 프로토타입으로 다양한 단어/시계 디자인 테스트 후 최종 제작 진행.

9단계: 개조 모듈 테스트

정밀 워드 클럭: 단어 단위 분 단위 시간 표시

배선 수정 후 MAX7219 모듈 테스트용 스케치 제공. 좌상단부터 우하단까지 각 LED를 순차 점등합니다.

나노와 MAX7219 모듈에 5선 연결, 나노 USB로 전원 공급, 스케치 업로드 후 실행.

정밀 워드 클럭: 단어 단위 분 단위 시간 표시

각 모듈을 번갈아 연결해 배선 확인.

MAX7219_LED_Test.zip (테스트 스케치 다운로드)

10단계: 시간-단어 매핑

정밀 워드 클럭: 단어 단위 분 단위 시간 표시

위 표는 시간-단어 매핑표입니다. 정해진 규칙은 없으며, 본인이 시간을 말하는 방식대로 단어를 배치하면 됩니다.

Wouter 클럭 대비 본 클럭의 변경 사항:

소프트웨어에서 쉽게 수정 가능.

Word to Time Translations.xlsx

11단계: 전원부

정밀 워드 클럭: 단어 단위 분 단위 시간 표시

가정용 12V 공통 파워 서플라이를 각 회로에서 5V 모듈로 강압해 사용. 18개 개별 퓨즈 회로(각 2A), 9개는 배터리 백업. 클럭 보드에도 자체 퓨즈 장착.

정밀 워드 클럭: 단어 단위 분 단위 시간 표시

단일 회로만 구동한다면 500mA 이상 정격 5V 전원이면 충분.

정밀 워드 클럭: 단어 단위 분 단위 시간 표시
정밀 워드 클럭: 단어 단위 분 단위 시간 표시

베로 보드로 전원 보드 1개(버저 장착) + 전원 분배 보드 2개 제작. MAX7219 보드 전원은 양끝에서 공급(데이지 체인 양단 전원).

전력 소모

12단계: 모듈 간 연결

정밀 워드 클럭: 단어 단위 분 단위 시간 표시

대부분 모듈이 아두이노 나노에 직접 연결. MAX7219 보드는 모듈 01만 나노 연결, 나머지는 데이지 체인. 각 8×8 LED 매트릭스가 MAX7219 모듈에 연결. 배선 주력은 MAX7219-LED 매트릭스 간 연결.

나노-1번 MAX7219, 모듈 간 거리를 최대한 짧게. 데이지 체인 양단에 전원 공급 필수(전력 대부분 여기서 소모).

13단계: 제작 순서

정밀 워드 클럭: 단어 단위 분 단위 시간 표시

프로토타이핑 및 소프트웨어 완료 후 제작 순서:

  1. 비닐 스티커 인쇄 주문
  2. 유리 재단 주문
  3. MDF 전면/후면 재단
  4. 전면 LED 구멍 가공
  5. MDF 도장
  6. 유리 센서 구멍 가공
  7. 비닐 스티커 유리 후면에 부착
  8. 전면 보드 센서 구멍/리베이트 가공
  9. 후면 보드 재단 및 센서 접근용 4개 구멍 가공
  10. 멜라민 엣지 스트립 부착(전면 흰색, 후면 검정)
  11. 후면 보드를 전면 보드에 나사 고정
  12. 베로 보드 제작(전원 1개, 분배 2개)
  13. MAX7219 보드 4개 개조 및 LED 배선 연결(MAX7219 측만 우선)
  14. 모든 모듈과 베로 보드를 전면 보드 후면에 장착
  15. 전면 보드에 4개 LED 매트릭스 구성 및 256개 LED 납땜
  16. 전원 베로 보드/분배 보드에서 배트/어스 배선
  17. 모든 모듈 전원 연결
  18. 나노, MAX7219, RTC, 온습도 센서, 터치 센서, 부저 배선
  19. MAX7219 보드에서 LED 매트릭스로 배선 룸 연결(배선표 참조)
  20. PIR 모듈 원격 장착 및 연결(선택)
  21. 마스터 클럭 30초 동기화 케이블 연결(선택)
  22. 시카고 볼트로 유리 전면 패널 장착(동시에 터치 센서 고정)
  23. 테스트

예상 소요 시간은 기술 수준, 도구, 작업 공간에 따라 다름. 프로토타이핑/프로그래밍 40시간 추가 예상.

14단계: 비닐 스티커 제작

정밀 워드 클럭: 단어 단위 분 단위 시간 표시

Inkscape(무료 벡터 그래픽 툴)로 디자인. Wouter Devinck의 GitHub 원본을 수정해 사용. 미니어처 프로토타입으로 여러 버전 테스트 후 최종본 인쇄 의뢰.

반드시 리버스 프린트(뒤집어 인쇄) 요청!

Regal Signs & Graphics에서 검은색 비닐, 리버스 컷, 글자 위딩, 어플리케이션 테이프 포함 약 27파운드(부가세 포함)에 제작. 안전한 카드보드 튜브 포장 배송.

정밀 워드 클럭: 단어 단위 분 단위 시간 표시

어플리케이션 페이퍼(후면 종이)를 디퓨저 겸용으로 남겨두고 여분만 잘라낸 후 부착. 유튜브 '비닐 스티커 유리 부착' 영상 참조 권장.

유리

정밀 워드 클럭: 단어 단위 분 단위 시간 표시

4mm 플로트 유리, 500mm × 500mm 정확히 재단, 모서리 연마. 지역 유리업체에서 20파운드에 가공.

5mm 유리 드릴로 마운팅 구멍 4개 천공. 아세톤으로 세척 후 먼지 제거. 장갑 착용 후 비눗물 희석액을 유리와 스티커에 뿌리고 천천히 필름 벗겨내며 부착. 신용카드로 중앙부터 기포 제거. 하룻밤 건조 후 후면에서 마운팅 구멍 부분 비닐 제거.

Brett11_print_ready.svg

15단계: 메인 보드 제작 1부

정밀 워드 클럭: 단어 단위 분 단위 시간 표시

14mm MDF 2장 구성. 후면 패널은 전면보다 상단 제외 10mm 작게. 전면 가장자리 흰색, 후면 검정 도장으로 벽걸이 시 14mm 두께로 보임.

정밀 워드 클럭: 단어 단위 분 단위 시간 표시

Wouter 클럭은 18mm 1장에 백라우팅으로 공간 확보하지만, 2장 구조로 지그소로 간단히 후면 컷아웃 가능. 전면 보드는 503mm × 503mm로 유리보다 1.5mm 오버행(유리 보호).

정밀 워드 클럭: 단어 단위 분 단위 시간 표시

후면 보드 지그소로 컷아웃(부품 공간 14mm 확보). 가장 깊은 MAX7219 모듈(부품 포함 10mm) 수납 가능. 완료 후 후면 보드를 전면 보드에 접착 또는 나사 고정.

전면 보드 가공

256개 LED가 6.5mm 구멍과 18mm 카운터싱크 구멍을 통해 개별 문자를 조명.

정밀 워드 클럭: 단어 단위 분 단위 시간 표시

비닐 시트 실측: 문자 간격 25mm, 가장자리에서 62.5mm 시작. MDF에 격자선 그리기(교차점 = 드릴 위치).

정밀 워드 클럭: 단어 단위 분 단위 시간 표시

상단을 기준점(datum)으로 각 행 마킹. 좌측을 기준으로 각 열 마킹.

정밀 워드 클럭: 단어 단위 분 단위 시간 표시

격자 교차점 256개가 6mm LED 장착 구멍과 18mm 카운터싱크 구멍의 중심점.

정밀 워드 클럭: 단어 단위 분 단위 시간 표시
정밀 워드 클럭: 단어 단위 분 단위 시간 표시

자동 센터 펀치(또는 못/나사)로 256개 교차점 펀칭.

정밀 워드 클럭: 단어 단위 분 단위 시간 표시

펀칭 구멍 가이드로 6mm 드릴 비트로 256개 LED 장착 구멍 가공.

20mm 카운터싱크 비트로 256개 카운터싱크 구멍 가공.

정밀 워드 클럭: 단어 단위 분 단위 시간 표시

깊이/너비 균일화를 위해 카운터싱크 지그 제작: 나무 조각에 드릴 척 베젤이 딱 맞게 구멍 내고, 테스트 조각으로 정확한 깊이에서 척 베젤이 지그 구멍에 닿도록 조정한 뒤 본 보드 256회 반복 가공.

정밀 워드 클럭: 단어 단위 분 단위 시간 표시
정밀 워드 클럭: 단어 단위 분 단위 시간 표시

샌딩 → MDF 프라이머 → 흰색 도장(카운터싱크 내부 반사용). 가장자리 검정 도장(유리가 1mm 안쪽으로 들어가 보드 숨김).

정밀 워드 클럭: 단어 단위 분 단위 시간 표시

모서리 4곳에 5mm 구멍 뚫어 시카고 패스너 장착(유리 고정 + 터치 센서 + 터치 패드 겸용). 패스너 축 3mm에 고무 테이프 감아 유리 보호.

보드 뒤집어 포스트너 비트로 터치 센서용 리베이트 가공(이전 구멍과 오프셋).

벽걸이 마운트

정밀 워드 클럭: 단어 단위 분 단위 시간 표시

금속 액자 걸이 2개로 벽 고정. 프레임에 매립해 브래킷 최고점이 프레임과 평행. 2인치 카운터싱크 나사 2개로 벽에 고정, 먼지 씰 압착용 텐션 유지.

16단계: 터치 센서 마운팅

정밀 워드 클럭: 단어 단위 분 단위 시간 표시

터치 센서 모듈을 시카고 패스너 볼트로 전면 패널에 고정. 패스너 볼트가 터치 패드 역할.

정밀 워드 클럭: 단어 단위 분 단위 시간 표시

센서 패드 중앙에 5mm 구멍 뚫어 패스너 볼트 통과. 센서 패드는 MDF 패널과 플라스틱 와셔로 절연.

정밀 워드 클럭: 단어 단위 분 단위 시간 표시

터치 센서 패드에 5mm 마운팅 홀 가공.

정밀 워드 클럭: 단어 단위 분 단위 시간 표시

후면 패널 뒤에 리베이트에 터치 센서 장착. 후면 패널에 시카고 패스너 접근용 구멍 4개 가공.

정밀 워드 클럭: 단어 단위 분 단위 시간 표시

전면 패널에 시카고 패스너 헤드 4개가 터치 패드로 노출.

17단계: 전자 부품 및 모듈

정밀 워드 클럭: 단어 단위 분 단위 시간 표시

아두이노 우노 프로토타이핑용 ATmega328 핀 연결도(IDE 핀 번호 기준). BST 핀 07 미사용.

정밀 워드 클럭: 단어 단위 분 단위 시간 표시

LED

정밀 워드 클럭: 단어 단위 분 단위 시간 표시

장시간 점등하므로 신뢰할 수 있는 공급처에서 구매 필수. 불량 LED 경험 있음.

사용 LED 사양

DHT22 온습도 센서

정밀 워드 클럭: 단어 단위 분 단위 시간 표시

저가 디지털 온습도 센서. 정전용량식 습도 센서 + 서미스터. 데이터 핀으로 디지털 신호 출력. 2초마다 새 데이터 갱신.

좌측 핀 3-5V, 중앙 핀 데이터, 우측 핀 그라운드. 케이스 내부 온도 측정 방지를 위해 상단/좌측 벤트 테이프로 막음(먼지 유입 방지 겸용).

정밀 워드 클럭: 단어 단위 분 단위 시간 표시

우측 개방면을 하단 후면 커버에 밀착 장착. 후면 MDF 하단에 작은 구멍 2개 뚫어 실내 공기 순환 유도.

아두이노 나노

정밀 워드 클럭: 단어 단위 분 단위 시간 표시
정밀 워드 클럭: 단어 단위 분 단위 시간 표시

전원: 미니-B USB, 6-20V 비정규(핀 30), 5V 정규(핀 27). 최고 전압 자동 선택.

메모리: ATmega328 32KB(부트로더 2KB 사용), SRAM 2KB, EEPROM 1KB.

입출력: 14개 디지털 핀(5V, 40mA, 풀업 20-50kΩ). 특수 기능: 시리얼(0/1), 외부 인터럽트(2/3), PWM(3,5,6,9,10,11), SPI(10-13), 내장 LED(13).

8개 아날로그 입력(10비트, 0-5V). I2C: 4(SDA), 5(SCL). AREF, 리셋 핀 별도.

통신: FTDI FT232RL로 USB 가상 COM 포트. 시리얼 모니터 지원. SoftwareSerial로 임의 핀 시리얼 가능. Wire 라이브러리로 I2C, SPI는 데이터시트 참조.

TTP223 터치 센서 모듈

정밀 워드 클럭: 단어 단위 분 단위 시간 표시

유리 마운팅 볼트로 전면 패널에 고정. 볼트가 센서 패드 중앙 5mm 구멍 통과. 볼트는 플라스틱 와셔로 센서와 절연. 4개 모듈 사용(유리 4모서리).

정밀 워드 클럭: 단어 단위 분 단위 시간 표시

모듈 내장 LED는 불필요해 제거(전력 절약).

DS3231 AT24C32 I2C 정밀 RTC 모듈

리튬이온 충전지 기본 장착. 비충전지 사용 위해 저항 R5 제거 개조.

정밀 워드 클럭: 단어 단위 분 단위 시간 표시
정밀 워드 클럭: 단어 단위 분 단위 시간 표시
정밀 워드 클럭: 단어 단위 분 단위 시간 표시
정밀 워드 클럭: 단어 단위 분 단위 시간 표시

MAX7219 디스플레이 모듈

정밀 워드 클럭: 단어 단위 분 단위 시간 표시
정밀 워드 클럭: 단어 단위 분 단위 시간 표시

MAX7219 LED 전류 제한

모듈 저항 R1로 최대 전류 설정. 표 참고.

정밀 워드 클럭: 단어 단위 분 단위 시간 표시

기본 10kΩ 장착. 본인 LED에 맞게 교체. 본 LED: 3.2-3.8V @ 20mA(최대 30mA). 수명 위해 20mA 권장. 22kΩ 사용으로 피크 시 약 20mA 제한.

※ 실제 밝기는 LDR/소프트웨어/트리머로 제어되며 보통 이보다 낮음.

자동 밝기 레벨 설정

주변광 감지 후 자동 LED 밝기 조절. 최초 설치 시 실사용 위치 최대 조도에서 보정 필요.

정밀 워드 클럭: 단어 단위 분 단위 시간 표시
  1. 모바일/노트북을 미니 USB 포트에 연결, 시리얼 모니터 앱 실행(예: Slick USB 2 Serial Terminal)
  2. 클럭 재부팅 후 초기 화면 지나면 시리얼 데이터 출력 시작
  3. 'light reading'과 'bright' 값 주시
  4. 최대 조도 상태에서 보정용 트리머(조도 센서 우측 구멍)에 소형 드라이버 삽입
  5. 천천히 돌려 'light reading = 600'(또는 brightness.cpp 설정값), 'bright = 15'가 되게 맞춤
  6. 이제 최대 조도에서 최대 휘도 출력
  7. 너무 많이 돌리면 light reading만 올라가고 bright는 15 고정
  8. 전체적으로 더 어둡게 원하면 최대 조도에서 light reading을 600 미만으로 설정

※ bright=15 시 최대 전류 출력. 최대 전류는 MAX7219 모듈 R1(RSET)로 결정되며 사용 LED에 맞게 선택해야 함.

1088AS LED 도트 매트릭스 디스플레이

정밀 워드 클럭: 단어 단위 분 단위 시간 표시

프로토타이핑용. 최종 프로젝트에는 불필요. 하단 엣지 핀 1-8 좌→우.

LDR(조도 센서)

정밀 워드 클럭: 단어 단위 분 단위 시간 표시

밝은 곳 ~500Ω, 어두운 곳 ~10MΩ. 후면 MDF 패널 하단에 장착.

정밀 워드 클럭: 단어 단위 분 단위 시간 표시
정밀 워드 클럭: 단어 단위 분 단위 시간 표시

LDR 옆 구멍으로 트리머 저항 접근해 밝기 보정.

부품 목록

정밀 워드 클럭: 단어 단위 분 단위 시간 표시

18단계: 먼지 씰

정밀 워드 클럭: 단어 단위 분 단위 시간 표시

먼지 유입 방지를 위해 2개 씰 장착.

정밀 워드 클럭: 단어 단위 분 단위 시간 표시
정밀 워드 클럭: 단어 단위 분 단위 시간 표시

19단계: 회로도

나노 연결

정밀 워드 클럭: 단어 단위 분 단위 시간 표시

아두이노 나노 연결도. 전체 크기 파일은 하드웨어 섹션에서 다운로드.

MAX7219 연결

정밀 워드 클럭: 단어 단위 분 단위 시간 표시
정밀 워드 클럭: 단어 단위 분 단위 시간 표시
정밀 워드 클럭: 단어 단위 분 단위 시간 표시
정밀 워드 클럭: 단어 단위 분 단위 시간 표시

4개 MAX7219 모듈과 연결된 LED 매트릭스.

정밀 워드 클럭: 단어 단위 분 단위 시간 표시

LED 디스플레이 매트릭스는 1번부터 시작해 각 모듈마다 90°씩 반시계 방향 회전. 매트릭스 01 입력이 나노 CLK, DIN, LOAD 연결, 출력이 매트릭스 02 입력으로 연결 등 데이지 체인.

20단계: 배선 - LED 매트릭스 구성

모듈 위치

정밀 워드 클럭: 단어 단위 분 단위 시간 표시

4개 센서는 메인 보드 뒤 리베이트에 장착. 후면 보드에 시카고 볼트/센서 패드 접근용 구멍 4개.

4개 MAX7219 모듈은 센터 상단에 나란히 장착(데이터 링크 최소화). 나노는 MAX7219 좌측, RTC는 우측. RTC 배터리 홀더는 메인 보드에 리베이트로 매립.

전원 베로 보드는 하단, 분배 보드 2개는 상단. 메인 5V 2A 피드를 양쪽 분배 보드로 공급 후 각 보드로 분배. MAX7219 전원은 좌측 분배 보드 → 데이지 체인 → 4번 보드 출구로 양단 공급.

LED 매트릭스 위치

정밀 워드 클럭: 단어 단위 분 단위 시간 표시

LED 매트릭스 4개(각 64개 LED)는 1-4번 라벨. 위 MAX7219 모듈 1-4번(좌→우)과 대응. 후면 기준이므로 번호는 반전됨.

버스 바 구조

정밀 워드 클럭: 단어 단위 분 단위 시간 표시

모듈당 2종 버스 바: 캐소드 버스(높이 10mm), 애노드 버스(높이 2mm). 각각 8개씩.

모듈당 16개 패널 핀(15mm)을 보드에 박아 10mm 높이 캐소드 버스 지지핀으로 사용(5mm 박음, 10mm 돌출). 핀 위치는 보드 두꺼운 부분(전면 LED 리세스는 앞면에 있어 후면에서 안 보임).

정밀 워드 클럭: 단어 단위 분 단위 시간 표시

0.9mm 동선으로 핀 쌍 사이 납땜해 캐소드 버스 바 형성. 모듈 회전 방향과 후면 기준 반전 주의.

정밀 워드 클럭: 단어 단위 분 단위 시간 표시

애노드 버스 바(빨간색)는 각 LED 애노드에서 약 2mm 높이로 MDF 보드 위 통과. 별도 핀 불필요.

정밀 워드 클럭: 단어 단위 분 단위 시간 표시

캐소드/애노드 버스 바 위치도. 각 LED는 매트릭스의 애노드 1개, 캐소드 1개에 연결.

21단계: LED 배선

정밀 워드 클럭: 단어 단위 분 단위 시간 표시

이 모듈은 캐소드 수직, 애노드 수평. 버스 바 간 수직 간격 8mm.

정밀 워드 클럭: 단어 단위 분 단위 시간 표시
정밀 워드 클럭: 단어 단위 분 단위 시간 표시

후면에서 매트릭스와 MAX7219 연결. 후면 기준으로는 LED 위치가 반전되고 90° 회전돼 있어 배선이 매우 복잡. 아래 표: 파란 박스 = LED 위치(후면 기준), 검은색 외곽 = 버스 바 매트릭스 위치.

정밀 워드 클럭: 단어 단위 분 단위 시간 표시

LED 다리 지그로 구부려 위치 고정 및 작업 속도 향상. LED당 4번 굽힘(다리당 2번), 총 1,024회. 캐소드 다리는 애노드로부터 90° 굽힘.

정밀 워드 클럭: 단어 단위 분 단위 시간 표시

매트릭스 그리드를 레이아웃 표대로 MAX7219 모듈 해당 핀에 배선.

정밀 워드 클럭: 단어 단위 분 단위 시간 표시

모듈당 16선. 50쌍 0.5mm 케이블 사용(후반 14쌍 색상 중복). 4번 모듈은 순서 바뀌어 Sl/Vi를 마지막에 배치.

정밀 워드 클럭: 단어 단위 분 단위 시간 표시

표 1: 모듈 LED 매트릭스 배선 색상 코드.

22단계: MAX7219 모듈 개조

정밀 워드 클럭: 단어 단위 분 단위 시간 표시

배선 연결 전 MAX7219 모듈 개조 필요.

정밀 워드 클럭: 단어 단위 분 단위 시간 표시

기존 LED 매트릭스 커넥터 하단에 90° 핀 커넥터 2세트(각 8핀) 납땜.

정밀 워드 클럭: 단어 단위 분 단위 시간 표시

개조 완료: 90° 핀 커넥터가 기존 LED 매트릭스 커넥터 핀 바로 위 PCB 옆면에 납땜됨.

정밀 워드 클럭: 단어 단위 분 단위 시간 표시

측면도. 표면 실장 부품(R1, C1, C2) 간섭 시 90° 핀 커넥터 끝단 다듬기.

MAX7219 LED 전류 제한(재확인)

정밀 워드 클럭: 단어 단위 분 단위 시간 표시

모듈 저항 R1로 최대 전류 설정. 기본 10kΩ → 사용 LED에 맞게 교체. 본 LED 20mA 권장 → 22kΩ 사용.

※ 실제 밝기는 LDR/소프트웨어/트리머로 제어되며 보통 이보다 낮음.

23단계: 미니 USB 포트 배선

정밀 워드 클럭: 단어 단위 분 단위 시간 표시

조도 보정/프로그래밍용 미니 USB 소켓을 후면 MDF 우측에 컷아웃. 25cm 90° 앵글 미니 USB 연장 케이블(수-암) 피복/실드 벗겨 내부 선만 노출해 급격한 굴곡/좁은 공간 통과.

24단계: PIR 제어 디스플레이 소등

선택 사항: 도플러 레이더 모듈로 대체 가능(다음 섹션 참조).

워드 클럭 메뉴에서 PIR 활성화(좌하 PIR On, 우하 PIR Off) 시 실내 움직임 감지되면 디스플레이 켜짐. 움직임 없으면 설정 시간 후 소등. PIR 활성화 시 'PIR ON', 비활성화 시 'PIR OFF' 표시(비활성화 시 항상 켜짐).

PIR 모듈은 클럭과 떨어진 곳에 크롬 라이트 스위치 박스 개조해 장착. 박스는 석고보드 벽에 매립, 클럭 전원 끄는 스위치도 동봉. 모듈 자체는 작아 소형 인클로저 가능. 유리 뒤에서는 작동 안 함(유리 장착 시 홀 커팅 필요).

정밀 워드 클럭: 단어 단위 분 단위 시간 표시
정밀 워드 클럭: 단어 단위 분 단위 시간 표시

블랭크 크롬 스위치 플레이트와 백 박스로 전원 스위치와 PIR 모듈 수납. 플레이트에 전원 스위치와 PIR 렌즈용 구멍 2개 가공(센터 펀치 → 파일럿 드릴 → 스텝 커터). PIR 디퓨저 구멍은 렌즈가 마찰력으로 끼워질 크기.

정밀 워드 클럭: 단어 단위 분 단위 시간 표시
정밀 워드 클럭: 단어 단위 분 단위 시간 표시

12V +는 스위치, 0V는 어스 스크류. 스위치 반대편에서 12V를 클럭 PSU 베로 보드로, 어스 스크류로 0V 복귀. 클럭 PSU 베로 보드에서 5V 뽑아 PIR 모듈 공급.

5V와 PIR 센서선은 PCB 헤더 소켓으로 클럭에 연결. 동기화 케이블도 헤더 핀/소켓으로 마스터 클럭 30초 동기화 케이블과 연결.

정밀 워드 클럭: 단어 단위 분 단위 시간 표시

PIR 감도와 점등 유지 시간 조절용 트리머 2개 내장.

PIR On/Off 제어

워드 클럭 모드에서 좌하 센서 터치 → PIR On, 우하 센서 터치 → PIR Off. Off 시 디스플레이 항상 켜짐. 설정 변경 시 'PIR ON' 또는 'PIR OFF' 5초 표시.

초기 전원 투입 시 기본값 PIR Off. 바로 PIR On 하면 PIR 초기화(약 1분) 전이라 디스플레이가 꺼질 수 있음.

25단계: 도플러 레이더 제어 옵션

PIR 대체용 도플러 레이더 모듈 옵션.

정밀 워드 클럭: 단어 단위 분 단위 시간 표시

워드 클럭 메뉴에서 동일하게 PIR On/Off로 제어. 15분마다 움직임 체크. 움직임 없으면 감지될 때까지 소등. PIR과 달리 유리/플라스틱 투과 가능해 케이스 내부(유리 뒤, PVC 스티커 뒤)에 장착. 감지 거리 약 5m(16'5″).

정밀 워드 클럭: 단어 단위 분 단위 시간 표시

케이스 내부에 도플러 레이더 모듈 고정. 전면 패널에 마이크로파 센서용 구멍 가공.

정밀 워드 클럭: 단어 단위 분 단위 시간 표시

전면 패널 구멍(도플러 레이더 센서용). PVC 스티커와 유리 뒤에 숨겨짐.

정밀 워드 클럭: 단어 단위 분 단위 시간 표시

26단계: PIR/도플러 레이더 On/Off 제어

워드 클럭 모드에서 좌하 센서 터치 → PIR On, 우하 센서 터치 → PIR Off. Off 시 디스플레이 항상 켜짐.

정밀 워드 클럭: 단어 단위 분 단위 시간 표시
정밀 워드 클럭: 단어 단위 분 단위 시간 표시

설정 변경 시 'PIR ON' 또는 'PIR OFF' 5초 표시. 초기 전원 투입 시 기본 PIR Off. 바로 On 하면 PIR 초기화 전이라 디스플레이 꺼질 수 있음.

27단계: 자동 밝기 레벨 설정(상세)

정밀 워드 클럭: 단어 단위 분 단위 시간 표시

주변광 자동 감지 후 LED 밝기 조절. 최초 설치 시 실위치 최대 조도에서 보정.

정밀 워드 클럭: 단어 단위 분 단위 시간 표시

미니 USB 포트에 모바일/노트북 연결, 시리얼 모니터 앱 실행. 재부팅 후 초기 화면 지나면 데이터 출력. 'light reading'과 'bright' 값 주시.

최대 조도 상태에서 보정용 트리머(조도 센서 우측 구멍)에 소형 드라이버 삽입. 천천히 돌려 'light reading = 600'(또는 brightness.cpp 설정값), 'bright = 15' 맞춤. 이제 최대 조도에서 최대 휘도. 너무 돌리면 light reading만 초과, bright는 15 고정. 전체적으로 더 어둡게 원하면 최대 조도에서 light reading을 600 미만으로.

※ bright=15 시 최대 전류 출력. 최대 전류는 MAX7219 모듈 R1(RSET)로 결정, 사용 LED에 맞게 선택.

28단계: 시계 설정

디지털 클럭 모드에서 좌하 센서 터치로 진입.

정밀 워드 클럭: 단어 단위 분 단위 시간 표시

시간 숫자가 초당 2회 점멸로 설정 모드 표시. 센서 기능:

29단계: 동기화

30초 마스터 클럭 동기화 케이블 연결 시 설정 모드 벗어나면 30초로 점프 동기화. 마스터 클럭 없으면 온보드 온도 보상 RTC로 프리런(정밀 석영 시계).

설정 모드에서 초를 대략 동기화(±10초 내외) 후 설정 모드 나가면 자동 동기화.

정밀 워드 클럭: 단어 단위 분 단위 시간 표시

애니메이션: 워드 클럭이 수 초 빠르게 가다가 마스터 클럭의 30초 동기화 펄스(정시/정시+30초 수신)로 30초에 동기화. 0초 펄스는 무시. 동기화는 클럭이 20초 경과/20초 전일 때만 작동. 정상 동작 시 'SYNC' 글자만 잠깐 표시되고 초 보정은 육안으로 안 보임.

※ 동기화 펄스는 30초마다 수신되나 0초 펄스는 무시.

30단계: 소프트웨어 및 수정 방법

소프트웨어 다운로드(소프트웨어 탭). 주요 모듈:

서드파티 라이브러리:

코드 수정 시 '카탈란 코드'와 비교하면 이해 용이. 본인 변경 사항에 '//Brett' 주석 표기.

코드 수정 가이드

코딩에 익숙치 않다면 코드를 만지며 동작 원리 파악 권장. 미세한 변경마다 버전별 저장(실수 시 롤백용). 선형 초 표시 유지 시 credit.h 47번 줄 부근 버전 번호 갱신으로 테스트 버전 식별.

전체 코드 설명은 너무 길어 생략. 단어 변경 및 표시 시점 수정 핵심만 안내.

단어 정의: time.h

정밀 워드 클럭: 단어 단위 분 단위 시간 표시

52번째 줄 예시:

const byte w_the[3] PROGMEM = { 0, 0, 3 };

'THE' 단어를 LED 위치로 정의. 중괄호 { 0, 0, 3 } = LED 좌표. 매트릭스 번호는 좌상단부터 0 시작. { 0, 0, 3 } = 첫 번째 행, 첫 번째 열부터 3개 LED 점등. 'THE' 글자가 이 위치에 있으므로 'THE' 표시.

'TIME'은 { 0, 4, 4 }(0행, 5번째 LED부터 4개 점등). 아래로 내려가며 모든 단어 위치 정의.

단어 점등 제어: time.cpp

정밀 워드 클럭: 단어 단위 분 단위 시간 표시

695번째 줄부터 예시. 자정(00:00)에 'THE TIME IS TWELVE OCLOCK AT NIGHT' 표시 로직:

코드 아래로 모든 시간 조합 커버.

아날로그 클럭 코드 개선(srdevil 제안)

srdevil 댓글로 코드 개선 제안 받음. 미테스트지만 참고용 포함.

"18:00이면 긴 바늘 위, 짧은 바늘 아래. 하지만 18:59에도 짧은 바늘이 완전히 아래로 가 있어 일반 시계처럼 17:59로 보임. 형제가 코드 수정: 15분 넘으면 짧은 바늘이 다음 숫자로 미리 이동. 이에 따라 15분~ 구간 해상도도 향상."

코드는 댓글란 또는 여기 참조.

제조공정

  1. 쿠쿠 시계: 역사, 장인 정신, 현대적 진화
  2. 실리콘 3D 프린팅: 적층 제조의 차세대 개척지
  3. 단일 GPIO 핀으로 라즈베리 파이에서 아날로그 센서 측정하기
  4. 아두이노로 만드는 레트로 누미트론 클락: 심플하고 신뢰성 높으며 에너지 효율적
  5. 파이썬 timeit()으로 실행 시간 측정하기: 실용 예제
  6. DIY 아두이노 워드 클럭 – 세련된 실시간 텍스트 시계 만들기
  7. 아두이노 실시간 시계로 이슬람 기도 시간 알림 장치 만들기
  8. 생산 병목 해소: 제조 효율을 높이는 5가지 검증된 도구
  9. 아두이노 듀(Due) + 3.2″ TFT로 만드는 실시간 시계 & 온도 모니터
  10. DS1302 RTC와 아두이노 우노로 만드는 신뢰할 수 있는 알람 시계