		문서번호	PHITS-CS-IFD-004
		개정번호	Ver 1.0.0
		개정일자	2024.01.
2023년 포항시 지능형교통체계(ITS) 고도화 구축사업
VMS 인터페이스 설계서 Interface Define (IFD)

문 서 승 인 정 보

프로젝트 명	2023년 포항시 지능형교통시스템(ITS) 고도화 구축사업
TASK 명	설계단계
문 서 번 호	PHITS-CS-IFD-004
발행 년 월일	2024년 3월05일

시공업체

구 분	성 명	서 명	일 자
작 성 자	곽 예 음		2024. 03. 05
현 장 대 리 인	김 태 원		2024. 03. 05

사업관리단(감리단)

구 분	성 명	서 명	일 자
사업관리단
감리단장	이 성 덕		2024. 03. 05

문서개정이력

날짜	버전	작성자	승인자	내용
2024.01.	1.0.0	황순교	이창복	최초 작성

목차

1. VMS 인터페이스 정의	1

1.1 개요	1

1.2 가변정보표시판 제어 흐름	1

1.3 VMS PROTOCOL 개요	2

1.4 통신 메시지 유형	8

VMS 인터페이스 정의

D4	인터페이스 설계서
사업명	2023년 포항시 지능형교통체계(ITS) 고도화 구축	서브시스템명	센터 소프트웨어 시스템
단계명	설계	작성일자	2024.01.	버전정보	1.0.0

2023년 포항시 지능형교통체계(ITS) 고도화 구축사업

2023년 포항시 지능형교통체계(ITS) 고도화 구축사업

개요

가변정보 표지판(VMS)는 다음과 같은 목적을 달성하기 위하여 고속도로와 주변도로에 설치한다.

비 일상적이고 불안정한 도로조건 및 교통상황을 운전자에게 사전에 알려 잠재적인 문제에 주의하게 하며

대체도로가 있을 경우 혼잡한 도로에서 혼잡하지 않은 다른 도로로 교통류를 우회시켜 고속도로상의 교통혼잡을 원활하게 하고

고속도로간 또는 고속도로-국도간 교통량의 균형을 이루게 하여 안전하고 쾌적한 고속주행의 실현에 목적이 있다. 따라서, VMS는 전방의 교통상황 및 대체도로의 교통상황, 교통사고 정보, 차선 이용 안내, 기상정보등을 간단명료한 형태로 표지판에 표시하여 고속도로 이용자에게 제공하여야 한다.

가변정보표시판 제어 흐름

VMS PROTOCOL 개요

개요

VMS 제어기는 중앙컴퓨터와 TCP/IP 기반으로 연결된다.

VMS 제어기는 중앙컴퓨터의 클라이언트 형태로 연결되며 중앙컴퓨터는 서버가 된다.

표준 통신 형식

CRC-16은 ADDRESS, OPCODE 및 DATA를 이용 계산한다.  이용하는 IEEE의 STANDARD CRC-16 생성다항식은 아래와 같다.

16    15    2

X   + X   + X  + 1

Byte Ordering

왼쪽 BYTE부터 먼저 전송하거나 WORD의 HIGH BYTE를 먼저 전송하는 BYTE 순서가 채택되어야 한다. 다시 말해, ADDRESS와 CRC-16 FIELD들은 먼저 그들의 HIGH-ORDER BYTE들을 전송하고 수신한다. 어떠한 MULTI-BYTE DATA 형태도 동일하게 적용하여 최상위 BYTE를 먼저 송신하고 수신한다.

단 데이터 길이(DATA LENGTH)의 경우 하위 BYTE부터 송신한다.

메시지(Message) 구조

DLE	STX	ADDR	OPCODE	DATA FIELD [N]	DLE	ETX	CRC-16
0	1	2-3	4	N	5+N	6+N	7+N & 8+N

데이터 필드 부분

송신 Frame No.	전체 Frame No.	Data Length	Data
5	6	7-10	n

OP Code에 따라서 송․수신되는 데이터의 내용으로 ACK, NAK 또는 요구데이터가 들어있다.

DLE/STX    : [FRAME HEADER]

메시지의 시작 부분 (각 1 BYTE)

DLE = 10H

STX = 02H

ADDRESS    : CONTROLLER STATION NUMBER (2 BYTE)

[BYTE 1]   GROUP NUMBER

[BYTE 2]   CONTROLLER NUMBER

OPCODE     : COMMAND/REPLY MESSAGE TYPE

DATA FIELD : OPCODE 의 종류별로 상이함

(DLE stuffing is conformed to BSC protocol rule.)

DLE/ETX    : [FRAME TERMINATOR]

메시지의 끝부분 (각 1 BYTE)

DLE = 10H

ETX = 03H

CRC-16 : IEEE'S STANDARD CYCLIC REDUNDANCY CHECK CODE(2BYTE)

Polynominal = X ^ 16 + X ^ 15 + X ^ 2 + 1

DATA FIELD 의 크기는 OPCODE 별로  유동적임

OPCODE 종류

도형식 [ 128 ( 0x80 ) ~ (0xFF) ]

OPC0DE	명칭	센터	설명	방향
0x80	폼 데이터 표출	송신	표출할 폼 데이터 송신	센터 → VMS
		수신	수신 여부 응답( ACK/NAK )	센터 ← VMS
0x82	데이터 다운로드	송신	INI, CFG , Bitmap , Data파일송신	센터 → VMS
		수신	수신 여부 응답( ACK/NAK )	센터 ← VMS
