基于自定义事件的机器人控制方法及其系统与流程

文档序号:18272790发布日期:2019-07-27 09:52阅读:188来源:国知局
基于自定义事件的机器人控制方法及其系统与流程

本发明涉及智能机器人领域,特别是一种基于自定义事件的机器人控制方法及其系统。



背景技术:

随着科技的发展,以机械臂为代表的机器人在工业生产中的应用越来越广泛,传统的机器人主要依靠人工控制,虽然能够实现生产,但是效率比较低下,而且依靠人工难免会出现错误,不利于生产。为了取代人工控制,现有方案通常采用程序对机器人进行控制,通过编程语言设置好机器人,通过plc等方式控制机器人自动运作。这种方法虽然大大提高了机器人的工作效率,但是在设置或者变更机器人的响应时较为复杂,例如需要更改机器人就检测到传感信号时所执行的操作,或者重新设定机器人的操作逻辑时,需要专业的编程人员通过编写程序对机器人的底层操作进行更改,过程复杂且耗时较长,不利于生产效率的提高和企业成本的控制。



技术实现要素:

为了克服现有技术的不足,本发明的目的在于提供一种基于自定义事件的机器人控制方法及其系统,在实际应用中能够在无需编程的情况下设置机器人的自定义事件,实现快速生成机器人控制信息,使得机器人能够快速适用于不同的使用场景。

本发明解决其问题所采用的技术方案是:第一方面,本发明提供了一种基于自定义事件的机器人控制方法,包括以下步骤:

在客户端生成至少一个自定义事件,设置与所述自定义事件所对应的触发条件;

在所述客户端中选取所述自定义事件,生成与所述自定义事件所对应的至少一个响应;

所述客户端读取底层操作,选取至少一个底层操作与所述响应进行匹配;

在所述客户端中根据所述自定义事件生成控制信息,将所述控制信息发送至机器人中,根据所述控制信息对机器人进行控制。

进一步,所述设置所述自定义事件的触发条件包括:在客户端中选取至少一个触发端口并设置其对应的触发值,所述触发端口包括i/o端口、变量或外部通讯。

进一步,若所述触发条件中包括2个及以上对应的触发端口,则所述触发条件为任一触发端口的值满足所述触发值。

进一步,所述底层操作包括运动信息和赋值信息,所述运动信息包括运动速度、运动类型、延时信息、执行时长和坐标信息;所述赋值信息包括触发端口和所要设置的值。

进一步,若用于生成控制信息的所述自定义事件的数量为2个及以上,还包括:在客户端选取逻辑运算符,根据所述自定义事件的生成顺序和所述逻辑运算符生成自定义事件组。

进一步,所述控制信息还包括触发方式,所述触发方式包括电平触发和边缘触发。

进一步,根据所述控制信息对机器人进行控制具体包括:

所述机器人接收到所述控制信息后,解析出所述控制信息中的自定义事件;

若所述机器人检测到启动信号符合所述触发方式,检测所述机器人是否满足所述自定义事件的触发条件;

若所述机器人满足所述触发条件,根据所述响应和所匹配的所述底层操作执行。

第二方面,本发明提供了一种基于自定义事件的机器人控制系统,包括:

自定义事件生成单元,用于在客户端生成至少一个自定义事件,设置与所述自定义事件所对应的触发条件;

响应生成单元,用于在所述客户端中选取所述自定义事件,生成与所述自定义事件所对应的至少一个响应;

底层操作匹配单元,用于所述客户端读取底层操作,选取至少一个底层操作与所述响应进行匹配;

机器人控制单元,用于在所述客户端中根据所述自定义事件生成控制信息,将所述控制信息发送至机器人中,根据所述控制信息对机器人进行控制。

进一步,所述自定义事件生成单元还包括:

触发端口设置单元,用于在客户端中选取至少一个触发端口并设置其对应的触发值,所述触发端口包括i/o端口、变量或外部通讯。

进一步,所述机器人控制单元还包括:

自定义事件组生成单元,用于在客户端选取逻辑运算符,根据所述自定义事件的生成顺序和所述逻辑运算符生成自定义事件组;

解析单元,用于所述机器人接收到所述控制信息后,解析出所述控制信息中的自定义事件;

触发检测单元,若所述机器人检测到启动信号符合所述触发方式,检测所述机器人是否满足所述自定义事件的触发条件;

底层操作执行单元,若所述机器人满足所述触发条件,根据所述响应和所匹配的所述底层操作执行。

