EtherCAT总线冗余让制造更安全更可靠更智能

在这里插入图片描述

冗余定义

什么是总线冗余功能?我们都知道,EtherCAT现场总线具有灵活的拓扑结构,设备间支持线型、星型、树型的连接方式,其中线型结构简单、传输效率高,大多数的现场应用中也是使用这种连接方式,如下图所示。

在这里插入图片描述

线型的连接方式确实简单,走线灵活,便于现场设备布局与维护。在自动化的工业生产中,设备通常在不同的环境中长时间运行,线缆的老化、安装连接不够严谨等因素导致线缆断连。假如有一天第一个伺服和第二个伺服之间的线缆断了,那么第1个伺服后面的设备是不是将无法正常运行呢?如下图所示。

在这里插入图片描述

不管是哪种接线方式,线缆断线将会影响设备的正常运转,哪怕是传统的CAN、RS485等通信的设备控制也都无法正常运转。问题还得要解决,那有没有标准的、又不需要添加太多额外的设计成本,就能解决上述的问题呢?一起来看看EtherCAT总线给出的解决方案,以及EtherCAT冗余技术的实现原理。我们先看它的连接方式,如下图所示。

在这里插入图片描述

从EtherCAT的线缆冗余接线图中可以看出,复用了最后一个从站设备的OUT端接回主站,是不是有点巧妙呢?减少了硬件成本,还能解决问题,确实受大家喜欢。再来细看它的数据流向,假设还是第一个伺服和第二个伺服之间断开了,它的工作原理如下图所示。

在这里插入图片描述

伺服1和伺服2的线缆断开后仍与从站设备连接着,但通信线路变成两条支线,设备仍然可以正常通信,设备依然还能够继续控制运行。上述就是EtherCAT冗余的解决方案,将线型结构变成了环形结构,实现了链路冗余功能

冗余功能的优势

01 节约设计成本

EtherCAT线缆冗余,使用了最后一个从站设备的OUT端口,使得冗余功能标准化。

02 增强系统可靠性和稳定性

工业自动化行业中通常要求总线上的设备不间断运转,不允许停止生产,冗余技术可以实现应用系统的可靠性和稳定性。

03 故障诊断与处理

当出现线缆断线时,变成两条之链路控制继续工作,同时EtherCAT可以自动检测到总线系统中的故障点,可大大简化系统的维护工作,提高了设备的维护性。

环境配置

▶ 正运动目前只有7系240520以后的版本支持。

环境准备

(1)准备一台VPLC711-i5-ETH5一体机;

(2)安装240520以上MotionRT版本;

(3)EtherCAT做主口,其他网口任选一个做从口;

(4)按照图示接线,EtherCAT接入第一个设备的in,最后一个设备的out接入VPLC711上的对应冗余网口,形成一个环路;

在这里插入图片描述

(5)在总线初始化过程中,SLOT_STOP总线停止后加入SLOT_SLAVE(0)=1;

(6)此时环路中任意处断开一个接口,节点运行正常;

(7)有需求可在代码中加入断线检测的指令。

RT驱动安装

第一步:安装驱动程序

1.打开“设备管理器”,选择“操作”中的“添加过时硬件”,选择“手动选择”。

在这里插入图片描述

在这里插入图片描述

2.点击“下一步”。

在这里插入图片描述

3.点击“从磁盘安装”。

在这里插入图片描述

4.点击“浏览按钮”选择驱动所在的路径,打开文件夹“driver_signed”,选择“ZMotionRt64.inf”。

在这里插入图片描述

在这里插入图片描述

5.一直点击”下一步“,直到安装完成。

在这里插入图片描述

注意:驱动更新时,要从设备管理器删除设备,一定要选择把驱动文件也删除。

第二步:安装EtherCAT协议

MotionRT711支持XPCI/XPCIE的ECAT网口,也支持电脑普通网口作为ECAT使用。

1.在Windows网络连接界面,选择需要用作冗余功能总线的网口,右击属性→安装→协议→添加。

在这里插入图片描述

在这里插入图片描述

2.选择“从磁盘安装”。

在这里插入图片描述

3.浏览驱动位置,选择”ZMotionRtPacket.inf”。

