# Write Job

In-Sight 비전 시스템의 플래시 메모리에 있는 지정된 In-Sight 작업 슬롯으로 작업을 보냅니다.

참고:

- In-Sight 비전 시스템은 오프라인이어야 합니다.
- 이 명령은 In-Sight 비전 시스템의 플래시 메모리에 저장된 작업에 대해서만 작동합니다. 구성된 작업 서버 또는 In-Sight 비전 시스템에 설치된 SD 카드에 작업이 저장된 경우 이 명령은 작동하지 않습니다.

## Write Job 입력

구문: WJ[ID][파일 이름][크기][데이터][체크섬]

명령과 ID는 별도의 행으로 전송되며 이어서 작업 데이터가 별도의 행들로 전송되는데, 이 데이터는 Read Job 명령에서 받은 데이터의 정확한 복사본이어야 합니다.

매개 변수 | 설명
--- | ---
ID | 작업 ID 번호(0 - 999).

작업 데이터의 행은 다음과 같습니다.

매개 변수 | 설명
--- | ---
파일 이름 | 첫 번째 행에는 작업 이름이 있습니다.
크기 | 두 번째 행에는 작업의 크기(단위: 바이트)의 정수 값이 포함됩니다.
데이터 | 실제 작업 데이터는 행당 80자로 서식화된 ASCII 16진수 값으로 인코딩됩니다. 모든 행은 종료 문자로 포함됩니다.
체크섬 | 마지막 행에는 작업 데이터의 체크섬인 4개의 ASCII 16진수 바이트가 포함합니다.

## Write Job 출력

상태 코드와 행 종료자를 반환합니다. 상태 코드는 다음과 같습니다.

상태 코드 | 설명
--- | ---
1 | 명령이 성공적으로 실행되었습니다.
0 | 인식할 수 없는 명령.
-1 | 작업 ID 번호가 허용 범위(0 - 999)를 벗어났습니다.
-2 | 작업을 쓸 수 없거나 작업 데이터가 잘못되었습니다.
-3 | 체크섬 오류. 체크섬이 작업 데이터와 일치하지 않습니다.
-4 | In-Sight 비전 시스템에 메모리가 부족합니다.
-6 | 사용자에게 명령을 실행할 모든 권한이 없습니다.

## Write Job 예

"86Test.jobx"라는 작업에 작업 데이터를 쓰려면 WJ86 명령을 이용합니다.

명령 뒤에 작업 이름(Test.jobx)을 입력하고 이어서 크기(826 바이트)를 입력합니다. 다음으로, 작업 파일의 ASCII 16진수 바이트가 입력됩니다. 마지막으로, 4개의 ASCII 16진수 체크섬 바이트(D56E)를 마지막 줄에 입력합니다.

In-Sight 비전 시스템는 1로 응답하여 작업이 비전 시스템의 플래시 메모리로 전송되었음을 나타냅니다.

참고:

- 비전 시스템에 이미 작업 파일이 있는 경우 기존 작업 데이터를 덮어씁니다.
- 비전 시스템에 작업 파일이 없는 경우에는 지정된 이름으로 새 작업 파일이 만들어집니다.
- ASCII 16진수 인코딩으로 인해 크기는 In-Sight 비전 시스템에 저장된 실제 .JOBX 파일 크기의 두 배가 될 것입니다.