掌桥专利:专业的专利平台
掌桥专利
首页

机械臂引导方法、装置、计算机设备和存储介质

文献发布时间:2023-06-19 19:28:50


机械臂引导方法、装置、计算机设备和存储介质

技术领域

本申请涉及机器人控制技术领域,特别是涉及一种机械臂引导方法、装置、计算机设备和存储介质。

背景技术

随着智能控制技术的发展,机械臂广泛应用在各个领域,在机械臂的应用场景中,有时需要根据实际需求人工拖动机械臂,使得机械臂的末端位置达到预期位置。但是,在人工拖动机械臂的过程中,人工拖动精度较低,容易造成操作失误或人为拖动方向与期望运动方向有较大误差,导致机械臂末端位置与预期位置存在较大的位置误差。

发明内容

基于此,有必要针对上述技术问题,提供一种能够提高人工引导调整机械臂末端位置精度的机械臂引导方法、装置、计算机设备和存储介质。

第一方面,本申请提供了一种机械臂引导方法,方法包括:

根据外力传感器采集作用在机械臂引导部件上的外力信息;外力信息包括用于引导机械臂平移的引导力和/或用于引导机械臂转动的引导力矩;

根据外力信息分解至外力传感器坐标系中各轴向上的分解向量,确定外力传感器坐标系轴向方向上的最大分解向量;

按照最大分解向量的方向和大小,调整机械臂末端的初始位姿,以使机械臂末端的位置处于预期位置。

在其中一个实施例中,根据外力信息分解至外力传感器坐标系中各轴向上的分解向量,确定外力传感器坐标系轴向方向上的最大分解向量包括:

若外力传感器为六维力传感器,则确定外力信息分解至外力传感器坐标系中各轴向上的分解向量,外力传感器坐标系轴向方向上的最大分解向量包括最大引导力向量和最大引导力矩向量;

若外力传感器为三维力传感器和三维力矩传感器,则确定外力信息分解至外力传感器坐标系中各轴向上的分解向量,外力传感器坐标系轴向方向上的最大分解向量为最大引导力向量或最大引导力矩向量。

在其中一个实施例中,按照最大分解向量的方向和大小,调整机械臂末端的初始位姿,以使机械臂末端的位置处于预期位置,包括:

根据最大分解向量的方向和大小,确定机械臂末端的调整方向和调整量;

根据机械臂末端的初始位姿、机械臂末端的调整方向和调整量,确定机械臂的各关节模组所需调整方向和调整量;

根据各个关节模组的调整方向和调整量,控制机械臂末端移动,直至机械臂末端的位置处于预期位置。

在其中一个实施例中,最大分解向量为最大引导力向量,根据最大分解向量的方向和大小,确定机械臂末端的调整方向和调整量,包括:

将最大引导力向量的方向作为机械臂的平移方向,将最大引导力向量的模值作为机械臂末端的平移距离。

在其中一个实施例中,最大分解向量为最大引导力矩向量,根据最大分解向量的方向和大小,确定机械臂末端的调整方向和调整量,包括:

以最大引导力矩向量位于外力传感器坐标系的坐标轴为旋转轴,以最大引导力矩向量的方向为机械臂末端的旋转方向,根据最大引导力矩向量的模值,确定机械臂末端的旋转加速度。

在其中一个实施例中,最大分解向量包括最大引导力向量和最大引导力矩向量,根据最大分解向量的方向和大小,确定机械臂末端的调整方向和调整量,包括:

确定最大引导力向量和最大引导力矩向量的权重比;

根据权重比,确定加权后的最大引导力向量与加权后的最大引导力矩向量的比值;

若比值大于1,则将最大引导力向量的方向作为机械臂末端的平移方向,将最大引导力向量的模值作为机械臂末端的平移距离;

若比值小于1,则以最大引导力矩向量位于外力传感器坐标系的坐标轴为旋转轴,以最大引导力矩向量的方向为机械臂末端的旋转方向,根据最大引导力矩向量的模值,确定机械臂末端的旋转加速度。

在其中一个实施例中,根据各个关节模组的调整量,控制机械臂末端移动,直至机械臂末端的位置处于预期位置,包括:

在根据各个关节模组的调整量控制机械臂末端进行移动的过程中,采集到外力的方向与机械臂的调整方向不一致,则更新最大引导力向量和最大引导力矩向量的权重比,返回根据权重比,确定加权后的最大引导力向量与加权后的最大引导力矩向量的比值步骤并继续执行,直至在机械臂移动的过程中,采集到外力的方向与机械臂的调整方向一致;

在外力的方向与机械臂的调整方向一致后,继续控制机械臂末端移动,直至达到预期位置。

在其中一个实施例中,更新最大引导力向量和最大引导力矩向量的权重比,包括:

将外力的大小和方向输入至预先训练好的预测模型中,预测模型输出更新后的最大引导力向量和最大引导力矩向量的权重比。

第二方面,本申请还提供了一种机械臂引导装置。所述装置包括:

采集模块,用于根据外力传感器采集作用在机械臂引导部件上的外力信息;外力信息包括用于引导机械臂平移的引导力和/或用于引导机械臂转动的引导力矩;

力分解模块,根据外力信息分解至外力传感器坐标系中各轴向上的分解向量,确定外力传感器坐标系轴向方向上的最大分解向量;

引导模块,用于按照最大分解向量的方向和大小,调整机械臂末端的初始位姿,以使机械臂末端的位置处于预期位置。

在其中一个实施例中,力分解模块还用于若外力传感器为六维力传感器,则确定外力信息分解至外力传感器坐标系中各轴向上的分解向量,外力传感器坐标系轴向方向上的最大分解向量包括最大引导力向量和最大引导力矩向量;

若外力传感器为三维力传感器和三维力矩传感器,则确定外力信息分解至外力传感器坐标系中各轴向上的分解向量,外力传感器坐标系轴向方向上的最大分解向量为最大引导力向量或最大引导力矩向量。

第三方面,本申请还提供了一种计算机设备。所述计算机设备包括存储器和处理器,所述存储器存储有计算机程序,所述处理器执行所述计算机程序时实现以下步骤:

