一种电控伺服系统控制的方法、电控伺服系统及机器人
技术领域
本发明涉及控制技术领域,尤其涉及一种电控伺服系统控制的方法、电控伺服系统、机器人及计算机可读存储介质。
背景技术
为了达到精准控制伺服电机的目的,伺服系统大都采用闭环控制的方式。然而对于不同的运动控制系统,闭环的模式也不尽相同,例如当为了实现对位置的跟踪时,通常会采用包含位置环、速度环和电流环的三环控制系统。
由于速度环的PI控制器具有积分调节功能,随着运算的不断积累,当控制量超过执行机构的极限控制量时,就会发生超调的现象,从而引起系统的震荡,尤其是当多个伺服系统串联在一起时,这种效应便会被再次放大,从而出现发散性震荡的现象,例如对于服务、娱乐类机器人而言,当受到外力冲击时,机器人肢体(例如手臂)上的多个串联的电控伺服系统会因受到外力冲击而出现超调现象,导致机器人肢体产生来回摇晃且难以停下来的现象。
故有必要提出一种新的技术方案,以解决上述技术问题。
发明内容
鉴于此,本发明实施例提供了一种电控伺服系统控制的方法、电控伺服系统及机器人,通过对PI控制器的参数进行整定,可以将其等效为一个P控制器,从而避免在多个独立伺服系统串联时由于受到外力干扰而出现较大震荡的现象,有利于提高电控伺服系统整体的稳定性。
本发明实施例的第一方面提供了一种电控伺服系统控制的方法,应用于伺服电机,所述伺服电机包括PI控制器,所述方法包括:
获取所述PI控制器在整定前的相关参数,其中,所述相关参数包括比例系数和积分系数;
获取伺服电机当前的转角,并计算获取的当前转角与期望转角的角度偏差;
根据所述比例系数、积分系数和角度偏差,对所述PI控制器的参数进行整定。
本发明实施例的第二方面提供了一种电控伺服系统,包括PI控制器,所述电控伺服系统还包括:
获取模块,用于获取所述PI控制器在整定前的相关参数,其中,所述相关参数包括比例系数和积分系数;
计算模块,用于获取电控伺服系统受到负载后的当前转角,并计算获取的当前转角与期望转角的角度偏差;
整定模块,用于根据所述比例系数、积分系数和角度偏差,对所述PI控制器的参数进行整定。
本发明实施例的第三方面提供了一种机器人,包括若干串联的电控伺服系统,所述电控伺服系统包括存储器,处理器及存储在存储器上并可在处理器上运行的计算机程序,上述处理器执行上述计算机程序时实现上述第一方面提及的方法。
本发明实施例的第四方面提供了一种计算机可读存储介质,该计算机可读存储介质上存储有计算机程序,上述计算机程序被处理器执行时实现上述第一方面提及的方法。
本发明实施例与现有技术相比存在的有益效果是:在本实施例中,首先获取所述PI控制器在整定前的相关参数,其中,所述相关参数包括比例系数和积分系数,然后获取伺服电机当前的转角,并计算获取的当前转角与期望转角的角度偏差,最后根据所述比例系数、积分系数和角度偏差,对所述PI控制器的参数进行整定。与现有技术相比,本发明实施例通过对PI控制器的参数进行整定,可以将其等效为一个P控制器,从而避免在多个独立伺服系统串联时由于受到外力干扰而出现较大震荡的现象,有利于提高电控伺服系统整体的稳定性,具有较强的易用性和实用性。
附图说明
为了更清楚地说明本发明实施例中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1-a为本发明实施例一提供的电控伺服系统控制的方法的流程示意图;
图1-b为本发明实施例一提供的伺服电机三环控制系统示意图;
图2-a为本发明实施例二提供的电控伺服系统控制的方法的流程示意图;
图2-b为本发明实施例二提供的将多个伺服系统串联为一个倒立摆系统的示意图;
图2-c为本发明实施例二提供的将用P控制器代替原伺服系统中速度环的PI控制器的示意图;
图3为本发明实施例三提供的电控伺服系统的结构示意图;
图4为本发明实施例四提供的机器人的结构示意图。
具体实施方式
以下描述中,为了说明而不是为了限定,提出了诸如特定系统结构、技术之类的具体细节,以便透彻理解本发明实施例。然而,本领域的技术人员应当清楚,在没有这些具体细节的其它实施例中也可以实现本发明。在其它情况中,省略对众所周知的系统、装置、电路以及方法的详细说明,以免不必要的细节妨碍本发明的描述。
应当理解,当在本说明书和所附权利要求书中使用时,术语“包括”指示所描述特征、整体、步骤、操作、元素和/或组件的存在,但并不排除一个或多个其它特征、整体、步骤、操作、元素、组件和/或其集合的存在或添加。
还应当理解,在此本发明说明书中所使用的术语仅仅是出于描述特定实施例的目的而并不意在限制本发明。如在本发明说明书和所附权利要求书中所使用的那样,除非上下文清楚地指明其它情况,否则单数形式的“一”、“一个”及“该”意在包括复数形式。
还应当进一步理解,在本发明说明书和所附权利要求书中使用的术语“和/或”是指相关联列出的项中的一个或多个的任何组合以及所有可能组合,并且包括这些组合。
如在本说明书和所附权利要求书中所使用的那样,术语“如果”可以依据上下文被解释为“当...时”或“一旦”或“响应于确定”或“响应于检测到”。类似地,短语“如果确定”或“如果检测到[所描述条件或事件]”可以依据上下文被解释为意指“一旦确定”或“响应于确定”或“一旦检测到[所描述条件或事件]”或“响应于检测到[所描述条件或事件]”。
应理解,本实施例中各步骤的序号的大小并不意味着执行顺序的先后,各过程的执行顺序应以其功能和内在逻辑确定,而不应对本发明实施例的实施过程构成任何限定。
需要说明的是,本实施例中的“第一”、“第二”等描述,是用于区分不同的区域、模块等,不代表先后顺序,也不限定“第一”和“第二”为不同的类型。
为了说明本发明所述的技术方案,下面通过具体实施例来进行说明。
实施例一
图1-a是本发明实施例一提供的电控伺服系统控制的方法的流程示意图,该方法应用于伺服电机,所述伺服电机包括PI控制器,所述方法可以包括以下步骤:
S101:获取所述PI控制器在整定前的相关参数,其中,所述相关参数包括比例系数和积分系数。
所述PI控制器,又称PI调节器,是一种线性控制器,能够根据给定值与实际输出值得到控制偏差,再将偏差的比例部分和积分部分通过线性组合构成控制量,从而对被控对象进行控制。
在本发明实施例中,所述PI控制器为伺服系统中速度环的PI控制器。
伺服系统(servo mechanism)又称随动系统,用来精确地跟随或复现某个过程的反馈控制系统。在多数情况下,伺服系统专指被控制量(系统的输出量)是机械位移、速度或加速度的反馈控制系统,其作用是使输出的机械位移(或转角)准确地跟踪输入的位移(或转角),从而带动控制对象按照指定规律做机械运动。
需要说明的是,本发明实施例中的伺服系统是由三个闭环组成的PID负反馈调节系统,并且这个三个环自外向内依次为位置环、速度环和电流环,位置环以位置信号作为反馈信号的控制环,速度环以速度信号作为反馈信号的控制环,电流环以电流信号作为反馈信号的控制环。
为了便于理解和说明,图1-b给出了本发明实施例中的伺服电机三环控制系统示意图,其中电流环的PI控制器(未示出)。
由于本实施例主要是对PI控制器中的比例系数和积分系数进行整定,因此主要获取比例系数和积分系数即可。
在一个实施例中,在执行上述步骤S101之前,预先输入能够使上述伺服系统具有快速响应和较高稳定性特点的比例系数和积分系数。
S102:获取伺服电机当前的转角,并计算获取的当前转角与期望转角的角度偏差。
在一个实施例中,可以先向伺服系统中施加满足要求的恒定外部负载后,再获取伺服电机当前的转角。
S103:根据所述比例系数、积分系数和角度偏差,对所述PI控制器的参数进行整定。
在一个实施例中,可以先整定比例系数,再整定积分系数。
在一个实施例中,可以按照纯P控制器的特点来对所述PI控制器的参数进行整定。
由上可见,本发明实施例中,通过对PI控制器的参数进行整定,可以将其等效为一个P控制器,从而避免机器人内的多个独立伺服系统在串联时由于受到外力干扰而出现超调的现象,有利于提高机器人的稳定性,具有较强的易用性和实用性。
实施例二
图2-a为本发明实施例二提供的电控伺服系统控制的方法的流程示意图,是对上述实施例一中的步骤S102、S103的进一步细化和说明,该方法应用于伺服电机,所述伺服电机包括PI控制器,所述方法可以包括以下步骤:
S201:获取所述PI控制器在整定前的相关参数,其中,所述相关参数包括比例系数和积分系数。
其中,上述步骤S201与实施例一中的步骤S101相同,其具体实施过程可参见步骤S101的描述,在此不作重复赘述。
S202:判断当前时刻伺服电机的转角是否达到最大值,若当前时刻伺服电机的转角达到最大值,则获取从当前时刻到伺服系统处于稳态时每个采样周期内的转角偏差,对获取的转角偏差进行积分处理,并将积分后的结果作为当前转角与期望转角的转角偏差。
其中,所述期望转角为伺服系统处于稳态时伺服电机的转角。
在一个实施例中,可以在向伺服系统施加恒定外部负载之后,判断当前时刻伺服电机的转角是否达到最大值。
应理解,若将伺服电机的转角达到最大值的时刻记为t1,将伺服系统处于稳态的时刻记为t2,则可将t1~t2作为总的采样时长t,这样在从时刻t1开始每间隔固定采样周期采样一次,即可获得多组采样值。
还应理解,由于积分是一个累加的过程,因此在对获取的转角偏差进行积分处理后,可以获得当前时刻的转角与稳态时的转角偏差。
S203:判断积分后的结果是否收敛到预设值。
S204:若积分后的结果收敛到预设值,则根据所述比例系数、积分系数和积分后的结果,计算在将PI控制器等效为P控制器时的等效比例系数,根据计算的所述等效比例系数,将所述PI控制器的比例系数整定为所述等效比例系数,并将所述PI控制器的积分系数整定为0。
应理解,在执行上述步骤S204后,该伺服系统中速度环的PI控制器将会等效为一个P控制器,并且由于是在伺服系统处于稳态时获取该等效系数,因此整定后的伺服系统也将依然能够具有很好的稳态特性,同样可以达到原来PD-PI控制系统的稳态控制效果;此外,由于去除了积分调节环节,可以有效地避免在多个独立系统串联时由于受到外界干扰而出现较大震动的现象。
以一种具体的应用场景为例进行解释和说明。如图2-b所示,当将左侧若干个如图1-b所示的独立的伺服系统串联在一起形成右侧的级联系统后,可以将其应用在机器人的控制中,比如:若将右侧级联后的系统用于控制某个机器人的一条腿,那么该级联后的系统可以自下而上依次分别控制踝关节、膝关节和髋关节,当向这个级联后的倒立摆系统的重心侧施加外力F时,组成该级联系统的各个独立系统就会按照各自的振动频率发生震荡,当各自震荡的频率不同时,就会出现整个级联系统不断发散性的震荡,极易出现机器人被推到的现象,从而出现站立不稳的情形,此时若能先将每个独立伺服系统中速度环的PI控制器替换为为P控制器,那么就能够有效地避免由于I环的引入而出现级联系统震荡难以收敛的情形。
在一个实施例中,根据所述比例系数、积分系数和积分结果,计算在将PI控制器等效为P控制器时的等效比例系数的公式为:
其中,K'p2为PI控制器在整定后的比例系数,也即等效比例系数,Kp2为PI控制器在整定前的比例系数,Ki2为PI控制器在整定前的积分系数,ep(k)为计算的每个位置偏差,ep为允许的稳定偏差,N为采样周期的数目。
为了便于理解可以根据上述公式将伺服系统中速度环的PID控制器等效为P控制器,下面给出具体的推导过程:
根据图1-a可知,在整定前伺服系统中PD控制器和PI控制器的输出分别为:
其中,Pr为位置环的输入值,Pf为位置环的反馈值,Vr为速度环的输入值,Vf为速度环的反馈值,Ir为电流环的输入值,Kp1为整定前伺服系统中PD控制器的比例系数,Kd1为整定前伺服系统中PD控制器的微分系数,Kp2为整定前伺服系统中PI控制器的比例系数,Ki2为整定前伺服系统中PI控制器的积分系数,ev(k)为每个采样周期内的速度偏差。
应理解,在伺服系统受到恒定外力处于稳态时,位置环的PD控制器的输出为0,并且此时位置环的输入和反馈均为恒值。
此时,上述公式(1)可以简化为如下公式:
Vr=Kp1×(Pr-Pf) (3)
根据上述公式(3)可将上述公式(2)化简为如下公式:
考虑到稳态时,速度偏差:ev=Vr-Vf=Kp1×(Pr-Pf) (5)
位置偏差:ep=Pr-Pf (6)
联合上述公式(4)、(5)和(6)可得:
假设如图2-c所示,现在用P控制器代替原伺服系统中速度环的PI控制器,并记该P控制器的参数为K'p2,则此时电流环的输入参考值应满足如下关系式:
Ir=K'p2×(Vr-Vf) (8)
结合上述公式(5)和(6)可对上述公式(8)做进一步的变形得到如下的公式:
Ir=Kp1×K'p2×ep (9)
结合上述公式(7)和(9)可得该P控制器的参数为:
应理解,在获得上述公式(10)后,便可以获取将原伺服系统中速度环PI控制器等效为P控制器时的等效比例系数。因此,在根据上述公式对伺服系统中速度环的PI控制器参数进行整定时,只需将原比例系数Kp2整定为K'p2,将原积分系数Ki2整定为0即可。
由上可见,本申请实施例二相比于实施例一,给出了对控制器的参数进行整定的具体实现方式,可以根据原PI控制器的参数和积分后的结果来对原PI控制器的参数进行整定,有利于去除积分环节,避免在多个独立系统串联时由于受到外界干扰而出现发散性震动的问题,具有较强的易用性和实用性。
实施例三
图3是本发明实施例三提供的电控伺服系统的结构示意图,为了便于说明,仅示出了与本发明实施例相关的部分。
该电控伺服系统可以是内置于机器人内的软件单元、硬件单元或者软硬结合的单元,也可以作为独立的挂件集成到机器人中。
所述电控伺服系统,包括:
获取模块31,用于获取所述PI控制器在整定前的相关参数,其中,所述相关参数包括比例系数和积分系数;
计算模块32,用于获取电控伺服系统在受到负载后的当前转角,并计算获取的当前转角与期望转角的角度偏差;
整定模块33,用于根据所述比例系数、积分系数和角度偏差,对所述PI控制器的参数进行整定。
在一个实施例中,所述计算模块32具体包括:
判断单元,用于判断当前时刻电控伺服系统的转角是否达到最大值;
获取单元,用于若当前时刻电控伺服系统的转角达到最大值,则获取从当前时刻到电控伺服系统处于稳态时每个采样周期内的转角偏差;
积分单元,用于对获取的转角偏差进行积分处理,并将积分后的结果作为当前转角与期望转角的转角偏差。
在一个实施例中,所述装置还包括:
判断模块,用于判断积分后的结果是否收敛到预设值。
在一个实施例中,所述整定模块33具体包括:
计算单元,用于根据所述比例系数、积分系数和积分结果,计算在将PI控制器等效为P控制器时的等效比例系数;
整定单元,用于根据计算的所述等效比例系数,将所述PI控制器的比例系数整定为所述等效比例系数,并将所述PI控制器的积分系数整定为0。
在一个实施例中,根据所述比例系数、积分系数和积分结果,计算在将PI控制器等效为P控制器时的等效比例系数的公式为:
其中,K'p2为PI控制器在整定后的比例系数,Kp2为PI控制器在整定前的比例系数,Ki2为PI控制器在整定前的积分系数,ep(k)为计算的每个位置偏差,ep为允许的稳定偏差,N为采样周期的数目。
实施例四
图4是本发明实施例四提供的机器人的结构示意图。如图4所示,该实施例的机器人4包括若干如图2-b所示的串联在一起的电控伺服系统,所述电控伺服系统包括处理器40、存储器41以及存储在所述存储器41中并可在所述处理器40上运行的计算机程序42。所述处理器40执行所述计算机程序42时实现上述方法实施例一中的步骤,例如图1所示的步骤S101至S103。或者,实现上述方法实施例二中的步骤,例如图2所示的步骤S201至S204。所述处理器40执行所述计算机程序42时实现上述各装置实施例中各模块/单元的功能,例如图3所示模块31至33的功能。
示例性的,所述计算机程序42可以被分割成一个或多个模块/单元,所述一个或者多个模块/单元被存储在所述存储器41中,并由所述处理器40执行,以完成本发明。所述一个或多个模块/单元可以是能够完成特定功能的一系列计算机程序指令段,该指令段用于描述所述计算机程序42在所述机器人4中的执行过程。例如,所述计算机程序42可以被分割成获取模块、计算模块和整定模块,各模块具体功能如下:
获取模块,用于获取所述PI控制器在整定前的相关参数,其中,所述相关参数包括比例系数和积分系数;
计算模块,用于获取电控伺服系统在受到负载后的当前转角,并计算获取的当前转角与期望转角的角度偏差;
整定模块,用于根据所述比例系数、积分系数和角度偏差,对所述PI控制器的参数进行整定。
所述机器人可包括,但不仅限于,处理器40、存储器41。本领域技术人员可以理解,图4仅仅是机器人4的示例,并不构成对机器人4的限定,可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件,例如所述机器人还可以包括输入输出设备、网络接入设备、总线等。
所述处理器40可以是中央处理单元(Central Processing Unit,CPU),还可以是其他通用处理器、数字信号处理器(Digital Signal Processor,DSP)、专用集成电路(Application Specific Integrated Circuit,ASIC)、现成可编程门阵列(Field-Programmable Gate Array,FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。
所述存储器41可以是所述机器人4的内部存储单元,例如机器人4的硬盘或内存。所述存储器41也可以是所述机器人4的外部存储设备,例如所述机器人4上配备的插接式硬盘,智能存储卡(Smart Media Card,SMC),安全数字(Secure Digital,SD)卡,闪存卡(Flash Card)等。进一步地,所述存储器41还可以既包括所述机器人4的内部存储单元也包括外部存储设备。所述存储器41用于存储所述计算机程序以及所述机器人所需的其他程序和数据。所述存储器41还可以用于暂时地存储已经输出或者将要输出的数据。
所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的系统,装置和单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
在上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述或记载的部分,可以参见其它实施例的相关描述。
本领域普通技术人员可以意识到,结合本文中所公开的实施例描述的各实施例的模块、单元和/或方法步骤,能够以电子硬件、或者计算机软件和电子硬件的结合来实现。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本发明的范围。
在本申请所提供的几个实施例中,应该理解到,所揭露的系统,装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本发明各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
所述集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明实现上述实施例方法中的全部或部分流程,也可以通过计算机程序来指令相关的硬件来完成,所述的计算机程序可存储于一计算机可读存储介质中,该计算机程序在被处理器执行时,可实现上述各个方法实施例的步骤。其中,所述计算机程序包括计算机程序代码,所述计算机程序代码可以为源代码形式、对象代码形式、可执行文件或某些中间形式等。所述计算机可读介质可以包括:能够携带所述计算机程序代码的任何实体或装置、记录介质、U盘、移动硬盘、磁碟、光盘、计算机存储器、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,RandomAccess Memory)、电载波信号、电信信号以及软件分发介质等。需要说明的是,所述计算机可读介质包含的内容可以根据司法管辖区内立法和专利实践的要求进行适当的增减,例如在某些司法管辖区,根据立法和专利实践,计算机可读介质不包括电载波信号和电信信号。
以上所述,以上实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的精神和范围。