0x84	데이터 업로드	송신	INI, CFG , Bitmap , Data파일 업로드 요구	센터 → VMS
		수신	업로드 데이터 전송	센터 ← VMS
0x86	VMS 상태제어	송신	VMS 제어정보 송신	센터 → VMS
		수신	수신 여부 응답( ACK/NAK )	센터 ← VMS
0x88	VMS Status 요구	송신	VMS 상태정보 요구 송신	센터 → VMS
		수신	상태 데이터 응답	센터 ← VMS
0x8A	VMS 파라미터 요구	송신	VMS 로컬 상태 요구 송신	센터 → VMS
		수신	로컬 상태 데이터 응답	센터 ← VMS
0x8C	전원 모듈 상태 요구	송신	전원 모듈 상태를 검사 결과를 요청한다	센터 → VMS
		수신	전원 모듈 상태 데이터 응답	센터 ← VMS
0x8E	표출 모듈 상태 요구	송신	표출 모듈 상태를 검사 결과를 요청한다	센터 → VMS
		수신	표출 모듈 상태 데이터 응답	센터 ← VMS
0x92	VMS Pixel Image 요구	송신	VMS LED Pixel 상태요구 송신	센터 → VMS
		수신	현재표출중인 LED 상태 Pixel 송신	센터 ← VMS
0x94	현재표출폼 Upload	송신	Local에서 표출 중인 폼 Upload요구	센터 → VMS
		수신	현재표출중인 전체폼 송신	센터 ← VMS
0x96	Display Schedule Form	송신	계획된 Form 표출 요구	센터 → VMS
		수신	수신 여부 응답( ACK/NAK )	센터 ← VMS
0x98	Display Default Form	송신	디폴트 From표출 요구	센터 → VMS
		수신	수신 여부 응답( ACK/NAK )	센터 ← VMS

OPC0DE	명칭	센터	설명	방향
0x9A	Download Form	송신	Form download	센터 → VMS
		수신	수신 여부 응답( ACK/NAK )	센터 ← VMS
0x9C	Upload Schedule Form	송신	스케줄 메시지 업로드 요구	센터 → VMS
		수신	스케줄 메세지 전송	센터 ← VMS
0x9E	Blank	송신	schedule 표출	센터 → VMS
		수신	수신 여부 응답( ACK/NAK )	센터 ← VMS
0xA0	Display Form ID	송신	Form ID에 해당하는 Form 표출	센터 → VMS
		수신	수신 여부 응답( ACK/NAK )	센터 ← VMS
0xA1	동영상 파일 FTP 다운로드	송신	동영상 파일 FTP 다운로드	센터 → VMS
		수신	수신 여부 응답( ACK/NAK )	센터 ← VMS
0xA2	동영상 파일 FTP 다운로드 완료	수신	동영상 파일 FTP 다운로드 완료	센터 ← VMS

응답 메시지 구조

도형식

ACK 전송 : ACK 전송시에는 Data Field에 ACK값(0x06)을 추가하여 결과를 전송한다.

NAK 전송 : NAK 전송시에는 Data Field에 NAK값(0x15)를 추가하여 전송하고 추가로 오류사유를 아래와 같이 추가하여 전송한다. DATA Field : NAK( 0x15 + 오류사유 )

NAK(0x15) + 오류사유코드(1Byte).

오류코드	오류사유	비고
0x30	Data Length가 2,047 Byte 보다 크면 보고되는 오류
0x31	Data Length 이후의 데이터가 Data Length + 5Byte가 되지 않는 오류
0x32	데이터 크기 불일치
0x33	작업이전 작업 진행중 작업요구
0x34	파라미터 범위 초과
0x35	저장되지 않은 폼데이터 요구
0x36	업무처리 해당사항 없음	알수없는 OpCode
0x37	STN Address 틀림
0x38~9F	예비	특성에 맞게 정의함

STX 수신 후 데이터 오류 검사

OP Code가 0 이면 오류로 판단하여 데이터를 버리고 다시 STX를 기다린다.

송신 Frame No > 전체 Frame No 이면  오류로 판단하여 데이터를 버리고 다시 STX를 기다린다.

ACK/NAK 또는 데이터 응답 시

OPCODE, FRAME NO 는 수신 받은 데이터로 응답한다. 단, 서버에서 송신한 STN address는 로컬에서 자신의 고유 STN adress로 응답한다.

통신 메시지 유형

폼데이터 표출

해당 VMS에 표출할 폼데이터를 전송한다.

<Send>

구 분	내 용
OP-Code	0x80
Total Message Size	N Bytes
Data Byte
	<아래 표 참조>

Data Byte내용

내 용		설 명	길이	비 고
폼 ID		폼 ID	2 Byte	'0000'과 '9999'를 제외한 일련번호
전체 폼 수		전체 폼의 수	2 Byte	2 Byte
폼 데이터 헤더	폼 번호	폼 표출 일련번호	6 Byte	2 Byte
	표출시간	폼의 표출시간을 지정		1 Byte( 0x00 이면 계속 표출 )
	표출유형	폼의 표출유형을 지정		1 Byte(별표 참조)
	배경색상	폼의 배경색을 지정		1 Byte(RGB)
	오브젝트 수	표출할 오브젝트 전체 수		1 Byte