根据外力传感器采集作用在机械臂引导部件上的外力信息;外力信息包括用于引导机械臂平移的引导力和/或用于引导机械臂转动的引导力矩

根据外力信息分解至外力传感器坐标系中各轴向上的分解向量,确定外力传感器坐标系轴向方向上的最大分解向量;

按照最大分解向量的方向和大小,调整机械臂末端的初始位姿,以使机械臂末端的位置处于预期位置。

第四方面,本申请还提供了一种计算机可读存储介质。所述计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现以下步骤:

根据外力传感器采集作用在机械臂引导部件上的外力信息;外力信息包括用于引导机械臂平移的引导力和/或用于引导机械臂转动的引导力矩

根据外力信息分解至外力传感器坐标系中各轴向上的分解向量,确定外力传感器坐标系轴向方向上的最大分解向量;

按照最大分解向量的方向和大小,调整机械臂末端的初始位姿,以使机械臂末端的位置处于预期位置。

第五方面,本申请还提供了一种计算机程序产品。所述计算机程序产品,包括计算机程序,该计算机程序被处理器执行时实现以下步骤:

根据外力传感器采集作用在机械臂引导部件上的外力信息;外力信息包括用于引导机械臂平移的引导力和/或用于引导机械臂转动的引导力矩

根据外力信息分解至外力传感器坐标系中各轴向上的分解向量,确定外力传感器坐标系轴向方向上的最大分解向量;

按照最大分解向量的方向和大小,调整机械臂末端的初始位姿,以使机械臂末端的位置处于预期位置。

上述机械臂引导方法、装置、计算机设备和存储介质,将外力信息分解至外力传感器坐标系中各轴向上的分解向量,根据外力传感器坐标系轴向方向上的最大分解向量的方向和大小,调整机械臂末端的初始位姿,以使机械臂末端的位置处于预期位置,其中,根据最大分解向量的类型,将引导调整流程分为位移调整和转动调整两种方式,避免调整方向误判概率,且提高了人工施力引导调整在三维空间中的精确度,更加适配于高精度作业环境,降低了人工操作低精度带来的风险。

附图说明

图1为一个实施例中机械臂引导方法的应用环境图;

图2为一个实施例中机械臂引导方法的流程示意图;

图3为一个实施例中六维力传感器A在机械臂上的安装示意图;

图4为另一个实施例中三维力传感器B和三维力矩传感器C在机械臂上的安装示意图;

图5为一个实施例中外力力传感器采集的外力信息数据滤波流程图;

图6为一个实施例中笛卡尔坐标构建示意图;

图7为一个实施例中空间坐标转换示意图;

图8为一个实施例中调整机械臂末端的初始位姿的流程图;

图9为一个实施例中导纳控制器的控制流程图;

图10为一个实施例中为三维力传感器B、三维力矩传感器C与把手局部构造图;

图11为一个实施例中分体布置外力传感器的引导力与引导力矩的判定示意图;

图12为一个实施例中一体布置传感器与把手位置关系图;

图13为一个实施例中一体布置外力传感器的引导力与引导力矩的判定示意图;

图14为一个实施例中预测模型的训练流程图;

图15为一个实施例中感知机模型的训练流程图;

图16为一个实施例中后向传播学习的前馈型神经网络的训练流程图;

图17为一个实施例中更新最大引导力向量和最大引导力矩向量的权重比的流程图;

图18为一个实施例中控制调整模式开始与结束判定过程示意图;

图19为一个实施例中机械臂引导装置的结构框图;

图20为一个实施例中计算机设备的内部结构图。

具体实施方式

为了使本申请的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本申请进行进一步详细说明。应当理解,此处描述的具体实施例仅仅用以解释本申请,并不用于限定本申请。

本申请实施例提供的机械臂引导方法,可以应用于如图1所示的应用环境中。其中,计算机设备102根据外力传感器采集作用在机械臂引导部件上的外力;根据外力信息分解至外力传感器坐标系中各轴向上的分解向量,确定外力传感器坐标系轴向方向上的最大分解向量;按照最大分解向量的方向和大小,调整机械臂末端的初始位姿,以使机械臂末端的位置处于预期位置。计算机设备102通过网络与服务器104进行通信。其中,计算机设备102可以但不限于是各种机器人、个人计算机、笔记本电脑、智能手机、平板电脑、物联网设备和便携式可穿戴设备。便携式可穿戴设备可为智能手表、智能手环、头戴设备等。服务器104可以用独立的服务器或者是多个服务器组成的服务器集群来实现。

在一个实施例中,如图2所示,提供了一种机械臂引导方法,以该方法应用于图1中的计算机设备为例进行说明,包括以下步骤:

步骤202,根据外力传感器采集作用在机械臂引导部件上的外力信息;外力信息包括用于引导机械臂平移的引导力和/或用于引导机械臂转动的引导力矩。

其中,机械臂引导部件是人工施加作用力的部件,在人工施加的作用力下引导机械臂按照作用力的方向进行移动。例如,机械臂引导部件可以是机械臂的操控旋钮,可以是推动机械臂移动的控制把手。

外力传感器安装在机械臂引导部件上,在力传导过程中实现力的等效传递,用于检测作用在机械臂引导部件上的外力,并输出外力信息,其中,外力信息包括力的方向和大小。外力传感器可以采用六维力传感器A,也可以采用三维力传感器B和三维力矩传感器C。本实施例的机械臂为具有C型结构的机械臂,如图3所示,为六维力传感器A在机械臂上的安装示意图,如图4所示,为三维力传感器B和三维力矩传感器C在机械臂上的安装示意图。

由于外力传感器采集的外力信息包含大量干扰元素,会极大的影响控制中的判定精度,因此,如图5所示,本实施例对所有初始数据进行滤波处理与合理性检测,其中,合理性检测的目的是过滤掉明显不符合逻辑的数据,最终输出安全可靠的外力采集数据。

