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

一种基于多机器人协作的图形化编程方法及相关组件与流程

2023-02-06 12:15:38 来源:中国专利 TAG:


1.本发明实施例涉及机器人编程技术领域,尤其涉及一种基于多机器人协作的图形化编程方法及相关组件。


背景技术:

2.随着机器人技术的发展,在自动化生产领域中逐步推出自动化产线,通过机器人替代人工进行生产加工,为控制机器人进行生产任务,通常需对机器人进行轨迹编程,即用户输入机器人轨迹参数,系统将机器人的轨迹参数标注到3d空间中并通过图形化编程显示给用户,以实现更便利的调试手段,但由于3d模型及视图需使用专门设备进行生成,整体成本较高,场景发生变化时则需重新进行3d模型生成,较为繁琐。然而在面对多机器人协作进行生产任务时,需要在单台机器人上逐个进行编程,效率较低,并且各个机器人之间的配合也需要单步运行才能看出效果,调试过程不直观且调试步骤也较繁琐。


技术实现要素:

3.本发明实施例提供了一种基于多机器人协作的图形化编程方法及相关组件,旨在解决现有图形化编程对多机器人协作时的调试不够直观的问题。
4.第一方面,本发明实施例提供一种基于多机器人协作的图形化编程方法,其包括:
5.接收多个机器人的当前运动程序和当前相对位置信息并进行整合得到当前的图形化程序,并显示当前的所述图形化程序;
6.接收输入的编程指令并根据所述编程指令对当前的所述图形化程序进行调整,得到调整后的图形化程序;
7.将调整后的所述图形化程序进行拆分得到对应每一机器人的调整后运动程序和调整后相对位置信息,并分发至对应的机器人进行加载更新。
8.第二方面,本发明实施例提供一种基于多机器人协作的图形化编程装置,其包括:
9.整合单元,用于接收多个机器人的当前运动程序和当前相对位置信息并进行整合得到当前的图形化程序,并显示当前的所述图形化程序;
10.编程单元,用于接收输入的编程指令并根据所述编程指令对当前的所述图形化程序进行调整,得到调整后的图形化程序;
11.拆分单元,用于将调整后的所述图形化程序进行拆分得到对应每一机器人的调整后运动程序和调整后相对位置信息,并分发至对应的机器人进行加载更新。
12.第三方面,本发明实施例提供了一种计算机设备,其包括存储器、处理器及存储在所述存储器上并可在所述处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现上述第一方面所述的基于多机器人协作的图形化编程方法。
13.第四方面,本发明实施例提供了一种计算机可读存储介质,其中所述计算机可读存储介质存储有计算机程序,所述计算机程序当被处理器执行时使所述处理器执行上述第一方面所述的基于多机器人协作的图形化编程方法。
14.本发明实施例公开了一种基于多机器人协作的图形化编程方法及相关组件,其涉及机器人编程技术领域。该方法包括:接收多个机器人的当前运动程序和当前相对位置信息并进行整合得到当前的图形化程序,并显示当前的图形化程序;接收输入的编程指令并根据编程指令对当前的图形化程序进行调整,得到调整后的图形化程序;将调整后的图形化程序进行拆分得到对应每一机器人的调整后运动程序,并分发至对应的机器人进行加载更新。本发明实施例可以在机器人群中任选一台机器人通过视图显示整个机器人群的图形化程序,更直观展示出整个机器人群的空间点和轨迹以便进行调试。
附图说明
15.为了更清楚地说明本发明实施例技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
16.图1为本发明实施例提供的基于多机器人协作的图形化编程方法的流程示意图;
17.图2为本发明实施例提供的基于多机器人协作的图形化编程方法的子流程示意图;
18.图3为本发明实施例提供的基于多机器人协作的图形化编程方法的又一子流程示意图;
19.图4为本发明实施例提供的基于多机器人协作的图形化编程方法的又一子流程示意图;
20.图5为本发明实施例提供的基于多机器人协作的图形化编程装置的示意性框图;
21.图6为本发明实施例提供的计算机设备的示意性框图;
22.图7为本发明实施例提供的机器人a的在视图上的空间及轨迹状态示意图;
23.图8为本发明实施例提供的示教器多联机编辑区域的示意性框图;
24.图9为本发明实施例提供的多个机器人协作的实例图;
25.图10为本发明实施例提供的轨迹时间图的示意图;
26.图11为本发明实施例提供的生产线节拍的示意图。
具体实施方式
27.下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
28.应当理解,当在本说明书和所附权利要求书中使用时,术语“包括”和“包含”指示所描述特征、整体、步骤、操作、元素和/或组件的存在,但并不排除一个或多个其它特征、整体、步骤、操作、元素、组件和/或其集合的存在或添加。
29.还应当理解,在此本发明说明书中所使用的术语仅仅是出于描述特定实施例的目的而并不意在限制本发明。如在本发明说明书和所附权利要求书中所使用的那样,除非上下文清楚地指明其它情况,否则单数形式的“一”、“一个”及“该”意在包括复数形式。
30.还应当进一步理解,在本发明说明书和所附权利要求书中使用的术语“和/或”是
指相关联列出的项中的一个或多个的任何组合以及所有可能组合,并且包括这些组合。
31.如在本说明书和所附权利要求书中所使用的那样,术语“如果”可以依据上下文被解释为“当...时”或“一旦”或“响应于确定”或“响应于检测到”。类似地,短语“如果确定”或“如果检测到[所描述条件或事件]”可以依据上下文被解释为意指“一旦确定”或“响应于确定”或“一旦检测到[所描述条件或事件]”或“响应于检测到[所描述条件或事件]”。
[0032]
请参阅图1,图1为本发明实施例提供的基于多机器人协作的图形化编程方法的流程示意图;
[0033]
如图1所示,该方法包括步骤s101~s103。
[0034]
s101、接收多个机器人的当前运动程序和当前相对位置信息并进行整合得到当前的图形化程序,并显示当前的图形化程序;
[0035]
该步骤中,各机器人连接有控制柜和示教器,各机器人的控制柜可以通过网线连接/蓝牙连接到同一主机器人的控制柜,当需要对整条产线的机器人进行程序修改时,可在全体停机时选取任一机器人的示教器并点击进入多联机编辑模式;即可以通过任意一台机器人的示教器操作整个机器人群。
[0036]
各机器人的当前运动程序和当前相对位置信息可以发送至同一主机器人的控制柜,再由主机器人的控制柜发送到当前选取的机器人的控制柜,通过当前选取的机器人的控制柜进行整合得到当前的图形化程序,再将当前的图形化程序发送至当前选取的机器人的示教器上进行显示,用户可以在当前选取的机器人的示教器上直观看到机器人群的空间点状态和轨迹状态。
[0037]
s102、接收输入的编程指令并根据编程指令对当前的图形化程序进行调整,得到调整后的图形化程序;
[0038]
该步骤中,用户可以在当前的示教器的视图中直接对图形化程序进行编程操作,也可以在当前的示教器的多联机编辑区域中输入编程指令,系统根据编程指令对当前的图形化程序进行新增、更改、连线和删除等调整,从而得到调整后的图形化程序。
[0039]
s103、将调整后的图形化程序进行拆分得到对应每一机器人的调整后运动程序和调整后相对位置信息,并分发至对应的机器人进行加载更新。
[0040]
该步骤中,用户在根据自身需求调整后,在当前的示教器中执行下发程序指令,当前的示教器可以将调整后的图形化程序传到所连接的控制柜(即当前选取的机器人的控制柜),当前选取的机器人的控制柜将调整后的图形化程序传到主机器人的控制柜,再由主机器人的控制柜对调整后的图形化程序进行拆分得到对应每一机器人的调整后运动程序,并分发至对应的机器人的控制柜,对应机器人的控制柜接收到自身的调整后运动程序后自动加载更新。当然也可以通过当前选取的示教器进行传递,无需经过控制柜进行中转,示教器直接与多机器人之间互联编程。
[0041]
本实施例可以在机器人群中任选一台机器人通过视图显示整个机器人群的图形化程序,用户可以直接对机器人群相互协作时的空间点和轨迹进行调试,具有更直观、调试更方便的优点。
[0042]
在一实施例中,如图2所示,步骤s101包括:
[0043]
s201、接收每一机器人的当前运动程序和当前相对位置信息,得到每一机器人的空间点和轨迹的使用状态,其中,空间点包括机器人的工作位,轨迹为机器人在两个工作位
之间的移动路径;使用状态表示是否可移动、是否锁定、是否可到达、是否使用、是否非法中的一种或多种;
[0044]
s202、将所有机器人的空间点和轨迹的使用状态以整体工程的方式进行整合,得到当前的图形化程序,并显示当前的图形化程序。
[0045]
本实施例中,将所有机器人的空间点和轨迹的使用状态进行整合得到当前的图形化程序,并通过视图进行显示,用户可以更为直观进行查看。
[0046]
一些实施例中,当前的图形化程序中可以为二维或三维图形化程序,图形化程序中的空间点和轨迹以外显特征进行状态标识,外显特征包括颜色、文字和形状中的一种或多种;
[0047]
一些具体显示方式中,以图7所示的机器人a为例,用户通过在当前的图形化程序中点击机器人a所属的标签,可以进入机器人a的视图显示,可显示的,虚线圆框区域为机器人a的移动区域,机器人a的位置、编号1-6和编号a均为空间点,通过箭头指向的a/l1-a/l4均为轨迹,每一空间点和轨迹均可以通过颜色、文字和形状中的一种或多种进行状态表示,以颜色为例,比如编号1为蓝色时表示机器人a可移动的空间点,为红色时表示机器人a不可达到的空间点,为黄色时表示该空间点未使用,为灰色时表示空间点锁定不可编辑,为橙色时表示非法点,程序上无法通过;如此,通过该类外显特征进行状态标识后,用户可以更直观的进行查看以便进行调整。
[0048]
图形化程序的调整方式中,可以通过接收用户输入的编程指令来进行程序编辑,编程指令可以包括拖拽空间点、按顺序划线连接空间点、点击编程选项中的一种或多种,有效的提高了编程的效率并降低了使用门槛。
[0049]
下面结合图8介绍一些根据编程指令执行程序编辑的实施例:
[0050]
在一实施例中,步骤s102中接收输入的编程指令并根据编程指令对当前的图形化程序进行调整的步骤,包括:
[0051]
接收输入的空间点添加指令,根据空间点添加指令在当前的图形化程序中添加新的空间点,并将新的空间点与选定的机器人绑定;和/或,接收输入的轨迹添加指令,根据轨迹添加指令在当前的图形化程序中添加新的轨迹,并将新的轨迹与选定的机器人绑定。
[0052]
本实施例中,用户在示教器多联机编辑区域中点击添加按键,编辑区域中中可显示空间点和/或轨迹的待添加属性,如空间点编号、所属机器人、(位置)坐标和备注等空间点属性,用户可以在属性框中输入对应信息以完成空间点的添加;如轨迹编号、起止点、过程点、速度、指令等轨迹属性,用户可以在属性框中输入对应信息以完成轨迹的添加。
[0053]
在一实施例中,步骤s102中接收输入的编程指令并根据编程指令对当前的图形化程序进行调整的步骤,还包括:
[0054]
接收输入的空间点更改指令,根据空间点更改指令在当前的图形化程序中对选定的空间点的属性进行更改;其中,空间点的属性包括:所绑定的机器人编号、位置、空间点编号中的一种或多种;和/或,接收输入的轨迹更改指令,根据轨迹更改指令在当前的图形化程序中对选定的轨迹的属性进行更改,其中,轨迹的属性包括:起止点、过程点、轨迹编号、速度和指令中的一种或多种。
[0055]
本实施例中,用户可以在视图中直接对图形化编程中的空间点进行拖拽来更改空间点的位置,也可以按顺序划线连接空间点的方式进行轨迹的添加和更改。也可以在示教
器多联机编辑区域中点击连线按键,并在编辑区域中输入需进行连线的空间点的属性以及轨迹的属性,从而完成连线。
[0056]
在一实施例中,步骤s102中接收输入的编程指令并根据编程指令对当前的图形化程序进行调整的步骤,还包括:
[0057]
接收输入的空间点删除指令,根据空间点删除指令在当前的图形化程序中对选定的空间点进行删除;和/或,接收输入的轨迹删除指令,根据轨迹删除指令在当前的图形化程序中对选定的轨迹进行删除。
[0058]
本实施例中,用户可以在视图中直接对图形化编程中的空间点或轨迹进行选取,并在弹出的选项指令中选择删除指令,即可快速删除空间点或轨迹。也可以在示教器多联机编辑区域中点击删除按键,并在编辑区域中输入需进行删除的空间点和/或轨迹,即可进行删除。
[0059]
在一实施例中,如图3所示,基于多机器人协作的图形化编程方法还包括:
[0060]
s301、利用图形化程序对待生产物品的工序进行轨迹分析,当存在多个机器人均可完成同一工序时,则输出对应多个轨迹时间图,当每一工序均仅由任意一个机器人完成时,则输出一个轨迹时间图;
[0061]
s302、当输出多个轨迹时间图时,选择完成单个待生产物品所需时间最少的轨迹时间图作为推荐。
[0062]
本实施例中,根据待生产物品的工序生成机器人的轨迹时间图,可以方便用户对图形化程序进行调整,从而对生产线上机器人的节拍进行优化。
[0063]
本实施例以图9和图10为例进行介绍,图9中示出产线上存在机器人a、机器人b和机器人c,待生产物品需经过4道工序完成生产,利用编辑的图形化程序对待生产物品的工序进行轨迹分析后,得到空间点1