오브젝트 1	오브젝트 데이터 헤더	오브젝트 종류	9 Byte	1 Byte(별표 참조)
		오브젝트 데이터 크기		2 Byte
		점멸여부		1 Byte(0x00 : 고정, 0x01 : 점멸)
		좌표 X		2 Byte
		좌표 Y		2 Byte
		문자열 배경색을 지정		1 Byte(RGB)
	오브젝트 데이터	오브젝트 데이터	n	오브젝트 종류별 형식은 아래표 참조
‥‥‥		‥‥‥
n	위와 같음

Form ID(표출할 Form ID)

표시하고자 하는 Form 데이터의 ID로서 다음과 같이파일명을 구성한다.

예) FID0001, FID0002, FID0003, FID0004...

ID 부여시 임시 표출은 "FID9999", default 표출은 "FID0000", 나머지는 일련번호로 부여

※ 오브젝트 종류

구 분	목 록	코드	비 고
오브젝트	문자열	0x00
	Bitmap	0x01
	Bitmap ID	0x02
	동영상	0x03	동영상 (AVI, MPEG, MPG, MKV, MP4)
	스트리밍 영상	0x04

문자열 오브젝트 형식 : 문자를 표출하는 오브젝트

내 용	설 명	길이	비 고
헤더 (5 Byte)	사용 폰트 색상	3 Byte	Full-Color(RGB)
	사용 폰트 크기	1 Byte	(별표 참조)
	사용 폰트 종류 Code	1 Byte	(별표 참조)
	사용 폰트 굵기	1 Byte	(별표 참조)
	기타	1 Byte
문자열 Data (n Byte)	표출할 문자열	n Bytes	문자열 데이터

문자열 데이터는 표시하여야 할 문자열로서 문자열은 끝이 NULL 로 끝나지 않는다.

비트맵 오브젝트 형식 : 비트맵을 표출하는 오브젝트

내 용	설 명	길이	비 고
헤더 (6Byte)	비트맵 표시 Width	2 Byte	0 ~ 1023 : 표출 비트맵 Width
	비트맵 표시 Height	2 Byte	0 ~ 1023 : 표출 비트맵 Heitht
	그림파일 타입	1 Byte	별표 참조
	기타	1 Byte
비트맵 Data (n Byte)	표출할 비트맵 데이터	n Bytes	비트맵 데이터

비트맵 데이터 (표출할 비트맵 데이터)

표시하고자 하는 비트맵 데이터로서 파일형식은□BMP"를 기준으로 하고 색상은 16Color를 기본으로 하며 16 Color 이상도 사용할 수 있다.

비트맵 ID 오브젝트 형식 : 미리 정의된 비트맵을 표출하는 오브젝트

내 용	설 명	길이	비 고
헤더 (5Byte)	비트맵 표시 Width	2 Byte	0 ~ 1023 : 표출 비트맵 Width
	비트맵 표시 Height	2 Byte	0 ~ 1023 : 표출 비트맵 Height
	그림파일 타입	1 Byte	별표 참조
비트맵 ID Data (2 Byte)	표출할 비트맵 ID	2 Byte	0～ 9999 : 표출할 비트맵 ID

비트맵 ID (표출할 비트맵  ID)

표시하고자 하는 비트맵 데이터의 ID로서 다음과 같이 파일명을 구성한다.

예) BID0001, BID0002, BID0003, BID0004...

동영상 오브젝트 형식 : 미리 다운로드 된 동영상을 표출하는 오브젝트

내 용	설 명	길이	비 고
헤더 (5Byte)	동영상 표시 Width	2 Byte	0 ~ 1023 : 표출 동영상 Width
	동영상 표시 Height	2 Byte	0 ~ 1023 : 표출 동영상 Height
	기타	1 Byte	Default: 0x00
동영상 파일 이름	파일 이름	50 Byte	확장자가 포함된 파일이름(*.avi, ...)

동영상 오브젝트는 폼데이터에서 오직 한번만 존재하여야 하며 두 개 이상의 동영상 오브젝트는 표출하지 않음.

동영상 파일 이름에서 파일 이름을 제외한 나머지 데이터는 NULL 로 채운다.

스트리밍 오브젝트 형식 : 스트리밍 서버의 영상을 표출하는 오브젝트

내 용	설 명	길이	비 고
헤더 (5Byte)	동영상 표시 Width	2 Byte	0 ~ 1023 : 표출 동영상 Width
	동영상 표시 Height	2 Byte	0 ~ 1023 : 표출 동영상 Height
	기타	1 Byte	Default: 0x00
스트리밍 정보 (150Byte)	스트리밍 주소	150 Byte

스트리밍 영상 오브젝트는 폼데이터에서 오직 한번만 존재하여야 하며 두 개 이상의 스트리밍 영상 오브젝트는 표출하지 않음.

스트리밍 주소에서 스트리밍 주소를 제외한 나머지 데이터는 NULL 로 채운다.

<Response>

폼데이터 전송에 따른 ACK/NAK 데이터 전송함

구 분	내 용
OP-Code	0x80
Data Byte	ACK 경우	- Total 1 Byte - Data 값: 0x06
	NAK 경우	- Total 2 Bytes - Data 값: [Byte 1] : 0x15 [Byte 2] : 에러 상황에 따른 코드전송 자세한 코드는 “ NAK 전송참조”

2) 데이터 다운로드

파일을 전송할 때에 사용되는 명령이다, 수신 측은 저장위치에 전송된 파일을 저장한다.

<Send>

구 분	내 용
OP-Code	0x82
Total Message Size	N Bytes
Data Byte
	<아래 표 참조>

비트맵 오브젝트 형식 : 비트맵을 표출하는 오브젝트

