一种用于实现NCUC和POWERLINK互联的总线网关装置的制作方法

文档序号:11253838阅读:1055来源:国知局
一种用于实现NCUC和POWERLINK互联的总线网关装置的制造方法

本发明属于工业现场总线技术领域,更具体地,涉及一种用于实现ncuc和powerlink互联的总线网关装置。



背景技术:

现有的ncuc总线更多考虑了数控系统对总线通信的要求,突出了链路层的执行效率而弱化了应用层,难以与其他主流的现场总线实现互联互通,与其他总线之间不具有互换性;开放性和可维护性相对较差,这局限了ncuc总线的适用范围,而随着华中8型系统应用的普及和智能化演化,对ncuc总线也提出了更高的要求,例如工业应用需求多样化对总线灵活性及组态性的要求,对市场总线互换性的要求,实现国产数控系统对国外总线设备支持的需求。

刘斌等人提出的实现nucu_bus(ncunionofchinafieldbus,中国数控总线联盟)现场总线与usb(universalserialbus,通用串行总线)总线转化技术的研究和应用,主要通过设计ncuc-bus现场总线和usb的数据转换模块,从usb接口获取ncuc-bus现场总线上的数据,对nucu_bus现场总线的应用进行了拓展;陈明基于fpga(field-programmablegatearray,现场可编程门阵列)和dsp(digitalsignalprocessing,数字信号处理)硬件平台设计的ncuc-bus现场总线与tcp/ip(transmissioncontrolprotocol/internetprotocol,传输控制协议/因特网互联协议)协议转换模式,提出了一种基于ncuc-bus现场总线的网络互连装置的设计;娄平和葛济宾等人基于stm32和fpga提出了一种支持ncuc和profibus-dp(profibus-decentralizedperiphery,profibus-分散型外围设备总线)两种现场总线转换的接口装置,该接口转换装置能使接入的串口通信设备或网口通信设备分别支持ncuc或profibus-dp现场总线的设备进行可靠通信,实现异构网络互联,但该发明并没有实现ncuc和profibus的互联,只是对接入的设备进行了选择通信。以上的技术方案均对ncuc-bus现场总线开放性进行了拓展,但最多只实现了ncuc总线与普通以太网的通信,并没有实现与高实时工业以太网如ethercat(ethernetcontrolautomationtechnology,以太网控制自动化技术)、profibus、powerlink等总线的互联通信,目前ncuc数控产品还不能支持与以上的三种总线设备的互联。powerlink是一项在标准以太网介质上、用于解决工业控制及数据采集领域数据传输实时性的工业实时以太网技术。



技术实现要素:

针对现有技术的以上缺陷或改进需求,本发明提供了一种用于实现ncuc和powerlink互联的总线网关装置;其目的在于实现ncuc-bus现场总线与powerlink总线的互联,在不改动ncuc-bus现场总线协议的前提下,提高ncuc-bus现场总线的开放性和互联互通能力。

为实现上述目的,按照本发明的一个方面,提供了一种用于实现ncuc和powerlink互联的总线网关装置,依次相连的ncuc-bus通信模块、内部总线接口模块、mcu(microcontrollerunit,微控制单元)内部总线控制模块、数据转换模块和powerlink通信模块;

其中,ncuc-bus通信模块包括下发数据缓存区和上传数据缓存区;用于接收来自外部ncuc-bus主站的数据并存放至下发数据缓存区,并用于将存放在上传数据缓存区的数据通过总线上传到外部ncuc-bus主站;

内部总线接口模块用于根据mcu内部总线控制模块提供的时序对ncuc-bus通信模块的下发数据缓存区和上传数据缓存区里的数据进行读写;

mcu内部总线控制模块用于提供内部总线接口对上传数据缓存区和下发数据缓存区的数据进行读写的时序;

数据转换模块用于对ncuc-bus数据格式与powerlink通信模块的对象字典中指定对象的格式进行相互转换;

powerlink通信模块用于接收外部powerlink从站发送的数据,并存入powerlink通信模块对象字典中的指定对象;

并将数据转换模块发送到powerlin通信模块对象字典中的数据通过powerlink总线发送到外部的powerlink从站。