可选地,计算机设备通过安装在机械臂引导部件上外力传感器采集作用机械臂引导部件上的外力信息,若外力传感器为六维力传感器A,则采集的外力信息包括引导力信息和引导力矩信息;若外力传感器为三维力传感器B和三维力矩传感器C,则通过三维力传感器B采集操作者作用在械臂引导部件上用于平移的引导力信息,通过三维力矩传感器C采集操作者作用在械臂引导部件上用于转动的引导力矩信息。

步骤204,根据外力信息分解至外力传感器坐标系中各轴向上的分解向量,确定外力传感器坐标系轴向方向上的最大分解向量。

其中,外力传感器坐标系基于如图6所示的笛卡尔坐标系建立,图6为具有C型结构的机械臂的侧视图,图6所示的机械臂具体包括大C臂和小C臂,图6中sus表示悬吊,悬吊为一个会转动的关节,Z

本实施例采用分解化力控制引导调整原理,保证位姿调整的高精度特性。因此,需要将外力信息分解至外力传感器坐标系中各轴向。

若外力传感器为六维力传感器A,则确定外力信息分解至外力传感器坐标系中各轴向上的分解向量,外力传感器坐标系轴向方向上的最大分解向量包括最大引导力向量和最大引导力矩向量;若外力传感器为三维力传感器B和三维力矩传感器C,则确定外力信息分解至外力传感器坐标系中各轴向上的分解向量,外力传感器坐标系轴向方向上的最大分解向量为最大引导力向量或最大引导力矩向量,即分解至三维力传感器B坐标系中各轴向的最大分解向量为最大引导力向量,分解至三维力矩传感器C坐标系中各轴向的最大分解向量为最大引导力矩向量。

需要注意的是:力矩表示力对物体作用时所产生的转动效应的物理量,力和力臂的向量积为力矩,力矩是矢量,力对某一点的力矩的大小为该点到力的作用线所引垂线的长度(即力臂)乘以力的大小,力矩方向则垂直于垂线和力所构成的平面,用力矩的右手螺旋法则来确定。外力传感器输出的外力信息中包括力矩的大小、方向等信息。

需要注意的是:外力信息分解至外力传感器坐标系中各轴向上具体指:将外力转换至外力传感器坐标系中,根据外力传感器坐标系的外力与各轴向的夹角的余弦值与外力的模值乘积,确定外力信息分解至外力传感器坐标系中各轴向上的分解向量。

如图7所示,本实施例根据力的等效原理,可将施加在把手上的力F等效为外力传感器采集到的力F,力矩根据相对距离进行转换。然而为了实际应用需要将力与力矩转换至世界坐标系,故进行如下转换:

sen

sen

其中,bar表示把手,sen表示外力传感器,

可选地,计算机设备将施加在把手上的力F等效为外力传感器采集到的力F,根据相对距离转换得到力矩,将外力传感器采集的力和力矩按照力分解的原理,分解至外力传感器坐标系中各轴向上的分解向量,确定外力传感器坐标系轴向方向上模值最大的最大分解向量。

步骤206,按照最大分解向量的方向和大小,调整机械臂末端的初始位姿,以使机械臂末端的位置处于预期位置。

其中,机械臂末端指机械臂用于装载负载、拾取物品或操作者拖动机械臂的着力部件。

本实施例在操作者手动拖动机械臂的过程中,采用平移和转动两种运动模式叠加实现机械臂的位姿调整目的,因此,本实施例中,若外力传感器为六维力传感器A,则分解至六维力传感器A坐标系中各轴向的最大分解向量包括最大引导力向量和最大引导力矩向量,根据引导力向量和引导力矩向量的权重比,判断最大分解向量中占比最大的向量,若占比最大的向量为引导力向量,则判定调整模式为平移模式;若占比最大的向量为引导力矩向量,则判定调整模式为转动模式。若外力传感器为三维力传感器B,则分解至三维力传感器B坐标系中各轴向的最大分解向量为最大引导力向量,判定调整模式为平移模式;若外力传感器为三维力矩传感器C,则分解至三维力矩传感器C坐标系中各轴向的最大分解向量为最大引导力矩向量,则判定调整模式为转动模式。

在位移模式下,保证末端点沿建立于末端处的坐标系x

可选地,计算机设备根据最大分解向量的方向,确定机械臂的调整方向,根据最大分解向量的大小,确定机械臂的调整量,并根据调整方向和调整量,可以确定机械臂末端的预期位置,根据预期位姿,调整机械臂末端的初始位姿,使得机械臂末端的位置处于预期位置。

上述机械臂引导方法中,将外力信息分解至外力传感器坐标系中各轴向上的分解向量,根据外力传感器坐标系轴向方向上的最大分解向量的方向和大小,调整机械臂末端的初始位姿,以使机械臂末端的位置处于预期位置,其中,根据最大分解向量的类型,将引导调整流程分为位移调整和转动调整两种方式,避免调整方向误判概率,且提高了人工施力引导调整在三维空间中的精确度,更加适配于高精度作业环境,降低了人工操作低精度带来的风险。

在一个实施例中,如图8所示,按照最大分解向量的方向和大小,调整机械臂末端的初始位姿,以使机械臂末端的位置处于预期位置,包括:

步骤802,根据最大分解向量的方向和大小,确定机械臂末端的调整方向和调整量。

其中,最大分解向量包括三种情况,第一种情况是最大分解向量为最大引导力向量,对应的调整模式为平移模式,根据最大引导力向量的方向和大小,确定机械臂的调整方向和调整量;第二种情况是最大分解向量为最大引导力矩向量,对应的调整模式为转动模式,根据引导力矩向量的方向和大小,确定机械臂的调整方向和调整量;第三种情况最大分解向量包括最大引导力向量和最大引导力矩向量,对应的调整模式需要根据最大引导力向量和最大引导力矩向量的加权比确定。

本实施例中,由于机器人运动控制领域,必须引入力控,单单将关节目标位置作为控制输出量远远不能达到应用的要求,必须引入力矩/力控制输出量,或者将力矩/力作为闭环反馈量引入控制,因此,本实施例中,机械臂末端的调整方向和调整量统称为机械臂末端的辅助力,辅助力指机械臂末端在平移或者转动的预设运动量的情况下,机械臂末端所需的力向量,力向量包引导力或引导力矩,辅助力的方向与最大分解向量相同,辅助力的大小与最大分解向量的模值相同,即辅助力与最大分解向量同方向且与外力大小成比例。

