一种实现机器人双手臂同步控制的方法及系统转让专利

申请号 : CN201410624774.1

文献号 : CN104440910B

文献日 :

基本信息:

PDF:

法律信息:

相似专利:

发明人 : 郭丽石航飞陈志锦王钤吴航李正丽李勇葛俊佐

申请人 : 绵阳市维博电子有限责任公司

摘要 :

本发明公开了一种实现机器人双手臂同步控制的方法及系统,该方法包括,电控系统中央处理单元接收速度采集器反馈的速度响应值,分别计算第一速度响应值、第二速度响应值与给定速度值的差值绝对值,对应得到第一差值绝对值和第二差值绝对值,当第一差值绝对值与第二差值绝对值均在第一误差范围内时,计算第一速度响应值与第二速度响应值之间的差值绝对值,得到相对差值绝对值,当相对差绝对值在第二误差范围内时,控制左手驱动电机和右手驱动电机运转。与现有技术相比,本发明有效地解决了机器人双手臂难以协调,同步率低的问题,提高了机器人双手臂的同步控制性能。

权利要求 :

1.一种实现机器人双手臂同步控制的方法,其特征在于,该方法包括以下步骤:

步骤A:电控系统中央处理单元接收上位机发送的给定速度值,向PLC发送控制左手驱动电机和右手驱动电机按照所述给定速度值进行运转的速度指令;

步骤B:所述PLC接收所述电控系统中央处理单元发出的速度指令,控制所述左手驱动电机和所述右手驱动电机依据所述给定速度值进行运转;

步骤C:速度采集器采集所述左手驱动电机的第一速度响应值和所述右手驱动电机的第二速度响应值,并将所述速度响应值反馈给所述电控系统中央处理单元;

步骤D:所述电控系统中央处理单元分别计算所述第一速度响应值、所述第二速度响应值与所述给定速度值的差值绝对值,对应得到第一差值绝对值和第二差值绝对值;

步骤E:当所述第一差值绝对值和所述第二差值绝对值均在第一误差范围内时,计算所述第一速度响应值和所述第二速度响应值之间的差值绝对值,得到相对差值绝对值;

步骤F:当所述相对差值绝对值在第二误差范围内时,控制所述左手驱动电机和所述右手驱动电机运转;

其中,所述相对差值绝对值在第二误差范围内是指相对差值绝对值小于等于一个非负常数。

2.如权利要求1所述的实现机器人双手臂同步控制的方法,其特征在于,还包括:

当所述第一差值绝对值和/或所述第二差值绝对值不在所述第一误差范围内,调整其差值绝对值不在所述第一误差范围内的驱动电机的运转速度,直到所述速度采集器采集到的所述驱动电机的速度响应值与所述给定速度值的差值绝对值在所述第一误差范围内,进入步骤E。

3.如权利要求2所述的实现机器人双手臂同步控制的方法,其特征在于,还包括:

当所述相对差值绝对值不在所述第二误差范围内,则调整所述左手驱动电机和/或所述右手驱动电机的运转速度,直到所述相对差值绝对值在所述第二误差范围内。

4.如权利要求3所述的实现机器人双手臂同步控制的方法,其特征在于,所述调整其差值绝对值不在所述第一误差范围内的驱动电机的运转速度的过程包括:利用控制算法对差值绝对值不在所述第一误差范围内的驱动电机的速度调节参数进行整定,并用调整后的所述速度调节参数调节所述驱动电机的速度。

5.如权利要求4所述的实现机器人双手臂同步控制的方法,其特征在于,所述控制算法为基于BP神经网络的PID控制算法。

6.一种实现机器人双手臂同步控制的系统,该系统包括上位机、左手驱动电机和右手驱动电机,其特征在于,该系统还包括:电控系统中央处理单元、可编程逻辑控制器PLC和速度采集器组,其中:所述电控系统中央处理单元的输入端与所述上位机相连,输出端与所述PLC相连,用于接收所述上位机发送的给定速度值,向PLC发送控制所述左手驱动电机和所述右手驱动电机按照所述给定速度值进行运转的速度指令;

所述PLC接收所述电控系统中央处理单元发出的速度指令,控制所述左手驱动电机和所述右手驱动电机依据所述给定速度进行运转;

