CN109048928B - 一种机器人控制程序的生成方法及装置 - Google Patents

一种机器人控制程序的生成方法及装置 Download PDF

Info

Publication number
CN109048928B
CN109048928B CN201811253191.7A CN201811253191A CN109048928B CN 109048928 B CN109048928 B CN 109048928B CN 201811253191 A CN201811253191 A CN 201811253191A CN 109048928 B CN109048928 B CN 109048928B
Authority
CN
China
Prior art keywords
logic function
candidate
function
robot
editing area
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
Application number
CN201811253191.7A
Other languages
English (en)
Other versions
CN109048928A (zh
Inventor
李煜
牟联树
黄真
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Aubo Beijing Intelligent Technology Co ltd
Original Assignee
Aubo Beijing Robotics Technology Co ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Aubo Beijing Robotics Technology Co ltd filed Critical Aubo Beijing Robotics Technology Co ltd
Priority to CN201811253191.7A priority Critical patent/CN109048928B/zh
Publication of CN109048928A publication Critical patent/CN109048928A/zh
Application granted granted Critical
Publication of CN109048928B publication Critical patent/CN109048928B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Programme-controlled manipulators
    • B25J9/16Programme controls
    • B25J9/1602Programme controls characterised by the control system, structure, architecture
    • B25J9/161Hardware, e.g. neural networks, fuzzy logic, interfaces, processor
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Programme-controlled manipulators
    • B25J9/16Programme controls
    • B25J9/1602Programme controls characterised by the control system, structure, architecture
    • B25J9/1605Simulation of manipulator lay-out, design, modelling of manipulator

Abstract

本申请公开了一种机器人控制程序的生成方法及装置,包括:响应于针对多个候选逻辑功能的选择操作,将被选中的候选逻辑功能添加至逻辑功能编辑区域,并将逻辑功能编辑区域中的候选逻辑功能确定为目标逻辑功能;获取基于机器人执行的被引导动作而生成的动作参数;根据目标逻辑功能以及动作参数,生成机器人的运动轨迹。可见,对于技术人员而言,无需再通过手动编程的方式得到机器人运动轨迹的控制程序,从而使得技术人员的工作量得到很大程度上的减少,并且,也降低了生成该机器人运动轨迹对应的控制程序所需的时间成本。

Description

一种机器人控制程序的生成方法及装置
技术领域
本申请涉及机器人技术领域,尤其涉及一种机器人控制程序的生成方法及装置。
背景技术
随着科技的发展,人们对于机器人的关注度也越来越高。机器人,作为一种自动执行工作的机器装置,可以按照预先编排的机器人控制程序,协助或者取代人类工作。无论是在工业生产方面,还是在日常生活方面,机器人都得到了广泛的应用。
目前,机器人通常是按照预先编写好的机器人控制程序,执行固定的动作。如果机器人需要完成的工作或者机器人所需执行的动作发生改动,则通常需要技术人员重新手动编写机器人控制程序,并将其输入至机器人的控制系统中,以使得机器人根据重新编写的机器人控制程序,完成相应的工作或执行相应的动作。但是,重新手动编写机器人控制程序,对于技术人员而言不仅工作量较大,而且,编写机器人控制程序需要花费较长的时间,时间成本过高。
发明内容
有鉴于此,本申请的主要目的在于提供一种机器人控制程序的生成方法及装置,以使得控制机器人运作的机器人控制程序能够自动生成,从而减少了技术人员的工作量,并降低生成该机器人控制程序的时间成本。
第一方面,本申请实施例提供了一种机器人控制程序的生成方法,该方法具体可以包括:
响应于针对多个候选逻辑功能的选择操作,将被选中的候选逻辑功能添加至逻辑功能编辑区域;
将逻辑功能编辑区域中的候选逻辑功能确定为目标逻辑功能;
获取基于机器人执行的被引导动作而生成的动作参数;
根据所述目标逻辑功能以及所述动作参数,生成机器人的运动轨迹。
在一些可能的实施方式中,所述逻辑功能编辑区域中候选逻辑功能是以树状结构进行排布的。
在一些可能的实施方式中,所述方法还包括:
复制所述逻辑功能编辑区域中位于第一位置的候选逻辑功能;
将复制的候选逻辑功能添加至所述逻辑功能编辑区域中的第二位置处。
在一些可能的实施方式中,所述方法还包括:
剪切所述逻辑功能编辑区域中位于第三位置的候选逻辑功能;
将剪切的候选逻辑功能添加至所述逻辑功能编辑区域中的第四位置处。
在一些可能的实施方式中,所述方法还包括:
删除所述逻辑功能编辑区域中位于第五位置的候选逻辑功能。
在一些可能的实施方式中,所述方法还包括:
撤销最后一次对所述逻辑功能编辑区域中至少一个候选逻辑功能的编辑操作,所述编辑操作包括剪切、删除、添加中的任意一种操作。
在一些可能的实施方式中,所述方法还包括:
在撤销最后一次对所述逻辑功能编辑区域中至少一个候选逻辑功能的编辑操作后,恢复对所述候选逻辑功能的编辑操作。
在一些可能的实施方式中,所述逻辑功能是以逻辑控件的形式呈现于示教器的显示界面上。
在一些可能的实施方式中,所述机器人与外部设备进行连接,所述方法还包括:
利用预设的控制插件,将所述外部设备的功能描述信息转换成配置文件;
将所述配置文件导入所述示教器中,以使得所述外部设备的功能加载至所述示教器中。
第二方面,本申请实施例还提供了一种机器人控制程序的生成装置,该装置包括:
添加单元,用于响应于针对多个候选逻辑功能的选择操作,将被选中的候选逻辑功能添加至逻辑功能编辑区域;
确定单元,用于将逻辑功能编辑区域中的候选逻辑功能确定为目标逻辑功能;
获取单元,用于获取基于机器人执行的被引导动作而生成的动作参数;
生成单元,用于根据所述目标逻辑功能以及所述动作参数,生成机器人的运动轨迹。
在一些可能的实施方式中,所述逻辑功能编辑区域中候选逻辑功能是以树状结构进行排布的。
在一些可能的实施方式中,该装置还包括:
复制单元,用于复制所述逻辑功能编辑区域中位于第一位置的候选逻辑功能;
第一逻辑功能添加单元,用于将复制的候选逻辑功能添加至所述逻辑功能编辑区域中的第二位置处。
在一些可能的实施方式中,该装置还包括:
剪切单元,用于剪切所述逻辑功能编辑区域中位于第三位置的候选逻辑功能;
第二逻辑功能添加单元,用于将剪切的候选逻辑功能添加至所述逻辑功能编辑区域中的第四位置处。
在一些可能的实施方式中,该装置还包括:
删除单元,用于删除所述逻辑功能编辑区域中位于第五位置的候选逻辑功能。
在一些可能的实施方式中,该装置还包括:
撤销单元,用于撤销最后一次对所述逻辑功能编辑区域中至少一个候选逻辑功能的编辑操作,所述编辑操作包括剪切、删除、添加中的任意一种操作。
在一些可能的实施方式中,该装置还包括:
恢复单元,用于在撤销最后一次对所述逻辑功能编辑区域中至少一个候选逻辑功能的编辑操作后,恢复对所述候选逻辑功能的编辑操作。
在一些可能的实施方式中,所述逻辑功能是以逻辑控件的形式呈现于示教器的显示界面上。
在一些可能的实施方式中,所述机器人与外部设备进行连接,该装置还包括:
转换单元,用于利用预设的控制插件,将所述外部设备的功能描述信息转换成配置文件;
导入单元,用于将所述配置文件导入所述示教器中,以使得所述外部设备的功能加载至所述示教器中。
本申请提供的一种机器人控制程序的生成方法及装置,通过自动生成机器人的运动轨迹,来减少技术人员的工作量,以及降低重新编写机器人控制程序的时间成本。具体的,响应于针对多个候选逻辑功能的选择操作,将被选中的候选逻辑功能添加至逻辑功能编辑区域,然后,将逻辑功能编辑区域中的候选逻辑功能确定为目标逻辑功能;接着,获取基于机器人执行的被引导动作而生成的动作参数;最后,根据所述目标逻辑功能以及所述动作参数,生成机器人的运动轨迹。可见,根据目标逻辑功能以及动作参数,可以自动生成得到所需的机器人的运动轨迹,这样,对于技术人员而言,只需执行选择逻辑功能的操作以及引导机器人的操作即可,而无需再通过手动编程的方式得到机器人运动轨迹的控制程序,从而使得技术人员的工作量得到很大程度上的减少,并且,通常情况下自动生成机器人运动轨迹所需的时间,也远少于技术人员手动编写机器人运动轨迹的控制程序所需花费的时间,因此,也降低了生成该机器人运动轨迹所需的时间成本。
附图说明
为了更清楚地说明本申请实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本申请实施例提供的一种应用场景的示意图;
图2为本申请实施例提供的一种机器人控制程序的生成方法的流程示意图;
图3为在示教器上设置逻辑控件的示意图;
图4为本申请实施例提供的一种机器人控制程序的生成方法的流程示意图;
图5为本申请实施例提供的一种机器人控制程序的生成装置的结构示意图。
具体实施方式
为使本申请实施例的目的、技术方案和优点更加清楚,下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
目前,为了使得机器人能够完成用户预期的动作,通常是由技术人员根据该预期动作事先编写好相应的机器人控制程序,并将该机器人控制程序导入机器人的控制系统中,这样,控制系统可以通过执行该机器人控制程序,控制机器人完成用户预期的动作。但是,如果用户预期的动作或者机器人所需完成的工作发生变化,则技术人员通常需要根据机器人所需执行的动作重新编写机器人控制程序,而对于技术人员而言,重新编写机器人控制程序不仅工作量较大,而且所需花费的时间也会较长,使得重新编写机器人控制程序的时间成本较高。
为了解决上述技术问题,本申请实施例提供了一种机器人控制程序的生成方法,通过自动生成机器人的运动轨迹,来减少技术人员的工作量,以及降低重新编写机器人控制程序的时间成本。具体的,响应于针对多个候选逻辑功能的选择操作,将被选中的候选逻辑功能添加至逻辑功能编辑区域,然后,将逻辑功能编辑区域中的候选逻辑功能确定为目标逻辑功能;接着,获取基于机器人执行的被引导动作而生成的动作参数;最后,根据所述目标逻辑功能以及所述动作参数,生成机器人的运动轨迹。
可见,根据目标逻辑功能以及动作参数,可以自动生成得到所需的机器人的运动轨迹,这样,对于技术人员而言,只需执行选择逻辑功能的操作以及引导机器人的操作即可,而无需再通过手动编程的方式得到机器人运动轨迹的控制程序,从而使得技术人员的工作量得到很大程度上的减少,并且,通常情况下自动生成机器人的运动轨迹所需的时间,也远少于技术人员手动编写机器人运动轨迹对应的控制程序所需花费的时间,因此,也降低了生成该机器人运动轨迹所需的时间成本。
举例来说,本申请实施例可以应用于如图1所述的示例性应用场景中。在该场景中,示教器102可以向用户101呈现多个候选逻辑功能的选择按钮,用户101可以通过点击该选择按钮,以对候选逻辑功能进行选择,并由示教器102将被用户101选中的候选逻辑功能添加至逻辑功能编辑区域;然后,示教器102可以将逻辑功能编辑区域中的候选逻辑功能确定为目标逻辑功能,并将该目标逻辑功能发送给控制柜103;控制柜103可以获取基于机器人104执行的被引导动作而生成的动作参数,最后,控制柜103可以根据所确定的目标逻辑功能以及获取的动作参数,生成用于控制机器人104执行被引导动作的机器人控制程序。
可以理解,上述场景仅用于示例性说明,并不用于对本申请实施例的应用场景进行限定,事实上,本申请实施例还可以应用于其它可适用的场景中。
参阅图2,图2示出了本申请实施例中一种机器人控制程序的生成方法的流程示意图,该方法具体可以包括:
S201:响应于针对多个候选逻辑功能的选择操作,将被选中的候选逻辑功能添加至逻辑功能编辑区域。
本实施例中,候选逻辑功能,是指被提供选择的、实现机器人运动的功能,比如,可以是实现移动、等待等功能。其中,机器人,通常包括能够自动执行工作的所有机器装置,而并非仅仅是指外形与人类外形相似的机器装置。
在一些可能的实施方式中,可以将多个候选逻辑功能预先呈现给用户,由用户根据实际需求对多个候选逻辑功能进行选择,并且,可以将被用户选中的候选逻辑功能添加至逻辑功能编辑区域。这样,用户不仅可以在逻辑功能编辑区域上看到自己所选择的逻辑功能,而且,还可以在逻辑功能编辑区域上对被选中的候选逻辑功能进行编辑,比如是对候选逻辑功能进行复制、粘贴、剪切、删除等。
作为一种示例,为了方便用户对逻辑功能的选择,该逻辑功能可以是以可以是以树状结构进行排布,并且以逻辑控件的形式呈现于示教器的显示界面上,这样,用户可以通过对示教器所显示的多个逻辑控件进行点击,就可以实现对候选逻辑功能的选择。其中,每个逻辑控件都具有对应的候选逻辑功能。如图3所示,示教器右侧的显示界面上可以呈现有移动功能的逻辑控件“Move”以及等待功能的逻辑控件“Wait”等,则,在用户点击逻辑控件“Move”以及“Wait”后,与逻辑控件“Move”对应的移动功能以及与逻辑控件“Wait”对应的等待功能,就能够被添加至示教器左侧的逻辑功能编辑区域中。
需要说明的是,本实施例中,可以重复添加相同的候选逻辑功能至逻辑功能编辑区域。比如,用户可以依次点击逻辑控件“Move”、“Wait”以及“Move”后,则可以依次向逻辑功能编辑区域中添加移动功能、等待功能以及移动功能。其中,基于用户对候选逻辑功能的选择,移动功能可以两次添加至逻辑功能编辑区域。
S202:将逻辑功能编辑区域中的候选逻辑功能确定为目标逻辑功能。
可以理解,在用户从多个候选逻辑功能中选择了部分候选逻辑功能后,用户可能需要对已选择的候选逻辑功能进行修改,比如是删除部分已选择的候选逻辑功能、在逻辑功能编辑区域中复制并粘贴已选择的候选逻辑功能等,则可以在用户完成对逻辑功能编辑区域中候选逻辑功能的编辑后,将逻辑功能编辑区域中所存在的候选逻辑功能,确定为用户最终选定的候选逻辑功能,也即为目标逻辑功能。
其中,对逻辑功能编辑区域中的候选逻辑功能所进行的编辑操作可以包括多种,在其中一种编辑操作的示例中,该编辑操作可以是对候选逻辑功能的复制及粘贴操作。具体的,可以复制逻辑功能编辑区域中位于第一位置的候选逻辑功能,在完成对候选逻辑功能的复制后,可以将复制的候选逻辑功能添加至逻辑功能编辑区域中的第二位置处,这样,逻辑功能编辑区域中的第一位置以及第二位置均存在该候选逻辑功能。
在另一种编辑操作的示例中,该编辑操作可以是对候选逻辑功能的剪切以及粘贴操作。具体的,可以剪切逻辑功能编辑区域中位于第三位置的候选逻辑功能,在完成对候选逻辑功能的剪切后,可以将剪切的候选逻辑功能添加至逻辑功能编辑区域中的第四置处,这样,被剪切的候选逻辑功能就可以从逻辑功能编辑区域中的第三位置移动至第四位置。
在又一种编辑操作的示例中,该编辑操作可以是对候选逻辑功能的删除操作。具体的,可以删除逻辑功能编辑区域中位于第五位置的候选逻辑功能,以使得用户不需要候选逻辑功能能够从逻辑功能编辑区域中的第五位置出剔除。
在又一种编辑操作的示例中,该编辑操作还可以是针对于候选逻辑功能的撤销操作。具体的,对于逻辑功能编辑区域中至少一个候选逻辑功能,用户可能对该候选逻辑功能进行了至少一次的编辑操作,例如对该候选逻辑功能进行剪切、删除以及添加至其它位置等,如果用户觉得之前对该候选逻辑功能的编辑操作不合适,则可以撤销最后一次对该候选逻辑功能的编辑操作。比如,对于逻辑功能编辑区域中的候选逻辑功能A,用户最近一次对该候选逻辑功能A进行了剪切操作,将该候选逻辑功能A从第三位置移动至第四位置,当觉得该编辑操作不合适时,用户可以撤销对该候选逻辑功能A的剪切操作,使得该候选功能A在逻辑功能编辑区域中的位置,撤回至第三位置。
在又一种编辑操作的示例中,该编辑操作还可以是针对于候选逻辑功能的恢复操作。具体的,在用户撤销最后一次对逻辑功能编辑区域中至少一个候选逻辑功能的编辑操作后,如果用户需要取消撤回对该候选逻辑功能的编辑操作,则可以恢复对该候选逻辑功能的编辑操作。比如,用户在对候选逻辑功能A进行剪切操作后,该候选逻辑功能A从逻辑功能编辑区域的第三位置移动至第四位置,在用户撤销对该候选逻辑功能A的剪切操作后,该候选功能A撤回至第三位置,此时,如果用户觉得撤销对该候选逻辑功能A的剪切操作不合适,依然需要对该候选逻辑功能A进行剪切操作,则可以恢复对该候选逻辑功能A的剪切操作,使得候选逻辑功能A从第三位置移动至第四位置。
值的注意的是,为了便于用户触发对候选逻辑功能的编辑操作,在一种可能的场景中,可以向用户呈现与上述编辑操作对应的触发控件,这样,用户通过点击该触发控件就可以触发执行对应的编辑操作。
S203:获取基于机器人执行的被引导动作而生成的动作参数。
可以理解,用户选择的逻辑功能中,通常并不包含机器人实际工作时所对应的具体运动参数(如前进1.8米对应的运动参数、旋转35度角所对应的运动参数、等待20秒所对应的运动参数等),因此,在确定出目标逻辑功能后,可以继续获取机器人实际工作所对应的具体运动参数。
作为一种示例,可以是当机器人处于可拖动模式时,根据机器人的被引导动作来获取运动参数。具体的,在用户完成对逻辑功能编辑区域中候选逻辑功能的编辑后,机器人可以进入可拖动模式,并由用户对机器人进行示教;在示教过程中,用户可以引导机器人末端执行器(如安装于机器人关节结构末端的夹持器、工具、焊枪、喷枪等),执行用户预期的动作。这样,基于示教过程中机器人执行的被引导动作,就可以生成所需的运动参数,进而可以获取到所生成的运动参数。比如,在示教过程中,用户可以引导机器人前进1.5米,则基于机器人前进1.5米的过程中所执行的被引导动作,可以生成得到前进1.5米所对应的运动参数;又比如,在示教过程中,用户可以引导机器人旋转45度角,则基于机器人旋转45度角的过程中所执行的被引导动作,可以生成得到旋转45度角所对应的运动参数。
实际应用中,可以是根据机器人的状态信息生成运动参数。具体的,机器人的运动关节中可以安装由驱动板,该驱动板可以实时获取机器人的状态信息,包括机器人的运行信息、位姿信息、电气相关信息以及温度信息等,则,在示教过程中,驱动板可以基于机器人所执行的被引导动作,获取机器人的状态信息,并将该状态信息发送至控制柜中的上位机软件中,由上位机软件将所获取的状态信息转换成该被引导动作所对应的运动参数。
S204:根据所确定的目标逻辑功能以及获取的动作参数,生成机器人的运动轨迹。
值的注意的是,对于每一个机器人所能实现的候选逻辑功能,通常是通过执行与之对应的程序代码来实现的,因此,本实施例中可以预先编写好实现每个候选逻辑功能的程序代码,并建立候选逻辑功能与程序代码的对应关系,这样,在确定出目标逻辑功能后,就可以根据该对应关系,确定出目标逻辑功能对应的程序代码。具体实现时,可以是由控制柜中的上位机软件通过API(Application Programming Interface,应用程序编程接口)以及内部的算法模块,将逻辑功能编辑区域中的候选逻辑功能对应的程序代码,编译成树状结构。
值的注意的是,该预先编写好的程序代码,通常是保证机器人能够实现对应的功能,但是对于该程序代码中的运动参数,还需要根据机器人实际所需执行的动作进行确定。譬如,对于机器人实现移动功能的程序代码,该程序代码中可以存在预设的初始运动参数,该预设的初始程序代码参数可以对应于机器人前进0.5米等距离,而机器人实际所需前进1米的距离,则前进1米的距离所对应的运动参数,还需要进一步获得。
因此,在获得目标逻辑功能以及动作参数后,可以将运动参数写入至对应的程序代码中,就可以生成得到控制机器人运动的控制程序,也即生成了机器人的运动轨迹。这样,当该机器人的运动轨迹被导入至机器人的控制系统时,机器人可以按照该运动轨迹对应的控制程序,控制机器人按照该运动轨迹执行被引导动作。
本实施例中,响应于针对多个候选逻辑功能的选择操作,将被选中的候选逻辑功能添加至逻辑功能编辑区域,然后,将逻辑功能编辑区域中的候选逻辑功能确定为目标逻辑功能;接着,获取基于机器人执行的被引导动作而生成的动作参数;最后,根据所述目标逻辑功能以及所述动作参数,生成机器人的运动轨迹。可见,根据目标逻辑功能以及动作参数,可以自动生成得到所需的机器人的运动轨迹,这样,对于技术人员而言,只需执行选择逻辑功能的操作以及引导机器人的操作即可,而无需再通过手动编程的方式得到机器人的运动轨迹对应的控制程序,从而使得技术人员的工作量得到很大程度上的减少,并且,通常情况下自动生成机器人运动轨迹所需的时间,也远少于技术人员手动编写机器人运动的轨迹对应的控制程序所需花费的时间,因此,也降低了生成该机器人运动轨迹所需的时间成本。
实际应用中,诸如机械臂等机器人通常会与一些外部设备进行连接,比如,可以在机械臂上连接夹爪、吸盘、智能相机或者力传感器等,通常情况下,用户可以通过操控示教器来控制与机器人连接的外部设备。而机器人在出厂时,无法将可与机器人连接的所有外部设备的操作信息均体现于示教器中,因此,在一些可能的实施方式中,可以是通过基于外部设备的功能所得到的配置文件,来实现将外部设备的功能加载至示教器中,以便于用户对与机器人连接的外部设备进行操控。具体的,参阅图4,图4示出了本申请实施例中一种机器人控制程序的生成方法的流程示意图,在该实施例中,可以预先将夹爪、吸盘、智能相机或者力传感器等外部设备与机器人建立连接,并且,该外部设备的功能可以加载至控制机器人运动的示教器中,然后,在生成相应的机器人控制程序来控制机器人进行运动,该方法具体可以包括:
S401:利用预设的控制插件,将外部设备的功能描述信息转换成配置文件。
具体实现时,可以在机器人的控制系统中添加第三方控制插件,该第三方控制插件可以将外部设备的功能描述信息,转换成将外部设备加载至示教器中所需的配置文件。
S402:将生成的配置文件导入示教器中,以使得外部设备的功能能够加载至示教器中。
具体实现时,可以将生成的配置文件导入至示教器中指定的文件夹下,这样,当示教器启动运行时,示教器中的主程序会自动扫描该指定的文件夹,并将该配置文件所对应的外部设备的功能,加载至示教器的功能界面中,从而实现在示教器上完成对外部设备的功能的加载。当用户需要通过示教器控制与机器人相连接的外部设备时,通过在示教器的功能界面上执行相应的操作,就可以实现对该外部设备的控制。
比如,当机器人与外部设备智能相机相连时,配置与机器人控制系统中的第三方插件,可以基于该智能相机的视觉识别功能的描述信息,生成相应的配置文件,然后,该配置文件可以被导入至示教器指定的文件夹下,这样,示教器在启动运行时,可以自动扫描该文件夹下的配置文件,就可以将智能相机的视觉识别功能添加至示教器的功能界面中,从而实现在示教器上完成对智能相机的视觉识别功能的加载。
S403:响应于用户针对示教器上逻辑控件的点击操作,将被用户选中的逻辑控件添加至逻辑功能编辑区域,其中,每个逻辑控件都可以对应于一种可实现机器人运动的逻辑功能。
S404:将逻辑功能编辑区域中的逻辑控件所对应的逻辑功能,确定为目标逻辑功能。
本实施例中,在确定出目标逻辑功能之前,还可以对逻辑功能编辑区域中的逻辑控件进行编辑,比如可以是对逻辑控件进行剪切、复制、粘贴、删除、撤销、恢复等。
S405:获取基于机器人执行的被引导动作而生成的动作参数。
本实施例中,可以触发机器人进入可拖动模式,这样,用户可以对机器人进行引导操作以实现对机器人的示教,从而使得机器人之后就能够自动执行示教过程中机器人所执行的被引导动作。比如,在示教过程中,用户可以依次牵引机器人前进1.2米、旋转38度角以及后退0.7米,则在完成示教后,机器人能够自动执行前进1.2米、旋转38度角以及后退0.7米的被引导动作。
S406:根据目标逻辑功能以及动作参数,生成机器人的运动轨迹。
本实施例中,步骤S403至步骤S406与上一实施例中步骤S201至步骤S204类似,可参照其相关之处描述即可,在此不做赘述。
本实施例中,通过预先将与机器人相连的外部设备的功能加载至示教器中,以使得用户通过操控示教器就可以实现对外部设备的控制,并且,根据目标逻辑功能以及动作参数,可以自动生成得到所需的机器人的运动轨迹,这样,对于技术人员而言,只需执行选择逻辑功能的操作以及引导机器人的操作即可,而无需再通过手动编程的方式得到机器人运动轨迹的控制程序,从而使得技术人员的工作量得到很大程度上的减少,并且,通常情况下自动生成机器人运动轨迹所需的时间,也远少于技术人员手动编写机器人运动轨迹对应的控制程序所需花费的时间,因此,也降低了生成该机器人运动轨迹所需的时间成本。
此外,本申请实施例还提供了一种机器人控制程序的生成装置。参阅图5,图5示出了本申请实施例中一种机器人控制程序的生成装置的结构示意图,该装置500具体可以包括:
添加单元501,用于响应于针对多个候选逻辑功能的选择操作,将被选中的候选逻辑功能添加至逻辑功能编辑区域;
确定单元502,用于将逻辑功能编辑区域中的候选逻辑功能确定为目标逻辑功能;
获取单元503,用于获取基于机器人执行的被引导动作而生成的动作参数;
生成单元504,用于根据所述目标逻辑功能以及所述动作参数,生成机器人的运动轨迹。
在一些可能的实施方式中,所述逻辑功能编辑区域中候选逻辑功能是以树状结构进行排布的。
在一些可能的实施方式中,该装置500还包括:
复制单元,用于复制所述逻辑功能编辑区域中位于第一位置的候选逻辑功能;
第一逻辑功能添加单元,用于将复制的候选逻辑功能添加至所述逻辑功能编辑区域中的第二位置处。
在一些可能的实施方式中,该装置500还包括:
剪切单元,用于剪切所述逻辑功能编辑区域中位于第三位置的候选逻辑功能;
第二逻辑功能添加单元,用于将剪切的候选逻辑功能添加至所述逻辑功能编辑区域中的第四位置处。
在一些可能的实施方式中,该装置500还包括:
删除单元,用于删除所述逻辑功能编辑区域中位于第五位置的候选逻辑功能。
在一些可能的实施方式中,该装置500还包括:
撤销单元,用于撤销最后一次对所述逻辑功能编辑区域中至少一个候选逻辑功能的编辑操作,所述编辑操作包括剪切、删除、添加中的任意一种操作。
在一些可能的实施方式中,该装置500还包括:
恢复单元,用于在撤销最后一次对所述逻辑功能编辑区域中至少一个候选逻辑功能的编辑操作后,恢复对所述候选逻辑功能的编辑操作。
在一些可能的实施方式中,所述逻辑功能是以逻辑控件的形式呈现于示教器的显示界面上。
在一些可能的实施方式中,所述机器人与外部设备进行连接,该装置500还包括:
转换单元,用于利用预设的控制插件,将所述外部设备的功能描述信息转换成配置文件;
导入单元,用于将所述配置文件导入所述示教器中,以使得所述外部设备的功能加载至所述示教器中。
本实施例中,根据确定的目标逻辑功能以及获取的运动参数,可以自动生成得到所需的运动轨迹,这样,对于技术人员而言,只需执行选择逻辑功能的操作以及引导机器人的操作即可,而无需再通过手动编程的方式得到机器人运动轨迹的控制程序,从而使得技术人员的工作量得到很大程度上的减少,并且,通常情况下自动生成机器人运动轨迹所需的时间,也远少于技术人员手动编写机器人运动轨迹对应的控制程序所需花费的时间,因此,也降低了生成该机器人运动轨迹所需的时间成本。
通过以上的实施方式的描述可知,本领域的技术人员可以清楚地了解到上述实施例方法中的全部或部分步骤可借助软件加必需的通用硬件平台的方式来实现。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品可以存储在存储介质中,如ROM/RAM、磁碟、光盘等,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者诸如媒体网关等网络通信设备,等等)执行本申请各个实施例或者实施例的某些部分所述的方法。
需要说明的是,本说明书中各个实施例采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似部分互相参见即可。对于实施例公开的装置而言,由于其与实施例公开的方法相对应,所以描述的比较简单,相关之处参见方法部分说明即可。
还需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
对所公开的实施例的上述说明,使本领域专业技术人员能够实现或使用本申请。对这些实施例的多种修改对本领域的专业技术人员来说将是显而易见的,本文中所定义的一般原理可以在不脱离本申请的精神或范围的情况下,在其它实施例中实现。因此,本申请将不会被限制于本文所示的这些实施例,而是要符合与本文所公开的原理和新颖特点相一致的最宽的范围。

