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

아두이노 듀(Due) + 3.2″ TFT로 만드는 실시간 시계 & 온도 모니터

프로젝트 개요

educ8s.tv의 닉(Nick)이 3.2″ 컬러 TFT 디스플레이(HX8357B/C 컨트롤러)를 아두이노 듀(Due)와 결합해 실시간 시계(RTC)와 온도 모니터를 만드는 튜토리얼입니다. 화면 상단에 현재 날짜·시간, 중앙에 현재 온도, 하단에 측정된 최고/최저 온도를 표시하며, 기본 도형만으로 깔끔한 UI를 구성했습니다. 아두이노 메가(Mega)도 사용 가능하지만 듀의 속도와 메모리 이점을 활용했습니다.

필요 부품 (약 $24)

DS3231 RTC 모듈 특징

TFT 디스플레이 설정

배선 방법

아두이노 듀 기준:

메일 헤더 핀을 구부려 RTC 모듈과 연결하면 브레드보드 없이도 간단히 조립 가능합니다.

소프트웨어 구현

필수 라이브러리: TFT_HX8357_Due, Sodaq_DS3231

초기 시간 설정

최초 1회 RTC에 현재 시간을 기록해야 합니다. setRTCTime() 함수 내 날짜/시간을 수정하고 setup()에서 호출해 업로드한 뒤, 다시 호출부를 주석 처리하고 재업로드합니다.

void setRTCTime(){
  DateTime dt(2016, 4, 4, 13, 56, 30, 1); // 연, 월, 일, 시, 분, 초, 요일
  rtc.setDateTime(dt);
}

void setup(){
  rtc.begin();
  tft.init();
  tft.setRotation(1);
  tft.fillScreen(0xC618);
  delay(100);
  printUI();
  setRTCTime(); // 최초 1회만 활성화
}

메인 루프

void loop(){
  float temperature = rtc.getTemperature(); // DS3231 내장 온도 센서 읽기
  getAndPrintTime(); // 날짜/시간 표시
  printTemperature(temperature); // 현재 온도 표시
  
  if(temperature > maxTemperature) {
    maxTemperature = temperature;
    updateMaxTemperature(); // 최고 온도 갱신
  }
  if(temperature < minTemperature) {
    minTemperature = temperature;
    updateMinTemperature(); // 최저 온도 갱신
  }
  delay(1000);
}

마무리 및 향후 계획

저비용·간단 코드로 실용적인 기기 제작이 가능함을 보였습니다. 향후 더 많은 센서, 그래프 표시, 와이파이 기능을 추가해 고급 기상 관측소로 발전시킬 예정입니다. 아두이노 듀의 빠른 속도와 대용량 메모리가 이런 확장에 이상적입니다. 여러분의 아이디어나 의견은 댓글로 남겨주세요!

참고 자료

제조공정

  1. Satellite CCRMA 키트로 센서 구동 오디오 이펙트 만들기
  2. 아두이노 실시간 시계로 이슬람 기도 시간 알림 장치 만들기
  3. 정밀 워드 클럭: 단어 단위 분 단위 시간 표시
  4. 아두이노 메가와 센서를 활용한 인터랙티브 넥시온 HMI 프로젝트
  5. TM1637 4자리 디지털 시계: 시간/알람 설정 기능 탑재 (아두이노 나노)
  6. 아두이노와 노키아 5110 LCD로 만드는 DIY 전압계 - 단계별 가이드
  7. BME280 온도·습도·기압을 넥시온 터치스크린에 표시하기
  8. 아두이노 & MPU6050: SG90 & MG996R 서보 모터 정밀 제어
  9. u-blox LEA-6H GPS 모듈: 아두이노 & 파이썬 연동 가이드
  10. DS1302 RTC와 아두이노 우노로 만드는 신뢰할 수 있는 알람 시계