EtherCAT笔记(三) —— 主站与从站的硬件组成

1. EtherCAT 主站的硬件组成

EtherCAT主站使用标准以太网控制器,也即EtherCAT主站可以使用以太网控制器的任何设备。当我们有一台带网口的笔记本、工控机,甚至是树莓派也可以作为EtherCAT主站。

EtherCAT协议是对Ethernet协议在实时控制等方面的优化,因此对于一个能够支持Ethernet通信的设备,就可以支持EtherCAT协议的实现。

EtherCAT主站的组成:

 其中

以太网控制器完成以太网数据链路的介质访问控制功能(MAC, Media Access Control Twisted Pair)。

PHY芯片主要完成数据的编码、译码和收发的功能。

事实上,上述的结构是一个网卡的组成结构。EtherCAT主站还需要包含其软件部分,EtherCAT主站通常是纯软件实现的,不需要任何专用的硬件。如果在嵌入式主站中,通信控制器通常被嵌入到微控制器中,链接是在Zynq上实现EtherCAT主站的一些介绍。

2. EtherCAT从站硬件组成

EtherCAT从站一方面实现与主站的通信,另一方面完成控制或信号处理功能(这取决于从站功能定义)。因此需要对两部分进行区分。

2.1 从站控制器

从站控制器负责与EtherCAT从站控制器(ESC)做数据交换并完成控制和信号监测任务。从站控制器更像是一个物理模块的MCU,一方面通过 ESC 读取主站发送的控制参数,或将自身的数据发放到ESC上,然后通过主站读取。另一方面控制着硬件模块的执行动作或采集数据。

2.2 ESC:EtherCAT从站控制器

为确保通信效率和实时性,ESC完全负责与主站的通信过程。EtherCAT报文经过从站时,ESC从报文中提取发送给自己的输出命令数据,并将其存储到内部存储区。ESC同时会将需要写给主站的数据写入相应的子报文中。数据的提取和插入都是由数据链路层硬件完成的。

ESC使用两种物理层接口模式:MII 和 EBUS。 MII时标准的以太网物理层接口。而EBUS是德国倍福公司开发的基于LVDS标准的数据传输协议,比如倍福IO模块的耦合,绝大多数使用这种接口。

ESC芯片通常使用ET1100,也有其他型号的从站控制芯片,当使用MII方式时,必须要使用PHY芯片和隔离变压器等标准以太网物理层器件。

3. ESC专用芯片与FPGA IP-Core

ESC作为EtherCAT从站数据链路层协议的专用集成芯片,是开发从站不可获取的元件。ESC的硬件部分可以使用ASIC芯片或IP-Core来实现。

ASIC: 专用集成电路

IP-Core:FPGA的IP核,用于实现某些功能,这里专门实现ESC相关功能

 3.1 ESC ASIC芯片主要特性(ET1100为例)

端口:4个端口,EBUS/MII

FMMU:Fieldbus Memory Management Unit,现场总线内存管理单元,8个

存储同步管理单元:3个

过程数据RAM:8KB

分布时钟:64位

物理设备接口(PDI):32bit数字量IO, 8/16bit 异步/同步微处理器接口、串行外设接口

EEPROM:16KB

封装:BGA128, 10mm * 10mm 

3.2 以IP-Core方式实现ESC

Altra公司的ET18xx IP core可用于ESC。

Altra公司已于2015年被Intel收购,因此尚不确定该IP-Core是否还能使用

需要注意的是:IP-Core可以用于实现ESC功能。 

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

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

相关文章

android关于源码编译简单的apk处理

文章目录 简述文件的添加 简述 创建AOSP源码可编译一个简单apk的过程,代码子目录结构图如下所示 文件的添加 1.com.custom.test目录下创建TestActivity.java文件 用于简单的界面显示类 package com.custom.test;import android.app.Activity; import android.o…

java springboot 正合Knife4j框架

要将 Knife4j(之前称为 SwaggerBootstrapUi)集成到 Spring Boot 项目中。 可以按照以下步骤操作: 1、添加依赖 在 pom.xml 文件中添加 Knife4j 的相关依赖。确保 Spring Boot 版本与 Knife4j 支持的版本相匹配。 这里以 Maven 为例…

高考填报志愿不容易,压线考生怎么救?

每年的高考季 就是高考生们水深火热的一大月份,很多考生都会纠结要报考哪些学校,哪些专业好,并非每个学生从小就有明确的目标,很多人到6月份才深思这个问题,此时难免手慌脚乱,更别说一些考生的分数处于一本…

创建第一个Springboot项目(环境准备、环境存在的问题、启动时存在的问题、启动的方式)

一、环境准备 专业版创建springboot,直接有一个选项可以选择 社区版,需要下载一个spring的插件 不要直接点 install 因为这个插件是付费的,直接点安装只有30天使用期限 在里面找免费版本的下载 然后安装 安装完成后,这个插件名会变…

利用ChatGPT辅助撰写课题申报书中的研究框架与内容设计全攻略指南

欢迎关注EssayBot,为大家带来最酷最有效的智能AI学术科研写作攻略。关于使用ChatGPT等AI学术科研的相关问题可以和作者七哥沟通:yida985 撰写课题申报书是启动科研项目的第一个步骤,而研究框架与内容设计又是这一过程中的关键要素&#xff0…

