一种实现Powerlink工业实时以太网通讯的主/从站卡的设计方法技术

技术编号:19151104 阅读:110 留言:0更新日期:2018-10-13 10:31
本发明专利技术公开了一种实现Powerlink工业实时以太网通讯的主/从站卡的设计方法。所述主从/站卡能配置成Powerlink工业实时以太网通讯主站卡或者从站卡。主/从站卡在设计时,在FPGA内部构建片内CPU、Powerlink工业实时以太网通讯IP核、将片内CPU和IP核达成通讯的软体接口。片内CPU包括Powerlink协议栈用户层,IP核包括Powerlink协议栈的内核层和MAC层。主/从站卡使用时,把金手指插入上位机主板CAL母座中,上位机运行Powerlink协议栈应用程序,FPGA运行用户层、内核层和MAC层。使用本发明专利技术在Windows这类非实时操作系统下最小循环周期达到1ms,同步响应时间480us;在无操作系统的情况下,最小循环周期可达200us,抖动1us左右。

A design method of master / slave station card for realizing Powerlink Industrial Real-time Ethernet communication

The invention discloses a design method of master / slave station card for realizing Powerlink Industrial Real-time Ethernet communication. The master-slave / station card can be configured as Powerlink Industrial Real-time Ethernet communication master station card or slave station card. When the master/slave station card is designed, the on-chip CPU, Powerlink industrial real-time Ethernet communication IP core and the software interface for on-chip CPU and IP core are built in the FPGA. In chip CPU includes Powerlink protocol stack user layer, and IP core includes Powerlink protocol stack's kernel layer and MAC layer. When the master/slave station card is used, the golden finger is inserted into the CAL base of the host computer, the host computer runs the Powerlink protocol stack application program, and the FPGA runs the user layer, the kernel layer and the MAC layer. The minimum cycle time reaches 1 ms and the synchronous response time 480 us under the non-real-time operating system such as Windows, and the minimum cycle time can reach 200 US and jitter about 1 US without operating system.

【技术实现步骤摘要】
一种实现Powerlink工业实时以太网通讯的主/从站卡的设计方法
本专利技术涉及工业现场总线
的一种工业实时以太网通讯设备的设计方法,具体为一种实现Powerlink工业实时以太网通讯的主/从站卡设计方法。
技术介绍
openPowerlink资源包中常使用CPU+FPGA组合实现Powerlink主站或从站。openPowerlink资源包中公开了一种利用openMAC(Hub)和openPowerlinkApplicationstack设计实现Powerlink主站或从站的方法。图1为现有openPowerlink模型图,openPowerlink协议栈=用户层+会话抽象层+内核层+MAC层。除了MAC层通过硬件描述语言编程实现并运行于FPGA上之外,其余各层均通过计算机高级语言编程实现并运行于上位机CPU上(这里,作为上位机的CPU可以是不同的芯片,也可以是同一颗芯片里的不同的CPU核心)。用户层负责控制,内核层负责通信,两层之间的接口被称作会话抽象层CAL(communicationAbstractionLayer)。图1的CAL是并行通讯。用户层包含事件处理模块、对象字典、网络状态机、时间同步模块、错误处理模块、过程数据对象PDO及服务数据对象SDO。内核层包含事件处理模块、网络状态机、时间同步模块、错误处理模块、过程数据对象PDO、数据链路DLL(DataLinkLayer)状态机、周期驱动、高精度时钟硬件及以太网驱动,其中PDO负责同步事件处理,SDO负责异步事件处理。用户层依据CANopen协议在该层中的对象字典中索引,并将用户层端PDO一一映射到内核层端PDO,作为通信必要条件,两层之间的事件处理模块,时间同步模块、错误处理模块等都通过CAL层一一对应。位于内核层的DLL状态机作为通信核心负责根据当前网络状态决定自身状态以处理Powerlink数据帧的收发和数据帧内容的编解码,其中Powerlink数据帧由Powerlink网口经openHub转发到openMAC解析,才输入内核层网络驱动以触发DLL状态机跳转。周期驱动依据高精度时钟硬件来定义系统绝对时间供DLL状态机和时间同步模块参考。时间同步模块产生中断,用来决定Powerlink通信周期,其中分同步阶段、异步阶段和空闲阶段。协议栈通过调整以上三阶段时间来保证Powerlink总的通信周期时间固定,以达到实时控制的目的。openPowerlink资源包是一种入门级的实现Powerlink工业实时以太网通讯的协议栈,如果利用openPowerlink资源包设计实现Powerlink工业实时以太网通讯和进行产品设计,是无法实现以“以太网Powerlink通信行规规范”(GB/T27960-2016)规定的技术指标的。其存在如下缺点:信号传输抖动大,传输速率慢,循环周期长,同时需要采用多个芯片,设计复杂,这样就造成了Powerlink工业实时以太网通讯响应慢,传输不稳定,通讯成本高等问题。
技术实现思路
针对现有技术的不足,本专利技术提供了一种实现Powerlink工业实时以太网通讯的主/从站卡的设计方法,该卡可以配置或直接制造成为主站,也可以配置或直接制造成为从站,直接制造意为出厂时的制造和配置状态。该卡具有PCIe通讯接口界面(PCIe金手指),当该卡PCIe金手指插入上位机(PC机或其它工控设备)主板上的PCIe通讯接口界面后(PCIe母座),当配置为主站时,该卡+上位机的组合就构成了一个双网口的Powerlink工业实时以太网主站控制器,可以通过网络拓扑,接入其它的Powerlink工业实时以太网从站设备;当配置为从站时,该卡+上位机的组合就构成了一个双网口的Powerlink工业实时以太网从站设备,可以通过网络拓扑,与其它的Powerlink工业实时以太网从站设备共同接入Powerlink通讯网络。本专利技术采用以下技术方案实现:一种实现Powerlink工业实时以太网通讯的主/从站卡的设计方法,所述主/从站卡包括片内CPU、软体接口、Powerlink工业实时以太网通讯IP核;所述片内CPU设计Powerlink协议栈用户层,所述用户层包括控制器一、对象字典、中断产生器一、过程数据对象模块、服务数据对象模块;所述IP核包括内核层和MAC层,所述内核层包括中断产生器二、同步数据缓存模块、异步数据缓存模块、控制器二;其中,所述主/从站卡设计为主站卡时,满足以下特征:所述中断产生器一依据所述中断产生器二的触发产生中断,由此形成中断时序,所述中断时序中相邻两个中断的时间为一个Powerlink周期,所述Powerlink周期包括同步处理时间、异步处理时间和空闲时间;所述控制器一接收一个Powerlink周期的控制信息集,所述控制信息集控制与所述主站相连的至少一个从站,所述控制信息集包括与所述至少一个从站相对应的至少一个控制信息;所述控制器一在接收所述中断之后,首先在所述同步处理时间内将所述控制信息中的需要同步处理的数据发送至所述过程数据对象模块,在所述异步处理时间内将所述控制信息中需要异步处理的数据发送至所述服务数据对象模块,而在空闲时间内不做处理;所述对象字典依据CANopen协议辅助所述过程数据对象模块建立与所述同步数据缓存模块之间的同步数据通道,辅助所述服务数据对象模块建立与所述异步数据缓存模块之间的异步数据通道;所述过程数据对象模块通过软体接口依据所述同步数据通道将需要同步处理的数据发送至所述同步数据缓存模块,所述服务数据对象模块通过所述软体接口依据所述异步数据通道将需要异步处理的数据发送至所述异步数据缓存模块;所述控制器二按照Powerlink协议完成以下数据组帧:先在所述同步时间内把需要同步处理的数据组成Powerlink数据帧一,并将所述Powerlink数据帧一发送至所述MAC层,后在所述异步时间内把需要异步处理的数据组成Powerlink数据帧二,并将所述Powerlink数据帧二发送至所述MAC层;所述中断产生器二在所述控制器二完成所述数据组帧后,且在当前Powerlink周期结束时触发所述中断产生器一。本专利技术还提供另一种实现Powerlink工业实时以太网通讯的主/从站卡的设计方法,其区别在于,所述主/从站卡设计为从站卡时,满足以下特征:所述MAC层先接收来自主站的Powerlink同步数据触发帧Soc后,触发所述中断产生器二产生中断触发信息;所述中断产生器一依据所述中断产生器二的中断触发信号产生中断,所述中断代表一个Powerlink周期开始;所述控制器一根据所述中断触发同步数据通道,所述同步数据通道为:所述过程数据对象模块在所述对象字典依据CANopen协议的辅助下,建立的与所述同步数据缓存模块之间的通道;所述MAC层再接收来自主站的Powerlink同步数据,所述控制器二对所述同步数据依照Powerlink协议进行解码提取需要同步传输的Powerlink数据帧;所述同步数据缓存模块将所述需要同步传输的Powerlink数据帧,通过软体接口依据所述同步数据通道发送至所述过程数据对象模块,供所述控制器一调取;所述MAC层之后接收来自主站的Powerlink异步数据触发帧Soa,所述控制器二根据所述Po本文档来自技高网
...