내 용	설 명	길이	비 고
헤더 (5Byte)	Download Data 저장위치 Code	1 Byte	아래 저장위치 표 참고
	파일명 길이	1 Byte	1～ 255
	저장하여야 할 데이터의 크기	4 Byte
파일명	저장할 파일명	n
파일Data	다운로드 데이터	n

※ 전송할 데이터를 N번으로 나누어 보낼 경우 위의 내용을 N으로 나누어 보낸다.

※ 파일명은 끝이 Null로 끝나지 않으므로 파일명의 길이만큼 사용하여야 한다.

※ 전송하는 데이터가 비트맵 ID일 경우 파일명은 다음과 같은 방식으로 생성하여 전송한다.

- 파일명 : “BID”+일련번호 4자리+□.” + 확장자명

- 예) ID가 5이고 BMP 파일인 경우 BID0005.BMP

Download Data 저장위치 상세코드

Data ID(저장위치 Code)	경로명
0	파일명에 포함
1	로컬 프로그램이 속하여 있는 디렉토리에 저장
2	로컬 프로그램이 설치된 루트 디렉토리에 저장
3	윈도우즈 디렉토리에 저장
4	윈도우즈 시스템 디렉토리에 저장
5	로컬 프로그램 이미지 디렉토리에 저장
6	로컬 프로그램 디폴트 폼 디렉토리에 저장

<Response>

전송에 따른  ACK/NAK 데이터 전송함

구 분	내 용
OP-Code	0x82
Data Byte	ACK 경우	- Total 1 Byte - Data 값: 0x06
	NAK 경우	- Total 2 Bytes - Data 값: [Byte 1] : 0x15 [Byte 2] : 에러 상황에 따른 코드전송 자세한 코드는 “ NAK 전송참조”

3) 데이터 업로드

센터에서 현장에 저장된 파일에 대한 업로드를 요구할 때 사용한다.

<Send>

구 분	내 용
OP-Code	0x84
Total Message Size	N Bytes
Data Byte
	<아래 표 참조>

파일요청 Data Byte

내 용	설 명	길이	비 고
헤더 (3Byte)	Upload Data 저장위치 Code	1 Byte	위 저장위치 표 참고
	파일명 길이	1 Byte	1～ 255
	기타	1 Byte	Reserved
파일명	업로드할 파일명	n

<Response>

로컬 제어기는 센터의 요청에 따른 파일을 전송한다.

구 분	내 용
OP-Code	0x84
Total Message Size	N Bytes
Data Byte
	<아래 표 참조>

파일전송 Data Byte

내 용	설 명	길이	비 고
헤더 (5Byte)	Upload Data 저장위치 Code	1 Byte	위 저장위치 표 참고
	파일명 길이	1 Byte	1～ 255
	전송하여야 할 데이터의 크기	2 Byte
파일명	전송할 파일명	n
파일Data	업로드 데이터	n

※ 업로드할 파일이 없으면 데이터 크기를 0으로 하여 보냄.

4) VMS 상태제어

현장 VMS에 대한 제어를 요청한다. 각 제어에 대한 Op Code가 별도로 존재하는 것이 아니라, OP Code는 동일하고 제어코드에 따라 제어형태가 구분된다.

<Send>

구 분	내 용
OP-Code	0x86
Total Message Size	N Bytes (제어 데이터에 따라 가변)
Data Byte
	<아래 표 참조>

제어에 대한 Data Byte (센터 → VMS)

내 용	설 명	길이	비 고
제어 코드	제어할 명령 Code	1	제어코드 참조
제어 데이터	제어방법 설정	n

제어 코드 및 코드에 대한 데이터

제어코드	제어데이터		제어데이터 크기 및 설명
	내 용	설 명
0x01	전광판 전원제어	0x00:꺼짐, 0x01:켜짐,	1 Byte
0x02	제어기 리셋트	-	1 Byte
0x03	통신 재시도 횟수	0x01 ~ 0x09	1 Byte(초기값 0x03:3회)
0x04	제어기 시간설정	"YYYYMMDDHHNNSS"	14 Bytes(String)
0x05	점멸시간 주기	1/10초 단위	1 Byte
0x06	밝기제어	0x00:주간, 0x01:야간, 0x02:Auto	2 Byte(제어값+밝기) (밝기:수동 0~100,자동 0)
0x07	Fan 제어	0x00:꺼짐, 0x01:켜짐, 0x02:자동 고정값 0xFF	2 Byte(제어값+온도) (온도:자동 0~100,그외 0) 고정값 0xFF
0x08	Heater 제어	0x00:꺼짐, 0x01:켜짐, 0x02:자동 고정값 0xFF	2 Byte(제어값+온도) (온도:자동 0~100,그외 0) 고정값 0xFF
0x09	화면 배색 제어	0x01:Red, 0x02:Green, 0x03:Amber	1 Byte(제어값)
0x0A	장애모듈비율	-	에러난 픽셀의 백분율 : 0～100
0x0B	디폴트 시나리오 동작시간	초 단위	2 Byte, default value : 300초

※ 제어코드(0x01 ~ 0x0A)의 Default 제어값은 기존시스템 초기설정값을 기준으로 한다

전광판 전원 제어 명령 중 꺼짐 명령을 받으면 표지판은 꺼짐. 이후 켜짐 명령이 있을 때까지는 어떤 명령도 무시한다.

숫자 0은 0x00 이며, 문자 ‘0‘은 0x30이다.

