控制用于驱动机器人的电机的速度的方法

文档序号:6278552阅读:359来源:国知局
专利名称:控制用于驱动机器人的电机的速度的方法
技术领域
本发明涉及一种电机速度控制方法,更准确地说,是一种控制用于驱动工业机器人的电机的速度的方法。
通常,工业机器人包括用于在三维空间上移动目标物体或完成所要求的工作的机械部分。机器人包括一个机体,它是支撑机器人的中心部分;一个带有手臂的机械手,用于将装有完成要求的工作所必需的工具的末端执行器移动至工作区域中的特定位置;一个用于控制机械手的控制器;一个用于向机体、机械手和控制器提供电力的动力源。伺服电机安装在机械手的手臂中,控制器控制伺服电机以完成定位工作。
通常,控制器包括一个主控制器、一个位置控制器和一个用于驱动伺服电机的伺服驱动器。主控制器根据当前位置和用户操作指令,比如由用户输入的目标位置,产生速度指令曲线,并将产生的速度指令曲线传送至位置控制器。位置控制器根据接收到的速度指令曲线控制伺服驱动器,并驱动伺服电机将手臂从某一点移动至另一点。同时,位置控制器从安装在伺服电机中的编码器接收当前位置,并反馈控制手臂的位置。


图1a和1a′显示了根据常规技术的用户指令曲线。图1b和1b′分别显示了根据常规技术对应于图1a和1a′的速度指令曲线。图1c和1c′分别显示了根据常规技术对应于图1a和1a′的加速度曲线。
在常规机器人中,主控制器产生一个轨迹计划,如速度曲线,其中最终的目标值已根据如图1a和1a′所示的来自用户的运动指令被设定。然后,主控制器产生一个抛物线计划曲线,如速度指令曲线,其中实际的加速和减速已根据如图1b和1b′所示的轨迹计划被执行。
换言之,对于常规的机器人,主控制器产生一个轨迹计划,来控制驱动机械手的伺服电机,然后根据轨迹计划产生抛物线计划曲线。因此,对用户指令的反应并不快。而且,即使抛物线计划曲线被以平滑曲线中的连续值的形式给出,其中也有一些不可求导的点存在于图1c和1c′所示的加速度曲线的突变之中。由于加速度改变率在不可求导的点附近很急剧,在电机中会产生振动和噪音。振动和噪音降低了就机器人的性能而言的可靠性,并对包括电机在内的机械元件产生冲击,从而缩短了机器人的寿命。振动和噪音在大型设备中尤其严重,比如深受惯性和重力影响的工业机器人。
为了解决上述问题,本发明的一个目的就是提供一种能够进行实时控制的电机速度控制方法,其中速度指令曲线和加速度曲线分别具有平滑曲线中的连续值,而被改变的速度达到电机的实际工作速度所需的时间也减少了。
为了达到本发明的上述目的,本发明提供了一种在电机速度控制装置中使用的电机速度控制方法。电机速度控制装置包括一个用于驱动机器人的电机,一个用于控制电机的位置控制器,和一个主控制器,主控制器产生具有平滑曲线的速度指令曲线,用于根据用户输入的机器人操作指令来控制电机,并将产生的速度指令曲线传送至位置控制器。电机速度控制方法包括一个产生速度指令曲线的步骤,速度指令曲线在预定的机器人控制时间范围内有由平滑曲线组成的加速度曲线,从而使机器人能在实时的基础上被控制。
速度指令曲线产生步骤最好包括一个操作控制准备步骤,以根据下列表达式,获得位置改变量△P、时间间隔最大值TPmax和加速度时间间隔值TAmax公式1 其中,Pg是目标位置,Pc是当前位置,Vm是每单位时间的最大速度,Ap是加速度时间间隔,它是由用户机器人操作指令设定的值。
操作控制准备步骤最好包括根据下列表达式获得时间间隔最大值TPmax和加速度时间间隔值TAmax的步骤 其中时间间隔最大值TPmax小于加速度时间间隔值TAmax。
操作控制准备步骤最好还包括这样一个步骤使用获得的位置改变量△P、获得的时间间隔最大值TPmax和获得的加速度时间间隔值TAmax,并将初始速度Si、最大速度Sm和最终速度Sf的初始值分别设置为0、1和0,根据下列表达式获得一个时间间隔内的位置改变量△P1公式3ΔP1=ΔPTPmax]]>同时,速度指令曲线产生步骤包括下列步骤将时间间隔计数器的初始值TPc设定为0,每当速度指令曲线产生一次,时间间隔计数器就递增1;获得用于计算加速过程中当前速度的值(Aa0、Aa1、Aa2)、用于计算减速过程中当前速度的值(Da0、Da1)、加速时间值Tacc、减速时间值Tdec、加速和恒定速度时间值TPi,以根据下列表达式,获得产生速度指令曲线所必需的变量的值公式4 公式5 当表达式|{Tacc×Si+(Sm-Si)×Tacc2+(Sm-Sf)×Tdec}|]]>的值大于一个预定的常数时,恒定速度时间值TPi和和最大速度Sm最好由下列表达式获得公式6 而且,在上述情况下,当前速度值Vc被计算以产生一个速度指令曲线,而获得的当前速度Vc和当前位置Pc则被增加以修正当前位置Pc①当TPc<Tacc时公式7
③在其余情况下公式9Vc=△P1×Sm。
通过参阅附图对本发明的结构和操作进行更详细的说明,本发明的目的和其它优点将变得更加显而易见。附图中图1a和1a′显示了根据常规技术的用户指令曲线;图1b和1b′分别显示了对应于图1a和1a′的速度指令曲线;图1c和1c′分别显示了对应于图1a和1a′的加速度曲线;图2是根据本发明的最佳实施例的机器人的示意方框图;图3是根据本发明的最佳实施例的主控制器的示意方框图;图4是产生速度指令曲线和加速度曲线的软件方框图;图5是在操作控制器中产生速度指令曲线和加速度曲线的流程图;图6a和6b分别是显示了根据本发明的恒定速度时段内的速度指令曲线和加速度曲线的曲线图;图7a和7b分别是显示了在恒定速度时段内速度被改变为60%的速度的情况下的速度指令曲线和加速度曲线的曲线图;图8a和8b分别是显示了不包含恒定速度时段的时间范围内的速度指令曲线和加速度曲线的曲线图;图9a和9b分别是显示了在不包含恒定速度时段的时间范围内速度被改变为60%的速度的情况下的速度指令曲线和加速度曲线的曲线图;下面将参阅附图,对本发明的一个最佳实施例进行详细的说明。
参阅图2,根据本发明的机器人包括一个主控制器1,一个位置控制器3,用于根据由主控制器1提供的速度指令曲线控制伺服驱动器5并同时反馈控制机器人的位置。伺服驱动器5接收来自位置控制器3的指令以驱动伺服电机7,而安装在机器人中的伺服电机7则有效地驱动机器人。
参阅图3,主控制器1包括一个用于与用户接口装置2通讯的通讯模块11,通过它,机器人的操作指令可由用户编程;一个用于产生速度指令曲线的中央处理器(CPU)13;一个以执行代码的形式存储机器人系统控制程序的只读存储器(ROM)15;一个随机存取存储器(RAM)16,用于存储速度和加速度曲线在CPU13中操作所必需的用户指令程序和变量信息;一个双通道随机存取存储器(DPRAM)17,用于与位置控制器3进行有关速度指令和位置信息的通讯。
根据上述结构,如果电力被提供给机器人,存储在ROM15中的控制执行代码开始运行,而控制执行代码的运行所必需的数据则被记录在RAM16中。如果用户通过使用用户接口装置12输入一个指令程序,CPU13据此产生一个速度指令曲线和一个加速度曲线。
图4是产生在主控制器1中使用的速度指令曲线和加速度曲线的软件方框图。图5是在图4中的操作控制器140中产生速度指令曲线和加速度曲线的流程图。
在下文中,将参阅附图,对由根据本发明的主控制器1产生速度指令曲线的过程进行详细的说明。
当由预定的机器人语言构成的用户指令程序通过用户接口装置2被输入主控制器1时,机器人语言解释器110解释其含义。在被解释指令是操作指令的情况下,机器人语言解释器110将被解释指令发送至操作控制器120。接收一个操作指令和一个目标位置Pg的操作控制器120,执行下述操作通过使用目标位置Pg和其它由用户设定的变量值,由此准备一个操作控制(S1)。即,在操作控制准备步骤(S1),对应于当前位置Pc和目标位置Pg之间的差值的位置改变量△P、时间间隔最大值TPmax和加速度时间间隔值TAmax,可根据下述表达式得出公式1 其中,Pg是目标位置,Pc是当前位置,Vm是每单位时间的最大速度,Ap是加速度时间间隔,它是由用户机器人操作指令设定的值。
此处,由于时间间隔最大值TPmax小于加速度时间间隔值TAmax不合乎逻辑,时间间隔最大值TPmax和加速度时间间隔值TAmax又可由下述表达式获得公式2 使用获得的位置改变量△P1、获得的时间间隔最大值TPmax和获得的加速度时间间隔值TAmax,一个时间间隔内的位置改变量△P1可根据下列表达式获得 初始速度Si、最大速度Sm和最终速度Sf的初始值分别被设置为0、1和0。
如上所述,如果位置改变量△P、时间间隔最大值TPmax、加速度时间间隔值TAmax和一个时间间隔内的位置改变量△P1可被获得,而且随后初始速度Si、最大速度Sm和最终速度Sf已被设定,操作控制准备步骤S1就完成了。
然而,在操作控制准备步骤S1中获得的位置改变量△P小于由存储在ROM15中的机器人控制程序设定的恒定值--最小位移量MINPOSITION的情况下,可以认为机器人已经被定位于目标位置,操作控制就完成了。
如果操作控制准备已经完成,操作控制器120获得一个产生速度指令曲线所必需的变量(S2)。在此步骤S2中,可获得用于计算加速过程中当前速度的值(Aa0、Aa1、Aa2)、用于计算减速过程中当前速度的值(Da0、Da1)、加速时间值Tacc、减速时间值Tdec、加速和恒定速度时间值TPi。
根据下述表达式,加速时间值Tacc和减速时间值Tdec首先被获得,然后,加速和恒定速度时间值TPi被获得公式4 TPi=TPmax-(Tacc×Si+(Sm-Sf)×Tacc2+(Sm-Sf)×Tdec2);]]>此处,当由表达式|{Tacc×Si+(Sm-Si)×Tacc2+(Sm-Sf)×Tdec}|]]>得出的值大于由存储在ROM15中的机器人系统控制程序设定的预定的恒定值--速度修正参考值VELCOMPENSATION时,就超出了由机器人用户设定的可靠控制范围。因此,恒定速度时间值TPi和最大速度Sm可根据下列表达式再次获得公式6 然后,Aa0、Aa1、Aa2、Da0和Da1可由下述表达式得出公式5 同时,TPc是一个时间间隔计数器,其初始值被设定为0,每当速度指令曲线产生一次,时间间隔计数器就递增1。
下一步骤S3,是一个由计算结果产生速度指令曲线的步骤。而且,当前速度值Vc被计算以产生一个速度指令曲线,在这种情况下,当前速度值Vc可由下列表达式分别计算 ③在其余情况下公式9Vc=ΔP1×Sm]]>。
由于获得的当前速度Vc表示每单位时间的当前移动距离,当前速度Vc被加入当前位置Pc中,以对当前位置Pc进行修正。
然后,一个速度指令传送器130将Pc值存储于DRPOM17中,并通知位置控制器3当前位置已被修正(S4)。
而且,操作控制器120将第一次输入的目标位置Pg和被修正的当前位置Pc之间的位置改变量△P,与最小位移量MINPOSITION相比较。如果位置改变量小于最小位移量,控制器120就认为当前位置已是目标位置(S5),然后就完成操作控制。然而,如果位置改变量等于或大于最小位移量,控制器120就认为当前位置不是目标位置(S5),并且检查用户指令速度S是否被修改(S6)。
如果判定用户指令速度S在步骤S6中没有被修改,程序返回至速度指令曲线产生步骤S3以到达目标位置。如果判定用户指令速度S在步骤S6中已经被修改,产生速度指令曲线所必需的变量在步骤S2中再次被获得。然后,根据最新得到的速度指令曲线,速度指令曲线再次被产生(S3)。
如果通过上述过程,认为已到达目标位置,操作控制器120就结束操作控制。
图6a至图9b显示了通过上述过程获得的速度指令曲线和加速度曲线。更详细地说,图6a和6b分别是显示了根据本发明的恒定速度时段内的速度指令曲线和加速度曲线的曲线图;图7a和7b分别是显示了在恒定速度时段内速度被改变为60%的速度的情况下的速度指令曲线和加速度曲线的曲线图;图8a和8b分别是显示了不包含恒定速度时段的时间范围内的速度指令曲线和加速度曲线的曲线图;图9a和9b分别是显示了在不包含恒定速度时段的时间范围内速度被改变为60%的速度的情况下的速度指令曲线和加速度曲线的曲线图。
如图6a至图9b所示,在恒定速度时段内,即使速度变化已经发生,速度指令曲线和加速度曲线也分别具有平滑曲线中的连续改变量。因此,从附图中可以看出,在加速度曲线中,和在速度指令曲线中一样,不存在急剧变化的点。
如上所述,本发明提供了一种电机速度控制方法,在速度指令曲线和加速度曲线中都有连续的改变量,相应地减少了振动和噪音,并改善了控制的可靠性。
此外,常规的电机速度控制方法,采取了两个步骤,即,根据用户操作指令产生目标值的轨迹计划,然后才产生一个速度指令曲线。而本电机速度控制方法,可根据目标值立即产生一个速度指令曲线。这样,即使在速度指令曲线的产生过程中用户速度指令被改变,速度指令曲线也能立即产生。相应地,对速度改变的反应足够快,从而确保机器人在实时基础上被控制。
尽管已对本发明连同其最佳实施例进行了说明,但本领域技术熟练的人可以理解的是,在不超出附加的权利要求所限定的本发明的精神和范围的情况下,可对本发明进行本文未特别说明的增添、改进、替代和删改。
权利要求
1.一种在电机速度控制装置中使用的电机速度控制方法,该电机速度控制装置包括一个用于驱动机器人的电机,一个用于控制电机的位置控制器,和一个主控制器,主控制器产生具有平滑曲线的速度指令曲线,用于根据用户输入的机器人操作指令来控制电机,并将产生的速度指令曲线传送至位置控制器,其特征在于,该电机速度控制方法包括一个产生速度指令曲线的步骤,该速度指令曲线在预定的机器人控制时间范围内有由平滑曲线组成的加速度曲线,从而使机器人能在实时的基础上被控制。
2.根据权利要求1所述的电机速度控制方法,其特征在于,所述速度指令曲线产生步骤包括一个操作控制准备步骤,以根据下列表达式,获得位置改变量△P、时间间隔最大值TPmax和加速度时间间隔值TAmax公式1 其中,Pg是目标位置,Pc是当前位置,Vm是每单位时间的最大速度,Ap是加速度时间间隔,它是由用户机器人操作指令设定的值。
3.根据权利要求2所述的电机速度控制方法,其特征在于,所述的操作控制准备步骤包括根据下列表达式获得时间间隔最大值TPmax和加速度时间间隔值TAmax的步骤公式2 其中时间间隔最大值TPmax小于加速度时间间隔值TAmax。
4.根据权利要求2或3所述的电机速度控制方法,其特征在于,所述的操作控制准备步骤包括如下步骤使用获得的位置改变量△P、获得的时间间隔最大值TPmax和获得的加速度时间间隔值TAmax,并将初始速度Si、最大速度Sm和最终速度Sf的初始值分别设置为0、1和0,根据下列表达式获得一个时间间隔内的位置改变量△P1公式3ΔP1=ΔPTPmax]]>
5.根据权利要求4所述的电机速度控制方法,其特征在于,所述的速度指令曲线产生步骤包括将时间间隔计数器的初始值TPc设定为0,每当速度指令曲线产生一次,时间间隔计数器就递增1;获得用于计算加速过程中当前速度的值(Aa0、Aa1、Aa2)、用于计算减速过程中当前速度的值(Da0、Da1)、加速时间值Tacc、减速时间值Tdec、加速和恒定速度时间值TPi,以根据下列表达式,获得产生速度指令曲线所必需的变量的值公式4 公式5
6.根据权利要求5所述的电机速度控制方法,其特征在于,当由表达式|{Tacc×Si+(Sm-Si)×Tacc2+(Sm-Sf)×Tdec}|]]>得出的值大于一个预定的常数时,恒定速度时间值TPi和和最大速度Sm由下列表达式获得公式6
7.根据权利要求6所述的电机速度控制方法,其特征在于,在下述情况下,当前速度值Vc被计算以产生一个速度指令曲线,而获得的当前速度Vc和当前位置Pc则被增加以修正当前位置Pc①当TPc<Tacc时公式7Vc=ΔP1×(Aa0+Aa1×TPc×TPc+Aa2×TPc×TPc×TPc);]]>②当TPc<TPi时公式8 ③在其余情况下公式9Vc=ΔP1×Sm]]>。
全文摘要
一种电机速度控制装置中的电机速度控制方法。电机速度控制装置包括:一电机,一位置控制器,和一主控制器,主控制器产生速度指令曲线,根据机器人操作指令控制电机,并将速度指令曲线传送至位置控制器。电机速度控制方法包括一产生速度指令曲线的步骤,速度指令曲线在预定的机器人控制时间范围内有平滑曲线组成的加速度曲线,使机器人能在实时基础上被控制。因此,电机的振动和噪音减少了,增强了控制的可靠性。
文档编号G05D3/12GK1284784SQ9911169
公开日2001年2月21日 申请日期1999年8月24日 优先权日1999年6月25日
发明者洪佣俊 申请人:三星电子株式会社
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1