CN117047781A - 机器人控制方法及设备 - Google Patents
机器人控制方法及设备 Download PDFInfo
- Publication number
- CN117047781A CN117047781A CN202311302255.9A CN202311302255A CN117047781A CN 117047781 A CN117047781 A CN 117047781A CN 202311302255 A CN202311302255 A CN 202311302255A CN 117047781 A CN117047781 A CN 117047781A
- Authority
- CN
- China
- Prior art keywords
- application
- robot
- user
- application program
- project
- 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.)
- Pending
Links
- 238000000034 method Methods 0.000 title claims abstract description 37
- 230000009471 action Effects 0.000 claims abstract description 18
- 230000002452 interceptive effect Effects 0.000 claims abstract description 17
- 239000011159 matrix material Substances 0.000 claims description 16
- 230000000875 corresponding effect Effects 0.000 description 13
- 238000010586 diagram Methods 0.000 description 13
- 230000008569 process Effects 0.000 description 12
- 230000001276 controlling effect Effects 0.000 description 11
- 230000006870 function Effects 0.000 description 11
- 230000003993 interaction Effects 0.000 description 8
- 238000004590 computer program Methods 0.000 description 7
- 238000004891 communication Methods 0.000 description 5
- 238000011161 development Methods 0.000 description 5
- 238000009434 installation Methods 0.000 description 4
- 238000012545 processing Methods 0.000 description 4
- 230000000007 visual effect Effects 0.000 description 4
- 230000000694 effects Effects 0.000 description 3
- 238000003860 storage Methods 0.000 description 3
- 230000008859 change Effects 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 238000004088 simulation Methods 0.000 description 2
- 238000004364 calculation method Methods 0.000 description 1
- 238000010276 construction Methods 0.000 description 1
- 230000003247 decreasing effect Effects 0.000 description 1
- 238000006073 displacement reaction Methods 0.000 description 1
- 238000011900 installation process Methods 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 238000012856 packing Methods 0.000 description 1
- 238000002360 preparation method Methods 0.000 description 1
- 238000013515 script Methods 0.000 description 1
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/1656—Programme controls characterised by programming, planning systems for manipulators
-
- 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/161—Hardware, e.g. neural networks, fuzzy logic, interfaces, processor
-
- 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/1656—Programme controls characterised by programming, planning systems for manipulators
- B25J9/1661—Programme controls characterised by programming, planning systems for manipulators characterised by task planning, object-oriented languages
Landscapes
- Engineering & Computer Science (AREA)
- Robotics (AREA)
- Mechanical Engineering (AREA)
- Automation & Control Theory (AREA)
- Physics & Mathematics (AREA)
- Artificial Intelligence (AREA)
- Evolutionary Computation (AREA)
- Fuzzy Systems (AREA)
- Mathematical Physics (AREA)
- Software Systems (AREA)
- Stored Programmes (AREA)
Abstract
本发明提供本发明提供一种机器人控制方法及设备,包括:获取多个适用于机器人执行动作的应用程序;呈现交互界面,其中包括已有应用程序列表以及组合操作区域,所述组合操作区域适用于用户从所述已有应用程序列表中依次选择多个所述应用程序,并对选择的多个所述应用程序进行组合操作,所述组合操作决定各个应用程序的执行逻辑;根据所述组合操作形成机器人项目;控制机器人执行所述机器人项目,使得所述机器人按照组合的逻辑关系执行相应的多个动作。
Description
技术领域
本发明涉及机器人领域,具体涉及一种机器人控制方法及设备。
背景技术
机器人需要通过运行控制程序来执行相应的动作,一般的使用者通常不具备编程能力,尤其是难以开发执行复杂任务的程序。现有的解决方案是由专业技术人员根据使用者的需求开发程序,这种解决方式成本较高,而且普适性不强。
机器人的运营方或者开发者通常会提供一些用于控制机器人执行独立动作的应用程序。作为使用者,如果想要控制机器人执行复杂动作,可以依次控制机器人执行多个应用程序来达到预期目的,但是这种控制过程显然比较复杂且效率较低。
发明内容
有鉴于此,本发明提供一种机器人控制方法,包括:获取多个适用于机器人执行动作的应用程序;呈现交互界面,其中包括已有应用程序列表以及组合操作区域,所述组合操作区域适用于用户从所述已有应用程序列表中依次选择多个所述应用程序,并对选择的多个所述应用程序进行组合操作,所述组合操作决定各个应用程序的执行逻辑;根据所述组合操作形成机器人项目;控制机器人执行所述机器人项目,使得所述机器人按照组合的逻辑关系执行相应的多个动作。
可选地,在根据所述组合操作形成机器人项目之前,还包括:
通过所述交互界面接收用户针对所选应用程序的可变参数的配置操作。
可选地,通过所述交互界面接收用户针对所选应用程序的可变参数的配置操作,包括:
用户选定应用程序时弹出参数设置窗口,其中包括参数当前值、参数类型选择器和变量绑定选择器,所述参数类型选择器关联参数选择界面,所述变量绑定选择器关联全局变量列表;
根据用户针对所述参数设置窗口的操作确定可变参数的值。
可选地,所述组合操作区域包括应用格点矩阵,所述已有应用程序列表中以可拖动的应用块表示机器人中已安装的应用程序,所述应用块可被拖动到所述应用格点矩阵的任意格点中。
可选地,所述组合操作包括将所述应用块拖动至所述格点中、对处于各个格点中的应用块进行连线。
可选地,所述应用块包括输入节点和输出节点;对处于各个格点中的应用块进行连线包括将应用块的输出节点与其它应用块的输入节点进行连线,以确定各个应用块的执行顺序。
可选地,根据所述组合操作形成机器人项目包括:
根据应用格点矩阵中的各个所述应用块的位置确定第一个应用块;
判断除所述第一个应用块外的其它应用块的输入节点是否存在连接对象;
将所述第一个应用块及输入节点存在连接对象的应用块判定为机器人项目。
可选地,控制机器人执行所述机器人项目包括:
根据应用格点矩阵中的各个所述应用块的位置,控制所述机器人执行第一个应用块对应的应用程序;
在第一个应用程序执行完毕后,根据其输出节点的连线执行后续应用块对应的应用程序,直至输出节点无连接对象的应用快。
可选地,控制机器人执行所述机器人项目的过程中,显示当前执行的所述应用程序的运行状态界面。
相应地,本发明提供一种机器人控制设备,包括:处理器以及与所述处理器连接的存储器;其中,所述存储器存储有可被所述处理器执行的指令,所述指令被所述处理器执行,以使所述处理器执上述机器人控制方法。
根据本申请提供的机器人控制方法及设备,使用者可以将多个动作应用进行组合,形成能够完成更复杂动作或任务的机器人项目,进而控制机器人执行此项目,按照使用者的预期完成相应的动作或任务,在形成机器人项目的过程中,使用者在可视化界面中对应用进行组合,过程中不需要编写代码,只需要通过拖动应用块以及对它们进行连线操作即可形成各种复杂的机器人项目,使得整个过程简洁且高效。
附图说明
为了更清楚地说明本发明具体实施方式或现有技术中的技术方案,下面将对具体实施方式或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施方式,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本发明实施例中的机器人应用生态系统的示意图;
图2为本发明实施例中的开发者终端的应用开发流程图;
图3为本发明实施例中的一个应用的参数配置窗口示意图;
图4为本发明实施例中的一个应用的运动状态窗口示意图;
图5为本发明实施例中机器人下载应用的过程示意图;
图6为本发明实施例中的机器人项目组合界面示意图;
图7为本发明实施例中的一个应用块的示意图;
图8为本发明实施例中的一个机器人项目组合结果的示意图。
具体实施方式
下面将结合附图对本发明的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
此外,下面所描述的本发明不同实施方式中所涉及的技术特征只要彼此之间未构成冲突就可以相互结合。
如图1所示,本发明实施例提供一种机器人应用生态系统,包括机器人1、用户终端2、开发者终端3和服务端4。在实际应用场景中,可以理解为机器人1和用户终端2归属同一用户,开发者终端3归属其它个人用户,服务端4归属运营方。为了区分两种用户群体,在本申请中将机器人1和用户终端2的用户称为使用者,将开发者终端3的用户称为开发者。
本实施例中的机器人1是指具有若干结构件、通信和计算部件且能够执行诸如移动、抓握、升降等动作的电子设备。机器人1需要运行应用程序来执行相应的动作,应用程序可以是运营方开发并提供的,也可以是使用者或者开发者提供的。本方案不对应用程序的具体功能进行限定,例如可以是控制机器人1执行定点移动的应用程序、执行抓握物品的应用程序、执行图像识别的应用程序、执行声音识别的应用程序等等。
用户终端2可以是智能手机、平板电脑、个人计算机等具有人机交互功能、通信和运算功能的常规电子设备。用户终端2与机器人1可以通过数据线连接或者通过蓝牙、WiFi等模块无线连接以实现数据交互。一般地,使用者可以使用用户终端2下载、自行开发应用程序,通过数据交互过程将应用程序安装到机器人1中,以及遥控机器人1执行动作、监测机器人1的运行状态等等。
服务端4是接入互联网的电子设备,可以理解为云服务器。服务端4提供诸如用户注册、交流社区、应用程序下载等云端服务。使用者和开发者均可以通过互联网访问服务端4。
开发者终端4可以是智能手机、平板电脑、个人计算机等具有人机交互功能、通信和运算功能的常规电子设备。
在本实施例中,开发者终端4用于提供控制机器人执行动作的应用程序。开发者可以针对机器人1的结构、型号开发适合各种机器人1的各种应用程序,并将其发布、上传至服务端4。具体地,如图2所示,开发者需要先完成准备工作,包括在服务端4注册成为开发者(取得上传应用程序的权限)、下载IDE(专用的应用程序开发工具)、创建应用工程;然后执行开发工作,包括配置软件包和编写代码,其中配置软件包包括但不限于指定应用所需权限、指定应用程序所需要使用的机器人硬件、指定使用的第三方库等;完成开发工作后执行构建及运行工作,包括将对编码编译、打包,在仿真环境中调试应用程序、在其拥有的机器人上安装运行应用程序等;经确认运行正常后,即可执行发布工作,包括添加版本信息、软件包签名,提交应用市场(即上传服务端4)。
开发者可以根据各种机器人1的使用者的需求(例如交流社区中发布的需求)或者本人爱好开发并向服务端4发布适用于各种机器人1、执行各种动作或功能的应用程序,以供其它使用者按需下载。
服务端4用于接收并发布开发者终端提供的应用程序,将应用程序发布在应用市场中,供其使用者浏览和下载。
机器人1用于从服务端4处下载应用程序。机器人1可接入互联网直接从服务端4下载并安装应用程序。机器人1可以不配有交互部件,使用者借助用户终端2与机器人1进行交互。作为举例,使用者使用智能手机(用户终端2)浏览服务端4中的应用程序,并控制机器人1直接下载选定的应用程序并进行安装和设置。
用户终端2用于将机器人1中已有的多个应用程序进行组合形成机器人项目,进而控制机器人1执行机器人项目,使得机器人1按照组合的逻辑关系执行相应的多个动作。本实施例中的机器人项目可以被理解为由多个应用程序按照使用者所需的逻辑关系组合而成的一个更大的应用程序,也可以理解为机器人项目是对多个应用程序添加了执行逻辑(顺序),以及设定了相关的参数。作为举例,假设机器人1中已有4个应用程序,记为已装应用1、已装应用2、已装应用3和已装应用4,每个应用均可以被独立地执行以使机器人完成相应的动作。用户可以根据需要对这4个应用进行组合,比如顺序是已装应用3-已装应用2-已装应用4-已装应用1,即得到一个机器人项目,当机器人1执行此项目时,将会按此顺序依次执行4个应用,使得机器人按顺序执行4个动作。
在一个具体实施例中,机器人1具有移动部件(例如轮、履带等)、抓握部件(例如机械臂、机械手等)、交互部件(例如语音输入、图像采集等装置),并已有3个应用,分别为识别抓取、定点放置、定点运动,这3个应用均可以独立执行,其中识别抓取是指机器人1通过采集图像对环境中的物品进行识别,并抓取目标物品(由用户预先指定的物品,是该应用中的一个输入参数);定点放置是指将已抓取的物品放置在相对于机器人的某个目标位置处(由用户预先指定,是该应用中的一个输入参数);定点运动是指机器人移动到某个空间坐标处。
使用者组合的机器人项目为定点运动-识别抓取-定点运动-定点放置,本实施例中的机器人项目中定点运动应用被使用了两次,即各个应用程序可以在机器人项目中被多次使用,且它们的参数可以是不同的,例如两次定点运动中所设定的目的地不同等等。当机器人1执行此项目时,将会先移动到第一目的地(第一次执行定点运动),然后识别环境中的物品并抓取目标物品(执行识别抓取),再移动到第二目的地(第二次执行定点运动),然后将抓取的物品放置在指定的位置。
通过上述实施例可以发现,一些应用程序中配置有需要用户根据需求设置的参数,例如定点运动应用中的目的地、识别抓取应用中的目标物品信息等等,即开发者终端3提供的应用程序中包括可变参数。面对这些应用程序,用户终端2用于配置机器人项目中的应用程序的可变参数。
为了便于用户配置应用程序中的可变参数,在一些实施例中用户终端2用于向用户呈现交互界面,以使用户配置可变参数。图3示出了定点移动应用的参数配置窗口示例,用户终端2可根据开发者提供的内容渲染参数设置窗口,参数设置窗口中会按顺序显示开发者配置的应用参数,每一项参数会显示参数名称,参数当前值,特殊参数类型选择器,和变量绑定选择器。特殊类型选择器为特殊参数类型提供了快捷设置方式。例如类型为地图坐标的“目的地”参数,用户可以通过点击该参数右侧的选择器打开一个包含当前地图的交互界面, 通过在地图中点击某个位置完成对目的地的设置。
变量绑定选择器为应用提供了获取动态参数的手段,这个动态参数一般由项目中的其他应用在运行过程中提供。用户可以通过点击参数最右侧的变量绑定选择器打开当前项目的同种类型的全局变量列表,选择或新建一个全局变量作为当前参数的动态参数。
为了便于用户了解机器人执行机器人项目的过程和进度,机器人1在执行机器人项目的过程中,用户终端2显示机器人1当前执行的应用程序的运行状态界面。图4示出了定点应用的运行状态窗口示例,当机器人1在执行机器人项目时与用户终端2保持连接和数据交互,在执行定点运动应用时显示该窗口,用户通过该窗口可以了解到机器人1当前正在执行定点运动,以及当前运动速度、当前位置。
进一步地,运行状态界面中还设有控制按钮,用户可以通过这些控制按钮实时改变运动状态,比如图4所示的示例中的急停按钮用于控制机器人1停止移动、运动速度调整按钮用于提高和降低移动速度。
在一些实施例中,开发者或者普通用户可以将多个应用程序进行组合形成机器人项目并将其上传至服务端4。服务端4还用于提供由多个应用程序组合形成的机器人项目。用户终端2用于从服务端4处下载机器人项目。在这些实施例中,用户可以直接下载其他用户或者开发者组合好的机器人项目,进而可以在其基础上进行调整,例如在其中增加、删减、替换部分应用程序,减少自行组合的工作,提高效率。
在一些实施例中,服务端4设有虚拟机器人,通过可视化模型和虚拟环境完全模拟机器人1的结构和功能。用户终端2用于向服务端4发送机器人项目,并控制虚拟机器人执行机器人项目,使得虚拟机器人按照组合的逻辑关系执行相应的多个模拟动作。在这些实施例中,使用者可以在控制机器人1实际执行机器人项目之前,借助服务端4的虚拟机器人模拟执行机器人项目,观察执行效果,便于进一步对机器人项目进行调整,以达到预期效果。
下面结合图5介绍一个机器人1和用户终端2相互配合从服务端4中下载应用或者机器人项目的实施例。一个具体下载和安装过程如下:
由用户终端2选择要连接的设备(机器人1)并发送连接请求;机器人1接收连接请求后,确认权限并向用户终端2发送设备信息,如设备名称、型号等;用户终端2接收设备基本信息;
由用户确认建立连接后,用户终端2向机器人1发送已有应用程序列表请求(请求应用列表),机器人1读取本地已安装的应用(读取本地应用列表),向用户终端2发送应用列表,让用户获悉机器人1中已有的应用;
用户终端2登录服务端4访问应用市场,按设备信息(比如型号)请求可用应用列表,服务端4将根据设备信息在应用数据库中查询设备可用应用列表,并将其发送至用户终端2;
用户可以根据需要选择某个应用程序,进而用户终端2向服务端4发送针对可用应用程序列表中的应用程序的下载请求(作为商业活动时,可将此设为付费购买请求),服务端4响应下载请求,向用户终端2反馈下载权限(获取成功,用户获得为设备安装应用的权限)
用户终端2在获得下载权限后,向机器人1发送针对该应用程序的安装请求,机器人1处理应用安装请求,向服务端4请求下载该应用程序,服务端4执行检查用户使用应用的权限及设备和应用的兼容性,以确保机器人1的软件环境、硬件等能够满足运行该应用程序的需求,在检查通过后允许下载并建立下载通道,机器人1从服务端4处下载并安装应用程序。
安装完成后,机器人1向用户终端2发送通知以及应用详情,用户终端2显示应用已安装应用出现在工作台中。
关于应用程序组合形成机器人项目,以及执行该项目的过程,具体是由用户终端2与机器人1配合执行,用户终端2作为人机交互装置,由使用者决定选用那些应用以及如何组合。用户终端2与机器人1在连接状态下,由机器人1向用户终端2发送已有应用程序列表。用户终端2用于向使用者呈现交互界面,显示已有应用程序列表,让使用者知道机器人1中已经被安装的应用。用户终端2用于接收用户针对已有应用程序列表中应用程序的组合操作以形成机器人项目,使用者的组合操作决定各个应用程序的执行逻辑。
组合操作的方式有多种,例如是输入指令、编写脚本等指示应用程序的组合顺序,诸如此类的输入操作均可以是所谓的组合操作。
进一步地,机器人1中已安装的各个应用程序均包括输入节点和输出节点,输入节点和输出节点的数量可以分别有多个,输入节点作为应用程序的入口、输出节点作为应用程序的出口,通过入口与出口的连接关系来决定应用程序的执行顺序。一个应用程序的出口可连接另一个应用程序的入口,一个应用程序本身的入口和出口也可以相连。比如一个应用程序有一个入口和两个出口,这两个出口可以分别连接不同的另一个应用程序,该应用程序的内容会编写不同的结束方式,即从那个出口流转到下一个应用程序。
使用者的组合操作包括针对多个应用程序的输入节点与输出节点的连接操作,各个输入节点与输出节点的连接关系决定各个应用程序的执行逻辑。使用者只需要提供针对节点的连接关系,即可生成机器人项目。
当使用者提供了全部想要的连接关系后,用户终端2将确认需要第一个被执行的应用,以此为起点,按照全部连接关系陆续执行项目中的各个应用。在本实施例中,用户终端2对连接的各个应用程序进行识别,将输入节点未连接其它节点的应用程序作为起始应用程序,将输出节点未连接其它节点的应用程序作为终止应用程序。
关于上述组合操作,在一个实施例中提供了一种交互方式,向使用者提供可视化界面来完成组合操作。结合图6所示,本发明实施例提供一种机器人控制方法,可以由上述用户终端2执行,包括如下操作:
S1,获取多个适用于机器人执行动作的应用程序。
S2,呈现交互界面,其中包括已有应用程序列表以及组合操作区域,组合操作区域适用于用户从已有应用程序列表中依次选择多个应用程序,并对选择的多个应用程序进行组合操作,组合操作决定各个应用程序的执行逻辑。图6展示的组合操作区域62中设有应用格点矩阵,该矩阵是可以被无形扩展的;应用程序列表61中以可拖动的应用块表示机器人中已安装的应用程序,应用块可被拖动到应用格点矩阵的任意格点中,在本实施例中示例性地展示了4个已安装的应用。
用户可以将应用块拖至应用格点矩阵中的任意格点中,以及对处于各个格点中的应用块进行连线。本实施例中的应用块包括输入节点和输出节点,使用者可将应用块的输出节点与其它应用块的输入节点进行连线,以确定各个应用块的执行顺序。
图7示出了一个应用块,其具有应用名称、版本等基本信息,在本实施例中包括3个节点,即图中左侧的输入节点(本应用的入口),右侧和下侧的输出节点(本应用的出口),对于此类有多个输出节点的应用,开发者在开发时会编写不同的应用结束方式决定应用在结束后从那个分支进入下一个应用。另外需要说明的是,一个应用块的输入节点可以连接至其自身的输出节点。
S3,根据组合操作形成机器人项目。当使用者完成组合操作后,终端根据格点中的应用块得到机器人项目。具体地,终端首先需要确认格点矩阵中需要被第一个执行的应用。在本实施例中,终端根据应用格点矩阵中的各个应用块的位置确定第一个应用块,比如预先设定矩阵中位移最靠左上的格点是第一个被执行的应用,使用者需要按照此规则编辑预期的项目。
然后,判断除第一个应用块外的其它应用块的输入节点是否存在连接对象。如果某应用块的输入节点既没有连接自身也没有与其它应用块连接,则判定其为无效的应用块,不属于机器人项目中的一部分。排除无效应用块后,将第一个应用块及输入节点存在连接对象的应用块判定为机器人项目,其中输出节点未连接其它对象的应用块,被视为应当被最后一个执行的应用,即本项目的终点。
图8示出了一个组合操作的结果,也即一个编辑完成的机器人项目。其中位于左上的“文字输入”应用块作为本项目的起点(第一个被执行的应用程序),然后按照使用者提供的连接关系依次确定“坐标输入”、“定点运动”等其它应用的逻辑顺序,“定点放置”作为本项目的终点。
对于具有可变参数的应用,用户可以选中(点击或长按等动作)组合操作区域中的应用块,打开如图3所示的参数设置窗口,终端接收使用者针对应用程序的可变参数的配置操作。
参数设置窗口中包括参数当前值、参数类型选择器和变量绑定选择器,参数类型选择器关联参数选择界面,变量绑定选择器关联全局变量列表。根据使用者针对参数设置窗口的操作确定可变参数的值。
S4,控制机器人执行机器人项目,使得机器人按照组合的逻辑关系执行相应的多个动作。根据应用格点矩阵中的各个应用块的位置,控制机器人执行第一个应用块对应的应用程序;在第一个应用程序执行完毕后,根据其输出节点的连线执行后续应用块对应的应用程序,直至输出节点无连接对象的应用快。
进一步地,控制机器人执行机器人项目的过程中,显示当前执行的应用程序的运行状态界面。除了如图4所示的一般运行状态窗口外,在一些实施例中还配置有需要与使用者交互的运行状态窗口,例如图8所示机器人项目示例中的“做个决定”的应用程序,当机器人1运行到此应用时,用户终端2显示一个交互窗口,询问使用者“在当前位置重试识别抓取目标物品或是换另一个位置”,提供两个相应的选项,如果使用者选择重试,根据图8展示的连接关系,将会进入到“延时”应用,等待预设时间后,再次执行“识别抓取”的应用;如果使用者选择换另一个位置,将会进入到“坐标输入”的应用,使用者可以重新提供位置,通过可交互的运动状态界面与使用者进行交互,可以决定项目中相应应用的输出分支。
根据上述实施例,使用者在可视化界面中对应用进行组合,过程中不需要编写代码,只需要通过拖动应用块以及对它们进行连线操作即可形成各种复杂的机器人项目,使得整个过程简洁且高效。
本领域内的技术人员应明白,本发明的实施例可提供为方法、系统、或计算机程序产品。因此,本发明可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本发明可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
本发明是参照根据本发明实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
显然,上述实施例仅仅是为清楚地说明所作的举例,而并非对实施方式的限定。对于所属领域的普通技术人员来说,在上述说明的基础上还可以做出其它不同形式的变化或变动。这里无需也无法对所有的实施方式予以穷举。而由此所引伸出的显而易见的变化或变动仍处于本发明创造的保护范围之中。
Claims (10)
1.一种机器人控制方法,其特征在于,包括:
获取多个适用于机器人执行动作的应用程序;
呈现交互界面,其中包括已有应用程序列表以及组合操作区域,所述组合操作区域适用于用户从所述已有应用程序列表中依次选择多个所述应用程序,并对选择的多个所述应用程序进行组合操作,所述组合操作决定各个应用程序的执行逻辑;
根据所述组合操作形成机器人项目;
控制机器人执行所述机器人项目,使得所述机器人按照组合的逻辑关系执行相应的多个动作。
2.根据权利要求1所述的方法,其特征在于,在根据所述组合操作形成机器人项目之前,还包括:
通过所述交互界面接收用户针对所选应用程序的可变参数的配置操作。
3.根据权利要求2所述的方法,其特征在于,通过所述交互界面接收用户针对所选应用程序的可变参数的配置操作,包括:
用户选定应用程序时弹出参数设置窗口,其中包括参数当前值、参数类型选择器和变量绑定选择器,所述参数类型选择器关联参数选择界面,所述变量绑定选择器关联全局变量列表;
根据用户针对所述参数设置窗口的操作确定可变参数的值。
4.根据权利要求1所述的方法,其特征在于,所述组合操作区域包括应用格点矩阵,所述已有应用程序列表中以可拖动的应用块表示机器人中已安装的应用程序,所述应用块可被拖动到所述应用格点矩阵的任意格点中。
5.根据权利要求4所述的方法,其特征在于,所述组合操作包括将所述应用块拖动至所述格点中、对处于各个格点中的应用块进行连线。
6.根据权利要求5所述的方法,其特征在于,所述应用块包括输入节点和输出节点;对处于各个格点中的应用块进行连线包括将应用块的输出节点与其它应用块的输入节点进行连线,以确定各个应用块的执行顺序。
7.根据权利要求6所述的方法,其特征在于,根据所述组合操作形成机器人项目包括:
根据应用格点矩阵中的各个所述应用块的位置确定第一个应用块;
判断除所述第一个应用块外的其它应用块的输入节点是否存在连接对象;
将所述第一个应用块及输入节点存在连接对象的应用块判定为机器人项目。
8.根据权利要求6所述的方法,其特征在于,控制机器人执行所述机器人项目包括:
根据应用格点矩阵中的各个所述应用块的位置,控制所述机器人执行第一个应用块对应的应用程序;
在第一个应用程序执行完毕后,根据其输出节点的连线执行后续应用块对应的应用程序,直至输出节点无连接对象的应用快。
9.根据权利要求1所述的方法,其特征在于,控制机器人执行所述机器人项目的过程中,显示当前执行的所述应用程序的运行状态界面。
10.一种机器人控制设备,其特征在于,包括:处理器以及与所述处理器连接的存储器;其中,所述存储器存储有可被所述处理器执行的指令,所述指令被所述处理器执行,以使所述处理器执行如权利要求1-9中任意一项所述的机器人控制方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202311302255.9A CN117047781A (zh) | 2023-10-10 | 2023-10-10 | 机器人控制方法及设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202311302255.9A CN117047781A (zh) | 2023-10-10 | 2023-10-10 | 机器人控制方法及设备 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN117047781A true CN117047781A (zh) | 2023-11-14 |
Family
ID=88661184
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202311302255.9A Pending CN117047781A (zh) | 2023-10-10 | 2023-10-10 | 机器人控制方法及设备 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN117047781A (zh) |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113406922A (zh) * | 2021-06-23 | 2021-09-17 | 疯壳(深圳)科技有限公司 | 一种基于图形块编程控制可编程设备的方法及其系统 |
US20210316458A1 (en) * | 2020-04-08 | 2021-10-14 | Smart Building Tech Co., Ltd. | Cloud based computer-implemented visually programming method and system for robotic motions in construction |
CN114138253A (zh) * | 2021-11-27 | 2022-03-04 | 深圳市优必选科技股份有限公司 | 图形化编程代码的测试反馈方法、装置、设备及存储介质 |
CN116262347A (zh) * | 2021-12-14 | 2023-06-16 | 珠海一微半导体股份有限公司 | 一种基于图形拖拽编程的机器人控制方法及控制系统 |
CN116501311A (zh) * | 2023-03-31 | 2023-07-28 | 中国工商银行股份有限公司 | 代码生成方法、装置、计算及存储介质及电子设备 |
-
2023
- 2023-10-10 CN CN202311302255.9A patent/CN117047781A/zh active Pending
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20210316458A1 (en) * | 2020-04-08 | 2021-10-14 | Smart Building Tech Co., Ltd. | Cloud based computer-implemented visually programming method and system for robotic motions in construction |
CN113406922A (zh) * | 2021-06-23 | 2021-09-17 | 疯壳(深圳)科技有限公司 | 一种基于图形块编程控制可编程设备的方法及其系统 |
CN114138253A (zh) * | 2021-11-27 | 2022-03-04 | 深圳市优必选科技股份有限公司 | 图形化编程代码的测试反馈方法、装置、设备及存储介质 |
CN116262347A (zh) * | 2021-12-14 | 2023-06-16 | 珠海一微半导体股份有限公司 | 一种基于图形拖拽编程的机器人控制方法及控制系统 |
CN116501311A (zh) * | 2023-03-31 | 2023-07-28 | 中国工商银行股份有限公司 | 代码生成方法、装置、计算及存储介质及电子设备 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
KR102544522B1 (ko) | 데이터 처리방법 및 관련제품 | |
US11334471B1 (en) | Mocking robotic process automation (RPA) activities for workflow testing | |
US6833847B1 (en) | Visual wizard launch pad | |
US20080005255A1 (en) | Extensible robotic framework and robot modeling | |
US20180300225A1 (en) | Method, apparatus and system for task automation of computer operations based on ui control and image/text recognition | |
CN111722842A (zh) | 流水线编排方法、装置、电子设备和存储介质 | |
CN110362490B (zh) | 融合iOS与Android移动应用的自动化测试方法及系统 | |
US11561890B2 (en) | Automated videogame testing | |
US20230273804A1 (en) | Systems And Methods For Robotic Process Automation Of Mobile Platforms | |
US10579507B1 (en) | Device cloud provisioning for functional testing of mobile applications | |
WO2021174221A1 (en) | Ai augmented digital platform and user interface | |
US6275866B1 (en) | Manipulation and coupling of object oriented components | |
US11647250B2 (en) | Methods and systems for remote streaming of a user-customized user interface | |
CN109901830B (zh) | 一种用于scada系统开发的信号配置方法与系统 | |
CN109241564A (zh) | 一种机房资产的在线设计方法和装置 | |
US10102110B1 (en) | Simulation process for interface behavior | |
CN117047781A (zh) | 机器人控制方法及设备 | |
CN106126213B (zh) | 一种基于IFML的Android开发建模方法 | |
CN117032845A (zh) | 机器人应用生态系统 | |
WO2019021045A1 (en) | METHOD AND SYSTEM FOR ACTION OF AN INDUSTRIAL ROBOT BASED ON A PARAMETER | |
CN110516277A (zh) | 快速的建模、仿真方法及系统、计算机设备、存储设备 | |
CN114879943A (zh) | 一种算法方案生成方法、装置以及计算机可读存储介质 | |
CN113172622B (zh) | 基于ros的机械臂抓取装配管理方法、系统及相关设备 | |
CN115421847A (zh) | 支持多引擎的研发运维平台和cicd流水线的管理方法及设备 | |
CN110497406B (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 |