找回密码
 注册会员
更新自动建库工具PCB Footprint Expert 2024.04 Pro / Library Expert 破解版

[嵌入式/ARM] 基于赫优讯嵌入式模块EtherCAT从站设备的开发

[复制链接]
admin 发表于 2013-4-4 13:47:32 | 显示全部楼层 |阅读模式

本文包含原理图、PCB、源代码、封装库、中英文PDF等资源

您需要 登录 才可以下载或查看,没有账号?注册会员

×
0 引言
  随着计算机、通信、网络等信息技术的发展,信息交换的领域已经覆盖了工厂、企业乃至世界各地的市场,因此,需要建立包含从工业现场设备层到控制层、管理层等各个层次的综合自动化网络平台,建立以工业控制网络技术为基础的企业信息化系统。
  20世纪80年代产生和发展起来的现场总线技术,以全数字的通信代替4~20mA电流的模拟传输方式,使得控制系统与现场仪表之间不仅能传输生产过程测量与控制信息,而且能够传输现场仪表的大量非控制信息,使得工业企业的管理控制一体化成为可能。然而,现场总线技术在其发展过程中存在不足:标准过多,不同总线之间不能兼容;专用实时通信网络,成本高;速度较低,支持的应用有限,不便于和Internet信息集成。
  由于现场总线的互连、互通与互操作性问题很难解决,于是现场总线开始转向以太网。经过近几年的努力,以太网技术已经被工业自动化系统广泛接受。为了满足高实时性能应用的需求,各大公司和标准组织纷纷提出各种提升工业以太网实时性的技术解决方案,从而产生了实时以太网(Real Time Ethernet,简称RTE)。目前,在最新版的IEC 61158 Ed.4标准中包含了11种实时以太网行规集:Profinet,EtherCAT,Ethernet/IP,SERCOS III,PowerLink, EPA, Modbus/TCP,TC-net,Vnet/IP,P-NET和HSE。
  本文介绍了一种基于嵌入式模块comX的EtherCAT实时以太网从站设备设计方案,该模块支持目前所有主流的实时以太网协议,并详细讨论了其硬件组成和软件实现,以及在智能分拣系统中的应用。
  1 netX网络控制器
  1.1 netX基本结构
  netX网络控制器是赫优讯(Hilscher)公司推出的新一代工业网络控制芯片,目前具有netX500、netX100、netX50三种型号,是一种高度集成的网络控制器,它具有全新的系统优化结构,适合工业通讯和大规模的数据吞吐。支持目前所有主流的实时以太网和现场总线系统:PROFINET、Ethernet/IP、EtherCAT、Powerlink、SERCOS III、Open Modbus on TCP/IP、AS-Interface、Interbus、CC-Link、CANopen、DeviceNet、Profibus等协议。
  netX 500的结构如图1所示。netX 500/100以32位ARM 926EJ-S为CPU核,主频200MHz,片上集成144KB SRAM、装有引导程序和实时内核的32KB ROM,通过Memory控制器可以外扩SDRAM、SRAM或FLASH,通过双端口内存DPM接口还可以连接到主机系统。netX包含丰富的外设功能:如UART,USB,SPI,I2C以及集成的显示控制器,可以满足广泛的应用需求。此外,netX采用中央数据交换(Data Switch),它连接着各个功能单元,允许同时在不同的主从端口之间通信,同时可以防止它们在传输数据时相互阻塞。netX最大的亮点在于具有可以自由定义4个智能通讯口,可以配置为现场总线或实时以太网通道。因此,netX是名副其实的“高端”网络控制器。
  1 netX 500结构框图
   20090313192735000012011061019045525004.gif
  图
  1.2 netX基本功能
  netX 500网络控制器内部集成ARM 926的CPU核,因此可以做为一个单片系统,所有的应用都可以在netX上实现。其次,netX具有双端口内存DPM接口,也可以再外接一个CPU,实现双核系统:CPU负责处理应用程序,netX专门实现网络通讯。
  netX500最大的特点就是具有可配置的4个通信通道,它们建立在两层结构上,而且相互等同。它们具有专门的ALU,并且有特殊的逻辑单元,通过Microcode来实现各协议的基本功能。xMAC(Medium-Access-Controller)分别按照各自的总线存取进程,发送和接收数据,加密或者将它们转化为字节方式。xPEC(Protocol Execution Controller)负责编译,并将数据打包,管理报文通讯。当数据量大时,可通过DMA通道进行数据交换。而且,每个通道有一个双端口内存DPM,可用于保存状态信息或本地数据。
  其中,前两个通道集成PHY,可直接用于以太网的连接。并且内部已经集成了各种实时以太网协议所需的ASIC硬件资源,如Hub、Switch、IEEE1588等,如图2所示。
  2 实时以太网通道结构图
   20090313192801000012011061019045525005.gif
  图
  因此,通过这种智能的通讯ALU,在netX芯片上可以实现各种不同的通讯协议,可以是现场总线协议,也可以是各种实时以太网协议,并且可以自由组合。而且,同步过程不受CPU响应时间的限制。

  2 实时以太网设备的设计
  在该从站设备中,使用的是德国赫优讯(Hilscher)自动化系统有限公司的嵌入式模块comX-CA-RE,模块内部已经集成专用的ASIC芯片和固化程序Firmware,由该模块实现实时以太网协议,主机CPU通过嵌入式模块提供的双端口内存(Dual-Port Memory,DPM)接口与模块进行数据通信,用户不需要关心协议的具体实现,只需往DPM接口读/写数据就可以,因此,该模块就像一个内存,使用起来特别方便。该模块的另一个特点是,同一个硬件模块上就能支持各种不同实时以太网协议:Profinet、EtherCAT、Ethernet/IP、SERCOS III、Powerlink和Modbus TCP,并且还支持主站或从站,只需下载不同的协议堆栈Firmware。因此,减少了硬件开发成本,只需在软件上更改相关协议的API,这大大的保护了投资,减少了开发的再投入成本。
  2.1 硬件设计
  嵌入式模块comX-CA-RE提供给用户的硬件接口只有X1一个排针连接头(50根管脚),即双端口内存接口,该连接头包含了与主机通信必备的控制线、16位数据总线和14位地址总线。
  由于该模块已经集成实现实时以太网接口的所有必备电路,因此在外围电路设计的时候非常简单方便,其电路连接与MCU和内存的连接相似。实时以太网协议都由模块内部实现,用户应用程序只需通过提供的API接口和访问方式,对双端口内存进行读/写操作。嵌入式模块comX与主机接口电路如图3所示。在该设备中,同时还设计了IO、AD采集电路,DA输出电路,以及其它的外设接口电路。
  
   20090313192820000012011061019045525006.gif
  图
  2.2 软件设计
  嵌入式模块comX提供的主机接口是双端口内存DPM,用户应用程序通过DPM接口来访问该模块。同时,为了提高整个系统的实时性和可靠性,主机系统使用的是实时多任务操作系统Linux。因此,在进行软件设计时,主要完成驱动程序以及应用程序的编写。
  2.2.1 双端口内存DPM结构
  用户应用程序通过双端口内存DPM来访问实时以太网嵌入式模块comX,嵌入式模块comX提供的双端口内存DPM接口是16 KByte的地址空间,其具体结构如图4所示。
  4 双端口内存地址空间
   20090313192830000012011061019045525007.gif
  图
  netX提供的双端口内存最大地址空间是64KByte,分为系统通道、握手通道、通讯通道0~3、应用通道0~1。对于嵌入式模块comX,实时以太网的协议堆栈(如EtherCAT从站的Firmware)已经保存在模块的Flash中,因此只使用了默认的系统通道、握手通道和通讯通道0,16KByte的地址空间。
  系统通道512个字节,位于双端口内存DPM的起始位置,是最重要的通道,总是存在。它包含了系统本身(netX硬件和实时操作系统rcX)的关键信息,并且提供一种邮箱的传输机制,用于发送/接收跟系统相关的报文。各功能块如表1所述。
 楼主| admin 发表于 2013-4-4 13:47:44 | 显示全部楼层
            
  系统通道            
[td]
*滑块验证:
您需要登录后才可以回帖 登录 | 注册会员

本版积分规则

QQ|手机版|MCU资讯论坛 ( 京ICP备18035221号-2 )|网站地图

GMT+8, 2025-1-11 15:58 , Processed in 0.059285 second(s), 9 queries , Redis On.

Powered by Discuz! X3.5

© 2001-2024 Discuz! Team.

快速回复 返回顶部 返回列表