Skip to content
@KCCI-Elevator

KCCI-Elevator

STM32 Based Elevator System
  • Korea, South

STM32 Based Elevator System

1. 프로젝트 목표

  • 분산 제어 시스템 구축: 중앙 구동부와 층별 제어부를 물리적으로 분리하여 개별 노드의 연산 부하 분산 및 시스템 확장성 확보
  • 신뢰성 높은 통신 규격 채택: 노이즈에 강하고 실시간 우선순위 중재가 가능한 CAN Bus를 적용하여 보드 간 데이터 송수신 안정성 보장
  • 정밀 피드백 기반 구동: DC 모터, 엔코더, 홀 센서, 전류 센서를 유기적으로 제어하여 정확한 층 정착 속도 제어 및 하드웨어 보호 로직 구현
  • 독립적 UI 및 외벽 확장: 각 층별 사용자 인터페이스(OLED, 버튼, 서보모터 문 제어)를 독립 노드화하고, Wi-Fi 모듈을 통한 원격 관제 환경 준비

2. 전체 시스템 구조

하드웨어 구성 및 보드별 역할

구분 구성 하드웨어 주요 역할
중앙 제어부 (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 연동, 실시간 층수 모니터링, 과전류 경고 수신 및 임계값 원격 튜닝 기틀 마련

소프트웨어 계층 구조 (Software Layer Architecture)

상위 애플리케이션이 하드웨어 종속적인 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)

Pinned Loading

  1. bluepill_elevator_floor bluepill_elevator_floor Public

    C 1 3

  2. can_motor_merge can_motor_merge Public

    C 1 3

  3. F429ZI_elevator_structure F429ZI_elevator_structure Public

    C 1

Repositories

Showing 5 of 5 repositories

Top languages

Loading…

Most used topics

Loading…