- 분산 제어 시스템 구축: 중앙 구동부와 층별 제어부를 물리적으로 분리하여 개별 노드의 연산 부하 분산 및 시스템 확장성 확보
- 신뢰성 높은 통신 규격 채택: 노이즈에 강하고 실시간 우선순위 중재가 가능한 CAN Bus를 적용하여 보드 간 데이터 송수신 안정성 보장
- 정밀 피드백 기반 구동: DC 모터, 엔코더, 홀 센서, 전류 센서를 유기적으로 제어하여 정확한 층 정착 속도 제어 및 하드웨어 보호 로직 구현
- 독립적 UI 및 외벽 확장: 각 층별 사용자 인터페이스(OLED, 버튼, 서보모터 문 제어)를 독립 노드화하고, Wi-Fi 모듈을 통한 원격 관제 환경 준비
| 구분 | 구성 하드웨어 | 주요 역할 |
|---|---|---|
| 중앙 제어부 (Master) | STM32F429ZI | 엘리베이터 메인 상태 머신(FSM) 구동, 목적지 탐색 알고리즘 최적화, S-Curve 및 PI 제어 기반 DC 모터 가감속 제어, INA219 연동 과전류 차단 로직 수행 |
| 층별 제어부 (Slave) | STM32F103 (BluePill) | 각 층 노드 제어 (승강장 버튼 입력 스캔, 도어 제어 서보모터 구동, 층별 상태 OLED 표시, TS0224 홀 센서 자석 감지 및 ACK 송신) |
| 통신 인프라 | CAN Bus (SN65HVD230) | Master-Slave 보드 간 호출, 상태 갱신, 도어 제어, 도착 검증 메시지 실시간 전송 |
| 원격 확장부 | ESP-01 (Wi-Fi) | 관리자용 Blynk Cloud 연동, 실시간 층수 모니터링, 과전류 경고 수신 및 임계값 원격 튜닝 기틀 마련 |
상위 애플리케이션이 하드웨어 종속적인 HAL 함수를 직접 호출하지 않도록 추상화 계층 분리, 전역 변수 직접 접근을 지양하고 인터페이스 중심으로 설계
- Application: 엘리베이터 FSM, 목적지 탐색 알고리즘, PI 컨트롤 로직, S-Curve 프로파일 플래너 등 최상위 데이터 흐름 제어
- BSP (Board Support Package): 모터, 센서, 통신, UI 등 보드 단위 기능을 통합하여 상위 계층에 추상화된 API 제공
- Driver: 개별 소자 및 하드웨어 모듈 독립 제어 (
motor.c,esp01.c,oled.c,keypad.c,ina219.c) - Hardware: MCU 하드웨어 주변장치 설정 및 HAL Wrapper 제공 (GPIO, UART, CAN, PWM, ADC, I2C)