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

一种机器人的控制方法、装置、计算机设备以及存储介质与流程

2022-03-09 00:43:13 来源:中国专利 TAG:


1.本技术属于控制领域,具体涉及一种机器人的控制方法、装置、计算机设备以及存储介质。


背景技术:

2.当前,随着对机器人应用的大力普及与精度要求的不断提高,其硬件设计和控制系统研发层出不穷。由于机器人型号日益增多,故而需要研发各种控制系统。
3.目前,虽然机器人研发公司众多,但是他们研发的控制系统都是对单一机器人本体做针对性的研发,普遍适用性和市场推广度较低,不利于机器人控制系统的发展。
4.需要说明的是,现有技术中,机器人控制系统兼容性较差,无法适用多种类型的机器人。


技术实现要素:

5.为至少在一定程度上克服相关技术中存在的问题,本技术提供了一种机器人的控制方法、装置、计算机设备以及存储介质,能够解决现有技术中,机器人控制系统兼容性较差,无法适用多种类型的机器人的技术问题。
6.为实现以上目的,本技术采用如下技术方案:
7.根据本发明的第一方面,提供了一种机器人的控制方法,该方法包括:获取机器人的仿真图;在机器人操作系统ros系统环境下,获取仿真图中的目标关节的初始位置坐标和目标位置坐标;获取目标关节从初始位置坐标运动到目标位置坐标的运动参数;基于运动参数,控制机器人的电机运转,以控制机器人运动。
8.进一步地,基于运动参数,控制机器人的电机运转,包括:通过控制器局域网络can通讯方式,将运动参数发送给机器人的电机,以控制电机运转。
9.进一步地,通过控制器局域网络can通讯方式,将运动参数发送给机器人的电机,包括:通过can通讯方式,将运动参数通过通信接口发送给下位机;利用下位机对运动参数进行数据转换,并将数据转换后的参数,发送给电机。
10.进一步地,,获取机器人的仿真图,包括:在ros系统环境下,通过可视化工具界面获取并展示机器人的仿真图;其中,获取仿真图中的目标关节的目标位置坐标,包括:在过可视化工具界面上,通过拖拽操作获取目标位置坐标;或获取用户输入的目标位置坐标。
11.进一步地,,运动参数包括以下至少之一:转动角度、运动速度、运动加速度和运动路径。
12.根据本发明的第二方面,提供了一种机器人的控制装置,该装置包括:第一获取单元,用于获取机器人的仿真图;第二获取单元,用于在机器人操作系统ros系统环境下,获取仿真图中的目标关节的初始位置坐标和目标位置坐标;第三获取单元,用于获取目标关节从初始位置坐标运动到目标位置坐标的运动参数;控制单元,用于基于运动参数,控制机器人的电机运转,以控制机器人运动。
13.进一步地,控制单元包括:发送模块,用于通过控制器局域网络can通讯方式,将运动参数发送给机器人的电机,以控制电机运转。
14.进一步地,发送模块包括:子发送模块,用于通过can通讯方式,将运动参数通过通信接口发送给下位机;转换模块,用于利用下位机对运动参数进行数据转换,并将数据转换后的参数,发送给电机。
15.根据本发明的第三方面,提供了一种计算机设备,其特征在于,计算机设备包括上述任意一项的装置。
16.根据本发明的第四方面,提供了一种计算机可读存储介质,该计算机可读存储介质上存储有计算机程序,该计算机程序被处理器运行时执行上述任意一项的方法的步骤。
17.本技术提供了一种机器人的控制方法、装置、计算机设备以及存储介质,该方法包括:获取机器人的仿真图;在机器人操作系统ros系统环境下,获取仿真图中的目标关节的初始位置坐标和目标位置坐标;获取目标关节从初始位置坐标运动到目标位置坐标的运动参数;基于运动参数,控制机器人的电机运转,以控制机器人运动。解决了现有技术中,机器人控制系统兼容性较差,无法适用多种类型的机器人的技术问题。
18.应当理解的是,以上的一般描述和后文的细节描述仅是示例性和解释性的,并不能限制本技术。
附图说明
19.为了更清楚地说明本技术实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本技术的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
20.图1是根据一示例性实施例示出的机器人的控制方法的流程图;
21.图2是根据一示例性实施例示出的可选的机器人的控制方法的流程图;
22.图3是根据一示例性实施例示出的机器人的控制装置的示意图。
具体实施方式
23.为了使本技术领域的人员更好地理解本技术方案,下面将结合本技术实施例中的附图,对本技术实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本技术一部分的实施例,而不是全部的实施例。基于本技术中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都应当属于本技术保护的范围。
24.需要说明的是,本技术的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本技术的实施例能够以除了在这里图示或描述的那些以外的顺序实施。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、系统、产品或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。
25.实施例一:
26.如图1所示,本技术提供了一种机器人的控制方法,该方法包括:
27.步骤s11,获取机器人的仿真图。
28.具体的,在本方案中,可以由上位机的控制器或者其它具有处理功能的硬件设备作为本方案的方案的执行主体,上述机器人的仿真图可以为预先搭建的机器人的三维图。
29.步骤s13,在机器人操作系统ros系统环境下,获取仿真图中的目标关节的初始位置坐标和目标位置坐标。
30.具体的,在本方案中,在搭建机器人的三维图之后,在机器人操作系统ros系统环境下,获取机器人三维图中的目标关节的初始位置坐标和目标位置坐标,上述目标关节的初始位置坐标和目标位置坐标可以为机器人仿真图中的末端执行器的初始位置坐标和目标位置坐标,需要说明的是,上述仿真图中的目标关节可以为机器人的末端执行器,末端执行器的初始位置坐标和目标位置坐标可以为用户预先通过调用机器人操作系统ros系统的环境配置界面设定的末端执行器的初始位置坐标和目标位置坐标。
31.还需要说明的是,上述ros系统为机器人操作系统(robot operating system),是用于编写机器人软件程序的一种具有高度灵活性的开源的软件架构。ros是建立在优班图(以下简称ubuntu)系统下的一款内置操作系统,但与系统的进程管理没有关系。它提供各种功能包,然后通过点对点机制建立功能包之间的通讯,搭建控制平台,实现机器人的仿真和实物控制,由此衍生出“节点”、“主题”、“服务”、“消息”等基本概念,该ros操作系统能够兼容多种算法,实现多平台应用,因此能够适用多种类型的机器人。
32.步骤s15,获取目标关节从初始位置坐标运动到目标位置坐标的运动参数。
33.具体的,在本方案中,在获取到机器人末端执行器的初始位置坐标和目标位置坐标之后,本方案可以获取末端执行器从初始位置坐标运动到目标位置坐标所需要的运动参数,需要说明的是,上述运动参数可以为每个关节运动到目标位置所需要的转动角度、速度、加速度、位置等参数。可选的,本方案可以调用rrt算法(rapidly exploring random tree快速探索随机树算法)来计算得到上述运动参数。rrt算法是以初始位置为根节点,通过随机采样,生成子节点,进而生成一个扩大的随机扩展树,当随机扩展树接触到目标节点时,就可以在随机扩展树里找到一条从根节点到目标节点的路径,即机器人运动的路径规划。
34.还需要说明的是,由于协作机器人在控制过程中需要对各个关节进行精确控制,达到流畅运动的目的,故而在运动的过程中需要一定的控制算法,本方案的控制算法为机器人运动过程中的路径规划算法,设计方案为输入初始位置和末端位置,进而控制机器人运动,根据此特点,本控制系统采用了上述rrt算法,该算法其效率高、准确度高、入门容易,因此适用于多自由度机器人在空间中的运动。
35.步骤s17,基于运动参数,控制机器人的电机运转,以控制机器人运动。
36.具体的,在本方案中,在获取到上述末端执行器的运动参数之后,可以将上述运动参数发送至机器人的电机,电机执行上述执行运动参数从而从带动末端执行器从初始位置运动到目标位置。
37.通过上述多个步骤,本方案采用了开源的机器人操作系统ros(robotoperating system)来搭建系统,该ros操作系统能够兼容多种算法,实现多平台应用,可适用于市面上
大多数类型的协作机器人,因此本方案解决了现有的机器人的控制系统兼容性差无法适用多种类型的机器人的技术问题。
38.可选的,步骤s17基于运动参数,控制机器人的电机运转,包括:
39.步骤s171,通过控制器局域网络can通讯方式,将运动参数发送给机器人的电机,以控制电机运转。
40.具体的,在本方案中,上位机的计算得到运动参数之后,可以通过控制器局域网络can(controller area network)将运动参数发送至机器人的电机。
41.需要说明的是,本方案通过上位机在计算出末端执行器的运动参数之后,直接将运动参数发送至机器人的电机的控制芯片进行执行,进而控制协作机器人,不同于ros系统通过id地址和下位机机器人进行通信,本方案通过控制器局域网络can实现和机器人的通信。通信接口模块是搭建上位机电脑与下位机协作机器人的连接,用于实现两者间控制信息的发布和反馈信息的传送,由于传统的ros通讯使用id连接的通讯方式,适用范围狭隘,仅对于优傲等少数先进的机器人适用,然而can通讯的在当下具有普遍适用性,所以本方案仅调用了ros的路径规划算法与仿真环境,将其与can通讯相结合,建立了一种新型的通讯方式。通过调用can通讯将上位机计算出的协作机器人各电机参数发送给协作机器人的各个电机上的控制芯片,进而控制协作机器人。本通讯方法跳过了ros通讯,直接建立了与电机之间的通讯,该方法在原有的稳定性好,即时性好等特点基础上,增加了通讯简单、适用性广、移植性高的特点,可适用于市面上大多数协作机器人。
42.由此,本方案跳过了ros通讯,基于ubuntu系统下结合ros实现了对于协作机器人的控制,并且优化了路径规划算法,改进了ros中上下位机的通讯方式,建立了在保证原有实时性和鲁棒性前提下适用性广、操作简单的通讯方式,系统能够实现协作机器人基本的工作。
43.可选的,步骤s171通过控制器局域网络can通讯方式,将运动参数发送给机器人的电机,包括:
44.步骤s1771,通过can通讯方式,将运动参数通过通信接口发送给下位机。
45.步骤s1772,利用下位机对运动参数进行数据转换,并将数据转换后的参数,发送给电机。
46.具体的,在本方案中,可以调用can通讯的方式建立上下位机的通讯,将计算出的每个关节的转动角度及其他必要参数通过通信接口发送给下位机。下位机芯片接收数据,转换为电机可识别的参数发送给电机,进而控制机器人运动。
47.可选的,步骤s11获取机器人的仿真图的步骤包括:
48.步骤s111,在ros系统环境下,通过可视化工具界面获取并展示机器人的仿真图。
49.可选的,步骤s13获取仿真图中的目标关节的目标位置坐标的步骤,包括:
50.步骤s131,在过可视化工具界面上,通过拖拽操作获取目标位置坐标;或
51.步骤s1,2,获取用户输入的目标位置坐标。
52.具体的,本方案可以在ros的3d可视化工具(rviz)界面打开配置好的仿真机器人,用户可以在编辑界面里拖动链条或输入末端执行器坐标,即可调用rrt算法计算出每个关节运动到目标位置所需要的转动角度、速度、加速度、位置等参数,并且依次将每部分的计算结果发送出去。
system)来搭建系统,该ros操作系统能够兼容多种算法,实现多平台应用,可适用于市面上大多数类型的协作机器人,因此本方案解决了现有的机器人的控制系统兼容性差无法适用多种类型的机器人的技术问题。
65.可选的,控制单元包括:发送模块,用于通过控制器局域网络can通讯方式,将运动参数发送给机器人的电机,以控制电机运转。
66.可选的,发送模块包括:子发送模块,用于通过can通讯方式,将运动参数通过通信接口发送给下位机;转换模块,用于利用下位机对运动参数进行数据转换,并将数据转换后的参数,发送给电机。
67.本技术还提供了一种计算机设备,计算机设备包括实施例二中任意一项的装置。
68.本技术还提供了一种计算机可读存储介质,其特征在于,该计算机可读存储介质上存储有计算机程序,该计算机程序被处理器运行时执行实施例一中的方法的步骤。
69.可以理解的是,上述各实施例中相同或相似部分可以相互参考,在一些实施例中未详细说明的内容可以参见其他实施例中相同或相似的内容。
70.需要说明的是,在本技术的描述中,术语“第一”、“第二”等仅用于描述目的,而不能理解为指示或暗示相对重要性。此外,在本技术的描述中,除非另有说明,“多个”、“多”的含义是指至少两个。
71.应该理解,当元件被称为“固定于”或“设置于”另一个元件,它可以直接在另一个元件上或者可能同时存在居中元件;当一个元件被称为“连接”另一个元件,它可以是直接连接到另一个元件或者可能同时存在居中元件,此外,这里使用的“连接”可以包括无线连接;使用的措辞“和/或”包括一个或更多个相关联的列出项的任一单元和全部组合。
72.流程图中或在此以其他方式描述的任何过程或方法描述可以被理解为:表示包括一个或更多个用于实现特定逻辑功能或过程的步骤的可执行指令的代码的模块、片段或部分,并且本技术的优选实施方式的范围包括另外的实现,其中可以不按所示出或讨论的顺序,包括根据所涉及的功能按基本同时的方式或按相反的顺序,来执行功能,这应被本技术的实施例所属技术领域的技术人员所理解。
73.应当理解,本技术的各部分可以用硬件、软件、固件或它们的组合来实现。在上述实施方式中,多个步骤或方法可以用存储在存储器中且由合适的指令执行系统执行的软件或固件来实现。例如,如果用硬件来实现,和在另一实施方式中一样,可用本领域公知的下列技术中的任一项或他们的组合来实现:具有用于对数据信号实现逻辑功能的逻辑门电路的离散逻辑电路,具有合适的组合逻辑门电路的专用集成电路,可编程门阵列(pga),现场可编程门阵列(fpga)等。
74.本技术领域的普通技术人员可以理解实现上述实施例方法携带的全部或部分步骤是可以通过程序来指令相关的硬件完成,上述的程序可以存储于一种计算机可读存储介质中,该程序在执行时,包括方法实施例的步骤之一或其组合。
75.此外,在本技术各个实施例中的各功能单元可以集成在一个处理模块中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个模块中。上述集成的模块既可以采用硬件的形式实现,也可以采用软件功能模块的形式实现。上述集成的模块如果以软件功能模块的形式实现并作为独立的产品销售或使用时,也可以存储在一个计算机可读取存储介质中。
76.上述提到的存储介质可以是只读存储器,磁盘或光盘等。
77.在本说明书的描述中,参考术语“一个实施例”、“一些实施例”、“示例”、“具体示例”、或“一些示例”等的描述意指结合该实施例或示例描述的具体特征、结构、材料或者特点包含于本技术的至少一个实施例或示例中。在本说明书中,对上述术语的示意性表述不一定指的是相同的实施例或示例。而且,描述的具体特征、结构、材料或者特点可以在任何的一个或多个实施例或示例中以合适的方式结合。
78.尽管上面已经示出和描述了本技术的实施例,可以理解的是,上述实施例是示例性的,不能理解为对本技术的限制,本领域的普通技术人员在本技术的范围内可以对上述实施例进行变化、修改、替换和变型。
再多了解一些

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

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

相关文献