机械臂作业控制方法、控制设备及计算机可读存储介质与流程
本发明涉及机器控制技术领域,尤其是涉及一种机械臂作业控制方法、控制设备及计算机可读存储介质。
背景技术:
目前,在建筑装饰装修工程中,室内自主墙面抹灰环节的工作质量决定着房屋的实用性和美观性。自主化机器人通过工位设定及转换,以使自主化机器人代替人工进行繁复的墙面作业操作。
然而,在相关技术中,自主化机器人的主部件为若干自由度串联机械臂,其操作灵活性上存在严重不足。
技术实现要素:
本发明旨在至少解决现有技术中存在的技术问题之一。为此,本发明提出一种机械臂作业控制方法,能够根据关节增量信息对目标关节进行位姿调节以使机械臂位姿为目标位姿。
根据本发明的第一方面实施例的机械臂作业控制方法,所述机械臂设有初始关节和至少一个目标关节,所述机械臂的末端设有末端执行器,包括:获取初始关节位置信息、当前臂形信息;根据所述初始关节位置信息、所述当前臂形信息得到目标关节当前位姿信息;获取预设末端位姿信息,根据所述初始关节位置信息、所述预设末端位姿信息得到笛卡尔路径;根据所述笛卡尔路径得到预设末端子路径位置信息;根据所述预设末端子路径位置信息、所述末端当前位姿信息得到位姿误差信息;根据所述位姿误差信息进行梯度投影处理及冗余分解并获得关节增量信息;根据所述目标关节当前位姿信息、所述关节增量信息调节所述目标关节的位姿。
根据本发明实施例的机械臂作业控制方法,至少具有如下有益效果:根据预设末端位姿信息、当前末端位姿信息得到位姿误差信息,并对位姿误差信息进行梯度投影及冗余分解以计算关节增量,根据关节增量信息对目标关节进行位置调节以使机械臂位姿为目标位姿。通过调节机械臂中目标关节的位姿以完成机械臂作业,并通过冗余分解以对机械臂的冗余度及位姿误差信息进行分解,从而提高机械臂作业过程中机械臂的灵活性。
根据本发明的一些实施例,包括:根据所述预设末端位姿信息得到末端速度信息,根据所述目标关节当前位姿信息得到目标关节速度信息;根据所述末端速度信息、所述目标关节速度信息、雅克比矩阵得到目标关节速度信息通解;根据所述目标关节当前位姿信息、所述关节增量信息、所述目标关节速度信息通解调节所述目标关节的位姿。
根据本发明的一些实施例,包括:预设权矩阵为单位矩阵,并根据所述雅克比矩阵的广逆矩阵、矢量信息、末端速度信息获取所述目标关节速度信息通解。
根据本发明的一些实施例,所述梯度投影处理,还包括:根据自由向量、标量系数得到所述矢量信息;根据所述矢量信息调节所述目标关节的位姿;其中,所述自由向量为所述机械臂性能系数的梯度。
根据本发明的一些实施例,根据所述梯度使所述性能系数为最小值,并根据所述机械臂的类型选择对应放大系数;根据所述放大系数、所述目标关节的可调节范围得到所述自由向量。
根据本发明的一些实施例,还包括:所述笛卡尔路径进行离散化及轨迹插值处理以生成若干笛卡尔子路径;根据所述笛卡尔子路径的起点、终点的差值得到所述位姿误差信息;根据所述位姿误差信息得到所述关节增量信息;根据所述关节增量信息进行迭代得到相邻关节的关节增量信息。
根据本发明的一些实施例,还包括:根据所述机械臂的阻抗特性,调节所述机械臂的末端接触力与末端位置的关系;根据所述机械臂的末端接触力与末端位置的关系得到第一目标阻抗模型;根据所述第一目标阻抗模型调节所述末端执行器的输出功率。
根据本发明的一些实施例,还包括:根据目标末端接触力与实际接触力得到接触力偏差值;根据所述第一目标阻抗模型、所述接触力偏差值得到第二目标阻抗模型;根据所述第二目标阻抗模型调节所述末端执行器的输出功率。
根据本发明的一些实施例,还包括:根据所述位姿误差信息、第二目标阻抗模型调节所述机械臂的末端接触力与末端位置;或根据所述接触力偏差值、第二目标阻抗模型调节所述机械臂的末端接触力与末端位置。
根据本发明的一些实施例,还包括:所述末端执行器中设有末端电机;根据期望系统刚度、角度差值、期望系统阻尼、速度差值得到阻抗系统输出力矩;根据阻抗系统输出力矩、实际力矩得到力矩误差。
根据本发明的第二方面实施例的机械臂控制设备,包括:至少一个处理器,以及,与至少一个处理器通信连接的存储器;其中,存储器存储有指令,指令被至少一个处理器执行,以使至少一个处理器执行指令时实现上述任一实施例中的机械臂作业控制方法。
根据本发明的第三方面实施例的一种计算机可读存储介质,其特征在于,计算机可读存储介质存储有计算机可执行指令,计算机可执行指令用于使计算机执行上述任一实施例的机械臂作业控制方法。
本发明的附加方面和优点将在下面的描述中部分给出,部分将从下面的描述中变得明显,或通过本发明的实践了解到。
附图说明
本发明的上述和/或附加的方面和优点从结合下面附图对实施例的描述中将变得明显和容易理解,其中:
图1为本发明实施例机械臂作业控制方法的流程示意图;
图2为本发明又一实施例机械臂作业控制方法的流程示意图;
图3为本发明在一实施例机械臂作业控制方法的流程示意图;
图4为本发明实施例输出装置阻抗控制流程示意图。
具体实施方式
在本发明的描述中,若干的含义是一个或者多个,多个的含义是两个以上,大于、小于、超过等理解为不包括本数,以上、以下、以内等理解为包括本数。如果有描述到第一、第二只是用于区分技术特征为目的,而不能理解为指示或暗示相对重要性或者隐含指明所指示的技术特征的数量或者隐含指明所指示的技术特征的先后关系。
本发明的描述中,除非另有明确的限定,设置、安装、连接等词语应做广义理解,所属技术领域技术人员可以结合技术方案的具体内容合理确定上述词语在本发明中的具体含义。
参照图1,一种机械臂作业控制方法,机械臂设有初始关节和至少一个目标关节,机械臂的末端设有末端执行器,包括:s100、获取初始关节位置信息、当前臂形信息;s200、根据初始关节位置信息、当前臂形信息得到目标关节当前位姿信息;s300、获取预设末端位姿信息,根据初始关节位置信息、预设末端位姿信息得到笛卡尔路径;s400、根据笛卡尔路径得到预设末端子路径位置信息;s500、根据预设末端子路径位置信息、末端当前位姿信息得到位姿误差信息;s600、根据位姿误差信息进行梯度投影处理及冗余分解并获得关节增量信息;s700、根据目标关节当前位姿信息、关节增量信息调节目标关节的位姿。
通过机械臂的当前臂形信息及初始关节位置信息,得到机械臂的目标关节当前位姿信息,以确定目标关节的当前位姿;根据笛卡尔路径及机械臂中的目标关节以获取预设末端子路径位置信息。
此外,根据预设末端子路径位置信息、末端当前位姿信息得到位姿误差信息,进而对位姿误差信息进行梯度投影处理及冗余分解以得到关节增量信息,并根据关节增量信息调节目标关节的位姿。通过将目标关节的位姿调节为预设位姿,以对机械臂的臂形进行调节,从而调节末端执行器的执行位置。
在一些实施例中,机械臂中设有多个关节,以构建六个自由度的串联机械臂,并在机械臂的末端设置涂抹装置或者喷涂装置。
在一些实施例中,通过对位姿误差信息进行梯度投影及冗余分解以计算关节增量,从而生成对应的关节增量信息。即通过对位姿误差信息进行梯度投影以对机械臂的位姿非线性规划进行求解,从而求得非线性路径规划的最优解。通过冗余分解以对机械臂的冗余度进行进行分解以在保证机械臂末端的涂抹装置或者喷涂装置位姿为预设位姿的情况下,避免关节位姿极限所导致的位姿差距,从而对机械臂位姿的非线性路径规划的最优解进行二次优化。例如,通过结合梯度投影、冗余分解以对机械的非线性规划进行最优解求取,并根据最优解对机械臂的路径进行调节,从而将保证机械臂末端的涂抹装置或者喷涂装置的位姿调整为预设位姿。
在一些实施例中,根据关节增量信息对目标关节进行位置调节以使机械臂位姿为目标位姿。例如机械臂包括多个关节,根据相邻关节之间的位置关系对关节增量信息进行迭代,以获得与多个目标关节对应的关节增量,并根据对应的关节增量对相应的目标关节进行位姿调节,从而通过动态地调节机械臂的位姿并完成机械臂动态作业。
例如,通过调节机械臂的位姿使得机械臂完成一系列的涂抹动作,从而通过机械臂对墙体进行墙面抹灰作业。通过机械臂对墙体完成抹灰作业,可代替传统的人工作业,减少人力成本。且通过后台进行自动化作业,机械臂可适应不同的环境,例如,低氧环境。
其中,获取初始关节位置信息θinitial、检测到的当前臂型信息,并根据初始关节位置信息θinitial、当前臂型信息得到目标关节当前位姿信息xjoint;获取预设末端位姿信息xfinal并得到笛卡尔路径;对笛卡尔路径进行离散化以生成若干笛卡尔子路径;根据笛卡尔子路径选取对应目标关节并得到预设末端子路径位姿信息xref=f(xinitial,xfinal);根据机械臂的当前末端位姿信息xcur=f(θcur,dl),预设末端子路径位姿信息xref=f(xinitial,xfinal)得到位姿误差信息δx(δx=xref-xcur);对位姿误差信息δx进行梯度投影处理及冗余分解并获得关节增量信息;根据目标关节当前位姿信息、关节增量信息调节目标关节的位姿。
在一些实施例中,机械臂中至少设有第一关节、第二关节、第三关节。通过将第一关节作为初始关节、第二关节作为目标关节,以对第二关节进行位姿调节;通过将第二关节作为初始关节、第三关节作为目标关节,以对第三关节进行位姿调节,从而对整个机械臂的位姿进行调节。通过对机械臂中关节的位姿进行逐级迭代调节,以使得机械臂完成多自由度调节,从而完成复杂的墙体抹灰作业。
请一并参照图1、图2,在一些实施例中,机械臂作业控制方法,包括:s701、处理器根据预设末端位姿信息得到末端速度信息,根据目标关节当前位姿信息得到目标关节速度信息;s702、处理器根据末端速度信息、目标关节速度信息、雅克比矩阵得到目标关节速度信息通解;s703、控制器根据目标关节当前位姿信息、关节增量信息、目标关节速度信息通解调节目标关节的位姿。
在机械臂在作业过程中,各个关节均为运动状态,根据当前末端位姿信息得到末端速度信息,根据初始关节位置信息得到关节速度信息,以对机械臂的关节速度进行动态分析,以实现动态调节。此外,通过关节速度信息调节机械臂的作业状态或位姿,从而使机械臂工作具有较优的连贯性。
例如,机械臂的运动学速度方程为
其中,
基于梯度投影法,式(1-1)的通解为
其中,w∈rm×n为权矩阵。
在一些实施例中,机械臂作业控制方法,包括:预设权矩阵为单位矩阵,并根据雅克比矩阵的广逆矩阵、矢量信息、末端速度信息获取目标关节速度信息通解。
通过调节权矩阵的值以使得调节机械臂末端关节上执行器的速度
例如,取w=i时,式(1-1)变为
其中,j+=jt(jjt)-1为j的广义逆矩阵,又称伪逆矩阵;i∈rn×n为单位矩阵;
在一些实施例中,机械臂作业控制方法,梯度投影处理包括:根据自由向量、标量系数得到矢量信息;根据矢量信息以对关节增量进行梯度投影。其中,自由向量为机械臂的性能系数的梯度。通过结合机械臂的机械臂性能系数,以调节目标关节的位置,以优化机械臂的在实际工作性能。
通过求机械臂的性能系数的梯度得到自由向量,并根据自由向量、标量系数得到矢量信息。
例如,
式(1-3)
通过自由向量
式中,
通过求解
式(1-5)中,αi=[θimax+θimin]/2为各关节允许的范围的中值,对关节范围的优化方式为使h(θ)为最小值。
在一些实施例中,机械臂作业控制方法,还包括:根据梯度使性能系数为最小值,并根据机械臂的类型选择对应放大系数k;根据放大系数k、目标关节的可调节范围得到自由向量。
通过使得梯度使性能系数为最小值并对应调节放大系数以调节任意矢量信息,从而实现机械臂位姿调节最优解。
根据机械臂关节的调节范围,选择不同的放大系数k,自由向量
式(1-6)可解决宏微机器人在运动规划时,微机器人运动范围受限,导致无法满足整体运动的问题。其中,放大系数设置为k=[-5×10-2i3×3]
此外,为实现宏机械臂负责大范围的空间移动,微机械臂负责姿态调节,式(1-2)中权矩阵w设定为:
在一些实施例中,机械臂作业控制方法,还包括:s401、对笛卡尔路径进行离散化及轨迹插值处理以生成若干笛卡尔子路径并得到预设末端子路径位置信息;s402、根据预设末端子路径位置信息、末端当前位姿信息得到位姿误差信息;s403、根据位姿误差信息得到关节增量信息,并对关节增量信息进行迭代得到相邻关节的关节增量信息。
通过对笛卡尔路径进行离散化成一系列中间点并轨迹插值处理。通过设定运动时间t、机械臂的采样周期t,将笛卡尔路径等分为k=t/t段。
其中,第n段的末端点为第n+1段的末端点,且相邻路径点间隔极小,机器人在路径的每一小段上的运动可近似速度为δθ的匀速运动,由式(1-1)可得,
δx=jδθ(1-8)
式中,δx为相邻路径点间位姿误差;δθ为相邻路径点对应的机器人关节增量。
式中kp——pid系数矩阵,
机械臂末端在空间中的每一段路径上起点和终点的位姿分别为xc和xd,对应的机器人关节位置为θc和θd,则有
θd=θc+tδθ(1-10)
在一些实施例中,机械臂作业控制方法,还包括:根据机械臂的阻抗特性,调节机械臂的末端接触力与末端位置的关系;根据机械臂的末端接触力与末端位置的关系设置第一目标阻抗模型。
其中,定义机械臂和环境之间的接触力与位置的比值为机械臂的机械阻抗。根据机械臂的阻抗特性,调节机械臂的末端接触力与末端位置的关系,以实现精准的机械臂末端力/位置跟随控制。根据机械臂的末端接触力与末端位置的关系设置第一目标阻抗模型,通过第一目标阻抗模型对机械臂的位姿调节以实现机械臂位姿调节。
第一阻抗模型二阶微分动力学方程可表示为
式中m为系统质量;c为阻尼系数;k为刚度系数;f为环境接触力。
由式(2-1)可得第一目标阻抗模型具以下三种形式
式中md,bd,kd分别为目标阻抗模型的惯性矩阵、阻尼矩阵和刚度矩阵;
在一些实施例中,机械臂作业控制方法,还包括:根据目标末端接触力与实际接触力得到接触力偏差值;根据第一目标阻抗模型、接触力偏差值得到第二目标阻抗模型。
通过引入目标末端接触力fd与实际接触力f,并求解两者差值,并将接触力偏差fe=f-fd引入式(2-2)中可得第二阻抗模型:
为保证更精准的力控制,通常选择式(2-3)中的第二阻抗模型的第三种目标阻抗模型,即
在一些实施例中,机械臂作业控制方法,还包括:根据位姿误差信息、第二目标阻抗模型调节机械臂的末端接触力与末端位置。
通过第二目标阻抗模型将机械臂末端的位置偏差转换为机械臂末端与环境之间的目标接触力,并通过内环控制回路对机械臂进行关节力矩闭环控制,使机械臂与环境之间的实际接触力跟随目标接触力。
在一些实施例中,根据接触力偏差值、第二目标阻抗模型调节机械臂的末端接触力与末端位置。通过机械臂与环境之间的接触力偏差转化为机械臂关节位置反馈调节,以修正机器人的末端位置并使得实际接触力跟随目标接触力。
请参照图4,在一些实施例中,机械臂作业控制方法,还包括:根据期望系统刚度、角度差值、期望系统阻尼、速度差值得到阻抗系统输出力矩;根据阻抗系统输出力矩、实际力矩得到力矩误差;根据力矩误差调节末端电机输出力矩。
根据力矩误差调节末端电机输出力矩,以对机械臂末端执行机构的输出角度位移进行柔顺接触控制,从而控制执行机构与待作业墙体的接触状态。
其中,执行机构阻抗控制模型为:
式中,kim为期望系统刚度;dim为期望系统阻尼;fim为阻抗系统输出力/力矩;θdes为期望角度;θact为实际角度;
en=fact-fim(2-6)
由于阻抗控制的内环为力控制,通过控制电机的电流,以控制输出为
u=un+kfifim(2-7)
式中kfi——电机力矩/电流转化系数。
如图4所示,通过实地测试的测试数据以获取对应的参数列表,根据参数列表进行施工状态判断得到执行机构的期望角度θdes;对执行机构进行角度检测得到实际角度θact;根据期望角度θdes、实际角度θact得到期望速度
通过施工状态判断得到当前的期望系统刚度kim、期望系统阻尼dim。通过期望角度θdes、实际角度θact、期望速度
通过力传感器获得执行机构的实际力矩fact,并通过阻抗力矩fim、实际力矩fact得到误差量en。
根据误差量en对执行机构的控制信号进行比例积分微分控制(pid控制),以调节执行机构的力矩,具体地,根据实际力矩fact、阻抗力矩fim调节执行机构的控制电机的电流值以调节执行机构的电机力矩。
在一些实施例中,根据实际力矩fact、阻抗力矩fim、机械臂的重力补偿系数fcom得到误差量en,根据误差量en对执行机构的控制信号进行比例积分微分控制(pid控制),以调节执行机构的力矩。
其中,重力补偿系数fcom用于补偿重力对机械臂影响,通过引用重力补偿系数fcom以消除重力力矩对机械臂关节的非线性扰动。根据重力补偿系数fcom、机械臂的位姿及末端执行器的工作状态及执行信息生成对应重力补偿信息,并根据重力补偿信息对机械臂工作进行重力补偿。
在一些实施例中,本发明实施例还提供一种机械臂控制设备,包括:至少一个处理器,以及,与至少一个处理器通信连接的存储器;其中,存储器存储有指令,指令被至少一个处理器执行,以使至少一个处理器执行指令时实现上述任一实施例中的机械臂作业控制方法。
其中,执行器执行处理器下发的指令,执行器可为机械臂中若干关节及设置于机械臂末端的末端执行器,通过该控制设备对控制机械臂的位姿及末端执行器的工作状态,以使得机械臂完成不同的执行指令,例如,执行器根据处理器下发的指令完全墙面抹灰操作。通过机械臂作业控制方法调整机械臂位姿,以使得机械臂进行位姿变换,从而对墙面的指定位置进行抹灰。
通过阻抗模型以对末端执行器进行柔顺接触控制,从而使得末端执行器可在墙面上均匀地涂抹墙灰。
在一些实施例中,本发明实施例还提供一种计算机可读存储介质,其特征在于,计算机可读存储介质存储有计算机可执行指令,计算机可执行指令用于使计算机执行上述任一实施例的机械臂作业控制方法。
通过将上述方法进行编程以存储于计算机可读存储介质中,以通过处理器对计算机可读存储介质进行调用,从而快速执行上述实施例中的机械臂作业控制方法。
上面结合附图对本发明实施例作了详细说明,但是本发明不限于上述实施例,在所属技术领域普通技术人员所具备的知识范围内,还可以在不脱离本发明宗旨的前提下作出各种变化。
以上所描述的装置实施例仅仅是示意性的,其中作为分离部件说明的单元可以是或者也可以不是物理上分开的,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。
本领域普通技术人员可以理解,上文中所公开方法中的全部或某些步骤、系统可以被实施为软件、固件、硬件及其适当的组合。某些物理组件或所有物理组件可以被实施为由处理器,如中央处理器、数字信号处理器或微处理器执行的软件,或者被实施为硬件,或者被实施为集成电路,如专用集成电路。
在本说明书的描述中,参考术语“一个实施例”、“一些实施例”、“示意性实施例”、“示例”、“具体示例”、或“一些示例”等的描述意指结合该实施例或示例描述的具体特征、结构、材料或者特点包含于本发明的至少一个实施例或示例中。在本说明书中,对上述术语的示意性表述不一定指的是相同的实施例或示例。而且,描述的具体特征、结构、材料或者特点可以在任何的一个或多个实施例或示例中以合适的方式结合。
尽管已经示出和描述了本发明的实施例,本领域的普通技术人员可以理解:在不脱离本发明的原理和宗旨的情况下可以对这些实施例进行多种变化、修改、替换和变型,本发明的范围由权利要求及其等同物限定。
起点商标作为专业知识产权交易平台,可以帮助大家解决很多问题,如果大家想要了解更多知产交易信息请点击 【在线咨询】或添加微信 【19522093243】与客服一对一沟通,为大家解决相关问题。
此文章来源于网络,如有侵权,请联系删除