제어기 시간 셋트에서 데이터는 문자열로 구성 (예) : 2004년 3월 25일 15시 30분 45초 일때□20040325153045□

밝기 제어

주간, 야간, 자동으로 구분하여 운영 모드를 지정할 수 있으며, 동시에 밝기를 지정할 수 있다. 주간 조도 default value(90), 야간 모드 default value(65)

장애모듈비율 : 한개의 모듈을 장애로 처리하기 위한 장애 PIXEL 백분율 값.

Default 값은 10%

Fan 제어

VMS의 Fan을 제어하며 자동일 때 데이터에 Fan이 작동을 개시하는 온도를 전송하며 VMS는 전송된 데이터 보다 온도가 상승할 경우 Fan을 작동 시켜야 한다.

Heater 제어

VMS의 Heater를 제어하며 자동일 때는 데이터에 Heater가 작동을 개시하는 온도를 전송하며 VMS는 전송된 데이터 보다 온도가 하강할 경우 Heater를 작동시켜야 한다.

<Response>

제어데이터 전송에 따른 수신결과를 ACK/NAK 데이터 전송함

구 분	내 용
OP-Code	0x86
Data Byte	ACK 경우	- Total 1 Byte - Data 값: 0x06
	NAK 경우	- Total 2 Bytes - Data 값: [Byte 1] : 0x15 [Byte 2] : 에러 상황에 따른 코드전송 자세한 코드는 “p.4의 NAK 전송참조”

5) VMS Status 요구

상태 정보를 요청한다.

<Send>

구 분	내 용
OP-Code	0x88
Total Message Size	15 Bytes
Data Byte
	없음

<Response>

로컬 제어기는 센터의 상태요구에 따른 상태정보를 센터로 전송한다.

구 분	내 용
OP-Code	0x88
Total Message Size	27 Bytes
Data Byte
	<아래 표 참조>

상태 요구 응답 (센터 ← VMS)

내 용	설 명	길이	비 고
상태 데이터 ( 14 Byte )	Door Open/Close 상태	1 Byte	0x00 : Open, 0x01 : Close, 0x09 : Unknown
	전원의 ON/OFF 상태	1 Byte	0x00 : On, 0x01 : Off (Sign Board)
	VMS Fan 동작상태 함체 Fan 동작상태	1 Byte	0x00 : On, 0x01 : Off, 0x09: Unknown 0x00 : On, 0x10 : Off, 0x90: Unknown
	VMS Heater 동작상태 함체 Heater 동작상태	1 Byte	0x00 : On, 0x01 : Off, 0x09: Unknown 0x00 : On, 0x10 : Off, 0x90: Unknown
	표출 폼 번호	2 Byte	0x00 : 통신 폼, 0x01 : 디폴트 폼
	재실행 여부	1 Byte	0x00 : 정상, 0x01 : 재실행
	함체온도	1 Byte	127 ~ -127 -128 : Unknown
	화면의 밝기	4 Byte	최대를 100으로 했을 때의 백분율 값 및 기준휘도
	표출부온도	1 Byte	127 ~ -127 -128 : Unknown
	표출부습도	1 Byte	0~100%

화면의 밝기

[BYTE 0] : 현재 휘도(00: 주간, 01: 야간, 02: 자동)

[BYTE 1] : 야간 휘도 설정값

[BYTE 2] : 주간 휘도 설정값

[BYTE 3] : 현재 휘도값

센터 서버가 전원 모듈 또는 모듈의 이상을 수신 시

센터 서버는 이상 상태 요구를 현장 제어기로 송신 한다.

현장 제어기는 모듈의 이상여부가 변경되는 이벤트가 발생 시 이상여부를 셋팅하여 보내야한다.

현장 제어기는 Reset 또는 프로그램 다운으로 인한 프로그램 재실행 시 재실행 여부를 1로 셋팅하여야 하며, 이는 센터 서버가 모듈 상태를 요구하기 위함이다.

6) VMS 파라미터 요구

로컬 상태를 요청한다.

<Send>

구 분	내 용
OP-Code	0x8A
Total Message Size	15 Bytes
Data Byte
	없음

<Response>

로컬 제어기는 센터의 상태요구에 따른 상태정보를 센터로 전송한다.

구 분	내 용
OP-Code	0x8A
Total Message Size	29 Bytes
Data Byte
	<아래 표 참조>

OP Code (6) - 로컬 상태 요구 응답 (센터 ← VMS)

내 용	설 명		길이	비 고
로컬 상태 데이터 ( 16Byte )	전원제어 모드		1 Byte	0x00 : 꺼짐, 0x01 : 켜짐,
	Fan 동작모드		1 Byte	0x00 : 꺼짐,0x01 : 켜짐, 0x02 : 자동,0x09: Unknown
	Fan의 동작개시온도		1 Byte	온도( 0x00 ~0x03f )
	Heater의 동작모드		1 Byte	0x00 : 꺼짐, 0x01 : 켜짐, 0x02 : 자동, 0x09: Unknown
	Heater 의 동작개시온도		1 Byte	온도(0x00 ~ 0x3f )
	화면 밝기 모드		1 Byte	0x0 : 수동, 0x1 : 자동
	화면 밝기값		1 Byte	비율 : 0-100
	깜빡이는 시간주기		1 Byte	문자 비트맵의 깜빡이는 시간주기0x00 ~ 0x1e( 0.1 ~3.0 )
	디폴트 시나리오로 전환시간		2 Byte	디폴트 시나리오로 전환될 때까지 기다리는 시간, 단위 : 초
	기타		1 Byte
	현재 로컬 제어기의 시간	년	1 Byte	0x00 ~ 0x32(현재년도 – 2000)
		월	1 Byte	0x01 ~ 0x0c
		일	1 Byte	0x01 ~ 0x1f
		시	1 Byte	0x00 ~ 0x17
		분	1 Byte	0x00 ~ 0x3b
		초	1 Byte	0x00 ~ 0x3b