所述速度采集器组包含两个速度采集器,所述两个速度采集器分别采集所述左手驱动电机的第一速度响应值和所述右手驱动电机的第二速度响应值,并将所述速度响应值反馈给所述电控系统中央处理单元;

所述电控系统中央处理单元接收所述速度采集器组反馈的速度响应值,分别计算所述左手驱动电机、所述右手驱动电机的速度响应值与所述给定速度值的差值绝对值,对应得到第一差值绝对值和第二差值绝对值,当所述第一差值绝对值与所述第二差值绝对值均在第一误差范围内时,计算所述第一速度响应值与所述第二速度响应值之间的差值绝对值,得到相对差值绝对值,当所述相对差绝对值在第二误差范围内时,控制所述左手驱动电机和所述右手驱动电机运转;

其中,所述相对差值绝对值在第二误差范围内是指相对差值绝对值小于等于一个非负常数。

7.如权利要求6所述的实现机器人双手臂同步控制的系统,其特征在于,所述电控系统中央处理单元还用于,当所述第一差值绝对值和/或所述第二差值绝对值不在所述第一误差范围内,调整其差值绝对值不在所述第一误差范围内的驱动电机的运转速度,直到所述速度采集器采集到的所述驱动电机的速度响应值与所述给定速度值的差值绝对值在所述第一误差范围内,当所述相对差值绝对值不在所述第二误差范围内,则调整所述左手驱动电机和/或所述右手驱动电机的运转速度,直到所述相对差值绝对值在所述第二误差范围内。

8.如权利要求7所述的实现机器人双手臂同步控制的系统,其特征在于,所述速度采集器为光电编码器。

9.如权利要求7所述的实现机器人双手臂同步控制的系统,其特征在于,所述电控系统中央处理单元的输出端与PWM门级驱动电路相连,所述PWM门级驱动电路通过第一智能功率模块IPM和第二智能功率模块IPM与所述PLC相连。

说明书 :

一种实现机器人双手臂同步控制的方法及系统

技术领域

[0001] 本发明涉及多电机同步控制领域,特别是涉及一种实现机器人双手臂同步控制的方法及系统。

背景技术

[0002] 多电机同步系统是现代工业生产中应用比较广泛的电控系统,它广泛应用于数控机床、工业缝纫机、机器人以及火控等领域。随着工业生产线自动化程度和控制精度要求的提高,对伺服控制系统的实时性、协作性和精准性也提出了更高的要求,因此越来越多地场合需要两台或者多台电机同时工作来达到保证精度、提高性能的目的。这其中,多电机同步系统最典型的应用就是工业机器人。
[0003] 传统机器人同步控制中经常会出现机器人手臂难以协调、同步率低等问题。为此,现有技术对机器人的同步控制方法做了一些改进,现有机器人双手臂同步控制过程主要是:当多台电机需要做同步运动时,首先将信号给定于其中的某一台电机,且各电机采用串联运行方式,即前一台电机的输出速度作为下一台电机的速度给定。这种控制方法虽然简单易行,但在阶跃输入启动过程的升速阶段,后一台电机的转速要比前一台电机的转速稍有滞后,启动过程跟随性能不是很理想,抗干扰能力低,且当一台电机发生故障时,势必会影响其后的所有电机运行。可见,现有技术中的机器人的双手臂控制方法上存在的一些不足使得其双手臂仍然存在难以协调,同步率低的问题,同步控制性能不高。
[0004] 因此,如何有效提高机器人双手臂的同步控制性能是本领域技术人员目前需要解决的技术问题。

发明内容

