CN109968352A - 一种机器人控制方法及机器人、具有存储功能的装置 - Google Patents

一种机器人控制方法及机器人、具有存储功能的装置 Download PDF

Info

Publication number
CN109968352A
CN109968352A CN201711471799.2A CN201711471799A CN109968352A CN 109968352 A CN109968352 A CN 109968352A CN 201711471799 A CN201711471799 A CN 201711471799A CN 109968352 A CN109968352 A CN 109968352A
Authority
CN
China
Prior art keywords
task
robot
new task
processor
new
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.)
Granted
Application number
CN201711471799.2A
Other languages
English (en)
Other versions
CN109968352B (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.)
Ubisoft Xiamen Software Technology Co ltd
Ubtech Robotics Corp
Original Assignee
Ubtech Robotics Corp
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 Ubtech Robotics Corp filed Critical Ubtech Robotics Corp
Priority to CN201711471799.2A priority Critical patent/CN109968352B/zh
Priority to US16/223,138 priority patent/US10725796B2/en
Publication of CN109968352A publication Critical patent/CN109968352A/zh
Application granted granted Critical
Publication of CN109968352B publication Critical patent/CN109968352B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/448Execution paradigms, e.g. implementations of programming paradigms
    • G06F9/4498Finite state machines
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/48Program initiating; Program switching, e.g. by interrupt
    • G06F9/4806Task transfer initiation or dispatching
    • G06F9/4843Task transfer initiation or dispatching by program, e.g. task dispatcher, supervisor, operating system
    • G06F9/485Task life-cycle, e.g. stopping, restarting, resuming execution
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J13/00Controls for manipulators
    • 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/1656Programme controls characterised by programming, planning systems for manipulators
    • B25J9/1661Programme controls characterised by programming, planning systems for manipulators characterised by task planning, object-oriented languages
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/903Querying
    • G06F16/90335Query processing
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/455Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
    • G06F9/45504Abstract machines for programme code execution, e.g. Java virtual machine [JVM], interpreters, emulators
    • G06F9/45508Runtime interpretation or emulation, e g. emulator loops, bytecode interpretation
    • G06F9/45512Command shells
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/30Nc systems
    • G05B2219/40Robotics, robotics mapping to robotics vision
    • G05B2219/40089Tele-programming, transmit task as a program, plus extra info needed by robot
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/30Nc systems
    • G05B2219/40Robotics, robotics mapping to robotics vision
    • G05B2219/40391Human to robot skill transfer

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • Robotics (AREA)
  • Databases & Information Systems (AREA)
  • Mechanical Engineering (AREA)
  • Automation & Control Theory (AREA)
  • Data Mining & Analysis (AREA)
  • Computational Linguistics (AREA)
  • Artificial Intelligence (AREA)
  • Evolutionary Computation (AREA)
  • Fuzzy Systems (AREA)
  • Mathematical Physics (AREA)
  • Stored Programmes (AREA)
  • Manipulator (AREA)

Abstract

本发明公开了一种机器人控制方法及机器人、具有存储功能的装置。该方法包括:当接收到新任务的请求时,获取机器人的当前任务;根据新任务和当前任务查询预设的状态表,判断是否将当前任务切换为新任务;若是,则将当前任务切换为新任务。通过这种方式,提高机器人工作的稳定性,能够提高机器人任务执行的效率。

Description

