Firmware
Modbus 게이트웨이 펌웨어 통신 안정화
현장 노이즈와 다중 슬레이브 환경에서 빈번하던 통신 끊김 문제를 펌웨어 레이어에서 해결한 사례.
Modbus RTURS485Cortex-M0Bare-metal
공개 범위: 고객사 및 기기명 비공개, 통신 구조 요약 공개
개요
다중 슬레이브가 연결된 현장에서 간헐적으로 발생하던 Modbus RTU 통신 끊김을 분석하고, 게이트웨이 펌웨어의 통신 레이어를 다시 정리했습니다.
문제
- 장시간 운용 시 특정 슬레이브 응답이 지연되며 타임아웃이 누적되는 현상
- 노이즈 유입 시 프레임 동기가 깨진 뒤 자체 복구가 되지 않는 구조
해결 방식
UART 인터럽트 처리와 프레임 타이밍 판정 로직을 분리하고, 슬레이브별 재시도/백오프 정책을 도입해 통신 복구 시간을 줄였습니다. 운영 중 로그를 외부로 내보낼 수 있는 진단 채널도 함께 추가했습니다.
사용 기술
Cortex-M0 MCU, Bare-metal C, Modbus RTU, RS485, 자체 진단 로그