7) 전원 모듈 상태 요구

전원 모듈의 상태를 요구한다. 로컬 제어기는 VMS모듈당 전원상태를 정상/비정상 값으로 리턴한다.

<Send>

구 분	내 용
OP-Code	0x8C
Total Message Size	15 Bytes
Data Byte
	없음

<Response>

로컬 제어기는 VMS의 전원상태를 리턴한다.

구 분	내 용
OP-Code	0x8C
Total Message Size	n Bytes
Data Byte
	<아래 표 참조>

전원 모듈 상태 응답 (센터 ← VMS)

내 용	설 명	길 이	비 고
전원 모듈 상태 데이터	VMS 전원모듈의 수	2 Byte	1 Byte 전원모듈 수
			1 Byte 임시영역
	VMS 전원모듈 상태 1	1 Byte	0x00 : Off, 0x01 : On, 0x02 : Unknown,
	VMS 전원모듈 상태 2	1 Byte	0x00 : Off, 0x01 : On, 0x02 : Unknown,
	....
	VMS 전원모듈 상태 n	n Byte	0x00 : Off, 0x01 : On, 0x02 : Unknown,

전원상태 데이터에서 전원상태 감시가 이루어지지 않았을 경우 0x02를 전송한다.

8) 표출 모듈 상태 요구

표출 모듈의 상태를 요구한다. 로컬 제어기는 VMS모듈당 표출모듈의 상태를 정상/비정상 값으로 리턴한다.

<Send>

구 분	내 용
OP-Code	0x8E
Total Message Size	15 Bytes
Data Byte
	없음

<Response>

로컬 제어기는 VMS의 모듈상태를 리턴한다.

구 분	내 용
OP-Code	0x8E
Total Message Size	n Bytes
Data Byte
	<아래 표 참조>

OP Code (0x08) - 표출 모듈 상태 Upload (센터 ← VMS)

내 용	설 명	길 이	비 고
모듈 상태 데이터	VMS 모듈수	2 Byte	1 Byte(X축) VMS 모듈수
			1 Byte(Y축) VMS 모듈수
	VMS 모듈상태 1	1 Byte	0x00 : Off, 0x01 : On, 0x02 : Unknown,
	VMS 모듈상태 2	1 Byte	0x00 : Off, 0x01 : On, 0x02 : Unknown,
	...
	VMS 모듈상태 n	1 Byte	0x00 : Off, 0x01 : On, 0x02 : Unknown,
모듈 상태 백분율 (N Byte)	VMS 모듈백분율	n Byte	에러난 픽셀의 백분율 : 0～100 Unknown시 : 255

예)VMS 모듈수 : 2단 5열일 경우 모듈개수 (5(x), 2(y))를 표지한다.

11) 현재 표출 폼 Upload

현재의 표출폼에 대한 정보를 요청한다.

<Send>

구 분	내 용
OP-Code	0x94
Total Message Size	15 Bytes
Data Byte
	<없음>

<Response>

현재 표출중인 폼정보를 전송한다.

구 분	내 용
OP-Code	0x94
Total Message Size	n Bytes
Data Byte
	전송내용은 OpCode 0x01의 폼데이터 전송과 동일한 정보를 센터로 전송함.

12) Download Schedule Form

계획된 Form들은 일반 Form이 BLANK 명령에 의해 지워질 때 마다 표출되어야 한다. 이 명령을 이용하여 최대 10개의 폼들을 정의할 수 있음.

일반 메시지가  BLANK 명령에 의해  지워진 게획된 Form이 따로 정의되지 않은 상태에서, 표지판은 공백(BLANK) 상태에 있게 된다.

<Send>

구 분	내 용
OP-Code	0x96
Total Message Size	45 Bytes
Data Byte
	<아래 표 참조>

Data Byte내용

설 명	길이	비 고
1번 폼 ID	3 Byte	2 Byte
1번 폼 표출시간		1 Byte = default value = 0 폼 표출 시간이 0인 경우 자체 폼 표출 시간을 따른다.
2번 폼 ID	3 Byte	2 Byte
2번 폼 표출시간		1 Byte = default value = 0
	․ ․ ․
10번 폼 ID	3 Byte	2 Byte
10번 폼 표출시간		1 Byte = default value = 0

폼 표출시간이 0 이고 해당 폼에 동영상 오브젝트가 존재하는 경우 동영상 표출을 종료할 때 까지 폼을 표출한다. (즉 폼 표출시간 = 동영상 전체 표출 시간)

<Response>

전송에 따른  ACK/NAK 데이터 전송함

구 분	내 용
OP-Code	0x96
Data Byte	ACK 경우	- Total 1 Byte - Data 값: 0x06
	NAK 경우	- Total 2 Bytes - Data 값: [Byte 1] : 0x15 [Byte 2] : 에러 상황에 따른 코드전송 자세한 코드는 “p.4의 NAK 전송참조”

13) Display default Form

FID0000번 Form을 출력한다. 만약 제어기에 0000번 폼이 지정되어 있지 않다면 전광판은 BLANK(화면에 아무것도 출력되지 않음) 처리된다.