一种机器人控制方法及机器人、具有存储功能的装置
技术领域
本发明涉及机器人技术领域,特别是涉及一种机器人控制方法及机器人、具有存储功能的装置。
背景技术
随着机器人技术的发展,机器人的应用领域也在不断扩大,机器人的任务也越来越多样化,任务的复杂度也越来越高,导致机器人的任务、状态控制也越来越复杂。
但本发明的发明人在长期的研发工作中发现,目前,由于机器人系统是由Android及ROS组成,任务程序的执行不仅跨进程,而且跨系统,如果不对任务进行统一管理,机器人很容易出现状态错乱的情况,比如机器人可能会在跳舞中执行导航等,因此,会降低机器人系统的稳定性,降低机器人任务执行的效率。
发明内容
本发明主要解决的技术问题是提供一种机器人控制方法及机器人、具有存储功能的装置,以提高机器人工作的稳定性,提高机器人任务执行的效率。
为解决上述技术问题,本发明采用的一个技术方案是:提供机器人控制方法,该方法包括:当接收到新任务的请求时,获取机器人的当前任务;根据新任务和当前任务查询预设的状态表,判断是否将当前任务切换为新任务;若是,则将当前任务切换为新任务。
其中,判断是否将当前任务切换为新任务包括:若否,则控制机器人并列执行当前任务及新任务。
其中,在根据新任务和当前任务查询预设的状态表之前,方法进一步包括:根据预设的状态表判断是否允许插入新任务;若是,则将新任务更新到机器人的任务列表中。
其中,将当前任务切换为新任务包括:打断当前任务,并执行新任务。
为解决上述技术问题,本发明采用的另一个技术方案是:提供一种机器人,该机器人包括:处理器,处理器用于运行状态机;存储器,存储器用于存储预设的状态表;当接收到新任务的请求时,处理器进一步获取机器人的当前任务,并根据新任务和当前任务查询存储器存储的预设的状态表,判断是否将当前任务切换为新任务;若是,处理器则对状态机进行状态转移,并将机器人的当前任务切换为新任务。
其中,若否,处理器则激活状态机中新任务对应的状态,并并列执行当前任务及新任务。
其中,存储器进一步存储任务列表,处理器在根据新任务和当前任务查询预设的状态表之前,进一步根据预设的状态表判断是否允许插入新任务;若是,处理器则将新任务更新到任务列表中。
其中,若将当前任务切换为新任务,处理器则打断当前任务,并执行当前任务。
其中,处理器进一步用于运行操作系统层及接口层;处理器控制状态机将其状态上报给接口层;处理器控制操作系统层通过接口层接收请求,并根据请求产生上报结果;处理器控制接口层根据上报结果及状态产生分发指令;处理器根据分发指令将机器人的当前任务切换为新任务。
为解决上述技术问题,本发明采用的又一个技术方案是:提供一种具有存储功能的装置,其上存储有程序数据,程序数据被执行时实现上述方法中的步骤。
本发明实施例的有益效果是:区别于现有技术,本发明实施例机器人控制方法包括:当接收到新任务的请求时,获取机器人的当前任务;根据新任务和当前任务查询预设的状态表,判断是否将当前任务切换为新任务;若是,则将当前任务切换为新任务。本发明实施例通过查询预设的状态表,能够对当前任务及新任务的执行关系进行有序的管理,因此,提高机器人工作的稳定性,能够提高机器人任务执行的效率。
附图说明
图1是本发明机器人控制方法第一实施例的流程示意图;
图2是本发明机器人一实施例的结构示意图;
图3是图2实施例机器人的逻辑结构示意图;
图4是本发明机器人控制方法第二实施例的流程示意图;
图5是本发明机器人控制方法第三实施例的流程示意图;
图6是本发明具有存储功能的装置一实施例的结构示意图。
具体实施方式
本发明提出一种机器人控制方法,如图1所示,图1是本发明机器人控制方法第一实施例的结构示意图。本实施例的方法包括以下步骤:
S101:当接收到新任务的请求时,获取机器人的当前任务。
其中,机器人201是一种计算设备,在物理结构上包括处理器202及存储器203,如图2所示,图2是本发明机器人一实施例的结构示意图;在逻辑结构上包括应用层301、状态机302、接口层303及操作系统层304,如图3所示,图3是图2实施例机器人的逻辑结构示意图。处理器202及存储器203是机器人201的硬件结构,而应用层301、状态机302、接口层303及操作系统层304是机器人201的软件结构,硬件结构是软件结构运行的载体、平台。
本实施例的应用层301用于信息处理,在处理器202的控制下运行各种应用程序,以控制机器人201执行任务;例如,处理器202控制应用层301运行升级、远程控制、视频客服、导航、跳舞等应用程序,使机器人201执行相应操作。
本实施例的状态机302用于管理机器人201各种任务,即状态,以使机器人201灵活切换状态。关于状态机的一个极度确切的描述是有向图形,它由一组节点和一组相应的转移函数组成。状态机通过响应一系列事件而"运行"。每个事件都在属于"当前"节点的转移函数的控制范围内,其中函数的范围是节点的一个子集。函数返回"下一个"(也许是同一个)节点。这些节点中至少有一个必须是终态。当到达终态,状态机停止。本实施例的状态机302在处理器202的控制下进行状态转移,并将更新后的状态反馈给应用层301,便于应用层301运行与更新后的状态对应的新任务,同时,状态机302将更新后的状态反馈给接口层303,以使接口层303根据该更新后的状态及操作系统层304的上报结果产生分发指令,该分发指令用于控制该新任务。
本实施例的操作系统层304包括操作系统ROS及安卓系统,当然,在其它实施例中,操作系统层304还可以是其它单操作系统,或是其它多操作系统。
当应用层301接收到新任务的请求时,处理器202获取机器人201的当前任务。应用层301接收到新任务的请求时,通过接口层303向操作系统层304请求资源等配置。
S102:根据新任务和当前任务查询预设的状态表,判断是否将当前任务切换为新任务,若是,则执行步骤S103。
本实施例的处理器202根据新任务和当前任务查询预设的状态表,判断是否将当前任务切换为新任务。
其中,预设的状态表存储于存储器203。具体地,本实施例的预设的状态表如表1所示:
表1预设的状态表
其中,该预设的状态表中“进入状态”对应于应用层301接收的新任务,“已存状态”对应于应用层301执行的当前任务。该预设的状态表包括机器人201的各任务(状态)之间的执行关系,该执行关系包括:禁止插入(用“0”表示)、进入且共存(用“1”表示)及进入且打断(用“2”表示)等。该禁止插入是指新任务不能插入当前任务,例如,新任务远程控制与当前任务系统升级的执行关系为“0”,即远程控制不能插入系统升级;新任务急停与当前任务系统升级的执行关系为“1”,即急停与系统升级并列运行;新任务系统升级与当前任务开机设置的执行关系为“2”,即打断开机设置,并执行系统升级。
当然,本实施例的机器人201的任务不局限于表1中所示任务,机器人201的任务还可以包括视频通讯、迎宾、广告、自动巡游、闲聊、播放视屏及播放音乐等。且各任务间的关系也不局限于表1中所示关系,用户可以通过实际需要对表1进行更新、补充。
本实施例可以通过状态值标识每个状态,以提高处理器202的处理效率。例如,状态值“20”代表开机设置等。
S103:将当前任务切换为新任务。
若根据上述预设的状态表判断要将当前任务切换为新任务,处理器202则控制状态机302从与当前任务对应的当前状态转移到与新任务对应的目标状态,并控制应用层301将当前任务切换为新任务。例如,通过查询上述预设的状态表获得新任务系统升级与当前任务远程控制的执行关系为“2”,即远程控制允许被系统升级打断,处理器202则控制应用层301将远程控制切换为系统升级。
其中,本实施例的将当前任务切换为新任务是将当前任务打断,并执行新任务,待新任务结束后,恢复执行当前任务。
当然,在其它实施例中,将当前任务切换为新任务也可以是结束当前任务,并执行新任务,待新任务完成后,执行下一个任务。
区别于现有技术,本实施例通过查询预设的状态表,能够对当前任务及新任务的执行关系进行有序的管理,因此,能够提高机器人201工作的稳定性,提高机器人201任务执行的效率。
本发明在上述实施例的基础上进一步提出第二实施例的机器人控制方法,如图4所示,图4是本发明机器人控制方法第二实施例的流程示意图。本实施例的方法在上述实施例的方法的基础上进一步包括:
S401:若不将当前任务切换为新任务,则控制机器人201并列执行当前任务及新任务。
若根据上述预设的状态表判断不将当前任务切换为新任务,处理器202则控制状态机302激活从与新任务对应的目标状态,并控制应用层301并列执行当前任务及新任务。例如,通过查询预设的状态表获得新任务急停与当前任务开机设置的执行关系为“1”,即急停与开机设置并列执行,处理器202则控制应用层301并列执行急停与开机设置。
本发明在上述实施例的基础上进一步提出第三实施例的机器人控制方法,如图5所示,图5是本发明机器人控制方法第三实施例的流程示意图。本实施例的机器人201的各任务均存储于存储器203的任务列表中,在机器人201工作时,根据状态机302的状态转移顺序有序执行任务列表中的各任务。
本实施例的方法在上述实施例方法的步骤S102之前进一步包括步骤S501-S503:
S501:根据预设的状态表判断是否允许插入新任务,若是,则进入步骤S502,若否,则进行步骤S503。
S502:将新任务更新到任务列表中。
S503:取消请求。
本实施例的处理器202根据预设的状态表判断应用层301接收的新任务是否被允许插入任务列表,若允许,则将该新任务更新到任务列表中,便于后续应用层301对新任务的调取。例如,通过查询预设的状态表获得新任务急停与当前任务开机设置的执行关系为“1”,即非“0”,处理器202则将急停插入任务列表中;若不允许,处理器202控制应用层301取消该新任务的请求。例如,通过查询预设的状态表获得新任务远程控制与当前任务开机设置的执行关系为“0”,即远程控制不允许插入开机设置,处理器202则控制应用层301取消远程控制的请求。
下面以图3为例,从逻辑结构上对本发明机器人控制方法进行详细叙述,具体地,1)当应用层301接收到新任务的请求时,先根据预设的状态表进行第一次状态查询,用于判断是否将新任务插入任务列表,状态机302将第一次查询结果(状态)上报给应用层301,若新任务允许插入任务列表,则将新任务插入任务列表,若不允许,则取消新任务的请求,该步骤与上步骤S501-S503实现功能相同;2)若新任务插入到任务列表,应用层301则根据新任务向接口层303发送接口注册申请,此时,接口层303根据预设的状态表进行第二次状态查询,用于判断新任务是否被允许打断当前任务,或与当前任务并列执行,状态机302将第二次查询结果(状态)上报给接口层303,接口层303根据新任务及第二次查询结果向操作系统层304发送接口注册申请;3)操作系统层304根据接口注册申请产生上报结果,上报结果至少包括对新任务的资源分配信息;4)接口层303根据该上报结构及第二次查询结果产生指令分发,用于控制应用层301打断当前任务,并执行新任务,或者控制应用层301并列执行当前任务及新任务。步骤2)-4)与上步骤S101-S103及401实现功能相同。
本发明进一步提出一种机器人,如图2所示,机器人201包括处理器202及存储器203,其中,处理器202用于运行状态机302,存储器203用于存储预设的状态表,当接收到新任务的请求时,处理器202进一步获取机器人201的当前任务,并根据新任务和当前任务查询存储器203存储的预设的状态表,判断是否将当前任务切换为新任务;若是,处理器202则对状态机302进行状态转移,并将机器人201的当前任务切换为新任务。
如图3所示,机器人201在逻辑结构上包括应用层301、状态机302、接口层303及操作系统层304,处理器202及存储器203是机器人201的硬件结构,而应用层301、状态机302、接口层303及操作系统层304是机器人201的软件结构,硬件结构是软件结构运行的载体、平台。
本实施例的应用层301在处理器202的控制下运行各种应用程序,以控制机器人201执行任务。应用层301接收到新任务的请求时,通过接口层303向操作系统层304请求资源等配置。
本实施例的状态机302用于管理机器人201各种任务,即状态,以使机器人201灵活切换状态。状态机302在处理器202的控制下进行状态转移,并将更新后的状态反馈给应用层301,便于应用层301运行与更新后的状态对应的新任务,同时,处理器202控制状态机302将更新后的状态反馈给接口层303;处理器202控制操作系统层304通过接口层303接收请求,并根据请求产生上报结果;处理器202控制接口层303根据上报结果及状态产生分发指令;处理器202控制应用层301根据分发指令将机器人201的当前任务切换为新任务。
本实施例的操作系统层304包括操作系统ROS及安卓系统,当然,在其它实施例中,操作系统层304还可以是其它单操作系统,或是其它多操作系统。
若根据上述预设的状态表判断要将当前任务切换为新任务,处理器202则控制状态机302从与当前任务对应的当前状态转移到与新任务对应的目标状态,并控制应用层301将当前任务切换为新任务。
其中,本实施例的将当前任务切换为新任务是将当前任务打断,并执行新任务,待新任务结束后,恢复执行当前任务。
当然,在其它实施例中,将当前任务切换为新任务也可以是结束当前任务,并执行新任务,待新任务完成后,执行下一个任务。
区别于现有技术,本实施例通过查询预设的状态表,能够对当前任务及新任务的执行关系进行有序的管理,因此,能够提高机器人201工作的稳定性,提高机器人201任务执行的效率。
若根据上述预设的状态表判断不将当前任务切换为新任务,处理器202则控制状态机302激活与新任务对应的目标状态,并控制应用层301并列执行当前任务及新任务。
本实施例的机器人201的各任务均存储于存储器203的任务列表中,在机器人201工作时,根据状态机302的状态转移顺序有序执行任务列表中的各任务。
本实施例的处理器202根据预设的状态表判断应用层301接收的新任务是否被允许插入任务列表,若允许,处理器202则将该新任务更新到任务列表中,便于后续应用层301对新任务的调取;若不允许,处理器202控制应用层301取消该新任务的请求。
本发明进一步提出一种具有存储功能的装置,如图6所示,图6是本发明具有存储功能的装置一实施例的结构示意图。本实施例具有存储功能的装置601用于存储上述实施例的相关数据602及程序数据603,其中,相关数据602至少包括上述预设的状态表及任务列表等,程序数据603能够被执行以上述方法实施例的方法。相关数据602及程序数据603已在上述方法实施例中进行了详细的叙述,这里不赘述。
本实施例具有存储功能的装置601可以是但不局限于U盘、SD卡、PD光驱、移动硬盘、大容量软驱、闪存、多媒体记忆卡、服务器等。
区别于现有技术,本发明实施例能够解决机器人201任务跨进程或跨系统出现状态错乱的问题,通过查询预设的状态表,能够对当前任务及新任务的执行关系进行有序的管理,因此,能够提高机器人201工作的稳定性,提高机器人201任务执行的效率。
另外,上述功能如果以软件功能的形式实现并作为独立产品销售或使用时,可存储在一个移动终端可读取存储介质中,即,本申请还提供一种存储有程序数据的存储装置,所述程序数据能够被执行以实现上述实施例的方法,该存储装置可以为如U盘、光盘、服务器等。也就是说,本申请可以以软件产品的形式体现出来,其包括若干指令用以使得一台智能终端执行各个实施例所述方法的全部或部分步骤。
在本申请的描述中,参考术语“一个实施例”、“一些实施例”、“示例”、“具体示例”、或“一些示例”等的描述意指结合该实施例或示例描述的具体特征、结构、材料或者特点包含于本申请的至少一个实施例或示例中。在本说明书中,对上述术语的示意性表述不必须针对的是相同的实施例或示例。而且,描述的具体特征、结构、材料或者特点可以在任一个或多个实施例或示例中以合适的方式结合。此外,在不相互矛盾的情况下,本领域的技术人员可以将本说明书中描述的不同实施例或示例以及不同实施例或示例的特征进行结合和组合。
此外,术语“第一”、“第二”仅用于描述目的,而不能理解为指示或暗示相对重要性或者隐含指明所指示的技术特征的数量。由此,限定有“第一”、“第二”的特征可以明示或者隐含地包括至少一个该特征。在本申请的描述中,“多个”的含义是至少两个,例如两个,三个等,除非另有明确具体的限定。
流程图中或在此以其他方式描述的任何过程或方法描述可以被理解为,表示包括一个或更多个用于实现特定逻辑功能或过程的步骤的可执行指令的代码的模块、片段或部分,并且本申请的优选实施方式的范围包括另外的实现,其中可以不按所示出或讨论的顺序,包括根据所涉及的功能按基本同时的方式或按相反的顺序,来执行功能,这应被本申请的实施例所属技术领域的技术人员所理解。
在流程图中表示或在此以其他方式描述的逻辑和/或步骤,例如,可以被认为是用于实现逻辑功能的可执行指令的定序列表,可以具体实现在任何计算机可读介质中,以供指令执行系统、装置或设备(可以是个人计算机,服务器,网络设备或其他可以从指令执行系统、装置或设备取指令并执行指令的系统)使用,或结合这些指令执行系统、装置或设备而使用。就本说明书而言,"计算机可读介质"可以是任何可以包含、存储、通信、传播或传输程序以供指令执行系统、装置或设备或结合这些指令执行系统、装置或设备而使用的装置。计算机可读介质的更具体的示例(非穷尽性列表)包括以下:具有一个或多个布线的电连接部(电子装置),便携式计算机盘盒(磁装置),随机存取存储器(RAM),只读存储器(ROM),可擦除可编辑只读存储器(EPROM或闪速存储器),光纤装置,服务器,以及便携式光盘只读存储器(CDROM)。另外,计算机可读介质甚至可以是可在其上打印所述程序的纸或其他合适的介质,因为可以例如通过对纸或其他介质进行光学扫描,接着进行编辑、解译或必要时以其他合适方式进行处理来以电子方式获得所述程序,然后将其存储在计算机存储器中。
以上所述仅为本发明的实施方式,并非因此限制本发明的专利范围,凡是利用本发明说明书及附图内容所作的等效结构或等效流程变换,或直接或间接运用在其他相关的技术领域,均同理包括在本发明的专利保护范围内。