可选地,计算机设备根据最大分解向量确定调整模式,并根据最大分解向量的方向和大小,确定机械臂末端在平移或者转动的预设运动量的情况下,机械臂末端所需的辅助力。

步骤804,根据机械臂末端的初始位姿、机械臂末端的调整方向和调整量,确定机械臂的各关节模组所需的调整方向和调整量。

其中,由于机器人运动控制领域,必须引入力控,单单将关节目标位置作为控制输出量远远不能达到应用的要求,必须引入力矩/力控制输出量,或者将力矩/力作为闭环反馈量引入控制,因此,本实施例中,关节模组所需的调整方向和调整量统称为关节模组的电机所需施加的力向量,力向量包括引导力或者引导力矩,各关节模组的电机所需动作的力向量作用后,使得机械臂末端位置的结合力等于辅助力,即各关节模组的调整方向和调整量动作后,机械臂末端呈现的姿态与机械臂末端在辅助力下呈现的姿态相同。

本实施例,将机械臂的调整方向和调整量作为计算机设备内的导纳算法的输入,根据导纳算法计算出各关节模组的运动量。通过导纳算法可以实现将最大引导力或最大引导力矩向位置控制的转变,从而实现根据外力控制不动点空间位置与位姿的转变。

需要注意的是:导纳算法的输入是操作者与机械臂交互的力向量,而不是机械臂的关节模组的电机施加或者收到的力向量。导纳算法通过在导纳控制器中实现。因此,本实施例将根据最大分解向量确定的机械臂的调整方向和调整量,输入至导纳控制器,由导纳控制器输出机械臂末端预期呈现的运动量。

可选地,如图9所示,计算机设备将机械臂的调整方向和调整量作为计算机设备内的导纳控制器的输入,导纳控制器根据导纳算法进行分析,并输出机械臂末端的预期位置,将机械臂末端的预期位置输入至各关节位置环控制器,由各关节位置环控制器输出各关节模组所需调整量,即各关节模组的电机所需的力向量,根据力向量确定各关节模组的电机所需转动的关节力矩。

步骤806,根据各个关节模组的调整量,控制机械臂末端移动,直至机械臂末端的位置处于预期位置。

其中,本实施例以如图3所示机械结构为例,图3所示机械结构具备末端不动点特性,该不动点空间位姿调节由图示六个移动关节决定,其中第一关节1、第二关节2、第三关节3控制不动点空间位置,第四关节4、第五关节5、第六关节6关节控制不动点空间姿态,根据图3所示六维力传感器A感知结果,对六个关节分别进行控制,实现不动点空间位姿的调节功能。

可选地,如图9所示,计算机设备根据各个关节模组的调整量,即关节模组的电机所需施加的力向量,确定电机所需转动的力矩,计算机设备控制关节模组的电机产生相同的力矩,控制机械臂末端移动,直至机械臂末端的位置处于预期位置。

本实施例中,通过导纳算法可以实现将最大分解向量向位置控制的转变,从而实现根据外力控制不动点空间位置与位姿的转变,并且机械臂末端施加与最大分解向量同方向且与外力大小成比例的辅助力,根据辅助力,确定机械臂末端达到辅助力作用下位姿时,各关节模组所需的力向量,各关节模组根据力向量进行动作,可以降低操作者拖动机械臂所需力大小。

在一个实施例中,机械臂引导部件为图10所示的两个把手S,外力传感器为三维力传感器B和三维力矩传感器C,三维力传感器B用于检测作用在机械臂引导部件上的引导力信息,三维力矩传感器C用于检测作用在机械臂引导部件上的引导力矩信息,图10中两个把手按顺序施加外力在把手上,即同一时刻,外力只作用在图10所示的一个把手S上,因此,同一时刻只有三维力传感器B或三维力矩传感器C可以采集到外力信息。

如图4所示,为三维力传感器B和三维力矩传感器C在机械臂上的安装示意图,如图10所示,为三维力传感器B、三维力矩传感器C与把手局部构造图,将实际力控制过程中受力更大的三维力传感器B安装于刚度较大的结构处,以满足调整过程中用于控制不动点空间位置的施加力大小,保护构件不被破坏;将三维力矩传感器C安装于不动点附近的结构处,以满足操作者为调整不动点姿态的操作习惯,使调整过程更加直观清晰。

本实施例在操作者手动拖动机械臂的过程中,采用平移和转动两种运动模式叠加实现机械臂的位姿调整目的,因此,采用三维力传感器B与三维力矩传感器C配合使用,保证力与力矩分体测量,在位移阶段与转动阶段依次在三维力传感器B与三维力矩传感器C对应的把手上施加外力,用于分别判定主导运动方向,对应位姿调整分离结构机械臂的调整模式判定。在外力传感器为三维力传感器B和三维力矩传感器C时,图10中的把手结构具有两个把手S,三维力传感器B对应的把手用于控制机械臂平移,三维力矩传感器C对应的把手用于控制机械臂旋转。为便于计算机设备的控制模式识别以及对机械臂的精准引导,本实施例在机械臂引导部件上作用外力时,只选用图10中其中一个把手,若在三维力传感器B对应的把手上施加外力,则该外力用于引导机械臂平移;若在三维力矩传感器C对应的把手上施加外力,则该外力用于引导机械臂旋转。

本实施例中,若机械臂引导部件为图10所示的把手,外力传感器为三维力传感器B和三维力矩传感器C,并且外力作用在三维力传感器B对应的把手上,则分解至三维力传感器B坐标系中各轴向的最大分解向量为最大引导力向量,将最大引导力向量的方向作为机械臂的平移方向,将最大引导力向量的模值作为机械臂的平移距离。