空间点2为工序1并生成轨迹a/l1,空间点2

空间点3为工序2并生成轨迹b/l1,空间点3

空间点4为工序3并可生成轨迹b/l2或c/l1,空间点4

空间点5为工序4并可生成轨迹c/l1或c/l2,即工序3是可以选择轨迹b/l2或c/l1的,相对应的工序4则受上一轨迹影响可选择为轨迹c/l1或c/l2。
[0064]
如此则存在机器人b和机器人c均可完成工序3,则可以输出如图10所示的两个轨迹时间图,用户可以直观的获取两个轨迹时间图中的每个工序的时间对比,且本系统可直接选择完成单个待生产物品所需时间最少的轨迹时间图作为推荐,用户也可以根据需求进行调整或选用。
[0065]
在一实施例中,如图4所示,步骤s303包括:
[0066]
s401、将每一轨迹时间图中的单个机器人作为分类;
[0067]
s402、取每一轨迹时间图中单个机器人的最长用时;
[0068]
s403、选择最长用时为最小的轨迹时间图作为推荐。
[0069]
本实施例中,根据输出的多个轨迹时间图,由于每个机器人可同时进行运行,轨迹时间图上将以单个机器人作为分类,取每一轨迹时间图中单个机器人的最长用时,最长用时越小表明产线效率越高。以图9和图10为示例,系统将选择空间点3

空间点4的轨迹为c/l1和空间点4

空间点5的轨迹为c/l2作为推荐,其效率的提升可参考图11中示出的生产线节拍图。
[0070]
图11中上面部分为对应图10上面部分轨迹时间图的生产线节拍,图11中下面部分
为对应图10下面部分轨迹时间图的生产线节拍;生产线节拍是指连续完成相同的两个待生产物品(或两次服务,或两批产品)之间的间隔时间,即指完成一个待生产物品所需的平均时间,如图11中,机器人a加工完的第二个产品需等机器人b完成第一个产品后,才能进行加工;整体上由11个时间格减少为10个时间格,生产效率明显提高。
[0071]
本发明实施例还提供一种基于多机器人协作的图形化编程装置,该基于多机器人协作的图形化编程装置用于执行前述基于多机器人协作的图形化编程方法的任一实施例。具体地,请参阅图5,图5是本发明实施例提供的基于多机器人协作的图形化编程装置的示意性框图。
[0072]
如图5所示,基于多机器人协作的图形化编程装置500,包括:整合单元501、编程单元502以及拆分单元503。
[0073]
整合单元501,用于接收多个机器人的当前运动程序和当前相对位置信息并进行整合得到当前的图形化程序,并显示当前的图形化程序;
[0074]
编程单元502,用于接收输入的编程指令并根据编程指令对当前的图形化程序进行调整,得到调整后的图形化程序;
[0075]
拆分单元503,用于将调整后的图形化程序进行拆分得到对应每一机器人的调整后运动程序,并分发至对应的机器人进行加载更新。
[0076]
该装置可以在机器人群中任选一台机器人通过视图显示整个机器人群的图形化程序,用户可以直接对机器人群相互协作时的空间点和轨迹进行调试,具有更直观、调试更方便的优点。
[0077]
所属领域的技术人员可以清楚地了解到,为了描述的方便和简洁,上述描述的装置和单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
[0078]
上述基于多机器人协作的图形化编程装置可以实现为计算机程序的形式,该计算机程序可以在如图6所示的计算机设备上运行。
[0079]
请参阅图6,图6是本发明实施例提供的计算机设备的示意性框图。该计算机设备600是服务器,服务器可以是独立的服务器,也可以是多个服务器组成的服务器集群。
[0080]
参阅图6,该计算机设备600包括通过系统总线601连接的处理器602、存储器和网络接口605,其中,存储器可以包括非易失性存储介质603和内存储器604。
[0081]
该非易失性存储介质603可存储操作系统6031和计算机程序6032。该计算机程序6032被执行时,可使得处理器602执行基于多机器人协作的图形化编程方法。
[0082]
该处理器602用于提供计算和控制能力,支撑整个计算机设备600的运行。
[0083]
该内存储器604为非易失性存储介质603中的计算机程序6032的运行提供环境,该计算机程序6032被处理器602执行时,可使得处理器602执行基于多机器人协作的图形化编程方法。
[0084]
该网络接口605用于进行网络通信,如提供数据信息的传输等。本领域技术人员可以理解,图6中示出的结构,仅仅是与本发明方案相关的部分结构的框图,并不构成对本发明方案所应用于其上的计算机设备600的限定,具体的计算机设备600可以包括比图中所示更多或更少的部件,或者组合某些部件,或者具有不同的部件布置。
[0085]
本领域技术人员可以理解,图6中示出的计算机设备的实施例并不构成对计算机设备具体构成的限定,在其他实施例中,计算机设备可以包括比图示更多或更少的部件,或
者组合某些部件,或者不同的部件布置。例如,在一些实施例中,计算机设备可以仅包括存储器及处理器,在这样的实施例中,存储器及处理器的结构及功能与图6所示实施例一致,在此不再赘述。
[0086]
应当理解,在本发明实施例中,处理器602可以是中央处理单元(central processing unit,cpu),该处理器602还可以是其他通用处理器、数字信号处理器(digital signal processor,dsp)、专用集成电路(application specific integrated circuit,asic)、现成可编程门阵列(field-programmable gate array,fpga)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等。其中,通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。
[0087]
本领域普通技术人员可以理解的是实现上述实施例的方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成。该计算机程序可存储于一存储介质中,该存储介质为计算机可读存储介质。该计算机程序被该计算机系统中的至少一个处理器执行,以实现上述方法的实施例的流程步骤。
[0088]
在本发明的另一实施例中提供计算机可读存储介质。该计算机可读存储介质可以为非易失性的计算机可读存储介质。该计算机可读存储介质存储有计算机程序,该计算机程序被处理器执行时使处理器执行上述基于多机器人协作的图形化编程方法的任意实施例。
[0089]
存储介质为实体的、非瞬时性的存储介质,例如可以是u盘、移动硬盘、只读存储器(read-only memory,rom)、磁碟或者光盘等各种可以存储程序代码的实体存储介质。
[0090]
本领域普通技术人员可以意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、计算机软件或者二者的结合来实现,为了清楚地说明硬件和软件的可互换性,在上述说明中已经按照功能一般性地描述了各示例的组成及步骤。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本发明的范围。
[0091]
在本发明所提供的几个实施例中,应该理解到,所揭露的装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的。例如,各个单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式。例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。
[0092]
本发明实施例方法中的步骤可以根据实际需要进行顺序调整、合并和删减。本发明实施例装置中的单元可以根据实际需要进行合并、划分和删减。另外,在本发明各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以是两个或两个以上单元集成在一个单元中。
[0093]
该集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分,或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台空调器执行本发明各个实施例所述方法的全部或部分步骤。
[0094]
在上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详细描述
的部分,可以参见其他实施例的相关描述。
[0095]
显然,本领域的技术人员可以对本发明进行各种改动和变型而不脱离本发明的精神和范围。这样,尚且本发明的这些修改和变型属于本发明权利要求及其等同技术的范围之内,则本发明也意图包含这些改动和变型在内。
[0096]
以上所述,仅为本发明的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到各种等效的修改或替换,这些修改或替换都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应以权利要求的保护范围为准。
再多了解一些

本文用于创业者技术爱好者查询,仅供学习研究,如用于商业用途,请联系技术所有人。

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

相关文献