本发明实施例中提供的一个或多个技术方案,至少具有如下有益效果:本发明采用了一种基于自定义事件的机器人控制方法及其系统。在客户端中生成至少一个自定义事件及其对应的触发条件,并设置与自定义事件相对应的至少一个响应,并对所述响应逐个进行底层操作的匹配,在无需编程的情况下实现自定义事件的操作设置;根据所生成的自定义事件生成控制信息,将所述控制信息从客户端发送至机器人中,使得机器人能够在解析控制信息后获取的自定义事件,根据自定义事件执行操作,通过自定义的自定义事件组成控制信息对机器人进行控制,能够实现机器人操作的快速调整,仅需要更换自定义事件中匹配的底层操作即可,有效实现了机器人快速应用至不同的操作场景中。

附图说明

下面结合附图和实例对本发明作进一步说明。

图1是本发明实施例一提供的一种基于自定义事件的机器人控制方法的流程图;

图2是本发明实施例一提供的一种基于自定义事件的机器人控制方法中设置自定义事件组的示意图;

图3是本发明实施例一提供的一种基于自定义事件的机器人控制方法中机器人执行操作的流程图;

图4是本发明实施例一提供的一种基于自定义事件的机器人控制方法的完整步骤图;

图5是本发明实施例二提供的一种基于自定义事件的机器人控制系统的结构示意图。

具体实施方式

为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅用以解释本发明,并不用于限定本发明。

需要说明的是,如果不冲突,本发明实施例中的各个特征可以相互结合,均在本发明的保护范围之内。另外,虽然在装置示意图中进行了功能模块划分,在流程图中示出了逻辑顺序,但是在某些情况下,可以以不同于装置中的模块划分,或流程图中的顺序执行所示出或描述的步骤。

参照图1,本发明的第一实施例提供了一种基于自定义事件的机器人控制方法,包括以下步骤:

步骤s1100,在客户端生成至少一个自定义事件,设置与自定义事件所对应的触发条件;

步骤s1200,在客户端中选取自定义事件,生成与自定义事件所对应的至少一个响应;

步骤s1300,客户端读取底层操作,选取至少一个底层操作与响应进行匹配;

步骤s1400,在客户端中根据自定义事件生成控制信息,将控制信息发送至机器人中,根据控制信息对机器人进行控制。

其中,在本实施例中,自定义事件可以是任意数量,在客户端中逐一重复步骤s1200-步骤s1300进行设置即可。

其中,在本实施例中,优选在客户端建立自定义事件前,对机器人进行校准操作,即对机器人执行操作的原点进行校正,以确保操作的准确性。

其中,在本实施例中,每个自定义事件中至少包括1个触发条件,可以理解的是,在存在多个触发条件的情况下,可以是任一项满足时即执行触发条件所对应的响应,也可以是针对一个响应设置多个触发条件。具体的需求根据实际应用时在客户端中设置即可。

其中,触发条件可以是通过客户端输入的信息,也可以是在客户端中可选的触发条件列表中进行选取,本实施例中优选在可选的触发条件列表中进行选取,避免客户端无法识别输入的信息而导致触发条件输入失败,提高了系统的稳定性。

其中,在本实施例中,响应的数量可以是任意数量,在客户端中进行添加即可。

优选地,在本实施例中,设置好的响应能通过客户端进行保存,以便后续使用时能够通过快捷键或者读取的方式直接调用,简化客户端的使用。

其中,底层操作可以是输入至客户端的程序,能够实现在客户端中生成机器人对应的操作即可。本实施例中优选从客户端预先设定好的列表中进行设置参数得出,例如在客户端中预先设定好底层操作为移动、延时、对触发端口进行赋值等,在使用过程中直接对参数完成设置,即将该底层操作与响应实现匹配。

其中,在本实施例中,优选在机器人处设置控制按钮,当机器人接收到控制信息后,对控制信息进行解析获取要执行的操作,并通过控制按钮控制操作的启动和停止。可以理解的是,常规的控制按钮包括启动、暂停、停止,或者类似能够向机器人发送开关电平信号的按钮。

进一步,在本发明的另一个实施例中,设置自定义事件的触发条件包括:在客户端中选取至少一个触发端口并设置其对应的触发值,所述触发端口包括i/o端口、变量或外部通讯。

其中,触发端口可以是任意类型的端口,能够实现参数的读取即可,本实施例中优选i/o端口、变量或外部通讯。

其中,i/o端口的取值可以是任意的数值,也可以是特定的信息,能够被机器人读取并且识别即可。本实施例中优选i/o端口的取值为0或1,由于机器人的控制通常与传感器的传感信号相关,而传感信号通常为高电平或者低电平,即对应i/o端口的0或1,因此本实施例中采用0或者1作为i/o端口的触发值,有利于使自定义事件与传感器的信号进行匹配,提高机器人在工业上的适用性。

