2개의 ATmega128 MCU를 UART로 연결하여, 도어락 시스템과 스마트 하우스 제어 기능을 분리·통합한 프로젝트입니다.
비밀번호/RFID 기반 출입, EEPROM 사용자 설정 저장, 센서 기반 환경 제어, 릴레이를 통한 가전 제어,
PWM 제어를 통한 서보모터 자동창문 제어 등 다양한 임베디드 제어 기술을 활용하여
실제 모델하우스와 유사한 구조를 구현했습니다.
- 🔁 MCU 통신: 2개의 ATmega128 UART 연결 (도어락 <-> 스마트홈 제어)
- 📷 센서 활용: 조도, 가스, 수위, 초음파, 온습도 등 6종 이상
- 🛡 출입 제어: EEPROM 기반 비밀번호, RFID 카드 등록/삭제 기능
- 🔌 릴레이 제어: 가전제품 제어 (에어컨, 가습기 등)
- 🔄 PWM 제어: 서보모터로 문/창문 자동 제어
⚠️ Watchdog Timer: MCU 비정상 상태 복구- ⏱ 인터럽트 처리: 버튼, 타이머 이벤트 등 안정적 시나리오 처리
📁 document - 개발 보고서 및 발표 자료
📁 mainCode
├── controlUnit.c - 스마트홈 제어부 코드
├── doorLock.c - 도어락 처리 코드
├── RFIDControl.c/.h, UARTControl.c/.h, TWI.h - 각종 드라이버 모듈
📁 testCode - 센서별 테스트 코드 모음-
도어락 MCU
- 사용자 입력, 비밀번호, RFID 처리
- EEPROM 기반 사용자 설정 관리
- 제어부 MCU와 UART 통신으로 명령 송신
-
제어부 MCU
- 센서 정보 수집 (조도, 가스, 수위, 온습도 등)
- 액츄에이터 제어 (서보모터, 릴레이)
- 환경 자동 제어 시나리오 실행
[도어락 MCU]
├── 버튼 입력
├── RFID 인식
└── EEPROM 저장
│
UART
↓
[제어부 MCU]
├── 센서 정보 수집
├── 릴레이/모터 제어
└── 사용자 설정 자동 실행
| 항목 | 내용 |
|---|---|
| MCU | ATmega128 |
| 언어 | C |
| 개발툴 | Atmel Studio 7 |
| 디버깅 | JTAGICE3 |
| 컴파일러 | avr-gcc |
| 프로필 | 역할 | 담당 부분 | 기술 스택 |
|---|---|---|---|
강송구 |
팀장 | HW & FW 설계/개발 | ATmega128, UART, EEPROM, PWM, 센서제어 등 |
이 프로젝트는 단순한 센서제어를 넘어,
2개의 MCU가 통신하며 각자 역할을 분담하는 구조,
센서 수집 → 판단 → 액츄에이터 제어의 루프를 포함하는
실제 임베디드 제어 흐름을 완성도 있게 구현한 결과물입니다.