优选地,上述用于实现ncuc和powerlink互联的总线网关装置,powerlink通信模块包含powerlink主站的对象字典;该对象字典存储有powerlink通信模块与外部powerlink从站使用的数据类型、通信对象以及应用对象。

优选地,上述用于实现ncuc和powerlink互联的总线网关装置,其ncuc-bus通信模块包括5个下发数据缓存区和5个上传数据缓存区,每个缓存区为16位。

优选地,上述用于实现ncuc和powerlink互联的总线网关装置,将ncuc-bus通信模块中的下发数据缓存区和上传数据缓存区视为片外sram(staticrandomaccessmemory,静态随机存取存储器);mcu内部总线控制模块以操作sram的方式对下发数据缓存区和上传数据缓存区的数据进行读写。

优选地,上述用于实现ncuc和powerlink互联的总线网关装置,其内部总线接口模块为基于fpga的mcu并行总线接口;包含16根数据线、5根地址线和5根信号线;在mcu内部总线控制模块提供的读时序下,内部总线接口通过数据线将下发数据缓存区的数据上传到数据转换模块;在mcu内部总线控制模块提供的写时序下,内部总线接口模块通过数据线将数据转换模块中的数据写入上传数据缓存区中。

优选地,上述用于实现ncuc和powerlink互联的总线网关装置,其mcu内部总线控制模块采用mcu自带的并行总线控制器实现;mcu内部总线控制模块对上传数据缓存区的写操作通过mcu的并行总线的读操作实现,mcu内部总线控制模块对下发数据缓存区的读操作通过mcu的并行总线的写操作实现。

优选地,上述用于实现ncuc和powerlink互联的总线网关装置,在通信过程中,该总线网关装置所连接的外部ncuc-bus主站周期性发送数据帧,该总线网关装置的ncuc-bus通信模块接收到本节点的数据,从ncuc-bus总线上下载数据帧存入下发数据缓存区内;并发送中断通知其数据转换模块;数据转换模块将powerlink通信模块的对象字典中指定对象中的数据取出并转换为ncuc-bus数据格式,根据mcu内部总线控制模块提供的写时序,通过内部总线接口模块将ncuc-bus数据格式的数据上传到上传数据缓存区;并根据mcu内部总线控制模块提供的读时序,内部总线接口模块将下发数据缓存区中的数据取出发送至数据转换模块,由数据转换模块将数据转换为powerlink通信模块对象字典相应的格式,并存入对象字典的指定区域,通过powerlink总线将数据发送至该总线网关装置所连接的外部powerlink从站。

本发明提高的上述用于实现ncuc和powerlink互联的总线网关装置,包含ncuc-bus通信和powerlink通信两个线程,两个线程的数据交换通过数据转换模块和powerlink通信模块的对象字典来实现。

总体而言,通过本发明所构思的以上技术方案与现有技术相比,能够取得下列有益效果:

(1)本发明所提供的总线网关装置,能作为支持powerlink子网的ncuc从站装置,接收ncuc-bus上属于本节点的数据,将ncuc-bus格式数据转换为powerlink以太网帧,并发送给powerlink从站;能将powerlink从站返回的数据转换为ncuc-bus格式,发送给ncuc主站;可用于标准ncuc主站和powerlink从站之间的双向通信;

(2)本发明所提供的总线网关装置,不需要改动ncuc-bus协议,其ncuc-bus通信模块保留了完整的ncuc-bus从站ip核(intellectualpropertycore)以及与ncuc-bus通信的接口,该网关装置的内部总线接口模块可以使用veriloghdl硬件语言直接在ncuc-bus从站的硬件平台上实现,不需要额外的硬件,且通用性好,可作为普通ncuc-bus从站装置接入ncuc-bus网络中;veriloghdl是一种硬件描述语言(hdl:hardwaredescriptionlanguage),以文本形式来描述数字系统硬件的结构和行为的语言;

(3)本发明所提供的总线网关装置,不需要改动powerlink协议,其powerlink通信模块保留了完整的powerlink主站ip核以及powerlink总线的通信接口,可与普通的powerlink从站进行互联,通用性好;

(4)本发明所提供的总线网关装置中mcu内部总线控制模块和数据转换模块可以直接在powerlink应用层的硬件平台上实现,不需要额外的硬件,mcu内部总线控制模块可以使用mcu自带的本地并行总线接口,使用普遍且简单,集成度高,兼容性及灵活性好。

