HTTP 전송을 사용하여 단일 이더넷 유닛의 상태 얻기
이 FP 명령은 nTransferID에서 지정한 이더넷 유닛에서 정보를 가져와 DUT FP_CLIENT_STATUS_DUT에 값을 씁니다.
입력
이더넷 유닛 ID(값: 0–15)
출력
지정된 이더넷 유닛의 이더넷 상태 값 저장
인터럽트 프로그램에서는 이 명령을 사용할 수 없습니다.
명령을 실행하기 전에 FP_HTTP_SET_MODE 또는 HTTP 클라이언트의 설정 다이얼로그를 사용하여 전송 설정을 지정해야 합니다.
에러가 발생하면 시스템 변수 sys_iEthernetConnectionErrorCode에서 에러 코드 번호를 확인하십시오.
지정된 이더넷 유닛 ID가 허용 범위(0-15)를 벗어난 경우.
FP_HTTP_SET_MODE 또는 HTTP 클라이언트의 설정 다이얼로그로 정의되지 않은 전송 설정이 지정된 경우.
명령을 인터럽트 프로그램에서 실행한 경우.
지정된 이더넷 유닛 ID가 허용 범위(0-15)를 벗어난 경우.
FP_HTTP_SET_MODE 또는 HTTP 클라이언트의 설정 다이얼로그로 정의되지 않은 전송 설정이 지정된 경우.
명령을 인터럽트 프로그램에서 실행한 경우.
이 펑션 프로그램 시 사용한 모든 입력과 출력 변수는 POU 헤더에서 선언되었습니다. 모든 프로그래밍 언어에 같은 POU 헤더를 사용합니다.
VAR
bReadStatusID5: BOOL:=FALSE;
iID10: INT:=10;
dutFPClientStatusID10: FP_CLIENT_STATUS_DUT;
END_VAR
bReadStatusID10이 TRUE로 설정되면 명령이 실행됩니다. 이더넷 유닛 10에서 HTTP 전송 값을 가져오고 값을 DUT dutFPClientStatusId10에 씁니다.
BODY
WORKSPACE
NETWORK_LIST_TYPE := NWTYPELD ;
ACTIVE_NETWORK := 0 ;
END_WORKSPACE
NET_WORK
NETWORK_TYPE := NWTYPELD ;
NETWORK_LABEL := ;
NETWORK_TITLE := ;
NETWORK_HEIGHT := 7 ;
NETWORK_BODY
B(B_CONTACT,,bReadStatusID10,5,1,7,3,);
B(B_VARIN,,iID10,6,4,8,6,);
B(B_VAROUT,,dutFPClientStatusID10,21,4,23,6,);
B(B_F,FP_HTTP_GET_STATUS!,,8,2,21,6,,?DEN?DnTransferID?AENO?CdutClientStatus);
L(1,2,5,2);
L(7,2,7,4);
L(7,4,8,4);
L(1,0,1,7);
END_NETWORK_BODY
END_NET_WORK
END_BODY
If (bReadStatusID10) then
FP_HTTP_GET_STATUS(nTransferID := iID10,
dutClientStatus => dutFPClientStatusID10);
End_if;