1. 화면·템플릿 설계
설비의 상태를 작업자가 직관적으로 확인하고 조작할 수 있도록 운전 화면을 만드는 기능입니다.
주요 기능
- 화면 생성·복사·삭제
- 배경색과 해상도 설정
- 버튼, 램프, 숫자, 문자 배치
- 탱크, 모터, 밸브 등 설비 도형 배치
- 공통 헤더·메뉴·상태 표시줄 제작
- 팝업과 다이얼로그 화면 구성
- 여러 화면에 사용할 템플릿 생성
- 객체 정렬·간격·크기 통일
- 화면 확대·축소 및 격자 표시
- 화면 전환 조건 설정
객체의 색상, 위치, 크기, 회전 상태를 PLC 값에 따라 바꿀 수 있어야 합니다.
예를 들어 모터 운전 신호가 들어오면 회색 모터를 녹색으로 표시하고, 고장이 발생하면 빨간색으로 점멸하게 설정합니다.
권장 화면 구성
- 종합 현황
- 설비 상세
- 수동 운전
- 알람 현황
- 트렌드
- 생산실적
- 레시피
- 사용자 로그인
- 시스템 설정
템플릿을 사용하면 모든 화면의 상단 메뉴, 시간, 로그인 사용자, 통신 상태를 동일하게 유지할 수 있습니다.
2. PLC 태그 및 주소 관리
PLC의 실제 메모리 주소를 HMI에서 이해하기 쉬운 이름으로 등록하고 관리하는 기능입니다.
예를 들어 PLC 주소 M100을 그대로 사용하지 않고 Conveyor_Run이라는 태그로 등록합니다.
| Conveyor_Run | M100 | BOOL | 컨베이어 운전 상태 |
| Motor_Speed | D100 | INT | 모터 속도 |
| Tank_Level | D110 | REAL | 탱크 수위 |
| Product_Count | D120 | DINT | 생산수량 |
주요 기능
- 태그 추가·수정·삭제
- 태그 그룹 및 폴더 관리
- PLC 주소 중복 검사
- 태그명 중복 검사
- BOOL, INT, DINT, REAL, STRING 지원
- 읽기 전용·읽기/쓰기 설정
- 배열 태그 지원
- 스케일 변환
- 단위와 소수점 설정
- 태그 가져오기·내보내기
- 태그 사용 위치 검색
스케일 변환 예
PLC 원시 값이 0~4000이고 실제 압력이 0~10bar라면 다음과 같이 변환합니다.
PLC 프로그램이 변경되면 주소도 달라질 수 있으므로 태그 변경 이력과 일괄 주소 변경 기능이 필요합니다.
3. 통신 드라이버 설정
HMI가 PLC, 인버터, 계측기, 로봇 등과 데이터를 교환하도록 연결하는 기능입니다.
지원해야 할 통신 방식
- Ethernet TCP/IP
- RS-232
- RS-485
- Modbus TCP
- Modbus RTU
- OPC UA
- EtherNet/IP
- Siemens S7 통신
- Mitsubishi MC Protocol
- LS XGT 통신
- Omron FINS
설정 항목
- 장비 제조사와 모델
- 통신 프로토콜
- IP 주소
- 포트 번호
- Station ID 또는 Slave ID
- 통신 속도
- 데이터 비트
- 정지 비트
- 패리티
- 응답 제한시간
- 재시도 횟수
- 데이터 갱신 주기
하나의 HMI에서 여러 PLC에 연결할 수 있도록 장비별 연결정보를 관리해야 합니다.
통신 진단 기능
- 연결·끊김 상태 표시
- 마지막 정상 통신시간
- 응답시간 표시
- 송수신 건수
- 통신 오류 횟수
- 재접속 시도
- 오류 메시지
- 패킷 모니터링
- 강제 재연결
설비 통신이 끊겼을 때 HMI 화면의 값이 정상 데이터처럼 보이지 않도록 회색이나 ### 등으로 표시해야 합니다.
4. 실시간 데이터 표시
PLC에서 수집한 현재 값을 화면에 즉시 표시하는 기능입니다.
표시 객체
- 상태 램프
- 숫자 표시기
- 문자열 표시기
- 게이지
- 막대그래프
- 탱크 수위
- 온도계
- 모터·팬 애니메이션
- 밸브 상태
- 진행률
- 생산수량
- 설비 가동상태
조건별 표현
| 정지 | 회색 |
| 운전 | 녹색 |
| 경고 | 노란색 |
| 고장 | 빨간색 점멸 |
| 통신 오류 | 어두운 회색 |
| 수동 운전 | 파란색 |
작업자가 버튼을 누르면 PLC 태그에 값을 기록해 설비를 운전할 수도 있습니다.
다만 중요한 조작에는 다음 조건이 필요합니다.
- 사용자 권한 확인
- 운전 가능 조건 확인
- 확인 메시지 표시
- 연속 입력 방지
- 작업 이력 기록
- PLC 응답 결과 확인
값이 빠르게 변하더라도 화면을 지나치게 자주 갱신하면 성능이 떨어집니다. 중요 데이터는 빠르게, 일반 데이터는 상대적으로 느리게 갱신하는 방식이 적합합니다.
5. 알람·이력 관리
설비 이상, 품질 문제, 안전 경고를 작업자에게 알리고 발생부터 해제까지의 과정을 저장하는 기능입니다.
알람 설정 항목
- 알람 번호
- 알람명
- 감시 태그
- 발생 조건
- 알람 등급
- 메시지
- 발생 지연시간
- 확인 필요 여부
- 담당 부서
- 조치 방법
- 경광등·부저 연동 여부
알람 상태
- 정상
- 발생
- 작업자 확인
- 조건 해제
- 종료
알람 종류
- 디지털 알람
- 상한 알람
- 하한 알람
- 상상한 알람
- 하하한 알람
- 변화율 알람
- 통신 알람
- 시스템 알람
- 설비 고장 알람
- 품질 이상 알람
이력 관리
- 발생시간
- 확인시간
- 해제시간
- 확인 사용자
- 지속시간
- 조치 내용
- 설비명
- 공정명
- 생산 LOT
알람 등급은 일반적으로 정보, 주의, 경고, 위험으로 구분합니다. 위험 알람은 빨간색 점멸, 부저, 팝업 등으로 강하게 표시해야 합니다.
6. 트렌드·그래프
온도, 압력, 속도, 전력량 등 시간에 따라 변하는 값을 그래프로 표시하는 기능입니다.
트렌드 종류
- 실시간 트렌드
- 과거 이력 트렌드
- 막대그래프
- 누적그래프
- 비교그래프
- 다중 축 그래프
주요 기능
- 여러 태그 동시 표시
- 태그별 선 색상 설정
- Y축 최소·최대값 설정
- 시간 범위 변경
- 확대·축소
- 화면 이동
- 특정 시점 값 확인
- 기준선 표시
- 상한·하한선 표시
- CSV·엑셀 내보내기
- 이미지 출력
예를 들어 온도 상승으로 품질불량이 발생했다면 생산 시점의 온도, 압력, 설비 속도를 한 그래프에 표시하여 원인을 분석할 수 있습니다.
데이터가 많을 경우 화면에는 요약값을 표시하고 확대하면 상세값을 조회하는 구조가 적합합니다.
7. 레시피 관리
제품별로 다른 설비 설정값을 하나의 묶음으로 저장하고 PLC에 일괄 적용하는 기능입니다.
예를 들어 제품 A와 제품 B의 온도, 속도, 압력 설정이 다르면 각각 별도의 레시피로 관리합니다.
| 목표 온도 | 150℃ | 180℃ |
| 컨베이어 속도 | 30 | 25 |
| 목표 압력 | 5bar | 7bar |
| 작업시간 | 60초 | 80초 |
주요 기능
- 레시피 생성·복사·삭제
- 품목별 설정값 저장
- PLC에서 레시피 읽기
- PLC로 레시피 전송
- 적용 전 값 비교
- 적용 결과 확인
- 버전 관리
- 승인 상태 관리
- 변경 이력
- 이전 버전 복원
- CSV·엑셀 가져오기
- 사용권한 설정
잘못된 레시피가 적용되면 불량이나 설비 고장이 발생할 수 있으므로 범위 검사와 승인 절차가 중요합니다.
현재 생산 품목과 적용 레시피가 일치하는지도 반드시 확인해야 합니다.
8. 사용자·권한 관리
사용자별로 조회, 운전, 설정 변경 등 사용할 수 있는 기능을 제한하는 기능입니다.
사용자 등급 예
| 작업자 | 운전·정지·현황 조회 |
| 반장 | 알람 확인·레시피 선택 |
| 엔지니어 | 설비 설정·태그 점검 |
| 관리자 | 사용자·권한·시스템 관리 |
| 감사자 | 이력 조회·출력 |
관리 항목
- 사용자 ID
- 이름
- 소속 부서
- 직책
- 역할
- 비밀번호
- 사용 여부
- 유효기간
- 로그인 실패 횟수
- 마지막 로그인 일시
보안 기능
- 비밀번호 복잡도
- 주기적 비밀번호 변경
- 로그인 실패 잠금
- 자동 로그아웃
- 화면별 접근 제한
- 버튼별 조작 제한
- 중요 작업 재인증
- 로그인·로그아웃 이력
- 설정 변경 이력
단순히 메뉴만 숨기는 것으로 끝나면 안 됩니다. 실제 명령 실행 단계에서도 권한을 다시 검사해야 합니다.
9. 스크립트와 수식
기본 객체 설정만으로 처리하기 어려운 계산, 조건 판단, 자동 동작을 구현하는 기능입니다.
활용 예
- 생산량 계산
- 단위 변환
- 가동률 계산
- 여러 태그를 조합한 상태 판정
- 조건별 화면 전환
- 특정 시간에 데이터 저장
- 버튼 입력 시 여러 태그 변경
- 알람 메시지 동적 생성
- 문자열 조합
- PLC 값 유효성 검사
수식 예
스크립트 실행 조건
- 화면이 열릴 때
- 화면이 닫힐 때
- 버튼을 누를 때
- 태그 값이 변경될 때
- 알람이 발생할 때
- 일정 시간이 지났을 때
- 사용자가 로그인할 때
스크립트 오류가 전체 HMI를 중단시키지 않도록 실행시간 제한, 예외 처리, 오류 로그가 필요합니다.
10. 데이터 로깅
PLC와 HMI 데이터를 일정 주기나 조건에 따라 데이터베이스 또는 파일에 저장하는 기능입니다.
저장 대상
- 온도·압력·속도
- 생산수량
- 양품·불량수량
- 설비 운전상태
- 전력 사용량
- 알람 발생정보
- 레시피 적용정보
- 사용자 작업이력
- 통신 상태
저장 방식
- 일정 주기 저장
- 값 변경 시 저장
- 조건 발생 시 저장
- 생산 시작·종료 시 저장
- 알람 발생·해제 시 저장
- LOT 완료 시 저장
저장 위치
- HMI 내부 저장소
- SD 카드
- USB 저장장치
- CSV 파일
- SQLite
- MariaDB·SQL Server
- MES 서버
- 클라우드 서버
보존기간을 설정하고 오래된 자료는 자동 정리해야 합니다. 네트워크가 끊기면 로컬에 임시 저장한 후 연결이 복구되면 서버로 전송하는 기능도 필요합니다.
11. 원격 모니터링
관리자가 현장에 가지 않고 PC, 태블릿, 스마트폰에서 설비 상태를 확인하는 기능입니다.
주요 기능
- 실시간 화면 조회
- 설비 상태 확인
- 알람 조회
- 트렌드 조회
- 생산실적 조회
- 원격 알람 통지
- 보고서 다운로드
- 원격 유지보수
- 다중 사업장 통합 조회
접속 방식
- 웹 브라우저
- 전용 PC 뷰어
- 모바일 앱
- VNC
- VPN
- WebSocket
- OPC UA
- MQTT
- MES·SCADA 서버 연동
원격 조회와 원격 제어는 분리해야 합니다. 외부에서 설비를 직접 운전하는 기능은 안전사고와 보안 위험이 크므로 제한적으로 제공해야 합니다.
필수 보안
- HTTPS
- VPN
- 사용자 인증
- 역할 기반 권한
- 접속 IP 제한
- 다중 인증
- 세션 만료
- 원격 작업 이력
- 방화벽
- 네트워크 구간 분리
12. 프로젝트 전송·시뮬레이션
개발한 HMI 프로젝트를 실제 단말기에 설치하거나 PLC 없이 미리 테스트하는 기능입니다.
프로젝트 전송
- Ethernet 전송
- USB 전송
- SD 카드 전송
- 프로젝트 전체 전송
- 변경사항만 전송
- 버전 비교
- 전송 전 백업
- 전송 실패 시 복원
- 여러 HMI 일괄 배포
- 프로젝트 암호화
전송 전에는 HMI 모델, 화면 해상도, 런타임 버전, 펌웨어 버전, 통신 설정을 검사해야 합니다.
시뮬레이션 종류
오프라인 시뮬레이션
PLC 없이 가상 태그를 이용해 화면과 동작을 테스트합니다.
온라인 시뮬레이션
PC에서 실제 PLC에 연결하여 HMI 화면과 통신을 테스트합니다.
통합 시뮬레이션
PLC 시뮬레이터와 HMI 시뮬레이터를 연결하여 전체 운전 시나리오를 시험합니다.
주요 검사항목
- 화면 전환
- 버튼 동작
- 태그 연결
- 색상·애니메이션 변화
- 알람 발생·해제
- 트렌드 표시
- 레시피 전송
- 권한 제한
- 스크립트 계산
- 통신 끊김·복구
- 비정상 값 처리
- 프로젝트 재시작 후 복구
프로젝트를 전송할 때는 버전, 작성자, 변경내용, 배포일시를 기록해야 현장 장애 발생 시 이전 버전으로 안전하게 복원할 수 있습니다.
이 12개 기능을 기반으로 자체 HMI를 개발한다면, 먼저 화면 설계·태그·통신·실시간 표시·알람을 1단계 핵심 기능으로 구현하는 것이 적합합니다. 이후 트렌드, 레시피, 권한, 로깅을 추가하고 마지막 단계에서 원격 모니터링과 프로젝트 배포 체계를 완성하는 방식이 안정적입니다.
'디지털 전환 솔루션 > HMI & SCADA' 카테고리의 다른 글
| HMI란? 핵심 기능과 자체 개발방법 (1) | 2026.08.18 |
|---|---|
| LS 의 XP-Builder 핵심 기능 요약 (0) | 2026.08.18 |
| HMI 주요 제품의 공식 매뉴얼 (0) | 2026.08.18 |
| 유명 HMI 제품군과 특징 (0) | 2026.08.07 |
| eHMI 전문 HMI 시스템 개괄 설계 (0) | 2026.08.03 |