找答案的高端用户(找答案钻石及双钻级别的用户)将尽可能从此问题下的所有回
答中,为您推荐最佳答案。届时您可以根据推荐数采纳答案。
如果自提问时间起7天内您仍无法选出最佳答案,您可以选择“无满意答案”关闭此问题。
问题
取消精华
首页精华问答
取消推荐
高端用户推荐
申请置评
已申请置评
修改
修改标签
添加标签
官方认证
取消官方认证
修改标签
添加标签
转移分类
删除
{{itemCategory}}
收藏({{answerDetail.Q_FavoriteCounts}})
手机扫码追踪该问题,
觉得实用,立即去分享!
点击复制链接
专家建议
取消最佳答案
修改
一、原因分析
1、有5台PLC和2台组态王,且每台PLC可能同时被多台HMI或上位机访问,或者PLC内部程序调用了大量通信指令(如PUT/GET、S7通信),很容易达到连接数上限。Ping通说明物理链路和IP层正常,但应用层(S7通信协议)无法建立会话,因为PLC没有空闲的连接资源块。
2、如果组态王或PLC程序在异常情况下(如网络波动、程序崩溃、非正常断电)没有正确关闭连接,PLC可能会保留这些“僵尸连接”一段时间(取决于超时设置)。当这些僵尸连接占用资源且未及时释放时,会导致可用连接数减少,最终导致新连接无法建立。
3、如果PLC程序中使用了系统函数(如SetConnectionMode、ChangeConnection)来动态切换或断开连接,若逻辑处理不当,可能导致连接状态异常,无法自动恢复 。
二、解决措施
1、合理分配连接类型:确保只启用了必要的连接类型。例如,如果不需要PUT/GET通信,可以取消勾选“允许从远程伙伴使用PUT/GET通信访问”,以节省连接资源。
2、优化HMI/上位机组态:如果可能,将2台组态王改为1台主站,通过S7通信或OPC UA与PLC通信,减少直接连接PLC的HMI数量。或者,将部分非实时数据通过中间服务器(如OPC Server)进行采集,减少PLC的直接连接压力。在组态王中,设置合理的连接超时时间和重试次数。避免在连接失败时频繁尝试建立新连接,导致PLC连接资源被快速占满。
3、优化PLC程序逻辑:在PLC程序中,使用SetConnectionMode或ChangeConnection等系统函数,在检测到连接异常或不需要通信时,主动断开连接,释放资源。如果使用了SwitchConnection功能,确保切换逻辑正确,避免因频繁切换导致连接资源混乱。
4、网络与系统优化:确保所有设备(PLC、组态王、交换机)的系统时间同步。证书验证失败(如证书过期或时间不同步)也可能导致连接被拒绝。也可以考虑在PLC程序中设置定时重启通信模块或定时重启CPU(需谨慎,避免影响生产),以释放可能累积的僵尸连接。
等您来回答
换一换
{{item.CoinValue}}西币
{{item.VisitNum}}人想问
本版相关问题
换一换
专家置评
首次回答问题,获得
双倍西币积分!
立即成为技术知识分享的一员!
欢迎您访问支持中心!
丰富的视频,全方位的文档,大量的网友交流精华……
为了更好的完善这些内容,我们诚邀您在浏览结束后,花20秒左右的时间,完成一个用户在线调查!
感谢您的支持!

西门子商城