본문으로 건너뛰기

태그 등록 (어떤 값을 읽을지 지정)

[태그] 는 PLC 의 메모리 한 칸 에 이름을 붙인 것입니다. PLC 마다 메모리 주소 표기법이 다르기 때문에 자기 PLC 종류 페이지를 함께 참고하시면 됩니다.

  • 미쓰비시: D100, M50 같은 형식
  • 지멘스: %DB1.DBW0 같은 형식
  • LS: D00309 같은 형식
  • OPC-UA: ns=2;s=Channel1.Device1.Tag1 같은 형식

자세한 표기법은 각 PLC 페이지의 [PLC 주소] 절에 있습니다 → PLC 종류별 가이드


입력 항목

태그 한 줄에 다음 정보를 입력합니다.

무엇을 적나요
태그 이름화면에 보일 이름. 한글 가능 (예: 펌프1 회전수)
PLC 주소PLC 매뉴얼에 나오는 주소 표기 (예: D100)
데이터 형식Float, Integer, Boolean, String, Long, Double 중 하나
형식 보조 (format)32-bit 인 경우 DW, 실수면 REAL 등 (선택)
계산식단위 변환 등의 후처리 수식 (선택). 자세히는 계산식 적용
설명메모. 화면에서 같이 보입니다

데이터 형식 가이드

데이터 형식폭·부호언제 쓰나요예시
Boolean1 비트켜짐/꺼짐, ON/OFF펌프 가동 / 알람 ON
Integer16-bit 부호있음정수 (음수 포함) — 가장 흔함카운터, 회전수
Long64-bit 부호있음큰 정수 (32-bit 초과)누적 생산량
Float32-bit 실수소수점 있는 값온도, 압력, 속도
Double64-bit 실수정밀 소수점정밀 측정 데이터
String가변문자열배치명, 레시피 이름

부호·폭을 이름으로 명시하는 정밀 타입 (Kepware 와 동일한 의미):

데이터 형식폭·부호언제 쓰나요
Short16-bit 부호있음Integer 와 동일 (명시적 이름)
Word16-bit 부호없음0~65535 카운터 (음수 없음)
DInt32-bit 부호있음32-bit 정수 (구 Integer+DW 조합 대체)
DWord32-bit 부호없음21억(2^31) 초과 누적 카운터 — Integer 로 걷으면 실패하던 값
QWord64-bit 부호없음부호없는 대형 카운터
Byte8-bit 부호없음상태 바이트
기존 태그 마이그레이션 (2026.07 동작 변경)
  • S7 Integer: 부호없음(u16)으로 잘못 읽히던 것을 부호있음(s16) 정본으로 수정 — 음수가 65531 처럼 나오던 문제 해결. 부호없음이 필요하면 Word 로.
  • S7 / MELSEC Long: 32-bit 로 읽던 것을 정본 64-bit 로 통일. 기존에 Long 으로 32-bit 를 읽던 태그는 DInt(부호있음) 또는 DWord(부호없음) 로 변경하세요.

배열 태그 (Base[N])

DInt[10] 처럼 원소타입[개수] 로 등록하면 연속 영역을 한 태그로 걷어 JSON 배열 문자열("[1,2,3]")로 저장합니다. 지원 드라이버 (2026.07 확대): EIP + MELSEC / S7 / Modbus / LS. 원소는 수치 타입만 실제 수집됩니다 (String 배열은 등록 불가, Boolean/Byte 배열은 드라이버가 미지원 — 값이 비어 있게 됩니다). 드라이버별 한도: Modbus 총 125 워드 · LS 총 64 워드 · MELSEC 시리즈별 (Q/L·iQ-R 960 / QnA 480 / A 32 워드) · S7 협상 PDU − 19 바이트 — 초과하면 값이 비므로 N 을 줄이거나 태그를 나누세요. 배열 태그는 read 전용 입니다 (write 미지원).


형식 보조 (format) 가이드

PLC 의 같은 주소라도 어떻게 해석할지에 따라 다른 값이 나옵니다. 16-bit 짜리 메모리를 두 칸 묶어서 32-bit 으로 읽거나, 4 칸을 묶어 64-bit 실수로 읽는 등의 차이입니다.

가지고 계신 값데이터 형식형식 보조
16-bit 정수 (가장 흔함)Integer(비움)
16-bit 부호없는 정수IntegerUI
32-bit 정수 (메모리 두 칸)IntegerDW
32-bit 실수 (가장 흔한 실수형)FloatREAL
64-bit 실수 (정밀)DoubleLREAL
비트 1 개 (켜짐/꺼짐)Boolean(비움)
워드 안의 특정 비트BooleanBIN[3] (비트 3 번)
문자열 N 글자StringSTR[N] (예: STR[10])
값이 이상하게 나올 때

32-bit / 64-bit 짜리인데 형식 보조를 비워두면 16-bit 으로 잘못 읽혀 값이 이상하게 작거나 커집니다. 그런 경우 format 칸을 DW, REAL, LREAL 같은 값으로 채워주세요.


고급 태그 설정 (Kepware 참조)

태그에는 아래 선택 설정을 함께 저장할 수 있습니다 (전부 미지정 시 기존 동작 그대로). 현재는 백업/복원 JSON(/connect/restore)이나 REST 로 지정하며, 값은 태그 행과 함께 저장됩니다.