Claims (10)

1.一种机器人控制方法,其特征在于,所述方法包括:
当接收到新任务的请求时,获取所述机器人的当前任务;
根据所述新任务和所述当前任务查询预设的状态表,判断是否将所述当前任务切换为所述新任务;
若是,则将所述当前任务切换为所述新任务。
2.根据权利要求1所述的方法,其特征在于,所述判断是否将所述当前任务切换为所述新任务包括:
若否,则控制所述机器人并列执行所述当前任务及所述新任务。
3.根据权利要求1所述的方法,其特征在于,所述机器人根据任务列表执行任务,在所述根据所述新任务和所述当前任务查询预设的状态表之前,所述方法进一步包括:
根据所述预设的状态表判断是否允许插入所述新任务;
若是,则将所述新任务更新到所述任务列表中。
4.根据权利要求1所述的方法,其特征在于,所述将所述当前任务切换为新任务包括:
打断所述当前任务,并执行所述新任务。
5.一种机器人,其特征在于,所述机器人包括:
处理器,所述处理器用于运行状态机;
存储器,所述存储器用于存储预设的状态表;
当接收到新任务的请求时,所述处理器进一步获取所述机器人的当前任务,并根据所述新任务和所述当前任务查询所述存储器存储的所述预设的状态表,判断是否将所述当前任务切换为所述新任务;若是,所述处理器则对所述状态机进行状态转移,并将所述机器人的所述当前任务切换为所述新任务。
6.根据权利要求5所述的机器人,其特征在于,若否,所述处理器则激活所述状态机中所述新任务对应的状态,并并列执行所述当前任务及所述新任务。
7.根据权利要求5所述的机器人,其特征在于,所述存储器进一步存储任务列表,所述处理器在根据所述新任务和所述当前任务查询预设的状态表之前,进一步根据所述预设的状态表判断是否允许插入所述新任务;若是,所述处理器则将所述新任务更新到所述任务列表中。
8.根据权利要求5所述的机器人,其特征在于,若将所述当前任务切换为所述新任务,所述处理器则打断所述当前任务,并执行所述当前任务。
9.根据权利要求5所述的机器人,其特征在于,所述处理器进一步用于运行操作系统层及接口层;
所述处理器控制所述状态机将其状态上报给所述接口层;
所述处理器控制所述操作系统层通过所述接口层接收所述请求,并根据所述请求产生上报结果;
所述处理器控制所述接口层根据所述上报结果及所述状态产生分发指令;
所述处理器根据所述分发指令将所述机器人的所述当前任务切换为所述新任务。
10.一种具有存储功能的装置,其特征在于,其上存储有程序数据,其特征在于,所述程序数据被执行时实现权利要求1-4任一项所述方法中的步骤。
CN201711471799.2A 2017-12-28 2017-12-28 一种机器人控制方法及机器人、具有存储功能的装置 Active CN109968352B (zh)