附图说明

图1是本发明实施例提供的用于实现ncuc和powerlink互联的总线网关装置的系统框图;

图2是本发明实施例提供的用于实现ncuc和powerlink互联的总线网关装置中的ncuc-bus通信模块原理图;

图3是本发明实施例提供的用于实现ncuc和powerlink互联的总线网关装置中内部总线接口在fpga上实现的原理图;

图4是本发明实施例提供的用于实现ncuc和powerlink互联的总线网关装置中powerlink通信模块原理图。

具体实施方式

为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。此外,下面所描述的本发明各个实施方式中所涉及到的技术特征只要彼此之间未构成冲突就可以相互组合。

实施例提供的用于实现ncuc和powerlink互联的总线网关装置,包括依次相连的ncuc-bus通信模块、内部总线接口模块、mcu内部总线控制模块、数据转换模块和powerlink通信模块;

其中,ncuc-bus通信模块具有两个标准的ieee1394接口(火线接口),本总线网关装置通过这两个ieee1394接口与外部ncuc-bus主站连接;powerlink通信模块具有标准的以太网网口,本总线网关装置通过该标准的以太网网口与外部powerlink从站连接;

其中,ncuc-bus通信模块包括下发数据缓存区和上传数据缓存区;用于接收来自ncuc-bus主站的数据并存入其下发数据缓存区中,用于将n其上传数据缓存区中的数据发送到ncuc-bus主站;

内部总线接口模块用于按照mcu内部总线控制模块提供的写时序,将数据转换模块的数据取出发送到ncuc-bus通信模块中的上传数据缓存区;按照mcu内部总线控制模块提供的读时序,从ncuc-bus通信模块的下发数据缓存区中的读出数据发送给数据装换模块;

mcu内部总线控制模块用于为内部总线接口模块提供对ncuc-bus通信模块的上传数据缓存区进行数据写入的写时序,和对ncuc-bus通信模块的下发数据缓存区的进行数据读取的读时序;

数据转换模块将内部总线模块发送的ncuc-bus数据格式的数据转换为powerlink通信模块的对象字典指定对象的数据格式,转换后的数据存入powerlink通信模块的对象字典中;并用于将powerlink通信模块的对象字典指定对象的数据转换为ncuc-bus数据格式的数据,转换后的数据发送到内部总线接口模块;

powerlink通信模块将其对象字典指定对象的数据通过powerlink总线发送到外部powerlink从站,并接收外部powerlink从站反馈的数据,放入其对象字典的指定对象中。

在通信过程中,上述总线网管装置所连接的外部ncuc-bus主站周期性发送数据帧,该总线网关装置的ncuc-bus通信模块接收到本节点的数据帧,从ncuc-bus总线上下载数据帧存入ncuc-bus通信模块的下发数据缓存区内,并发送中断通知数据转换模块;内部总线接口模块按照mcu内部总线控制模块提供的读时序将ncuc-bus通信模块的下发数据缓存区中的数据读取出来,发送给数据转换模块进行数据格式转换,转换后的数据存入powerlink通信模块中的对象字典里,通过powerlink总线将数据发送至该总线网关装置所连接的外部powerlink从站;

powerlink通信模块中对象字典指定所对象的数据由数据转换模块进行格式转换为ncuc-bus数据格式后,由内部总线接口模块按照mcu内部总线控制模块提供的写时序把ncuc-bus格式的数据写入ncuc-bus通信模块的上传数据缓存区中;ncuc-bus通信模块将上传数据缓存区中的数据进行数据封装形成ncuc-bus数据帧,并通过ieee1394接口将ncuc-bus数据帧发送到ncuc-bus主站;其中,powerlink通信模块的对象字典中指定对象根据外部powerlink从站实际传输的数据类型来确定。

本实施例中,ncuc-bus通信模块与内部总线接口模块在同一个fpga芯片上实现;fpga芯片采用xilinx公司的spartan3系列型号为xc3s400an的芯片ncuc-bus通信模块包括运行ncuc-bus从站ip核的fpga芯片、phy芯片以及外围电路;其中,fpga用于实现ncuc-bus通信模块的数据处理,phy(physicallayer,物理层)芯片用于实现数据的收发,fpga芯片与phy芯片连接,phy与ieee1394接口(火线接口)相连,phy芯片通过ieee1394接口接收来自外部ncuc-bus主站的数据,并存入fpga的ncuc-bus从站ip核中,由该ip核进行处理并存入ncuc-bus通信模块的下发数据缓存区;ip核将上传数据缓存区的数据提取出来,通过phy芯片发送到外部ncuc-bus主站。

