一种伺服驱动器现场总线接口的控制系统及方法

文档序号:6293687阅读:398来源:国知局
一种伺服驱动器现场总线接口的控制系统及方法
【专利摘要】本发明涉及工业自动化领域的伺服驱动器控制,具体地说是一种伺服驱动器现场总线接口的控制系统及方法,包括现场总线外围接口电路、FPGA模块和串行总线通讯电路模块,其方法包括上行过程控制方法和下行过程控制方法;本发明使得传统伺服驱动器可直接连到现场总线上,并且可与别的现场总线设备混合使用看,采用现场总线通讯,具有抗干扰性强,扩展性好等优点,采用现场总线通讯,使得系统与伺服驱动器的距离可达几百米远,适用于大机床;且大大简化吊挂与配电柜连线数量,提高了电器柜布线效率。
【专利说明】—种伺服驱动器现场总线接口的控制系统及方法
【技术领域】
[0001]本发明涉及工业自动化领域的伺服驱动器控制,具体地说是一种伺服驱动器现场总线接口的控制系统及方法。
【背景技术】
[0002]传统的伺服驱动器具有性能优良,系列全等优点,但只支持模拟量输入方式,不能用于基于现场总线通讯的工业自动化控制领域。传统的模拟量伺服驱动器,具有品种多,性能优,系列全等优点,但其信号容易受干扰,传输距离短,不能应该到大机床中;接线复杂,不方便扩展。不能用于基于现场总线通讯的工业自动化控制领域中。

【发明内容】

[0003]针对现有技术的上述不足之处,本发明要解决的技术问题是提供一种伺服驱动器现场总线接口的控制系统及方法。
[0004]本发明为实现上述目的所采用的技术方案是:一种伺服驱动器现场总线接口的控制系统,
[0005]现场总线外围接口电路,连接现场总线和FPGA模块,用于把从现场总线接收到的数据帧传送给FPGA模块,并把FPGA模块从串行总线通信电路接收到的上行信息,以现场数据帧的格式发送到现场总线;
[0006]FPGA模块,连接现场总线外围接口电路和串行总线通讯电路,实现了现场总线协议处理功能并用于现场总线数据帧与串行总线数据帧之间的通信;
[0007]串行总线通讯电路,连接FPGA模块和伺服驱动器控制模块,用于把下行信息以串行总线数据帧的格式发送给伺服驱动器控制模块,并接收上行信息。
[0008]所述FPGA模块包括:现场总线控制器模块,处理器模块、数据处理模块、数据校验模块和串并转换模块;
[0009]所述现场总线控制器模块是处理器模块、数据处理模块、数据校验模块、串并转换模块和串行总线通讯模块与现场总线进行数据交互的接口模块;
[0010]所述处理器模块,包括RAM、ROM和NIOS软核处理器,一方面将现场总线发送的下行信息,通过Avalon总线存储到双口 RAM中,另一方面读取双口 RAM中的上行信息;
[0011]所述数据处理模块一方面读取处理器模块存储在双口 RAM中的下行信息,将下行信息转换成并行数据,传输到并行数据总线上,另一方面将并行数据总线上的上行信息存储到双口 RAM中;
[0012]所述数据校验模块是实现上行信息与下行信息的数据校验功能的模块;
[0013]所述串并转换模块包括串行转并行模块和并行转串行模块,实现了串行数据和并行数据互相转换功能。
[0014]所述上行信息包括伺服驱动器的状态信息、错误报警信息和设备信息。
[0015]所述下行信息包括命令信息和参数设置信息。[0016]所述现场总线协议处理包括对现场总线物理层、数据链路层、应用层的处理,并对外提供RAM接口和中断信号。
[0017]还包括系统复位电路,与FPGA模块连接,用于对NIOS软核处理器进行系统复位。
[0018]还包括栈号选择模块,与FPGA模块连接,用于设置现场总线从站设备栈号。
[0019]一种伺服驱动器现场总线接口的控制方法,包括上行过程和下行过程:
[0020]所述下行过程步骤为:总线控制器模块接收现场总线的下行信息后,通过Avalon总线将下行信息传给处理器模块进行处理,将处理后的下行信息,通过Avalon总线存储到双口 RAM中,数据处理模块读取双口 RAM里的下行信息,将下行信息转换成并行数据传输到并行数据总线上,并进行数据校验,将校验后的并行数据经过串并转换模块后转换成串行数据传到伺服驱动器控制模块;
[0021]所述上行过程步骤为:串并转换模块接收到伺服驱动器控制模块反馈的上行信息后,将串行数据转换成并行数据,通过数据校验后,传输到并行数据总线上,数据处理模块读取并行数据总线上的上行信息,存储在双口 RAM里,处理器模块通过Avalon总线读取并处理双口 RAM里的上行信息,将处理后的上行信息发送给总线控制器模块,并传输到现场总线。
[0022]本发明具有以下优点:
[0023]1、本发明的在保留传统模拟伺服驱动器优点的情况下,使之具有了现场总线通讯的功能,且改进成本比较低;
[0024]2、本发明采用现场总线通讯,具有抗干扰性强,扩展性好等优点;
[0025]3、本发明由于采用现场总线通讯,使得系统与伺服驱动器的距离可达几百米远,适用于大机床;且大大简化吊挂与配电柜连线数量,提高了电器柜布线效率;
[0026]4、本发明的装置,使得传统伺服驱动器可直接连到现场总线上,并且可与别的现场总线设备混合使用,提高了经济性。
【专利附图】

