一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

一种机器人的运动控制方法、装置、机器人及存储介质与流程

2021-10-30 02:15:00 来源:中国专利 TAG:机器人 控制 人及 装置 机器


1.本发明实施例涉及机器人控制技术领域,尤其涉及一种机器人的运动控制方法,装置、机器人及存储介质。


背景技术:

2.目前,机器人已广泛应用在各行各业中,机器人控制机械臂对传送带上的工件或物料进行抓取就是机器人在其中一种应用场景中的运动控制。一般的,机器人对传送带上的物料或者工件进行抓取控制时,要考虑机器人随着传送带的移动而移动,即,需要考虑机器人对传送带的跟踪。
3.在上述应用场景中,通过现有技术实现的运动控制时,会在响应运动控制指令对应的运动控制并停止后,也相应停止对传送带的跟踪控制。然而,当应用场景中存在多个需要执行的运动控制指令时,机器人对传送带的跟踪就会变得不连续,不利于机器人跟踪传送带上的选定物品;同时,站在底层实现角度而言,现有的方法由于各运动控制指令都有各自的运行流程,在运动控制指令与传送跟踪指令相配合的逻辑实现中,每一种运动控制指令都需要与传送带跟踪指令建立关联,由此增大维护成本。


技术实现要素:

4.本发明实施例提供一种机器人的运动控制方法、装置、机器人及存储介质,以实现机器人对传送带的连续跟踪。
5.第一方面,本发明实施例提供了一种机器人的运动控制方法,包括:
6.将接收到的传送带跟踪指令标记为主执行指令,相对所述主执行指令创建跟踪线程,通过所述跟踪线程控制机器人跟踪传送带运动;
7.在所述跟踪线程的执行周期内,接收到至少一个运动控制指令时,确定当前运动控制指令;
8.按照所述当前运动控制指令的理论控制数据,对所述机器人的传送带跟踪数据进行调整,获得所述机器人的实际运动数据;
9.按照所述实际运动数据,控制所述机器人运动。
10.第二方面,本发明实施例还提供了一种机器人的运动控制装置,该装置包括:
11.指令接收模块,用于将接收到的传送带跟踪指令标记为主执行指令,相对所述主执行指令创建跟踪线程,通过所述跟踪线程控制机器人跟踪传送带运动;
12.指令确定模块,用于在所述跟踪线程的执行周期内,接收到至少一个运动控制指令时,确定当前运动控制指令;
13.运动数据确定模块,用于按照所述当前运动控制指令的理论控制数据,对所述机器人的传送带跟踪数据进行调整,获得所述机器人的实际运动数据;
14.运动控制模块,用于按照所述实际运动数据,控制所述机器人运动。
15.第三方面,本发明实施例还提供了一种机器人,包括:示教器、一个或多个控制器、
机器人本体和存储装置;
16.所述机器人本体,用于响应传送带跟踪指令和/或运动控制指令对应的运动控制,所述机器人本体包括末端连接器以连接工作器械;
17.存储装置,用于存储一个或多个程序;
18.当所述一个或多个程序被所述一个或多个处理器执行,使得所述一个或多个处理器实现本发明任一实施例中所提供的运动控制方法。
19.第四方面,本发明实施例还提供了一种计算机可读存储介质,其上存储有计算机程序,其中,该程序被处理器执行时实现本发明任一实施例中所提供的机器人的运动控制方法。
20.本发明实施例提供了一种机器人的运动控制方法、装置、机器人及存储介质,通过将接收到的传送带跟踪指令标记为主执行指令,相对主执行指令创建跟踪线程,通过跟踪线程控制机器人跟踪传送带运动;在跟踪线程的执行周期内,接收到至少一个运动控制指令时,确定当前运动控制指令;按照当前运动控制指令的理论控制数据,对机器人的传送带跟踪数据进行调整,获得机器人的实际运动数据;按照实际运动数据,控制机器人运动。本实施例的上述技术方案,与现有的运动控制方法相比,采用了以响应传送带跟踪指令为主,运动控制指令为辅的思想,其主要在所创建跟踪线程的执行过程中,考虑所接收运动控制指令对应的运动数据对传送带跟踪数据的影响,通过运动数据对传送带跟踪数据的调整来确定机器人的实际运动数据。该方法保证了机器人与传送带的实时有效跟踪,同时也实现了运动控制指令所对应运动控制的有效响应,从而解决了现有因执行运动控制指令的相关动作而导致传送带跟踪不连续的问题,进而提高了机器人在实际应用中的操作性能。
附图说明
21.图1是本发明实施例一提供的一种机器人的运动控制方法的流程图;
22.图2a是本发明实施例二提供的一种机器人的运动控制方法的流程图;
23.图2b是本发明实施例二提供的一种机器人的运动控制方法中确定机器人实际运动数据的实现流程图;
24.图2c是本发明实施例二提供的一种机器人的运动控制方法中确定机器人的实际运动数据的其中一种实现流程图;
25.图2d是现有技术中运动控制指令单独运行时机器人运动轨迹的实物效果展示;
26.图2e是本发明实施例二提供的一种机器人的运动控制方法中圆形传送带跟踪指令配合运动控制指令运行时机器人运动轨迹的实物效果展示;
27.图2f是现有技术中运动控制指令单独运行时机器人运动轨迹的坐标效果展示;
28.图2g是本发明实施例二提供的一种机器人的运动控制方法中圆形传送带跟踪指令配合运动控制指令运行时机器人运动轨迹的坐标效果展示;
29.图3是本发明实施例三提供的一种机器人的运动控制装置的结构框图;
30.图4是本发明实施例三提供的一种机器人的结构框图。
具体实施方式
31.下面结合附图和实施例对本发明作进一步的详细说明。可以理解的是,此处所描
述的具体实施例仅仅用于解释本发明,而非对本发明的限定。另外还需要说明的是,为了便于描述,附图中仅示出了与本发明相关的部分而非全部结构。
32.实施例一
33.图1是本发明实施例一提供的一种机器人的运动控制方法的流程图,本实施例可适用于机器人控制机器人本体运动,进而使得机器人本体末端连接器连接的工作器械对传送带上的工件或物料进行抓取的情况,该方法可以由机器人的运动控制装置来执行,该装置可以采用软件和/或硬件的方式来实现。该装置可集成在机器人中,该方法具体包括如下步骤:
34.s101、将接收到的传送带跟踪指令标记为主执行指令,相对所述主执行指令创建跟踪线程,通过所述跟踪线程控制机器人跟踪传送带运动。
35.其中,所述传送带跟踪指令可以是由示教器发送给控制器,控制器接收指令去控制机器人,以期望机器人进行传送带跟踪运动的控制指令。该传送带跟踪指令可以是示教器在接收到用户的跟随触发操作时,或者监测到传送带启动运动后相应生成,并将所生成传送带跟踪指令发送给控制器。
36.需要解释的是,所述主执行指令可以理解为机器人主要执行的指令。控制器在接收到传送带跟踪指令后,以传送带跟踪指令为主要执行指令,控制机器人主要进行传送带跟踪运动,其他指令所对应的其他运动为辅。
37.在本实施例中,所述跟踪线程可理解成为响应主执行指令所对应传送带跟踪运动的执行而在控制器中创建的线程。本步骤可以将接收到的主执行指令作为跟踪线程创建的触发条件,之后,便可通过所创建的跟踪线程直接控制机器人本体运动,进而使得机器人本体末端连接器连接的工作器械进行传送带的跟踪运动。
38.在本实施例中,机器人包括机器人本体和机器人本体末端连接器连接的工作器械。在执行传送带跟踪指令时,机器人本体的各个关节运动,使得机器人本体末端连接器连接的工作器械去跟踪传送带上的待处理物体,跟踪方式可以是以与传送带相同的移动方向以及移动速度运动。其中,机器人进行传送带跟踪运动所采用的移动速度以及移动方向等信息主要通过结合传送带参数以及传送带的位置及速度等信息来确定。该传送带参数例如可以是已知的传送带的起点位置值和运行速度值。
39.例如当检测到传送带开始运行后,由示教器将此信息发送给控制器,控制器接收指令并将接收到的传送带跟踪指令标记为主执行指令,相对主执行指令在控制器中创建跟踪线程,确定跟踪线程之后,控制机器人基于此线程进行传送带跟踪运动,根据传送带的移动方向以及移动速度确定机器人的移动方向以及移动速度,从而达到传送带跟踪目的。
40.s102、在所述跟踪线程的执行周期内,接收到至少一个运动控制指令时,确定当前运动控制指令。
41.其中,所述跟踪线程的执行周期可以是机器人按照跟踪线程执行传送带跟踪运动操作开始,到执行完成此次传送带跟踪动作,线程结束的这段时间。控制器在接收到传送带跟踪指令后,将接收到的传送带跟踪指令标记为主执行指令,相对主执行指令在控制器中创建相应的线程,基于所创建的跟踪线程直接控制机器人进行传送带的跟踪运动,直到满足传送带跟踪的跟踪结束条件,跟踪结束条件可以是控制器接收到由示教器发送的传送带跟踪结束指令,或者传送带跟踪的跟踪时长达到了预设时长。
42.需要说明的是,本实施例通过上述步骤所创建的跟踪线程可以看作机器人进行传送带跟踪控制的执行线程,只要该跟踪线程启动运行,就会持续进行传送带的跟踪控制。同时,可以知道的是,在示教器向控制器提供了传送带跟踪指令后,只要未达到传送带跟踪结束条件,就可以认为该跟踪线程一直处于工作状态,也即,控制器响应传送带跟踪指令后,跟踪线程就会对机器人进行传送带的跟踪控制,直至接收到传送带结束指令或者达到设定跟踪时长。
43.在本实施例中,所述运动控制指令可以是由示教器发送给控制器,控制器接收指令去控制机器人,以期望机器人对传送带上物体进行操作的控制指令。该运动控制指令可以是示教器在接收到用户的触发操作时,或者监测到传送带上有物品后相应生成,并将所生成的运动控制指令发送给控制器。对物品的操作例如可以是对传送带上物品的抓取、喷涂或打包动作。
44.在本实施例中,在跟踪线程的执行周期内,控制器接收到至少一个运动控制指令时,可以按照运动控制指令的优先级来确定当前运动控制指令。其中,运动控制指令的优先级例如可以是基于示教器发送运动控制指令的时间顺序,或者是控制器接收到运动控制指令的时间顺序来确定。
45.s103、按照所述当前运动控制指令的理论控制数据,对所述机器人的传送带跟踪数据进行调整,获得所述机器人的实际运动数据。
46.其中,所述理论控制数据可以理解为控制器响应当前运动控制指令控制机器人本体运动,进而使得机器人本体末端连接器连接的工作器械进行相应运动时的运动数据。这里的理论控制数据是不考虑传送带跟踪指令,只考虑当前运动控制指令时的控制数据。
47.需要解释的是,所述传送带跟踪数据,可以是事先输入到机器人系统中的已知的传送带的一些运动参数,例如可以是设定的传送带的当前位置、移动方向以及运行速度,也可以是机器人的一些运动参数,例如可以是当前机器人的起点位姿和跟踪步长。其中,机器人的起点位姿例如可以是机器人本体和机器人本体末端连接器连接的工作器械的位置和姿态,机器人的跟踪步长可以是机器人本体各个关节和机器人本体末端连接器连接的工作器械跟踪传送带时每一次运动的距离。
48.在本实施例中,所述实际运动数据可以认为是,通过当前运动控制指令所对应的理论控制数据对传送带跟踪数据进行调整后形成的机器人运动的实际运动的数据。该实际运动数据可以包括机器人本体各个关节和机器人本体末端连接器连接的工作器械,在进行传送带跟踪运动的同时,控制器接收到运动控制指令并确定当前运动控制指令后控制机器人对传送带上物品进行操作时所需的角度信息、移动距离、速度信息以及位置信息。
49.在机器人按照跟踪线程执行传送带跟踪运动开始,到执行完成该传送带跟踪运动,相应跟踪线程结束的这段时间内,机器人持续做传送带跟踪运动,当示教器检测到传送带上出现物品时,控制器接收到运动控制指令并响应,根据传送带的运行方向及运行速度、机器人的当前位置以及跟踪步长,对传送带跟踪运动进行调整,确定机器人的实际运动数据,使机器人在进行传送带跟踪不间断的同时,对传送带上物品进行操作。
50.s104、按照所述实际运动数据,控制所述机器人运动。
51.需要说明的是,控制器在接收到传送带跟踪指令后,控制机器人进行传送带跟踪运动的过程中,接收到运动控制指令,控制器响应当前运动控制指令并控制机器人运动,机
器人在传送带跟踪运动的基础上对传送带上的物品进行操作,此时机器人在边进行传送带跟踪边进行对传送带上物体的操作。由此,在已知当前时刻的实际运动数据后,就可以控制机器人按照实际运动数据中所具备的信息进行运动,进而呈现出与实际运动数据相匹配的姿态。
52.本发明实施例一提供的一种机器人的运动控制方法,通过将接收到的传送带跟踪指令标记为主执行指令,相对主执行指令创建跟踪线程,通过跟踪线程控制机器人跟踪传送带运动;在跟踪线程的执行周期内,接收到至少一个运动控制指令时,确定当前运动控制指令;按照当前运动控制指令的理论控制数据,对机器人的传送带跟踪数据进行调整,获得机器人的实际运动数据;按照实际运动数据,控制机器人运动。该方法与现有的运动控制方法相比,采用了以响应传送带跟踪指令为主,运动控制指令为辅的思想,其主要在所创建跟踪线程的执行过程中,考虑所接收运动控制指令对应的运动数据对传送带跟踪数据的影响,通过运动数据对传送带跟踪数据的调整来确定机器人的实际运动数据。该方法保证了机器人与传送带的实时有效跟踪,同时也实现了运动控制指令所对应运动控制的有效响应,从而解决了现有因执行运动控制指令的相关动作而导致传送带跟踪不连续的问题,进而提高了机器人在实际应用中的操作性能。
53.可选的,在按照所述实际运动数据,控制所述机器人运动之后,还包括:如果存在未执行运动控制指令,则返回继续执行当前运动控制指令的确定操作;否则,通过相应时刻的传送带跟踪数据,控制所述机器人进行传送带跟踪,直至接收到新的运动控制指令或传送带跟踪结束指令。
54.需要说明的是,本实施例提供的机器人运动控制方法可理解为一个循环执行的方法,如,在没有接收到其他运动控制指令时,本实施例可以一直基于跟踪线程来控制机器人进行传送带跟踪;而在接收到其他运动控制指令后,相当于机器人在进行传送带跟踪的同时,还需要响应运动控制指令所对应的运动控制,由此相当于所接收运动控制指令的控制数据将会对原有的传送带跟踪数据进行调整,从而获得传送带跟踪以及其他运动控制同时参与下所对应的实际运动数据。
55.本可选实施例则给出了机器人运动控制循环执行的执行步骤,即,在通过实际运动数据控制机器人进行运动后,后续存在两种情况,一种情况可以是,目前已不存在未执行的其他运动控制指令,此时对机器人的运动控制就可恢复为单一执行传送带跟踪,直至再次接收到其他运动控制指令,或者接收到传输带跟踪结束指令,其中,传送带跟踪结束指令同样可以由示教器下发,而示教器下发该传送带跟踪结束指令的条件是跟踪时长到达了设定时长,又或者,接收到操作员给出的跟随结束指令。
56.接上述描述,另一情况可以是,还存在未执行的其他运动控制指令(因为接收到了不止一个运动控制指令),此时对机器人的运动控制就是需要再次选定新的当前运动控制指令,并重复上述实际运动数据的确定以及对机器人的运动控制操作。
57.本实施例上述可选实施例,实现了对机器人控制方法的更优完善,保证机器人的运动控制为一个可持续的操作,更好地提升了机器人在实际应用中的操作性能。
58.实施例二
59.图2a是本发明实施例二提供的一种机器人的运动控制方法的流程图,本实施例以上述实施例为基础进行优化。在本实施例中,可以将通过所述跟踪线程控制机器人跟踪传
送带运动具体表述为:通过所述跟踪线程,基于给定的传送带参数,确定机器人的起始跟踪位姿,以及跟踪步长;控制机器人从所述起始跟踪位姿开始按照所述跟踪步长进行传送带跟踪。
60.同时,本实施例二还可以将确定当前运动控制指令进一步描述为:确定所接收各所述运动控制指令的接收时间戳;按照各所述接收时间戳的时间顺序,相对各所述运动控制指令由高到低设定执行优先级;将当前最高执行优先级对应的运动控制指令确定为当前运动控制指令。
61.具体的,本实施例二还可以将按照所述当前运动控制指令的理论控制数据,对所述机器人的传送带跟踪数据进行调整,获得所述机器人的实际运动数据进一步化为:确定所述机器人相对所述当前运动控制指令的理论运动数据,并将所述理论运动数据添加至相应设定的缓存队列;实时获得所述机器人在各跟踪时间点下对应的关节跟踪增量,并作为传送带跟踪数据;通过从所述缓存队列中获取的理论运动数据,对所述传送带跟踪数据进行调整,获得所述机器人的实际运动数据。
62.如图2a所示,本技术实施例二提供的一种机器人的运动控制方法的流程图,具体包括如下操作:
63.s201、将接收到的传送带跟踪指令标记为主执行指令,相对所述主执行指令创建跟踪线程,通过所述跟踪线程,基于给定的传送带参数,确定机器人的起始跟踪位姿,以及跟踪步长。
64.示例性的,所述传送带参数例如可以是已知的传送带的起点位置值、运行方向和运行速度值。传送带的参数可以是事先已知的,由用户输入到机器人系统中的一些参数,机器人根据这些参数规划运动方式及路线。
65.需要解释的是,所述机器人的起始跟踪位姿可以是控制器接收到传送带跟踪指令时基于给定的传送带的起始位置确定出的机器人的初始位置和初始姿态。例如可以是机器人根据传送带的位置相应的处于传送带的正上方或者左右两侧,机器人的初始姿态可以是机器人本体和机器人本体末端连接器连接的工作器械处于正对传送带的水平或垂直状态。
66.其中,所述跟踪步长可以是机器人跟踪传送带时基于给定的传送带的运行方向及运行速度参数确定出的每一次跟踪动作的方向参数以及移动的距离值。例如机器人的跟踪方向可以是与传送带运行方向相同,机器人的运行速度可以是与传送带的速度相同,跟踪步长可以是传送带每秒的运行距离值。
67.示例性的,本实施例所提供方法的执行主体为机器人,示教器与控制器建立有通信连接,控制器与机器人本体建立有通信连接,控制器可以接收示教器发送的传送带跟随指令,并控制机器人进行传送带跟踪运动。
68.在本实施例中,站在控制器角度而言,在接收到传送带跟踪指令后,控制器响应传送带跟踪指令,将接收到的传送带跟踪指令标记为主执行指令,相对主执行指令创建跟踪线程,通过跟踪线程,基于事先给定的传送带的位置、运行方向以及运行速度参数,相应的确定出机器人的起始位置、初始姿态、跟踪方向以及跟踪步长,进行传送带跟踪控制方式实现。由此,本步骤可以在接收到传送带跟踪指令后,采用给定的线程创建方法进行跟踪线程的创建。
69.s202、控制机器人从所述起始跟踪位姿开始按照所述跟踪步长进行传送带跟踪。
70.可以知道的是,确定机器人的起始跟踪位姿以及跟踪步长后,控制机器人本体各个关节进行运动,进而使得机器人本体末端连接器连接的工作器械从起始位姿开始,按照确定好的跟踪步长进行传送带跟踪。例如机器人可以是在传送带的正上方,从静止状态,沿传送带的运行方向,按照确定好的跟踪步长,一步一步运动,进行传送带跟踪,直到与传送带保持相对静止状态。
71.s203、在所述跟踪线程的执行周期内,接收到至少一个运动控制指令时,确定所接收各所述运动控制指令的接收时间戳。
72.在本实施例中,所述接收时间戳可以理解为运动控制指令的接收时间点。在跟踪线程的执行周期内,示教器可能会不断地发送运动控制指令给控制器,发送的方式可能是一次一个或一次多个,控制器接收运动控制指令时,也可能是一次接收一个或一次接收多个,确定所接收各运动控制指令的接收时间点。
73.s204、按照各所述接收时间戳的时间顺序,相对各所述运动控制指令由高到低设定执行优先级。
74.示例性的,按照控制器接收运动控制指令的时间顺序,将各运动控制指令由高到低设定执行优先级。例如可以是先接收到的运动控制指令的优先级也相对较高,后接收到的运动控制指令的优先级也相对较低。
75.s205、将当前最高执行优先级对应的运动控制指令确定为当前运动控制指令。
76.在本实施例中,当前运动控制指令可以理解为当前最高执行优先级对应的运动控制指令。按照接收时间对各运动控制指令由高到低设定执行优先级后,将当前最高执行优先级对应的运动控制指令确定为当前运动控制指令。
77.s206、确定所述机器人相对所述当前运动控制指令的理论运动数据,并将所述理论运动数据添加至相应设定的缓存队列。
78.其中,所述理论运动数据具体可以理解为机器人在进行传送带跟踪过程中,在接收到运动控制指令后,假设机器人不考虑传送带跟踪指令,只执行当前运动控制指令时,机器人本体各个关节及机器人本体末端连接器连接的工作器械的运动数据。理论运动数据例如可以是机器人本体各个关节及机器人本体末端连接器连接的工作器械的运动方向和运行速度。
79.需要说明的是,所述缓存队列可以是在传送带跟踪指令中预留的内存空间。每一个运动控制指令都对应设置有一个缓存队列,运动控制指令可以是一个或多个,相应的,缓存队列也可以是一个或多个。
80.在接收到运动控制指令后,确定当前运动控制指令,控制器响应当前运动控制指令并确定对应的机器人的理论运动数据,将理论运动数据添加到相应设定的缓存队列。
81.进一步的,可以将确定所述机器人相对所述当前运动控制指令的理论运动数据,并将所述理论运动数据添加至相应设定的缓存队列具体化为下述步骤:
82.a、确定机器人响应所述当前运动控制指令进行运动时在各运动时间点对应的关节运动增量。
83.需要解释的是,所述关节运动增量可以理解为机器人本体的各个关节运动的距离。在机器人进行传送带跟踪运动和对传送带上物品进行操作运动时,实际上都是机器人本体的各个组成关节在进行运动,最终呈现的效果是机器人本体末端连接器连接的工作器
械的运动。
84.具体的,机器人在进行传送带跟踪运动时,控制器接收到运动控制指令,确定当前运动控制指令,控制机器人对传送带上物品进行操作,确定此时机器人在不考虑传送带跟踪控制运动只考虑响应当前运动控制指令运动时,在完成当前运动控制指令的各个运动时间点所对应的关节运动增量。
85.b、将各所述关节运动增量按照相应运动时间点的先后顺序,依次添加至所述缓存队列。
86.具体的,机器人在执行当前运动控制指令时,可能每一时间点都有关节在运动,每一时间点都对应的有该时刻下的关节运动增量,将这些关节运动增量按照机器人相应的运动时间点的先后顺序,依次添加至缓存队列中。
87.s207、实时获得所述机器人在各跟踪时间点下对应的关节跟踪增量,并作为传送带跟踪数据。
88.需要解释的是,所述各跟踪时间点可以是在机器人进行传送带跟踪的这段时间里的每个时间点。所述关节跟踪增量可以是机器人在进行传送带跟踪运动时,机器人本体各个关节及机器人本体末端连接器连接的工作器械的运动距离。
89.在跟踪线程的执行周期内,时刻记录机器人在进行传送带跟踪的这个周期内的每个时间点所对应的机器人的相应关节的运动距离,获得此数据并将其作为跟踪过程中机器人的传送带跟踪数据。
90.s208、通过从所述缓存队列中获取的理论运动数据,对所述传送带跟踪数据进行调整,获得所述机器人的实际运动数据。
91.示例性的,所述实际运动数据可以理解为在机器人进行传送带跟踪的过程中,控制器接收到运动控制指令,控制机器人在继续跟踪传送带的同时对传送带上物品进行操作,此时机器人的运动数据。
92.在本实施例中,根据从缓存队列中获取的机器人的理论运动数据,对传送带跟踪数据进行调整,例如可以是对矢量坐标的计算处理,进而确定出机器人的实际运动数据。
93.图2b是本发明实施例二提供的一种机器人的运动控制方法中确定机器人实际运动数据的实现流程图,优选是将操作s208进一步优化。在本实施例中,可以将通过从所述缓存队列中获取的理论运动数据,对所述传送带跟踪数据进行调整,获得所述机器人的实际运动数据具体表述为:获取机器人跟踪传送带的当前跟踪时间点关联的当前关节跟踪增量;如果所述当前跟随时间点与缓存队列的队首运动时间点匹配,则基于所述队首运动时间点的队首关节运动增量调整所述当前关节跟踪增量,获得所述机器人在当前跟踪时间点的实际运动数据,并从所述缓存队列中删除所述队首关节运动增量;否则,将所述当前关节跟踪增量作为当前跟踪时间点的实际运动数据;将所述当前跟踪时间点的下一时间点作为新的当前跟踪时间点,返回继续执行当前关键跟随增量的获取操作,直至所述缓存队列为空。
94.如图2b所示,本技术实施例二提供的一种机器人的运动控制方法中确定机器人实际运动数据的实现流程图,具体包括如下操作:
95.s2081、获取机器人跟踪传送带的当前跟踪时间点关联的当前关节跟踪增量。
96.在本实施例中,所述当前跟随时间点可以理解为当前机器人进行传送带跟踪运动
的时间点。机器人进行传送带跟踪运动是一个持续的过程,因此该过程就可能是一段持续的时间,该时间段内就包含许多个时间点。其中,所述当前关节跟随增量具体可以理解为当前机器人进行传送带跟踪运动时机器人本体各个关节的关节增量。
97.具体的,在跟踪线程执行周期开始后,机器人在进行传送带跟踪时,每个时间点都可能有机器人的关节在运动,对应的就有当前时刻的机器人的关节增量信息,获取机器人跟踪传送带的当前跟踪时间点关联的当前关节跟踪增量。
98.s2082、判断所述当前跟随时间点是否与缓存队列的队首运动时间点匹配。
99.需要解释的是,所述缓存队列的队首运动时间点可以理解为当控制器接收到运动控制指令后,在传送带跟踪指令的预留空间内,存放响应当前运动控制指令时机器人应产生的关节增量信息,存放信息的开始时刻作为当前缓存队列的队首运动时间点。其中,所述匹配例如可以是两个时间点重合。
100.具体的,机器人在进行传送带跟踪运动时,如果控制器接收到一个或多个运动控制指令,就会相应的存在一个或多个缓存队列,机器人在执行传送带跟踪指令过程中检测缓存队列是否出现,即当前跟随时间点是否与缓存队列的队首运动时间点匹配。
101.s2083、如果所述当前跟随时间点与缓存队列的队首运动时间点匹配,则基于所述队首运动时间点的队首关节运动增量调整所述当前关节跟踪增量,获得所述机器人在当前跟踪时间点的实际运动数据,并从所述缓存队列中删除所述队首关节运动增量。
102.如果当前跟随时间点与缓存队列的队首运动时间点匹配,即机器人在进行传送带跟踪运动时控制器接收到了运动控制指令,则基于当前运动控制指令对应的缓存队列的队首运动时间点的关节运动增量,调整当前机器人的关节跟踪增量,获得机器人在当前跟踪时间点的实际运动数据,即使得机器人在进行传送带跟踪的同时对传送带上物品进行操作时的运动数据,并从缓存队列中删除队首关节运动增量,当前时间点下机器人的运动完成。
103.本实施例可以将s2083进行进一步优化,在本实施例中,可以将如果所述当前跟随时间点与缓存队列的队首运动时间点匹配,则基于所述队首运动时间点的队首关节运动增量调整所述当前关节跟踪增量,获得所述机器人在当前跟踪时间点的实际运动数据,并从所述缓存队列中删除所述队首关节运动增量具体表述为:确定机器人在所述队首运动时间点下相对所述队首关节运动增量的理论运动位姿;采用所述理论运动位姿对所述当前关节跟踪增量进行调整,获得校正运动位姿;通过逆运动学计算公式,确定所述校正运动位姿对应的校正关节增量;将所述校正关节增量确定为所述机器人在当前跟踪时间点的实际运动数据。
104.具体包括如下操作:
105.a1、确定机器人在所述队首运动时间点下相对所述队首关节运动增量的理论运动位姿。
106.具体的,所述理论运动位姿具体可以理解为机器人在进行传送带跟踪时,控制器接收到运动控制指令后,不考虑此时控制器控制机器人执行传送带跟踪指令所产生的关节增量,只考虑此时机器人执行运动跟踪指令所产生的关节运动增量时对应的机器人的位姿。
107.控制器在接收到一个或多个运动控制指令后,相应的存在一个或多个缓存队列,在缓存队列的队首时间点对应的有队首关节运动增量,确定此时间点下相对所述队首关节
运动增量的理论运动位姿。
108.b1、采用所述理论运动位姿对所述当前关节跟踪增量进行调整,获得校正运动位姿。
109.在本实施例中,所述调整这里可以理解为运动调整。在本实施例中,是指对机器人运动的调整。例如可以是机器人在进行传送带跟踪运动时,控制器接收到运动控制指令,需控制机器人对传送带上物品进行操作,此时机器人就将传送带跟踪运动调整为既进行传送带跟踪动作又进行传送带上物品操作动作。
110.其中,所述校正运动位姿具体可以理解为机器人在进行运动调整处理后获得的机器人的最终运动位姿。例如可以是在当前传送带跟踪运动的基础上,根据理论运动位姿,对当前传送带跟踪运动进行调整,从而使机器人在进行传送带跟踪运动的同时进行运动控制指令的操作。
111.在机器人进行传送带跟踪时,对应的有当前机器人的跟踪位姿,控制器在接收到运动控制指令后,有对应的机器人的理论运动位姿,通过当前理论运动位姿对关节跟踪增量进行调整,获得校正运动位姿。
112.c1、通过逆运动学计算公式,确定所述校正运动位姿对应的校正关节增量。
113.具体的,所述逆运动学这里可以理解为机器人决定要达成所述校正运动位姿所要设置的对应的校正关节增量的过程。
114.获得校正运动位姿后,通过逆运动学计算公式,将校正运动位姿转化为对应的校正关节增量。
115.d1、将所述校正关节增量确定为所述机器人在当前跟踪时间点的实际运动数据。
116.具体的,将调整后得到的校正关节增量,作为机器人在当前跟踪时间点的实际运动数据,使得机器人按照实际运动数据进行相应的运动。
117.s2084、如果所述当前跟随时间点与缓存队列的队首运动时间点不匹配,则将所述当前关节跟踪增量作为当前跟踪时间点的实际运动数据。
118.具体的,当当前跟踪时间点对应的缓存队列中没有关节运动增量时,即当前时刻控制器没有接收到运动控制指令,就不用对当前关节跟踪增量进行调整,当前关节跟踪增量就作为当前跟踪时间点的实际运动数据,即机器人继续做传送带跟踪运动。
119.s2085、将所述当前跟踪时间点的下一时间点作为新的当前跟踪时间点。
120.机器人在当前跟踪时间点的实际运动结束之后,将当前跟踪时间点的下一时刻作为新的当前跟踪时间点,继续执行后续时间点的操作,直至跟踪线程结束运行为止。
121.s2086、判断跟踪线程是否结束。
122.判断跟踪线程是否结束,如果没有结束则返回继续执行当前关键跟随增量的获取操作s2081,直至所述跟踪线程结束运行;如果跟踪线程已结束,则此流程结束。
123.s209、按照所述实际运动数据,控制所述机器人运动。
124.可选的,在按照所述实际运动数据,控制所述机器人运动之后,还包括:如果存在未执行运动控制指令,则返回继续执行当前运动控制指令的确定操作;否则,通过相应时刻的传送带跟踪数据,控制所述机器人进行传送带跟踪,直至接收到新的运动控制指令或传送带跟踪结束指令。
125.在按照实际运动数据,控制机器人运动之后,即在执行传送带跟踪指令的同时执
行完当前运动控制指令之后,继续执行传送带跟踪指令,同时检测是否还存在未执行的运动控制指令,如果存在,则返回继续执行当前运动控制指令的确定操作;否则,通过相应时刻的传送带跟踪数据,控制机器人继续进行传送带跟踪,直至接收到新的运动控制指令,此步骤为循环操作,直至接收到传送带跟踪结束指令后循环结束。
126.本实施例二提供的一种机器人的运动控制方法,具体化了通过所述跟踪线程控制机器人跟踪传送带运动操作;具体化了确定当前运动控制指令操作;还具体化了按照所述当前运动控制指令的理论控制数据,对所述机器人的传送带跟踪数据进行调整,获得所述机器人的实际运动数据操作。该方法通过创建跟踪线程,实现机器人对传送带的跟踪,并在接收到运动控制指令时,设置对应的缓存队列,确定理论控制数据,对机器人的传送带跟踪数据进行调整,获得机器人的实际运动数据,使得机器人能在传送带跟踪的基础上进行一个或多个运动控制指令的操作,解决了现有技术中机器人在进行运动控制指令操作时对传送带跟踪也相应停止的弊端,同时也实现了机器人对运动控制指令的有效响应,进而提高了机器人在实际应用中的操作性能。
127.作为本实施例的一个示例性描述,图2c是本发明实施例二提供的一种机器人的运动控制方法中确定机器人的实际运动数据的其中一种实现流程图。在本实施例中,可以将确定机器人的实际运动数据具体表述为:确定机器人在所述队首运动时间点下相对所述队首关节运动增量的理论运动位姿;采用所述理论运动位姿对所述当前关节跟踪增量进行调整,获得校正运动位姿;通过逆运动学计算公式,确定所述校正运动位姿对应的校正关节增量;将所述校正关节增量确定为所述机器人在当前跟踪时间点的实际运动数据。
128.如图2c所示,本发明实施例二提供的一种机器人的运动控制方法中确定机器人的实际运动数据的其中一种实现流程图,具体包括如下操作:
129.当检测到传送带上出现物品时,由示教器将一个或多个运动控制指令发送给控制器,控制器接收到一个或多个运动控制指令后,生成对应的一个或多个缓存队列,用于存放机器人的理论运动位姿,按照接收时间的先后顺序将接收到的运动控制指令由高到低设定执行优先级,依顺序一次执行一个运动控制指令。
130.确定机器人在队首运动时间点下相对队首关节运动增量的理论运动位姿;采用理论运动位姿对当前关节跟踪增量进行调整,获得校正运动位姿;通过逆运动学计算公式,确定校正运动位姿对应的校正关节增量;将校正关节增量确定为机器人在当前跟踪时间点的实际运动数据。
131.执行完当前运动控制指令后,如果存在未执行运动控制指令,则返回继续确定当前运动控制指令并执行操作;否则,继续控制机器人进行传送带跟踪运动,直至接收到新的运动控制指令或传送带跟踪结束指令。
132.这里以两个运动控制指令为例,此时机器人的实际运动数据的确定步骤如下:
133.当检测到传送带上出现物品时,由示教器将运动控制指令1和运动控制指令2发送给控制器,控制器接收到运动控制指令1和运动控制指令2时,按照接收时间的先后相应的生成2个缓存队列,存放机器人的理论运动位姿。
134.假设运动控制指令1为优先级较高的指令,即运动控制指令1为当前运动控制指令,确定机器人在缓存队列1的队首1运动时间点下相对的关节运动增量的理论运动位姿1;采用理论运动位姿1对当前关节跟踪增量进行调整,获得校正运动位姿;通过逆运动学计算
公式,确定校正运动位姿对应的校正关节增量;将校正关节增量确定为机器人在当前跟踪时间点的实际运动数据。
135.执行完当前运动控制指令1后,将运动控制指令2作为新的当前运动控制指令,后续步骤同上。
136.大于两个运动控制指令的情况同上。在按照实际运动数据,控制机器人运动之后,如果存在未执行运动控制指令,则返回继续执行当前运动控制指令的确定操作;否则,通过相应时刻的传送带跟踪数据,控制机器人进行传送带跟踪,直至接收到新的运动控制指令或传送带跟踪结束指令。
137.图2d是现有技术中运动控制指令单独运行时机器人运动轨迹的实物效果展示,图2e是本发明实施例二提供的一种机器人的运动控制方法中圆形传送带跟踪指令配合运动控制指令运行时机器人运动轨迹的实物效果展示。如图2d所示,图中路线s1为现有技术中,机器人单独执行运动控制指令时,机器人运动的轨迹。如图2e所示,图中s’1为机器人在进行传送带跟踪运动的同时响应运动控制指令时机器人本体各个关节及机器人本体末端连接器连接的工作器械运动的轨迹。
138.图2f是现有技术中运动控制指令单独运行时机器人运动轨迹的坐标效果展示,图2g是本发明实施例二提供的一种机器人的运动控制方法中圆形传送带跟踪指令配合运动控制指令运行时机器人运动轨迹的坐标效果展示。如图2f所示,在单独执行运动控制指令时,机器人按照图中所示的坐标点构成的曲线s1运行,从而完成运动控制指令的实现。如图2g所示,在机器人只进行传送带跟踪指令时,应按照图中所示的坐标点构成的轨迹运行,在接收到运动控制指令时,根据本发明实施例二中提供的一种机器人的运动控制方法,机器人在进行传送带跟踪的同时进行了调整,此时机器人本体各个关节及机器人本体末端连接器连接的工作器械的运行轨迹为s’1,以达到在跟踪传送带的同时,响应运动控制指令,对传送带上物品进行操作的目的。
139.实施例三
140.图3是本发明实施例三提供的一种机器人的运动控制装置的结构框图,本发明实施例所提供的一种机器人的运动控制装置可执行本发明任一实施例所提供的一种机器人的运动控制方法,具备执行方法相应的功能模块和有益效果。
141.该装置可以包括指令接收模块401、指令确定模块402、运动数据确定模块403和运动控制模块404。
142.其中,指令接收模块401,用于将接收到的传送带跟踪指令标记为主执行指令,相对所述主执行指令创建跟踪线程,通过所述跟踪线程控制机器人跟踪传送带运动;
143.指令确定模块402,用于在所述跟踪线程的执行周期内,接收到至少一个运动控制指令时,确定当前运动控制指令;
144.运动数据确定模块403,用于按照所述当前运动控制指令的理论控制数据,对所述机器人的传送带跟踪数据进行调整,获得所述机器人的实际运动数据;
145.运动控制模块404,用于按照所述实际运动数据,控制所述机器人运动。
146.进一步的,指令接收模块401可以包括:
147.信息确定单元,用于通过所述跟踪线程,基于给定的传送带参数,确定机器人的起始跟踪位姿,以及跟踪步长;
148.运动控制单元,用于控制机器人从所述起始跟踪位姿开始按照所述跟踪步长进行传送带跟踪。
149.进一步的,指令确定模块402可以包括:
150.时间戳确定单元,用于确定所接收各所述运动控制指令的接收时间戳;
151.优先级设定单元,用于按照各所述接收时间戳的时间顺序,相对各所述运动控制指令由高到低设定执行优先级;
152.当前指令确定单元,用于将当前最高执行优先级对应的运动控制指令确定为当前运动控制指令。
153.进一步的,运动数据确定模块403可以包括:
154.理论数据确定单元,用于确定所述机器人相对所述当前运动控制指令的理论运动数据,并将所述理论运动数据添加至相应设定的缓存队列;
155.跟踪数据获得单元,用于实时获得所述机器人在各跟踪时间点下对应的关节跟踪增量,并作为传送带跟踪数据;
156.实际数据确定单元,用于通过从所述缓存队列中获取的理论运动数据,对所述传送带跟踪数据进行调整,获得所述机器人的实际运动数据。
157.进一步的,理论数据确定单元具体可以用于:
158.确定机器人响应所述当前运动控制指令进行运动时在各运动时间点对应的关节运动增量;
159.将各所述关节运动增量按照相应运动时间点的先后顺序,依次添加至所述缓存队列。
160.进一步的,实际数据确定单元具体用于:
161.获取机器人跟踪传送带的当前跟踪时间点关联的当前关节跟踪增量;
162.如果所述当前跟随时间点与缓存队列的队首运动时间点匹配,则基于所述队首运动时间点的队首关节运动增量调整所述当前关节跟踪增量,获得所述机器人在当前跟踪时间点的实际运动数据,并从所述缓存队列中删除所述队首关节运动增量;
163.否则,将所述当前关节跟踪增量作为当前跟踪时间点的实际运动数据;
164.将所述当前跟踪时间点的下一时间点作为新的当前跟踪时间点,返回继续执行当前关键跟随增量的获取操作,直至所述缓存队列为空。
165.进一步的,如果所述当前跟随时间点与缓存队列的队首运动时间点匹配,则基于所述队首运动时间点的队首关节运动增量调整所述当前关节跟踪增量,获得所述机器人在当前跟踪时间点的实际运动数据,并从所述缓存队列中删除所述队首关节运动增量还可以包括:
166.确定机器人在所述队首运动时间点下相对所述队首关节运动增量的理论运动位姿;
167.采用所述理论运动位姿对所述当前关节跟踪增量进行调整,获得校正运动位姿;
168.通过逆运动学计算公式,确定所述校正运动位姿对应的校正关节增量;
169.将所述校正关节增量确定为所述机器人在当前跟踪时间点的实际运动数据。
170.实施例四
171.图4是本发明实施例四提供的一种机器人的结构示意图,图4示出了适于用来实现
本发明实施例实施方式的示例性机器人的结构框图。图4显示的设备仅仅是一个示例,不应对本发明实施例的功能和使用范围带来任何限制。
172.如图4所示,该机器人包括示教器50、控制器51、机器人本体52、存储装置53、输入装置54和输出装置55;机器人中控制器51的数量可以是一个或多个,图4中以一个控制器51为例;另外,机器人本体52上还包括了末端连接器521,以连接工作器械。其中,示教器50、控制器51、机器人本体52、存储装置53、输入装置54和输出装置55可以通过总线或其他方式连接,图4中以通过总线连接为例。
173.机器人本体52,用于响应传送带跟踪指令和/或运动控制指令对应的运动控制,示例性的,机器人本体52可以响应传送带的跟踪控制或者其他运动控制指令的运动控制。
174.存储装置53作为一种计算机可读存储介质,可用于存储软件程序、计算机可执行程序以及模块,如本发明实施例中的一种机器人的运动控制方法对应的程序指令/模块(例如,一种机器人的运动控制装置中的指令接收模块401、指令确定模块402、运动数据确定模块403和运动控制模块404)。
175.存储装置53可主要包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、至少一个功能所需的应用程序;存储数据区可存储根据终端的使用所创建的数据等。此外,存储装置53可以包括高速随机存取存储器,还可以包括非易失性存储器,例如至少一个磁盘存储器件、闪存器件、或其他非易失性固态存储器件。上述网络的实例包括但不限于互联网、企业内部网、局域网、移动通信网及其组合。
176.输入装置54可用于接收输入的数字或字符信息,以及产生与机器人的用户设置以及功能控制有关的键信号输入。输出装置55可包括显示屏等显示设备。
177.实施例五
178.本发明实施例五还提供一种包含计算机可执行指令的存储介质,所述计算机可执行指令在由计算机处理器执行时用于执行一种机器人的运动控制方法,该方法包括:
179.将接收到的传送带跟踪指令标记为主执行指令,相对所述主执行指令创建跟踪线程,通过所述跟踪线程控制机器人跟踪传送带运动;
180.在所述跟踪线程的执行周期内,接收到至少一个运动控制指令时,确定当前运动控制指令;
181.按照所述当前运动控制指令的理论控制数据,对所述机器人的传送带跟踪数据进行调整,获得所述机器人的实际运动数据;
182.按照所述实际运动数据,控制所述机器人运动。
183.当然,本发明实施例所提供的一种包含计算机可执行指令的存储介质,其计算机可执行指令不限于如上所述的方法操作,还可以执行本发明任一实施例所提供的一种机器人的运动控制方法中的相关操作。
184.通过以上关于实施方式的描述,所属领域的技术人员可以清楚地了解到,本发明可借助软件及必需的通用硬件来实现,当然也可以通过硬件实现,但很多情况下前者是更佳的实施方式。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品可以存储在计算机可读存储介质中,如计算机的软盘、只读存储器(read

only memory,rom)、随机存取存储器(random access memory,ram)、闪存(flash)、硬盘或光盘等,包括若干指令用以使得一台计算机设
备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述的方法。
185.值得注意的是,上述搜索装置的实施例中,所包括的各个单元和模块只是按照功能逻辑进行划分的,但并不局限于上述的划分,只要能够实现相应的功能即可;另外,各功能单元的具体名称也只是为了便于相互区分,并不用于限制本发明的保护范围。
186.注意,上述仅为本发明的较佳实施例及所运用技术原理。本领域技术人员会理解,本发明不限于这里所述的特定实施例,对本领域技术人员来说能够进行各种明显的变化、重新调整和替代而不会脱离本发明的保护范围。因此,虽然通过以上实施例对本发明进行了较为详细的说明,但是本发明不仅仅限于以上实施例,在不脱离本发明构思的情况下,还可以包括更多其他等效实施例,而本发明的范围由所附的权利要求范围决定。
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献

  • 日榜
  • 周榜
  • 月榜