자료실 유틸

QModMaster 다운로드 및 사용법 (Modbus RTU·TCP·RS-485 테스트)

첨부파일 1

QModMaster는 Modbus RTU·TCP 장치에 요청을 보내고 레지스터 값을 확인하는 프로그램입니다. RS-485 센서, 계측기, PLC 및 IoT 게이트웨이의 통신 시험에 사용할 수 있습니다.

프로그램은 개발자의 공식 SourceForge 다운로드에서 받으세요. 첨부한 QModMaster-guide-ko.zip에는 한국어 사용법과 가상 센서의 레지스터 설정표가 들어 있습니다. 프로그램 설치파일은 포함하지 않습니다.

1. 다운로드와 준비

  1. 공식 파일 목록에서 안정판 qModMaster-Win32-exe-0.5.2-3.zip을 선택합니다. 목록의 0.5.3-beta는 별도의 베타 배포본입니다.
  2. 모두 압축을 풀고 실행 파일을 엽니다. DLL과 하위 폴더를 유지합니다.
  3. RTU 시험에는 장치 규격에 맞는 USB-RS485 변환기와 장치 매뉴얼을 준비합니다. TCP 시험에는 장치의 IP 주소와 서비스 포트가 필요합니다.

프로그램과 배포본 설명은 공식 프로젝트 안내를 참고하세요. 이 글은 레지스터 읽기부터 시작하며, 실제 통신 값은 장치 설명서를 우선합니다.

2. RS-485 / Modbus RTU 연결

  1. 장치와 USB-RS485 변환기의 핀맵에 따라 차동선과 필요한 기준 접지를 연결합니다. A/B 또는 D+/D− 표기는 제조사마다 다를 수 있습니다.
  2. Windows 장치 관리자에서 COM 번호를 확인하고, 같은 포트를 사용하는 Tera Term 등 다른 프로그램을 닫습니다.
  3. QModMaster에서 Modbus Mode를 RTU로 선택합니다.
  4. 시리얼 설정에서 COM 포트, Baud rate, Data bits, Parity, Stop bits를 장치와 맞춥니다.
  5. Slave Address에 장치 주소를 입력하고 연결합니다. 아래 예시는 장치 주소 1을 가정합니다.

예를 들어 장치가 9600 bps / 8 data bits / Even / 1 stop bit를 지정했다면 그대로 입력합니다. 9600·8E1은 설명용 예시이며 장치마다 다릅니다. 일반 USB-UART 변환기를 RS-485 선에 직접 연결하면 안 됩니다.

3. Holding Register 읽기

첨부 CSV는 아래와 같은 가상 센서를 가정합니다. 실제 장치의 레지스터 맵이 아니며 QModMaster 자동 가져오기 파일도 아닙니다.

항목예시
Function Code03: Read Holding Registers
장치 주소1
프로토콜 시작 오프셋0
읽을 레지스터 수2
예상 원시 값250, 485 (10진수)
가정한 변환식원시 값 × 0.1 → 25.0°C, 48.5%RH
  1. Function Code, Start Address, Number of Registers를 설정합니다.
  2. 주소 기준을 확인합니다. 문서의 40001은 첫 Holding Register를 뜻하는 표기일 수 있습니다. 프로토콜 오프셋 0을 요청하려면 프로그램이 0부터 세는 설정에서는 0, 1부터 세는 설정에서는 1을 입력합니다.
  3. 한 번 읽기를 실행하고 값과 상태를 확인합니다. 연속 읽기는 처음에는 1초처럼 충분한 간격으로 시작합니다.
  4. Bus Monitor에서 요청·응답 및 예외 응답을 확인합니다.

Input Register는 보통 04: Read Input Registers를 사용합니다. 16비트 값의 부호, 32비트 값의 레지스터 순서, 소수점 배율은 장치 매뉴얼에 따라 해석해야 합니다. Modbus 함수와 주소 체계는 Modbus Organization의 기술 문서를 참고하세요.

4. Modbus TCP 연결

  1. Mode를 TCP로 바꾸고 네트워크 설정에 장치 IP와 포트를 입력합니다. 기본 서비스 포트는 보통 502이며 실제 설정을 따릅니다.
  2. TCP 서버 또는 RTU 게이트웨이가 요구하는 Unit ID를 확인합니다.
  3. 연결한 뒤 RTU 때와 같은 방식으로 Function Code, 시작 주소와 수량을 지정합니다.
  4. 처음에는 읽기 요청 하나로 응답을 확인합니다.

Modbus TCP는 일반 TCP 소켓에 임의 문자열을 보내는 방식과 다릅니다. TCP 연결이 성공해도 Unit ID, 함수 또는 주소가 틀리면 원하는 값을 읽을 수 없습니다.

5. 자주 발생하는 문제

  • Timeout: 전원, COM/IP·포트, 장치 주소, 시리얼 조건과 배선을 확인합니다.
  • CRC 오류: 통신 속도·패리티 불일치, 노이즈, 접지와 장치가 요구하는 종단·바이어스 구성을 확인합니다.
  • Illegal Data Address: 시작 주소 기준, 요청 범위와 레지스터 종류를 확인합니다.
  • 값이 이상함: 10진수·16진수 표시, 부호, 배율과 다중 레지스터의 순서를 확인합니다.
  • 버스 응답 충돌: 같은 RTU 버스에서 여러 마스터가 동시에 요청하는지 확인합니다.

쓰기 함수는 설정·출력을 실제로 바꿀 수 있으므로 장치의 쓰기 허용 주소와 값 범위를 확인한 뒤 사용하세요.

6. 첨부 자료와 관련 글

사용법 ZIP에는 오프라인 설명서, register-example.csv, RTU·TCP 설정 확인표가 있습니다. 예제 값은 학습용이며 실장치 결과를 보장하지 않습니다.

자료 확인일: 2026년 9월 12일.

목록으로

처리 중입니다...

잠시만 기다려주세요.