Priority Applications (2)

Application Number Priority Date Filing Date Title
CN201711471799.2A CN109968352B (zh) 2017-12-28 2017-12-28 一种机器人控制方法及机器人、具有存储功能的装置
US16/223,138 US10725796B2 (en) 2017-12-28 2018-12-18 Robot task management method, robot using the same and non-transitory computer readable storage medium

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201711471799.2A CN109968352B (zh) 2017-12-28 2017-12-28 一种机器人控制方法及机器人、具有存储功能的装置

Publications (2)

Publication Number Publication Date
CN109968352A true CN109968352A (zh) 2019-07-05
CN109968352B CN109968352B (zh) 2021-06-04

Family

ID=67059614

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201711471799.2A Active CN109968352B (zh) 2017-12-28 2017-12-28 一种机器人控制方法及机器人、具有存储功能的装置

Country Status (2)

Country Link
US (1) US10725796B2 (zh)
CN (1) CN109968352B (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112130971A (zh) * 2020-08-17 2020-12-25 惠州市德赛西威汽车电子股份有限公司 一种基于收音机逻辑打断表的任务切换方法及收音机

Families Citing this family (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2021181141A (ja) * 2020-05-20 2021-11-25 セイコーエプソン株式会社 充電方法および充電システム
US11534913B2 (en) 2020-05-21 2022-12-27 Intrinsic Innovation Llc Integrating sensor streams for robotic demonstration learning
US11524402B2 (en) 2020-05-21 2022-12-13 Intrinsic Innovation Llc User feedback for robotic demonstration learning
US20210362331A1 (en) * 2020-05-21 2021-11-25 X Development Llc Skill templates for robotic demonstration learning
CN112671894A (zh) * 2020-12-22 2021-04-16 上海有个机器人有限公司 机器人任务远程取消方法、装置、终端及存储介质
CN114147710B (zh) * 2021-11-27 2023-08-11 深圳市优必选科技股份有限公司 机器人的控制方法、装置、机器人及存储介质

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1876334A (zh) * 2005-06-07 2006-12-13 发那科株式会社 机械手控制装置及机械手控制方法
JP2016068197A (ja) * 2014-09-30 2016-05-09 富士ソフト株式会社 ロボット
CN106227595A (zh) * 2016-07-12 2016-12-14 乐视控股(北京)有限公司 处理反复快速操作的方法和系统
CN106447028A (zh) * 2016-12-01 2017-02-22 江苏物联网研究发展中心 改进的服务机器人任务规划方法

Family Cites Families (30)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4638445A (en) * 1984-06-08 1987-01-20 Mattaboni Paul J Autonomous mobile robot
JP2994926B2 (ja) * 1993-10-29 1999-12-27 松下電器産業株式会社 有限状態機械作成方法とパターン照合機械作成方法とこれらを変形する方法および駆動方法
JP2001157976A (ja) * 1999-11-30 2001-06-12 Sony Corp ロボット制御装置およびロボット制御方法、並びに記録媒体
US7117190B2 (en) * 1999-11-30 2006-10-03 Sony Corporation Robot apparatus, control method thereof, and method for judging character of robot apparatus
US20030066050A1 (en) * 2001-09-26 2003-04-03 Wang Douglas W. Method and system for programming devices using finite state machine descriptions
US7769487B2 (en) * 2003-07-24 2010-08-03 Northeastern University Process and architecture of robotic system to mimic animal behavior in the natural environment
JPWO2005015466A1 (ja) * 2003-08-07 2006-10-05 松下電器産業株式会社 生活支援システム及びその制御用プログラム
US8639365B2 (en) * 2003-11-10 2014-01-28 Brooks Automation, Inc. Methods and systems for controlling a semiconductor fabrication process
CN103433923A (zh) * 2007-01-12 2013-12-11 汉斯乔格·巴尔特斯 用于产生机器人的方法和系统
WO2009123650A1 (en) * 2008-04-02 2009-10-08 Irobot Corporation Robotics systems
US8452451B1 (en) * 2011-05-06 2013-05-28 Google Inc. Methods and systems for robotic command language
US8380652B1 (en) * 2011-05-06 2013-02-19 Google Inc. Methods and systems for autonomous robotic decision making
ES2827192T3 (es) * 2012-02-08 2021-05-20 Omron Tateisi Electronics Co Sistema de gestión de tareas para una flota de robots móviles autónomos
US9753453B2 (en) * 2012-07-09 2017-09-05 Deep Learning Robotics Ltd. Natural machine interface system
WO2014138472A2 (en) * 2013-03-06 2014-09-12 Robotex Inc. System and method for collecting and processing data and for utilizing robotic and/or human resources
US9573277B2 (en) * 2013-04-15 2017-02-21 Alan Rosen Intelligent visual humanoid robot and computer vision system programmed to perform visual artificial intelligence processes
WO2015052825A1 (ja) * 2013-10-11 2015-04-16 株式会社日立製作所 搬送ロボットシステム
EP2933065A1 (en) * 2014-04-17 2015-10-21 Aldebaran Robotics Humanoid robot with an autonomous life capability
US9050723B1 (en) * 2014-07-11 2015-06-09 inVia Robotics, LLC Human and robotic distributed operating system (HaRD-OS)
US9272418B1 (en) * 2014-09-02 2016-03-01 The Johns Hopkins University System and method for flexible human-machine collaboration
US20160121487A1 (en) * 2014-11-03 2016-05-05 Qualcomm Incorporated Communicating Configurable Instruction Sets to Robots for Controlling Robot Behavior
US10518407B2 (en) * 2015-01-06 2019-12-31 Discovery Robotics Apparatus and methods for providing a reconfigurable robotic platform
WO2016149557A1 (en) * 2015-03-17 2016-09-22 Vm-Robot, Inc. Web browsing robot system and method
WO2017097377A1 (en) * 2015-12-11 2017-06-15 Abb Schweiz Ag An industrial robot and a method for controlling the robot to automatically select which program code to be executed next
US20190054631A1 (en) * 2015-12-28 2019-02-21 Niranjan Chandrika Govindarajan System and method for operating and controlling a hyper configurable humanoid robot to perform multiple applications in various work environments
WO2017197018A2 (en) * 2016-05-10 2017-11-16 Trustees Of Tufts College Systems and methods enabling online one-shot learning and generalization by intelligent systems of task-relevant features and transfer to a cohort of intelligent systems
US10112298B2 (en) * 2016-08-09 2018-10-30 International Business Machines Corporation Assigning tasks to a robot device for execution
MX2019008944A (es) * 2017-01-30 2019-09-11 Walmart Apollo Llc Sistemas de robot autonomos distribuidos y metodos con rastreo rfid.
US20180257228A1 (en) * 2017-03-10 2018-09-13 Walmart Apollo, Llc Systems and methods for robotic assistance with retail location monitoring
US11331796B2 (en) * 2018-02-12 2022-05-17 Brain Corporation Autonomous multi-tasking modular robotic system

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1876334A (zh) * 2005-06-07 2006-12-13 发那科株式会社 机械手控制装置及机械手控制方法
JP2016068197A (ja) * 2014-09-30 2016-05-09 富士ソフト株式会社 ロボット
CN106227595A (zh) * 2016-07-12 2016-12-14 乐视控股(北京)有限公司 处理反复快速操作的方法和系统
CN106447028A (zh) * 2016-12-01 2017-02-22 江苏物联网研究发展中心 改进的服务机器人任务规划方法

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112130971A (zh) * 2020-08-17 2020-12-25 惠州市德赛西威汽车电子股份有限公司 一种基于收音机逻辑打断表的任务切换方法及收音机

Also Published As

Publication number Publication date
US10725796B2 (en) 2020-07-28
CN109968352B (zh) 2021-06-04
US20190205145A1 (en) 2019-07-04

Similar Documents

Publication Publication Date Title
CN109968352A (zh) 一种机器人控制方法及机器人、具有存储功能的装置
EP2710470B1 (en) Extensible centralized dynamic resource distribution in a clustered data grid
CN104503845B (zh) 一种任务分发方法和系统
CN109582441A (zh) 用于提供容器服务的系统、方法和装置
CN104838360A (zh) 基于配额的资源管理
CN109565515A (zh) 分布式资源管理系统中的动态租户结构调整的系统、设备和过程
CN107943580A (zh) 用于管理区块链节点处的用户智能合约的方法以及设备
CN108667867A (zh) 数据存储方法及装置
CN109815007A (zh) 基于云监控的线程控制方法、装置、电子设备及存储介质
CN109840142A (zh) 基于云监控的线程控制方法、装置、电子设备及存储介质
CN110162388A (zh) 一种任务调度方法、系统及终端设备
CN107577534A (zh) 一种资源调度方法及装置
CN109152061A (zh) 通道调配方法、装置、服务器及存储介质
CN108229771A (zh) 分配订单的方法及装置
CN109800067A (zh) 基于云监控的数据库连接优化方法、装置及相关设备
CN106856438A (zh) 一种网络业务实例化的方法、装置及nfv系统
CN106533961A (zh) 一种流量控制方法及装置
CN112887121B (zh) 一种管理网络服务的方法、设备及系统
CN109840141A (zh) 基于云监控的线程控制方法、装置、电子设备及存储介质
CN102511041B (zh) 计算机实现方法和计算系统
CN109639460B (zh) Nfv资源管理的方法和装置
CN105260244A (zh) 一种分布式系统任务调度的方法和装置
Rimassa Runtime support for distributed multi-agent systems
CN105511959A (zh) 虚拟资源分配方法和装置
CN116166421A (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
CP03 Change of name, title or address
CP03 Change of name, title or address

Address after: Room 2201, Building C1, Nanshan Zhiyuan, No. 1001, Xueyuan Avenue, Changyuan Community, Taoyuan Street, Nanshan District, Shenzhen, Guangdong 518000

Patentee after: Shenzhen Youbixuan Technology Co.,Ltd.

Address before: 22nd floor, building C1, Nanshan wisdom Park, 1001 Xueyuan Avenue, Nanshan District, Shenzhen, Guangdong 518000

Patentee before: Shenzhen Youbixuan Technology Co.,Ltd.

TR01 Transfer of patent right
TR01 Transfer of patent right

Effective date of registration: 20231204

Address after: Room E388, 2nd Floor, No. 197 Binglang Xili, Siming District, Xiamen City, Fujian Province, 361000

Patentee after: Ubisoft (Xiamen) Software Technology Co.,Ltd.

Address before: Room 2201, Building C1, Nanshan Zhiyuan, No. 1001, Xueyuan Avenue, Changyuan Community, Taoyuan Street, Nanshan District, Shenzhen, Guangdong 518000

Patentee before: Shenzhen Youbixuan Technology Co.,Ltd.