이더넷 연결 닫기
이 FP 명령은 nPort에서 지정한 포트에서 열린 이더넷 연결을 닫습니다. 아래의 프로젝트 네비게이터에서도 적절한 파라미터를 설정해야 합니다.
입력
CPU의 이더넷 포트(FP7 E 유형):
SYS_ETHERNET_USER_CONNECTION_1–SYS_ETHERNET_USER_CONNECTION_216
출력
연결 타임아웃 시간을 초과한 경우
IP 어드레스가 유효하지 않을 경우
에러가 발생하면 시스템 변수 sys_iEthernetConnectionErrorCode에서 에러 코드 번호를 확인하십시오.
이 펑션 프로그램 시 사용한 모든 입력과 출력 변수는 POU 헤더에서 선언되었습니다. 모든 프로그래밍 언어에 같은 POU 헤더를 사용합니다.
VAR
bSetConnection: BOOL:=FALSE;
bOpenConnection: BOOL:=FALSE;
bCloseConnection: BOOL:=FALSE;
END_VAR
bCloseConnection가 FALSE에서 TRUE로 변경되고 시스템 변수 sys_bIsEthernetIPAddressAssigned가 TRUE이면 명령이 실행됩니다.
BODY
WORKSPACE
NETWORK_LIST_TYPE := NWTYPELD ;
ACTIVE_NETWORK := 0 ;
END_WORKSPACE
NET_WORK
NETWORK_TYPE := NWTYPELD ;
NETWORK_LABEL := ;
NETWORK_TITLE := ;
NETWORK_HEIGHT := 4 ;
NETWORK_BODY
B(B_VARIN,,SYS_ETHERNET_USER_CONNECTION_1,30,2,32,4,);
B(B_CONTACT,,bCloseConnection,5,1,7,3,R);
B(B_CONTACT,,sys_bIsEthernetIPAddressAssigned,17,1,19,3,N);
B(B_VAROUT,,bError,49,2,51,4,);
B(B_F,FP_ETHERNET_CONNECTION_CLOSE!,,32,0,49,4,,?DEN?DnPort?AENO?CbError);
L(1,2,5,2);
L(19,2,32,2);
L(7,2,17,2);
L(1,0,1,4);
END_NETWORK_BODY
END_NET_WORK
END_BODY
If DF(bCloseConnection) AND sys_bIsEthernetIPAddressAssigned then
FP_ETHERNET_CONNECTION_CLOSE(nPort := SYS_ETHERNET_USER_CONNECTION_1);
END_IF;