<Send>

구 분	내 용
OP-Code	0x98
Total Message Size	15 Bytes
Data Byte
	없음

<Response>

전송에 따른  ACK/NAK 데이터 전송함

구 분	내 용
OP-Code	0x98
Data Byte	ACK 경우	- Total 1 Byte - Data 값: 0x06
	NAK 경우	- Total 2 Bytes - Data 값: [Byte 1] : 0x15 [Byte 2] : 에러 상황에 따른 코드전송 자세한 코드는 “p.4의 NAK 전송참조”

14) Download Form

Form을 VMS에 저장하도록 요구한다.

<Send>

구 분	내 용
OP-Code	0x9A
Total Message Size	N Bytes
Data Byte
	전송내용은 OpCode 0x80의 폼데이터 전송과 동일한 정보를 VMS로 전송함.

<Response>

전송에 따른  ACK/NAK 데이터 전송함

구 분	내 용
OP-Code	0x9A
Data Byte	ACK 경우	- Total 1 Byte - Data 값: 0x06
	NAK 경우	- Total 2 Bytes - Data 값: [Byte 1] : 0x15 [Byte 2] : 에러 상황에 따른 코드전송 자세한 코드는 “p.4의 NAK 전송참조”

15) Upload Schedule Form

VMS에 설정되어 있는 스케쥴 Form을 Upload하라는 명령

<Send>

구 분	내 용
OP-Code	0x9C
Total Message Size	15 Bytes
Data Byte
	없음

<Response>

구 분	내 용
OP-Code	0x9C
Total Message Size	45 Bytes
Data Byte
	<아래 표 참조>

설 명	길이	비 고
1번 폼 번호	3 Byte	2 Byte
1번 폼 표출시간		1 Byte
2번 폼 번호	3 Byte	2 Byte
2번 폼 표출시간		1 Byte
	․ ․ ․
10번 폼 번호	3 Byte	2 Byte
10번 폼 표출시간		1 Byte

16) BLANK

현재 표출하는 Form을 지우고 스케쥴 from을 표출하고, 만약 Scheldule form이 없다면 표지판은 공백상태(즉, 모든 LED가 꺼진 상태)로 되어야 한다. 만약, Schedule form가 표출중일때 이 명령을 수신하면 현 상태를 유지함(즉, 스케쥴 form를 계속 표출함)

<Send>

구 분	내 용
OP-Code	0x9E
Total Message Size	15 Bytes
Data Byte
	없음

<Response>

전송에 따른  ACK/NAK 데이터 전송함

구 분	내 용
OP-Code	0x9E
Data Byte	ACK 경우	- Total 1 Byte - Data 값: 0x06
	NAK 경우	- Total 2 Bytes - Data 값: [Byte 1] : 0x15 [Byte 2] : 에러 상황에 따른 코드전송 자세한 코드는 “p.4의 NAK 전송참조”

17) Display Form ID

Form의 표시를 요구한다. Form ID는 요구시 함께 보낸다.

<Send>

구 분	내 용
OP-Code	0xA0
Total Message Size	17 Bytes
Data Byte
	<아래 표 참조>

Data Byte내용

설 명	길이	비 고
폼 번호	2 Byte

※ 현장제어기에 해당 ID의 폼이 저장되어 있지 않을 경우 에러 코드를 전송하고 현장 장비는 공백문안을 출력한다.

<Response>

전송에 따른  ACK/NAK 데이터 전송함

구 분	내 용
OP-Code	0xA0
Data Byte	ACK 경우	- Total 1 Byte - Data 값: 0x06
	NAK 경우	- Total 2 Bytes - Data 값: [Byte 1] : 0x15 [Byte 2] : 에러 상황에 따른 코드전송 자세한 코드는 “p.4의 NAK 전송참조”

18) 동영상 파일 FTP 다운로드 (센터 → VMS)

동영상 파일을 FTP를 이용하여 다운로드 한다.

<Send>

구 분	내 용
OP-Code	0xA1
Total Message Size	270 Bytes
Data Byte
	<아래 표 참조>

Data Byte내용

설 명	길이	비 고
동영상 파일 이름	255 Byte	파일이 존재하는 FTP 서버의 전체 경로 + 파일 이름 + 확장자

※ 동영상 파일 이름에서 동영상 파일이름을 제외한 나머지 데이터는 NULL로 채운다.

※ FTP 서버 관련 정보는 아래와 같으며 미리 VMS에 등록되어 있어야 합니다.

- FTP 서버 주소, 포트 번호, Username, Password, Passive Mode

<Response>

전송에 따른  ACK/NAK 데이터 전송함

구 분	내 용
OP-Code	0xA1
Data Byte	ACK 경우	- Total 1 Byte - Data 값: 0x06
	NAK 경우	- Total 2 Bytes - Data 값: [Byte 1] : 0x15 [Byte 2] : 에러 상황에 따른 코드전송 자세한 코드는 “p.4의 NAK 전송참조”

※ ACK 전송은 다운로드 할 파일 정보를 정상적으로 수신했다는 의미이며 다운로드가 완료되었다는 의미는 아닙니다. 동영상 파일이 정상적으로 다운로드 되기 전에 동영상에 대한 어떠한 표출 명령이 내려오면 해당 표출 명령은 무시되고 동영상 파일이 정상적으로 다운로드 된 후에 표출 명령을 수행합니다.