其中,变量为机器人中任意类型的变量,可以是具体一个参数,也可以是计数器。本实施例优选为机器人中的参数,有利于实现机器人达到设定的情况时执行特定的操作。

其中,外部通讯优选为外接设备发送的信息,例如接收到外部设备发送至机器人的信号后执行具体的操作,有利于增加机器人的使用场景。

进一步,在本发明的另一个实施例中,若触发条件中包括2个及以上对应的触发端口,则触发条件为任一触发端口的值满足触发值。

其中,在实际使用过程中,通常会遇到对不同的传感信号作出相同的操作,因此在本实施例中优选触发条件中任一触发端口的值满足触发值时,判定为满足触发条件。可以理解的是,本实施例的选择仅仅为优选的情况,还可以基于实际的需求设定触发条件为所有触发端口均满足触发值,根据生产中的实际需求调整即可。

进一步,在本发明的另一个实施例中,底层操作包括运动信息和赋值信息,运动信息包括运动速度、运动类型、延时信息、执行时长和坐标信息;赋值信息包括触发端口和所要设置的值。

其中,在本实施例中,底层操作可以是任意类型的机械操作,能够使机器人响应执行即可。例如移动、抓取、发送赋值信号等等,根据实际使用情况进行设定即可。

其中,在本实施例中,运动信息可以包括任意类型的信息,能够用于机器人识别后执行移动即可。本实施例中优选运动速度、运动类型、延时信息、执行时长和坐标信息。其中,运动速度优选为百分比数值,由于不同型号的机器人所能提供的运动速度不一致,因此采用百分比数值作为运动速度,以机器人所能执行的最大速度乘以百分比得出实际的运动速度,能够提高客户端的适用范围,可以理解的是,直接输入速度数值也是可取的,具体以生产中的实际应用为准。其中,运动类型优选为机器人运动的方式,例如直线运动,圆周运动等,本实施例中的运动类型为预先设定在客户端中的类型,由于机器人能够执行的运动类型并不多,因此通过预先在客户端中设定能够直观地进行选择,省去了编程的过程,更加便于操作。其中,延时信息为执行该底层操作之前等待的时间,执行时长为该底层操作执行的时间,例如等待1秒后,做直线运动10秒,有利于扩展机器人的适用条件。其中,本实施例中的坐标信息为相对使用前校准过的原点的坐标,通过设置多个坐标点实现机器人运动轨迹的设定,实际操作时根据运动类型按照坐标信息的设定顺序从一个点运动到另一个点,即可完成机器人的移动控制。

其中,在本实施例中,赋值信息为对指定的触发端口的值进行赋值,例如执行完一个操作后,对指定的触发端口赋值,使得下一次识别自定义事件时对触发条件进行调整,有利于实现连续性的自动化控制。

参考图2,进一步,在本发明的另一个实施例中,若用于生成控制信息的自定义事件的数量为2个及以上,还包括:在客户端选取逻辑运算符,根据自定义事件的生成顺序和逻辑运算符生成自定义事件组。

其中,在本实施例中,自定义事件之间优选通过逻辑运算符结合,例如与或非,如图2中所示,例如有3个自定义事件分别为事件a、事件b和事件c,在客户端中选取的逻辑运算符为或,则得出的事件组的公式为“事件aor事件bor事件c”,通过与逻辑进行连接得出的事件组的公式为“事件aand事件band事件c”。优选地,本实施例在实际执行过程中,根据公式的顺序判断自定义事件是否满足触发条件,在检测到满足触发条件时,以或运算得出的自定义事件组执行任意一个自定义事件后,判断为执行完毕,结束操作;以与运算得出的自定义事件组需要完成3个事件,机器人才会结束操作。可以理解的时,也可以通过与运算和或运算控制机器人同时满足多个条件或者任意一个触发条件时执行整个自定义事件组中的操作,具体的逻辑运算方法在实际应用时调整即可。

进一步,在本发明的另一个实施例中,控制信息还包括触发方式,触发方式包括电平触发和边缘触发。

其中,在本实施例中,由于机器人中设置有启动控制按钮,因此电平触发为按下按钮接收到高电平后触发,再次接收到低电平信号后停止;边缘触发为检测到按下按钮的动作后触发一次。

参考图3,进一步,在本发明的另一个实施例中,机器人根据控制信息完成操作具体包括:

步骤s1410,机器人接收到控制信息后,解析出控制信息中的自定义事件;

步骤s1420,若机器人检测到启动信号符合触发方式,检测机器人是否满足自定义事件的触发条件;

步骤s1430,若机器人满足触发条件,根据响应和所匹配的底层操作执行。

