FP_FTP_TRANSFER_REQUEST

Richiesta di trasferimento FTP

Questa istruzione FP invia una richiesta al client FTP specificato in nTransferID per avviare il trasferimento.

Parametri

Ingresso

nTransferID (WORD, INT, UINT)

Impostare l'ID del client FTP

Valori: 0–15

Uscita

bError (BOOL)

Passa a TRUE nelle seguenti condizioni:

  • se un timeout della connessione viene superato

  • se un indirizzo IP non è valido

Quando si verifica un errore, controllare la variabile di sistema sys_iEthernetConnectionErrorCode per verificare il numero di codice di errore.

Note

  • Questa istruzione non è disponibile nei programmi di interrupt.

  • Prima di eseguire l'istruzione, è necessario specificare le impostazioni di trasferimento utilizzando FP_FTP_SET_MODE o la finestra di dialogo di impostazione del client FTP.

  • Prima di eseguire l'istruzione, controllare che la variabile di sistema sys_bIsEthernetFTPClientReady sia TRUE. Se è FALSE al momento di eseguire l'istruzione, si verifica un errore.

  • Prima di eseguire l'istruzione, assicurarsi che sys_bIsEthernetInitializing sia FALSE. sys_bIsEthernetInitializing passa a TRUE quando l'istruzione viene eseguita. Se si esegue l'istruzione mentresys_bIsEthernetInitializing è TRUE, si verifica un errore.

  • L'istruzione può essere eseguita solo se sys_bIsEthernetCableNotConnected è FALSE.

  • L'istruzione può essere eseguita solo se il flag di richiesta di trasferimento per l'impostazione di trasferimento specificata è "FALSE: Nessuna richiesta di trasferimento". Quando la richiesta di trasferimento è "TRUE: Richiesta di trasferimento", si verifica un errore di funzionamento.

  • Quando questa istruzione è stata eseguita correttamente, le variabili di sistema sys_bIsCarry e sys_iEthernetConnectionErrorCode vengono resettate.

  • Quando si verifica un errore, controllare la variabile di sistema sys_iEthernetConnectionErrorCode per verificare il numero di codice di errore.

Flag di errore

sys_bIsOperationErrorHold (passa a TRUE e resta TRUE)
  • se l'area specificata utilizzando il registro indice eccede il limite.

  • se un valore specificato per un parametro è fuori dall'intervallo utilizzabile.

  • se l'istruzione viene eseguita in un programma di interrupt

  • se la variabile di sistema sys_bIsEthernetFTPClientReady è FALSE quando l'istruzione viene eseguita.

  • Se il flag di richiesta di trasferimento per l'impostazione di trasferimento specificata è "TRUE: Trasferimento richiesto" quando l'istruzione viene eseguita.

  • se viene specificata un'impostazione di trasferimento che non è stata configurata conFP_FTP_SET_MODE o nella finestra di dialogo di impostazione del client FTP.

sys_bIsOperationErrorNonHold (passa a TRUE per una scansione)
  • se l'area specificata utilizzando il registro indice eccede il limite.

  • se un valore specificato per un parametro è fuori dall'intervallo utilizzabile.

  • se l'istruzione viene eseguita in un programma di interrupt

  • se la variabile di sistema sys_bIsEthernetFTPClientReady è FALSE quando l'istruzione viene eseguita.

  • Se il flag di richiesta di trasferimento per l'impostazione di trasferimento specificata è "TRUE: Trasferimento richiesto" quando l'istruzione viene eseguita.

  • se viene specificata un'impostazione di trasferimento che non è stata configurata conFP_FTP_SET_MODE o nella finestra di dialogo di impostazione del client FTP.

sys_bIsCarry (passa a TRUE per una scansione)
  • se l'istruzione viene eseguita mentre il cavo Ethernet è disconnesso. sys_iEthernetConnectionErrorCode viene impostato su "10: Cavo Ethernet disconnesso".

  • se l'istruzione viene eseguita durante l'inizializzazione di Ethernet, sys_iEthernetConnectionErrorCode viene impostato su "11: Ethernet viene inizializzato".

Esempio

Intestazione del POU

Tutte le variabili di ingresso e uscita utilizzate per programmare questa funzione sono state dichiarate nell'intestazione del POU. La stessa intestazione del POU è utilizzata per tutti i linguaggi di programmazione.

	VAR
		iID10: INT:=10;
		bTransferRequestError: BOOL:=FALSE;
		bTransferRequest: BOOL:=FALSE;
	END_VAR
	VAR
		iID10: INT:=10;
		bTransferRequestError: BOOL:=FALSE;
		bTransferRequest: BOOL:=FALSE;
	END_VAR

Corpo del POU

Se bTransferRequest passa da FALSE a TRUE e la variabile di sistema sys_bIsEthernetFTPClientReady è TRUE, la funzione viene eseguita. Il trasferimento FTP è necessario per l'unità Ethernet 10.

Corpo LD

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_CONTACT,,bTransferRequest,5,1,7,3,R);
B(B_VAROUT,,bTransferRequestError,40,2,42,4,);
B(B_VARIN,,iID10,23,2,25,4,);
B(B_F,FP_FTP_TRANSFER_REQUEST!,,25,0,40,4,,?DEN?DnID?AENO?CbError);
B(B_CONTACT,,sys_bIsEthernetFTPClientReady,16,1,18,3,);
L(1,2,5,2);
L(7,2,16,2);
L(18,2,25,2);
L(1,0,1,4);
        END_NETWORK_BODY
    END_NET_WORK
END_BODY

Corpo ST

If DF(bTransferRequest) AND sys_bIsEthernetFTPClientReady then
    FP_FTP_TRANSFER_REQUEST(nTransferID := iID10,
                            bError => bTransferRequestError);
End_if;

L'ultima revisione: 2024-03-07Feedback su questa paginaPanasonic hotline