목차
MP STUDIO 2 · Modbus 장비 표
장비 표는 장비가 Modbus RTU 마스터로 인버터ㆍ온도 조절기ㆍ다른 PLC 같은 상대 장치(슬레이브)의 값을 읽고 쓰는 내용을 장치별 표로 정리하는 기능입니다(V1.1.0부터). 같은 장치의 이어진 주소는 한 번의 통신으로 묶어 읽고, 쓰기는 값이 바뀔 때만 보냅니다. 래더의 MBTRIG 펑션으로 원하는 순간에만 보내도록 할 수도 있습니다(V1.2.0부터).
장비 표 열기
설정 → Modbus RTU 마스터를 선택하면 열립니다. 새 프로젝트와 장비 표가 있는 프로젝트는 장비 표 창이 열립니다. 기존 MP STUDIO에서 만든 목록만 있는 프로젝트(동봉 Modbus 예제 등)는 Modbus RTU 마스터 목록 창이 열리며, 그 창의 표로 옮기기로 장비 표로 바꿀 수 있습니다(아래).
통신 포트 창에서 Modbus RTU Master로 설정한 포트가 있으면 그 창의 Modbus 장비 표 열기 단추로도 열 수 있습니다.
창 구성
위 줄
| 항목 | 설명 |
|---|---|
| 포트 | 장비 표를 쓸 통신포트(통신포트1~통신포트3)를 고릅니다. 포트마다 등록한 장치 수가 함께 표시됩니다. |
| 속도 | 그 포트의 통신 설정입니다. 누르면 통신 포트 창이 열립니다. |
| 한 바퀴 | 폴링하는 읽기ㆍ쓰기를 한 번 도는 데 걸리는 예상 시간입니다. |
| 램ㆍ플래시 | 장비 표가 장비에서 쓰는 메모리입니다. «옛 방식 약 N KB»는 같은 내용을 기존 목록 방식으로 넣었을 때의 크기입니다. |
확인을 누르면 고른 포트가 Modbus RTU Master로 바뀌고, 그 포트의 다운로드 사용이 꺼집니다. 아직 Master가 아닌 포트를 고르면 창 위에 이 안내가 표시됩니다.
장치
왼쪽 목록에서 + 장비 추가로 장치를 더하고, 복제ㆍ장비 삭제로 복사하거나 지웁니다. 장치를 고르면 오른쪽 위에 설정이 표시됩니다.
| 항목 | 기본값 | 설명 |
|---|---|---|
| 이름 | 장비 N | 표시용 이름입니다. |
| 국번 | 비어 있는 번호 | 0~247. 같은 포트에서 겹치지 않아야 합니다. 0은 방송(쓰기만)입니다. |
| 응답 대기(ms) | 100 | 20~60000. 응답을 기다리는 시간입니다. |
| 다시 시도(회) | 2 | 0~10. 응답이 없을 때 다시 보내는 횟수입니다. |
| 재확인 간격(초) | 5 | 1~3600. 다시 시도해도 응답이 없는 장치는 건너뛰고, 이 간격마다 다시 확인합니다. |
| 워드 순서 | 하위 워드 먼저 (CDAB) | 2워드(32비트) 값의 워드ㆍ바이트 순서입니다. |
| 한 번에 읽는 최대 | 자동 | 한 번의 통신으로 읽는 최대 개수입니다. 비워 두면 기종에 맞게 정해집니다. |
| 추가 대기(ms) | 0 | 0~10000. 통신 사이에 더 기다리는 시간입니다. |
| 상태 칸 | 비움(안 씀) | 장치 상태를 받을 워드 주소입니다. 자동을 누르면 비어 있는 D 워드를 고릅니다. |
상태 칸에는 비트 0 = 연결됨, 비트 1 = 건너뛰는 중, 상위 바이트 = 마지막 오류가 들어가며, 0이면 연결되지 않은 상태입니다.
줄
장치와 주고받을 값을 한 줄씩 적습니다.
| 칸 | 설명 |
|---|---|
| 방향 | 읽기ㆍ쓰기. 기능에 따라 정해집니다. |
| 기능 | FC01~FC06, FC15, FC16 중에서 고릅니다. |
| 장비 주소 | 상대 장치의 주소(0~65535)입니다. |
| 개수 | 1이면 값 하나, 2 이상이면 PLC 주소부터 이어진 범위입니다. |
| PLC 주소 | 값을 주고받을 장비 메모리입니다(예: D10). |
| 형 | PLC 주소에 따라 정해지는 자료형입니다. |
| 설명 | 메모입니다. |
| 트리거 | 비워 두면 폴링합니다. 1~255를 적으면 래더의 MBTRIG가 부를 때만 보냅니다(아래). |
| 프레임 | 이 줄이 들어간 통신 번호입니다. 아래 실제로 나가는 프레임 목록의 번호와 같습니다. |
+ 줄 추가로 줄을 더합니다. 엑셀에서 «기능 · 장비 주소 · 개수 · PLC 주소 · 설명 · (트리거)» 순서로 복사해 줄 붙여넣기(엑셀)를 누르거나 표에 Ctrl+V하면 여러 줄을 한 번에 넣을 수 있습니다. Enter는 다음 줄, Ctrl+Delete는 줄 삭제입니다.
창 아래 실제로 나가는 프레임에는 장비가 실제로 보내는 통신이 차례대로 표시되고, 맨 아래에는 «값 N개면 옛 방식 N번 → 표 M번»처럼 기존 목록 방식과 비교한 통신 횟수가 표시됩니다. 확인을 누르면 적용되며, 프로젝트를 저장해야 파일에 남습니다.
읽기와 쓰기
- 읽기: 같은 장치ㆍ같은 기능의 이어진 장비 주소는 한 번의 통신으로 묶어 읽습니다. 그림 1의 #1은 주소 5와 6을 한 번에 읽습니다. PLC 쪽 주소는 이어지지 않아도 됩니다. 비어 있는 주소는 채워 읽지 않으며, 한 번에 읽는 최대를 넘으면 나누어 읽습니다.
- 차례: 장치는 한 번에 하나씩 차례로 통신합니다.
- 쓰기: 시작할 때 모든 쓰기 값을 한 번 보내고, 그 뒤에는 값이 바뀌었을 때만 보냅니다. 쓰기만 있는 장치에는 약 5초마다 다시 보냅니다.
- 응답이 없을 때: 다시 시도 횟수만큼 다시 보내고, 그래도 응답이 없으면 그 장치를 건너뛰고 재확인 간격마다 다시 확인합니다.
트리거 전송(MBTRIG)
트리거 번호를 단 줄은 래더의 MBTRIG 펑션이 부를 때만 보냅니다. 버튼을 눌렀을 때만 설정값을 보내거나, 필요할 때만 값을 읽을 때 사용합니다.
- 보낼 줄의 트리거 칸에 번호(1~255)를 적어주시기 바랍니다. 창 아래에 트리거 표가 나타납니다.
- 보내기가 끝난 것을 래더에서 알고 싶으면 트리거 표의 완료 칸에 비트 주소(예:
M100)를 적어주시기 바랍니다. - 확인을 눌러주시기 바랍니다.
- 래더에
MBTRIG펑션을 넣고 같은 번호를 적어주시기 바랍니다. 펑션 판 Serialport 분류의 MBTRIG: Send Modbus Trigger를 고르거나, 펑션 삽입 창(Ctrl+E)에MBTRIG 1처럼 입력합니다.
MBTRIG의 입력이 꺼짐에서 켜짐으로 바뀔 때마다 그 번호의 줄을 한 번 보냅니다. 입력을 켜 둔 채로는 반복하지 않습니다. 전원을 넣을 때 이미 켜져 있는 입력은 한 번 보냅니다.- 읽기 줄과 쓰기 줄 모두 쓸 수 있습니다. 쓰기 줄은 값이 바뀌지 않았어도 보낼 때의 값을 보냅니다.
- 같은 번호의 줄은 함께 나가며, 주소가 이어지면 한 번의 통신으로 묶입니다. 한 포트의 여러 장치에 같은 번호를 쓸 수 있지만, 다른 포트에 같은 번호는 쓸 수 없습니다.
- 보내기 전에 여러 번 불리면 한 번만 보내고, 보내는 중에 불리면 끝난 뒤 한 번 더 보냅니다.
- 완료 칸은 보내기가 끝나면 성공ㆍ실패와 관계없이 한 스캔 동안 켜집니다. 실패 이유는 그 장치의 상태 칸에서 확인합니다.
- 트리거 번호가 있는 줄은 시작할 때 저절로 보내지 않습니다. 번호가 없는 줄은 그대로 폴링합니다.
MBTRIG의 번호는 1~255의 상수이고 장비 표에 있는 번호여야 합니다. 아니면 칸이 붉게 표시되고 컴파일되지 않습니다. 래더에MBTRIG가 없는 번호의 줄은 트리거 표에 «래더에 MBTRIG 1 이(가) 없어 나가지 않습니다»가 표시됩니다.
옛 목록을 표로 옮기기
기존 Modbus RTU 마스터 목록이 있는 프로젝트는 목록 창 왼쪽 아래의 표로 옮기기를 누르면 장비 표로 바뀝니다. 목록은 비워지고 장비 표 창이 열리며, «옛 목록 4행을 장비 1대의 표로 옮겼습니다»처럼 결과가 표시됩니다. 2워드 값의 줄은 FC16 줄이 됩니다.
- 읽을 수 없는 줄이 있거나 이미 장비 표가 있으면 옮기지 않습니다.
- 옮기면 컴파일 결과가 바뀝니다. 편집 → 실행취소(
Ctrl+Z)로 되돌릴 수 있습니다. - 장비 표와 기존 목록을 함께 쓸 수는 없습니다.
모니터링 중 장치 상태
모니터링 중에 장비 표 창을 열면, 상태 칸을 정한 장치의 카드에 상태가 표시됩니다. 상태는 고른 포트의 장치만 읽습니다.
| 표시 | 뜻 |
|---|---|
| ● 연결됨 | 정상으로 응답합니다. |
| ▲ 연결됨 · 오류 | 응답은 있지만 오류가 있습니다(예외 응답 01~06, CRC 오류 등). |
| ⏸ 건너뛰는 중 | 응답이 없어 건너뛰고 있습니다. 재확인 간격마다 다시 확인합니다. |
| ✕ 연결 안 됨 | 연결되지 않았습니다. |
회색 ○는 장비 프로그램이 이 프로젝트와 다르거나 PLC가 응답하지 않는 등 표시된 상태를 믿을 수 없을 때이며, 그 이유가 함께 표시됩니다. ―는 상태 칸을 정하지 않은 장치입니다.
시뮬레이션
시뮬레이션하면 장비 표의 장치가 가상 Modbus 슬레이브로 동작하고, 시뮬레이션 막대에 가상 장비 N대가 표시됩니다. 장비 표 창의 가상 장비 값 탭에서 읽기 값을 바꾸고 쓰기 값을 볼 수 있으며, 응답 없음을 켜면 그 장치가 응답하지 않는 상황을 시험할 수 있습니다.
- 가상 장비의 값은 저장되지 않습니다.
MBTRIG와 완료 칸도 시뮬레이션됩니다. 예외 응답과 CRC 오류는 시뮬레이션되지 않습니다.- 문제가 있는 장비 표와 기존 목록은 시뮬레이션되지 않습니다.
확인할 점
- 장비 표를 쓰는 포트는 Modbus RTU Master이고 이 채널을 다운로드에 사용이 꺼져 있어야 합니다. 장비 표에서 확인을 누르면 이렇게 바뀝니다.
- 장비의 램이 모자라면 컴파일되지 않습니다. 장치나 줄을 줄이거나 메모리 영역 크기를 줄여주시기 바랍니다.
- 받는 칸이 장비 시계(RTC) 블록과 겹치면 받은 값이 시각으로 덮어써진다는 경고가 표시됩니다.
- 장비 표는 프로젝트 파일(
.mpx)에 저장됩니다. 트리거를 쓴 파일은 V1.1.0에서 열 수 없습니다.