Claims (5)

1.一种机器人控制程序的生成方法,其特征在于,所述方法包括:
利用预设的控制插件,将外部设备的功能描述信息转换成配置文件;
将所述配置文件导入示教器中,以使得所述外部设备的功能加载至所述示教器中;
响应于针对多个候选逻辑功能的选择操作,将被选中的候选逻辑功能添加至逻辑功能编辑区域;
所述方法还包括:对所述逻辑功能编辑区域中的候选逻辑功能进行编辑操作;所述编辑操作包括复制、剪切、撤销、恢复这四种;
所述复制操作包括:
复制所述逻辑功能编辑区域中位于第一位置的候选逻辑功能;
将复制的候选逻辑功能添加至所述逻辑功能编辑区域中的第二位置处;
所述剪切操作包括:
剪切所述逻辑功能编辑区域中位于第三位置的候选逻辑功能;
将剪切的候选逻辑功能添加至所述逻辑功能编辑区域中的第四位置处;
所述撤销操作包括:
撤销最后一次对所述逻辑功能编辑区域中至少一个候选逻辑功能的编辑操作,所述最后一次对所述逻辑功能编辑区域中至少一个候选逻辑功能的编辑操作包括剪切、删除、添加中的任意一种操作;
所述恢复操作包括:
在撤销最后一次对所述逻辑功能编辑区域中至少一个候选逻辑功能的编辑操作后,恢复对所述候选逻辑功能的编辑操作;
将逻辑功能编辑区域中的候选逻辑功能确定为目标逻辑功能;
获取基于机器人执行的被引导动作而生成的动作参数;
根据所述目标逻辑功能以及所述动作参数,生成机器人的运动轨迹。
2.根据权利要求1所述的方法,其特征在于,所述逻辑功能编辑区域中候选逻辑功能是以树状结构进行排布的。
3.根据权利要求1所述的方法,其特征在于,所述方法还包括:
删除所述逻辑功能编辑区域中位于第五位置的候选逻辑功能。
4.根据权利要求1所述的方法,其特征在于,所述逻辑功能是以逻辑控件的形式呈现于示教器的显示界面上。
5.一种机器人控制程序的生成装置,其特征在于,所述装置包括:
转换单元,用于利用预设的控制插件,将外部设备的功能描述信息转换成配置文件;
导入单元,用于将所述配置文件导入示教器中,以使得所述外部设备的功能加载至所述示教器中;
添加单元,用于响应于针对多个候选逻辑功能的选择操作,将被选中的候选逻辑功能添加至逻辑功能编辑区域;
复制单元,用于复制所述逻辑功能编辑区域中位于第一位置的候选逻辑功能;
第一逻辑功能添加单元,用于将复制的候选逻辑功能添加至所述逻辑功能编辑区域中的第二位置处;
剪切单元,用于剪切所述逻辑功能编辑区域中位于第三位置的候选逻辑功能;
第二逻辑功能添加单元,用于将剪切的候选逻辑功能添加至所述逻辑功能编辑区域中的第四位置处;
撤销单元,用于撤销最后一次对所述逻辑功能编辑区域中至少一个候选逻辑功能的编辑操作,所述最后一次对所述逻辑功能编辑区域中至少一个候选逻辑功能的编辑操作包括剪切、删除、添加中的任意一种操作;
恢复单元,用于在撤销最后一次对所述逻辑功能编辑区域中至少一个候选逻辑功能的编辑操作后,恢复对所述候选逻辑功能的编辑操作;
确定单元,用于将逻辑功能编辑区域中的候选逻辑功能确定为目标逻辑功能;
获取单元,用于获取基于机器人执行的被引导动作而生成的动作参数;
生成单元,用于根据所述目标逻辑功能以及所述动作参数,生成机器人的运动轨迹。
CN201811253191.7A 2018-10-25 2018-10-25 一种机器人控制程序的生成方法及装置 Active CN109048928B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201811253191.7A CN109048928B (zh) 2018-10-25 2018-10-25 一种机器人控制程序的生成方法及装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201811253191.7A CN109048928B (zh) 2018-10-25 2018-10-25 一种机器人控制程序的生成方法及装置

