一种多端口多网络协议转换器的制作方法

文档序号:7835668阅读:238来源:国知局
专利名称:一种多端口多网络协议转换器的制作方法
技术领域
本实用新型涉及工业控制领域,具体涉及一种工业现场应用的多端口多网络协议转换器。
背景技术
在工业生产和自动化技术中,现场总线通信系统的应用日益广泛。现场总线是工厂底层设备之间的通信网络。现场设置的执行用户设备,如数控装置、伺服驱动器、I/O模块、传感器等通过现场总线互联,形成一个网络化、数字化、全开放、全分布的自动控制系统。2007年,国际电工委员会发布第四版IEC61158现场总线标准,采纳了 20种总线作为国际标准。不同现场总线有不同的应用领域,没有一种适用所有控制领域的现场总线标准。各现场总线协议之间不完全兼容,导致不同现场总线协议上的用户设备不能直接通信。 常见的方法是采用工控机加现场总线接口卡来实现总线通信。这种方案成本高,开发周期长。中国专利文献CN101741819. A提出了一种工业控制网络与以太网转换的网关装置该发明提出了一种在应用层实现不同协议转换的方法。通过一个协议转换模块,将工业控制网络转换为IPv6,或者将以太网数据包转换为工业控制网络协议数据包。通过在应用层构造不同功能组件,达到协议转换目的。在工业自动化某些领域,如数控装置,伺服驱动器,这些设备对数据实时性要求高,传输数据量大。通过软件实现协议转换速度慢,无法满足强实时、高速度要求。中国专利文献CN201174706.Y提出了一种利用FPGA实现以太网串口转换的装置 该设备基于FPGA技术,将工业设备中广泛应用的串口现场总线RS232/422/485数据接口标准与标准以太网进行互相转换。利用FPGA内部的32位软核CPU及相关外围电路,完成以太网与串口的自动转换。这种利用软硬件资源设计的协议转换器,具有较高的实时性,但其功能较简单,只实现了单一的以太网和串口的转换,不支持多种协议转换。目前在现场总线领域,广泛应用的总线有CAN,EtherCAT, PROFINET, DeviceNet, SERCOS III。不同的现场总线传输介质不一样,如EtherCAT,PROFINET,NCUC-BUS传输介质为双绞线或光纤,标准以太网支持双绞线。不同传输介质对应不同的硬件接口电路。为实现协议转换,需要为不同的总线设计不同的硬件接口电路,增加了成本。
发明内容本实用新型提供的一种多端口多网络协议转换器,它能够实现常用协议互相转换,具备通用的硬件接口电路,具有高速度、强实时性通信特点。为达到上述目的,本实用新型提供的一种多端口多网络协议转换器,其特征在于, 它包括主控制器、辅控制器、外部RAM、外围电路和至少二个协议端口 ;主控制器与辅控制器相连,用于系统监控,实现网络协议转换,并向辅控制器提供协议和端口配置信号;辅控制器与主控制器相连,用于实现数据链路层功能,完成数据链路的建立、拆除,实现数据的检错和纠错功能;外部RAM为片外存储器,与所述主控制器和辅控制器相连,用于为协议分配固定的用于数据发送和接收缓存的存储区,为协议数据交换提供空间;外围电路为系统辅助电路,用于为控制器和网络通信芯片提供工作时钟,为控制器提供调试接口,并为整个系统供电;各协议端口的一端均与所述辅控制器相连,另一端均用于与用户设备相连;根据协议转换要求协议端口被定义为源协议端口和目标协议端口。转换器上电后完成初始化工作,然后进入运行状态,按照下述过程实现协议转换处理①源协议端口接收用户设备数据,辅控制器处理数据,去除数据帧头和控制信息, 将源协议有效数据放入辅控制器内部对应的数据接收缓冲区;②数据接收完成后,主控制器根据预先设定的优先级顺序依次读取辅控制器内部对应的数据接收缓冲区的源协议有效数据,并放入外部RAM预先分配的数据接收缓冲区中;③按照设定的优先级顺序,主控制器读取外部RAM的数据接收缓冲区数据,依次将目标协议的帧头数据和外部RAM数据接收缓冲区的数据放入外部RAM分配的目标协议端口的发送缓冲区;根据目标协议端口逻辑地址,查找路由表,产生发送使能信息给辅控制器;④辅控制器接收到发送使能信息,读取外部RAM的数据发送缓冲区数据,将数据发送至目标协议端口,完成一次协议转换过程。本实用新型能够实现多种协议互相转换,整个转换过程在网络协议的物理层和数据链路层完成。本实用新型支持多种协议同时在线互相转换。根据应用要求动态配置源网络协议和目标网络类型,源网络协议端口和目标网络协议端口数量,完成源网络协议向目标网络协议的转换,实现不同协议之间通信的无缝连接。具体而言,本实用新型具有以下有益效果1)本实用新型实现了不同网络协议之间的通信转换,解决了不同类别网络的互联问题;2)为多种协议之间的相互通信提供了一种高效实时的处理方法,实现了多协议转换的通用性;3)本实用新型提高了数据传输速率,减少了通信延时。
图1为多端口多网络协议转换器连接示意图;图2为多端口多网络协议转换器硬件结构框图;图3为多端口多网络协议转换器协议转换组分组示意图;图4为多端口多网络协议转换器软件模块示意图;图5为多端口多网络协议转换器实施例连接示意图;[0028]图6为NCUC-BUS协议数据报文格式;图7为多端口多网络协议转换器实施例硬件结构图;图8为多端口多网络协议转换器实施例工作流程图。具体实现方式下面结合具体实例和附图,对本实用新型进行详细说明。图1为本实用新型多端口多网络协议转换器结构示意图。用户设备为外部输入输出设备,如工控机,数控装置,伺服驱动器,现场总线仪表等。当不同的用户设备使用不同的网络协议进行通信时,多端口多协议转换器将输入设备的协议转换为输出设备的协议,保证设备之间的通信是透明的。为此,定义源协议为需要转换的网络协议,即输入协议;目标协议为需要得到的网络协议,即输出协议。图2为本实用新型的硬件结构框图。本实用新型提供的多端口多网络协议转换器包括主控制器1,辅控制器2,外部RAM3,外围电路4和协议端口 51、52、53……5η,η为大于等于2的正整数。主控制器1,一端与所述辅控制器2相连,用于系统监控,实现网络协议转换,并向辅控制器2提供协议和端口配置信号。主控制器1的软件模块如图4所示,包括系统初始化模块11,协议转换模块12,路由选择模块13,系统管理模块14和网络管理模块15。系统初始化模块11用于在系统上电后完成初始化工作,包括配置源协议和目标协议类型,源协议端口和目标协议端口数量,向辅控制器2中的寄存器模块写入用于表示源协议和目标协议类型的寄存器值,源协议端口逻辑地址和目标协议端口逻辑地址,确定协议转换组工作优先级。协议端口逻辑地址是用于区分多端口多网络协议转换器的不同端口规定的地址编号,协议转换组表示一个源协议转换为一个目标协议的分组集合。协议转换模块12用于完成不同协议转换组之间的转换。不同的协议转换组对应不同的转换方式,协议转换模块包括多个协议转换子模块,分别对应不同的协议转换组。通过分析源协议端口接收的数据格式,去除数据帧头信息,提取有效数据,将数据封装为目标协议数据帧格式,交给路由选择模块。路由选择模块13接收协议转换模块的数据,并根据路由表选择数据发送的目标协议端口逻辑地址,发送数据。路由选择模块的路由表存储了各个端口的逻辑地址,同时管理各协议转换组的数据发送和接收缓冲。系统管理模块14用于对端口进行配置和管理,监测各个端口的工作状态,包括端口连接状态,端口关闭和启用,以及端口逻辑地址分配。网络管理模块15用于实现网络协议的管理帧处理,如TCP/IP协议中ARP应答, Ping测试,TCP的三次握手建立连接等。辅控制器2,一端与所述主控制器1相连,用于实现数据链路层功能,完成数据链路的建立、拆除,实现数据的检错、纠错功能。辅控制器2软件模块如图4所示,包括链路层接口模块21,RAM地址管理模块22, 寄存器模块23和内部RAM模块M。链路层接口模块21接收各端口的通用报文,并把有效数据放入端口对应的接收缓冲区。根据主控制器1的发送控制信息,链路层接口模块发送目标协议端口数据报文,并完成接收数据和发送数据校验。RAM地址管理模块22用于为辅控制器2内部RAM模块M的数据接收缓冲区产生控制和地址信号;为外部RAM3数据接收缓冲区和发送缓冲区产生控制和地址信号。寄存器模块23用于存储协议转换相关寄存器设定值,寄存器包括网络协议类型寄存器,工作状态寄存器,输入寄存器和输出寄存器。内部RAM模块M用于完成辅控制器内的数据接收缓冲。辅控制器2内部有内嵌的RAM,根据功能要求,将内部RAM模块划分为与协议端口对应的数据接收缓冲区。外部RAM3为片外存储器,与所述主控制器1和辅控制器2相连,用于为协议分配固定的用于数据发送和接收缓冲的存储区,为协议数据交换提供空间。外围电路4为系统辅助电路,包括时钟41,外设接口 42,电源43。时钟41用于为控制器和网络通信芯片提供工作时钟,外设接口 42为控制器的调试接口,电源43用于为整个系统供电。协议端口 5,一端与所述辅控制器2相连,另一端与所述用户设备相连。根据协议转换要求可将协议端口 5定义为源协议端口和目标协议端口,本实用新型支持EtherCAT, SERCOS III,NCUC-BUS,TCP/IP协议互相转换。根据现场应用要求,可以动态配置源协议端口和目标协议端口的数量,协议端口最大容量为6个,最小容量为2。协议转换分为12个协议转换组,最多可支持3个协议转换组同时工作。转换组如图3所示。源协议端口和目标协议端口个数可根据应用要求在允许的范围内配置。协议端口 5由网络接口和网络通信芯片组成。网络接口,一端与所述网络通信芯片相连,另一端与所述用户设备相连,用于数据发送和数据接收。网络接口根据各自的协议传输介质类型及现场应用要求配置对应的硬件接口电路。传输介质有双绞线、光纤、同轴电缆等类型,分别对应RJ45,多模光纤模块,同轴电缆接头。网络通信芯片,一端与所述辅控制器2相连,为物理层通信芯片,用于信号编码和译码,具有编码、译码输入输出的作用。前面描述了多端口多网络协议转换器的硬件结构,下面介绍具体的实现方法第一步初始化。转换器上电后完成初始化工作,包括所述两个控制器的寄存器初始化,存储器,网络通信芯片初始化。配置源协议和目标协议类型,源协议端口和目标协议
端口数量。第二步进入运行状态,实现协议转换处理。具体包括1)源协议端口接收用户设备数据,辅控制器处理数据,去除数据帧头和控制信息, 将源协议有效数据放入辅控制器内部对应的数据接收缓冲区。辅控制器是一种利用硬件电路处理数据的器件,支持并行处理,所以它可以同时实现多种协议转换。2)数据接收完成后,主控制器根据预先设定的优先级顺序依次读取辅控制器内部对应的数据接收缓冲区的源协议有效数据,并放入外部RAM预先分配的数据接收缓冲区中。设定优先级的目的是避免同时读取多个源协议端口数据导致访问冲突。3)按照设定的优先级顺序,主控制器读取外部RAM的数据接收缓冲区数据,依次将目标协议的帧头数据和外部RAM数据接收缓冲区的数据放入外部RAM分配的目标协议端口的发送缓冲区。根据目标协议端口逻辑地址,查找路由表,产生发送使能信息给辅控制
ο4)辅控制器接收到发送使能信息,读取发送缓冲区数据,将数据发送至目标协议端口。完成一次协议转换过程。下面结合具体实例,以NCUC-BUS现场总线协议和以太网使用的TCP/IP协议互相转换为例,并参考附图,对本实用新型进行详细说明。NCUC-BUS现场总线工作在主从模式,连接示意图如图5所示。本实例配置 NCUC-BUS协议端口为五个,TCP/IP协议端口即以太网端口为1个。定义主导总线上数据传输的控制单元称为主站,如数控装置;被动执行数据传输的控制单元称为从站,它们只允许被动响应主站要求确认的收到信号或者直接转发信号,如数控系统中的伺服驱动器。NCUC-BUS协议数据报文格式如图6所示,每帧数据包含8个字节帧界,6字节源 MAC源地址(主站MAC),6字节MAC目的地址(从站MAC),2个字节数据长度,2个字节帧类型标识,2个字节上周期主站帧发送和接收时刻差,2个字节主站帧发送时刻,可配置的η字节从站数据,4个字节的校验位。图7为本实例的原理图。本实用新型硬件部件包括主控制器1,辅控制器2,外部 RAM3,外围电路4和六个协议端口 5,。主控制器1通常采用DSP,用于执行系统监控管理,完成NCUC-BUS和TCP/IP协议的互相转换。辅控制器2通常采用FPGA,用于完成数据链路的建立、拆除,实现数据的检错、纠错功能。外部RAM3为片外存储器,与所述主控制器1和辅控制器2相连,用于为协议分配固定的用于数据发送和接收缓存的存储区,为协议数据交换提供空间。外围电路4为系统辅助电路,包括时钟41,外设接口 42,电源43。时钟41用于为控制器和网络通信芯片提供工作时钟,外设接口 42是控制器的调试接口,电源43为整个系统供电。协议端口 5,一端与所述辅控制器2相连,另一端用于与所述用户设备相连,用于数据发送和接收。本实例包括五个光纤端口和一个RJ45端口,每个端口包含网络通信芯片和网络接口。光纤端口传输的协议是NCUC-BUS,RJ45端口传输的协议是TCP/IP。网络通信芯片为物理层芯片,与所述辅控制器2相连,完成输入输出信号编码、解码,具有编码、译码输入输出的作用。网络接口为用户设备物理连接接口,一端与用户设备相连,构成协议通信物理连接,用于发送和接收网络信号。五个光纤端口中51 —端与所述用户设备主站相连,52,53,54,55与所述用户设备从站相连。主站与从站的网络接口为多模光纤模块。传输介质为光纤,通信速度为100Μ。多模光纤模块采用1X9多模收发一体模块,每个光纤模块具有发送和接收两路多模光纤传输路径,采用光纤作为信息传输介质,光信号作为信息传输载体。RJ45端口 56为以太网接口,网络接口包含网络变压器和RJ45接口。网络变压器一端与网络通信芯片相连,完成信号传输、阻抗匹配、信号杂波抑制和电压隔离功能。RJ45 接口一端与远程终端PC相连,用于发送和接收网络信号,通信介质为双绞线。实例中还包括[0076]控制总线,主控制器1、辅控制器2和外部RAM3通过一控制总线相连;主控制器1 和辅控制器2通过另一控制总线相连。地址总线,主控制器1、辅控制器2和外部RAM3通过共用的地址总线相连。数据总线,主控制器1、辅控制器2和外部RAM3通过共用的数据总线相连。本实例中,互相转换的协议是NCUC-BUS现场总线协议和TCP/IP协议,即实现 NCUC-BUS协议数据报文和TCP/IP协议数据报文的相互转换,其实现流程如图8所示。第一步系统初始化。系统上电后,完成初始化工作。根据配置要求指定两种协议转换组,第一组将源协议配置为NCUC-BUS协议,目标协议配置为TCP/IP协议,配置源协议端口数为5个,端口逻辑地址为1,2,3,4,5。配置目标协议端口数为1个,端口逻辑地址为6。第二组将源协议配置为TCP/IP协议,目标协议配置为NCUC-BUS协议,源协议端口数为1个,端口逻辑地址为 6。目标协议端口数为5个,端口逻辑地址为1,2,3,4,5。多端口多协议转换器同时只有一组协议需要转换,所以,不需要设定转换优先级。转换组为图3中的第三组和第十组。第二步进入运行状态,实现协议转换处理。具体流程如下(一)源协议端口接收数据。根据中断信息对接收到的数据进行判断,若是 NCUC-BUS中断,则执行(二 );若是TCP/IP中断,则执行(三)。( 二)接收到NCUC-BUS协议数据,调用链路层接口模块。NCUC-BUS协议数据帧是一种集总帧,即主站发出的一帧数据包含所有从站数据。主站发出一帧数据至所有从站,从站返回数据按照原来的数据格式组成新一帧数据发送到主站。FPGA链路层接口模块处理每一帧主站发送的数据和接收的数据,去除数据帧头和控制信息,调用RAM地址管理模块将从站数据放入FPGA内部RAM对应的数据接收缓冲区。1)数据接收完成后,FPGA产生一个高电平中断给DSP。DSP检测到中断信息,读取 FPGA表示协议类型的寄存器,然后把内部RAM数据接收缓冲区的数据,放入外部RAM预先分配的数据接收缓冲区。2)完成数据从FPGA内部RAM到外部RAM的转移后,DSP协议转换模块将TCP/IP 的帧头数据和外部RAM接收缓冲区的NCUC-BUS有效数据放入外部RAM预先分配的TCP/IP 发送缓冲区。路由选择模块根据预先设定的目标协议端口即TCP/IP端口逻辑地址6,查找路由表,产生发送信息给FPGA,向输出寄存器写入端口逻辑地址,数据长度,发送使能等数据。3) FPGA接收到发送信息,读取输出寄存器,将TCP/IP协议数据从6号端口发送出去。4)完成一次NCUC-BUS协议和TCP/IP协议转换,等待下一帧NCUC-BUS数据。(三)接收到TCP/IP协议数据,调用链路层接口模块。FPGA链路层接口模块去除帧头信息,利用RAM地址管理模块将有效数据放入FPGA内部RAM对应的数据接收缓冲区。1)数据接收完成后,FPGA产生一个高电平中断给DSP。DSP检测到中断信息,读取 FPGA表示协议类型的寄存器,然后把内部RAM数据接收缓冲区的数据,放入外部RAM预先分配的数据接收缓冲区。 2) DSP读取数据过程中,判断TCP/IP数据帧是管理帧还是数据帧。若是管理帧,则调用网络管理模块。对ARP请求,ping测试,TCP连接请求等管理信息进行应答处理。若是数据帧,调用协议转换模块,将NCUC-BUS的帧头数据和外部RAM接收缓冲区的TCP/IP有效数据放入外部RAM预先分配的NCUC-BUS发送缓冲区。路由选择模块根据预先设定的目标协议端口查找路由表,产生发送信息给FPGA,向输出寄存器写入端口逻辑地址,数据长度, 发送使能等数据。3) FPGA接收到发送信息,读取输出寄存器,将NCUC-BUS协议数据发送到指定目标协议端口。4)完成一次NCUC-BUS协议和TCP/IP协议转换,等待下一帧TCP/IP数据。本实用新型不仅局限于上述具体实施方式
,本领域一般技术人员根据实施例和附图公开内容,可以采用其他多种具体的实施方式。因此,凡是采用本实用新型的设计结构和思路,做一些简单的变化或者更改的设计,都落入本实用新型保护的范围。
权利要求1.一种多端口多网络协议转换器,其特征在于,它包括主控制器(1)、辅控制器(2)、外部RAM (3)、外围电路(4)和至少二个协议端口( 5);主控制器(1)与辅控制器(2)相连,用于系统监控,实现网络协议转换,并向辅控制器 (2)提供协议和端口配置信号;辅控制器(2)与主控制器(1)相连,用于实现数据链路层功能,完成数据链路的建立、 拆除,实现数据的检错和纠错功能;外部RAM (3)为片外存储器,与所述主控制器(1)和辅控制器(2)相连,用于为协议分配固定的用于数据发送和接收缓冲的存储区,为协议数据交换提供空间;外围电路(4)为系统辅助电路,用于为控制器和网络通信芯片提供工作时钟,为控制器提供调试接口,并为整个系统供电;各协议端口(5)的一端均与所述辅控制器(2)相连,另一端均用于与用户设备相连;根据协议转换要求协议端口(5)被定义为源协议端口和目标协议端口。
2.根据权利要求1所述的多端口多网络协议转换器,其特征在于,协议端口(5)由网络接口和网络通信芯片组成;网络接口一端与所述网络通信芯片的一端相连,另一端与所述用户设备相连,用于数据发送和数据接收;网络接口根据各自的协议传输介质类型及现场应用要求配置对应的硬件接口电路;网络通信芯片另一端与所述辅控制器(2)相连,用于信号编码和译码,具有编码、译码输入输出的作用。
专利摘要本实用新型公开了一种多端口多网络协议转换器,包括主控制器,辅控制器,RAM,外围电路和至少二个协议端口;主控制器与辅控制器相连,用于系统监控,实现网络协议转换,并向辅控制器提供协议和端口配置信号;辅控制器与主控制器相连,用于实现数据链路层功能,完成数据链路的建立、拆除,实现数据的检错和纠错功能;RAM为协议数据交换提供空间。本实用新型利用硬件电路和软件程序相结合的处理方法实现多种协议互相转换,整个转换过程在网络协议的物理层和数据链路层完成。本实用新型支持多种协议同时在线互相转换。根据应用要求动态配置源网络协议和目标网络类型,源网络协议端口和目标网络协议端口数量,完成源网络协议向目标网络协议的转换,实现不同协议之间通信的无缝连接。
文档编号H04L29/06GK202077061SQ20112008064
公开日2011年12月14日 申请日期2011年3月24日 优先权日2011年3月24日
发明者唐小琦, 唐玉枝, 夏亮, 宋宝, 尹玲, 张翊诚, 王翰, 陈天航, 陈明 申请人:华中科技大学, 武汉华中数控股份有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1