李成笔记网

专注域名、站长SEO知识分享与实战技巧

实操指南|Smart Control 基于联诚LicOS PLC进行Ping命令的使用方法

在工业自动化领域,PLC(可编程逻辑控制器)作为核心设备,其网络通信的稳定性和可靠性至关重要。本文将详细介绍如何在基于LicOS PLC中使用Smart Control软件进行Ping命令操作,以检测PLC与其他网络设备之间的通信状态。


什么是Ping命令?

Ping命令是一种广泛应用于电脑网络的工具,存在于Windows、Unix和Linux系统中。它工作在TCP/IP网络体系结构的应用层,通过向特定目的主机发送ICMP(Internet Control Message Protocol)Echo请求报文,测试目标主机是否可达及其状态。Ping命令能够帮助用户分析和判定网络故障,是网络调试中不可或缺的工具。

图 命令使用


LicOS PLC 进行Ping命令使用

Smart Control作为LicOS PLC的编程调试软件,支持在PLC调试阶段使用Ping命令,以检测PLC与其他网络站点的数据可达性。这一功能在网络调试和故障排查中尤为重要。


使用场景

在实际项目中,PLC通常作为网络中介连接不同网段的设备。例如,PLC通过LAN1与上层网络及上位管理平台通信,通过LAN2与前端执行设备通过现场总线(如ModBus TCP、Profinet、EtherNet等)通信。当两个网络环境处于不同网段时,PLC需要确保与各设备的网络连通性。此时,Ping命令的使用显得尤为关键。

图 适用的网络场景


以下为使用方法:


一、库文件添加

SysSockPing功能块属于SysSocket功能库。操作流程如下:

双击库管理器—添加库—显示高级库—搜索SysSocket—确定

图 添加库

图 搜索SysSocker

图 库添加完成


二、解读函数功能块

01

函数块

SysSockPing函数功能块如下图所示:

图 SysSockPing函数块

02

函数块引脚定义

SysSockPing函数功能块引脚定义如下图所示:

图 函数块引脚定义


SysSockPing: 函数返回数据,显示与其他通信伙伴的通讯建立结果。

szIPAddress:以字符串形式表示的通信伙伴的IP地址。

ulTimeout:等待答复的超时时间,以毫秒为单位。

pulReplyTime:指针以获取ping请求的平均响应时间,以毫秒为单位。


功能分析:

  • szIPAddress:输入通信伙伴的目标IP地址,格式为字符串,例如“192.168.20.80”。
  • ulTimeout:设置等待答复的超时时间(单位:毫秒)。该值不能为0,且应根据实际网络质量合理设置,避免过小导致误判。
  • pulReplyTime:通过指针反馈Ping请求的平均响应时间(单位:毫秒)。如果其值等于ulTimeout,说明通信已断开。
  • SysSockPing返回值:返回0表示通信正常,其他值表示通信失败。


三、函数块的使用例程

01

LD

1、定义相关变量。

PROGRAM PLC_PRG

VAR

str_szIPAddress : STRING ;

udi_ulTimeout : TIME;

udi_pulReplyTime : UDINT;

bTrigger : BOOL;//执行

bResult :UDINT ;//结果


END_VAR

如下图所示:

图 LD例程变量定义


2、函数调用

如下图所示:

图 例程函数调用

例程测试的PLC1的LAN1 IP地址为192.168.20.80/24、LAN2 IP地址为192.168.21.80/24,LAN3 IP地址为192.168.22.80/24,与其建立通讯的PLC2 IP地址为192.168.21.20/24,PLC2与PLC1的LAN2连接,调试PC IP地址为192.168.20.254/24,PC与PLC1的LAN1连接。

程序测试如下图所示。

图 例程通讯成功


可见设定的ulTimeout为10ms,函数执行返回结果为0,平均响应时间pulReplyTime为0ms,所以表明其与通信伙伴建立了通信并且通信网络质量优。

而下图所示则表明通讯失败:

图 例程通讯失败

可见设定的ulTimeout为10ms,函数执行返回结果为5,平均响应时间pulReplyTime为10ms,所以表明其与通信伙伴建立通信失败。


02

ST

1.定义相关变量。

PROGRAM PLC_PRG

VAR

str_szIPAddress : STRING ;

udi_ulTimeout : TIME;

udi_pulReplyTime : UDINT;

bTrigger : BOOL;//执行

bResult : UDINT ;//结果


END_VAR

如下图所示:

图 ST例程变量定义


2、函数调用

如下图所示:

图 例程函数调用

3.在线测试

例程测试的PLC1的LAN1 IP地址为192.168.20.80/24、LAN2 IP地址为192.168.21.80/24,LAN3 IP地址为192.168.22.80/24,与其建立通讯的PLC2 IP地址为192.168.21.20/24,PLC2与PLC1的LAN2连接,调试PC IP地址为192.168.20.254/24,PC与PLC1的LAN1连接。

程序测试下图所示:

图 例程通讯成功


可见设定的ulTimeout为10ms,函数执行返回结果为0,平均响应时间pulReplyTime为0ms,所以表明其与通信伙伴建立了通信并且通信网络质量优。

而下图所示则表明通讯失败:

图 历程通讯失败


可见设定的ulTimeout为10ms,函数执行返回结果为5,平均响应时间pulReplyTime为10ms,所以表明其与通信伙伴建立通信失败。


通过Smart Control软件在LicOS PLC中使用Ping命令,可以有效检测PLC与其他网络设备之间的通信状态。本文详细介绍了库文件的添加、函数功能块的使用方法以及具体的例程操作。在实际应用中,工程师可以根据本文的指导,快速诊断和解决PLC网络通信问题,提高工业自动化系统的稳定性和可靠性。

发表评论:

控制面板
您好,欢迎到访网站!
  查看权限
网站分类
最新留言