CN115157264B - 机器人控制方法、装置、协作机器人及可读存储介质 - Google Patents
机器人控制方法、装置、协作机器人及可读存储介质 Download PDFInfo
- Publication number
- CN115157264B CN115157264B CN202210926538.XA CN202210926538A CN115157264B CN 115157264 B CN115157264 B CN 115157264B CN 202210926538 A CN202210926538 A CN 202210926538A CN 115157264 B CN115157264 B CN 115157264B
- Authority
- CN
- China
- Prior art keywords
- cube
- target
- cartesian coordinate
- robot
- return path
- 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
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/1605—Simulation of manipulator lay-out, design, modelling of manipulator
-
- 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/1674—Programme controls characterised by safety, monitoring, diagnostic
- B25J9/1676—Avoiding collision or forbidden zones
Landscapes
- Engineering & Computer Science (AREA)
- Robotics (AREA)
- Mechanical Engineering (AREA)
- Automation & Control Theory (AREA)
- Numerical Control (AREA)
- Manipulator (AREA)
Abstract
本申请的实施例提供了一种机器人控制方法、装置、协作机器人及可读存储介质,涉及机器人控制技术领域。该方法包括:在上电之后,获得协作机器人当前所在的目标笛卡尔坐标;根据目标笛卡尔坐标及预先得到的各立方体标识对应的笛卡尔坐标范围,确定出目标笛卡尔坐标所在的目标立方体的目标标识,立方体是在获得立方体的安全点的过程中对协作机器人的运动空间进行划分得到,协作机器人在立方体的任意位置停止之后能够不发生碰撞地返回该立方体的安全点;根据预先得到的不同立方体标识与返回路径的对应关系,获得目标标识对应的目标返回路径,返回路径中包括所经过的立方体的安全点;根据目标返回路径返回原点。如此,可在无碰撞的情况下返回原点。
Description
技术领域
本申请涉及机器人控制技术领域,具体而言,涉及一种机器人控制方法、装置、协作机器人及可读存储介质。
背景技术
随着协作机器人的大量普及,以及与其他外部设备的协作使用,客户在选购协作机器人时,对于机器人的性能、便利性、安全性方面提出明确要求。比如,当协作机器人在任意情况下停止(包括但不限于人工停止、急停、碰撞停止、断电)后,重启机器人,机器人可自动回到原点位置。在程序内可达的任何位置返回均不可与周边设备发生碰撞及干涉。目前对返回的具体路径尚不做明确要求。如果在发生意外时,机器人不能安全回到起点位置,将会大大降低用户使用的友好度与便利性,影响协作机器人的推广。实现协作机器人的安全回原点功能至关重要。
发明内容
本申请实施例提供了一种机器人控制方法、装置、协作机器人及可读存储介质,其能够使协作机器人在上电后,执行相应的目标返回路径,从而通过依次运动到不同的安全点以回到原点,可提高协作机器人使用安全性与便利性。
本申请的实施例可以这样实现:
第一方面,本申请实施例提供一种机器人控制方法,应用于协作机器人,所述方法包括:
在上电之后,获得所述协作机器人当前所在的目标笛卡尔坐标;
根据所述目标笛卡尔坐标及预先得到的各立方体标识对应的笛卡尔坐标范围,确定出所述目标笛卡尔坐标所在的目标立方体的目标标识,其中,立方体是在获得立方体的安全点的过程中对所述协作机器人的运动空间进行划分得到,所述协作机器人在立方体的任意位置停止之后能够不发生碰撞地返回该立方体的安全点;
根据预先得到的不同立方体标识与返回路径的对应关系,获得所述目标标识对应的目标返回路径,其中,所述返回路径中包括所经过的立方体的安全点;
根据所述目标返回路径返回原点。
第二方面,本申请实施例提供一种机器人控制装置,应用于协作机器人,所述装置包括:
坐标获得模块,用于在上电之后,获得所述协作机器人当前所在的目标笛卡尔坐标;
查找模块,用于根据所述目标笛卡尔坐标及预先得到的各立方体标识对应的笛卡尔坐标范围,确定出所述目标笛卡尔坐标所在的目标立方体的目标标识,其中,立方体是在获得立方体的安全点的过程中对所述协作机器人的运动空间进行划分得到,所述协作机器人在立方体的任意位置停止之后能够不发生碰撞地返回该立方体的安全点;
查找模块,还用于根据预先得到的不同立方体标识与返回路径的对应关系,获得所述目标标识对应的目标返回路径,其中,所述返回路径中包括所经过的立方体的安全点;
控制模块,用于根据所述目标返回路径返回原点。
第三方面,本申请实施例提供一种协作机器人,包括处理器和存储器,所述存储器存储有能够被所述处理器执行的机器可执行指令,所述处理器可执行所述机器可执行指令以实现前述实施方式所述的机器人控制方法。
第四方面,本申请实施例提供一种可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现如前述实施方式所述的机器人控制方法。
本申请实施例提供的机器人控制方法、装置、协作机器人及可读存储介质,在上电之后,获得协作机器人当前所在的目标笛卡尔坐标;然后根据该目标笛卡尔坐标及预先得到的各立方体标识对应的笛卡尔坐标范围,确定出该目标笛卡尔坐标所在的目标立方体的目标标识;进而根据预先得到的不同立方体标识与返回路径的对应关系,获得该目标标识对应的目标返回路径,最后基于该目标返回路径返回原点。其中,立方体是在获得立方体的安全点的过程中对协作机器人的运动空间进行划分得到,协作机器人在立方体的任意位置停止之后能够不发生碰撞地返回该立方体的安全点,返回路径中包括所经过的立方体的安全点。如此,可使协作机器人在上电后,执行相应的目标返回路径,从而通过依次运动到不同的安全点以回到原点,该方式可提高协作机器人使用安全性与便利性。
附图说明
为了更清楚地说明本发明实施例的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,应当理解,以下附图仅示出了本发明的某些实施例,因此不应被看作是对范围的限定,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他相关的附图。
图1为本申请实施例提供的协作机器人的方框示意图;
图2为本申请实施例提供的机器人控制方法的流程示意图之一;
图3为本申请实施例提供的机器人控制方法的流程示意图之二;
图4为图3中步骤S102包括的子步骤的流程示意图;
图5为本申请实施例提供的多个第一立方体的示意图;
图6为本申请实施例提供的机器人控制方法的流程示意图之三;
图7为本申请实施例提供内的机器人控制装置的方框示意图之一;
图8为本申请实施例提供内的机器人控制装置的方框示意图之二。
图标:100-协作机器人;110-存储器;120-处理器;130-通信单元;200-机器人控制装置;201-规划模块;210-坐标获得模块;220-判断模块;230-查找模块;240-控制模块。
具体实施方式
为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。通常在此处附图中描述和示出的本发明实施例的组件可以以各种不同的配置来布置和设计。
因此,以下对在附图中提供的本申请的实施例的详细描述并非旨在限制要求保护的本申请的范围,而是仅仅表示本申请的选定实施例。基于本申请的实施例,本领域技术人员在没有做出创造性劳动的前提下所获得的所有其他实施例,都属于本申请保护的范围。
需要说明的是,术语“第一”和“第二”等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
目前常用的协作机器人回原点方法为:首先,记录协作机器人的初始位置为协作机器人的原点位置;然后,在协作机器人运行过程中,会记录相关路径点位到回原点程序中;当协作机器人发生碰撞、急停等异常时,已经记录路径点位的回原点程序依旧存在,当协作机器人断电重启后,只需要通过“倒序”执行回原点程序中的各个路径点位,协作机器人就能安全回到原点,不发生碰撞。
本申请发明人经研究发现,协作机器人不具备实时记录相关路径点位到回原点程序中这一机制,即不具备实时写文件机制。在协作机器人运动过程中,会记录路径点位到回原点程序文件,如果此时直接断开协作机器人电源,而协作机器人又不具备实时写入文件机制,那么就有概率发生回原点程序文件错乱或者文件内容缺失的情况,进而导致此时的协作机器人不能安全回到原点。
其中,由于某些已经执行了的路径点位还位于缓存中,未写入硬盘,并且写文件的顺序并不一定是顺序写入,如此,断电后可能发生回原点程序文件错乱。由于协作机器人不具备实时写文件机制,因此部分较新的路径点位还没有记录,因此会出现文件内容缺失的情况。
为了解决以上问题,本申请实施例提供了一种机器人控制方法、装置、协作机器人及可读存储介质,可以实现协作机器人的安全回原点功能,在任何情况下协作机器人停止(包括但不限于人工停止、急停、碰撞停止、断电),在断电重启后,可执行相应的回原点文件,通过依次运动到不同的安全点,从而最终回到“原点”。
下面结合附图,对本申请的一些实施方式作详细说明。在不冲突的情况下,下述的实施例及实施例中的特征可以相互组合。
请参照图1,图1为本申请实施例提供的协作机器人100的方框示意图。所述协作机器人100可以包括存储器110、处理器120及通信单元130。所述存储器110、处理器120以及通信单元130各元件相互之间直接或间接地电性连接,以实现数据的传输或交互。例如,这些元件相互之间可通过一条或多条通讯总线或信号线实现电性连接。
其中,存储器110用于存储程序或者数据。所述存储器110可以是,但不限于,随机存取存储器(Random Access Memory,RAM),只读存储器(Read Only Memory,ROM),可编程只读存储器(Programmable Read-Only Memory,PROM),可擦除只读存储器(ErasableProgrammable Read-Only Memory,EPROM),电可擦除只读存储器(Electric ErasableProgrammable Read-Only Memory,EEPROM)等。
处理器120用于读/写存储器110中存储的数据或程序,并执行相应地功能。比如,存储器110中存储有机器人控制装置200,所述机器人控制装置200包括至少一个可以软件或固件(firmware)的形式存储于所述存储器110中的软件功能模块。所述处理器120通过运行存储在存储器110内的软件程序以及模块,如本申请实施例中的机器人控制装置200,从而执行各种功能应用以及数据处理,即实现本申请实施例中的机器人控制方法。
通信单元130用于通过网络建立所述协作机器人100与其它通信终端之间的通信连接,并用于通过所述网络收发数据。
应当理解的是,图1所示的结构仅为协作机器人100的结构示意图,所述协作机器人100还可包括比图1中所示更多或者更少的组件,或者具有与图1所示不同的配置。图1中所示的各组件可以采用硬件、软件或其组合实现。
请参照图2,图2为本申请实施例提供的机器人控制方法的流程示意图之一。所述方法应用于协作机器人100。下面对机器人控制方法的具体流程进行详细阐述。在本实施例中,所述方法可以包括步骤S110及步骤S130~步骤S150。
步骤S110,在上电之后,获得所述协作机器人当前所在的目标笛卡尔坐标。
步骤S130,根据所述目标笛卡尔坐标及预先得到的各立方体标识对应的笛卡尔坐标范围,确定出所述目标笛卡尔坐标所在的目标立方体的目标标识。
步骤S140,根据预先得到的不同立方体标识与返回路径的对应关系,获得所述目标标识对应的目标返回路径。
步骤S150,根据所述目标返回路径返回原点。
在本实施例中,所述协作机器人中存储有不同立方体标识与笛卡尔坐标范围的对应关系。协作机器人可以在因各种原因停止而重启上电之后,获得自身当前所在的笛卡尔坐标,并将该笛卡尔坐标作为目标笛卡尔坐标。然后,可将该目标笛卡尔坐标依次与各立方体标识对应的笛卡尔坐标范围进行比较,以判断该目标笛卡尔坐标在哪个立方体范围内,从而确定目标笛卡尔坐标所在的目标立方体的目标标识。其中,所述目标立方体为所述目标笛卡尔坐标所在的立方体,所述目标标识为所述目标立方体的标识。立方体的标识,用于唯一标识该立方体,比如为立方体编号,具体可以结合实际需求确定。
立方体是在获得立方体的安全点的过程中对所述协作机器人的运动空间进行划分得到的,所述协作机器人在立方体的任意位置停止之后能够不发生碰撞(包括自身各轴碰撞)地返回该立方体的安全点。比如,立方体A的安全点为a,则协作机器人在立方体A内的任意位置停止之后,能够不发生碰撞地返回该立方体的安全点a。
所述协作机器人还可以存储有不同立方体标识与返回路径的对应关系。该关系表示,在某立方体内时,可通过执行该立方体对应的返回路径无碰撞地返回原点。
所述协作机器人中存储的返回路径,可以是在获得各立方体的安全点的情况下,根据立方体之间的位置关系规划得到的。每条返回路径包括立方体的安全点,该返回路径用于从一个位置无碰撞地返回原点。即,所述返回路径中包括所经过的立方体的安全点,比如,一条返回路径经过A、B、C三个立方体,则该返回路径中可以包括立方体A的安全点a、立方体B的安全点b、立方体C的安全点c。具体路径规划方式可以结合实际需求确定。
在确定出所述目标标识的情况下,可基于不同立方体标识与返回路径的对应关系,获得所述目标标识对应的返回路径,进而获得目标返回路径。比如,若目标标识仅对应一条返回路径,则可以将该条返回路径作为目标返回路径;若目标标识对应多条返回路径,则可以从该多条返回路径选出一条作为所述目标返回路径。接着,所述协作机器人可执行该目标返回路径,通过依次运动到不同的安全点,从而最终回到“原点”。如此,在协作机器人运动过程中,若意外断开协作机器人总电源,在重启协作机器人之后,协作机器人也能安全回到原点,不发生碰撞。由此,可极大地提高协作机器人的使用安全性与便利性,对于协作机器人在工业环境现场及消费领域的普及与推广起到积极作用。
在本实施例中,可以预先通过图3所示的步骤S101及步骤S102,获得各立方体标识对应的笛卡尔坐标范围及返回路径。请参照图3,图3为本申请实施例提供的机器人控制方法的流程示意图之二。在本实施例中,在步骤S130之前,所述方法还可以包括步骤S101及步骤S102。其中,步骤S101及步骤S102可以在步骤S110之前。
步骤S101,将所述协作机器人运动所经过的空间划分为多个第一立方体,并获得各第一立方体对应的笛卡尔坐标范围。
在本实施例中,可先标定出协作机器人末端工具坐标系,进而标定出协作机器人对应的工件坐标系。然后,可在所述工件坐标系下,将整个协作机器人运动所经过的空间,划分为若干个小的立方体空间区域,以得到多个第一立方体,并记录各第一立方体的标识及对应的笛卡尔坐标范围。其中,第一立方体的大小可以结合实际需求确定。
可选地,可以将一个立方体区域的两个对顶角在所述工件坐标系下的坐标,作为该立方体对应的笛卡尔坐标范围,如此可得到各第一立方体对应的笛卡尔坐标范围。
对应地,所述目标笛卡尔坐标及返回路径均为所述协作机器人对应的工件坐标系下的坐标。如此,通过使用工件坐标系,便于确定协作机器人经过的空间,进而确定出返回路径。其中,值得说明的是,也可以结合实际需求确定使用其他的坐标系,上述使用工件坐标系的方式仅为一种示例。另外,本申请中涉及的坐标为三维坐标。
步骤S102,针对每个第一立方体,在该第一立方体内通过测试示教确定对应的安全点,以得到各立方体标识对应的笛卡尔坐标范围及返回路径。
在本实施例中,可在每个小的立方体空间内,测试示教出安全点(即找到作为安全点的位置),作为各立方体空间执行安全回原点的第一个安全点,进而可基于安全点所在的立方体空间之间的位置关系,编辑保存成不同的安全回原点文件,即获得不同立方体对应的返回路径,一个立方体对应的所述返回路径中的第一个安全点为该立方体的安全点。其中,安全回原点文件可以为lua文件。
在经过对所述协作机器人的运动空间进行划分得到多个第一立方体后,可测试在每个第一立方体空间内,是否能找到一个安全点。协作机器人在一个立方体任意位置停止,能够不发生碰撞(包括自身各轴碰撞),返回该立方体内的安全点。值得说明的是,每一个立方体标识对应一个安全点。
若在一个所述第一立方体内确定出了安全点,可将该第一立方体的标识作为一个需要保存的立方体标识,并将该第一立方体的笛卡尔坐标范围作为一个需要保存的立方体标识对应的笛卡尔坐标范围,然后进行保存,以便后续协作机器人在重启后回原点使用。在此情况下,至少一条返回路径中包括该第一立方体的安全点。
若在一个所述第一立方体内不能确定出安全点时,则可以通过如图4所示确定出安全点。请参照图4,图4为图3中步骤S102包括的子步骤的流程示意图。在本实施例中,步骤S102可以包括子步骤S1021~子步骤S1023。
子步骤S1021,在一个所述第一立方体内不能确定出安全点时,将该第一立方体切分为多个第二立方体。
子步骤S1022,针对各第二立方体,若通过测试示教确定出该第二立方体内的安全点,则将第二立方体的笛卡尔坐标范围,作为一个立方体标识对应的笛卡尔坐标范围。
在本实施例中,在一个第一立方体内不能确定出安全点的情况下,针对该第一立方体,将该第一立方体划分为若干个小的立方体空间区域,从而得到多个第二立方体。然后,针对每一个第二立方体,执行如下处理:首先通过测试示教以便确定出该第二立方体的安全点,若能够确定出安全点,则将该第二立方体的标识作为一个需要保存的立方体标识,并将该第二立方体的笛卡尔坐标范围作为一个需要保存的立方体标识对应的笛卡尔坐标范围,然后进行保存以便后续回原点时使用。其中,找出安全点的第二立方体的笛卡尔坐标范围,可以根据该第二立方体所在的第一立方体的笛卡尔坐标范围确定。在此情况下,至少一条返回路径中包括该第二立方体的安全点。
子步骤S1023,若未能确定出该第二立方体内的安全点,则对该第二立方体再次进行立方体划分及安全点确定,直到能在划分后的各立方体内确定出安全点,以得到该第二立方体被划分为的多个立方体的标识对应的笛卡尔坐标范围。
若未能确定出该第二立方体的安全点,则可以如子步骤S1021~子步骤S1022所示,对该第二立方体再次进行立方体划分、安全点确定。在对第二立方体进行划分后,可得到多个第三立方体。若可确定出各第三立方体的安全点,则可以将各第三立方体的笛卡尔坐标范围作为需要保存的立方体标识对应的笛卡尔坐标范围。若存在有不能找出安全点的第三立方体,则再次进行立方体划分、安全点确定,也即重复立方体划分、安全点确定,直到能在划分后的每个立方体内确定出安全点,并将该部分立方体的笛卡尔坐标范围作为需要保存的立方体标识对应的笛卡尔坐标。即,如果不能在某个立方体空间内找到安全点,则再细分立方体空间,直到能找到当前立方体中的安全点位置。在此情况下,至少一条返回路径中包括在该第二立方体被划分后得到的任意一个立方体内确定出的安全点。此时,在所有立方体对应的返回路径在路径重叠之后有多条路径,即在进行路径重叠之后,存在有多条路径。所述多条路径的至少部分路径段不同,所述路径段中包括安全点。
可选地,可以在确定出所有立方体的安全点之后,根据各立方体的位置关系,通过排列组合的方式获得基于安全点确定的返回路径。
下面结合图5,对如何获得各立方体的笛卡尔坐标范围及返回路径进行简要举例说明。
假设将整个协作机器人运动所经过的空间,划分为了3个立方体空间,该3个立方体空间依次为:A、B、C,其中,立方体A最靠近原点。假设遍历顺序为A、B、C。
先针对立方体A,在立方体A的空间内,测试示教出安全点。若能确定出确定立方体A的安全点a,则可以将该安全点a作为从立方体A回原点时的第一个安全点。此时,可保存立方体A的笛卡尔坐标范围以及安全点a的笛卡尔坐标。
若不能确定出立方体A的安全点a,则可以将立方体A拆分为若个小的立方体A1~An。然后,针对立方体A1,找立方体A1的安全点,若可以找到,则保存立方体A1的笛卡尔坐标范围以及安全点a1的笛卡尔坐标。若不能找到,则再对立方体A1执行立方体拆分及确定安全点的操作,直到获得可获得拆分的各立方体的安全点。
然后再针对B、C依次进行如上处理。
假设,从立方体A、C中分别找到了安全点a、c,不能从立方体B中找出安全点,但在对立方体B拆分后得到的立方体B1、B2中分别找到了安全点b1、b2,则可以生成并保存如下内容:立方体A的笛卡尔坐标范围以及对应的返回路径,该立方体A对应的返回路径可以为:a→原点坐标;立方体B1的笛卡尔坐标范围以及对应的返回路径,该立方体B1对应的返回路径可以为:b1→a→原点坐标、b1→b2→a→原点坐标;立方体B2的笛卡尔坐标范围以及对应的返回路径,该立方体B2对应的返回路径可以为:b2→a→原点坐标、b2→b1→a→原点坐标;立方体C的笛卡尔坐标范围以及对应的返回路径,该立方体C对应的返回路径可以为:c→b1→a→原点坐标、c→b2→a→原点坐标、c→b1→b2→a→原点坐标、c→b2→b1→a→原点坐标。上述每条返回路径中的第一个安全点为所对应的立方体的安全点。可以将上述路径编辑保存为安全回原点lua文件。
上述几条返回路径在重叠之后可得到:c→b1→a→原点坐标、c→b2→a→原点坐标、c→b1→b2→a→原点坐标、c→b2→b1→a→原点坐标,这4条路径中部分路径段不同,比如,路径c→b1→a→原点坐标中的路径段c→b1→a与路径c→b2→a→原点坐标中的路径段c→b2→a不同。其中,路径重叠是指若一条路径1是另一条路径2的一部分,则可以则将路径1忽略,将路径2作为路径重叠之后能得到的路径。比如,针对如下四条路径:c→b1→b2→a→原点坐标、b1→b2→a→原点坐标、b2→a→原点坐标、a→原点坐标,则在重叠之后可得到一条路径:c→b1→b2→a→原点坐标。
如此,可得到各立方体对应的返回路径,便于后续找出能够使协作机器人安全返回原点的返回路径。
在协作机器人运动到路径中任意位置时,若意外断开协作机器人的总电源,可重启该协作机器人。在该协作机器人重新上电后,可以获得该协作机器人当前各轴的关节角度,然后根据各轴的关节角度,获得该协作机器人当前所在的目标笛卡尔坐标。比如,协作机器人可以通过和控制器进行指令交互,从而得到协作机器人当前的目标笛卡尔坐标。其中,可以理解的是,目标笛卡尔坐标使用的坐标系与确定出安全点时使用的坐标系相同,比如,均为协作机器人的工件坐标系。
在获得所述目标笛卡尔坐标的情况下,作为一种可能的实现方式,可以直接执行步骤S130以回原点。
作为一种可能的实现方式,如图6所示,在步骤S110之后,先执行步骤S120:根据所述目标笛卡尔坐标判断所述协作机器人是否在原点。若在原点,则无需执行后续步骤。若不在原点,则可以执行步骤S130。
可选地,可以计算所述目标笛卡尔坐标与原点之间的距离,若该距离小于预设距离,则确定所述协作机器人当前在原点,不需要执行回原点路径。若该距离不小于预设距离,则可以确定所述协作机器人当前不在原点,需要执行步骤S120以便回原点。该预设距离可以结合实际需求设置。也可以在所述目标笛卡尔坐标与原点是不同的位置时,直接确定所述协作机器人当前不在原点;反之,则确定所述协作机器人当前在原点。如此,可减少不必要的查找动作,节省资源。
在确定需要回原点的情况下,可以将该目标笛卡尔坐标依次与预先得到的各立方体对应的笛卡尔坐标范围进行比较,以判断所述目标笛卡尔坐标在哪个立方体内。若所述目标笛卡尔坐标在某个立方体的笛卡尔坐标范围内,则可以将该立方体作为目标立方体,并将该目标立方体的标识作为目标标识。接着,可根据立方体的标识与返回路径的对应关系,确定出目标笛卡尔坐标对应的目标返回路径。进而,通过使所述协作机器人执行该目标返回路径,即可安全地返回原点。
其中,在返回路径采用回原点程序表示的情况下,则可以基于立方体的标识与返回路径的对应关系,确定出目标返回路径对应的目标回原点程序。所述协作机器人通过执行该目标回原点程序,即可无碰撞地返回原点。
本申请实施例提供的机器人控制方法,可以使协作机器人实现安全回原点功能,在任何情况下当协作机器人停止(比如人工停止、急停、碰撞停止、断电),在断电重启后,可执行相应的回原点文件,通过依次运动到不同的安全点,最终回到“原点”。如此,在协作机器人运动过程中,若意外断开协作机器人总电源,并重启协作机器人后,协作机器人也能安全回到原点,不发生碰撞。该方式可极大地提高协作机器人的使用安全性与便利性,对于协作机器人在工业环境现场及消费领域的普及与推广起到积极作用。
为了执行上述实施例及各个可能的方式中的相应步骤,下面给出一种机器人控制装置200的实现方式,可选地,该机器人控制装置200可以采用上述图1所示的协作机器人100的器件结构。进一步地,请参照图7,图7为本申请实施例提供内的机器人控制装置200的方框示意图之一。需要说明的是,本实施例所提供的机器人控制装置200,其基本原理及产生的技术效果和上述实施例相同,为简要描述,本实施例部分未提及之处,可参考上述的实施例中相应内容。该机器人控制装置200可以应用于协作机器人,该机器人控制装置200可以包括:坐标获得模块210、查找模块230及控制模块。
所述坐标获得模块210,用于在上电之后,获得所述协作机器人当前所在的目标笛卡尔坐标。
所述查找模块230,用于根据所述目标笛卡尔坐标及预先得到的各立方体标识对应的笛卡尔坐标范围,确定出所述目标笛卡尔坐标所在的目标立方体的目标标识。其中,立方体是在获得立方体的安全点的过程中对所述协作机器人的运动空间进行划分得到,所述协作机器人在立方体的任意位置停止之后能够不发生碰撞地返回该立方体的安全点。
所述查找模块230,还用于根据预先得到的不同立方体标识与返回路径的对应关系,获得所述目标标识对应的目标返回路径。其中,所述返回路径中包括所经过的立方体的安全点。
所述控制模块240,用于根据所述目标返回路径返回原点。
可选地,在本实施例中,所述查找模块230具体用于:将所述目标笛卡尔坐标依次与各立方体标识对应的笛卡尔坐标范围进行比较,并将所述目标笛卡尔坐标所在的笛卡尔坐标范围对应的立方体标识作为目标立方体的目标标识。
请参照图8,图8为本申请实施例提供内的机器人控制装置200的方框示意图之二。在本实施例中,所述机器人控制装置200还可以包括判断模块220。
所述判断模块220,用于根据所述目标笛卡尔坐标判断所述协作机器人是否在原点。
若不在原点,所述查找模块230则执根据所述目标笛卡尔坐标及预先得到的各立方体标识对应的笛卡尔坐标范围,确定出所述目标笛卡尔坐标所在的目标立方体的目标标识。
请再次参照图8,在本实施例中,所述机器人控制装置200还可以包括规划模块201。所述规划模块201,用于:将所述协作机器人运动所经过的空间划分为多个第一立方体,并获得各第一立方体对应的笛卡尔坐标范围;针对每个第一立方体,在该第一立方体内通过测试示教确定对应的安全点,以得到各立方体标识对应的笛卡尔坐标范围及返回路径,其中,一个立方体对应的所述返回路径中的第一个安全点为该立方体的安全点。
可选地,在本实施例中,所述规划模块201具体用于:在一个所述第一立方体内确定出安全点时,将该第一立方体的笛卡尔坐标范围,作为一个立方体标识对应的笛卡尔坐标范围。其中,至少一条返回路径中包括该第一立方体的安全点。
可选地,在本实施例中,所有立方体对应的返回路径在路径重叠之后有多条路径,所述多条路径的至少部分路径段不同,所述路径段中包括安全点。所述规划模块201还用于:在一个所述第一立方体内不能确定出安全点时,将该第一立方体切分为多个第二立方体;针对各第二立方体,若通过测试示教确定出该第二立方体内的安全点,则将第二立方体的笛卡尔坐标范围,作为一个立方体标识对应的笛卡尔坐标范围,其中,至少一条返回路径中包括该第二立方体的安全点;若未能确定出该第二立方体内的安全点,则对该第二立方体再次进行立方体划分及安全点确定,直到能在划分后的各立方体内确定出安全点,以得到该第二立方体被划分为的多个立方体的标识对应的笛卡尔坐标范围,其中,至少一条返回路径中包括在该第二立方体被划分后得到的立方体内确定出的安全点。
可选地,在本实施例中,所述目标笛卡尔坐标及笛卡尔坐标范围为所述协作机器人对应的工件坐标系下的坐标,所述坐标获得模块具体用于:获得所述协作机器人当前各轴的关节角度;根据各轴的关节角度,获得所述目标笛卡尔坐标。
可选地,上述模块可以软件或固件(Firmware)的形式存储于图1所示的存储器110中或固化于协作机器人100的操作系统(Operating System,OS)中,并可由图1中的处理器120执行。同时,执行上述模块所需的数据、程序的代码等可以存储在存储器110中。
本申请实施例还提供一种可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现所述的机器人控制方法。
综上所述,本申请实施例提供一种机器人控制方法、装置、协作机器人及可读存储介质,在上电之后,获得协作机器人当前所在的目标笛卡尔坐标;然后根据该目标笛卡尔坐标及预先得到的各立方体标识对应的笛卡尔坐标范围,确定出该目标笛卡尔坐标所在的目标立方体的目标标识;进而根据预先得到的不同立方体标识与返回路径的对应关系,获得该目标标识对应的目标返回路径,最后基于该目标返回路径返回原点。其中,立方体是在获得立方体的安全点的过程中对协作机器人的运动空间进行划分得到,协作机器人在立方体的任意位置停止之后能够不发生碰撞地返回该立方体的安全点,返回路径中包括所经过的立方体的安全点。如此,可使协作机器人在上电后,执行相应的目标返回路径,从而通过依次运动到不同的安全点以回到原点,该方式可提高协作机器人使用的安全性与便利性。
在本申请所提供的几个实施例中,应该理解到,所揭露的装置和方法,也可以通过其它的方式实现。以上所描述的装置实施例仅仅是示意性的,例如,附图中的流程图和框图显示了根据本申请的多个实施例的装置、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段或代码的一部分,所述模块、程序段或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。也应当注意,在有些作为替换的实现方式中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个连续的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图和/或流程图中的每个方框、以及框图和/或流程图中的方框的组合,可以用执行规定的功能或动作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。
另外,在本申请各个实施例中的各功能模块可以集成在一起形成一个独立的部分,也可以是各个模块单独存在,也可以两个或两个以上模块集成形成一个独立的部分。
所述功能如果以软件功能模块的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本申请各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质。
以上所述仅为本申请的可选实施例而已,并不用于限制本申请,对于本领域的技术人员来说,本申请可以有各种更改和变化。凡在本申请的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本申请的保护范围之内。
Claims (9)
1.一种机器人控制方法,其特征在于,应用于协作机器人,所述方法包括:
在上电之后,获得所述协作机器人当前所在的目标笛卡尔坐标;
根据所述目标笛卡尔坐标及预先得到的各立方体标识对应的笛卡尔坐标范围,确定出所述目标笛卡尔坐标所在的目标立方体的目标标识,其中,立方体是在获得立方体的安全点的过程中对所述协作机器人的运动空间进行划分得到,所述协作机器人在立方体的任意位置停止之后能够不发生碰撞地返回该立方体的安全点;
根据预先得到的不同立方体标识与返回路径的对应关系,获得所述目标标识对应的目标返回路径,其中,所述返回路径中包括所经过的立方体的安全点;
根据所述目标返回路径返回原点;
在根据所述目标笛卡尔坐标及预先得到的各立方体标识对应的笛卡尔坐标范围,确定出所述目标笛卡尔坐标所在的目标立方体的目标标识之前,所述方法还包括:
将所述协作机器人运动所经过的空间划分为多个第一立方体,并获得各第一立方体对应的笛卡尔坐标范围;
针对每个第一立方体,在该第一立方体内通过测试示教确定对应的安全点,以得到各立方体标识对应的笛卡尔坐标范围及返回路径,其中,一个立方体对应的所述返回路径中的第一个安全点为该立方体的安全点。
2.根据权利要求1所述的方法,其特征在于,所述根据所述目标笛卡尔坐标及预先得到的各立方体标识对应的笛卡尔坐标范围,确定出所述目标笛卡尔坐标所在的目标立方体的目标标识,包括:
将所述目标笛卡尔坐标依次与各立方体标识对应的笛卡尔坐标范围进行比较,并将所述目标笛卡尔坐标所在的笛卡尔坐标范围对应的立方体标识作为目标立方体的目标标识。
3.根据权利要求1所述的方法,其特征在于,在获得所述协作机器人当前所在的目标笛卡尔坐标之后,所述方法还包括:
根据所述目标笛卡尔坐标判断所述协作机器人是否在原点;
若不在原点,则执行所述根据所述目标笛卡尔坐标及预先得到的各立方体标识对应的笛卡尔坐标范围,确定出所述目标笛卡尔坐标所在的目标立方体的目标标识的步骤。
4.根据权利要求1-3中任意一项所述的方法,其特征在于,所述针对每个第一立方体,在该第一立方体内通过测试示教确定对应的安全点,以得到各立方体标识对应的笛卡尔坐标范围,包括:
在一个所述第一立方体内确定出安全点时,将该第一立方体的笛卡尔坐标范围,作为一个立方体标识对应的笛卡尔坐标范围,其中,至少一条返回路径中包括该第一立方体的安全点。
5.根据权利要求1-3中任意一项所述的方法,其特征在于,所有立方体对应的返回路径在路径重叠之后有多条路径,所述多条路径的至少部分路径段不同,所述路径段中包括安全点,所述针对每个第一立方体,在该第一立方体内通过测试示教确定对应的安全点,以得到各立方体标识对应的笛卡尔坐标范围,包括:
在一个所述第一立方体内不能确定出安全点时,将该第一立方体切分为多个第二立方体;
针对各第二立方体,若通过测试示教确定出该第二立方体内的安全点,则将第二立方体的笛卡尔坐标范围,作为一个立方体标识对应的笛卡尔坐标范围,其中,至少一条返回路径中包括该第二立方体的安全点;
若未能确定出该第二立方体内的安全点,则对该第二立方体再次进行立方体划分及安全点确定,直到能在划分后的各立方体内确定出安全点,以得到该第二立方体被划分为的多个立方体的标识对应的笛卡尔坐标范围,其中,至少一条返回路径中包括在该第二立方体被划分后得到的任意一个立方体内确定出的安全点。
6.根据权利要求1-3中任意一项所述的方法,其特征在于,所述目标笛卡尔坐标及笛卡尔坐标范围为所述协作机器人对应的工件坐标系下的坐标,所述获得所述协作机器人当前所在的目标笛卡尔坐标,包括:
获得所述协作机器人当前各轴的关节角度;
根据各轴的关节角度,获得所述目标笛卡尔坐标。
7.一种机器人控制装置,其特征在于,应用于协作机器人,所述装置包括:
规划模块,用于将所述协作机器人运动所经过的空间划分为多个第一立方体,并获得各第一立方体对应的笛卡尔坐标范围;以及针对每个第一立方体,在该第一立方体内通过测试示教确定对应的安全点,以得到各立方体标识对应的笛卡尔坐标范围及返回路径,其中,一个立方体对应的所述返回路径中的第一个安全点为该立方体的安全点;
坐标获得模块,用于在上电之后,获得所述协作机器人当前所在的目标笛卡尔坐标;
查找模块,用于根据所述目标笛卡尔坐标及预先得到的各立方体标识对应的笛卡尔坐标范围,确定出所述目标笛卡尔坐标所在的目标立方体的目标标识,其中,立方体是在获得立方体的安全点的过程中对所述协作机器人的运动空间进行划分得到,所述协作机器人在立方体的任意位置停止之后能够不发生碰撞地返回该立方体的安全点;
查找模块,还用于根据预先得到的不同立方体标识与返回路径的对应关系,获得所述目标标识对应的目标返回路径,其中,所述返回路径中包括所经过的立方体的安全点;
控制模块,用于根据所述目标返回路径返回原点。
8.一种协作机器人,其特征在于,包括处理器和存储器,所述存储器存储有能够被所述处理器执行的机器可执行指令,所述处理器可执行所述机器可执行指令以实现权利要求1-6中任意一项所述的机器人控制方法。
9.一种可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现如权利要求1-6中任意一项所述的机器人控制方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210926538.XA CN115157264B (zh) | 2022-08-03 | 2022-08-03 | 机器人控制方法、装置、协作机器人及可读存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210926538.XA CN115157264B (zh) | 2022-08-03 | 2022-08-03 | 机器人控制方法、装置、协作机器人及可读存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN115157264A CN115157264A (zh) | 2022-10-11 |
CN115157264B true CN115157264B (zh) | 2023-09-29 |
Family
ID=83476624
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202210926538.XA Active CN115157264B (zh) | 2022-08-03 | 2022-08-03 | 机器人控制方法、装置、协作机器人及可读存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN115157264B (zh) |
Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP1643327A2 (en) * | 2004-09-30 | 2006-04-05 | Rockwell Automation Technologies, Inc. | Systems and methods that facilitate motion control through coordinate system transformations |
CN104812535A (zh) * | 2012-10-11 | 2015-07-29 | Abb技术有限公司 | 自动产生用于将机器人从停止位置返回预设重启位置的无碰撞返回程序的方法和设备 |
CN107414837A (zh) * | 2017-09-13 | 2017-12-01 | 上海伟世通汽车电子系统有限公司 | 工业机器人非正常停机后安全自动回原位的方法及其系统 |
CN108015767A (zh) * | 2017-11-30 | 2018-05-11 | 北京邮电大学 | 一种空间机械臂应急操作方法 |
CN111645079A (zh) * | 2020-08-04 | 2020-09-11 | 天津滨电电力工程有限公司 | 一种带电作业机器人机械臂路径规划控制装置及其方法 |
CN112060091A (zh) * | 2020-09-04 | 2020-12-11 | 苏州华兴源创科技股份有限公司 | 机器人回原点的方法、装置、机器人和存储介质 |
CN112372632A (zh) * | 2020-10-12 | 2021-02-19 | 达闼机器人有限公司 | 一种机械臂动作控制方法、设备及计算机可读存储介质 |
DE102021204148B3 (de) * | 2021-04-27 | 2022-06-23 | Kuka Deutschland Gmbh | Verfahren und System zum koordinierten Abfahren vorgegebener Roboterbahnen |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US11628568B2 (en) * | 2020-12-28 | 2023-04-18 | Industrial Technology Research Institute | Cooperative robotic arm system and homing method thereof |
-
2022
- 2022-08-03 CN CN202210926538.XA patent/CN115157264B/zh active Active
Patent Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP1643327A2 (en) * | 2004-09-30 | 2006-04-05 | Rockwell Automation Technologies, Inc. | Systems and methods that facilitate motion control through coordinate system transformations |
CN104812535A (zh) * | 2012-10-11 | 2015-07-29 | Abb技术有限公司 | 自动产生用于将机器人从停止位置返回预设重启位置的无碰撞返回程序的方法和设备 |
CN107414837A (zh) * | 2017-09-13 | 2017-12-01 | 上海伟世通汽车电子系统有限公司 | 工业机器人非正常停机后安全自动回原位的方法及其系统 |
CN108015767A (zh) * | 2017-11-30 | 2018-05-11 | 北京邮电大学 | 一种空间机械臂应急操作方法 |
CN111645079A (zh) * | 2020-08-04 | 2020-09-11 | 天津滨电电力工程有限公司 | 一种带电作业机器人机械臂路径规划控制装置及其方法 |
CN112060091A (zh) * | 2020-09-04 | 2020-12-11 | 苏州华兴源创科技股份有限公司 | 机器人回原点的方法、装置、机器人和存储介质 |
CN112372632A (zh) * | 2020-10-12 | 2021-02-19 | 达闼机器人有限公司 | 一种机械臂动作控制方法、设备及计算机可读存储介质 |
DE102021204148B3 (de) * | 2021-04-27 | 2022-06-23 | Kuka Deutschland Gmbh | Verfahren und System zum koordinierten Abfahren vorgegebener Roboterbahnen |
Also Published As
Publication number | Publication date |
---|---|
CN115157264A (zh) | 2022-10-11 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN102611745B (zh) | 文件在线迁移方法、装置和系统 | |
CN103248667A (zh) | 一种分布式系统的资源访问方法和系统 | |
CN103916449A (zh) | 一种远程备份系统及其远程备份方法 | |
US20190022856A1 (en) | Robot Controller System And Method Therefor | |
US20210331687A1 (en) | Method and Device for Controlling an Autonomous Driving Vehicle, and an Autonomous Driving Vehicle | |
JP2008097369A (ja) | Plc | |
CN103701641A (zh) | 一种自动化运维的方法和系统 | |
CN115157264B (zh) | 机器人控制方法、装置、协作机器人及可读存储介质 | |
CN110941520B (zh) | 基于二取二安全控制单元的硬件功能测试系统及方法 | |
CN108954702B (zh) | 一种空调的控制方法、装置、空调和存储介质 | |
CN110739025A (zh) | 一种存储设备掉电测试方法、装置及系统 | |
CN117066743B (zh) | 包含多车型加工位的汽车加工产线系统 | |
US6279104B1 (en) | Debugging system for parallel processed program and debugging method thereof | |
CN112650674A (zh) | 远程获取、调试网页日志的方法、计算机设备及存储介质 | |
CN112905668A (zh) | 基于分布式数据流处理引擎的数据库导数方法、设备和介质 | |
CN107526966B (zh) | 一种Android平台的复合污点传播追踪方法 | |
CN103514052A (zh) | 一种多应用之间互访的方法和智能卡 | |
CN110688200A (zh) | 一种在线迁移虚拟机磁盘树的方法及装置 | |
CN113900729B (zh) | 一种SteamVR系统的追踪设备参数配置方法及装置 | |
CN112765041B (zh) | 游戏自动化测试方法、装置及电子设备 | |
CN114670206A (zh) | 机器人控制方法、装置、协作机器人和存储介质 | |
JP4684848B2 (ja) | 制御装置、そのプログラムおよび記録媒体 | |
CN110733037B (zh) | 信号的处理方法及装置、存储介质及处理器 | |
US11316710B2 (en) | Control system and control method | |
CN114816441A (zh) | 发动机刷写方法、装置、系统、存储介质及电子设备 |
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 |