설정의미
byte_orderAB_CD BA_DC CD_AB DC_BA32/64-bit 바이트·워드 오더 (미지정=프로토콜 기본)
scaling_typelinear sqrt원시값 → 공학단위 변환
raw_low/raw_high숫자스케일링 입력(원시) 범위
scaled_low/scaled_high숫자스케일링 출력(공학) 범위
clamptrue/false출력을 scaled 범위로 절단
negatetrue/false부호 반전
units문자열단위 라벨 (예: degC)
client_accessR / RWR 이면 쓰기 API 가 거부됩니다 (읽기 전용)
deadband숫자이전값 대비 변화량이 이 값 미만이면 발행 생략
scan_divisor정수n 사이클마다 1 회만 읽기 (수집 주기 배수)

예 — 4~20mA 원시 0..4095 를 0..100% 로 선형 변환하고 소폭 변동 억제:

{"tags":[{ "opc_id":"OPC_X", "tag_id":"TAG_PCT", "tag_name":"압력%",
"data_type":"Float", "plc_address":"D100",
"scaling_type":"linear", "raw_low":0, "raw_high":4095,
"scaled_low":0, "scaled_high":100, "clamp":true, "deadband":0.5 }]}

계산식(fomula)과 병행 가능합니다 — 스케일링 결과 위에 계산식이 적용됩니다.

CSV 일괄등록(/ui/connect/csv)에서도 같은 설정을 지정할 수 있습니다 — 기본 9열 뒤 선택 열: RAW_TYPE, BYTE_ORDER, SCALING_TYPE, RAW_LOW, RAW_HIGH, SCALED_LOW, SCALED_HIGH, CLAMP, NEGATE, UNITS, CLIENT_ACCESS, DEADBAND, SCAN_DIVISOR, TAG_GROUP. 9열짜리 기존 CSV 는 그대로 동작합니다. JSON 백업/복원은 이 설정을 항상 포함합니다(무설정 항목은 파일에서 생략).


등록하는 방법

방법 1 — PLC 등록 폼에서 함께 추가

[연결 추가] 또는 [수정] 화면 안에 태그 입력 표가 있습니다. [+ 태그 추가] 버튼을 눌러 줄을 늘리고 한 줄씩 입력 후 [저장].

방법 2 — 이미 등록된 PLC 에 태그만 추가

  1. [연결] 메뉴 → 좌측에서 PLC 를 클릭
  2. 우측 [태그 목록] 위의 [태그 추가] 버튼 클릭
  3. 한 개씩 추가. 추가 즉시 다음 수집 주기에 값이 들어오기 시작합니다.

방법 3 — CSV 일괄 업로드

태그가 수십 개 이상이면 [연결] 우측 상단의 [CSV 일괄 업로드] 가 빠릅니다. CSV 양식은 업로드 화면에서 다운로드 가능합니다.


잘 등록되었는지 확인

PLC 를 클릭하면 우측 [태그 목록] 에 등록한 태그들이 보입니다.

컬럼의미
태그 이름 / 주소 / 형식등록한 그대로
현재 값가장 최근 수집된 값 (5 초마다 자동 갱신)
수집 시각그 값이 들어온 시간
상태정상 / 오류

오류가 뜨면 PLC 주소 표기 오타 또는 데이터 형식 불일치 가능성이 큽니다. 문제 해결 — 값이 이상해요 참고.


태그 수정 / 삭제

  • 태그 목록의 행을 클릭하면 수정 폼이 열립니다.
  • 행 끝의 [삭제] 버튼으로 한 줄씩 삭제합니다.

수정 즉시 다음 수집 주기에 새 설정으로 적용됩니다.


자주 묻는 질문

Q. PLC 주소를 어떻게 알아내나요?

  • PLC 프로그래머 / 설비 제조사 매뉴얼에 “데이터 매핑표” 가 있는 경우가 많습니다.
  • PLC 작성 도구 (GX Works, TIA Portal, XG5000 등) 의 “Watch table / 모니터 화면” 에서 사용 중인 주소를 확인할 수 있습니다.
  • OPC-UA 라면 UA Expert 같은 무료 클라이언트로 주소를 클릭/복사해 가져오는 게 가장 정확합니다.

Q. 태그 ID 는 어떻게 짓나요?

게이트웨이가 자동으로 <연결 ID>_TAG_<번호> 형식으로 부여합니다. 직접 지정도 가능하지만 영문/숫자/언더스코어만 사용해주세요.

Q. 같은 주소를 두 태그로 등록해도 되나요?

가능합니다. 같은 raw 값에 다른 계산식을 적용해 단위만 바꿔서 두 가지로 보내고 싶을 때 자주 사용합니다 (예: temperature raw + temperature_F 화씨 변환).

Q. 한 PLC 에 태그를 몇 개까지 등록할 수 있나요?

수백 개까지는 무리가 없습니다. 다만 수집 주기 안에 모두 다 읽을 수 있어야 하므로 PLC 가 응답할 수 있는 시간을 고려하세요. 한 PLC 의 태그가 1000 개를 넘는다면 PLC 의 부하 / 네트워크 지연을 함께 모니터링하시는 게 좋습니다.