포트폴리오/[IoT 기반 피지컬 AI 교육일지]

[ C언어 IoT 프로젝트 개발 ] #3 프로젝트 발표 및 시연 (20일차 기록)

개발자혜콩 2026. 3. 10. 16:17

1. 오늘 한 것

① 프로젝트 발표

  • 리눅스 C와 아두이노를 연동한 스마트 창고 제어 시스템 기획 및 아키텍처 소개.

아키텍처 설계도

 

ID 기능 기능설명
F01 실시간 환경 모니터링 HW 연동 아두이노 센서(SHT20)가 수집한 물리적 환경 정보(온도, 습도)I2C 및 직렬 통신을 통해 리눅스로 실시간 전송.
백그라운드 처리 멀티스레드를 적용하여, 사용자가 UI를 조작하는 중에도 모니터 스레드가 지연 없이 하드웨어 정보를 받을 수 있음.
F02 환경 정보 연동 직관적인 온습도 조회 사용자가 콘솔 터미널(메인 스레드)을 통해 자재가 보관된 장소의 현재 온습도 상태를 즉각적으로 확인 가능.
F03 자동 위험 감지 및 경보 물리적 위험 경보 창고 온도가 30°C 이상으로 상승할 경우, 시스템이 즉시 위험을 인지하고 아두이노로 제어 신호를 보내 LED 경고등을 점등.
스마트 환기 시스템 고온 감지 시 DC 모터(환기 팬)를 자동 가동하며, 최소 10초 이상 가동을 보장하는 타이머 로직 적용
F04 데이터 저장 메모리 로깅 경고(30°C 초과) 발생 내역을 동적 할당된 연결 리스트(Linked List) 노드로 생성하여 빠른 순회 및 이력 조회 지원
데이터 저장 프로그램 종료 시 로깅 데이터를 warning_data.txt 파일에 자동 저장하고, 재시작 시 해당 파일을 읽어 연결 리스트를 복구하는 데이터 보존 기능구현.

② 시스템 시연

  • 센서 히팅을 통한 고온(30도 이상) 환경 강제 조성.
  • 백그라운드 스레드의 즉각적인 LED/모터 제어 확인.
  • UI 조작을 통한 실시간 온습도 조회 및 과거 경고 기록(warning_data.txt) 출력 시연.

③ 질의응답

  • 단일 스레드 대비 멀티스레드 구조의 안정성 방어.
  • 메모리 누수 방지(free) 및 하드웨어 동기화 원리 설명.

2. 발표 내용 핵심

  • 100% 실시간 하드웨어 제어(지연 현상 제거).
  • 자료구조와 파일 시스템을 융합한 투명한 이력 관리 및 무결성.
  • 24시간 무인 자동화 도입에 따른 기대효과 어필.

3. 프로젝트 결과

  • C언어 소프트웨어와 하드웨어 통합 제어 시스템 성공적 구현.
  • 멀티스레드 기반의 멈춤 없는 비동기 모니터링 동작 완벽 달성.

구현 콘솔창

 


4. 프로젝트 회고

  • C언어 포인터와 자료구조를 실제 비즈니스 로직에 적용해 본 값진 경험.
  • SW 코딩뿐만 아니라 HW 타이밍 동기화(상태 관리)의 중요성 체감.
  • AI 도구와 구조 설계 능력을 결합한 현대적 개발 사이클 확립.

5. 추후 목표 

  • Bluetooth/Wi-Fi 모듈 적용으로 무선 분산 IoT 환경 구축.
  • 텔레그램 API 연동을 통한 관리자 모바일 푸시 알림 기능 추가.
  • RDBMS(MySQL 등) 도입으로 데이터 시각화 대시보드 구축.