本发明属于智能控制技术领域,具体涉及一种路径规划方法及工业机器人。
背景技术:
目前工业机器人的路径规划方法,首先计算障碍物相对工业机器人的坐标,然后利用运动学反解确定工业机器人各个轴的角度,最后通过函数插值的方法规划工业机器人轴的转动,
但是这种方法需要进行多次计算和多次规划,效率较低,而且这种计算方法往往比较冗杂,不能自动识别障碍物,精度较低。
技术实现要素:
针对现有技术中的缺陷,本发明提供一种路径规划方法及工业机器人,有效地提高了工业机器人避障和路径规划效率。
第一方面,一种路径规划方法,包括以下步骤:
s1:获取控制点样本集;所述控制点样本集中的样本包括工业机器人的历史抓取点数据及其类别;所述类别为碰撞控制点或非碰撞控制点;
s2:对所述控制点样本集进行模型训练,得到路径规划模型;
s3:接收用户输入的工业机器人多个抓取点数据;
s4:将所有抓取点数据输入至路径规划模型中;
s5:获取路径规划模型输出的各个抓取点数据对应的类别;
s6:根据类别为非碰撞控制点的抓取点数据输出可行路径。
优选地,所述历史抓取点数据为工业机器人末端轴的位置xn,其中xn∈rd,d为实数域的向量空间r的维度,n取值1~n,n为工业机器人末端轴的数量;
所述类别为yn,其中yn∈{1,-1};当yn=1时,类别为非碰撞控制点,当yn=-1时,类别为碰撞控制点。
优选地,所述步骤s2具体包括:
s11:初始化svm核函数集的权重矩阵d和控制点样本集的支持向量权重矩阵α,令k=1;
s12:如果k小于预设的最大迭代次数、且||d||2<t时,执行步骤s13,否则执行步骤s15;k为迭代次数,d为svm核函数集的权重矩阵,t为预设的权重矩阵阈值;
s13:固定权重矩阵d,更新支持向量权重矩阵α;
s14:固定支持向量权重矩阵α,更新权重矩阵d;
s15:输出优化后的结果,得到所述路径规划模型。
优选地,所述步骤s11具体包括:
初始化权重矩阵d=[1/(m+1),1/(m+1),......,1/(m+1)];
初始化支持向量权重矩阵α=[1/(m+1),1/(m+1),......,1/(m+1)];
其中,m为采用的svm核函数集中核函数的个数。
优选地,所述步骤s13具体包括:
1)计算数偏差量
2)当数偏差量q的最小值小于等于0时,定义该最小值的下标为i;
3)将核矩阵k的第i列表示为
4)如果αi≠0,则δαi=biyi-qi/yi,αi=αi+δαi,qi为数偏差量q中第i个数值,bi为常量;按照下式更新数偏差量q:
5)计算集合u={q1-α1,q2-α2,......,qn-αn};
6)如果集合u中存在大于0的元素,且αn≠0,集合u中元素值最大的下标表示为i,按照下式更新数偏差量q:
优选地,所述步骤s14具体包括:
计算超平面线性权重w={w1,...wi,...wm},
更新
令k=k+1,返回步骤s12。
优选地,所述步骤s15具体包括:
输出优化后的结果{α*,d*,k*},其中
优选地,所述步骤s3具体包括:
接收用户输入的工业机器人末端d个关节的角度值:θ=[θ1,θ2,...,θd];
计算第h个关节的位置点posh和变换矩阵jh;
计算矩阵km,
优选地,所述步骤s5具体包括:
计算工业机器人末端关节的核函数值:
第二方面,一种工业机器人,包括处理器和存储器,所述处理器和存储器相互连接,其中,所述存储器用于存储计算机程序,所述计算机程序包括程序指令,所述处理器被配置用于调用所述程序指令,执行第一方面所述的路径规划方法。
由上述技术方案可知,本发明提供的路径规划方法及工业机器人,获取工业机器人历史多个抓取点的情况进行模型训练,确保工业机器人对抓取时不会发生机械限位和误抓。另外模型训练提出了依据以svm算法模型为基础的避障算法,准确设定机械臂路径规划算法,避免传统路径规划过程的冗杂计算,有效的提高工业机器人避障和路径规划效率。
附图说明
为了更清楚地说明本发明具体实施方式或现有技术中的技术方案,下面将对具体实施方式或现有技术描述中所需要使用的附图作简单地介绍。在所有附图中,类似的元件或部分一般由类似的附图标记标识。附图中,各元件或部分并不一定按照实际的比例绘制。
图1为本发明实施例一提供的路径规划方法的流程图。
图2视觉识别障碍物三维位姿示意图。
图3训练模型的核函数示意图。
图4模型应用碰撞判断位置示意图。
具体实施方式
下面将结合附图对本发明技术方案的实施例进行详细的描述。以下实施例仅用于更加清楚地说明本发明的技术方案,因此只作为示例,而不能以此来限制本发明的保护范围。需要注意的是,除非另有说明,本申请使用的技术术语或者科学术语应当为本发明所属领域技术人员所理解的通常意义。
应当理解,当在本说明书和所附权利要求书中使用时,术语“包括”和“包含”指示所描述特征、整体、步骤、操作、元素和/或组件的存在,但并不排除一个或多个其它特征、整体、步骤、操作、元素、组件和/或其集合的存在或添加。
还应当理解,在此本发明说明书中所使用的术语仅仅是出于描述特定实施例的目的而并不意在限制本发明。如在本发明说明书和所附权利要求书中所使用的那样,除非上下文清楚地指明其它情况,否则单数形式的“一”、“一个”及“该”意在包括复数形式。
如在本说明书和所附权利要求书中所使用的那样,术语“如果”可以依据上下文被解释为“当...时”或“一旦”或“响应于确定”或“响应于检测到”。类似地,短语“如果确定”或“如果检测到[所描述条件或事件]”可以依据上下文被解释为意指“一旦确定”或“响应于确定”或“一旦检测到[所描述条件或事件]”或“响应于检测到[所描述条件或事件]”。
实施例一:
一种路径规划方法,参见图1,包括以下步骤:
s1:获取控制点样本集;所述控制点样本集中的样本包括工业机器人的历史抓取点数据及其类别;所述类别为碰撞控制点或非碰撞控制点,如图2所示;
具体地,所述历史抓取点数据为工业机器人末端轴的位置xn,其中xn∈rd,d为实数域的向量空间r的维度,n取值1~n,n为工业机器人末端轴的数量。工业机器人末端轴的位置xn可以利用视觉识别技术,通过图像数据和点云数据获取机器人末端法兰的位姿以及工件的位姿。
所述类别为yn,其中yn∈{1,-1};当yn=1时,类别为非碰撞控制点,即障碍物控制点;当yn=-1时,类别为碰撞控制点,即可行的控制点。
s2:对所述控制点样本集进行模型训练,得到路径规划模型,具体包括:
s11:初始化svm核函数集的权重矩阵d和控制点样本集的支持向量权重矩阵α,令k=1;具体包括:
初始化权重矩阵d=[1/(m+1),1/(m+1),......,1/(m+1)];
初始化支持向量权重矩阵α=[1/(m+1),1/(m+1),......,1/(m+1)];
其中,m为采用的svm核函数集中核函数的个数。
s12:如果k小于预设的最大迭代次数、且||d||2<t时,执行步骤s13,否则执行步骤s15;k为迭代次数,d为svm核函数集的权重矩阵,t为预设的权重矩阵阈值;
s13:固定权重矩阵d,更新支持向量权重矩阵α,具体包括:
1)计算数偏差量
2)当数偏差量q的最小值小于等于0时,定义该最小值的下标为i;
3)将核矩阵k的第i列表示为
4)如果αi≠0,则δαi=biyi-qi/yi,αi=αi+δαi,qi为数偏差量q中第i个数值,bi为常量,通常取10,取值范围为大于0的实数;按照下式更新数偏差量q:
5)计算集合u={q1-α1,q2-α2,......,qn-αn};
6)如果集合u中存在大于0的元素,且αn≠0,集合u中元素值最大的下标表示为i,按照下式更新数偏差量q:
s14:固定支持向量权重矩阵α,更新权重矩阵d,具体包括:
计算超平面线性权重w={w1,...wi,...wm},
更新
令k=k+1,返回步骤s12。
s15:输出最优化结果,得到所述路径规划模型,具体包括:
输出优化后的结果{α*,d*,k*},其中
s3:接收用户输入的工业机器人多个抓取点数据,具体包括:
接收用户输入的工业机器人末端d个关节的角度值:θ=[θ1,θ2,...,θd];计算第h个关节的位置点posh和变换矩阵jh;
计算矩阵km,
具体地,该路径规划方法在进行路径规划时,需要确定工件的位姿、障碍物的位置以及工件坐标系在工业机器人基坐标系下的位姿。
s4:将所有抓取点数据输入至路径规划模型中;
s5:获取路径规划模型输出的各个抓取点数据对应的类别,具体包括:
如图3所示,计算工业机器人末端关节的核函数值:
s6:根据类别为非碰撞控制点的抓取点数据输出可行路径。
具体地,该方法计算同一位置机器人可行的不同的运动学反解姿态,一个工件可以有多个位姿可以到达。该方法在多个设置的抓取点中选择满足要求的抓取点,该抓取点即能保证工业机器人有效地抓取工件,又能保证实现快速的避障和规划最优的路径功能。
该方法通过步骤s3-s6获取工业机器人多个抓取点数据的类型,并根据类型为非碰撞控制点的抓取点输出可行路径,这样可行路径的每一点都不会遇到障碍物,都不会和障碍物发生碰撞,实现了机器人避障和路径规划的功能。
该方法获取工业机器人历史多个抓取点的情况进行模型训练,确保工业机器人对抓取时不会发生机械限位和误抓。另外模型训练提出了依据以svm算法模型为基础的避障算法,准确设定机械臂路径规划算法,避免传统路径规划过程的冗杂计算,避免了使用肉眼察看和计算机器人是否碰撞障碍物,有效的提高工业机器人避障和路径规划效率。
实施例二:
一种工业机器人,包括处理器和存储器,所述处理器和存储器相互连接,其中,所述存储器用于存储计算机程序,所述计算机程序包括程序指令,所述处理器被配置用于调用所述程序指令,执行实施例一所述的路径规划方法。
应当理解,在本发明实施例中,所称处理器可以是中央处理单元(centralprocessingunit,cpu),该处理器还可以是其他通用处理器、数字信号处理器(digitalsignalprocessor,dsp)、专用集成电路(applicationspecificintegratedcircuit,asic)、现成可编程门阵列(field-programmablegatearray,fpga)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。
该存储器可以包括只读存储器和随机存取存储器,并向处理器提供指令和数据。存储器的一部分还可以包括非易失性随机存取存储器。例如,存储器还可以存储设备类型的信息。
本发明实施例所提供的工业机器人,为简要描述,实施例部分未提及之处,可参考前述方法实施例中相应内容。
最后应说明的是:以上各实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述各实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分或者全部技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的范围,其均应涵盖在本发明的权利要求和说明书的范围当中。