本发明涉及计算机控制领域,特别涉及一种调度方法、调度系统及地图路径规划方法。
背景技术:
随着劳动力成本上升、人口老龄化问题的日趋严重,服务机器人将越来越多地被应用于人们日常生活的服务中。目前,这类机器人可以在一定程度上帮助人们完成类似清扫、取物、送物、安保等日常工作。随着服务机器人技术的日益成熟,将有更多的应用场景需要机器人的服务,部分或完全代替人的工作,降低人工成本,提高工作效率。
在餐厅中使用机器人送餐的应用在近几年已经被一些餐厅所接受,在现有的送餐机器人应用中,主要采用在地面粘贴黑白条或磁条的方式作为机器人定位的标识和轨迹路线。另外,一种应用可以不依靠黑白条或磁条,采用示教路径点的方式进行路径点的设定。但是这两种应用都各自存在缺点。
在地面粘贴黑白条或磁条的应用,需要在餐厅开业之前铺设好相应的辅助条,如果餐厅的布局环境发生了大的改变,需要拆除已经铺设好的辅助条并且重新设计和铺设,不仅增加了额外的设计和铺设时间还束缚了餐厅的整体布局,不能灵活改变。使用辅助条使得机器人的行走路线固定,机器人只能按照辅助条行走,无法选择路径短的路线行走。
采用示教路径点方式的送餐机器人,需要为每一个送餐的目标示教路径,示教过程复杂;另外,如果环境中有一台以上机器人,还需要为每个目标示教多条备选路径,并且很难保证各个机器人的各条路径无重叠和交叉,多台机器人同时工作时,很容易发生碰撞和路径死锁等问题。
技术实现要素:
有鉴于此,本发明实施例提供了一种调度方法、调度系统及地图路径规划方法。
本发明提供的一种调度系统,包括工控机、执行机、无线控制器及至少一个无线接入点AP;
所述工控机用于运行上位机调度软件,进行地图数据的路径信息编辑、路径生成、任务处理、路径规划和/或执行机控制的操作;
所述执行机用于执行所述工控机分配的任务,接收所述上位机调度软件的控制指令,根据自身地图信息完成相邻路径点之间的自主行走;
所述无线控制器和所述无线接入点用于实现所述工控机和所述执行机之间的无线通信;
所述工控机与所述无线控制器通信连接,所述无线接入点与所述无线控制器通信连接,所述执行机关联到所述无线接入点,所述工控机将控制指令经由所述无线控制器以及所述无线接入点下发到所述执行机。
可选地,所述执行机包括用于播报所述上位机调度软件发送的语音内容的播报器以及显示所述上位机调度软件发送的面部表情。
可选地,还包括:
用户请求获取单元,用于获取用户请求,并将用户请求通过所述无线控制器和所述无线接入点传输至所述工控机,所述用户请求获取单元关联到所述无线接入点。
可选地,所述上位机调度软件用于根据路径点信息自动生成静态拓扑路径信息;
所述工控机利用所述上位机调度软件自动生成的静态拓扑路径信息对所有执行机进行统一的路径规划。
可选地,所述执行机为送餐机器人。
本发明还提供一种地图路径规划方法,包括:
机器人创建地图数据;
上位机软件获取地图数据;
在所述地图数据中添加所需的全部路径点;
在所述地图数据上将相邻的路径点连接;
在选取所述全部路径点中的多个路径点作为功能路径点供机器人使用,其中,所述功能路径点包括目标路径点、取餐点、机器人等待点以及机器人充电站中的一种或多种。
本发明还提供一种调度方法,包括:
获取静态路径文件;
启动后台调度逻辑;
当接收到用户任务时查找是否存在处于可执行任务状态的机器人;
当存在处于可执行任务状态的机器人时规划机器人的行走路径并进行控制直至完成用户任务。
可选地,所述获取静态路径文件之前,还包括:
生成静态路径信息并将所述静态路径信息写入静态路径文件。
可选地,所述当接收到用户任务时查找是否存在处于可执行任务状态的机器人之后,还包括:
当不存在处于可执行任务状态的机器人时则将所述用户任务加入等待队列。
可选地,还包括:
判断是否存在未执行的任务;
当存在未执行的任务,则执行当接收到用户任务时查找是否存在处于可执行任务状态的机器人的步骤;
当不存在未执行的任务,则等待接收新用户任务。
从以上技术方案可以看出,本发明实施例具有以下优点:
本发明的方案,无需在环境中增加额外的定位辅助设施,只需要在地图数据上添加相应的路径信息即可,简单方便,快速适应环境布局的改变:当环境中的桌椅等陈设的摆放布局发生大范围的改变时,只需重新建立地图数据,并添加相应的路径信息即可,机器人行走路线灵活:有多条路径可供选择,根据各个机器人的位置和任务目标,灵活的选择代价最低的路线,无需示教路径:通过静态路径生成和动态路径规划两个步骤,为机器人生成起点到目标的通路,机器人数量灵活:无需事先固化系统中工作的机器人数量,在性能允许的情况下,可动态地增加或减少系统中工作的机器人数量。
根据多个机器人协同工作的特点,利用机器人激光传感器创建的地图数据,在上位机调度软件界面上进行路径信息的设置。再通过上位机调度软件对所有机器人进行统一的规划和管理,寻找各个机器人完成任务的最优路径,控制机器人路径的行走。
附图说明
图1是本发明提供的一种调度系统的结构示意图;
图2是本发明提供的一种地图路径规划方法的流程图;
图3是本发明提供的一种调度方法的流程图。
具体实施方式
为了使本技术领域的人员更好地理解本发明方案,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分的实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都应当属于本发明保护的范围。
本发明的说明书和权利要求书及上述附图中的术语“第一”、“第二”、“第三”“第四”等(如果存在)是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的实施例能够以除了在这里图示或描述的内容以外的顺序实施。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、系统、产品或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。
结合图1所示,本发明提供的一种调度系统,包括工控机101、执行机102、无线控制器103及至少一个无线接入点AP104;
所述工控机用于运行上位机调度软件,进行地图数据的路径信息编辑、路径生成、任务处理、路径规划和/或执行机控制的操作;
所述执行机用于执行所述工控机分配的任务,接收所述上位机调度软件的控制指令,根据自身地图信息完成相邻路径点之间的自主行走;
所述无线控制器和所述无线接入点用于实现所述工控机和所述执行机之间的无线通信;
所述工控机与所述无线控制器通信连接,所述无线接入点与所述无线控制器通信连接,所述执行机关联到所述无线接入点,所述工控机将控制指令经由所述无线控制器以及所述无线接入点下发到所述执行机。
对于执行机可以采用机器人作为执行主体,对此不做限定。
可选地,所述执行机包括用于播报所述上位机调度软件发送的语音内容的播报器以及显示所述上位机调度软件发送的面部表情。
可选地,还包括:用户请求获取单元105,用于获取用户请求,并将用户请求通过所述无线控制器和所述无线接入点传输至所述工控机,所述用户请求获取单元关联到所述无线接入点,本实施例中,用户请求获取单元105可以为移动终端,例如平板电脑、手机等,通过无线网络接入到局域网中,用户可以通过用户请求获取单元105输入请求信息,例如进行点菜下单。
需要说明的是,用户请求获取单元105和无线接入点104之间可以采用Wi-Fi网络进行连接,对此不进行限定。
可选地,所述上位机调度软件用于根据路径点信息自动生成静态拓扑路径信息;
所述工控机利用所述上位机调度软件自动生成的静态拓扑路径信息对所有执行机进行统一的路径规划。
可选地,所述执行机为送餐机器人。
利用机器人自身的激光传感器在餐厅环境中创建工作时使用的地图数据。上位机软件获取创建好的地图数据,并通过界面在地图数据中添加路径点,再连接各个相邻的路径点,从而形成一张网状的相邻节点关系图。上位机软件根据路径节点间的相邻关系,为每一个节点生成n条到达其他节点的拓扑路径,这些拓扑路径是动态路径规划的基础。上位机收到任务信息后,对任务信息进行处理,找到能够执行任务的机器人,根据机器人的当前位置和任务的目标位置,再结合其他机器人的行走路径,动态规划出所有机器人的路径点序列,以及机器人之间的行走次序。
下面结合一种实施例进行讲解,以便准确理解本方案。
硬件方案:
硬件部分主要包括:工控机、送餐机器人、无线控制器和无线接入点AP。
工控机主要用于运行上位机调度软件,是整个调度系统的核心,地图数据的路径信息编辑、路径生成、任务处理、路径规划、机器人调度等一系列工作都是在工控机中完成的。
送餐机器人是具体任务的执行体,其接受上位机调度软件的控制指令,根据自身地图信息完成相邻路径点之间的自主行走、说出调度软件发送的语音内容、显示调度软件发送的面部表情等。
使用无线控制器和无线接入点搭建工控机和送餐机器人通信的无线通信局域网,工控机中的上位机调度软件作为TCP服务器,送餐机器人作为TCP客户端。
软件(上位机)方案:
上位机调度软件在Window XP平台上进行开发,可以分为UI交互层、业务逻辑层和数据访问层。
通过UI交互层,可以在送餐机器人创建的地图数据基础上进行路径点的添加,相邻路径点设置,目标设置以及与任务和机器人等相关信息的设置,还可以下发任务,查看任务状态和机器人状态等。通过业务逻辑层完成任务处理、路径生成、机器人调度等核心操作。通过数据访问层实现TCP通信、日志记录、配置文件解析等操作。
无需在环境中增加额外的定位辅助设施:与在地面粘贴黑白条或磁条的方式来实现机器人的定位和行走路径的设定相比,本系统只需要在地图数据上添加相应的路径信息即可,简单方便。
快速适应环境布局的改变:当环境中的桌椅等陈设的摆放布局发生大范围的改变时,只需重新建立地图数据,并添加相应的路径信息即可。
机器人行走路线灵活:有多条路径可供选择,根据各个机器人的位置和任务目标,灵活的选择代价最低的路线。
无需示教路径:通过静态路径生成和动态路径规划两个步骤,为机器人生成起点到目标的通路。
机器人数量灵活:无需事先固化系统中工作的机器人数量,在性能允许的情况下,可动态地增加或减少系统中工作的机器人数量。
使用上位机调度软件利用机器人创建的地图数据进行路径点信息的编辑,生成静态的拓扑路径信息,无需额外的黑白条或磁条,无需示教机器人的工作路径,调度软件对所有的机器人进行统一的路径规划,调度软件统一控制各个机器人的行走和执行任务的过程。
具体地,基于餐厅环境的多机器人调度系统的硬件组成,包括多台送餐机器人、工控机、无线控制器、无线接入点、Pad终端或PC终端。送餐机器人是具体任务的执行体,工控机运行上位机调度软件,无线控制器用于组建无线局域网,无线接入点是无线局域网的接入点,如果工作的环境范围较大,一个AP无法覆盖所有的区域,可以在无线控制器上面扩展多个AP,实现大范围的无线信号覆盖,Pad终端或PC终端主要用于任务的下发。
结合图2所示,本发明还提供一种地图路径规划方法,包括:
S201、机器人创建地图数据;
S202、上位机软件获取地图数据;
S203、在所述地图数据中添加所需的全部路径点;
S204、在所述地图数据上将相邻的路径点连接;
S205、在选取所述全部路径点中的多个路径点作为功能路径点供机器人使用,其中,所述功能路径点包括目标路径点、取餐点、机器人等待点以及机器人充电站中的一种或多种。
图2描述了路径信息的编辑流程,包括机器人创建地图,上位机获取地图,在上位机界面添加路径点,连接相邻点,在路径点上设置目标信息、取餐点信息、等待点信息和充电站位置信息等。
结合图3所示,本发明还提供一种调度方法,包括:
获取静态路径文件;
启动后台调度逻辑;
当接收到用户任务时查找是否存在处于可执行任务状态的机器人;
当存在处于可执行任务状态的机器人时规划机器人的行走路径并进行控制直至完成用户任务。
可选地,所述当接收到用户任务时查找是否存在处于可执行任务状态的机器人之后,还包括:
当不存在处于可执行任务状态的机器人时则将所述用户任务加入等待队列。
可选地,还包括:
判断是否存在未执行的任务;
当存在未执行的任务,则执行当接收到用户任务时查找是否存在处于可执行任务状态的机器人的步骤;
当不存在未执行的任务,则等待接收新用户任务。
本发明提供的一种调度方法的另一种实施例,包括:
所述获取静态路径文件之前,还包括:
S301、生成静态路径信息并将所述静态路径信息写入静态路径文件。
S302、获取静态路径文件。
S303、启动后台调度逻辑。
S304、当接收到用户任务时查找是否存在处于可执行任务状态的机器人,若是则执行S306,若否则执行S305。
S305、当不存在处于可执行任务状态的机器人时则将所述用户任务加入等待队列。
S306、当存在处于可执行任务状态的机器人时规划机器人的行走路径并进行控制直至完成用户任务。
S307、判断是否存在未执行的任务,若存在,则执行S303的步骤,若否,则执行S308。
S308、等待接收新用户任务。
图3描述了上位机调度软件的工作流程,启动调度软件后,首先检查是否存在记录静态拓扑路径信息的文件,如果不存在,就根据在界面创建的各个路径点的相邻关系生成静态拓扑路径信息,创建并记录到文件中;如果存在这样的文件,跳过路径信息生成步骤,直接启动调度逻辑。调度逻辑启动后,一直等到用户下发任务,如果收到任务,首先对任务进行处理,查找能够执行该任务的机器人,如果没有找到机器人执行任务,该任务就会进入等待队列,直到有能够执行该任务的机器人;如果找到了能够执行该任务的机器人,就将任务分派给该机器人,再根据所有机器人的位置以及目标位置,为所有的机器人统一规划各自的行走路线。完成规划后,便开始对各个机器人的行走过程进行控制。当有机器人完成了执行中的任务后,调度逻辑会检查任务队列中是否存在未执行的任务,如果存在,就将第一个未执行的任务指派给该机器人,如果不存在未执行的任务,机器人便回到等待位置等待系统派发任务,调度逻辑也会一直等待用户任务的到来。
所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的系统,装置和单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
在本申请所提供的几个实施例中,应该理解到,所揭露的系统,装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本发明各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
本领域普通技术人员可以理解上述实施例的各种方法中的全部或部分步骤是可以通过程序来指令相关的硬件来完成,该程序可以存储于一计算机可读存储介质中,存储介质可以包括:只读存储器(ROM,Read Only Memory)、随机存取存储器(RAM,Random Access Memory)、磁盘或光盘等。
以上对本发明所提供的一种调度方法、调度系统及地图路径规划方法进行了详细介绍,对于本领域的一般技术人员,依据本发明实施例的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本发明的限制。