PortDock

Modbus 주소 0 기준 vs 40001 표기 — 매뉴얼 주소를 통신 주소로

같은 첫 레지스터를 매뉴얼마다 0, 1, 40001, 400001, 0h0001 로 적습니다. 국산 장비 매뉴얼의 실제 표기로 통신 주소(0 기준) 구하는 법과 값이 한 칸 밀릴 때 볼 것.

Modbus 요청 프레임에 실리는 주소는 언제나 0~65535 의 0 기준 수입니다. 이 글에서는 이것을 «통신 주소» 라고 부릅니다. 그런데 장비 매뉴얼과 PLC·HMI 프로그램은 같은 주소를 여러 방식으로 적습니다. 표기를 잘못 읽으면 값이 한 칸씩 밀리거나 예외 02(없는 주소)가 납니다.

표기 세 가지

표기첫 보유 레지스터통신 주소 구하기
0 기준0 (0x0000)그대로
1 기준(레지스터 번호)1번호 − 1
PLC 표기 5자리40001뒤 네 자리 − 1 (앞자리는 표)
PLC 표기 6자리400001뒤 다섯 자리 − 1 (앞자리는 표)

앞자리는 «어느 표» 라는 뜻

앞자리표읽기 함수쓰기 함수
0xxxx코일0105 · 0F
1xxxx입력 접점02— (읽기 전용)
3xxxx입력 레지스터04— (읽기 전용)
4xxxx보유 레지스터0306 · 10

앞자리는 프레임에 실리지 않습니다. 함수 코드가 표를 정하고, 주소는 그 표 안의 0 기준 번호입니다. 그래서 30001 과 40001 은 둘 다 통신 주소 0 이지만 보내는 함수가 다릅니다(04 와 03). 5자리 표기는 9999 번째까지만 적을 수 있어 그 뒤는 6자리로 씁니다 — 410000 은 보유 레지스터 통신 주소 9999 입니다.

실제 매뉴얼은 이렇게 적습니다

이 사이트에 정리한 국산 장비의 매뉴얼에서 확인한 첫 항목들입니다. 각 장비 페이지의 레지스터 표에 «매뉴얼 주소» 와 «통신 주소» 가 나란히 있습니다.

장비매뉴얼 표기통신 주소읽는 법
LS ELECTRIC GIMAC1000300010PLC 표기. 맵에 0 기준 ADDRESS 칸도 함께 있음
한영넉스 LC30104 (0067)103PLC 번호 + 괄호 속 16진 통신 주소
오토닉스 TK301001 (03E8)10006자리 참조 번호 + 괄호 속 16진 통신 주소
루텍 Accura 3300E1000099991 기준 레지스터 번호(번호 − 1)
LS ELECTRIC LSLV-S1000h0001016진 번호. 매뉴얼 통신 예에서 시작 주소를 «주소 − 1» 로 보냄
한영넉스 VXD-register 0 / Address 10D-register 열이 0 기준, Address 열은 1 기준

16진으로 적혀 있다고 0 기준이라는 보장은 없습니다(위의 0h0001). 매뉴얼에 프레임 예가 있으면 예의 시작 주소 바이트와 맵의 숫자를 비교하는 것이 가장 확실합니다. 위 장비들 대부분도 그렇게 확인했고, 근거 쪽 번호는 장비 페이지의 메모에 있습니다.

값이 한 칸 밀려 보일 때

PortDock 에서는

작성 2026-10-19