机器人外卖柜取物配送方法、系统和机器人
文献发布时间:2023-06-19 12:13:22
技术领域
本公开涉及机器人领域,尤其涉及一种机器人外卖柜取物配送方法、系统和机器人。
背景技术
随着时代的发展,越来越多的用户通过快递和外卖获取各种物品,出于安全和整洁度的考虑,许多地方都设置集中存放物品的外卖柜。通常情况下,外卖柜的位置距离用户住所还有一定的距离,需要用户去外卖柜获取物品。
由于逐渐发展的机器人技术和用户对便利生活的追求,用户对智能取物配送机器人的需求日益增长。
发明内容
有鉴于此,本公开的目的在于提出一种机器人外卖柜取物配送方法、系统和机器人。
本公开第一方面,提供了一种机器人外卖柜取物配送方法,包括:
接收取物工作任务,执行取物操作;
响应于所述取物操作完成,向服务器反馈取物成功信息,并接收所述服务器发来的配送工作任务;
执行所述配送工作任务;
其中,所述执行取物操作进一步包括:根据所述取物工作任务,前往外卖柜;
开启储物舱门,向所述外卖柜发送开柜门指令,以使所述外卖柜打开柜门并执行物品转移操作;
接收所述外卖柜发来的关闭储物舱门指令,关闭所述储物舱门。
本公开第二方面,提供了一种机器人,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述程序时实现如上任意一项所述的方法。
本公开第三方面,提供了一种机器人外卖柜取物配送系统,所述系统,包括:
机器人;
服务器;
外卖柜。
本公开实施例提供的机器人外卖柜取物配送方法、系统和机器人,在接收到外卖信息后,生成取物工作任务,并将取物工作任务发送给机器人,机器人在接收到取物工作任务之后,前往外卖柜,开启舱门获取外卖柜转移的物品,取物成功后,向服务器反馈取物成功信息,并接收所述服务器发来的配送工作任务,根据配送工作任务将物品配送给用户,用户不需要去外卖柜或者到大门去取外卖。
附图说明
为了更清楚地说明本公开或相关技术中的技术方案,下面将对实施例或相关技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本公开的实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本公开实施例所提供的利用机器人进行物品配送的示例性系统的示意图;
图2为本公开实施例的一种机器人示意图;
图3为本公开实施例的一种外卖柜示意图;
图4为本公开实施例的机器人外卖柜取物配送方法流程图;
图5为本公开实施例的机器人结构示意图。
具体实施方式
为使本公开的目的、技术方案和优点更加清楚明白,以下结合具体实施例,并参照附图,对本公开进一步详细说明。
需要说明的是,除非另外定义,本公开实施例使用的技术术语或者科学术语应当为本公开所属领域内具有一般技能的人士所理解的通常意义。本公开实施例中使用的“第一”、“第二”以及类似的词语并不表示任何顺序、数量或者重要性,而只是用来区分不同的组成部分。“包括”或者“包含”等类似的词语意指出现该词前面的元件或者物件涵盖出现在该词后面列举的元件或者物件及其等同,而不排除其他元件或者物件。“连接”或者“相连”等类似的词语并非限定于物理的或者机械的连接,而是可以包括电性的连接,不管是直接的还是间接的。“上”、“下”、“左”、“右”等仅用于表示相对位置关系,当被描述对象的绝对位置改变后,则该相对位置关系也可能相应地改变。
图1示出了本公开实施例所提供的利用机器人进行物品配送的示例性系统100的示意图。
如图1所示,系统可以包括利用机器人进行物品配送的计算机服务器200、机器人300,以及,用于向服务器200发送配送订单的终端设备400和外卖柜100。在一些实施例中,服务器200可以采用一台或多台服务器来实现,当采用多台服务器实现时,可以是分布式架构。在一些实施例中,终端设备400可以是移动终端,例如,手机、平板电脑(PAD)等。
具体的场景可以包括,在酒店大厅中设置的外卖柜100,机器人300接收服务器200发送的取物工作任务从外卖柜100中获取物品,将物品派送给酒店住户。终端设备400和外卖柜100的操作主体可以是外卖员、酒店住客,也可以是酒店服务人员。例如,外卖员若有物品配送需求,可以通过自己的手机上安装的APP或小程序外卖信息到服务器200,也可以通过酒店提供的外卖柜发送外卖信息到服务器200,还可以将配送需求告知酒店服务人员,由酒店服务人员利用酒店提供的终端设备发送外卖信息到服务器200。在一些实施例中,机器人300可以配送的物品有两种类型,其一是酒店的一次性洗漱用具、饮用水等物品,其二则是外卖。这是因为,酒店内部有严格的权限要求,通常不允许外卖员进入酒店以将外卖送到住客所在房间,而只能将外卖放到酒店指定外卖柜或者让住客到酒店大门口自取。因此,利用酒店机器人300配送外卖也是需求之一。
具体场景还可以包括,在小区门口设置的外卖柜100,机器人300接收服务器200发送的取物工作任务从外卖柜100中获取物品,将物品派送给小区住户。终端设备400和外卖柜100的操作主体可以是外卖员、小区管理员和小区住户等。
具体场景还可以包括,在医院设置的外卖柜100,机器人300接收服务器200发送的取物工作任务从外卖柜100中获取物品,将物品派送给医护人员或患者。终端设备400和外卖柜100的操作主体可以是医生、护士和患者等。
鉴于此,本公开实施例提供了一种机器人外卖柜取物配送方法、系统和机器人。该方法包括:接收取物工作任务,执行取物操作;响应于所述取物操作完成,向服务器反馈取物成功信息,并接收所述服务器发来的配送工作任务;执行所述配送工作任务;其中,所述执行取物操作进一步包括:根据所述取物工作任务,前往外卖柜;开启储物舱门,向所述外卖柜发送开柜门指令,以使所述外卖柜打开柜门并执行物品转移操作;接收所述外卖柜发来的关闭储物舱门指令,关闭所述储物舱门。
本公开实施例提供的机器人外卖柜取物配送方法、系统和机器人,机器人在接收到取物工作任务之后,前往外卖柜,开启舱门获取外卖柜转移的物品,取物成功后,向服务器反馈取物成功信息,并接收所述服务器发来的配送工作任务,根据配送工作任务将物品配送给用户,用户不需要去外卖柜或者到大门去取物品。
结合图1,下面对系统的工作过程进行说明。
在初始状态下,机器人300可以是位于充电桩的位置并处于充电状态,随时等待进行物品配送。其中,机器人300可以为单储物舱机器人也可以为双储物舱机器人。
在一些实施例中,如图2所示,机器人300为双储物舱机器人。
服务器200接收到外卖信息后,首先创建取物订单,其中,取物订单中的信息有用户的手机号、物品内容、物品到达时间、外卖柜柜门号和是否需要物品到达立刻配送等信息,服务器200根据取物订单生成取物工作任务,同时检查酒店机器人是否可用,取物订单是否备注稍后配送。
在一些实施例中,存在机器人电量不足或外卖备注稍后配送等情况,则说明无法接收取物工作任务,服务器200不下发取物工作任务,将此取物任务对应的取物订单转暂存自取订单,将此外卖信息对应订单转为暂存自取订单的消息发送给外卖员,并将暂存自取订单发送给手机400上的APP,用户可以根据取物订单自行取物。
在有些情况下,用户当时并不需要立刻配送,对配送订单进行判断,将不需要立刻配送的订单转为用户自取的暂存自取订单,防止出现,物品配送到目的地,无用户取走的情况出现。
在一些实施例中,机器人可用,外卖未备注稍后配送消息,服务器200发布取物工作任务,将取物工作任务发送给机器人300。
机器人300接收到取物工作任务后,可以判断是否有未完成的取物工作任务,若机器人300的任务列表存在ready任务,则说明有未完成的取物工作任务,将接收到的取物工作任务保存在机器人300的取物工作任务列表中,等待前面未完成的工作任务完成,开始执行取物工作任务。
在执行取物工作任务之前,机器人300首先检验储物舱是否关联配送失败单,若关联配送失败单,将关联配送失败单的消息反馈给服务器200,服务器200将此取物任务对应的取物订单转暂存自取订单,将此外卖信息对应订单转为暂存自取订单的消息发送给外卖员,并将暂存自取订单发送给手机400上的APP,用户可以根据取物订单自行取物。若不关联配送失败单,机器人300前往外卖柜100对应取物订单需要柜体的位置。其中,配送失败单表示配送失败的配送订单,对应需要配送的物品还保留在机器人300的储物舱中。在一些实施例中,如图3所示,外卖柜100为双层外卖柜。
在一些实施例中,可能出现用户暂时无法取走物品的情况,这种情况下,配送订单转为配送失败单,机器人300无法接收其他的取物工作任务,将关联配送失败单的消息反馈给服务器200,服务器200创建返回前台任务,机器人300将物品放置前台。
在此基础上,机器人300接收酒店地图,根据预先设定的路线前往不同的外卖柜100,机器人300有可定位的二维码,外卖柜100的各个柜门上有识别摄像头,可以识别机器人300是否到达外卖柜100的定点位置。
酒店地图经初始化采集获取,外卖柜100位置转移,可以远程进行地点修改,不需要重新采集。
在一些实施例中,机器人300前往外卖柜100的定点位置失败,机器人300将前往外卖柜100的定点位置失败的消息反馈给服务器200,机器人执行取物工作列表中其余取物工作任务,若无取物工作任务,机器人300返回充电桩。服务器200将此取物任务对应的取物订单转暂存自取订单,将此外卖信息对应订单转为暂存自取订单的消息发送给外卖员,并将暂存自取订单发送给手机400上的APP,用户可以根据取物订单自行取物。
在一些实施例中,机器人300前往外卖柜100的定点位置成功,机器人300将前往外卖柜100的定点位置成功的消息反馈给服务器200,同时打开储物舱的舱门。
在此基础上,服务器200接到机器人300的反馈,判断当前进行取物的机器人是否为双储物舱机器人,若不是双储物舱机器人,服务器200不下发取物工作任务,若是双储物舱机器人,判断外卖柜100空储物舱对应层是否有需要取物的取物订单,若有,根据创建时间顺序优先级,时间越早,优先级越高,确定柜门,下发对应柜门的取物工作任务;若无,则服务器200不下发取物工作任务。
在此基础上,若机器人300储物舱打开舱门成功,机器人300向外卖柜100发送开柜门指令,外卖柜100打开柜门。在一些实施例中,外卖柜100的柜门打开失败,外卖柜100向服务器200反馈外卖柜100的柜门的异常消息,同时向机器人300发送关闭舱门的指令。在一下实施例中,外卖柜100的柜门打开成功,将物品推送进机器人300的储物舱。
在此基础上,机器人300设置取物倒计时时效T,当机器人300到达取物倒计时时效T时,未接收到关闭舱门指令,自动关闭舱门。
外卖柜100发送关闭舱门指令失败或机器人300的接收关闭舱门指令失败时,机器人300可以通过预设的取物倒计时失效T自动关闭舱门,防止出现机器人300一直在外卖柜100前等待关闭舱门指令的情况出现。
在一些实施例中,外卖柜100的推送组件无法正常推出和收回,外卖柜100向服务器200反馈外卖柜100的推送组件的异常消息。在一些实施例中,外卖柜100的推送组件可以正常推出和收回,外卖柜100关闭柜门,同时向机器人300发送关闭舱门的指令。
在此基础上,若外卖柜100关闭柜门失败,外卖柜100向服务器200反馈外卖柜100的柜门的异常消息。若外卖柜100关闭柜门成功,外卖柜100向服务器200反馈外卖柜100柜体可用消息。其中,异常消息可以为柜门无法打开,柜门无法关闭等。
外卖柜100向服务器200反馈柜门异常消息,服务器200可以根据异常消息向维修人员发送消息,对外卖柜100进行维护。
在一些实施例中,机器人300的舱门关闭失败,机器人300向外卖柜100发送判断推送组件能否正常收回的二次判断指令,若推送组件能正常收回,机器人300转身暂停等待取物,将推送组件正常但是舱门无法关闭的消息发送给服务器200,服务器200拨号给前台,播报语音“您好,机器人在外卖柜取物时舱门无法正常关闭,请前往外卖柜取出机器人舱内的物品。再输入操作密码让机器人继续运行”。若推送组件不能正常收回,机器人300原地等待取物,将推送组件异常同时舱门无法关闭的消息发送给服务器200,服务器200拨号给前台,播报语音“外卖柜出来点问题,机器人暂时无法移动了,请前往处理”。
推送组件无法正常收回,机器人300舱门被推送组件卡住,机器人原地暂停等待,并向服务器200发送消息,防止出现机器人300转身损坏机器人储物舱的情况。
在一些实施例中,机器人300的舱门关闭成功,机器人300检验储物舱内是否有物品,储物舱底座安装有压力传感器,压力传感器有压力值,则判断储物舱内有物品。若储物舱中无物品,机器人执行取物工作列表中其余取物工作任务,若无取物工作任务,机器人300返回充电桩。若储物舱中有物品,机器人300将取物成功消息发送给服务器200。
在此基础上,服务器200接收到取物成功的消息,根据外卖信息创建配送订单。若配送订单创建失败,服务器200创建返回前台工作任务,机器人300执行返回前台工作任务。若配送订单创建成功,服务器200创建配送工作任务。
在一些实施例中,存在机器人电量不足等情况,则说明无法接收配送工作任务,服务器200不下发配送工作任务,创建返回前台工作任务,机器人300执行返回前台工作任务。
在一些实施例中,服务器200下发配送工作任务成功,机器人300执行配送工作任务。
在此基础上,机器人300无法到达目的地,机器人300将无法到达目的地的消息发送给服务器200,服务器200创建返回前台工作任务,机器人300执行返回前台工作任务。
在此基础上,机器人300可以到达目的地,若超时未取物,机器人300将超时未取物的消息发送给服务器200,服务器200创建返回前台工作任务,机器人300执行返回前台工作任务。若准时取走物品,机器人300判断储物舱内是否还有物品。
在一些实施例中,储物舱内还有物品,机器人300将储物舱内有多余物品的消息发送给服务器200,服务器200创建返回前台工作任务,机器人300执行返回前台工作任务。
在一些实施例中,储物舱内无物品,机器人执行取物工作列表中其余取物工作任务,若无取物工作任务,机器人300返回充电桩。
需要说明的是,本公开实施例的方法可以由单个设备执行,例如一台计算机或服务器等。本实施例的方法也可以应用于分布式场景下,由多台设备相互配合来完成。在这种分布式场景的情况下,这多台设备中的一台设备可以只执行本公开实施例的方法中的某一个或多个步骤,这多台设备相互之间会进行交互以完成所述的方法。
需要说明的是,上述对本公开的一些实施例进行了描述。其它实施例在所附权利要求书的范围内。在一些情况下,在权利要求书中记载的动作或步骤可以按照不同于上述实施例中的顺序来执行并且仍然可以实现期望的结果。另外,在附图中描绘的过程不一定要求示出的特定顺序或者连续顺序才能实现期望的结果。在某些实施方式中,多任务处理和并行处理也是可以的或者可能是有利的。
本公开实施例还提供了一种机器人外卖柜取物配送方法。图4示出了本公开实施例所提供的示例性方法的流程示意图。该方法可以由服务器200执行,并可以包括以下步骤。
步骤401,接收取物工作任务,执行取物操作。
步骤402,响应于所述取物操作完成,向服务器反馈取物成功信息,并接收所述服务器发来的配送工作任务。
步骤403,执行所述配送工作任务,。
其中,所述执行取物操作进一步包括:根据所述取物工作任务,前往外卖柜;
开启储物舱门,向所述外卖柜发送开柜门指令,以使所述外卖柜打开柜门并执行物品转移操作;
接收所述外卖柜发来的关闭储物舱门指令,关闭所述储物舱门。
在一些实施例中,方法还可以包括:执行取物操作,具体包括:
响应于确定有未完成的取物工作任务,等待所述未完成的取物工作任务结束,开始执行所述取物工作任务;
响应于无未完成的取物工作任务,开始执行所述取物工作任务。
在一些实施例中,方法还可以包括:根据所述取物工作任务,前往外卖柜,具体包括:
响应于确定所述储物舱关联配送失败单,将无法取物的消息反馈给所述服务器,以使所述服务器将所述取物工作任务对应的取物订单转为暂存自取订单;
响应于确定所述储物舱未关联配送失败单,前往所述外卖柜。
在一些实施例中,方法还可以包括:根据所述取物工作任务,前往外卖柜,之后还包括:
响应于确定前往所述外卖柜失败,将前往所述外卖柜失败的消息反馈给所述服务器;
响应于确定前往所述外卖柜成功,打开储物舱门,并将前往所述外卖柜位置成功的消息反馈给所述服务器。
在一些实施例中,方法还可以包括:并将前往所述外卖柜成功的消息反馈给所述服务器,具体包括:
响应于所述机器人有其他可用的储物舱,响应于所述储物舱有匹配成功的取物订单,所述任务分配服务器分配所述取物工作任务。
在一些实施例中,方法还可以包括:接收所述外卖柜发来的关闭储物舱门指令,关闭所述储物舱门,还包括:
响应于所述储物舱门关闭失败,向所述服务器发送储物舱门关闭失败消息;
响应于所述储物舱门关闭成功,响应于所述储物舱无所述物品,继续执行后续取物工作任务;
在一些实施例中,方法还可以包括:响应于所述储物舱门关闭失败,向所述服务器发送储物舱门关闭失败消息,还包括:
向外卖柜发送二次判断指令,以使所述外卖柜判断推送组件能否正常收回;
响应于接收所述推送组件能正常收回的消息,转身暂停等待取物;
响应于接收所述推送组件不能正常收回的消息,原地等待取物。
在一些实施例中,方法还可以包括:响应于所述取物操作完成,向服务器反馈取物成功信息,并接收所述服务器发来的配送工作任务,具体包括:
将所述外卖柜的位置发送给所述服务器,以使所述服务器根据所述位置和所述取物工作任务创建配送订单,并根据所述配送订单向所述机器人发送配送工作任务。
在一些实施例中,方法还可以包括:根据所述配送工作任务执行配送操作,具体包括:
响应于所述配送至目的地址失败,将所述失败信息反馈给服务器,以使所述服务器根据所述失败信息创建返回前台任务,所述机器人执行所述返回前台任务;
响应于所述配送至目的地址成功,配送所述物品;
响应于所述机器人配送所述物品成功,执行后续取物工作任务;
响应于所述机器人配送所述物品失败,将所述失败信息反馈给服务器,以使所述服务器根据所述失败信息创建返回前台任务,所述机器人执行所述返回前台任务。
需要说明的是,本公开实施例的方法可以由单个设备执行,例如一台计算机或服务器等。本实施例的方法也可以应用于分布式场景下,由多台设备相互配合来完成。在这种分布式场景的情况下,这多台设备中的一台设备可以只执行本公开实施例的方法中的某一个或多个步骤,这多台设备相互之间会进行交互以完成所述的方法。
需要说明的是,上述对本公开的一些实施例进行了描述。其它实施例在所附权利要求书的范围内。在一些情况下,在权利要求书中记载的动作或步骤可以按照不同于上述实施例中的顺序来执行并且仍然可以实现期望的结果。另外,在附图中描绘的过程不一定要求示出的特定顺序或者连续顺序才能实现期望的结果。在某些实施方式中,多任务处理和并行处理也是可以的或者可能是有利的。
基于同一发明构思,与上述任意实施例方法相对应的,本公开还提供了一种机器人,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述程序时实现上任意一实施例所述的方法。
图5示出了本实施例所提供的一种更为具体的机器人硬件结构示意图,该设备可以包括:处理器501、存储器502、输入/输出接口503、通信接口504和总线505。其中处理器501、存储器502、输入/输出接口503和通信接口504通过总线505实现彼此之间在设备内部的通信连接。
处理器501可以采用通用的CPU(Central Processing Unit,中央处理器)、微处理器、应用专用集成电路(Application Specific Integrated Circuit,ASIC)、或者一个或多个集成电路等方式实现,用于执行相关程序,以实现本说明书实施例所提供的技术方案。
存储器502可以采用ROM(Read Only Memory,只读存储器)、RAM(Random AccessMemory,随机存取存储器)、静态存储设备,动态存储设备等形式实现。存储器502可以存储操作系统和其他应用程序,在通过软件或者固件来实现本说明书实施例所提供的技术方案时,相关的程序代码保存在存储器502中,并由处理器501来调用执行。
输入/输出接口503用于连接输入/输出模块,以实现信息输入及输出。输入输出/模块可以作为组件配置在设备中(图中未示出),也可以外接于设备以提供相应功能。其中输入设备可以包括键盘、鼠标、触摸屏、麦克风、各类传感器等,输出设备可以包括显示器、扬声器、振动器、指示灯等。
通信接口504用于连接通信模块(图中未示出),以实现本设备与其他设备的通信交互。其中通信模块可以通过有线方式(例如USB、网线等)实现通信,也可以通过无线方式(例如移动网络、WIFI、蓝牙等)实现通信。
总线505包括一通路,在设备的各个组件(例如处理器501、存储器502、输入/输出接口503和通信接口504)之间传输信息。
需要说明的是,尽管上述设备仅示出了处理器501、存储器502、输入/输出接口503、通信接口504以及总线505,但是在具体实施过程中,该设备还可以包括实现正常运行所必需的其他组件。此外,本领域的技术人员可以理解的是,上述设备中也可以仅包含实现本说明书实施例方案所必需的组件,而不必包含图中所示的全部组件。
下面以具体的酒店应用场景说明,本公开的机器人外卖柜取物配送方法:
酒店住客在入住酒店之后,若是用户通过手机400定了外卖,可以通过手机400上安装的APP获取外卖信息,并可以将外卖信息发送到服务器200。在一些实施例中,若酒店的某位住客的外卖送达酒店,酒店服务人员或外卖员可以外卖柜的操作界面输入外卖的外卖信息,可以将外卖信息发送到服务器200。服务200接收外卖信息,根据生成取物工作任务,并将所述取物工作任务发送机器人300,机器人300接收取物工作任务,取得物品后,向服务器200反馈取物成功消息,服务器200;根据所述外卖信息创建配送订单,并根据所述配送订单生成配送工作任务,机器人300接收配送工作任务,并进行配送操作,将物品配送至用户。
上述实施例的机器人用于实现前述任一实施例中相应的机器人外卖柜取物配送方法,并且具有相应的方法实施例的有益效果,在此不再赘述。
所属领域的普通技术人员应当理解:以上任何实施例的讨论仅为示例性的,并非旨在暗示本公开的范围(包括权利要求)被限于这些例子;在本公开的思路下,以上实施例或者不同实施例中的技术特征之间也可以进行组合,步骤可以以任意顺序实现,并存在如上所述的本公开实施例的不同方面的许多其它变化,为了简明它们没有在细节中提供。
另外,为简化说明和讨论,并且为了不会使本公开实施例难以理解,在所提供的附图中可以示出或可以不示出与集成电路(IC)芯片和其它部件的公知的电源/接地连接。此外,可以以框图的形式示出装置,以便避免使本公开实施例难以理解,并且这也考虑了以下事实,即关于这些框图装置的实施方式的细节是高度取决于将要实施本公开实施例的平台的(即,这些细节应当完全处于本领域技术人员的理解范围内)。在阐述了具体细节(例如,电路)以描述本公开的示例性实施例的情况下,对本领域技术人员来说显而易见的是,可以在没有这些具体细节的情况下或者这些具体细节有变化的情况下实施本公开实施例。因此,这些描述应被认为是说明性的而不是限制性的。
尽管已经结合了本公开的具体实施例对本公开进行了描述,但是根据前面的描述,这些实施例的很多替换、修改和变型对本领域普通技术人员来说将是显而易见的。例如,其它存储器架构(例如,动态RAM(DRAM))可以使用所讨论的实施例。
本公开实施例旨在涵盖落入所附权利要求的宽泛范围之内的所有这样的替换、修改和变型。因此,凡在本公开实施例的精神和原则之内,所做的任何省略、修改、等同替换、改进等,均应包含在本公开的保护范围之内。
- 机器人外卖柜取物配送方法、系统和机器人
- 机器人外卖柜取物配送方法、系统和机器人