CN109483551B - 一种控制机器人多轴运动的方法、装置及系统 - Google Patents
一种控制机器人多轴运动的方法、装置及系统 Download PDFInfo
- Publication number
- CN109483551B CN109483551B CN201811603477.3A CN201811603477A CN109483551B CN 109483551 B CN109483551 B CN 109483551B CN 201811603477 A CN201811603477 A CN 201811603477A CN 109483551 B CN109483551 B CN 109483551B
- Authority
- CN
- China
- Prior art keywords
- motion
- axis
- robot
- end effector
- coordinate system
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Images
Classifications
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B25—HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
- B25J—MANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
- B25J9/00—Programme-controlled manipulators
- B25J9/16—Programme controls
- B25J9/1602—Programme controls characterised by the control system, structure, architecture
- B25J9/1607—Calculation of inertia, jacobian matrixes and inverses
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B25—HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
- B25J—MANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
- B25J9/00—Programme-controlled manipulators
- B25J9/16—Programme controls
- B25J9/1656—Programme controls characterised by programming, planning systems for manipulators
- B25J9/1664—Programme controls characterised by programming, planning systems for manipulators characterised by motion, path, trajectory planning
Abstract
本发明提供一种控制机器人多轴运动的方法、装置及系统,涉及人工智能技术领域,可提高示教操作效率,同时保证示教安全性。控制方法包括:接收多个运动轴的示教运动启动或停止信号,生成多条示教操作指令,每一条所述示教操作指令对应一个所述运动轴的示教操作指令;在笛卡尔坐标系下,根据所述多条示教操作指令,规划所述机器人的末端执行器的运动轨迹,生成所述机器人的各周期关节运动指令;将所述各周期关节运动指令转化为所述机器人的电机运动指令,以控制所述机器人的多个所述运动轴同时运动。本发明提供的控制机器人多轴运动的方法、装置及系统用于提高机器人的使用性能。
Description
技术领域
本发明涉及人工智能技术领域,尤其涉及一种控制机器人多轴运动的方法、装置及系统。
背景技术
机器人属于多轴机构,在机器人示教过程中,用户通过“Jog按键”控制机器人各个轴的运动,即点击示教器上的Jog按键,以使机器人运动,通俗讲,点动就是一点一动,不点不动。因此,“示教运动”也称为“Jog运动”。
示教过程中,在按下第一按键,以使相对应的第一轴运动时,若同时或者延迟按下第二按键,第二按键所对应的第二轴是不会运动的,只有当第一轴停止运动后,再按下第二按键时,第二轴才会运动。例如,现有技术中有一种机器人示教运动控制方法,该控制方法中设计了机器人沿要求示教操作的方向生成运动轨迹的算法,但是,每次只能处理一条操作指令,控制一个轴的运动,待该轴运动停止后,才会处理下一条示教操作指令。这样导致的结果是:示教操作效率低下。
发明内容
本发明提供一种控制机器人多轴运动的方法、装置及系统,主要目的是一种可控制多个运动轴运动的方法,以提高示教操作效率。
为达到上述目的,本发明采用如下技术方案:
第一方面,提供一种控制机器人多轴运动的方法,包括:
接收多个运动轴的示教运动启动或停止信号,生成多条示教操作指令,每一条所述示教操作指令对应一个所述运动轴的示教操作指令;
在笛卡尔坐标系下,根据所述多条示教操作指令,规划所述机器人的末端执行器的运动轨迹,生成所述机器人的各周期关节运动指令;
将所述各周期关节运动指令转化为所述机器人的电机运动指令,以控制所述机器人的多个所述运动轴同时运动;
其中,规划所述机器人的末端执行器的运动轨迹包括:计算第N周期所述末端执行器的位姿Tt=(Pt,Rt),再通过运动学反解,计算相对应的各周期关节运动位置qt,以将各周期的关节运动位置qt转化为所述机器人的电机运动指令,所述N为正整数,pt为第N周期所述末端执行器的位置矩阵,Rt为第N周期所述末端执行器的姿态矩阵。
可选的,根据下述公式,计算第N周期所述末端执行器的位姿Tt=(Pt,Rt):
其中,pt为第N周期所述末端执行器的位置矩阵,Rt为第N周期所述末端执行器的姿态矩阵,p0为接收到任一所述运动轴的示教运动启动信号时,所述末端执行器的初始位置矩阵,R0为接收到任一所述运动轴的示教运动启动信号时,所述末端执行器的坐标系相对于基座坐标系的初始姿态旋转矩阵,υi为所述运动轴中移动轴移动方向的单位方向向量,ωi为所述运动轴中转动轴转动方向的单位方向向量,i=1、2、3、4、5、6,i=1代表沿X轴方向的移动,i=2代表沿Y轴方向的移动,i=3代表沿Z轴方向的移动,i=4代表绕X轴方向的转动,i=5代表绕Y轴方向的转动,i=6代表绕Z轴方向的转动,Df,i为第i运动轴运动规划得到的已完成距离,为每次接收到所述运动轴的示教运动启动信号时,所述第i运动轴已完成的距离,drc,i为第i运动轴的运动方向,正方向为+1,负方向为-1。
进一步的,若为基座坐标系时,υi=I3(1:3,i),ωi=I3(1:3,i-3);
若为工具坐标系时,υi=R0(1:3,i),ωi=R0(1:3,i-3);
若为用户坐标系时,υi=Rbu(1:3,i),ωi=Rbu(1:3,i-3);
其中,I3为三阶单位矩阵,Rbu为绝对坐标系到用户坐标系的旋转矩阵,R0为接收到任一所述运动轴的示教运动启动信号时,所述末端执行器的坐标系相对于基座坐标系的初始姿态旋转矩阵。
可选的,规划所述机器人的末端执行器的运动轨迹包括:根据每一个所述运动轴的示教操作指令规划每一个所述运动轴的运动轨迹,具体包括:采用梯形速度对每一个所述运动轴的运动进行规划:
其中,a1为加速度,a2为减速度,νm为最大速度,ta为加速时间,tu为匀速时间,td为减速时间,tt为总时间,ta=νm/a1,td=νm/a2,tt=ta+tu+td,Df为t时刻对应的已完成距离。
可选的,控制所述机器人的多个所述运动轴同时运动还包括:实时计算从第N+2周期开始减速,所述末端执行器停止的位姿Ts=(Ps,Rs),ps为所述末端执行器停止时的位置矩阵,Rs为所述末端执行器停止时的姿态矩阵;
通过运动学反解,计算相对应的各关节停止位置qs;
若qs超出了关节软极限、无解或跨越了所述机器人的奇异构型,则从第N+1周期各个所述运动轴开始减速直至停止。
进一步的,所述实时计算从第N+2周期开始减速,所述末端执行器停止的位姿Ts=(Ps,Rs)包括:
根据下述公式,计算所述末端执行器停止的位姿Ts=(Ps,Rs):
其中,ps为所述末端执行器停止时的位置矩阵,Rs为所述末端执行器停止时的姿态矩阵,p0为接收到任一所述运动轴的示教运动启动信号时,所述末端执行器的初始位置矩阵,R0为接收到任一所述运动轴的示教运动启动信号时,所述末端执行器的坐标系相对于基座坐标系的初始姿态旋转矩阵,υi为所述运动轴中移动轴移动方向的单位方向向量,ωi为所述运动轴中转动轴转动方向的单位方向向量,i=1、2、3、4、5、6,i=1代表沿X轴方向的移动,i=2代表沿Y轴方向的移动,i=3代表沿Z轴方向的移动,i=4代表绕X轴方向的转动,i=5代表绕Y轴方向的转动,i=6代表绕Z轴方向的转动,Df,i为第i运动轴运动规划得到的已完成距离,为每次接收到所述运动轴的示教运动启动信号时,所述第i运动轴已完成的距离,Ds,i为第i运动轴的减速距离,drc,i为第i运动轴的运动方向,正方向为+1,负方向为-1。
可选的,在控制所述机器人的多个所述运动轴同时运动的过程中:接收到所述运动轴的示教停止信号时,控制相对应的所述运动轴减速直至停止。
第二方面,提供一种控制机器人多轴运动的装置,包括:
输入处理模块,所述输入处理模块用于接收多个运动轴的示教运动启动或停止信号,生成多条示教操作指令,每一条所述示教操作指令对应一个所述运动轴的示教操作指令;
轨迹生成模块,所述轨迹生成模块用于在笛卡尔坐标系下,根据所述示教操作指令,规划所述机器人的末端执行器的运动轨迹,生成所述机器人的各周期关节运动指令,其中,规划所述机器人的末端执行器的运动轨迹包括:计算第N周期所述末端执行器的位姿Tt=(Pt,Rt),再通过运动学反解,计算相对应的各周期关节运动位置qt,以将各周期的关节运动位置qt转化为所述机器人的电机运动指令,所述N为正整数;
运动指令输出模块,所述运动指令输出模块用于将所述各周期关节运动指令转化为所述机器人的电机运动指令,以控制所述机器人的多个所述运动轴同时运动。
第三方面,提供一种机器人系统,包括第二方面所述的控制机器人多轴运动的装置。
本发明实施例提供一种控制机器人多轴运动的方法、装置和系统,当接收到多个运动轴的示教运动启动或停止信号后,能够生成多条示教操作指令,并规划所述机器人的末端执行器的运动轨迹,其中,在笛卡尔坐标系下,计算第N周期所述机器人的末端执行器的位姿时,采用实时初始位姿加已完成运动距离的方式,确定末端执行器的位姿,即当接收到一个运动轴的启动信号时,记录所有运动轴的已完成距离,并更新初始位姿,计算第N周期位姿时,用各运动轴运动规划得到的各轴已完成距离减去更新初始位姿时记录的各轴之前已完成的距离,加上更新后的初始位姿,这样就可应对在一次示教运动中(从开始运动到所有运动轴运动停止)某一运动轴多次启动、停止的情况,进而可控制多个运动轴运动,以提高示教操作效率,同时,本发明中在控制运动轴运动的过程中,也实时在计算从下下周期开始减速,机器人所停止的位置是否超出机器人操作范围或跨越了奇异构型,这样提高了机器人的在示教操作中的安全性。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本发明实施例提供的一种控制机器人多轴运动的方法的流程图;
图2为本发明实施例提供的一种控制机器人多轴运动的装置的框图;
图3为本发明实施例提供的一种示教器的按键信号处理图;
图4为本发明实施例提供的一种速度规划方法示意图;
图5为本发明实施例提供的一种减速停止运动规划图;
图6A为本发明实施例提供的一种减速距离规划图;
图6B为本发明实施例提供的另一种减速距离规划图。
具体实施方式
下面结合附图对本发明实施例控制机器人多轴运动的方法、装置及系统进行详细描述。
在本发明的描述中,需要理解的是,术语“中心”、“上”、“下”、“前”、“后”、“左”、“右”、“竖直”、“水平”、“顶”、“底”、“内”、“外”等指示的方位或位置关系为基于附图所示的方位或位置关系,仅是为了便于描述本发明和简化描述,而不是指示或暗示所指的装置或元件必须具有特定的方位、以特定的方位构造和操作,因此不能理解为对本发明的限制。
术语“第一”、“第二”仅用于描述目的,而不能理解为指示或暗示相对重要性或者隐含指明所指示的技术特征的数量。由此,限定有“第一”、“第二”的特征可以明示或者隐含地包括一个或者更多个该特征。在本发明的描述中,除非另有说明,“多个”的含义是两个或两个以上。
本文中术语“和/或”,仅仅是一种描述关联对象的关联关系,表示可以存在三种关系,例如,A和/或B,可以表示:单独存在A,同时存在A和B,单独存在B这三种情况。另外,本文中字符“/”,一般表示前后关联对象是一种“或”的关系。
需要说明的是:下述所描述的Jog运动均指示教运动。
本发明实施例提供一种控制机器人多轴运动的方法,如图1所示,控制方法包括:
S1:接收多个运动轴的示教运动启动或停止信号,生成多条示教操作指令,每一条所述示教操作指令对应一个所述运动轴的示教操作指令。
示例的,接收由控制端(例如,示教器)传送的示教运动信号,示教运动信号一般包括:Jog按键信号、速度等级、坐标系类型等。
Jog按键信号处理如下:参照图3,示教器上共有2n个Jog按键,每2个按键为一组,且分别对应一个运动轴的正方向(+Ai)Jog信号和负方向(-Ai)Jog信号,Jog按键按下时,输出状态为1,松开时,输出状态为0。
机器人满足响应控制端(示教器)输入的条件时,实时读取示教器的Jog按键状态(curJogKeySts),并与上一周期的Jog按键状态(lastJogKeySts)进行对比:
若某一运动轴某一方向的Jog按键状态从0→1,则产生该运动轴相应方向(正方向或负方向)的Jog运动启动信号;
若某一运动轴某一方向的Jog按键状态从1→0,则产生该运动轴相应方向(正方向或负方向)的Jog运动停止信号;
若某一运动轴某一方向的Jog按键状态从1→1或从0→0,则不产生该运动轴Jog运动信号;
若某一运动轴两个方向的Jog按键同时处于按下状态且该运动轴正在Jog运动中,则产生该运动轴的Jog运动停止信号。
Jog按键信号处理完成后,更新上一周期的Jog按键状态(lastJogKeySts)。
需要说明的是:控制多个运动轴运动时,可同时按下多个运动轴相对应的Jog按键,也可以先后按下多个运动轴相对应的Jog按键。另外,由于运动轴包括移动轴和转动轴,可同时按下多个移动轴相对应的Jog按键,也可以先后按下多个移动轴相对应的Jog按键,也可以同时按下多个转动轴相对应的Jog按键,也可以先后按下多个转动轴相对应的Jog按键,也可以同时按下多个转动轴和移动轴相对应的Jog按键,也可以先后按下多个转动轴和移动轴相对应的Jog按键。
速度等级和坐标系类型处理如下:处理完Jog按键信号后,读取当前的速度等级和坐标系信息,将速度等级转化为相应运动轴实际最大运动速度,若坐标系为笛卡尔坐标系,还需将运动轴运动方向转化为笛卡尔空间的三维单位向量表示的运动方向。
接收多个运动轴的Jog运动启动或停止信号,生成多条示教操作指令,示教操作指令包括:运动轴、运动方向和运动速度等。
S2:在笛卡尔坐标系下,根据所述多条示教操作指令,规划所述机器人的末端执行器的运动轨迹,生成所述机器人的各周期关节运动指令。
在规划机器人的末端执行器的运动轨迹前先根据每一个运动轴的示教操作指令规划每一个运动轴的运动轨迹。
在一些实施例中,参照图4,采用梯形速度对每一个运动轴的运动轨迹进行规划:
其中,a1为加速度,a2为减速度,νm为最大速度,ta为加速时间,tu为匀速时间,td为减速时间,tt为总时间,ta=νm/a1,td=νm/a2,tt=ta+tu+td,Df为t时刻已完成距离,a1和a2为内部设定参数,νm由输入处理模块输出。
由图4和上述加速度、速度和位移公式得知:每一个运动轴在运动过程中会经历三个运动阶段(加速、匀速和减速),当运动轴接收到停止运动信号后,通过规划减速阶段,运动轴逐渐减速直至停止,这样对运动轴起到保护的作用,延长运动轴使用寿命。
本发明中,当接收到Jog运动启动信号时,运动轴的匀速运动时间tu和总运动距离Dm未知。在运动轴运动过程中,接收到Jog运动停止信号(来自Jog按键的Jog运动停止信号或通过停止位置判断的Jog安全停止信号),运动轴开始减速直至停止,此时,才可获得匀速运动时间tu和总运动距离Dm。
在Jog运动的各个阶段接收到Jog停止信号时的减速停止运动规划如图5中虚线所示。特别地,在Jog运动加速阶段接收到Jog停止信号时,Jog最大速度ν′m=a1tss(ν′m小于输入处理模块输出Jog最大速度νm),tss为从Jog运动开始到接收到Jog停止信号的时间,此时加速时间ta=tss,匀速时间tu=0,减速时间td=a1tss/a2,总运动距离D′m=a1tss 2/2(1+a1/a2)。
通过上述每一个运动轴的运动进行规划结果,就可计算得到当前时刻每一个运动轴的位置。
完成每一个运动轴的运动规划后,在笛卡尔坐标系下,计算第N周期所述末端执行器的位姿Tt=(Pt,Rt),再通过运动学反解,计算相对应的各周期关节运动位置qt,以将各周期的关节运动位置qt转化为所述机器人的电机运动指令,第N周期末端执行器的位姿计算方法为:
根据公式①和②,计算第N周期所述末端执行器的位姿Tt=(Pt,Rt):
在公式①和②中,pt为第N周期机器人的末端执行器的位置矩阵,Rt为第N周期机器人的末端执行器的姿态矩阵,p0为接收到任一所述运动轴的示教运动启动信号时,所述末端执行器的初始位置矩阵,R0为接收到任一所述运动轴的示教运动启动信号时,所述末端执行器的坐标系相对于基座坐标系的初始姿态旋转矩阵,(p0,R0)也就是任一运动轴开始运动时,末端执行器的位姿,所以,每当有新的运动轴接收到Jog运动启动信号时,(p0,R0)都会更新一次,υi为所述运动轴中移动轴移动方向的单位方向向量,ωi为所述运动轴中转动轴转动方向的单位方向向量,i=1、2、3、4、5、6,i=1代表沿X轴方向的移动,i=2代表沿Y轴方向的移动,i=3代表沿Z轴方向的移动,i=4代表绕X轴方向的转动,i=5代表绕Y轴方向的转动,i=6代表绕Z轴方向的转动,Df,i为第i运动轴运动规划得到的已完成距离,为每次接收到所述运动轴的示教运动启动信号时,所述第i运动轴已完成的距离(也就是说,只有接收到Jog运动启动信号时更新,例如,在第i运动轴接收到Jog运动启动信号时,其余Jog运动轴),drc,i为第i运动轴的运动方向,正方向为+1,负方向为-1。
示例的,机器人的末端执行器处于静止状态,且末端执行器的位姿为(p0,R0),接收到X正方向移动的Jog运动启动信号时,第N周期末端执行器的位姿计算方法为:根据计算得到末端执行器的第N周期的位置矩阵,此时Df,1为在X正方向移动时已完成的距离。
再示例的,当末端执行器还沿X正方向移动过程中,接收到Y负方向移动的Jog运动启动信号时,第N周期末端执行器的位姿计算方法为:此时(p0,R0)已经更新为(p′0,R0′),根据计算得到末端执行器的第N周期的位置矩阵,此时Df,1为在X正方向移动已完成的距离,Df,2为在Y负方向移动已完成的距离,为接收到Y负方向移动的Jog运动启动信号,末端执行器沿X正方向移动时已完成的距离。所以,当接收到多个运动轴运动信号后,各个运动轴沿X方向、Y方向和Z方向移动计算的相互影响消除,进而可控制多个运动轴运动。
示例的,机器人的末端执行器处于静止状态,且末端执行器的位姿为(p″0,R″0),接收到X正方向转动的Jog运动启动信号时,第N周期末端执行器的位姿计算方法为:计算得到末端执行器的第N周期的姿态矩阵,此时Df,4为绕X正方向转动时已完成的距离。
再示例的,当末端执行器绕X正方向转动过程中,接收绕Z正方向转动的Jog运动启动信号时,第N周期末端执行器的位姿计算方法为:此时(p″0,R″0)已经更新为(p″0,R″0),根据计算得到末端执行器的第N周期的姿态矩阵,此时Df,4为在X正方向转动已完成的距离,Df,6为绕Z正方向转动的已完成距离,为接收到绕Z正方向转动的Jog运动启动信号时,末端执行器绕X正方向转动的已完成距离。所以,当接收到多个运动轴运动信号后,各个运动轴沿X方向、Y方向和Z方向转动计算的相互影响消除,进而可控制多个运动轴运动。
在笛卡尔坐标系下运动,第N周期所述机器人的末端执行器的位姿还可以通过下述计算方法获得:
根据公式③和④,计算第N周期所述末端执行器的位姿Tt=(Pt,Rt):
在公式③和④中,pt为第N周期所述末端执行器的位置矩阵,Rt为第N周期所述末端执行器的姿态矩阵,pt-Δt为第N-1周期所述末端执行器的位置矩阵,为第N-1周期所述末端执行器的姿态矩阵,υi为所述运动轴中移动轴移动方向的单位方向向量,ωi为所述运动轴中转动轴转动方向的单位方向向量,i=1、2、3、4、5、6,i=1代表沿X轴方向的移动,i=2代表沿Y轴方向的移动,i=3代表沿Z轴方向的移动,i=4代表绕X轴方向的转动,i=5代表绕Y轴方向的转动,i=6代表绕Z轴方向的转动,drc,i为第i运动轴的运动方向,正方向为+1,负方向为-1,为第N-1周期所述末端执行器的平均速度,Δt为插补周期。该计算方法是用当前周期的位姿和运动速度计算下一周期的位姿,采用该计算方法的优点是计算式简单,缺点是计算效率很低,在笛卡尔坐标系下,每一个周期都需要运动学正解计算当前周期的末端执行器的位姿,而且当多个运动轴运动时,采用这种计算方法计算停止位姿时计算量太大,无法应用于实时系统,所以优先采用公式①和②提供的计算方法。
上述两种计算方法中,涉及的υi和ωi的具体取值为:若为基座坐标系时,υi=I3(1:3,i),ωi=I3(1:3,i-3);若为工具坐标系时,υi=R0(1:3,i),ωi=R0(1:3,i-3);若为用户坐标系时,υi=Rbu(1:3,i),ωi=Rbu(1:3,i-3),其中,I3为三阶单位矩阵,Rbu为绝对坐标系到用户坐标系的旋转矩阵,R0是只要有新的运动轴接收到Jog运动启动信号时,均会更新。所以,本发明实施例提供的两种计算末端执行器位姿的方法不仅适用于基座坐标系、也适用于工具坐标系,且适用于用户坐标系,提高了使用范围。
需要说明的是:当正在运动中的运动轴接收到停止信号后,将上述通过减速停止运动规划计算的结果代入上述末端执行器位姿计算公式中,依然获得第N周期的末端执行器的位姿,再通过运动学反解,得到相对应的关节运动位置。
若在关节坐标系下运动,
第i运动轴的第N周期的关节位置为:qi=q0,i+drc,iDf,i
其中,q0,i为接收到第i运动轴Jog运动启动信号时的关节位置,Df,i为第i运动轴的已完成距离,drc,i为运动方向,正方向为+1,负方向为-1。
需要说明的是:当正在运动中的运动轴接收到停止信号后,将上述通过减速停止运动规划计算的结果代入上述计算关节位置公式中,可获得第N周期的关节位置。
运动轴在运动过程中,需要实时判断机器人是否会超出关节软极限、无解或跨越了所述机器人的奇异构型,并进行对应处理来保证机器人示教操作的安全性。
在一些实施例中,判断机器人是否会超出关节软极限、无解或跨越了所述机器人的奇异构型的方法为:在笛卡尔坐标系下,
实时计算从第N+2周期开始减速,所述末端执行器停止的位姿Ts=(Ps,Rs),ps为所述末端执行器停止时的位置矩阵,Rs为所述末端执行器停止时的姿态矩阵;
通过运动学反解,计算相对应的各关节停止位置qs;
若qs超出了关节软极限、无解或跨越了所述机器人的奇异构型,则从第N+1周期各个所述运动轴开始减速直至停止。
其中,参照图6A和图6B计算减速距离,例如,参照图6A,当运动轴在当前周期(当前周期为加速阶段)运动时,计算从下下周期开始减速时,下一周期到运动停止时位置间的运动距离为减速距离,若计算运动停止时位置超出了机器人的操作范围,则从下周期开始减速直至停止;再例如,参照图6B,当运动轴在当前周期(当前周期为匀速阶段)运动时,减速距离计算方式相同。
根据公式⑤和⑥,计算末端执行器停止的位姿Ts=(Ps,Rs):
其中,ps为所述末端执行器停止时的位置矩阵,Rs为所述末端执行器停止时的姿态矩阵,p0为接收到任一所述运动轴的示教运动启动信号时,所述末端执行器的初始位置矩阵,R0为接收到任一所述运动轴的示教运动启动信号时,所述末端执行器的坐标系相对于基座坐标系的初始姿态旋转矩阵,υi为所述运动轴中移动轴移动方向的单位方向向量,ωi为所述运动轴中转动轴转动方向的单位方向向量,i=1、2、3、4、5、6,i=1代表沿X轴方向的移动,i=2代表沿Y轴方向的移动,i=3代表沿Z轴方向的移动,i=4代表绕X轴方向的转动,i=5代表绕Y轴方向的转动,i=6代表绕Z轴方向的转动,Df,i为第i运动轴运动规划得到的已完成距离,为每次接收到所述运动轴的示教运动启动信号时,所述第i运动轴已完成的距离,Ds,i为第i运动轴的减速距离,drc,i为第i运动轴的运动方向,正方向为+1,负方向为-1。在笛卡尔坐标系下运动时,各个运动轴对关节位置的影响是耦合的,无法只停止其中一个运动轴或几个运动轴就保证停止位置不会超出机器人操作范围、不会跨越奇异构型,所以,若停止位置超出了关节软极限、无解或跨越了所述机器人的奇异构型,则从下周期开始,所有运动中的运动轴均减速直至停止。
另外,在关节坐标系下进行示教操作时,还可以通过下述方法确定各关节停止位置qs,根据公式,计算各关节停止位置:
qs=q0,i+drc,i(Df,i+Ds,i)
其中,q0,i为接收到第i运动轴Jog运动启动信号时的关节位置,Df,i为第i运动轴的已完成距离,Ds,i为第i运动轴的减速距离,drc,i为第i运动轴的运动方向,正方向为+1,负方向为-1。若运动中的运动轴超出了运动范围,则就使该运动轴从下周期减速直至停止。
S3:将所述各周期关节运动指令转化为所述机器人的电机运动指令,以控制所述机器人的多个所述运动轴同时运动。
本发明实施例另一方面还提供了一种控制机器人多轴运动的装置,参照图2,控制装置2包括:
输入处理模块21,输入处理模块21用于接收控制端1发出的多个运动轴的示教运动启动或停止信号,生成多条示教操作指令,每一条所述示教操作指令对应一个所述运动轴的示教操作指令;
轨迹生成模块22,轨迹生成模块22用于在笛卡尔坐标系下,根据所述示教操作指令,规划所述机器人的末端执行器的运动轨迹,生成所述机器人的各周期关节运动指令,其中,规划所述机器人的末端执行器的运动轨迹包括:计算第N周期所述末端执行器的位姿Tt=(Pt,Rt),再通过运动学反解,计算相对应的各周期关节运动位置qt,以将各周期的关节运动位置qt转化为所述机器人的电机运动指令,所述N为正整数;
运动指令输出模块23,所述运动指令输出模块用于将所述各周期关节运动指令转化为所述机器人的电机3的运动指令,以控制所述机器人的多个所述运动轴同时运动。
其中,轨迹生成模块22根据下述公式,计算第N周期所述末端执行器的位姿Tt=(Pt,Rt):
本发明实施例另一方面还提供了一种机器人系统,机器人系统包括上述实施例提供的控制机器人多轴运动的装置。
本发明实施例提供的控制机器人多轴运动的装置和机器人系统所解决的技术问题和所达到的技术效果相同,即可控制多个运动轴运动,不仅提高了示教操作的效率,通过停止位置相关处理确保了示教操作中的安全性,未在控制装置和机器人系统中未引入其它模型,使示教操作精度仅仅取决于机器人本身的运动控制精度,保证示教操作的精度。
以上所述,仅为本发明的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到的变化或替换,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应以所述权利要求的保护范围为准。
Claims (7)
1.一种控制机器人多轴运动的方法,其特征在于,包括:
接收多个运动轴的示教运动启动或停止信号,生成多条示教操作指令,每一条所述示教操作指令对应一个所述运动轴的示教操作指令;
在笛卡尔坐标系下,根据所述多条示教操作指令,规划所述机器人的末端执行器的运动轨迹,生成所述机器人的各周期关节运动指令;
将所述各周期关节运动指令转化为所述机器人的电机运动指令,以控制所述机器人的多个所述运动轴同时运动;
其中,规划所述机器人的末端执行器的运动轨迹包括:计算第N周期所述末端执行器的位姿Tt=(Pt,Rt),根据下述公式,计算第N周期所述末端执行器的位姿Tt=(Pt,Rt):
其中,pt为第N周期所述末端执行器的位置矩阵,Rt为第N周期所述末端执行器的姿态矩阵,p0为接收到任一所述运动轴的示教运动启动信号时,所述末端执行器的初始位置矩阵,R0为接收到任一所述运动轴的示教运动启动信号时,所述末端执行器的坐标系相对于基座坐标系的初始姿态旋转矩阵,υi为所述运动轴中移动轴移动方向的单位方向向量,ωi为所述运动轴中转动轴转动方向的单位方向向量,i=1、2、3、4、5、6,i=1代表沿X轴方向的移动,i=2代表沿Y轴方向的移动,i=3代表沿Z轴方向的移动,i=4代表绕X轴方向的转动,i=5代表绕Y轴方向的转动,i=6代表绕Z轴方向的转动,Df,i为第i运动轴运动规划得到的已完成距离,为每次接收到所述运动轴的示教运动启动信号时,所述第i运动轴已完成的距离,drc,i为第i运动轴的运动方向,正方向为+1,负方向为-1;
再通过运动学反解,计算相对应的各周期关节运动位置qt,以将各周期的关节运动位置qt转化为所述机器人的电机运动指令,所述N为正整数。
2.根据权利要求1所述的控制机器人多轴运动的方法,其特征在于,
若为基座坐标系时,υi=I3(1:3,i),ωi=I3(1:3,i-3);
若为工具坐标系时,υi=R0(1:3,i),ωi=R0(1:3,i-3);
若为用户坐标系时,υi=Rbu(1:3,i),ωi=Rbu(1:3,i-3)
其中,I3为三阶单位矩阵,Rbu为基座坐标系到用户坐标系的旋转矩阵,R0为接收到任一所述运动轴的示教运动启动信号时,所述末端执行器的坐标系相对于基座坐标系的初始姿态旋转矩阵。
5.根据权利要求1所述的控制机器人多轴运动的方法,其特征在于,在控制所述机器人的多个所述运动轴同时运动的过程中:接收到所述运动轴的示教运动停止信号时,控制相对应的所述运动轴减速直至停止。
6.一种控制机器人多轴运动的装置,其特征在于,包括:
输入处理模块,所述输入处理模块用于接收多个运动轴的示教运动启动或停止信号,生成多条示教操作指令,每一条所述示教操作指令对应一个所述运动轴的示教操作指令;
轨迹生成模块,所述轨迹生成模块用于在笛卡尔坐标系下,根据所述示教操作指令,规划所述机器人的末端执行器的运动轨迹,生成所述机器人的各周期关节运动指令,其中,规划所述机器人的末端执行器的运动轨迹包括:计算第N周期所述末端执行器的位姿Tt=(Pt,Rt),
其中,pt为第N周期所述末端执行器的位置矩阵,Rt为第N周期所述末端执行器的姿态矩阵,p0为接收到任一所述运动轴的示教运动启动信号时,所述末端执行器的初始位置矩阵,R0为接收到任一所述运动轴的示教运动启动信号时,所述末端执行器的坐标系相对于基座坐标系的初始姿态旋转矩阵,υi为所述运动轴中移动轴移动方向的单位方向向量,ωi为所述运动轴中转动轴转动方向的单位方向向量,i=1、2、3、4、5、6,i=1代表沿X轴方向的移动,i=2代表沿Y轴方向的移动,i=3代表沿Z轴方向的移动,i=4代表绕X轴方向的转动,i=5代表绕Y轴方向的转动,i=6代表绕Z轴方向的转动,Df,i为第i运动轴运动规划得到的已完成距离,为每次接收到所述运动轴的示教运动启动信号时,所述第i运动轴已完成的距离,drc,i为第i运动轴的运动方向,正方向为+1,负方向为-1;
再通过运动学反解,计算相对应的各周期关节运动位置qt,以将各周期的关节运动位置qt转化为所述机器人的电机运动指令,所述N为正整数;
运动指令输出模块,所述运动指令输出模块用于将所述各周期关节运动指令转化为所述机器人的电机运动指令,以控制所述机器人的多个所述运动轴同时运动。
7.一种机器人系统,其特征在于,包括权利要求6所述的控制机器人多轴运动的装置。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201811603477.3A CN109483551B (zh) | 2018-12-26 | 2018-12-26 | 一种控制机器人多轴运动的方法、装置及系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201811603477.3A CN109483551B (zh) | 2018-12-26 | 2018-12-26 | 一种控制机器人多轴运动的方法、装置及系统 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN109483551A CN109483551A (zh) | 2019-03-19 |
CN109483551B true CN109483551B (zh) | 2020-08-11 |
Family
ID=65712393
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201811603477.3A Active CN109483551B (zh) | 2018-12-26 | 2018-12-26 | 一种控制机器人多轴运动的方法、装置及系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN109483551B (zh) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114167823B (zh) * | 2021-11-11 | 2023-11-14 | 合肥欣奕华智能机器股份有限公司 | 机器人控制方法、装置、电子设备和存储介质 |
CN114102597B (zh) * | 2021-11-30 | 2023-05-16 | 伯朗特机器人股份有限公司 | 机械臂关节点动操作控制方法、电子设备及存储介质 |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1975070A (zh) * | 2006-12-31 | 2007-06-06 | 三一重工股份有限公司 | 一种智能臂架控制装置 |
CN101278244A (zh) * | 2005-10-06 | 2008-10-01 | Abb股份有限公司 | 用于工业机器人的控制系统和示教盒 |
US20090241047A1 (en) * | 2005-03-18 | 2009-09-24 | Kabushiki Kaisha Yaskawa Denki | Teaching box for use in robot, customization method, and robot system using the same |
CN101909829A (zh) * | 2008-02-28 | 2010-12-08 | 松下电器产业株式会社 | 机器人手臂的控制装置及控制方法、机器人、机器人手臂的控制程序、及机器人手臂控制用集成电子电路 |
CN107116542A (zh) * | 2017-06-28 | 2017-09-01 | 华中科技大学 | 一种六关节工业机器人通过姿态奇点的控制方法及系统 |
CN108436915A (zh) * | 2018-04-17 | 2018-08-24 | 上海达野智能科技有限公司 | 双机器人运动控制方法 |
-
2018
- 2018-12-26 CN CN201811603477.3A patent/CN109483551B/zh active Active
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20090241047A1 (en) * | 2005-03-18 | 2009-09-24 | Kabushiki Kaisha Yaskawa Denki | Teaching box for use in robot, customization method, and robot system using the same |
CN101278244A (zh) * | 2005-10-06 | 2008-10-01 | Abb股份有限公司 | 用于工业机器人的控制系统和示教盒 |
CN1975070A (zh) * | 2006-12-31 | 2007-06-06 | 三一重工股份有限公司 | 一种智能臂架控制装置 |
CN101909829A (zh) * | 2008-02-28 | 2010-12-08 | 松下电器产业株式会社 | 机器人手臂的控制装置及控制方法、机器人、机器人手臂的控制程序、及机器人手臂控制用集成电子电路 |
CN107116542A (zh) * | 2017-06-28 | 2017-09-01 | 华中科技大学 | 一种六关节工业机器人通过姿态奇点的控制方法及系统 |
CN108436915A (zh) * | 2018-04-17 | 2018-08-24 | 上海达野智能科技有限公司 | 双机器人运动控制方法 |
Also Published As
Publication number | Publication date |
---|---|
CN109483551A (zh) | 2019-03-19 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109483551B (zh) | 一种控制机器人多轴运动的方法、装置及系统 | |
CN111015649B (zh) | 一种驱控一体化控制系统 | |
CN106695793B (zh) | 一种xyzr四轴钻孔机器人主动柔顺控制装置及方法 | |
CN107908191B (zh) | 一种串并联机器人的运动控制系统和方法 | |
Csorvási et al. | Near time-optimal path tracking method for waiter motion problem | |
JP2004344998A (ja) | ロボット制御装置 | |
TW201822971A (zh) | 機械手臂教導控制系統 | |
TWI755947B (zh) | 機器人系統之控制方法 | |
CN110450160B (zh) | 一种开放式免编程机器人的控制方法 | |
JP2014131825A (ja) | ロボット用制御装置 | |
JPH0677910B2 (ja) | 産業用ロボツトの制御方法 | |
JP2737325B2 (ja) | ロボットの軌道生成方式 | |
JPH10161750A (ja) | 移動速度制御システム | |
JP3216496B2 (ja) | ロボット装置 | |
JP3121920B2 (ja) | 加減速制御装置 | |
JPH05337860A (ja) | ロボットハンドの教示装置およびロボットハンド | |
CN113459103B (zh) | 一种机械手自动运行时的转角轨迹控制方法及装置 | |
JP2669075B2 (ja) | ロボットの位置と姿勢の直接教示装置及び直接教示方法 | |
Gao et al. | Adaptive velocity planning for 6-DOF Robots with fixed tracks | |
JPH04304987A (ja) | ロボット制御装置 | |
CN114131613B (zh) | 一种基于s曲线的点动操作控制方法 | |
JPH08328637A (ja) | ロボット制御装置 | |
JP2718687B2 (ja) | 多自由度作業機械の位置と力の制御装置 | |
Goller et al. | Model predictive interaction control based on a path-following formulation | |
JP3194829B2 (ja) | ロボットの動作プログラム生成装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant | ||
CP01 | Change in the name or title of a patent holder |
Address after: 230013 Southwest District of Hefei City, Anhui Province Patentee after: Hefei xinyihua Intelligent Machine Co.,Ltd. Address before: 230013 Southwest District of Hefei City, Anhui Province Patentee before: HEFEI SINEVA INTELLIGENT MACHINE Co.,Ltd. |
|
CP01 | Change in the name or title of a patent holder |