Calculator
입력값을 넣고 계산하세요
30001, 40001처럼 장비 문서나 화면에서 보는 주소를 입력해요.
Quick answer
한눈에 보기
Modbus 주소·범위 계산기는 30001, 40001 같은 표기 주소와 실제 start address의 관계를 빠르게 정리해 줍니다.
Function Code, quantity, 데이터 포맷별 register 수를 함께 보여주어 실제로 읽는 표기 주소 범위와 예상 값 개수를 확인할 수 있습니다.
Formula
계산 기준
- 0-base 기준: 표기 주소 = base + actualAddress
- 0-base 기준: actualAddress = 표기 주소 - base
- 1-base 기준: 표기 주소 = base + actualAddress - 1
- 1-base 기준: actualAddress = 표기 주소 - base + 1
- 예상 값 개수 = quantity / 값 1개당 register 수
Guide
Modbus 주소·범위 계산 방법
- 표기 주소를 실제 address로 바꿀지, 실제 address와 quantity로 표기 범위를 볼지 선택합니다.
- Register 영역과 주소 기준, 데이터 포맷을 선택합니다.
- 표기 주소 또는 start address와 quantity를 넣고 Function Code와 읽는 범위를 확인합니다.
Examples
Modbus 주소 계산 예시
- FC04, 0-base, start address 0, quantity 20이면 표기 주소 범위는 30001~30020입니다.
- 같은 조건에서 32bit Float 기준이면 register 2개가 값 1개이므로 예상 Float 값은 10개입니다.
- FC04, 0-base, 표기 주소 30019는 실제 address 18로 계산됩니다.
Use cases
이럴 때 사용하세요
FAQ
자주 묻는 질문
30001과 실제 address 0은 같은 뜻인가요?
많은 문서에서 Input Register 30001을 0-base 실제 address 0으로 보지만, 장비마다 표기 방식이 다를 수 있어 매뉴얼 확인이 필요합니다.
FC03과 FC04는 어떻게 다른가요?
일반적으로 FC03은 Holding Register, FC04는 Input Register를 읽을 때 자주 쓰입니다. 실제 장비 지원 여부는 매뉴얼을 확인해 주세요.
Quantity는 값 개수인가요 register 개수인가요?
Modbus 요청의 quantity는 보통 register 개수입니다. Float32처럼 register 2개를 묶는 값은 실제 값 개수가 quantity보다 적을 수 있습니다.
1-base 기준은 언제 쓰나요?
일부 문서나 소프트웨어가 address 1을 첫 번째 register로 표시할 때 사용합니다. 장비와 툴의 기준을 맞추는 것이 중요합니다.
이 계산 결과로 통신 설정을 확정해도 되나요?
참고용으로만 사용해 주세요. 실제 통신 설정은 장비 주소표, Function Code 지원 여부, 데이터 타입, 워드 순서를 함께 확인해야 합니다.