The library provides the core functionality for implementing socket-based network communication protocols using TCP (Transmission Control Protocol) client and server, or UDP (User Datagram Protocol) including broadcast and multicast if supported by the platform. Only communication based on IPv4 via the Ethernet-ports of the controller is supported.
You have to implement the application protocol used on the remote site (which can be hardware such as barcode scanners, vision cameras, industrial robots, or computer systems running software like database servers).
The user interface of the library is derived from BSD-style socket implementations comparable to the ones used when programming communication applications under UNIX or Microsoft Windows based systems. It uses these main functions:
oOpen / Bind / Connect
to initialize the communication
oAccept
to accept incoming TCP-connections when running a TCP server
oClose / Disconnect / Shutdown
to end the communication
oSend / SendTo
to transmit data to remote systems
oReceive / ReceiveFrom
to process data sent by remote systems
oSocketOptions
to tune the low-level behavior of the communication
In this library, an object-oriented approach has been chosen to allow a clean design of the application program. Thus the functions presented above are available as methods and properties of the respective function blocks explained in detail in chapter Program Organization Units (POU).
Characteristics of the Library
The following table indicates the characteristics of the library:
Characteristic |
Value |
---|---|
Library title |
TcpUdpCommunication |
Company |
Schneider Electric |
Category |
Communication |
Component |
Core Libraries |
Default namespace |
TCPUDP |
Language model attribute |
|
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 TCPUDP.
In conjunction with the library the example project TCP & UDP Communication Example is provided. The example project shows how to implement a data exchange between two controllers over the Ethernet network with using the TcpUdpCommunication library.
The example project is installed on your PC along with the programming software. To open the project example, proceed as follows:
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. |
(1) PacDrive LMC Pro/Pro2, TM251MESE, TM262M25MESS8T.
Only IPv4 IP addresses are supported for the communication functions provided with this 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.
|
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. |
NOTE: Schneider Electric adheres to industry best practices in the development and implementation 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.
|
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 unauthenticated 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. |