其中,在本实施例中,由于大部分机器人均包括能够识别指令的控制模块,客户端通过任意网络将控制信息发送至机器人后,控制模块对控制信息进行解析,得出自定义事件,从而实现事件的自定义和操作执行分离,避免了修改操作时需要接入机器人的控制模块进行编程,简化了操作。

其中,在本实施例中,机器人中优选采用各传感器的传感信号对应触发端口的值,从而实现自动化控制。

参考图4,另外,本发明的另一个实施例还提供了一种基于自定义事件的机器人控制方法,包括以下步骤:

步骤s4100,在客户端生成至少一个自定义事件,在客户端中选取至少一个触发端口并设置其对应的触发值,若触发端口的数量等于1,执行步骤s4220,否则执行步骤s4210;

步骤s4210,将触发条件设置为任一触发端口的值满足触发值,执行步骤s4300;

步骤s4220,将触发条件设置为触发端口的值满足触发值,执行步骤s4300;

步骤s4300,在所述客户端中选取自定义事件,生成与所述自定义事件所对应的至少一个响应;

步骤s4400,客户端读取运动信息和赋值信息,选取至少一个运动信息和赋值信息与响应进行匹配,若自定义时间的数量等于1,执行步骤s4520,否则执行步骤s4510;

步骤s4510,在客户端选取逻辑运算符,根据所述自定义事件的生成顺序和所述逻辑运算符生成自定义事件组,执行步骤s4520;

步骤s4520,生成控制信息并发送至机器人中;

步骤s4610,所述机器人接收到所述控制信息后,解析出所述控制信息中的自定义事件,若启动信号符合触发方式且满足自定义时间的触发条件,执行步骤s4620,否则继续检测启动信号和或触发条件;

步骤s4620,根据所述响应和所匹配的所述底层操作执行。

其中,在本实施例中,在客户端中生成至少一个自定义事件及其对应的触发端口的触发值,根据触发值的数量得出触发条件,有利于提高机器人的判断范围;并设置与自定义事件相对应的至少一个响应,并对所述响应逐个进行运动信息和赋值信息进行参数的设置,实现响应与底层操作的匹配,在无需编程的情况下实现自定义事件的操作设置;根据所生成的自定义事件生成控制信息,将所述控制信息从客户端发送至机器人中,使得机器人能够在解析控制信息后获取的自定义事件,根据自定义事件执行操作,通过自定义的自定义事件组成控制信息对机器人进行控制,能够实现机器人操作的快速调整,仅需要更换自定义事件中匹配的底层操作即可,有效实现了机器人快速应用至不同的操作场景中。

参照图5,本发明的第二实施例还提供了一种基于自定义事件的机器人控制系统,在该基于自定义事件的机器人控制系统5000中,包括但不限于:自定义事件生成单元5100、响应生成单元5200、底层操作匹配单元5300和机器人控制单元5400。

其中,自定义事件生成单元5100用于在客户端生成至少一个自定义事件,设置与自定义事件所对应的触发条件;

响应生成单元5200用于在客户端中选取自定义事件,生成与自定义事件所对应的至少一个响应;

底层操作匹配单元5300用于客户端读取底层操作,选取至少一个底层操作与响应进行匹配;

机器人控制单元5400用于在客户端中根据自定义事件生成控制信息,将控制信息发送至机器人中,根据控制信息对机器人进行控制。

进一步,在本发明的另一个实施例中,自定义事件生成单元5100还包括:

触发端口设置单元5110,用于在客户端中选取至少一个触发端口并设置其对应的触发值,所述触发端口包括i/o端口、变量或外部通讯。

进一步,在本发明的另一个实施例中,自定义事件生成单元5400还包括:

自定义事件组生成单元5410,用于在客户端选取逻辑运算符,根据自定义事件的生成顺序和逻辑运算符生成自定义事件组;

解析单元5420,用于机器人接收到控制信息后,解析出控制信息中的自定义事件;

触发检测单元5430,若机器人检测到启动信号符合触发方式,检测机器人是否满足自定义事件的触发条件;

底层操作执行单元5440,若机器人满足触发条件,根据响应和所匹配的底层操作执行。

需要说明的是,由于本实施例中的基于自定义事件的机器人控制系统与上述的基于自定义事件的机器人控制方法基于相同的发明构思,因此,方法实施例中的相应内容同样适用于本装置实施例,此处不再详述。

以上所描述的装置实施例仅仅是示意性的,其中所述作为分离部件说明的装置可以是或者也可以不是物理上分开的,即可以位于一个地方,或者也可以分布到多个网络装置上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。

以上是对本发明的较佳实施进行了具体说明,但本发明并不局限于上述实施方式,熟悉本领域的技术人员在不违背本发明精神的前提下还可作出种种的等同变形或替换,这些等同的变形或替换均包含在本申请权利要求所限定的范围内。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1