基于YOLOv5的PCB板缺陷检测系统的设计与实现(PyQT页面+YOLOv5模型+数据集)

简介 随着电子设备的广泛应用,PCB(印刷电路板)作为其核心部件,其质量和可靠性至关重要。然而,PCB生产过程中常常会出现各种缺陷,如鼠咬伤、开路、短路、杂散、伪铜等。这些缺陷可能导致设备故障,甚至引发严重的安全问题。为了提高PCB检测的效率和准确性,我们基于YOLOv…

DBEAVER 学习之 批量执行 SQL

目录 1. 现象2. 解决办法 1. 现象 使用 DBEAVER 时,SQL 控制台 执行按钮 只能单条执行 SQL,不可以选中批量执行。 2. 解决办法 系统操作WIN 系统ALT XMAC 系统OPTION X

Go 三色标记法:一种高效的垃圾回收策略

💝💝💝欢迎莅临我的博客,很高兴能够在这里和您见面!希望您在这里可以感受到一份轻松愉快的氛围,不仅可以获得有趣的内容和知识,也可以畅所欲言、分享您的想法和见解。 推荐:「stormsha的主页」…

C++基础知识——引用

P. S.:以下代码均在VS2019环境下测试,不代表所有编译器均可通过。 P. S.:测试代码均未展示头文件stdio.h的声明,使用时请自行添加。 博主主页:Yan. yan.                        …

速盾:使用 CDN 可以隐藏 IP 吗?该怎样应对防御?

在网络技术领域,CDN(内容分发网络)是一项被广泛应用的技术。那么,使用 CDN 是否可以隐藏 IP 地址呢? 从一定程度上来说,CDN 可以在某种意义上起到对原始服务器 IP 地址的隐藏作用。CDN 会在其网络中缓存内容…

让你的Python代码更简洁:一篇文章带你了解Python列表推导式

文章目录 📖 介绍 📖🏡 演示环境 🏡📒 列表推导式 📒📝 语法📝 条件筛选📝 多重循环📝 列表推导式的优点📝 使用场景📝 示例代码🎯 示例1🎯 示例2⚓️ 相关链接 ⚓️📖 介绍 📖 在Python编程中,列表推导式是一种强大且高效的语法,它允许你用…

微信小程序页面的交互

微信小程序页面交互设计详解 一、引言 微信小程序作为轻量级的应用程序,其页面交互设计对于提升用户体验至关重要。本文将深入解析微信小程序页面交互设计的基本原理,以及如何通过API和组件实现丰富的交互效果。 二、页面结构与基础组件 页面结构&…

【Linux】linux系统命令

文件和目录操作: ls: 列出目录中的文件和子目录。cd: 切换当前工作目录。pwd: 显示当前工作目录的路径。mkdir: 创建新目录。rm: 删除文件或目录。cp: 复制文件或目录。mv: 移动文件或目录,也可以用于重命名。文本操作: cat: 连接文件并打印到…

Java程序之素数问题

题目: 判断101-200之间有多少个素数,并输出所有素数。 程序分析: 判断素数的方法:用一个数分别去除2到sqrt(这个数),如果能被整除,则表明此数不是素数,反之是素数。素数被利用在密码学上&#…

【408考点之数据结构】线性表的链式表示实现代码

线性表的链式表示 在数据结构中,线性表是一种常见的结构,用于存储和管理一组有序的元素。线性表的链式表示是一种灵活且高效的存储方式,特别适用于频繁插入和删除操作的场景。下面我们来探讨单链表、循环链表和双向链表的特点和实现。 单链…

算法设计与分析 笔记

截图摘自湖南大学彭鹏老师的ppt。笔记也是根据他的ppt整理的。 动态规划 核心 用数组记录中间结果,避免重复计算 三角数塔问题 问题描述 给定一个三角形数塔,从顶部出发,每次只能移动到下一行的相邻元素。要求找到一条路径,…

Mac 本地启动 Dify

本地启动 dify 拉取 dify 文件 git clone https://github.com/langgenius/dify.git启动底层服务 cd dify/docker docker-compose -f docker-compose.middleware.yaml -p dify up -d启动后端 API 安装 poetry brew install poetry配置 cd ../api cp .env.example .env sed…

VS Code安装及环境配置(超详细)

VS Code简介 Visual Studio Code(简称 VS Code )是 Microsoft 于2015年4月发布的一款代码编辑器,以界面简洁、轻量著称。 它是一款免费开源的现代化轻量级代码编辑器,支持几乎所有主流开发语言的语法高亮、智能代码补全、自定义…

【HTTPS云证书部署】SpingBoot部署证书

这里以华为云证书为例。 1. 下载证书 2. 解压 3. 选择.top_Tomcat复制到SpringBoot的Resource/source下 4. 在.properties文件中进行配置 修改key-store和key-store-password

[面试题]Jenkins

[面试题]Java【基础】[面试题]Java【虚拟机】[面试题]Java【并发】[面试题]Java【集合】[面试题]MySQL[面试题]Maven[面试题]Spring Boot[面试题]Spring Cloud[面试题]Spring MVC[面试题]Spring[面试题]MyBatis[面试题]Nginx[面试题]缓存[面试题]Redis[面试题]消息队列[面试题]…