本实施例中,若机械臂引导部件为图10所示的把手,外力传感器为三维力传感器B和三维力矩传感器C,并且外力作用在三维力矩传感器C对应的把手上,则分解至三维力矩传感器C坐标系中各轴向的最大分解向量为最大引导力矩向量,以最大引导力矩向量位于外力传感器坐标系的坐标轴为旋转轴,以最大引导力矩向量的方向为机械臂的旋转方向,根据最大引导力矩向量的模值,确定机械臂的旋转加速度。

其中,最大引导力矩向量的方向代表机械臂在把手上外力的作用下,按照预设方向转动。最大引导力矩向量的大小等于转动惯量乘以角加速度,进而确定机械臂的旋转加速度。

可选地,如图11所示,操作者在图10所示三维力传感器B对应的把手上施加外力,计算机设备将外力信息分解至三维力传感器B坐标系中各轴向上,确定三维力传感器B坐标系中各轴向的最大引导力向量,按照最大引导力向量的方向平移机械臂,达到与最大引导力向量的模值等量距离位置处,操作者在图10所示三维力矩传感器C对应的把手上施加外力,计算机设备将外力信息分解至三维力矩传感器C坐标系中各轴向上,确定三维力矩传感器C坐标系中各轴向的最大引导力矩向量,计算机设备以最大引导力矩向量位于外力传感器坐标系的坐标轴为旋转轴,以最大引导力矩向量的方向为机械臂的旋转方向,根据最大引导力矩向量的模值,确定机械臂的旋转加速度,并按照旋转加速度旋转机械臂末端,直至机械臂到达预期位置。

本实施例中,采用三维力传感器B与三维力矩传感器C配合使用,保证力与力矩分体测量,在位移阶段与转动阶段依次在三维力传感器B与三维力矩传感器C对应的把手上施加外力,用于分别判定主导运动方向,对应位姿调整分离结构机械臂的调整模式判定,以实现同一时刻仅有一个引导力或引导力矩,从而保证在位移模式或转动模式下仅沿X、Y、Z轴其中一轴方向移动或转动。

在一个实施例中,机械臂引导部件为图12所示把手,外力传感器为六维力传感器A,用于检测作用在机械臂引导部件上的外力,并输出与外力对应的引导力信息和引导力矩信息。如图3所示,为六维力传感器A在机械臂上的安装示意图,如图12所示,为六维力传感器A与把手局部构造图,其中六维力传感器A两端分别与机械臂构件和把手固结,在力传导过程中实现力的等效传递。操作者施力点为把手位置,由六维力传感器A感知力参数等效转换至把手处,感知力参数包括引导力信息和引导力矩信息,则按照图13所示的流程,将外力信息分解为X方向的引导力、Y方向的引导力、Z方向的引导力、X方向的引导力矩、Y方向的引导力矩和Z方向的引导力矩,判定X方向的引导力、Y方向的引导力、Z方向的引导力中最大引导力,判定X方向的引导力矩、Y方向的引导力矩和Z方向的引导力矩中最大引导力矩,即分解至六维力传感器A坐标系中各轴向的最大分解向量包括最大引导力向量和最大引导力矩向量,根据最大分解向量的方向和大小,确定机械臂的调整方向和调整量,包括以下步骤:

步骤1,确定最大引导力向量和最大引导力矩向量的权重比。

其中,最大引导力向量和最大引导力矩向量的权重比通过经验总结而来。

步骤2,根据权重比,确定加权后的最大引导力向量与加权后的最大引导力矩向量的比值。

其中,加权后的最大引导力向量与加权后的最大引导力矩向量的比值等于最大引导力向量和最大引导力矩向量的比值,与最大引导力向量和最大引导力矩向量的权重比的乘积。若比值大于1,则将最大引导力向量的方向作为机械臂的平移方向,将最大引导力向量的模值作为机械臂的平移距离;若比值小于1,则以最大引导力矩向量位于外力传感器坐标系的坐标轴为旋转轴,以最大引导力矩向量的方向为机械臂的旋转方向,根据最大引导力矩向量的模值,确定机械臂的旋转加速度。

需要注意的是:图10和图12中的两种结构的把手为两个独立的器件,择一使用。

可选地,计算机设备确定最大引导力向量和最大引导力矩向量的权重比,根据最大引导力向量和最大引导力矩向量的比值,与最大引导力向量和最大引导力矩向量的权重比的乘积,确定加权后的最大引导力向量与加权后的最大引导力矩向量的比值,若比值小于1,则按照最大引导力向量的方向平移机械臂,达到与最大引导力向量的模值等量距离位置处;若比值大于1,则以最大引导力矩向量位于外力传感器坐标系的坐标轴为旋转轴,以最大引导力矩向量的方向为机械臂的旋转方向,根据最大引导力矩向量的模值,确定机械臂的旋转加速度,并按照旋转加速度旋转机械臂末端,直至机械臂到达预期位置。

本实施例中,采用六维力传感器A采集外力中的引导力和引导力矩,并将引导力和引导力矩分解至六维力传感器A坐标系的各轴向上,判定六维力传感器A坐标系的轴向方向上的最大引导力和最大引导力矩,根据预设最大引导力与最大引导力矩权重比,计算最大引导力和最大引导力矩加权后结果,根据加权结果的大小决定位姿调整模式选择,并确定位移或转动轴方向,操作者只需施加预期位移方向外力,由计算机设备判断后机械臂自主沿预期方向施加辅助力,当外力低于阈值时取消辅助力,机械臂停止运动,从而实现方便、快捷、高精度的初始位姿调整功能。

在一个实施例中,上述实施例的最大引导力向量和最大引导力矩向量的权重比通过经验总结而来,并且权重比为固定值,导致计算机设备在判断平移模式和转动模式的阶段中,调整模式判断错误,机械臂末端的调整方向与操作者的意愿方向不一致,增加了机械臂末端的位置精度误差。因此,为解决上述问题,本实施例,在根据各个关节模组的调整量控制机械臂末端进行移动的过程中,实时采集机械臂末端的运动方向,若在机械臂末端开始运动后的短时间内接收到与初始外力相反的外力时,判定机械臂末端的调整模式判定错误,并通过预测模型更新最大引导力向量和最大引导力矩向量的权重比,根据新的权重比确定新的调整模式,按照新的调整模式控制机械臂末端运动,从而逐步掌握操作者的引导调整控制习惯,降低误判率,提高引导调整效率。具体的,包括以下步骤:

