본문으로 건너뛰기
블로그›2026. 8. 28.

미쓰비시 MC 프로토콜 이더넷 수집값을 MySQL에 저장하고 조회하기

미쓰비시 MC 프로토콜 이더넷 수집값을 MySQL에 저장하고 조회하기

PLC 데이터를 저장할 때 가장 나중에 후회하는 것이 "이 컬럼이 어느 디바이스였지" 입니다. col1, col2로 만들어 두면 반년 뒤에 아무도 모릅니다.

이 글은 내장 이더넷 MC 프로토콜로 수집한 값을 MySQL에 저장하고 Node-RED에서 조회하는 과정입니다.

테이블을 만들 때 정해 둘 것

컬럼 이름에 의미를 담으십시오. d100보다 oven_temp가 낫습니다. 디바이스 주소는 별도 문서에 매핑표로 남겨 두시고, 컬럼은 사람이 읽는 이름으로 잡으십시오.

단위를 통일하십시오. PLC에서 정수로 올려 담은 값을 그대로 저장할지, 실제 단위로 바꿔 저장할지 처음에 정해야 합니다. 섞이면 나중에 집계가 전부 틀립니다. 저장 시점에 바꾸는 편을 권합니다.

시각 컬럼은 서버 기준으로. PLC 시계와 서버 시계가 다르면 사고 시각 추적이 어려워집니다.

인덱스를 시간 컬럼에. 없으면 데이터가 쌓일수록 조회가 급격히 느려집니다.

이더넷 수집이라 유리한 점

시리얼과 달리 이더넷은 한 번에 읽어 오는 양이 많아도 여유가 있습니다. 400 Word를 1초 안에 처리할 수 있으므로, 저장할 항목이 많은 구성에 적합합니다.

다만 PLC의 동시 접속 수에는 제한이 있습니다. GX Works2로 프로그램을 열면 그 자리를 하나 차지하므로, 유지보수 중에 수집이 끊기는 일이 생깁니다. 오픈 설정에서 커넥션 수를 넉넉히 잡아 두십시오.

Step 1. 준비

Node-RED 설치와 데이터베이스가 필요합니다. 테이블 작성과 확인은 HeidiSQL로 하시면 됩니다. Node-RED 팔레트에서 MySQL 노드를 추가하십시오.

Step 2. PLC 및 EASY-LINK 설정 확인

PLC의 IP·포트, 교신 데이터 코드 바이너리, 그리고 EASY-LINK의 수집 주소와 개수를 확인합니다.

저장 테이블 이름과 컬럼 구성을 확인해 두십시오.

Step 3. Node-RED 조회 흐름

inject → MySQL → debug 로 구성합니다.

SELECT * FROM 테이블명 ORDER BY id DESC LIMIT 10

동작이 확인되면 목적에 맞게 쿼리를 바꿔 가시면 됩니다.

잘 안 될 때 확인할 것

  1. PLC 값이 안 읽힌다 — IP·포트, 교신 데이터 코드(바이너리), 동시 접속 수를 확인합니다.
  2. 데이터베이스에 안 들어간다 — 접속 정보와 테이블 존재 여부를 확인합니다. 없으면 조용히 실패합니다.
  3. 컬럼이 밀려서 들어간다 — 읽을 개수와 컬럼 수가 맞는지 확인합니다.
  4. 값이 열 배 틀리다 — 저장 시 스케일 변환 여부가 일관적인지 확인합니다.
  5. 점점 느려진다 — 시간 컬럼 인덱스를 확인합니다.

자주 묻는 질문

시리얼 버전도 있습니까? 시리얼 MC 프로토콜 MySQL 저장에 정리해 두었습니다.

실시간 감시도 함께 하고 싶습니다. MQTT 발행을 병행하시면 됩니다.

저장한 값으로 화면을 만들려면? EASY DASHBOARD에서 MySQL을 데이터 소스로 연결하는 방법을 다뤘습니다.


도입을 검토하신다면

현장 조건에 맞는 모델 선정이나 프로토콜 적용 가능 여부가 궁금하시면 문의해 주세요. 사용 중인 PLC 기종과 수집하려는 데이터만 알려주시면 구성안을 잡아 드립니다.

관련 글

← 목록으로 돌아가기