Publications (2)

Publication Number Publication Date
CN109048928A CN109048928A (zh) 2018-12-21
CN109048928B true CN109048928B (zh) 2021-09-21

Family

ID=64765443

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201811253191.7A Active CN109048928B (zh) 2018-10-25 2018-10-25 一种机器人控制程序的生成方法及装置

Country Status (1)

Country Link
CN (1) CN109048928B (zh)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112753013A (zh) * 2019-12-23 2021-05-04 深圳市大疆创新科技有限公司 可移动平台控制方法、控制终端、可移动平台及存储介质
CN111387878B (zh) * 2020-03-09 2022-10-14 美智纵横科技有限责任公司 一种控制方法、终端设备、扫地机和计算机存储介质
WO2021212501A1 (zh) * 2020-04-24 2021-10-28 深圳市大疆创新科技有限公司 轨迹生成方法、遥控终端、可移动平台、系统及计算机可读存储介质

Family Cites Families (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20150314454A1 (en) * 2013-03-15 2015-11-05 JIBO, Inc. Apparatus and methods for providing a persistent companion device
DE102015222167A1 (de) * 2015-11-11 2017-05-11 Kuka Roboter Gmbh Verfahren zum vereinfachten ändern von applikationsprogrammen zur steuerung einer industrieanlage
CN106997285A (zh) * 2016-09-20 2017-08-01 遨博(北京)智能科技有限公司 一种控制机器人的方法及装置
CN106528142A (zh) * 2016-10-31 2017-03-22 苏州乐派特机器人有限公司 树状组合式指令实物化编程方法、应用和实物化编程模块
CN106737676B (zh) * 2016-12-28 2019-03-15 南京埃斯顿机器人工程有限公司 一种基于脚本可二次开发的工业机器人编程系统
CN107193793A (zh) * 2017-06-20 2017-09-22 深圳易嘉恩科技有限公司 基于actionscript的树形表格控件
CN107562476B (zh) * 2017-08-29 2021-11-09 鲸彩在线科技(大连)有限公司 一种生成应用程序的方法及装置
CN107571271A (zh) * 2017-10-24 2018-01-12 上海佳革智能科技有限公司 一种基于vr的机器人培训示教器
CN107765612B (zh) * 2017-12-07 2020-08-04 南京诚思机器人科技有限公司 一种机器人的运动控制方法、机器人及系统
CN108268255A (zh) * 2018-02-11 2018-07-10 遨博(北京)智能科技有限公司 用于编程机器人的方法和装置

Also Published As

Publication number Publication date
CN109048928A (zh) 2018-12-21

Similar Documents

Publication Publication Date Title
CN109048928B (zh) 一种机器人控制程序的生成方法及装置
Ong et al. Augmented reality-assisted robot programming system for industrial applications
Makris et al. Intuitive dual arm robot programming for assembly operations
EP1310844B1 (en) Simulation device
Koch et al. A skill-based robot co-worker for industrial maintenance tasks
Kaltsoukalas et al. On generating the motion of industrial robot manipulators
JP6350037B2 (ja) ロボットシミュレータおよびロボットシミュレータのファイル生成方法
Haage et al. Teaching assembly by demonstration using advanced human robot interaction and a knowledge integration framework
CN104457566A (zh) 一种无须示教机器人系统的空间定位方法
JP2018015857A (ja) 制御装置、及びロボット
JP2014166681A (ja) ロボット教示システムおよびロボット教示方法
CN104875204A (zh) 一种等离子空间切割机器人的离线编程模块及应用方法
EP3638463A1 (en) Method and system for teaching a robot in reaching a given target in robot manufacturing
US20180356799A1 (en) Method for the Simplified Modification of Application Programs for Controlling an Industrial Plant
CN113733107B (zh) 机器人拖动示教的方法、机器人及计算机存储介质
EP4052865A1 (en) Information processing apparatus, robot system, information processing method, program, and recording medium
CN110666804B (zh) 一种用于双机器人协作的运动规划方法及系统
De Maeyer et al. Benchmarking framework for robotic arc welding motion planning
CN115026842A (zh) 示教轨迹处理方法、装置、终端设备以及存储介质
Rossano et al. Easy robot path programming concepts: An industrial perspective on path creation
CN109531579B (zh) 机械臂示教方法、装置、系统、介质、控制器及机械臂
US20230311324A1 (en) Method and system for automatically determining a motion data sample of a given robot and its surrounding object set
CN111152230B (zh) 机器人的示教方法、系统、示教机器人及存储介质
JP7436797B2 (ja) ロボットのプログラム作成支援装置
Delson Robot programming by human demonstration.

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
CP03 Change of name, title or address

Address after: Room 407, building 5, yard 98, lianshihu West Road, Mentougou District, Beijing 102300

Patentee after: AUBO (Beijing) Intelligent Technology Co.,Ltd.

Address before: 102300 301a1, building 5, Shilong Yangguang building, 98 lianshihu West Road, Mentougou District, Beijing

Patentee before: AUBO (BEIJING) ROBOTICS TECHNOLOGY Co.,Ltd.

CP03 Change of name, title or address