本实施例中,mcu内部总线接口控制模块、数据转换模块和powerlink通信模块的应用层在同一个mcu上实现;实施例中的mcu采用st公司(stmicroelectronicsn.v.,意法半导体有限公司)的stm32系列型号为stm32f407vgt6芯片实现;在实施例提供的这种总线网管装置中,fpga是实现ncuc-bus通信模块和内部总线接口模块的硬件平台;mcu是实现内部总线控制模块、数据转换模块和powerlink通信模块的硬件平台。

mcu内部总线控制模块采用stm32f407vgt6自带的并行总线控制器fsmc,使用stm32的库函数对其时序、模式进行配置;对上传数据缓存区的写操作相当于mcu的并行总线的读状态,对下发数据缓存区的读操作相当于mcu的并行总线的写;数据转换模块用于将从ncuc-bus通信模块读取到的数据的格式与powerlink通信模块中对象字典所指定对象的格式进行相互转换

图2是本实施例的ncuc-bus通信模块的原理示意图;本实施例中,ncuc-bus通信模块包括5个下发数据缓存区(data1_in、…、data5_in)和5个上传数据缓存区(data1_out、…、data5_out),每个缓存区为16位;ncuc-bus通信模块的主要功能是将从ieee1394接口(火线接口)接收到的来自ncuc-bus主站的串行数据转换为并行数据并存入下发数据缓存区,由内部总线接口对下发数据缓存区的数据进行读取,内部总线接口将需要上传的数据放入上传数据缓存区中,由ncuc-bus通信模块通过ieee1394接口(火线接口)将上传数据缓存区中的数据上传至外部ncuc-bus主站,完成本总线网关装置与ncuc-bus主站的通信。

图3是本实施例中的内部总线接口模块的原理示意图;本实施例中,内部总线接口模块采用基于fpga的mcu并行总线接口实现;本发明中,并行总线使用但不仅限于使用fsmc总线。

内部总线接口模块包括以下接口:时钟输入信号接口clk、片选信号接口cs、读信号接口rd、写信号接口wr、复位信号接口rst_n、地址通道接口addr(4:0)、数据通道接口databus(15:0)、从下发数据缓存区中读取的数据通道datain1(15:0)…datain5(15:0)、数据装换模块中接收并用于写入上传数据缓存区的数据通道dataout1(15:0)…dataout5(15:0);时钟输入信号接口clk与ncuc-bus通信模块的外围电路提供的50m晶振连接;片选信号接口与mcu内部总线控制模块连接。

本实施例中,将ncuc-bus通信模块中的10个数据缓存区视为片外sram,mcu内部总线控制模块以操作sram的方式对数据缓存区的数据进行读写;在读时序中,通过databus(15:0)将下发数据缓存区中的数据上传至stm32,在写时序中,通过databus(15:0)将stm32的数据写入上传数据缓存区中。

图4为本实施例中的powerlink通信模块的原理示意图,powerlink通信模块的网络结构包括应用层、数据链路层和物理层。本发明中powerlink通信模块的应用层运行平台采用stm32f407vgt6芯片实现,数据链路层运行平台采用xilinx公司的spartan6系列的fpga实现。powerlink通信模块的应用层包含对象字典,对象字典为所有对象的列表;通过数据转换模块将mcu内部总线控制模块读取的ncuc-bus数据转换为powerlink对象字典的格式,写入对象字典的指定对象中,powerlink通信模块把对象字典中待发送的数据通过标准的以太网网口发送给外部powerlink从站,把外部powerlink从站反馈的数据存放在powerlink通信模块的对象字典的指定区域,再由数据转换模块转换为ncuc-bus数据格式,根据mcu内部总线控制模块提供的时序,通过内部总线接口模块将转换后的数据发送到ncuc-bus通信模块。

本领域的技术人员容易理解,以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内所作的任何修改、等同替换和改进等,均应包含在本发明的保护范围之内。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1