※ 즉 폼 표출 정보에 다운로드 되지 않은 동영상 정보가 존재하는 경우 해당 주기에는 해당 폼을 표출하지 않고 다음 표출 주기에 동영상이 정상적으로 다운로드 되면 폼을 표출합니다.

19) 동영상 파일 FTP 다운로드 완료 (센터 ← VMS)

동영상 파일 다운로드 완료시 VMS에서 센터로 전송한다.

<Send>

구 분	내 용
OP-Code	0xA2
Total Message Size	270 Bytes
Data Byte
	<아래 표 참조>

Data Byte내용

설 명	길이	비 고
동영상 파일 이름	255 Byte	다운로드를 위하여 수신된 파일 정보

※ 동영상 파일 이름은 센터에서 수신한 동영상 파일 이름입니다. 동영상 파일 이름에서 동영상 파일 이름을 제외한 나머지 데이터는 NULL로 채운다.

※ OP-Code 0xA2에 대하여 센터에서 응답할 필요는 없습니다.

<별표 #1>

1) 색상 및 폰트

구 분	목 록	코드	비 고
폰트 색상	검정색	0x00
	적색	0x01
	녹색	0x02
	황색	0x03
폰트 종류	명조체	0x20
	고딕체	0x21
	바탕체	0x22
	굴림체	0x23
	돋움체	0x24
	궁서체	0x25
폰트 굵기	굵게	0x00
	가늘게	0x01
폰트의 크기	6 폰트	0x06	6 ~ 63 폰트 범위내에서 VMS 표출 전략과 연계하여 폰트크기를 조절하여 사용한다
	7 폰트	0x07
	8 폰트	0x08
	9 폰트	0x09
	...	...
	63 폰트	0x3f

2) 배경색상

구 분	목 록	코드	비 고
배경 색상	검정색	0x00
	적색	0x01
	녹색	0x02
	황색	0x03

3) 팬 동작 모드 코드 목록 및 정의서

구 분	목 록	코드	비 고
팬 동작 모드	꺼짐	0x00
	켜짐	0x01
	자동	0x02
	수동	0x03

4) 하드웨어 작동 상태

구 분	목 록	코드	비 고
도어 상태	켜짐	0x00	열림
	꺼짐	0x01	닫힘
팬 상태	켜짐	0x00	작동
	꺼짐	0x01	중지
히터 상태	켜짐	0x00	작동
	꺼짐	0x01	중지

5) 그래픽 데이터 상태

구 분	목 록	코드	비 고
그래픽 데이터 형식	Window Bitmap	0x00
	GIF	0x01
	JPG	0x02
	PCX	0x03

6) 폼 표출유형

구 분	목 록	코드	비 고
폼 표출유형	Static Normal	0x00	즉시 표출
	Shift(Up)	0x01	기존 화면 위에 다음 화면을 겹쳐서 위 방향으로 다음 화면만 밀면서 표출
	Shift(Down)	0x02	기존 화면 위에 다음 화면을 겹쳐서 아래 방향으로 다음 화면만 밀면서 표출
	Shift(Left)	0x03	기존 화면 위에 다음 화면을 겹쳐서 왼쪽 방향으로 다음 화면만 밀면서 표출
	Shift(Right)	0x04	기존 화면 위에 다음 화면을 겹쳐서 오른쪽 방향으로 다음 화면만 밀면서 표출
	Scroll(Up)	0x05	기존 화면과 다음 화면을 위 방향으로 밀면서 표출
	Scroll(Down)	0x06	기존 화면과 다음 화면을 아래 방향으로 밀면서 표출
	Scroll(Left)	0x07	기존 화면과 다음 화면을 왼쪽 방향으로 밀면서 표출
	Scroll(Right)	0x08	기존 화면과 다음 화면을 오른쪽 방향으로 밀면서 표출
	Wipe(Up)	0x09	기존 화면을 위 방향으로 지우면서 다음 화면을 표출
	Wipe(Down)	0x0a	기존 화면을 아래 방향으로 지우면서 다음 화면을 표출
	Wipe(Left)	0x0b	기존 화면을 왼쪽 방향으로 지우면서 다음 화면을 표출
	Wipe(Right)	0x0c	기존 화면을 오른쪽 방향으로 지우면서 다음 화면을 표출
	Curtain(수직 In)	0x0d	수직으로 나누어 중앙을 향해 안쪽으로 표출
	Curtain(수직 Out)	0x0e	수직으로 나누어 중앙에서 바깥쪽을 향해 표출
	urtain(수평 In)	0x0f	수평으로 나누어 중앙을 향해 안쪽으로 표출
	Curtain(수평 Out)	0x10	수평으로 나누어 중앙에서 바깥쪽을 향해 표출
	Trace(Right)	0x11	한 글자 크기에 대한 한 Line씩 오른쪽으로 표출
	Trace(Left)	0x12	한 글자 크기에 대한 한 Line씩 왼쪽으로 표출
	Blind(Up)	0x13	다음 화면을 수직 또는 몇 개의 화면으로 분할하여 위 방향으로 표출
	Blind(Down)	0x14	다음 화면을 수직 또는 몇 개의 화면으로 분할하여 아래 방향으로 표출
	Blind(Left)	0x15	다음 화면을 수직 또는 몇 개의 화면으로 분할하여 왼쪽 방향으로 표출
	Blind(Right)	0x16	다음 화면을 수직 또는 몇 개의 화면으로 분할하여 오른쪽 방향으로 표출
	Blinking	0x17	표출화면(폼) 전체 깜박임