Word Block Write 명령어 실행
PLC 디바이스 메모리를 직접 지정하여 메모리 데이터 타입에 맞게 쓰는 기능 입니다. 데이터가 최대 16개까지 반복되어 지정되어 질 수 있습니다. 그러나, Write하고자 하는 Word데이터 크기의 전체 합은 반드시 64Word를 초과하지 않아야 합니다.
요구 포맷 (PC → PLC) |
---|
Word Block Write (Master 송신)
Cmd – 57h
ID | Frame No. | Cmd | Res. | Length | Data | Check Sum |
ID : 9 Byte로 구성된 문자열
Frame No. : 0 ~ 127 범위의 값을 갖는 1 Byte Data로서, Master 측에서 관리하는 프레임 번호입니다.
Cmd : 1 Byte, 57h (Word Block Write)
Res. : 1 Byte의 예약 영역 (00h)
Length : Data 영역의 총 Byte 수
Data : ‘Y0000’ 부터 2 Word를 각각 1과 256으로 쓰는 경우
Offset (Byte) | 데이터 의미 | 예 | 비 고 |
0 | 주 Device Prefix (ASCII) | ‘Y’ | PLC에서 지원되는 Word Device의 ASCII Prefix를 지정한다. |
1 | 보조 Device Prefix 또는 ‘0’(ASCII) | ‘0’ | Prefix가 2 문자로 구성되는 Device인 경우의 보조 Prefix (TC, TS, CC, CS 등이 해당됨) |
2 | Device Address (ASCII) | ‘0’ | 해당 Device의 Word Address 또는 Card 번호를 사용한다. 즉, X/Y 등의 Bit Device인 경우 마지막 번호는 반드시 ‘0’이어야 한다. |
3 | ‘0’ | ||
4 | ‘0’ | ||
5 | ‘0’ | ||
6 | ‘0’ | ||
7 | ‘0’ | ||
8 | Write Size (Word) | 00h | 0001h ~ 0040h (1~64) 범위의 값 |
9 | 02h | ||
10 | Write Data (Word) | 00h | Write Value |
11 | 01h | ||
12 | Write Data (Word) | 01h | Write Value |
13 | 00h |
Check Sum : 2 Byte의 값으로, 전체 프레임을 Byte 단위로 ‘Binary Sum’을 한 뒤 그 결과 값 중 하위 2 Byte를 사용합니다.
응답 포맷 |
---|
ACK 응답
Master 요구를 정확히 수신해서 정확한 응답을 해 준 경우
Master가 쓰기 요청한 Word Block Write에 대한 응답을 해주는 프레임입니다.
Cmd – 41h
[Data 영역]
Offset (Byte) | 데이터 의미 | 예 | 비 고 |
0 | Error Code | 00h | Error Code (Non Error Code) |
1 | 00h |
NACK 응답
시스템 이상 또는 다른 이유로 인하여 ‘Word Block Read’에 대한 서비스가 이루어질 수 없는 경우
Cmd – 41h
Error Code를 응답하는 경우 (*Error Code는 전용 서비스Error Code표를 참고)
Data 영역
Offset (Byte) | 데이터 의미 | 예 | 비 고 |
0 | Error Code | 00h | Error Code (Write Block 수 초과) |
1 | 06h |