【技术保护点】
1.一种实现Powerlink工业实时以太网通讯的主/从站卡的设计方法,其特征在于,所述主/从站卡包括片内CPU、软体接口、Powerlink工业实时以太网通讯IP核;所述片内CPU设计Powerlink协议栈用户层,所述用户层包括控制器一、对象字典、中断产生器一、过程数据对象模块、服务数据对象模块;所述IP核包括内核层和MAC层,所述内核层包括中断产生器二、同步数据缓存模块、异步数据缓存模块、控制器二;其中,所述主/从站卡设计为主站卡时,满足以下特征:所述中断产生器一依据所述中断产生器二的触发产生中断,由此形成中断时序,所述中断时序中相邻两个中断的时间为一个Powerlink周期,所述Powerlink周期包括同步处理时间、异步处理时间和空闲时间;所述控制器一接收一个Powerlink周期的控制信息集,所述控制信息集控制与所述主站相连的至少一个从站,所述控制信息集包括与所述至少一个从站相对应的至少一个控制信息;所述控制器一在接收所述中断之后,首先在所述同步处理时间内将所述控制信息中的需要同步处理的数据发送至所述过程数据对象模块,在所述异步处理时间内将所述控制信息中需要异步处理的数据发送至所述服务数据对象模块,而在空闲时间内不做处理;所述对象字典依据CANopen协议辅助所述过程数据对象模块建立与所述同步数据缓存模块之间的同步数据通道,辅助所述服务数据对象模块建立与所述异步数据缓存模块之间的异步数据通道;所述过程数据对象模块通过软体接口依据所述同步数据通道将需要同步处理的数据发送至所述同步数据缓存模块,所述服务数据对象模块通过所述软体接口依据所述异步数据通道将需要异步处理的数据发送至所述异步数据缓存模块;所述控制器二按照Powerlink协议完成以下数据组帧:先在所述同步时间内把需要同步处理的数据组成Powerlink数据帧一,并将所述Powerlink数据帧一发送至所述MAC层,后在所述异步时间内把需要异步处理的数据组成Powerlink数据帧二,并将所述Powerlink数据帧二发送至所述MAC层;所述中断产生器二在所述控制器二完成所述数据组帧后,且在当前Powerlink周期结束时触发所述中断产生器一。...

