Presentation of the Library

 

General Information

Library Overview

The FtpRemoteFileHandling library provides the following FTP client functionalities for remote file handling:

oReading files

oWriting files

oDeleting files

oListing content of remote directories

oAdding directories

oRemoving directories

G-SE-0053121.2.gif-high.gif

 

1   Controller as FTP client

2   Upload file (Store command)

3   FTP server (on PC or controller)

4   Download file (Retrieve command)

Characteristics of the Library

The following table indicates the characteristics of the library:

Characteristic

Value

Library title

FtpRemoteFileHandling

Company

Schneider Electric

Category

Communication

Component

Internet protocol suite

Default namespace

SE_FTP

Language model attribute

Qualified-access-only

Forward compatible library

Yes (FCL)

NOTE: For this library, qualified-access-only is set. This means that the POUs, data structures, enumerations, and constants have to be accessed using the namespace of the library. The default namespace of the library is SE_FTP.

Example Project

In conjunction with the library, the example project FTPRemoteFileHandlingExample.project is provided. The example project shows how to implement the components from the FtpRemoteFile­Handling library.

Step

Action

Comment

1

In the EcoStruxure Machine Expert Logic Builder, execute the command New Project.

2

In the New Project dialog box, select From Example from the Project type list.

3

On the right-hand side of the New Project dialog box, select the controller (1) from the Controller list.

Result: Available examples are listed in the Matching Examples text box.

4

Select your example from the Matching Examples list.

5

Enter a name for the new project, and select the file location.

6

Click the OK button.

Result: A new project is created based on the selected example.

General Considerations

Consider the following limitations for FTP data transfer:

oOnly ASCII symbols are supported for file and directory names to be exchanged with the FTP server.

oOnly IPv4 (Internet Protocol version 4) is supported.

oOnly passive mode FTP is supported.

oOnly one FTP connection is allowed at a time.

oSince the response time of the FTP server cannot be controlled, execute the function blocks in a low-priority, cyclic task. Adapt the watchdog function for this task to allow sufficient time for the connection. Alternatively, execute the function blocks in a Freewheeling task. For this type of task, no cycle time is defined.

The library described in this document internally uses the TcpUdpCommunication library.

The TcpUdpCommunication (Schneider Electric) and the CAA Net Base Services library (CAA Technical Workgroup) use the same system resources on the controller. The simultaneous use of both libraries in the same application may lead to disturbances during the operation of the controller.

Warning_Color.gifWARNING

UNINTENDED EQUIPMENT OPERATION

Do not use the library TcpUdpCommunication (Schneider Electric) together with the library CAA Net Base Services (CAA Technical Workgroup) simultaneously in the same application.

Failure to follow these instructions can result in death, serious injury, or equipment damage.

Considerations Concerning Cyber Security

The FtpRemoteFileHandling library functions do not support secure connections using TLS (Transport Layer Security) or SSL (Secure Socket Layer). Therefore, communication must only be performed inside your industrial network, isolated from other networks inside your company, and protected from the Internet.

NOTE: Schneider Electric adheres to industry best practices in the development and implemen­tation of control systems. This includes a "Defense-in-Depth" approach to secure an Industrial Control System. This approach places the controllers behind one or more firewalls to restrict access to authorized personnel and protocols only.

Warning_Color.gifWARNING

UNAUTHENTICATED ACCESS AND SUBSEQUENT UNAUTHORIZED MACHINE OPERATION

oEvaluate whether your environment or your machines are connected to your critical infrastructure and, if so, take appropriate steps in terms of prevention, based on Defense-in-Depth, before connecting the automation system to any network.

oLimit the number of devices connected to a network to the minimum necessary.

oIsolate your industrial network from other networks inside your company.

oProtect any network against unintended access by using firewalls, VPN, or other, proven security measures.

oMonitor activities within your systems.

oPrevent subject devices from direct access or direct link by unauthorized parties or unauthen­ticated actions.

oPrepare a recovery plan including backup of your system and process information.

Failure to follow these instructions can result in death, serious injury, or equipment damage.

Overview of the POUs

Function block

Use

FB_FTPClient

Implements an FTP client, which connects to an FTP server for operations on files and directories.

Overview of the Structures in the Module-Specific Interface

Structure

Use

ST_Credentials

Contains the user-specific information for connecting to an external FTP server.

ST_Content

Contains the user information related to the selected directory.

ST_Element

Substructure of ST_Content that contains element-specific information.

Overview of the Enumerations

Enumeration

Use

ET_FtpCommand

Defines the commands which can be executed by the function block FB_FTPClient via i_etCommand.

ET_Result

Contains the possible values that indicate the result of operations executed by the function block.