步骤1,在根据各个关节模组的调整量控制机械臂末端进行移动的过程中,采集到外力的方向与机械臂的调整方向不一致,则更新最大引导力向量和最大引导力矩向量的权重比,返回根据权重比,确定加权后的最大引导力向量与加权后的最大引导力矩向量的比值步骤并继续执行,直至在机械臂移动的过程中,采集到外力的方向与机械臂的调整方向一致。

其中,由于机械臂末端的调整方向根据初始外力确定的,初始外力为操作者施加在机械臂引导部件上最早时间对应的外力,因此,计算机设备根据初始外力确定机械臂末端的调整方向后,只有机械臂末端移动后,才能得知机械臂末端的调整方向与操作者施加外力时对应的意愿方向是否一致,若机械臂末端的调整方向与操作者施加外力时对应的意愿方向一致,则操作者施加在机械臂引导部件上的外力方向保持不变,直至下一调整环节;若机械臂末端的调整方向与操作者施加外力时对应的意愿方向不一致,则操作者改变施加在机械臂引导部件上的外力方向,将机械臂末端拖回至移动前位置,并继续拖动机械臂末端的位置,直至机械臂末端的位置处于预期位置。

本实施例采用预测模型更新最大引导力向量和最大引导力矩向量的权重比,预测模型采用监督性机器学习算法,学习过程更新参数为判定运动模式所用的最大引导力向量和最大引导力矩向量权重比。

预测模型的输入层参考量和输出层参考量如表1所示:

表1

预测模型的训练过程如图14所示,规定在学习过程中,初次判定最大引导力向量方向并移动后,较短时间内接收到与初始外力方向相反的外力,则视为运动模式误判为位移模式,正确为转动模式,被人工进行纠正,记录为一次位移误判,此时增加最大引导力矩向量权重,降低最大引导力向量权重;转动误判同理,结果为增加最大引导力向量权重,降低最大引导力矩向量权重;预测模型输出为不断更新的权重比,旨在提高预测模型对最大引导力向量和最大引导力矩向量加权后大小判定的准确率,降低运动模式误判概率,使机械臂反应更加符合操作者用力习惯。

在一些实施例中,为适用于机械臂控制情景,本实施例基于不同的环境需求提出了多种适配神经网络框架搭建预测模型方案,以贴近实际控制需求,具体包括感知机模型以及后向传播学习的前馈型神经网络。

感知机模型适用于算力不充分的环境,感知机模型算法的框架如图15所示,将预测模型的输入层参考量输入至随机梯度下降型感知机模型,感知机模型输出成功分类的最大分解向量以及误分类的最大分解向量,根据误分类的最大分解向量,确定感知机模型损失函数,并更新感知机模型的参数;根据成功分类的最大分解向量,输出感知机模型判定后的最大分解向量。

后向传播学习的前馈型神经网络适用于算力充足的情况,馈型神经网络的框架如图16所示,将预测模型的输入层参考量输入至前馈型神经网络,经过前馈型神经网络运算后,输出预测的最大分解向量,计算预测的最大分解向量与实际的最大分解向量之间的预测参考量误差,根据预测参考量误差进行反向传播并更新前馈型神经网络的参数,得到训练好的前馈型神经网络,训练好的前馈型神经网络输出判定后的最大分解向量。

可选地,如图17所示,计算机设备获取六维力传感器A采集的外力信息,进行零点补偿和重力补偿后滤波处理后,依照初始的权重比进行加权计算,判定运动模式为位移模式或是转动模式,根据机械臂的逆向运动学解,确定机械臂末端的辅助力,根据辅助力控制机械臂移动,在根据各个关节模组的调整量控制机械臂末端进行移动的过程中,采集到外力的方向与机械臂的调整方向不一致,则判定运动模式误判,通过预测模型更新最大引导力向量和最大引导力矩向量的权重比,返回根据权重比,确定加权后的最大引导力向量与加权后的最大引导力矩向量的比值步骤并继续执行,确定新的机械臂末端的调整方向和调整量,并按照新的调整方向和调整量控制机械臂移动,直至在机械臂移动的过程中,采集到外力的方向与机械臂的调整方向一致。

步骤2,在外力的方向与机械臂的调整方向一致后,继续控制机械臂末端移动,直至达到预期位置。

可选地,在外力的方向与机械臂的调整方向一致后,确定最新的机械臂末端的调整方向和调整量,并按照最新的机械臂末端的调整方向和调整量控制机械臂继续移动,直至机械臂末端位置达到预期位置。

本实施例中,在根据各个关节模组的调整量控制机械臂末端进行移动的过程中,实时采集机械臂末端的运动方向,若在机械臂末端开始运动后的短时间内接收到与初始外力相反的外力时,判定机械臂末端的调整模式判定错误,并通过预测模型更新最大引导力向量和最大引导力矩向量的权重比,根据新的权重比确定新的调整模式,按照新的调整模式控制机械臂末端运动,从而逐步掌握操作者的引导调整控制习惯,在使用过程中逐步提高反应能力与判定准确率,降低误判率,提高引导调整效率。

在一个实施例中,本实施例的机械臂末端位置控制算法开始和结束时对应的判定参考量如表2所示:

表2

本实施例的控制调整模式开始与结束判定过程示意图如图18所示,获取机械臂引导部件上的外力,若外力的持续时间未超过计算机设备的响应阈值,则机械臂停止运动;若外力的持续时间超过计算机设备的响应阈值,则从外力作用在械臂引导部件上时开始计时,若外力持续时间达到开始阈值,则根据上述实施例判定机械臂末端运动模式,以及机械臂末端的辅助力后,按照辅助力开始调整机械臂末端的初始位姿。

本实施例中,根据处理后得到的最大分解向量进行一系列判定,从而进入或者退出调整模式,实现根据外力变化做出相应反应的功能。

在一个实施例中,本实施例提供机械臂引导方法最详细的步骤,具体包括以下步骤:

