CN105302001A - 一种伺服驱动器的控制方法及装置 - Google Patents
一种伺服驱动器的控制方法及装置 Download PDFInfo
- Publication number
- CN105302001A CN105302001A CN201510812550.8A CN201510812550A CN105302001A CN 105302001 A CN105302001 A CN 105302001A CN 201510812550 A CN201510812550 A CN 201510812550A CN 105302001 A CN105302001 A CN 105302001A
- Authority
- CN
- China
- Prior art keywords
- data
- input register
- register
- dsp
- protocol stack
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
Classifications
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05B—CONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
- G05B19/00—Programme-control systems
- G05B19/02—Programme-control systems electric
- G05B19/04—Programme control other than numerical control, i.e. in sequence controllers or logic controllers
Landscapes
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Engineering & Computer Science (AREA)
- Automation & Control Theory (AREA)
- Programmable Controllers (AREA)
- Information Transfer Systems (AREA)
Abstract
本申请提供了一种伺服驱动器的控制方法及装置,其中方法包括:在第一端针对输入寄存器执行写数据操作过程中,持续判断所述第一端针对所述输入寄存器是否执行完毕写操作;若所述第一端针对所述输入寄存器执行完毕写操作,将所述输入寄存器中的数据对应转存至中间寄存器;在第一端对所述输入寄存器执行完毕写操作之后,允许第二端针对输出寄存器执行读操作。本申请对于一次数据更新过程,先进行读操作再进行写操作,或者先进行写操作再进行读操作,而非读写操作交替进行。因此,可以避免一端在执行更新操作的过程中,另一端也在执行数据更新操作,从而导致两端的数据不同步的问题。
Description
技术领域
本申请涉及电机控制技术领域,尤其涉及一种伺服驱动器的控制方法及装置。
背景技术
随着近年来以太网技术的发展,以太网总线通讯协议已应用于伺服驱动器中。参见图1为目前伺服驱动器,图示中伺服驱动器采用FPGA+DSP的硬件架构。其中,DSP为DigitalSignalProcessor,即数字信号处理器,用于运行驱动器控制程序。FPGA为Field-ProgrammableGateArray,即现场可编程门阵列;用于实现以太网通讯协议;并且,FPGA中包括DPRAM和以太网协议栈;DPRAM为Double-portRAM,即双端口RAM的意思。
为了实现伺服驱动器的具体功能,以太网协议栈与DSP之间需要进行数据交互。数据交互过程需要借助FPGA中的DPRAM实现。具体过程可以为:以太网协议栈可以将数据写入DPRAM,以便DSP在DPRAM中读取数据;反之,DSP可以将数据写入DPRAM,以便以太网协议栈在DPRAM中读取数据。
在以太网协议栈和DSP之间交互数据具有两种类型:一种为同步数据(PDO数据),一种为异步数据(SDO数据)。针对同步数据,需要在每个以太网传输周期被DSP与以太网协议栈进行更新或读取,以实时保证以太网协议栈和DSP上的同步性。
但是,由于以太网协议栈的数据更新周期与DSP的数据更新周期是不一致的,这导致在实际应用中无法保证同步数据的完整性。为此,现在需要一种方法,来借助DPRAM来保证同步数据的完整性,以满足DSP和以太网协议栈的通讯需求。
发明内容
参见图2,为本申请提供的DPRAM的结构,在DPRAM内部采用三级缓存与读写通道分离结构。
从图2所示中可以看出:DPRAM包括两个通道:同步数据传输通道(简称PDO通道)和异步数据传输通道(简称SDO通道)。针对PDO通道具体分为第一通道和第二通道。其中,第一通道用于以太网协议栈端向DSP端写数据;第二通道用于DSP端向以太网协议栈端写数据。
在PDO通道中,第一通道具体包括:DSP端的输出寄存器DR_RAM[x](x=0,1,...,m),中间寄存器F1_RAM[x](x=0,1,...,m),以及,以太网协议栈端的输入寄存器PW_RAM[x](x=0,1,...,m)。
第二通道包括:DSP端的输入寄存器DW_RAM[x](x=0,1,...,n),中间寄存器F2_RAM[x](x=0,1,...,n),以及,以太网协议栈端的输出寄存器PR_RAM[x](x=0,1,...,n)。
在PDO通道中,当以太网协议栈需要写数据时,可以向输入寄存器PW_RAM[x](x=0,1,...,m)中写入数据,然后可以再将数据从输入寄存器PW_RAM[x](x=0,1,...,m)中,转存至中间寄存器F1_RAM[x](x=0,1,...,m)中,以便DSP端从输出寄存器中DR_RAM[x](x=0,1,...,m)中读取数据。
在PDO通道中,当DSP端需要写数据时,可以向输入寄存器DW_RAM[x](x=0,1,...,n)中写入数据,然后可以再将数据从输入寄存器DW_RAM[x](x=0,1,...,n)中,转存至中间寄存器F2_RAM[x](x=0,1,...,n)中,以便以太网协议栈从输出寄存器PR_RAM[x](x=0,1,...,n)中读取数据。
但是,DSP端进行数据更新的周期为t1,以太网协议栈进行数据更新的周期为t2;由于两者的数据更新周期是不一致的,所以可能出现一端在写数据过程中另一端已经开始读取数据,即,由于一端数据未写完整,所以另一端读取的数据也是不完整的,这导致接收端数据帧不完整。
鉴于此,本申请提供了一种伺服驱动器的控制方法及装置,通过借助DPRAM来保证同步数据的完整性,以满足DSP和以太网协议栈的通讯需求。
为了实现上述目的,本申请提供了以下技术手段:
一种伺服驱动器的控制方法,包括:
在第一端针对输入寄存器执行写数据操作过程中,持续判断所述第一端针对所述输入寄存器是否执行完毕写操作;
若所述第一端针对所述输入寄存器执行完毕写操作,将所述输入寄存器中的数据对应转存至中间寄存器;
在所述第一端对所述输入寄存器执行完毕写操作之后,允许第二端针对输出寄存器执行读操作。
优选的,在第一端为DSP端的情况下,所述第二端为以太网协议栈端;或者,
在所述第一端为以太网协议栈端的情况下,所述第二端为DSP端。
一种伺服驱动器的控制方法,包括:
在第一端针对输出寄存器执行读数据操作过程中,持续判断所述第一端针对所述输出寄存器是否执行完读操作;
在所述第一端对所述输出寄存器执行完毕读操作之后,将中间寄存器的更新数据转存至输出寄存器;
在所述第一端针对所述输出寄存器执行完毕读操作之后,允许第二端针对输入寄存器执行写操作。
优选的,在第一端为DSP端的情况下,所述第二端为以太网协议栈端;或者,
在所述第一端为以太网协议栈端的情况下,所述第二端为DSP端。
一种伺服驱动器的控制装置,包括:
第一判断单元,用于在第一端针对输入寄存器执行写数据操作过程中,持续判断所述第一端针对所述输入寄存器是否执行完毕写操作;
第一转存单元,用于若所述第一端针对所述输入寄存器执行完毕写操作,将所述输入寄存器中的数据对应转存至中间寄存器;
第一允许单元,用于在第一端对所述输入寄存器执行完毕写操作之后,允许第二端针对输出寄存器执行读操作。
优选的,在第一端为DSP端的情况下,所述第二端为以太网协议栈端;或者,
在所述第一端为以太网协议栈端的情况下,所述第二端为DSP端。
一种伺服驱动器的控制装置,包括:
第二判断单元,用于在第一端针对输出寄存器执行读数据操作过程中,持续判断所述第一端针对所述输出寄存器是否执行完读操作;
第二转存单元,用于在第一端对所述输出寄存器执行完毕读操作之后,将中间寄存器的更新数据转存至输出寄存器;
第二允许单元,用于在所述第一端针对所述输出寄存器执行完毕读操作之后,允许第二端针对输入寄存器执行写操作。
优选的,在第一端为DSP端的情况下,所述第二端为以太网协议栈端;或者,
在所述第一端为以太网协议栈端的情况下,所述第二端为DSP端。
由以上内容,可以看出本申请具有以下有益效果:
由于第一端与第二端的数据更新周期不一致,所以,导致一端在读数据时候另一端在写数据,或者,一端在进行写数据时另一端在进行读数据,从而导致数据不同步的问题。因此,本申请在第一端进行读操作或写操作的时候,对应的禁止第二端进行写操作或读操作,只有第一端进行读操作或写操作完毕之后,才允许第二端进行写操作或读操作,从而保证两者数据的完整性。
即本申请对于一次数据更新过程,先进行读操作再进行写操作,或者先进行写操作再进行读操作,而非读写操作交替进行。因此,可以避免一端在执行更新操作的过程中,另一端也在执行数据更新操作,从而导致两端的数据不同步的问题。
附图说明
为了更清楚地说明本申请实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本申请公开的一种伺服驱动器的结构示意图;
图2为本申请实施例一种伺服驱动器中DPRAM的结构示意图;
图3为本申请实施例公开的伺服驱动器的控制方法的流程图;
图4为本申请实施例公开的又一伺服驱动器的控制方法的流程图;
图5为本申请实施例公开的又一伺服驱动器的控制方法的流程图;
图6为本申请实施例公开的又一伺服驱动器的控制方法的流程图;
图7为本申请实施例公开的又一伺服驱动器的控制方法的流程图;
图8为本申请实施例公开的又一伺服驱动器的控制方法的流程图;
图9a和9b为本申请实施例公开的读写时序的示意图;
图10a和10b为本申请实施例公开的读写状态机的示意图;
图11为本申请实施例公开的伺服驱动器的控制装置的结构示意图;
图12为本申请实施例公开的又一伺服驱动器的控制装置的结构示意图。
具体实施方式
下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
本申请的伺服驱动器的控制方法应用于FPGA中,在FPGA的一端为DSP端另一端为以太网协议栈端,并且在FPGA中设置有DPRAM。因此,本申请中的FPGA可以实现基于DPRAM来实现DSP端与以太网协议栈端之间的数据传输。
由于本申请针对DSP端或以太网协议栈端的执行过程均是一致的,所以本申请将DSP端或以太网协议栈端称为第一端,对应的,将以太网协议栈端或DSP端称为第二端。本申请的伺服驱动器的控制方法可以分为第一端向第二端传输数据的过程,以及第一端读取第二端传输数据的过程。
首先,介绍第一端向第二端传输数据的过程。第一端向第二端传输数据的具体过程为第一端向DPRAM写数据,然后再从DPRAM将数据传输至第二端。如图3所示,本申请提供的一种伺服驱动器的控制方法,具体包括:
步骤S301:在第一端针对输入寄存器执行写数据操作过程中,持续判断所述第一端针对所述输入寄存器是否执行完毕写操作。
由于RPRAM中包括输入寄存器、中间寄存器和输出寄存器。所以,第一端可以在一个数据更新周期向输入寄存器写入本次更新数据。由于输入寄存器具有多个输入数据单元,第一端需要针对每个数据单元均执行写操作。为了保证数据完整性,FPGA持续判断输入寄存器是否已经写完毕,即判断所有输入数据单元是否已经写完毕;如果所有输入数据单元均已经写完毕,则说明第一端已经对输入寄存器执行完毕写操作。
步骤S302:若所述第一端针对所述输入寄存器执行完毕写操作,将所述输入寄存器中的数据对应转存至中间寄存器。
在第一端对输入寄存器已经执行完毕写操作之后,则表示输入寄存器中的数据已经是完整的本次更新数据。为了将本次更新数据传输至第二端,可以将输入寄存器中的本次更新数据存储至中间寄存器。
步骤S303:在所述第一端针对所述输入寄存器执行完毕写操作之后,允许第二端针对输出寄存器执行读操作。
为了保证数据完整性,在第一端进行写操作的过程中,禁止第二端进行读操作。只有在第一端执行完毕写操作之后,才允许第二端进行读操作。
针对第二端向第一端执行写数据的过程,与第一端向第二端写数据的过程一致,在此不再赘述。由以上内容可以看出,本申请具有以下有益效果:
由于第一端与第二端的数据更新周期不一致,所以,导致一端在写数据时候,另一端在读数据,从而导致数据不同步的问题。因此,本申请在第一端进行写操作时候,禁止第二端进行读操作,只有第一端进行写操作完毕之后,才允许第二端进行读操作,从而保证两者数据的完整性。
在第一端为以太网协议栈端、第二端为DSP端的情况下,图3所示的执行过程,具体详见图4:
步骤S401:在太网协议栈端针对第一输入寄存器执行写数据操作过程中,持续判断所述太网协议栈端针对所述第一输入寄存器是否执行完毕写操作。
以太网协议栈端针对第一输入寄存器PW_RAM[x](x=0,1,...,m)执行写操作,在第一输入寄存器的所有数据单元PW_RAM[0]、PW_RAM[1]……PW_RAM[m]均已经写完毕之后,则说明以太网协议栈端对第一输入寄存器已经执行完毕写操作。并且,第一输入寄存器中的数据即为本次数据更新周期的本次更新数据。
步骤S402:若所述太网协议栈端针对所述第一输入寄存器执行完毕写操作,将所述第一输入寄存器中的数据对应转存至第一中间寄存器。
然后,将第一输入寄存器PW_RAM[x](x=0,1,...,m)中的本次更新数据,对应存储至第一中间寄存器F1_RAM[x](x=0,1,...,m)中。具体而言为,将PW_RAM[0]中的数据存储至F1_RAM[0]中,将PW_RAM[1]中的数据存储至F1_RAM[1]中,以此类推,将PW_RAM[m]中的数据存储至F1_RAM[m]中。
步骤S403:在DSP端针对第一输出寄存器执行完成读操作之后,允许以太网协议栈端针对输出寄存器执行读操作。
在第一端为DSP端、第二端为以太网协议栈端的情况下,图3所示的执行过程,具体详见图5:
步骤S501:在DSP端针对第二输入寄存器执行写数据操作过程中,持续判断所述DSP端针对所述第二输入寄存器是否执行完毕写操作。
在DSP端对第二输入寄存器DW_RAM[x](x=0,1,...,n)执行写操作时,FPGA持续判断第二输入寄存器DW_RAM[x](x=0,1,...,n)所有输入数据单元DW_RAM[0]、DW_RAM[1]……DW_RAM[n]是否均已经写完毕,如果写完毕,则说明DSP端针对第二输入寄存器DW_RAM[x](x=0,1,...,n)执行写操作完毕。
第二输入寄存器DW_RAM[x](x=0,1,...,n)即为本次数据更新周期中本次更新数据。
步骤S502:若所述DSP端针对所述第二输入寄存器执行完毕写操作,将所述第二输入寄存器中的数据对应转存至第二中间寄存器。
然后,将第二输入寄存器DW_RAM[x](x=0,1,...,n)中的本次更新数据,对应存储至第二中间寄存器F2_RAM[x](x=0,1,...,n)中。具体而言为,将DW_RAM[0]中的数据存储至F2_RAM[0]中,将DW_RAM[1]中的数据存储至F2_RAM[1]中,以此类推,将DW_RAM[n]中的数据存储至F2_RAM[n]中。
步骤S503:在太网协议栈端针对第二输出寄存器执行完成读操作之后,允许DSP端针对输出寄存器执行读操作。
下面具体介绍第一端读取第二端传输数据的具体过程,第一端需要在DPRAM中读取数据。参见图6,本申请提供了一种伺服驱动器的控制方法,具体包括以下步骤:
步骤S601:在第一端针对输出寄存器执行读数据操作过程中,持续判断所述第一端针对所述输出寄存器是否执行完毕读操作。
由图3所示的内容可知,FPGA可以将第二端向第一端的传输数据存储至中间寄存器中。即,在中间寄存器中存储有本次更新数据。
由于输出寄存器可能存储有上一数据更新周期的上次更新数据,为了保证上次更新数据不被破坏,因此将本次更新数据转存至输出寄存器之前,第一端可以针对输出寄存器进行读操作,以便读取输出寄存器中的上次更新数据。
步骤S602:在第一端针对所述输出寄存器执行完毕读操作之后,将中间寄存器的更新数据转存至输出寄存器。
因此FPGA在确定第一端已经对输出寄存器执行完毕读操作之后,再将中间寄存器的本次更新数据转存至输出寄存器中,以便第一端可以对输出寄存器本次更新数据进行读操作。
步骤S603:在第一端对输出寄存器进行读操作完毕之后,允许第二端针对输入寄存器执行写操作。
在第一端针对输出寄存器执行完毕读操作之后,可以允许第二端针对输入寄存器进行写操作。具体写操作的执行过程可参见图3所示的过程。在此不再赘述。
针对第二端读取第一端传输数据的过程,与第一端读取第二端传输数据的过程一致,在此不再赘述。
由以上内容可以看出,本申请具有以下有益效果:
由于第一端与第二端的数据更新周期不一致,所以,导致一端在读数据时候另一端在写数据,从而导致数据不同步的问题。因此,本申请在第一端进行读操作时候,禁止第二端进行写操作,只有第一端进行读操作完毕之后,才允许第二端进行写操作,从而保证两者数据的完整性。
在第一端为以太网协议栈端、第二端为DSP端的情况下,图6所示的执行过程,具体详见图7:
步骤S701:在以太网协议栈端针对第一输出寄存器执行读数据操作过程中,持续判断所述以太网协议栈端针对所述第一输出寄存器是否执行完毕读操作。
以太网协议栈端针对第一输出寄存器PR_RAM[x](x=0,1,...,m)执行写操作,在第一输入寄存器的所有数据单元PR_RAM[0]、PR_RAM[1]……PR_RAM[m]均已经读完毕之后,则说明以太网协议栈端对第一输入寄存器已经执行完毕读操作。
步骤S702:在以太网协议栈端针对所述输出寄存器执行完毕读操作之后,将中间寄存器的更新数据转存至输出寄存器。
然后,将第一中间寄存器F1_RAM[x](x=0,1,...,m)中的本次更新数据转存至第一输出寄存器PR_RAM[x](x=0,1,...,m)中。具体而言为,将F1_RAM[0]中的数据存储至PR_RAM[0]中,将F1_RAM[1]中的数据存储至PR_RAM[1]中,以此类推,将F1_RAM[m]中的数据存储至PR_RAM[m]中。
步骤S703:在以太网协议栈端针对第一输出寄存器执行完成读操作之后,允许DSP端针对输入寄存器执行写操作。
在第一端为DSP端、第二端为以太网协议栈端的情况下,图6所示的执行过程,具体详见图8:
步骤S801:在DSP端针对第二输出寄存器执行读数据操作过程中,持续判断所述以太网协议栈端针对所述第二输出寄存器是否执行完毕读操作。
在DSP端对第二输出寄存器DR_RAM[x](x=0,1,...,n)执行读操作时,FPGA持续判断第二输出寄存器DR_RAM[x](x=0,1,...,n)所有输入数据单元DR_RAM[0]、DR_RAM[1]……DR_RAM[n]是否均已经读完毕,如果读完毕,则说明DSP端针对第二输出寄存器DR_RAM[x](x=0,1,...,n)执行读操作完毕。
步骤S802:在DSP端针对所述输出寄存器执行完毕读操作之后,将中间寄存器的更新数据转存至输出寄存器。
然后,将第二中间寄存器F2_RAM[x](x=0,1,...,n)中的本次更新数据,对应存储至第二输出寄存器DR_RAM[x](x=0,1,...,n)中。具体而言为,将F2_RAM[0]中的数据存储至DR_RAM[0]中,将F2_RAM[1]中的数据存储至DR_RAM[1]中,以此类推,将F2_RAM[n]中的数据存储至DR_RAM[n]中。
步骤S803:在DSP端针对第一输出寄存器执行完成读操作之后,允许以太网协议栈端针对输入寄存器执行写操作。
在本申请中,对于数据更新过程的读操作,数据更新周期的第一个脉冲上升沿,中间寄存器F1_RAM[x]与F2_RAM[x]对分别对第一输出寄存器DR_RAM[x]与第二输出寄存器PR_RAM[x]的数据进行更新;对于数据更新过程的写操作,在确定写操作执行完毕之后,在第一个时钟上升沿将第一输入寄存器PW_RAM[x]与第二输入寄存器DW_RAM[x]中的数据对应存储至第一中间寄存器F1_RAM[x]与第二中间寄存器F2_RAM[x]。
由于本申请对于一次数据更新过程,先进行读操作再进行写操作,或者先进行写操作再进行读操作,而非读写操作交替进行。因此,可以避免一端在执行更新操作的过程中,另一端也在执行数据更新操作,从而导致两端的数据不同步的问题。
此外,本申请还可以提高读写效率,详细内容参见下述:
根据DSP的数据手册,DSP采用通用模式(Generalpurposemode)对DPRAM进行读写,其读写访问时间分别为两个时钟周期(rd2cyc=1,wr2cyc=1),具体读时序如图9a所示,写时序参见图9b所示。
如图9a和9b所示,读写时序中数据总线需要在读或者写信号有效后的一个时钟周期的上升沿输出或者读入有效的数据信号,并维持读数据信号一个时钟周期,因此针对该特点通过Verilog编写读写状态机实现DPRAM的DSP端时序控制,其DSP端读操作的状态机如图10a所示,DSP端写操作的状态机如图10b所示。
在图10a和10b中,转移状态STx,其中x=0、1、2、3、4。DATA_out与DATA_in为DSP端并口数据总线输入与输出寄存器,DSP_RD与DSP_WR分别为DSP端并口的读写控制信号。
从图示中可以看出状态机在等待到读写控制信号后,通过两个空状态进行等待,并在第二个时钟上升沿时对总线进行数据输出与读入,完成对数据的交换。由于10a与10b中的ST1与ST2两个状态为等待状态,所以,可以删减ST1与ST2两个状态,以便提高并口总线的读写速率。
由于DPRAM与以太网协议栈端同在一片FPGA内部,因此可以通过Avalon总线来实现DPRAM与以太网协议栈端之间数据交换。同样的,以太网协议栈端端与图10a和10b所示的状态机类似,只不过由于以太网协议栈端的读写周期为一个时钟周期,因此可以省略ST2的空状态,以便提高Avalon总线的读写效率。
如图11所示,本申请还提供了一种伺服驱动器的控制装置,包括:
第一判断单元111,用于在第一端针对输入寄存器执行写数据操作过程中,持续判断所述第一端针对所述输入寄存器是否执行完毕写操作;
第一转存单元112,用于若所述第一端针对所述输入寄存器执行完毕写操作,将所述输入寄存器中的数据对应转存至中间寄存器;
第一允许单元113,用于在第一端对所述输入寄存器执行完毕写操作之后,允许第二端针对输出寄存器执行读操作。
在第一端为DSP端的情况下,所述第二端为以太网协议栈端;或者,在所述第一端为以太网协议栈端的情况下,所述第二端为DSP端。
如图12所示,本申请还提供了一种伺服驱动器的控制装置,包括:
第二判断单元121,用于在第一端针对输出寄存器执行读数据操作过程中,持续判断所述第一端针对所述输出寄存器是否执行完读操作;
第二转存单元122,用于在第一端对所述输出寄存器执行完毕读操作之后,将中间寄存器的更新数据转存至输出寄存器;
第二允许单元123,用于在所述第一端针对所述输出寄存器执行完毕读操作之后,允许第二端针对输入寄存器执行写操作。
在第一端为DSP端的情况下,所述第二端为以太网协议栈端;或者,在所述第一端为以太网协议栈端的情况下,所述第二端为DSP端。
本实施例方法所述的功能如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算设备可读取存储介质中。基于这样的理解,本申请实施例对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该软件产品存储在一个存储介质中,包括若干指令用以使得一台计算设备(可以是个人计算机,服务器,移动计算设备或者网络设备等)执行本申请各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read-OnlyMemory)、随机存取存储器(RAM,RandomAccessMemory)、磁碟或者光盘等各种可以存储程序代码的介质。
本说明书中各个实施例采用递进的方式描述,每个实施例重点说明的都是与其它实施例的不同之处,各个实施例之间相同或相似部分互相参见即可。
对所公开的实施例的上述说明,使本领域专业技术人员能够实现或使用本申请。对这些实施例的多种修改对本领域的专业技术人员来说将是显而易见的,本文中所定义的一般原理可以在不脱离本申请的精神或范围的情况下,在其它实施例中实现。因此,本申请将不会被限制于本文所示的这些实施例,而是要符合与本文所公开的原理和新颖特点相一致的最宽的范围。
Claims (8)
1.一种伺服驱动器的控制方法,其特征在于,包括:
在第一端针对输入寄存器执行写数据操作过程中,持续判断所述第一端针对所述输入寄存器是否执行完毕写操作;
若所述第一端针对所述输入寄存器执行完毕写操作,将所述输入寄存器中的数据对应转存至中间寄存器;
在所述第一端对所述输入寄存器执行完毕写操作之后,允许第二端针对输出寄存器执行读操作。
2.如权利要求1所述的方法,其特征在于,在第一端为DSP端的情况下,所述第二端为以太网协议栈端;或者,
在所述第一端为以太网协议栈端的情况下,所述第二端为DSP端。
3.一种伺服驱动器的控制方法,其特征在于,包括:
在第一端针对输出寄存器执行读数据操作过程中,持续判断所述第一端针对所述输出寄存器是否执行完读操作;
在所述第一端对所述输出寄存器执行完毕读操作之后,将中间寄存器的更新数据转存至输出寄存器;
在所述第一端针对所述输出寄存器执行完毕读操作之后,允许第二端针对输入寄存器执行写操作。
4.如权利要求3所述的方法,其特征在于,在第一端为DSP端的情况下,所述第二端为以太网协议栈端;或者,
在所述第一端为以太网协议栈端的情况下,所述第二端为DSP端。
5.一种伺服驱动器的控制装置,其特征在于,包括:
第一判断单元,用于在第一端针对输入寄存器执行写数据操作过程中,持续判断所述第一端针对所述输入寄存器是否执行完毕写操作;
第一转存单元,用于若所述第一端针对所述输入寄存器执行完毕写操作,将所述输入寄存器中的数据对应转存至中间寄存器;
第一允许单元,用于在第一端对所述输入寄存器执行完毕写操作之后,允许第二端针对输出寄存器执行读操作。
6.如权利要求5所述的装置,其特征在于,在第一端为DSP端的情况下,所述第二端为以太网协议栈端;或者,
在所述第一端为以太网协议栈端的情况下,所述第二端为DSP端。
7.一种伺服驱动器的控制装置,其特征在于,包括:
第二判断单元,用于在第一端针对输出寄存器执行读数据操作过程中,持续判断所述第一端针对所述输出寄存器是否执行完读操作;
第二转存单元,用于在第一端对所述输出寄存器执行完毕读操作之后,将中间寄存器的更新数据转存至输出寄存器;
第二允许单元,用于在所述第一端针对所述输出寄存器执行完毕读操作之后,允许第二端针对输入寄存器执行写操作。
8.如权利要求7所述的装置,其特征在于,在第一端为DSP端的情况下,所述第二端为以太网协议栈端;或者,
在所述第一端为以太网协议栈端的情况下,所述第二端为DSP端。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201510812550.8A CN105302001B (zh) | 2015-11-20 | 2015-11-20 | 一种伺服驱动器的控制方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201510812550.8A CN105302001B (zh) | 2015-11-20 | 2015-11-20 | 一种伺服驱动器的控制方法及装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN105302001A true CN105302001A (zh) | 2016-02-03 |
CN105302001B CN105302001B (zh) | 2017-11-24 |
Family
ID=55199397
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201510812550.8A Active CN105302001B (zh) | 2015-11-20 | 2015-11-20 | 一种伺服驱动器的控制方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN105302001B (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111277664A (zh) * | 2020-02-07 | 2020-06-12 | 北京达佳互联信息技术有限公司 | 业务迁移方法及装置 |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH01130202A (ja) * | 1987-11-16 | 1989-05-23 | Mitsubishi Electric Corp | 数値制御装置 |
CN200941156Y (zh) * | 2006-05-31 | 2007-08-29 | 北京利达恒信科技发展有限公司 | 单端口实现多种测量和控制功能的控制器 |
CN101232434A (zh) * | 2007-01-22 | 2008-07-30 | 中兴通讯股份有限公司 | 一种利用双口ram进行异步数据传输的装置 |
CN104238420A (zh) * | 2014-09-16 | 2014-12-24 | 武汉科技大学 | 一种基于usb的伺服系统高速数据交互的通信单元 |
CN204044551U (zh) * | 2014-06-19 | 2014-12-24 | 刘东亮 | 一种交流伺服电机智能控制管理系统 |
CN204667117U (zh) * | 2015-06-18 | 2015-09-23 | 成都乐创自动化技术股份有限公司 | 一种基于通用a/d检测范围自适应的模拟量检测装置 |
-
2015
- 2015-11-20 CN CN201510812550.8A patent/CN105302001B/zh active Active
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH01130202A (ja) * | 1987-11-16 | 1989-05-23 | Mitsubishi Electric Corp | 数値制御装置 |
CN200941156Y (zh) * | 2006-05-31 | 2007-08-29 | 北京利达恒信科技发展有限公司 | 单端口实现多种测量和控制功能的控制器 |
CN101232434A (zh) * | 2007-01-22 | 2008-07-30 | 中兴通讯股份有限公司 | 一种利用双口ram进行异步数据传输的装置 |
CN204044551U (zh) * | 2014-06-19 | 2014-12-24 | 刘东亮 | 一种交流伺服电机智能控制管理系统 |
CN104238420A (zh) * | 2014-09-16 | 2014-12-24 | 武汉科技大学 | 一种基于usb的伺服系统高速数据交互的通信单元 |
CN204667117U (zh) * | 2015-06-18 | 2015-09-23 | 成都乐创自动化技术股份有限公司 | 一种基于通用a/d检测范围自适应的模拟量检测装置 |
Non-Patent Citations (3)
Title |
---|
史赟: "引入SRAM的三级缓存技术在高速通信中的应用", 《重庆邮电大学学报(自然科学版)》 * |
方湘艳等: "基于FPGA技术的异步双端口RAM设计与实现", 《中国通信集成电路技术与应用研讨会论文集》 * |
王丹: "基于Powerlink的网络化交流伺服系统的研究", 《中国优秀硕士学位论文全文数据库 信息科技辑》 * |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111277664A (zh) * | 2020-02-07 | 2020-06-12 | 北京达佳互联信息技术有限公司 | 业务迁移方法及装置 |
Also Published As
Publication number | Publication date |
---|---|
CN105302001B (zh) | 2017-11-24 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
WO2017041567A1 (zh) | 基于软核处理器的fpga多镜像升级加载方法及装置 | |
CN107391317A (zh) | 一种数据恢复的方法、装置、设备及计算机可读存储介质 | |
CN109447225B (zh) | 一种高速安全加密Micro SD卡 | |
CN106775434A (zh) | 一种NVMe网络化存储的实现方法、终端、服务器及系统 | |
CN107608667A (zh) | 一种业务流程的更新方法及装置 | |
CN107196771A (zh) | 车载网络系统同步休眠方法、系统及网关控制器 | |
WO2011106849A1 (en) | System and method for multiple concurrent virtual networks | |
CN105612498A (zh) | 虚拟机热迁移的方法、虚拟机内存数据处理方法、服务器和虚拟机系统 | |
CN109683877A (zh) | 一种基于SystemC的GPU软硬件交互TLM系统 | |
CN106126465B (zh) | 一种数据传输方法及装置 | |
CN106648758A (zh) | 一种多核处理器boot启动系统及方法 | |
CN104462006B (zh) | 系统级芯片中的多个处理器核间配置同步方法和设备 | |
CN102508631A (zh) | 用于写入任意字节数据的fifo的写入数据处理装置 | |
CN105302001A (zh) | 一种伺服驱动器的控制方法及装置 | |
CN105740177A (zh) | 信号传输的控制方法和装置、以及信号锁存装置 | |
CN102279728A (zh) | 数据存储设备及数据计算方法 | |
CN109947531B (zh) | 超融合一体机的存储容量扩展方法、装置及存储介质 | |
CN102388359B (zh) | 信号保序方法和装置 | |
CN109800202B (zh) | 一种基于pcie的数据传输系统、方法及装置 | |
CN102110066B (zh) | 一种税控加密卡的控制方法 | |
CN103488597A (zh) | 一种先进先出缓存器及其读写数据的方法 | |
CN110275849A (zh) | 用于具有与主机通信的多个组件的dimm的集线器电路 | |
CN102708079A (zh) | 应用于微控制器的控制数据传输的方法及系统 | |
CN106909523B (zh) | 大规模数据传输方法及系统 | |
CN105117353A (zh) | 带有通用数据交互模块的fpga及采用该fpga的信息处理系统 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |