通过 TCP/UDP 接口,可以在 SPS 和远程服务器之间交换原始数据。同时也可以启动一个服务器来监听数据。
信息:该接口会自动与分配的 SPS 中最慢的周期同步。系统会缓冲电报,因此不会丢失任何电报。
在监视器中使用以下颜色。
| 颜色 | 描述 |
|---|---|
| 白色 | 没有发生错误。 |
| 橙色 | 已达到超时时间。 |
| 绿色 | 连接成功。 |
| 红色 | 无法建立连接或发送时达到关键超时时间。可能不会检测到 UDP 通信中的错误。 |
可以通过 TCP/UDP 接口发送和接收广播和组播。为此,在网关配置中选择相应的操作模式。然后,各种选项(例如 TCP)将不再可用。此外,选择出站接口是强制性的。
要发送电报,还必须根据要求在字段旁边输入 IP 地址。如果没有这样做,则会通过单播发送。
| 模式 | 描述 |
|---|---|
| 单播 | 允许直接通信。 |
| 有限广播 | 仅允许在本地网络中进行通信。(与 IP 无关) |
| 定向广播 | 允许与广播子网进行通信。例如,如果子网包含 24 位或设置为 255.255.255.0,则为 10.0.0.255。 |
| 组播 | 允许通过组播进行通信。使用 IGMP Snooping。 |
在换行符配置中,可以设置传输结束的条件。检测到的结束将一起发送。
如果未检测到结束,接口会等待超时时间或连接结束,然后将结果发送到 SPS。因此,建议检查所有收到的数据包。接收 UDP 电报没有超时时间。
可以使用以下换行符定义该方法:
HTTP
此方法特殊,因为它允许相应地对标头中的 Content-Length 作出反应。
要在达到一定长度时结束接收,可以在换行符配置中使用以下字符串:
LEN === ###
其中 ### 对应于字符数。写法必须完全符合此要求,包括空格。
注意:使用 LEN === 1 会逐个接收每个字符,可能导致服务器负载增加。
可以定义各种行结束。通常使用 \n 或 \r。每一行都定义了不同的行结束检测方式。
在配置中,以下字符会转义:
\\ \r \n \0
通过 TCP 进行的出站通信会在每次请求后结束连接。
如果 sendrecv 的请求没有收到任何响应,则发送接口会被阻塞,直到达到超时时间。在监视器中会显示一个错误。
| 变量 | 描述 |
|---|---|
| 将数据发送到服务器。 | |
| 将所有数据发送到服务器,并跳过任何电报。 | |
| 与 send 类似,但会等待响应。 | |
| 与 !send 类似,但会等待响应。 | |
| 来自 |
|
| 从本地服务器收到的数据。 | |
| 如果传输时发生错误,则值为真。此错误可能仅在达到超时时间后才会出现在 sendrecv 中。 |
提示:请注意接口的安全性。数据绝不能直接通过互联网传输。这里缺少 SSL 或 TLS 的身份验证和加密功能。