步骤1,根据外力传感器采集作用在机械臂引导部件上的外力信息;外力信息包括用于引导机械臂平移的引导力和/或用于引导机械臂转动的引导力矩。

步骤2,若外力传感器为六维力传感器A,则确定外力信息分解至外力传感器坐标系中各轴向上的分解向量,外力传感器坐标系轴向方向上的最大分解向量包括最大引导力向量和最大引导力矩向量;若外力传感器为三维力传感器B和三维力矩传感器C,则确定外力信息分解至外力传感器坐标系中各轴向上的分解向量,外力传感器坐标系轴向方向上的最大分解向量为最大引导力向量或最大引导力矩向量。

步骤3,判定最大分解向量的类型,若最大分解向量为最大引导力向量,则执行步骤4;若最大分解向量为最大引导力矩向量,则执行步骤5;若最大分解向量包括最大引导力向量和最大引导力矩向量,则执行步骤6。

步骤4,将最大引导力向量的方向作为机械臂的平移方向,将最大引导力向量的模值作为机械臂的平移距离,执行步骤9。

步骤5,以最大引导力矩向量位于外力传感器坐标系的坐标轴为旋转轴,以最大引导力矩向量的方向为机械臂的旋转方向,根据最大引导力矩向量的模值,确定机械臂的旋转加速度,执行步骤9。

步骤6,确定最大引导力向量和最大引导力矩向量的权重比;根据权重比,确定加权后的最大引导力向量与加权后的最大引导力矩向量的比值;若比值大于1,则将最大引导力向量的方向作为机械臂的平移方向,将最大引导力向量的模值作为机械臂的平移距离;若比值小于1,则以最大引导力矩向量位于外力传感器坐标系的坐标轴为旋转轴,以最大引导力矩向量的方向为机械臂的旋转方向,根据最大引导力矩向量的模值,确定机械臂的旋转加速度。

步骤7,根据机械臂末端的初始位姿、机械臂末端的调整方向和调整量,确定机械臂的各关节模组所需调整量。

步骤8,根据各个关节模组的调整量,控制机械臂末端移动,在根据各个关节模组的调整量控制机械臂末端进行移动的过程中,采集到外力的方向与机械臂的调整方向不一致,则更新最大引导力向量和最大引导力矩向量的权重比,返回根据权重比,确定加权后的最大引导力向量与加权后的最大引导力矩向量的比值步骤并继续执行,直至在机械臂移动的过程中,采集到外力的方向与机械臂的调整方向一致;在外力的方向与机械臂的调整方向一致后,继续控制机械臂末端移动,直至达到预期位置,结束调整过程。

步骤9,根据机械臂末端的初始位姿、机械臂末端的调整方向和调整量,确定机械臂的各关节模组所需调整量。

步骤10,根据各个关节模组的调整量,控制机械臂末端移动,直至机械臂末端的位置处于预期位置,结束调整过程。

本实施例,提供两种采集外力以及两种控制机械臂末端移动的实施例,降低了机械臂位姿调整操作难度,简化了操作流程,降低了操作者培训成本,提高了力引导控制调整功能操作性。

应该理解的是,虽然如上所述的各实施例所涉及的流程图中的各个步骤按照箭头的指示依次显示,但是这些步骤并不是必然按照箭头指示的顺序依次执行。除非本文中有明确的说明,这些步骤的执行并没有严格的顺序限制,这些步骤可以以其它的顺序执行。而且,如上所述的各实施例所涉及的流程图中的至少一部分步骤可以包括多个步骤或者多个阶段,这些步骤或者阶段并不必然是在同一时刻执行完成,而是可以在不同的时刻执行,这些步骤或者阶段的执行顺序也不必然是依次进行,而是可以与其它步骤或者其它步骤中的步骤或者阶段的至少一部分轮流或者交替地执行。

基于同样的发明构思,本申请实施例还提供了一种用于实现上述所涉及的机械臂引导方法的机械臂引导装置。该装置所提供的解决问题的实现方案与上述方法中所记载的实现方案相似,故下面所提供的一个或多个机械臂引导装置实施例中的具体限定可以参见上文中对于机械臂引导方法的限定,在此不再赘述。

在一个实施例中,如图19所示,提供了一种机械臂引导装置,包括:

采集模块100,用于根据外力传感器采集作用在机械臂引导部件上的外力信息;外力信息包括用于引导机械臂平移的引导力和/或用于引导机械臂转动的引导力矩;

力分解模块200,根据外力信息分解至外力传感器坐标系中各轴向上的分解向量,确定外力传感器坐标系轴向方向上的最大分解向量;

引导模块300,用于按照最大分解向量的方向和大小,调整机械臂末端的初始位姿,以使机械臂末端的位置处于预期位置。

在其中一个实施例中,力分解模块200还用于:若外力传感器为六维力传感器A,则确定外力信息分解至外力传感器坐标系中各轴向上的分解向量,外力传感器坐标系轴向方向上的最大分解向量包括最大引导力向量和最大引导力矩向量;若外力传感器为三维力传感器B和三维力矩传感器C,则确定外力信息分解至外力传感器坐标系中各轴向上的分解向量,外力传感器坐标系轴向方向上的最大分解向量为最大引导力向量或最大引导力矩向量。

在其中一个实施例中,引导模块300还用于:根据最大分解向量的方向和大小,确定机械臂末端的调整方向和调整量;

根据机械臂末端的初始位姿、机械臂末端的调整方向和调整量,确定机械臂的各关节模组所需调整方向和调整量;

根据各个关节模组的调整方向和调整量,控制机械臂末端移动,直至机械臂末端的位置处于预期位置。

在其中一个实施例中,最大分解向量为最大引导力向量,引导模块300还用于:将最大引导力向量的方向作为机械臂的平移方向,将最大引导力向量的模值作为机械臂末端的平移距离。

在其中一个实施例中,最大分解向量为最大引导力矩向量,引导模块300还用于:以最大引导力矩向量位于外力传感器坐标系的坐标轴为旋转轴,以最大引导力矩向量的方向为机械臂末端的旋转方向,根据最大引导力矩向量的模值,确定机械臂末端的旋转加速度。