在这里插入图片描述

4.点击“确定”。

在这里插入图片描述

在属性中查看有ZMotionRT64 Packet Protocol Driver就是安装成功,勾选上就可以添加对应的网口总线协议。不接设备的网口可以在这里取消掉勾选。

在这里插入图片描述

5.添加总线协议。

在RT7启动界面,点击“AddEcat”,在EtherCAT总线列表下,将对应的冗余网口的总线增加到列表,增加成功之后,“Start”即可。如下图的标号2所示。

在这里插入图片描述

冗余代码指令分析

冗余指令使用方法如下所示。SLOT_SLAVE – EtherCAT冗余配置。(该指令在总线停止时进行设置)

在这里插入图片描述

断线检测指令解析如下

一、SLOT_INFO和NODE_INFO

打印SLOT_INFO(slot,5)可检测到线缆是否断开,0-线缆正常,1-检测到线缆断开。NODE_INFO有相同功能。

NODE_INFO(slot,node,6)也可检测到设备网口状态,按bit位操作,第0位表示IN口状态,第1位表示OUT口状态,置1为正常,置0为断开。(SLOT_INFO只能读取线路是否有断线,不能确定是哪个节点断线,NODE_INFO可以精确到某个节点断线)。如下图范例所示。

(1)表示整个环路EtherCat检测到断线。

在这里插入图片描述

(2)打印值为3,二进制表示为0011,Bit0和Bit1均为1,表示节点0,正常接线。

在这里插入图片描述

(3)打印值为2,二进制表示为0010,Bit0为0,Bit1为1,表示节点1 EtherCat In处断开。

在这里插入图片描述

二、NODE_REGREAD

NODE_REGREAD(slot,node,address=0x111,bytes,modbusindes)可以读取到设备网口状态,从而精准判断哪个设备哪个网口断开。

正常返回为90,in处断开返回89,out处断开返回86。

BIT0=第一个口状态(in口),BIT2=第二个口状态(out口)。只看bit0和bit2,置1为断开,置0为正常。如下图范例所示。

(1)打印值为89,二进制表示为01011001,Bit0为1,表示节点1 EtherCAT In口断开。

在这里插入图片描述

(2)打印值为86,二进制表示为01010110,Bit2为1,表示节点0 EtherCAT Out口断开。

在这里插入图片描述

(3)打印值为90,二进制表示为01011010,Bit0和Bit2均为0,表示节点2连接正常。

在这里插入图片描述

上位机C#检测掉线应用实例

我们通过basic脚本程序,slot_info指令循环判断是否有掉线,若掉线,则设置对应变量test的值,值为1表示掉线,为0则表示正常连接。

Basic部分程序如下图所示。(这里通过读取basic全局变量值判断,也可以通过寄存器的值判断,或者通过node_regread掉线指令检测)

在这里插入图片描述

通过上述basic程序可以看到,程序循环监控,刷新slot_info指令的返回值,赋值给test变量,此时,上位机通过监控test的值的变化来判断是否有掉线,上位机显示界面如下图所示。

1、伺服正常工作无掉线的情况。

在这里插入图片描述

2、伺服正常工作过程中,其中一个EtherCAT节点掉线的情况。

在这里插入图片描述

3、相关部分程序如下图所示。

在这里插入图片描述

如上图可知,上位机通过相关接口实时读取basic底层变量test的值,来判断相对应的EtherCAT节点是否掉线。

机器视觉EtherCAT运动控制器VPLC711

在这里插入图片描述

VPLC711是一款基于x86平台和Windows操作系统的高性能机器视觉EtherCAT运动控制器,具备强大的运算能力和灵活性。它具有出色的实时性能和多路高速硬件输入与多路高速PSO输出,能够精准控制多轴同步运动,并与外部设备实现多协议的高速通信。

VPLC711支持多种硬件接口和通信协议,方便与其他设备的连接和集成。除此之外,VPLC711还具备视觉处理功能,能够实时处理图像数据,实现视觉检测、测量和定位等应用。

在这里插入图片描述

VPLC711内置Windows运动控制实时内核MotionRT7,形成一种开放式IPC形态实时软控制器/软PLC,为用户提供灵活集成的运动控制+视觉一体化解决方案。

