인버터 RS485 Modbus 통신 배선·설정 완벽 정리 — 현장 타임아웃 오류 해결
- 공유 링크 만들기
- X
- 이메일
- 기타 앱
인버터 통신 제어(RS485, Modbus)
배선과 설정법 완벽 정리
왜 통신 타임아웃이 생기는가?
현장에서 인버터 Modbus 통신 설정을 마친 후에도 PLC 화면에 "Communication Timeout" 에러가 사라지지 않는 경우가 빈번합니다. 대부분의 원인은 세 가지로 압축됩니다. 첫째, RS485 배선의 A+·B- 극성 반전, 둘째 종단 저항 미설치로 인한 신호 반사, 셋째 스테이션 번호·보드레이트 불일치입니다.
RS485 통신은 차동(differential) 방식으로 동작하기 때문에 A+와 B- 선 중 하나라도 잘못 연결되면 신호가 전혀 전달되지 않습니다. Modbus RTU 프로토콜은 이러한 RS485 물리 계층 위에서 마스터-슬레이브 구조로 데이터를 교환하므로, 물리 배선의 신뢰성이 통신 성공의 첫 번째 조건입니다.
이 글에서는 RS485 3선식 배선 방법, 종단 저항 설치 위치, 인버터와 PLC 양쪽의 파라미터 설정, Modbus 레지스터 주소 읽기·쓰기, 그리고 현장에서 자주 발생하는 오류의 진단 방법까지 단계적으로 설명합니다. 기준은 KEC 212조 및 전기설비기술기준 제21조를 따릅니다.
RS485 / Modbus 시스템 전체 구성
Modbus RTU 통신 시스템은 크게 마스터(PLC)와 슬레이브(인버터) 계층으로 나뉩니다. PLC가 마스터로서 주기적으로 각 인버터에 폴링(polling)을 보내고, 인버터는 요청에 응답하는 구조입니다. 하나의 RS485 버스에 최대 247개의 슬레이브를 연결할 수 있으나, 현장에서는 노이즈 안정성을 위해 32개 이하를 권장합니다.
RS485 멀티드롭 배선에서는 모든 기기를 직렬(데이지체인)로 연결하고, 양 끝 기기에만 종단 저항을 설치합니다. 중간 기기에 종단 저항을 설치하면 신호 레벨이 낮아져 통신 오류가 빈번해집니다. 아래 블록 다이어그램은 PLC 1대와 인버터 3대가 연결된 표준 구성을 나타냅니다.
RS485 3선식 실전 배선도
RS485 3선식 배선(A+·B-·GND)에서 GND 선은 기준 전위를 공유해 공통 모드 노이즈를 줄이는 역할을 합니다. 일부 구형 인버터는 2선식(A+·B-)만 지원하기도 하나, 현장 노이즈가 심한 환경에서는 반드시 쉴드 케이블을 사용하고 GND를 연결해야 합니다. 쉴드(shield)는 한쪽 끝(PLC 측)에서만 접지하는 것이 원칙입니다.
단자대 번호는 인버터 기종마다 다르지만, 대부분 통신 단자는 제어 단자대의 상단에 독립 블록으로 구성됩니다. LS 인버터 iS7 기준으로는 S+·S-·SG 단자가, 미쓰비시 FR-E800은 PU 커넥터 또는 RS485 단자대(TM1·TM2)가 사용됩니다.
인버터·PLC 통신 파라미터 설정
RS485 배선이 완료되면 인버터와 PLC 양쪽에서 통신 파라미터를 동일하게 설정해야 합니다. 보드레이트(Baud Rate), 패리티(Parity), 데이터 비트, 정지 비트 등 직렬 통신 매개변수가 하나라도 다르면 데이터 프레임이 깨져 수신 측에서 오류를 반환합니다. Modbus RTU 기본 설정은 9600bps, 패리티 없음(None), 8비트, 정지비트 1이 가장 많이 사용됩니다.
슬레이브 스테이션 번호는 동일 버스에 연결된 인버터마다 고유한 번호(1~247)를 부여해야 합니다. 같은 스테이션 번호가 중복되면 두 기기가 동시에 응답을 시도해 충돌(collision)이 발생하고, PLC는 응답을 받지 못하게 됩니다. 각 인버터의 파라미터 메뉴에서 국번(Node/Station No.)을 별도로 지정합니다.
주요 인버터 기종별 통신 파라미터 위치
| 인버터 기종 | 통신 방식 선택 | 국번 설정 | 보드레이트 | 패리티/데이터 | 비고 |
|---|---|---|---|---|---|
| LS iS7 | COM-01 = Modbus RTU |
COM-02 = 1~247 |
COM-03 = 9600 |
COM-04 = None/8/1 |
RS485 단자: S+·S-·SG |
| LS SV-iG5A | dr-09 = 1(RTU) |
dr-10 = 1 |
dr-11 = 9600 |
dr-12 = 0(None) |
S+·S-·5G 단자 |
| 미쓰비시 FR-E800 | Pr.549 = 1(RTU) |
Pr.117 = 1~31 |
Pr.118 = 96(9600) |
Pr.119 = 0(None) |
PU 커넥터 or TM1·TM2 |
| 슈나이더 ATV312 | CAr = ModE |
Add = 1~247 |
tbr = 9.6(kbps) |
ForE = nE81 |
RJ45 포트 or 단자대 |
| AB PowerFlex 525 | C125 = Modbus RTU |
C126 = 1~247 |
C127 = 9600 |
C128 = 8N1 |
RJ45 RS485 포트 |
| Delta VFD-E | Pr.09-01 = 1 |
Pr.09-00 = 1~254 |
Pr.09-01 baud | Pr.09-04 = 0 |
+·-·GND 단자대 |
Modbus RTU 프레임 구조와 데이터 흐름
Modbus RTU 프레임 구조는 장치 주소(1byte) + 기능 코드(1byte) + 데이터(N byte) + CRC(2byte)로 구성됩니다. PLC(마스터)가 인버터(슬레이브)에게 읽기(FC03) 또는 쓰기(FC06/FC16) 요청을 보내면, 인버터는 동일 구조의 응답 프레임을 반환합니다. 타임아웃 내에 응답이 없으면 PLC는 통신 오류를 발생시킵니다.
가장 많이 사용하는 기능 코드는 FC03(복수 레지스터 읽기)과 FC06(단일 레지스터 쓰기)입니다. 인버터 운전 주파수를 읽으려면 FC03으로 해당 레지스터 주소를 요청하고, 목표 주파수를 설정하려면 FC06으로 주소에 값을 씁니다. 아래 접속도는 PLC와 인버터 사이의 실제 데이터 교환 흐름을 나타냅니다.
Modbus RTU는 반이중(Half-Duplex) 방식으로 동작하므로 마스터와 슬레이브가 동시에 송신할 수 없습니다. PLC가 요청 프레임을 완전히 보낸 후 일정 시간(응답 대기 타임아웃, 보통 500ms~1s) 안에 슬레이브 응답이 오지 않으면 타임아웃 오류로 처리됩니다.
인버터 Modbus 레지스터 주소 맵
Modbus 레지스터 주소 맵(Modbus Map)은 인버터의 각 파라미터나 상태값이 어떤 레지스터 번호에 저장되는지를 정의한 테이블입니다. 기종마다 주소가 다르므로 반드시 해당 인버터의 통신 메뉴얼 마지막 부분에 있는 Modbus Map 섹션을 참조해야 합니다. 주소는 16진수(예: 0x1000)로 표기하는 경우가 많으며, Modbus 프레임에서는 0-기반 주소를 사용합니다.
읽기 전용 레지스터(RO)는 FC03으로만 읽을 수 있고 쓰기는 불가합니다. 읽기/쓰기 레지스터(R/W)는 FC03으로 읽고 FC06 또는 FC16으로 값을 설정할 수 있습니다. 주파수 관련 레지스터는 대부분 0.01Hz 또는 0.1Hz 단위로 정수 값을 사용합니다. 예를 들어 50.00Hz는 0x1388(= 5000)으로 씁니다.
| 레지스터 주소 (Hex) | 항목 | 접근 | 단위 | 예시 값 | 비고 |
|---|---|---|---|---|---|
0x0000 | 제어 명령 (운전/정지/방향) | R/W | 비트 플래그 | 0x0001=정방향운전 | Bit0=운전, Bit1=역전 |
0x0001 | 목표 주파수 설정 | R/W | 0.01 Hz | 0x1388=50.00Hz | 쓰기 후 즉시 반영 |
0x1000 | 현재 출력 주파수 | RO | 0.01 Hz | 0x1388=50.00Hz | 실시간 모니터링 |
0x1001 | 현재 출력 전압 | RO | 0.1 V | 0x0D48=340.0V | 3상 선간 전압 |
0x1002 | 현재 출력 전류 | RO | 0.1 A | 0x0064=10.0A | 실효값(RMS) |
0x1003 | DC 링크 전압 | RO | 0.1 V | 0x01C2=45.0V | 중간 직류단 |
0x1004 | 인버터 상태 워드 | RO | 비트 플래그 | 0x0001=운전중 | Bit0=운전, Bit3=오류 |
0x1005 | 현재 오류 코드 | RO | 코드 번호 | 0x0003=OC(과전류) | 0=정상 |
Modbus 통신 제어 인터페이스 회로도
PLC와 인버터 사이의 통신 기반 제어에서는 기존 하드와이어드(hard-wired) 제어 회로의 역할이 통신 명령으로 대체됩니다. 단, 안전 회로(비상정지, 인터록)는 여전히 하드와이어드로 구성해야 합니다. 아래 회로도는 RS485 통신으로 PLC가 인버터를 제어하면서도 하드와이어드 비상정지(E-STOP) 회로를 병용하는 구성을 나타냅니다.
통신 제어와 하드와이어드 인터록 병용 회로는 통신 두절 시에도 전동기가 비상정지할 수 있도록 설계됩니다. 일반 운전·정지·주파수는 Modbus로 제어하고, 과부하·비상정지·도어 인터록은 인버터 디지털 입력(DI) 단자에 직접 연결합니다.
단계별 실전 통신 설정 가이드
현장에서 처음으로 인버터 Modbus 통신을 설정하는 경우, 아래 순서를 따르면 실수 없이 빠르게 완료할 수 있습니다. 각 단계를 순서대로 진행하면서 통신이 확인될 때마다 다음 단계로 나아갑니다.
쉴드 케이블(CVVS 0.75mm² 이상)로 A+·B-·GND를 연결합니다. PLC 포트 측과 마지막 인버터에 각각 120Ω 종단 저항을 설치합니다. 쉴드는 PLC 측 한쪽만 접지합니다. 배선 전 인버터와 PLC 전원을 완전히 차단합니다.
인버터 조작 패널에서 통신 프로토콜(Modbus RTU), 국번(Station No.), 보드레이트(9600bps), 패리티(None), 데이터 비트(8), 정지 비트(1)를 설정합니다. 설정 후 전원 OFF→ON으로 재기동합니다.
PLC 프로그래밍 툴에서 RS485 포트의 보드레이트·패리티·데이터 비트를 인버터와 동일하게 설정합니다. Modbus 마스터 기능 블록(FB)을 추가하고 슬레이브 국번을 인버터와 일치시킵니다.
PLC 모니터 또는 Modbus 테스터 소프트웨어(ModScan, Simply Modbus)로 FC03 명령을 보내 인버터 상태 레지스터(0x1000)를 읽습니다. 응답이 정상이면 수신 데이터를 확인하고, 타임아웃이면 배선·설정을 재점검합니다.
FC06으로 운전 명령 레지스터(0x0000)에 0x0001(정방향 운전)을 쓰고 인버터가 실제로 기동하는지 확인합니다. 이어서 주파수 레지스터(0x0001)에 목표값(예: 3000 = 30.00Hz)을 써서 속도 변화를 확인합니다.
폴링 주기는 100ms~500ms가 일반적이며, 연결된 인버터 수가 많을수록 주기를 늘려야 합니다. PLC 응답 대기 타임아웃은 폴링 주기의 3배 이상으로 설정합니다. 통신 오류 카운터를 모니터링해 안정성을 검증합니다.
관련 KEC 및 전기설비기술기준
인버터 통신 배선은 전기설비 일반으로서 KEC(한국전기설비규정)의 관련 조항을 준수해야 합니다. 특히 제어 신호 배선의 노이즈 분리 배선 원칙과 쉴드 케이블 접지 방법은 통신 안정성에 직접 영향을 미칩니다.
통신 오류 진단과 현장 안전 수칙
자주 발생하는 통신 오류와 해결 방법
| 오류 증상 | 원인 | 진단 방법 | 해결책 |
|---|---|---|---|
| 통신 타임아웃 반복 | 종단 저항 미설치 또는 A+/B- 반전 | 오실로스코프로 A+·B- 신호 확인 | 종단저항 설치, 극성 재확인 |
| CRC 오류 (Exception Code 03) | 보드레이트 또는 패리티 불일치 | 양쪽 파라미터 비교 | 인버터·PLC 동일 보드레이트 설정 |
| 잘못된 레지스터 응답 | 주소 오프셋 오류 (0-기반 vs 1-기반) | Modbus 분석기로 주소 확인 | 메뉴얼 Modbus Map 재확인 |
| 간헐적 통신 오류 | 노이즈 유입 (인버터 PWM 간섭) | 오류 발생 시점과 인버터 운전 연관성 확인 | 쉴드 케이블 교체·페라이트 코어 추가 |
| 특정 인버터만 응답 없음 | 국번(Station No.) 중복 | 각 인버터 국번 파라미터 확인 | 중복 국번 변경 후 재기동 |
| 운전 명령 불응 | 운전 모드 설정 오류 (로컬 모드) | 인버터 조작 패널 모드 상태 확인 | 통신 제어 모드로 전환 (COM 모드) |
현장 안전 수칙
RS485 배선 작업 시 반드시 인버터 및 PLC 제어 전원을 OFF하고, 잔류 전압을 확인한 후 작업합니다. 인버터 주회로 전원 차단 후 DC 링크 방전까지 최소 5분 대기합니다.
FC06 쓰기 명령으로 운전 명령을 전송할 때, 전동기 주변 작업자 여부를 반드시 확인합니다. 예기치 않은 전동기 기동은 중대 재해로 이어질 수 있습니다.
PLC-인버터 통신 두절 시 인버터가 최후 수신 명령(운전 상태)을 유지할 수 있습니다. 반드시 통신 두절 감지 시 정지 명령을 발생시키는 인버터 파라미터(통신 오류 시 동작)를 설정합니다.
인버터 케이스, PLC 레일, 제어반 접지가 KEC 211조에 따라 적절히 시공되어 있는지 확인합니다. 불량 접지는 통신 노이즈 원인이 되고, 감전 위험도 증가합니다.
현장 전문가 실전 노하우
Simply Modbus 또는 ModRSsim2 같은 무료 소프트웨어를 PC에 설치하면 PLC 없이도 인버터 통신 테스트가 가능합니다. USB-RS485 변환기와 함께 사용하면 현장 진단이 빨라집니다.
인버터 출력 케이블 부근을 지나는 RS485 케이블에 페라이트 코어(클램프 타입)를 2~3회 감으면 고주파 노이즈가 크게 줄어듭니다. 가격 대비 효과가 높은 노이즈 대책입니다.
인버터 수가 적고 빠른 응답이 필요하면 100ms, 10대 이상 멀티드롭이면 500ms 이상으로 설정합니다. 폴링이 너무 빠르면 인버터 내부 처리 지연으로 오히려 오류가 증가합니다.
인버터가 로컬(키패드) 운전 모드로 고정되어 있으면 Modbus 명령을 수신해도 동작하지 않습니다. 반드시 '통신 제어(COM)' 또는 '원격 제어' 모드로 전환 파라미터를 설정합니다.
자주 묻는 질문
연관 전기기술 콘텐츠
- 공유 링크 만들기
- X
- 이메일
- 기타 앱