在其中一个实施例中,最大分解向量包括最大引导力向量和最大引导力矩向量,引导模块300还用于:

确定最大引导力向量和最大引导力矩向量的权重比;

根据权重比,确定加权后的最大引导力向量与加权后的最大引导力矩向量的比值;

若比值大于1,则将最大引导力向量的方向作为机械臂末端的平移方向,将最大引导力向量的模值作为机械臂末端的平移距离;

若比值小于1,则以最大引导力矩向量位于外力传感器坐标系的坐标轴为旋转轴,以最大引导力矩向量的方向为机械臂末端的旋转方向,根据最大引导力矩向量的模值,确定机械臂末端的旋转加速度。

在其中一个实施例中,引导模块300还用于:在根据各个关节模组的调整量控制机械臂末端进行移动的过程中,采集到外力的方向与机械臂的调整方向不一致,则更新最大引导力向量和最大引导力矩向量的权重比,返回根据权重比,确定加权后的最大引导力向量与加权后的最大引导力矩向量的比值步骤并继续执行,直至在机械臂移动的过程中,采集到外力的方向与机械臂的调整方向一致;

在外力的方向与机械臂的调整方向一致后,继续控制机械臂末端移动,直至达到预期位置。

在其中一个实施例中,引导模块300还用于将外力的大小和方向输入至预先训练好的预测模型中,预测模型输出更新后的最大引导力向量和最大引导力矩向量的权重比。

上述机械臂引导装置中的各个模块可全部或部分通过软件、硬件及其组合来实现。上述各模块可以硬件形式内嵌于或独立于计算机设备中的处理器中,也可以以软件形式存储于计算机设备中的存储器中,以便于处理器调用执行以上各个模块对应的操作。

在一个实施例中,提供了一种计算机设备,该计算机设备可以是终端,其内部结构图可以如图20所示。该计算机设备包括处理器、存储器、输入/输出接口、通信接口、显示单元和输入装置。其中,处理器、存储器和输入/输出接口通过系统总线连接,通信接口、显示单元和输入装置通过输入/输出接口连接到系统总线。其中,该计算机设备的处理器用于提供计算和控制能力。该计算机设备的存储器包括非易失性存储介质和内存储器。该非易失性存储介质存储有操作系统和计算机程序。该内存储器为非易失性存储介质中的操作系统和计算机程序的运行提供环境。该计算机设备的输入/输出接口用于处理器与外部设备之间交换信息。该计算机设备的通信接口用于与外部的终端进行有线或无线方式的通信,无线方式可通过WIFI、移动蜂窝网络、NFC(近场通信)或其他技术实现。该计算机程序被处理器执行时以实现一种机械臂引导方法。该计算机设备的显示单元用于形成视觉可见的画面,可以是显示屏、投影装置或虚拟现实成像装置。显示屏可以是液晶显示屏或者电子墨水显示屏,该计算机设备的输入装置可以是显示屏上覆盖的触摸层,也可以是计算机设备外壳上设置的按键、轨迹球或触控板,还可以是外接的键盘、触控板或鼠标等。

本领域技术人员可以理解,图20中示出的结构,仅仅是与本申请方案相关的部分结构的框图,并不构成对本申请方案所应用于其上的计算机设备的限定,具体的计算机设备可以包括比图中所示更多或更少的部件,或者组合某些部件,或者具有不同的部件布置。

在一个实施例中,提供了一种计算机设备,包括存储器和处理器,存储器中存储有计算机程序,该处理器执行计算机程序时实现上述各方法实施例中的步骤。

在一个实施例中,提供了一种计算机可读存储介质,其上存储有计算机程序,计算机程序被处理器执行时实现上述各方法实施例中的步骤。

在一个实施例中,提供了一种计算机程序产品,包括计算机程序,该计算机程序被处理器执行时实现实现上述各方法实施例中的步骤。

需要说明的是,本申请所涉及的用户信息(包括但不限于用户设备信息、用户个人信息等)和数据(包括但不限于用于分析的数据、存储的数据、展示的数据等),均为经用户授权或者经过各方充分授权的信息和数据,且相关数据的收集、使用和处理需要遵守相关国家和地区的相关法律法规和标准。

本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的计算机程序可存储于一非易失性计算机可读取存储介质中,该计算机程序在执行时,可包括如上述各方法的实施例的流程。其中,本申请所提供的各实施例中所使用的对存储器、数据库或其它介质的任何引用,均可包括非易失性和易失性存储器中的至少一种。非易失性存储器可包括只读存储器(Read-OnlyMemory,ROM)、磁带、软盘、闪存、光存储器、高密度嵌入式非易失性存储器、阻变存储器(ReRAM)、磁变存储器(Magnetoresistive Random Access Memory,MRAM)、铁电存储器(Ferroelectric Random Access Memory,FRAM)、相变存储器(Phase Change Memory,PCM)、石墨烯存储器等。易失性存储器可包括随机存取存储器(Random Access Memory,RAM)或外部高速缓冲存储器等。作为说明而非局限,RAM可以是多种形式,比如静态随机存取存储器(Static Random Access Memory,SRAM)或动态随机存取存储器(Dynamic RandomAccess Memory,DRAM)等。本申请所提供的各实施例中所涉及的数据库可包括关系型数据库和非关系型数据库中至少一种。非关系型数据库可包括基于区块链的分布式数据库等,不限于此。本申请所提供的各实施例中所涉及的处理器可为通用处理器、中央处理器、图形处理器、数字信号处理器、可编程逻辑器、基于量子计算的数据处理逻辑器等,不限于此。

以上实施例的各技术特征可以进行任意的组合,为使描述简洁,未对上述实施例中的各个技术特征所有可能的组合都进行描述,然而,只要这些技术特征的组合不存在矛盾,都应当认为是本说明书记载的范围。

以上所述实施例仅表达了本申请的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对本申请专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本申请构思的前提下,还可以做出若干变形和改进,这些都属于本申请的保护范围。因此,本申请的保护范围应以所附权利要求为准。

技术分类

06120115927502