在这里插入图片描述

VPLC711硬件参数

1.采用x86高性能CPU,EtherCAT可支持1ms 64轴同步运行;

2.板载RS232,RS485,EtherNet5,EtherCAT,USB3.04硬件接口;

3.板载20DI,其中4个高速色标锁存,2组高速单端编码器;

4.板载20DO,其中4个高速单端脉冲轴,4组高速PWM;

5.支持DVI-D,HDMI显示,支持双网口不同IP设置。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/web/42415.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

【Qt课设】基于Qt实现的中国象棋

一、摘 要 本报告讨论了中国象棋程序设计的关键技术和方法。首先介绍了中国象棋的棋盘制作,利用Qt中的一些绘画类的函数来进行绘制。在创作中国象棋棋子方面,首先,我们先定义一下棋子类,将棋子中相同的部分进行打包,使…

idea推送到gitee 401错误

在idea上推送时遇到这样的问题,解决方法如下: 在https://的后面加上 用户名:密码 然后再提交就ok啦!

三、SpringMVC

三、SpringMVC 1、SpringMVC简介 1.1、什么是MVC MVC是一种软件架构的思想,将软件按照模型、视图、控制器来划分 M:Model,模型层,指工程中的JavaBean,作用是处理数据 JavaBean分为两类: 一类称为实体…

c语言实战-极简扫雷

C语言/c写的C语言实战项目扫雷 结构比较清晰&#xff0c;仅供参考&#xff1a; 核心是扫雷的递归算法实现 上代码: #include <stdio.h> #include <stdlib.h> #include <time.h>#define SIZE 10 #define MINES 15char board[SIZE][SIZE]; // 游戏棋盘// 初…

Oracle的主要特点是什么?应用场景有哪些?

主要特点&#xff1a; 高可靠性&#xff1a;Oracle数据库具有高度的可靠性&#xff0c;能够确保数据的安全和稳定性。 高性能&#xff1a;提供高性能的数据处理和查询能力&#xff0c;可以处理大规模的数据量。 良好的扩展性&#xff1a;支持水平和垂直的扩展&#xff0c;可以轻…

CloudWatch Logs Insights 详解

CloudWatch Logs Insights 是 AWS 提供的强大日志分析工具,允许您快速、交互式地搜索和分析日志数据。本文将详细介绍使用 CloudWatch Logs Insights 所需的权限、常用查询方法,以及一些实用的查询示例。 1. 所需权限 要使用 CloudWatch Logs Insights,用户需要具备以下 I…

代码随想录-Day55

42. 接雨水 给定 n 个非负整数表示每个宽度为 1 的柱子的高度图&#xff0c;计算按此排列的柱子&#xff0c;下雨之后能接多少雨水。 输入&#xff1a;height [0,1,0,2,1,0,1,3,2,1,2,1] 输出&#xff1a;6 解释&#xff1a;上面是由数组 [0,1,0,2,1,0,1,3,2,1,2,1] 表示的高…

CentOS7二进制安装和YUM安装mongodb,服务器无法安装5.0以上的 mongodb 数据库报错 Illegal instruction

文章目录 MongoDB 安装二进制安装YUM 安装 Tips:1、MongoDB安装问题2、MongoDB登录3、MongoDB排序时内存大小限制和创建索引4、创建用户5、Java yaml使用密码连接mongodb6、MongoDB增删改查 MongoDB 安装 二进制安装 [rootmysql5-7 mongodb-6.0.4]# cat start.sh #!/bin/bash…

js使用proxy代理监听控制事件

本文为proxy代理的实例应用&#xff0c;有关代理的内容可以参考&#xff1a; js语法---理解反射Reflect对象和代理Proxy对象 监听事件 要监听dom元素的事件&#xff0c;我们会采用回调触发的方式来执行操作&#xff0c; 而触发事件的过程很明显是一个异步操作&#xff0c;异…

Docker 使用基础(1)—镜像仓库

&#x1f3ac;慕斯主页&#xff1a;修仙—别有洞天 ♈️今日夜电波&#xff1a;秒針を噛む—ずっと真夜中でいいのに。 0:34━━━━━━️&#x1f49f;──────── 4:20 &#x1f504; ◀️ ⏸ …