[0005] 本发明的目的是提供一种实现机器人双手臂同步控制的方法,有效地解决了机器人双手臂难以协调,同步率低的问题,提高了机器人双手臂的同步控制性能;本发明的另一目的是提供一种实现机器人双手臂同步控制的系统。
[0006] 为解决上述技术问题,本发明提供了一种实现机器人双手臂同步控制的方法,该方法包括以下步骤:
[0007] 步骤A:电控系统中央处理单元接收上位机发送的给定速度值,向PLC发送控制左手驱动电机和右手驱动电机按照所述给定速度值进行运转的速度指令;
[0008] 步骤B:所述PLC接收所述电控系统中央处理单元发出的速度指令,控制所述左手驱动电机和所述右手驱动电机依据所述给定速度值进行运转;
[0009] 步骤C:速度采集器采集所述左手驱动电机的第一速度响应值和所述右手驱动电机的第二速度响应值,并将所述速度响应值反馈给所述电控系统中央处理单元;
[0010] 步骤D:所述电控系统中央处理单元分别计算所述第一速度响应值、所述第二速度响应值与所述给定速度值的差值绝对值,对应得到第一差值绝对值和第二差值绝对值;
[0011] 步骤E:当所述第一差值绝对值和所述第二差值绝对值均在第一误差范围内时,计算所述第一速度响应值和所述第二速度响应值之间的差值绝对值,得到相对差值绝对值;
[0012] 步骤F:当所述相对差值绝对值在第二误差范围内时,控制所述左手驱动电机和所述右手驱动电机运转。
[0013] 优选的,还包括:
[0014] 当所述第一差值绝对值和/或所述第二差值绝对值不在所述第一误差范围内,调整其差值绝对值不在所述第一误差范围内的驱动电机的运转速度,直到所述速度采集器采集到的所述驱动电机的速度响应值与所述给定速度值的差值绝对值在所述第一误差范围内,进入步骤E。
[0015] 优选的,还包括:
[0016] 当所述相对差值绝对值不在所述第二误差范围内,则调整所述左手驱动电机和/或所述右手驱动电机的运转速度,直到所述相对差值绝对值在所述第二误差范围内。
[0017] 优选的,所述调整其差值绝对值不在所述第一误差范围内的驱动电机的运转速度的过程包括:
[0018] 利用控制算法对差值绝对值不在所述第一误差范围内的驱动电机的速度调节参数进行整定,并用调整后的所述速度调节参数调节所述驱动电机的速度。
[0019] 优选的,所述控制算法为基于BP神经网络的PID控制算法。
[0020] 为解决上述技术问题,本发明还提供了一种实现机器人双手臂同步控制的系统,该系统包括上位机、左手驱动电机和右手驱动电机,该系统还包括:电控系统中央处理单元、可编程逻辑控制器PLC和速度采集器组,其中:
[0021] 所述电控系统中央处理单元的输入端与所述上位机相连,输出端与所述PLC相连,用于接收所述上位机发送的给定速度值,向PLC发送控制所述左手驱动电机和所述右手驱动电机按照所述给定速度值进行运转的速度指令;
[0022] 所述PLC接收所述电控系统中央处理单元发出的速度指令,控制所述左手驱动电机和所述右手驱动电机依据所述给定速度进行运转;
[0023] 所述速度采集器组包含两个速度采集器,所述两个速度采集器分别采集所述左手驱动电机的第一速度响应值和所述右手驱动电机的第二速度响应值,并将所述速度响应值反馈给所述电控系统中央处理单元;
[0024] 所述电控系统中央处理单元接收所述速度采集器组反馈的速度响应值,分别计算所述左手驱动电机、所述右手驱动电机的速度响应值与所述给定速度值的差值绝对值,对应得到第一差值绝对值和第二差值绝对值,当所述第一差值绝对值与所述第二差值绝对值均在第一误差范围内时,计算所述第一速度响应值与所述第二速度响应值之间的差值绝对值,得到相对差值绝对值,当所述相对差绝对值在第二误差范围内时,控制所述左手驱动电机和所述右手驱动电机运转。
[0025] 优选的,所述电控系统中央处理单元还用于,当所述第一差值绝对值和/或所述第二差值绝对值不在所述第一误差范围内,调整其差值绝对值不在所述第一误差范围内的驱动电机的运转速度,直到所述速度采集器采集到的所述驱动电机的速度响应值与所述给定速度值的差值绝对值在所述第一误差范围内,当所述相对差值绝对值不在所述第二误差范围内,则调整所述左手驱动电机和/或所述右手驱动电机的运转速度,直到所述相对差值绝对值在所述第二误差范围内。
[0026] 优选的,所述速度采集器为光电编码器。
[0027] 优选的,所述电控系统中央处理单元的输出端与PWM门级驱动电路相连,所述PWM门级驱动电路通过第一智能功率模块IPM和第二智能功率模块IPM与所述PLC相连。
[0028] 从上述技术方案可以看出,本发明提供了一种实现机器人双手臂同步控制的方法和系统。在调节过程中,电控系统中央处理单元分别计算左手驱动电机、右手驱动电机的速度响应值与给定速度值的差值绝对值,对应得到第一差值绝对值和第二差值绝对值;当第一差值绝对值和第二差值绝对值均在第一误差范围内时,计算左手驱动电机与右手驱动电机的速度值之间的差值绝对值,得到相对差值绝对值;当相对差值绝对值在第二误差范围内时,控制左手驱动电机和右手驱动电机运转。与现有技术相比,本发明不仅将速度采集器反馈的左手驱动电机、右手驱动电机的响应速度值与事先给定速度值作差值比较,还将左手驱动电机、右手驱动电机两者的响应速度值的差值作比较,若差值均在合理误差范围内,则控制左手驱动电机和右手驱动电机正常运转,有效地解决了机器人双手臂难以协调,同步率低的问题,提高了机器人双手臂的同步控制性能。