【技术特征摘要】
1.一种实现Powerlink工业实时以太网通讯的主/从站卡的设计方法,其特征在于,所述主/从站卡包括片内CPU、软体接口、Powerlink工业实时以太网通讯IP核;所述片内CPU设计Powerlink协议栈用户层,所述用户层包括控制器一、对象字典、中断产生器一、过程数据对象模块、服务数据对象模块;所述IP核包括内核层和MAC层,所述内核层包括中断产生器二、同步数据缓存模块、异步数据缓存模块、控制器二;其中,所述主/从站卡设计为主站卡时,满足以下特征:所述中断产生器一依据所述中断产生器二的触发产生中断,由此形成中断时序,所述中断时序中相邻两个中断的时间为一个Powerlink周期,所述Powerlink周期包括同步处理时间、异步处理时间和空闲时间;所述控制器一接收一个Powerlink周期的控制信息集,所述控制信息集控制与所述主站相连的至少一个从站,所述控制信息集包括与所述至少一个从站相对应的至少一个控制信息;所述控制器一在接收所述中断之后,首先在所述同步处理时间内将所述控制信息中的需要同步处理的数据发送至所述过程数据对象模块,在所述异步处理时间内将所述控制信息中需要异步处理的数据发送至所述服务数据对象模块,而在空闲时间内不做处理;所述对象字典依据CANopen协议辅助所述过程数据对象模块建立与所述同步数据缓存模块之间的同步数据通道,辅助所述服务数据对象模块建立与所述异步数据缓存模块之间的异步数据通道;所述过程数据对象模块通过软体接口依据所述同步数据通道将需要同步处理的数据发送至所述同步数据缓存模块,所述服务数据对象模块通过所述软体接口依据所述异步数据通道将需要异步处理的数据发送至所述异步数据缓存模块;所述控制器二按照Powerlink协议完成以下数据组帧:先在所述同步时间内把需要同步处理的数据组成Powerlink数据帧一,并将所述Powerlink数据帧一发送至所述MAC层,后在所述异步时间内把需要异步处理的数据组成Powerlink数据帧二,并将所述Powerlink数据帧二发送至所述MAC层;所述中断产生器二在所述控制器二完成所述数据组帧后,且在当前Powerlink周期结束时触发所述中断产生器一。2.如权利要求1所述的实现Powerlink工业实时以太网通讯的主/从站卡的设计方法,其特征在于,在所述同步时间内,所述控制器二按照Powerlink协议把从所述MAC层接收的数据解帧出同步应答信息,并发送给所述同步数据缓存模块供所述控制器一读取;在所述异步时间内,所述控制器二按照Powerlink协议把从所述MAC层接收的数据解帧出异步应答信息,并发送给所述异步数据缓存模块供所述控制器一读取。3.如权利要求1所述的实现Powerlink工业实时以太网通讯的主/从站卡的设计方法,其特征在于,所述用户层还包括网络状态机,所述内核层还包括数据链路状态机、事件寄存器;所述网络状态机用于管理Powerlink工业实时以太网的通讯状态,主站搜寻到至少一个从站且相应从站反馈应答信息时为网络活跃状态,所述通讯状态在网络活跃状态时,Powerlink工业实时以太网被激活;所述数据链路状态机用于定义所述内核层的不同数据处理状态,使所述控制器二在不同的数据处理状态时处理相应的数据;所述事件寄存器用于根据所述网络状态机和所述数据链路状态机的不同状态,记录相应事件并存储。4.如权利要求1所述的实现Powerlink工业实时以太网通讯的主/从站卡的设计方法,其特征在于,所述片内CPU、所述软体接口、所述IP核均运行在FPGA上。5.如权利要求1所述的实现Powerlink工业实时以太网通讯的主/从站卡的设计方法,其特征在于,所述主站卡与管理设备构成主站的核心部件,所述主站在通讯时的通讯方法为:所述管理设备上应用程序的控制信息会依次通过PCIe接口、用户层、软体接口、内核层、MAC层...

【专利技术属性】
技术研发人员:文长明文可项曦文储成君尹若嵬
申请(专利权)人:中工科安科技有限公司文长明文可
类型:发明
国别省市:安徽,34

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1