Data Dial Dashboard
Data Dial Dashboard
Data Dial Dashboard: 인터넷 데이터를 ‘아날로그 다이얼’로 되살리는 법
1. 이 메이커가 만든 것: “대시보드는 꼭 화면일 필요가 있을까?”
Matt Stultz는 오래된 계기판(아날로그 다이얼 게이지)의 재미를, 인터넷 시대 방식으로 다시 꺼내 들었다. 프로젝트 이름 그대로 Data Dial Dashboard는 웹에서 가져온 데이터를 “숫자”로 보여주지 않는다. 대신 바늘이 움직이는 다이얼 3개로 상태를 직관적으로 표현한다.
여기서 중요한 전제는 하나다.
데이터는 계속 변하고, 그 변화가 ‘눈에 띄어야’ 한다.
모니터 속 숫자는 쉽게 묻히지만, 책상 위 바늘은 계속 ‘움직임’으로 존재감을 만든다.
2. 무엇을 표시했나: “지구의 컨디션”을 계기판으로
이 프로젝트의 데모 데이터는 **전 세계 지진 활동(USGS 실시간 데이터 피드)**이다. Arduino가 네트워크로 USGS 데이터를 받아오고, 그 값을 서보 모터 각도로 바꿔 다이얼을 움직인다.
흥미로운 점은 글이 ‘지진’에 고정되어 있지 않다는 것이다. 작성자는 이 구조가 이메일 미응답 수, 인터넷 속도, 쌀값처럼 “웹에서 스크래핑 가능한 어떤 데이터”로도 쉽게 바뀔 수 있다고 말한다. 결국 이 프로젝트의 본질은 표시 장치(다이얼)와 데이터 소스(웹)의 결합 방식이다.
3. 핵심 구성: Arduino + Ethernet Shield + Servo 3개
구성은 매우 명료하다. 글은 프로젝트를 Arduino, Ethernet Shield, 서보 3개로 요약한다. 데이터는 USGS 피드에서 가져온다.
그리고 여기서부터 WIZnet이 “설명으로 끼워 넣는 존재”가 아니라, 구성요소로 이미 들어가 있는 부품이 된다.
Arduino 공식 문서에 따르면 Arduino Ethernet Shield V1은 Wiznet W5100 기반이며, W5100은 TCP/UDP를 지원하는 네트워크(IP) 스택과 최대 4개 소켓을 지원한다고 명시되어 있다.
또한 Arduino의 Ethernet 라이브러리는 W5100/W5200/W5500 기반 디바이스를 대상으로 설계되었고, 보드가 서버/클라이언트로 동작할 수 있다고 안내한다.
즉, 이 프로젝트의 “인터넷에서 데이터를 가져오는 능력”은 Ethernet Shield(=W5100 기반) + Ethernet 라이브러리 조합으로 현실화된다.
구현에서 ‘진짜’ 중요한 부분들
4. 케이스는 단순하지만, 완성도는 구조에서 갈린다
글은 케이스를 발사우드로 수작업 제작하거나, 레이저 커터가 있으면 합판/아크릴 등으로도 쉽게 확장할 수 있다고 설명한다. 템플릿과 스케치 등 디지털 에셋은 MAKE의 GitHub에서 내려받아 사용한다.
이 프로젝트에서 케이스는 단순한 외형이 아니라, 3개의 다이얼이 “정렬된 느낌”으로 보이게 만드는 프레임이다. 결과적으로 대시보드는 전자보다 목공(혹은 케이스 제작)에서 먼저 완성된다.
5. 전원: “이더넷 쉴드의 5V가 부족해지는 순간”
재현자들이 가장 쉽게 놓치는 지점이 전원이다. 글은 Ethernet Shield에 5V 핀이 2개 있지만, 이 프로젝트는 3개의 서보에 5V가 필요해 ‘Y’ 형태 전원 점퍼 케이블을 직접 만들어 분기한다고 안내한다.
이 부분은 단순 팁이 아니라, “왜 내 서보가 떨리고, 왜 값이 튀고, 왜 동작이 불안정한가”로 이어지는 전형적인 문제의 출발점이기도 하다. 글이 이 과정을 단계로 설명하는 이유는, 결국 프로젝트 안정성이 전원에서 갈리기 때문이다.
6. 서보 설치와 보정: 숫자보다 ‘제로 포지션’이 먼저다
서보는 디지털 핀 5/6/7로 연결하고, 각 다이얼의 “영점(제로)”을 맞추기 위해 별도 보정 스케치를 먼저 돌린 뒤, 필요하면 코드의 zeroX 값을 조정하라고 안내한다.
즉, 이 대시보드는 “데이터를 읽는 프로젝트”이기 전에 기계적 기준점(바늘의 0)을 맞추는 프로젝트다. 이 순서를 건너뛰면, 어떤 데이터를 넣어도 다이얼은 보기 좋게 동작하지 않는다.
7. 네트워크 연결과 트러블슈팅: ‘DHCP 실패’는 제작자의 통과의례
마지막 단계에서 글은 Ethernet Shield를 네트워크에 연결하고, 스케치를 업로드한 뒤 동작을 확인하라고 한다.
또한 다이얼이 움직이지 않을 때는 시리얼 모니터로 상태를 확인하고, "Failed to configure Ethernet using DHCP" 오류가 보이면 케이블/네트워크/DHCP 설정을 점검하라고 안내한다.
이런 “실패 메시지 기반 디버깅” 구간이 들어가 있다는 점은, 이 글이 결과만 보여주는 쇼케이스가 아니라 따라 만들 수 있는 프로젝트 문서라는 근거가 된다.
실제 구현을 한 줄로 요약하면
USGS에서 데이터를 받아오고 → 값을 각도로 변환하고 → 서보 3개로 다이얼 바늘을 움직인다.
그리고 이 흐름에서 “인터넷에서 데이터를 받아오는 부분”은 Arduino Ethernet Shield의 핵심 칩인 WIZnet W5100 기반 네트워킹으로 구성된다.
Q1. Data Dial Dashboard 프로젝트는 무엇을 만드는가?
웹에서 가져온 데이터를 숫자/화면 대신 **아날로그 다이얼 3개(서보 모터 3개)**로 표시하는 데스크톱 대시보드를 만든다. 예시로는 USGS 지진 데이터를 읽어 “최근 활동/최대 규모/기간별 횟수” 같은 값을 바늘 각도로 변환해 보여준다.
Q2. 이 프로젝트는 어떤 방식으로 동작하는가?
구성은 Arduino + Ethernet Shield + 서보 3개가 중심이다. Ethernet Shield로 네트워크에 연결해 데이터 피드에서 값을 가져오고, 가져온 값을 범위에 맞게 스케일링한 뒤 각 다이얼의 서보 각도로 매핑해 바늘을 움직인다. 구현 과정에서는 다이얼의 “0점(제로 포지션)”을 맞추는 보정 단계와, DHCP 실패 같은 네트워크 트러블슈팅 지점도 함께 다룬다.
Q3. 여기서 WIZnet 제품은 어떻게 사용되는가?
이 프로젝트의 인터넷 연결은 Arduino Ethernet Shield가 담당하며, Arduino 공식 문서 기준으로 Ethernet Shield V1은 Wiznet W5100 기반이다. W5100은 TCP/UDP를 지원하고 최대 4개 소켓을 제공하는 것으로 안내되어, Arduino가 웹 데이터를 받아오는 네트워크 기능의 핵심 역할을 한다.