Pinia在vue项目中的使用

Pinia是Vue 3官方推荐的状态管理模式&#xff0c;由尤雨溪创建并集成到了 Vue.js 中&#xff0c;它是一个轻量级、纯粹基于函数的思想实现的应用状态管理库。Pinia的设计理念类似于Redux&#xff0c;但它更简单易用&#xff0c;更适合于小型到中型的单文件组件应用。 在Vue 3项…

android13 固定U盘链接 SD卡链接 TF卡链接 硬盘链接

1.前言 有些客户使用的应用并不带有自动监听U盘 sd卡广播的代码,使用的代码是固定的地址,这样的话,就需要我们将系统的挂载目录固定了。 原始路径 /storage/3123-19FA 增加链接 /storage/upan_000 -> /storage/3123-19FA 2. 首先如果是应用本身监听的话,使用的是 /…

【Linux线程篇】探索Linux多线程:并行编程的入门指南

W...Y的主页 &#x1f60a; 代码仓库分享&#x1f495; Linux线程概念 什么是线程 在一个程序里的一个执行路线就叫做线程&#xff08;thread&#xff09;。更准确的定义是&#xff1a;线程是“一个进程内部的控制序列”一切进程至少都有一个执行线程线程在进程内部运行&am…

【国产开源可视化引擎Meta2d.js】数据

数据 Meta2d.js是由数据驱动显示的。图纸和图元支持任意数据。 内置属性 基于“约定优于配置”原则&#xff0c;Meta2d.js引擎会有一些内置属性名&#xff0c;例如id表示唯一标识、name表示图元名称、text表示文本、color表示颜色等。 内置属性有固定含义&#xff0c;影响显…

揭秘:离心风机风量背后的科学原理

在工业生产和建筑环境中&#xff0c;离心风机如同一位不倦的呼吸管家&#xff0c;默默地维持着空气流动与品质。 你是否好奇过&#xff0c;究竟是什么因素在背后操纵着这位“呼吸管家”的风量表现呢&#xff1f;今天&#xff0c;就让我们一探究竟。 举个例子&#xff1a;你在吹…

『大模型笔记』GraphRAG:利用复杂信息进行发现的新方法!

GraphRAG:利用复杂信息进行发现的新方法! 文章目录 一. GraphRAG:利用复杂信息进行发现的新方法!1. 将RAG应用于私人数据集2. 整个数据集的推理3. 创建LLM生成的知识图谱4. 结果指标5. 下一步二. 参考文献微软官方推文:https://www.microsoft.com/en-us/research/blog/gra…

LeetCode题练习与总结:反转字符串中的单词--151

一、题目描述 给你一个字符串 s &#xff0c;请你反转字符串中 单词 的顺序。 单词 是由非空格字符组成的字符串。s 中使用至少一个空格将字符串中的 单词 分隔开。 返回 单词 顺序颠倒且 单词 之间用单个空格连接的结果字符串。 注意&#xff1a;输入字符串 s中可能会存在…

速盾:好的cdn服务器

CDN&#xff08;Content Delivery Network&#xff09;是指内容分发网络&#xff0c;是一种将网站的静态内容&#xff08;如图片、音频、视频&#xff09;缓存在分布式的服务器节点上&#xff0c;通过就近访问用户的请求&#xff0c;提供快速可靠的内容传输服务的技术。 好的C…

HTML5文本标签、图像标签、超链接

一、文本样式标签 字体样式标签&#xff1a; 加粗&#xff1a;<strong>…</strong> 斜体&#xff1a; < em >…</ em> eg&#xff1a; <h3>徐志摩人物简介</h3> <p> <strong>1910</strong>年入杭州学堂<br/> &l…

微信小程序 - 本地存储 增加有效期

小程序的本地存储API提供了wx.setStorageSync和wx.setStorage来存储数据&#xff0c;注意的是&#xff0c;小程序的本地存储并没有明确的有效期设置&#xff0c;存储的数据在不超过限制的情况下&#xff0c;会一直保留。 一、小程序本地存储API 小程序的本地存储API提供了设置…