HTTP 전송을 사용하여 모든 이더넷 유닛의 상태 얻기
이 FP 명령은 모든 이더넷 유닛 nTransferID0nTransferID15에서 정보를 가져오고 값을 DUTFP_CLIENT_STATUS_ALL_DUT에 씁니다.
출력
모든 이더넷 유닛의 이더넷 상태 값 저장
인터럽트 프로그램에서는 이 명령을 사용할 수 없습니다.
명령을 실행하기 전에 FP_HTTP_SET_MODE 또는 HTTP 클라이언트의 설정 다이얼로그를 사용하여 전송 설정을 지정해야 합니다.
에러가 발생하면 시스템 변수 sys_iEthernetConnectionErrorCode에서 에러 코드 번호를 확인하십시오.
FP_HTTP_SET_MODE 또는 HTTP 클라이언트의 설정 다이얼로그로 정의되지 않은 전송 설정이 지정된 경우.
명령을 인터럽트 프로그램에서 실행한 경우.
FP_HTTP_SET_MODE 또는 HTTP 클라이언트의 설정 다이얼로그로 정의되지 않은 전송 설정이 지정된 경우.
명령을 인터럽트 프로그램에서 실행한 경우.
이 펑션 프로그램 시 사용한 모든 입력과 출력 변수는 POU 헤더에서 선언되었습니다. 모든 프로그래밍 언어에 같은 POU 헤더를 사용합니다.
VAR
dutFPClientStatusAll: FP_CLIENT_STATUS_ALL_DUT;
bGetStatusAll: BOOL:=FALSE;
END_VAR
bGetStatusAll이 TRUE로 설정되면 명령이 실행됩니다. 모든 이더넷 유닛의 상태 값들을 DUT dutFPClientStatusAll에 씁니다.
BODY
WORKSPACE
NETWORK_LIST_TYPE := NWTYPELD ;
ACTIVE_NETWORK := 0 ;
END_WORKSPACE
NET_WORK
NETWORK_TYPE := NWTYPELD ;
NETWORK_LABEL := ;
NETWORK_TITLE := ;
NETWORK_HEIGHT := 5 ;
NETWORK_BODY
B(B_COMMENT,,Get status of all FTP Transfer numbers: e.g. ID0..ID15,3,1,26,4,);
L(1,0,1,5);
END_NETWORK_BODY
END_NET_WORK
NET_WORK
NETWORK_TYPE := NWTYPELD ;
NETWORK_LABEL := ;
NETWORK_TITLE := ;
NETWORK_HEIGHT := 5 ;
NETWORK_BODY
B(B_VAROUT,,dutFPClientStatusAll,26,3,28,5,);
B(B_CONTACT,,bGetStatusAll,5,2,7,4,);
B(B_F,FP_HTTP_GET_STATUS_ALL!,,12,1,26,5,,?DEN?AENO?CdutFPClientStatusAll);
L(1,3,5,3);
L(7,3,12,3);
L(1,0,1,5);
END_NETWORK_BODY
END_NET_WORK
END_BODY
If (bGetStatusAll) then
FP_HTTP_GET_STATUS_ALL(dutClientStatusAll => dutFPClientStatusAll);
End_if;