附图说明

[0029] 为了更清楚地说明本发明实施例中的技术方案,下面将对现有技术和实施例中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
[0030] 图1为本发明实施例公开的实现机器人双手臂同步控制的方法的流程图;
[0031] 图2为本发明实施例公开的又一实现机器人双手臂同步控制的方法的流程图;
[0032] 图3为本发明实施例公开的调整其差值绝对值不在第一误差范围内的驱动电机的运转速度的过程的流程图;
[0033] 图4为本发明实施例公开的调整相对差值绝对值不在第二误差范围内时驱动电机的运转速度的过程的流程图;
[0034] 图5为本发明实施例公开的从左手驱动电机和右手驱动电机中选择一个作为基准电机的过程的流程图;
[0035] 图6为本发明实施例公开的实现机器人双手臂同步控制的系统的结构示意图;
[0036] 图7为本发明实施例公开的电控系统中央处理单元的结构示意图。

具体实施方式

[0037] 本发明的核心是提供一种实现机器人双手臂同步控制的方法,有效地解决了机器人双手臂难以协调,同步率低的问题,提高了机器人双手臂的同步控制性能;本发明的另一核心是提供一种实现机器人双手臂同步控制的系统。
[0038] 为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
[0039] 实施例一
[0040] 请参照图1,图1为本发明实施例1公开的实现机器人双手臂同步控制的方法流程图,该方法包括:
[0041] 步骤s101:电控系统中央处理单元接收上位机发送的给定速度值,向PLC发送控制左手驱动电机和右手驱动电机按照给定速度值进行运转的速度指令;
[0042] 可以理解的是,上位机首先设置机器人的左手驱动电机和右手驱动电机的控制模式为速度控制模式,然后通过总线将给定值速度值传送至电控系统中央处理单元。电控系统中央处理单元在接收到上位机传送的电机控制模式后,立即向PLC(Programmable Logic Controller,即可编程逻辑控制器)发出控制左手驱动电机和右手驱动电机按照给定速度值进行运转的速度指令。
[0043] 步骤s102:PLC接收电控系统中央处理单元发出的速度指令,控制左手驱动电机和右手驱动电机依据给定速度值进行运转;
[0044] 可以理解的是,PLC在接收到电控系统中央处理单元发送的速度指令后,将速度指令翻译成脉冲指令信号,然后再将脉冲指令信号分别发送至左手驱动电机和右手驱动电机,进而控制左手驱动电机和右手驱动电机开始运转。
[0045] 步骤s103:速度采集器采集左手驱动电机的第一速度响应值和右手驱动电机的第二速度响应值,并将速度响应值反馈给电控系统中央处理单元;
[0046] 左手驱动电机和右手驱动电机开始运转后,与两个驱动电机对应的速度采集器分别采集左手驱动电机和右手驱动电机的速度响应值,并将速度响应值反馈给电控系统中央处理单元。
[0047] 值得注意的是,这里的速度采集器可以为光电编码器,那么速度响应值就是脉冲个数,将脉冲个数反馈给电控系统中央处理单元。当然,这里并不仅限于光电编码器,还可以选用其他速度采集器来测量电机的速度,在此不做特别的限定,能实现此技术效果的不同类型的速度采集器均在本发明的保护范围之内。
[0048] 步骤s104:电控系统中央处理单元分别计算第一速度响应值、第二速度响应值与给定速度值的差值绝对值,对应得到第一差值绝对值和第二差值绝对值;
[0049] 步骤s105:当第一差值绝对值和第二差值绝对值均在第一误差范围内时,计算第一速度响应值和第二速度响应值之间的差值绝对值,得到相对差值绝对值;
[0050] 可以理解的是,当电控系统中央处理单元判断得到第一差值绝对值和第二差值绝对值均在第一误差范围内时,再计算第一速度响应值和第二速度响应值之间的差值绝对值,得到相对差值绝对值。
[0051] 值得注意的是,这里的第一差值绝对值和第二差值绝对值均在第一误差范围内是指第一差值绝对值和第二差值绝对值均小于等于一个非负常数,非负常数数值的大小是根据实际情况和具体精度要求来决定的,在此不做特别的限定,能实现此技术效果的不同数值的非负常数均在本发明的保护范围之内。
[0052] 步骤s106:当相对差值绝对值在第二误差范围内时,控制左手驱动电机和右手驱动电机运转。
[0053] 可以理解的是,当电控系统中央处理单元判断得到相对差值绝对值在第二误差范围内时,电控系统中央处理单元控制PLC发送脉冲指令信号给驱动电机,控制左手驱动电机和右手驱动电机正常运转。
[0054] 值得注意的是,这里的相对差值绝对值在第二误差范围内是指相对差值绝对值小于等于一个非负常数,非负常数数值的大小是根据实际情况和具体精度要求来决定的,在此不做特别的限定,能实现此技术效果的不同数值的非负常数均在本发明的保护范围之内。
[0055] 本发明实施例1提供了一种实现机器人双手臂同步控制的方法。在调节过程中,电控系统中央处理单元接收速度采集器反馈的速度响应值,分别计算左手驱动电机、右手驱动电机的速度响应值与给定速度值的差值绝对值,对应得到第一差值绝对值和第二差值绝对值,当第一差值绝对值与第二差值绝对值均在第一误差范围内时,计算第一速度响应值与第二速度响应值之间的差值绝对值,得到相对差值绝对值,当相对差绝对值在第二误差范围内时,控制左手驱动电机和右手驱动电机运转。与现有技术相比,本发明不仅将速度采集器反馈的左手驱动电机、右手驱动电机的响应速度值与事先给定速度值作差值比较,还将左手驱动电机、右手驱动电机两者的响应速度值的差值作比较,若差值均在合理误差范围内,则控制左手驱动电机和右手驱动电机正常运转,有效地解决了机器人双手臂难以协调,同步率低的问题,提高了机器人双手臂的同步控制性能。
[0056] 实施例二
[0057] 请参照图2,图2为本发明实施例2公开的又一实现机器人双手臂同步控制的方法流程图,该方法包括:
[0058] 步骤s201:电控系统中央处理单元接收上位机发送的给定速度值,向PLC发送控制左手驱动电机和右手驱动电机按照给定速度值进行运转的速度指令;
[0059] 步骤s202:PLC接收电控系统中央处理单元发出的速度指令,控制左手驱动电机和右手驱动电机依据给定速度值进行运转;
[0060] 步骤s203:速度采集器采集左手驱动电机的第一速度响应值和右手驱动电机的第二速度响应值,并将速度响应值反馈给电控系统中央处理单元;
[0061] 步骤s204:电控系统中央处理单元分别计算第一速度响应值、第二速度响应值与给定速度值的差值绝对值,对应得到第一差值绝对值和第二差值绝对值;
[0062] 步骤s205:判断第一差值绝对值和第二差值绝对值是否均在第一误差范围内,若否,则执行步骤s206,若是,则执行步骤s207;
[0063] 步骤s206:调整其差值绝对值不在第一误差范围内的驱动电机的运转速度,返回执行步骤s205;
[0064] 可以理解的是,当电控系统中央处理单元判断得到第一差值绝对值和/或第二差值绝对值不在第一误差范围内时,需要对其差值绝对值不在第一误差范围内的驱动电机的运转速度进行调整,直到速度采集器采集到的驱动电机的运转速度与给定速度值的差值绝对值在第一误差范围内,重新进入步骤s205。
[0065] 步骤s207:计算第一速度响应值和第二速度响应值之间的差值绝对值,得到相对差值绝对值;
[0066] 可以理解的是,当电控系统中央处理单元判断得到第一差值绝对值和第二差值绝对值均在第一误差范围内时,再计算第一速度响应值和第二速度响应值之间的差值绝对值,得到相对差值绝对值。
[0067] 步骤s208:判断相对差值绝对值是否在第二误差范围内,若否,则执行步骤s209,若是,则执行步骤s210;
[0068] 步骤s209:调整左手驱动电机和/或右手驱动电机的运转速度,返回执行步骤S208;
[0069] 可以理解的是,当电控系统中央处理单元判断得到相对差值绝对值不在第二误差范围内时,则需要先对左手驱动电机或右手驱动电机的运转速度进行调整,直到左手驱动电机和右手驱动电机的相对差值绝对值在第二误差范围内,重新进入步骤s208。
[0070] 步骤s210:控制左手驱动电机和右手驱动电机运转。
[0071] 可以理解的是,当电控系统中央处理单元判断得到相对差值绝对值在第二误差范围内时,电控系统中央处理单元控制PLC发送脉冲指令信号给驱动电机,控制左手驱动电机和右手驱动电机正常运转。
[0072] 下面结合附图3对本实施例中,“调整其差值绝对值不在所述第一误差范围内的驱动电机的运转速度”这一步骤的一种可行方式进行说明。
[0073] 请参照图3,调整过程如下:
[0074] 步骤s301:利用控制算法对差值绝对值不在第一误差范围内的驱动电机的速度调节参数进行整定;
[0075] 可以理解的是,此处的控制算法可以为基于BP神经网络的PID控制算法,当然这里也并不仅限于基于BP神经网络的PID控制算法,在此不做特别的限定,能实现此技术效果的不同类型的控制算法均在本发明的保护范围之内。
[0076] 另外,这里的速度调节参数可以为比例调节参数、积分调节参数和微分调节参数,具体调整哪个参数或哪几种参数的组合由实际情况来决定,在此不做特别的限定,能实现此技术效果的不同组合的速度调节参数均在本发明的保护范围之内。
[0077] 步骤s302:用调整后的速度调节参数调节驱动电机的速度。
[0078] 可以理解的是,电控系统中央处理单元在对速度调节参数进行调整后,控制PLC发送脉冲指令信号给驱动电机,控制左手驱动电机和右手驱动电机进行速度调整,实现对驱动电机的速度整定。
[0079] 下面结合附图4对本实施例中步骤s209的一种可行方式进行说明。
[0080] 请参照图4,调整过程如下:
[0081] 步骤s401:从左手驱动电机和右手驱动电机选择一个作为基准电机;
[0082] 可以理解的是,这里是将左手驱动电机和右手驱动电机中的速度选一个作为基准速度,另外一个驱动电机就将按照此基准速度来调整自己的速度。
[0083] 步骤s402:调整另一驱动电机的运转速度,使得调整后的运转速度与基准电机的运转速度的相对差值绝对值在第二误差范围内。
[0084] 可以理解的是,运用控制算法对要调整的驱动电机的速度进行调整,使得调整后的运转速度与基准电机的基准速度的相对差值绝对值在第二误差范围内。另外,本步骤中对左手驱动电机和/或右手驱动电机的速度的调整过程与附图3内描述的调整过程类似,在此不再赘述。
[0085] 下面结合附图5对步骤s401的一种可行方式进行说明,其中图5为选取基准电机的过程流程图。
[0086] 请参照图5,选取基准电机的过程如下:
[0087] 步骤s501:比较第一差值绝对值和第二差值绝对值的大小;
[0088] 步骤s502:确定两者中较小的一个对应的驱动电机作为基准电机。
[0089] 值得注意的是,当电控系统中央处理单元判断得到相对差值绝对值不在第二误差范围内时,还可以同时对左手驱动电机和右手驱动电机进行调整。例如,可以调整两驱动电机的运转速度到给定速度值合理误差范围内的某一固定值,这样可以使得左手驱动电机和右手驱动电机的相对差值绝对值为0,一定满足在第二误差范围内这一条件。
[0090] 本发明实施例2提供了一种实现机器人双手臂同步控制的方法。在调节过程中,电控系统中央处理单元分别计算左手驱动电机、右手驱动电机的速度响应值与给定速度值的差值绝对值,对应得到第一差值绝对值和第二差值绝对值;当第一差值绝对值和第二差值绝对值有至少一个不在第一误差范围内时,调整其差值绝对值不在第一误差范围内的驱动电机的运转速度,直到速度采集器采集到的所述驱动电机的运转速度与给定速度值的差值绝对值在第一误差范围内;当相对差值绝对值不在第二误差范围内时,将左手驱动电机和右手驱动电机中的速度选一个作为基准速度,另外一个驱动电机就将按照此基准速度来调整自己的速度,直到调整后的运转速度与基准电机的运转速度的相对差值绝对值在第二误差范围内。另外,当相对差值绝对值不在第二误差范围内时,还可以调整两驱动电机的运转速度到给定速度值合理误差范围内的某一固定值,这样可以使得左手驱动电机和右手驱动电机的相对差值绝对值为0,一定满足在第二误差范围内这一条件。本发明实施例2在实施例1的基础上,实现了当差值绝对值不在误差范围内时对差值绝对值不在误差范围内的驱动电机进行速度调整,直到差值绝对值在误差范围内,有效地解决了机器人双手臂难以协调,同步率低的问题,提高了机器人双手臂的同步控制性能。
[0091] 与上述实施例相对应,本发明实施例还提供了一种实现机器人双手臂同步控制的系统,机器人双手臂同步控制系统的结构示意图,请参照图6,该系统包括上位机100、左手驱动电机201和右手驱动电机202,该系统还包括电控系统中央处理单元300、可编程逻辑控制器PLC400和速度采集器组500,其中,
[0092] 电控系统中央处理单元300,电控系统中央处理单元300的输入端与上位机100相连,输出端与PLC400相连,用于接收上位机100发送的给定速度值,向PLC400发送控制左手驱动电机201和右手驱动电机202按照给定速度值进行运转的速度指令;
[0093] 电控系统中央处理单元300,还用于接收速度采集器组500反馈的速度响应值,分别计算左手驱动电机201、右手驱动电机202的速度响应值与给定速度值的差值绝对值,对应得到第一差值绝对值和第二差值绝对值,当第一差值绝对值与第二差值绝对值均在第一误差范围内时,计算第一速度响应值与第二速度响应值之间的差值绝对值,得到相对差值绝对值,当相对差绝对值在第二误差范围内时,控制左手驱动电机201和右手驱动电机202运转。
[0094] 可编程逻辑控制器PLC400,PLC400用于接收电控系统中央处理单元300发出的速度指令,控制左手驱动电机201和右手驱动电机202依据给定速度进行运转;
[0095] 速度采集器组500,速度采集器组500包含两个速度采集器501、502,两个速度采集器501、502分别用于采集左手驱动电机201的第一速度响应值和右手驱动电机202的第二速度响应值,并将速度响应值反馈给电控系统中央处理单元300。
[0096] 可以理解的是,这里的速度采集器可以为光电编码器,当然,并不仅限于光电编码器,还可以选用其他速度采集器来测量电机的速度,在此不做特别的限定,能实现此技术效果的不同类型的速度采集器均在本发明的保护范围之内。
[0097] 进一步的,电控系统中央处理单元300,还用于当第一差值绝对值和/或第二差值绝对值不在第一误差范围内,调整其差值绝对值不在第一误差范围内的驱动电机的运转速度,直到速度采集器组500采集到的驱动电机的速度响应值与给定速度值的差值绝对值在第一误差范围内,当相对差值绝对值不在第二误差范围内,则调整左手驱动电机201和/或右手驱动电机202的运转速度,直到相对差值绝对值在第二误差范围内。
[0098] 此外,电控系统中央处理单元300还可以采用如图7所示的结构示意图,可以包括:
[0099] 差值第一计算模块310、差值第一判断模块320、速度第一处理模块330、差值第二计算模块340、差值第二判断模块350、速度第二处理模块360以及控制运行模块370;其中,速度第一处理模块330包括参数第一调整模块331和参数第一执行模块332,速度第二处理模块360包括基准电机模块361、参数第二调整模块362和参数第二执行模块363,其中,基准电机模块361包括差值绝对值比较模块3611和基准电机确定模块3612,其中:
[0100] 差值第一计算模块310,用于分别计算第一速度响应值、第二速度响应值与给定速度值的差值绝对值,对应得到第一差值绝对值和第二差值绝对值;
[0101] 差值第一判断模块320,用于判断第一差值绝对值和第二差值绝对值是否均在第一误差范围内;
[0102] 速度第一处理模块330,用于调整其差值绝对值不在第一误差范围内的驱动电机的运转速度;
[0103] 参数第一调整模块331,用于利用控制算法对差值绝对值不在第一误差范围内的驱动电机的速度调节参数进行整定;
[0104] 参数第一执行模块332,用于用调整后的速度调节参数调节驱动电机的速度。
[0105] 差值第二计算模块340,用于计算第一速度响应值和第二速度响应值之间的差值绝对值,得到相对差值绝对值;
[0106] 差值第二判断模块350,用于判断相对差值绝对值是否在第二误差范围内;
[0107] 速度第二处理模块360,用于调整左手驱动电机201和/或右手驱动电机202的运转速度,直到第一速度响应值和第二速度响应值之间的差值绝对值在第二误差范围内;
[0108] 基准电机模块361,用于从左手驱动电机201和右手驱动电机202选择一个作为基准电机;
[0109] 差值绝对值比较模块3611,用于比较第一差值绝对值和第二差值绝对值的大小;
[0110] 基准电机确定模块3612,用于确定两者中较小的一个对应的驱动电机作为基准电机。
[0111] 参数第二调整模块362,用于利用控制算法对相对差值绝对值不在第二误差范围内的驱动电机的速度调节参数进行整定;
[0112] 参数第二执行模块363,用于用调整后的速度调节参数调节驱动电机的速度。
[0113] 控制运行模块370,用于控制左手驱动电机201和右手驱动电机202运转。
[0114] 进一步的,电控系统中央处理单元的输出端与PWM(Pulse Width Modulation,即脉冲宽度调制)门级驱动电路600相连,PWM门级驱动电路通过第一智能功率模块IPM701和第二智能功率模块IPM702与PLC400相连。
[0115] 可以理解的是,智能功率模块IPM(Intelligent Power Module)内部集成了驱动电路,同时具有过电压、过电流、过热等故障检测保护电路。
[0116] 进一步的,左手驱动电机201和右手驱动电机202上分别设置有速度调整器,速度调整器与电控系统中央处理单元相连。
[0117] 可以理解的是,速度调整器可以实现速度的平稳过渡,提高了速度采集器的采集效率,具有稳定性高、可靠性以及抗干扰能力强的特点。
[0118] 进一步的,左手驱动电机201、右手驱动电机202分别与同一供电模块相连。
[0119] 可以理解的是,左手驱动电机201、右手驱动电机202共用同一供电模块,具有简单经济、速度反应好、低速同步协调能力强的优点,同时,驱动电机的的功率也能够得到充分的利用,当一个驱动电机处于减速运动时,多余的电流能够被另一驱动电机吸收。
[0120] 进一步的,供电模块包括:
[0121] 输入端与交流电源相连的滤波整流电路;
[0122] 与滤波整流电路的输出端相连的制动电路。
[0123] 进一步的,该系统还包括,设置在第一智能功率模块IPM701与PLC400之间的第一电流采集器;设置在第二智能功率模块IPM702与PLC400之间的第二电流采集器,第一电流采集器和第二电流采集器的输出端与电控系统中央处理单元300相连。
[0124] 对应上述实现机器人双手臂同步控制的方法,每个模块执行的具体操作可以参考前述的方法实施例,在此不再赘述。
[0125] 本说明书中各个实施例采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似部分互相参见即可。对于实施例公开的系统而言,由于其与实施例公开的方法相对应,所以描述的比较简单,相关之处参见方法部分说明即可。
[0126] 专业人员还可以进一步意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、计算机软件或者二者的结合来实现,为了清楚地说明硬件和软件的可互换性,在上述说明中已经按照功能一般性地描述了各示例的组成及步骤。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本发明的范围。
[0127] 结合本文中所公开的实施例描述的方法或算法的步骤可以直接用硬件、处理器执行的软件模块,或者二者的结合来实施。软件模块可以置于随机存储器(RAM)、内存、只读存储器(ROM)、电可编程ROM、电可擦除可编程ROM、寄存器、硬盘、可移动磁盘、CD-ROM、或技术领域内所公知的任意其它形式的存储介质中。
[0128] 对所公开的实施例的上述说明,使本领域专业技术人员能够实现或使用本发明。对这些实施例的多种修改对本领域的专业技术人员来说将是显而易见的,本文中所定义的一般原理可以在不脱离本发明的精神或范围的情况下,在其它实施例中实现。因此,本发明将不会被限制于本文所示的这些实施例,而是要符合与本文所公开的原理和新颖特点相一致的最宽的范围。