【附图说明】
[0027]图1为本发明的总体结构图;
[0028]图2为本发明的FPGA逻辑框图;
[0029]图3为本发明的双口 RAM数据布局图;
[0030]图4为本发明的数据处理模块的数据处理流程图;
[0031]图5为本发明的伺服驱动器主控制板的串行总线的通讯时序。
[0032]其中,I为现场总线,2为现场总线外围接口电路。
【具体实施方式】
[0033]下面结合附图及实施例对本发明做进一步的详细说明。
[0034]如图1所示,是本发明的总体结构框图,本发明装置应用在一种传统的伺服驱动器上,使之支持现场总线通讯,实现现场总线控制的功能。本发明装置硬件部门包括:现场总线外围接口电路,FPGA逻辑芯片,串行总线通讯电路,FPGA复位电路,栈号设置电路。
[0035]串行总线通讯电路,将来自FPGA的上位机的控制信息和数据以串行总线信号的方式传输给伺服驱动器,并把伺服驱动的状态信息、错误报警信息和设备信息等数据传输给 FPGA。
[0036]如图2所示为本发明的FPGA逻辑框图,包括:现场总线处理模块、NIOS处理器模块、处理器总线接口模块、数据处理模块、数据校验模块、串并行转换模块、串行总线通讯模块。
[0037]FPGA为伺服驱动器现场总线接口卡的控制核心,通过现场总线控制电路接收到总线上传输的控制命令和数据,并对该信息进行数据处理,提取出该伺服驱动器的控制信息和数据,将该信息进行并串行转换,以串行总线的方式,将该命令数据发送给伺服驱动器执行。并接收串行总线上伺服驱动器发送回来的上行信息,主要是伺服驱动器的状态信息、错误报警信息和设备信息等,进行数据处理后,输入给协处理器,然后经现场总线控制模块发送到现场总线上,传送给上位机,实现上位机与伺服驱动器的现场总线通讯的功能。
[0038]现场总线控制模块的作用是接收并相应现场总线上位机发出的数据帧,同时把这个数据帧转发给下一个从站。如果数据帧的站地址与本站地址相同,则保存这个数据帧的数据,并发出响应帧。现场总线控制模块具有同步时钟模块可以保证各从站执行的同步性。协议处理模块具有硬件CRC校验模块,保证数据的可靠性。
[0039]NIOS处理器模块,包括软核处理器及RAM、ROM模块,是上位机的协处理器,负责对上位机通过现场总线发送的命令和数据进行运算处理,然后把处理过的数据通过Avalon总线存储到双口 RAM中,供数据处理模块读写,以实现现场总线与数据处理模块的链接,现场总线与伺服驱动器进行信息交互。运行现场总线通信处理程序,作用是读取双口 RAM中的配置数据,并将配置数据写入到总线协议处理模块的相关寄存器中。通信处理程序对总线协议处理模块的实时响应是通过调用中断服务函数实现的,通过判断状态寄存器的响应状态位区别该中断是命令中断还是消息中断,并调用相应的处理函数。消息中断处理函数用于处理现场总线上位机装置发送的消息帧,并将消息帧中的配置数据写入到相应的控制寄存器中。命令中断处理函数用于处理现场总线上位机装置发送的命令帧,将命令帧数据写入到双口 RAM存储器中,同时读出双口 RAM存储器中的响应帧数据写入到现场总线协议处理模块中。
[0040]数据处理模块,作用是一方面读取双口 RAM中的下行信息,把下行信息经过信息处理后,发送到下行的并行总线上,另一方面,读取上行的并行总线上的上行信息,经过信息处理后,把相应的配置数据写入到双口 RAM中,供NIOS处理器模块读取。用来读取处理器模块放在双口 RAM里命令和数据,把伺服驱动器相关的命令和数据读取出来,把它转换成并行数据,传输到并行数据总线上,提供给并行转串行模块。读取从伺服驱动器接收到的经过串并转换的并行数据,把相应的状态信息、错误报警信息和设备数据等信息填到相应的双口 RAM存储器上,然后经过处理器模块,总线控制模块,以现场总线数据帧要求的格式把信息发送到现场总线上。实现与上位机通过现场总线通讯的功能。
[0041]数据校验模块,作用是对数据进行校验,以判断数据传输的正确性。把伺服驱动器的数据进行按位奇校验,然后把校验的值与最后I个字节的校验字节比对,如果相同,则代表校验正确,如果不相同,则代表校验错误,这是个传输错误的数据,应该丢弃。
[0042]串并行转换模块,主要实现伺服驱动器发来的串行数据与数据处理模块输出的并行数据实现串行转并行和并行转串行数据的功能作用是一方面把数据处理模块发送下来的下行信息,由并行数据转成串行数据数据,传递给串行总线模块发送出去,另一方面,将接收到串行总线模块上的上行信息,由串行数据转成并行数据发给数据处理模块。
[0043]串行总线通讯模块,作用是实现串行总线通讯的接收发送功能。
[0044]处理器总线接口模块,通过总线控制器模块与处理器模块进行读写数据交互,并将处理器处理后的现场总线的数据放置在双口 RAM存储器重,供数据处理模块读取。
[0045]双口 RAM存储器模块,是一部分用于放置现场总线的下行信息,包括伺服驱动器的命令和配置信息等,一部分用于放置现场总线的上行信息,主要是指状态信息、错误报警信息和设备信息等。
[0046]如图3所示为本发明的双口 RAM数据布局图,容量为2048x32bit,划分为32块,每个块的大小容量为256x32bit,每4个块为I组,第一组用于存储上行信息,主要包括伺服状态,伺服错误/报警,伺服状态等信息。剩下的7组块,都用于存储现场总线的下行信息。主要包括伺服命令、伺服参数等。数据处理模块,说明分别如下:
[0047]伺服主控板到SC100为上行信息,主要是状态信息、错误报警信息和设备信息,如下表所示。
[0048]表1
[0049]
【权利要求】
1.一种伺服驱动器现场总线接口的控制系统,其特征在于,包括 现场总线外围接口电路,连接现场总线和FPGA模块,用于把从现场总线接收到的数据帧传送给FPGA模块,并把FPGA模块从串行总线通信电路接收到的上行信息,以现场数据帧的格式发送到现场总线; FPGA模块,连接现场总线外围接口电路和串行总线通讯电路,实现了现场总线协议处理功能并用于现场总线数据帧与串行总线数据帧之间的通信; 串行总线通讯电路,连接FPGA模块和伺服驱动器控制模块,用于把下行信息以串行总线数据帧的格式发送给伺服驱动器控制模块,并接收上行信息。
2.根据权利要求1所述的一种伺服驱动器现场总线接口的控制系统,其特征在于,所述FPGA模块包括:现场总线控制器模块,处理器模块、数据处理模块、数据校验模块和串并转换模块; 所述现场总线控制器模块是处理器模块、数据处理模块、数据校验模块、串并转换模块和串行总线通讯模块与现场总线进行数据交互的接口模块; 所述处理器模块,包括RAM、ROM和NIOS软核处理器,一方面将现场总线发送的下行信息,通过Avalon总线存储到双口 RAM中,另一方面读取双口 RAM中的上行信息; 所述数据处理模块一方面读取处理器模块存储在双口 RAM中的下行信息,将下行信息转换成并行数据,传输到并行 数据总线上,另一方面将并行数据总线上的上行信息存储到双口 RAM中; 所述数据校验模块是实现上行信息与下行信息的数据校验功能的模块; 所述串并转换模块包括串行转并行模块和并行转串行模块,实现了串行数据和并行数据互相转换功能。
3.根据权利要求1所述的一种伺服驱动器现场总线接口的控制系统,其特征在于,所述上行信息包括伺服驱动器的状态信息、错误报警信息和设备信息。
4.根据权利要求1所述的一种伺服驱动器现场总线接口的控制系统,其特征在于,所述下行信息包括命令信息和参数设置信息。
5.根据权利要求1所述的一种伺服驱动器现场总线接口的实现方法,其特征在于,所述现场总线协议处理包括对现场总线物理层、数据链路层、应用层的处理,并对外提供RAM接口和中断信号。
6.根据权利要求1所述的一种伺服驱动器现场总线接口的实现方法,其特征在于,还包括系统复位电路,与FPGA模块连接,用于对NIOS软核处理器进行系统复位。
7.根据权利要求1所述的一种伺服驱动器现场总线接口的实现方法,其特征在于,还包括栈号选择模块,与FPGA模块连接,用于设置现场总线从站设备栈号。
8.一种伺服驱动器现场总线接口的控制方法,其特征在于,包括上行过程和下行过程: 所述下行过程步骤为:总线控制器模块接收现场总线的下行信息后,通过Avalon总线将下行信息传给处理器模块进行处理,将处理后的下行信息,通过Avalon总线存储到双口RAM中,数据处理模块读取双口 RAM里的下行信息,将下行信息转换成并行数据传输到并行数据总线上,并进行数据校验,将校验后的并行数据经过串并转换模块后转换成串行数据传到伺服驱动器控制模块;所述上行过程步骤为:串并转换模块接收到伺服驱动器控制模块反馈的上行信息后,将串行数据转换成并行数据,通过数据校验后,传输到并行数据总线上,数据处理模块读取并行数据总线上的上行信息,存储在双口 RAM里,处理器模块通过Avalon总线读取并处理双口 RAM里的上行信息,将处理后的上行信息发送给总线控制器模块,并传输到现场总线。
【文档编号】G05B19/418GK103809547SQ201210457896
【公开日】2014年5月21日 申请日期:2012年11月14日 优先权日:2012年11月14日
【发明者】李锁, 陶耀东, 何方, 王超, 王喆 申请人:沈阳高精数控技术有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1