机器人的控制方法、机器人、电子设备及存储介质与流程

文档序号:22128350发布日期:2020-09-08 12:29阅读:120来源:国知局
机器人的控制方法、机器人、电子设备及存储介质与流程

本申请涉及智能控制技术领域,尤其涉及机器人的控制方法、机器人、电子设备及存储介质。



背景技术:

随着互联网的发展,智能工作设备越来越普及,例如智能配送机器人,扫地机器人等等。室内智能配送机器人多用于医院、商场等大型室内场景,以替代人工执行配送任务。其常常会进出一些配送地点,某些配送地点的内部设计了多个对称格局,例如仓库等,在实现本发明的过程中,发明人发现工作设备在仓库中正在执行地图扫描任务,当其发生意外后,例如断电、意外重启等,工作设备无法依靠自身携带的激光雷达判断自身的位置,同时在工作设备在恢复正常工作后,相比发生意外时工作设备的姿态或位置是否发生变化,如果姿态或者位置发生变化则会影响地图的准确性。



技术实现要素:

为了解决上述技术问题或者至少部分地解决上述技术问题,本申请提供了机器人的控制方法、机器人、电子设备及存储介质。

第一方面,本申请提供了一种机器人的控制方法,包括:

当在预设时间长度内未收到机器人的运动参数时,获取所述机器人在距离当前时刻最近时刻的第一运动参数;

获取当前时刻对所述机器人检测得到的第二运动参数;

根据所述第二运动参数对所述第一运动参数进行校验,确定所述机器人的姿态变化数据;

根据所述姿态变化数据执行相应的处理操作。

可选的,所述方法还包括:

获取所述机器人中第一供电单元的供电信息;

根据所述供电信息确定所述第一供电单元的状态信息;

根据所述状态信息执行相应的控制操作。

可选的,所述根据所述状态信息执行相应的控制操作,包括:

根据所述供电信息确定所述第一供电单元处于异常状态时,确定所述第一供电单元的异常类型;

当所述异常类型为第一类型时,向第二供电单元发送控制指令,所述控制指令用于控制所述第二供电单元替换所述第一供电单元进行供电。

可选的,所述方法还包括:

当所述异常类型为第二类型时,获取所述机器人在第一供电单元发生异常时的第三运动参数;

获取当前时刻对所述机器人检测得到的第四运动参数;

根据所述第四运动参数对所述第三运动参数进行校验,确定所述机器人的姿态变化数据;

根据所述姿态变化数据执行相应的处理操作。

第二方面,本申请实施例提供了一种机器人,包括:运动系统和位置存储系统;

所述运动系统,用于在预设时间长度内向所述位置存储系统发送所述机器人的运动参数;

所述位置存储系统,用于在预设时间长度内未收到机器人的运动参数时,获取所述机器人在距离当前时刻最近时刻的第一运动参数,获取当前时刻对所述机器人检测得到的第二运动参数,根据所述第二运动参数对所述第一运动参数进行校验,确定所述机器人的姿态变化数据,根据所述姿态变化数据执行相应的处理操作。

可选的,所述机器人还包括:第一供电单元;

所述第一供电单元,用于向所述运动系统和所述位置存储系统供电;

所述位置存储系统,用于获取所述第一供电单元的供电信息,根据所述供电信息确定所述供电系统的的状态信息,根据所述状态信息执行相应的控制操作。

可选的,所述运动系统包括:主控制器,以及与所述主控制器连接的第一惯性测量单元、激光雷达以及电机驱动器,所述电机驱动器还与电机以及编码器相互连接。

可选的,所述位置存储系统包括:微控制器,以及与所述微控制器连接的第二惯性测量单元、只读存储器、电池切换电路以及第二供电单元;

所述微控制器通过所述电池切换电路中的第一开关与所述机器人的第一供电单元连接,所述微控制器通过所述电池切换电路中的第二开关与所述第二供电单元连接,其中,所述微控制器与所述第一供电单元之间还设有比较器。

第三方面,本申请提供了一种电子设备,包括:处理器、通信接口、存储器和通信总线,其中,处理器,通信接口,存储器通过通信总线完成相互间的通信;

所述存储器,用于存放计算机程序;

所述处理器,用于执行计算机程序时,实现上述方法步骤。

第四方面,本申请提供了一种计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时实现上述方法步骤。

本申请实施例提供的上述技术方案与现有技术相比具有如下优点:该技术方案一方面实时记录机器人在扫描当前环境时的运动参数,另一方面在机器人发生意外后对机器人进行检测,根据发生意外前后的运动参数确定机器人的姿态是否发生变化,保证所得到环境地图的准确性。

附图说明

此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本发明的实施例,并与说明书一起用于解释本发明的原理。

为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,对于本领域普通技术人员而言,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。

图1为本申请实施例提供的一种机器人的示意图;

图2为本申请实施例提供的机器人的功能模块图;

图3为本申请实施例提供的一种环境地图的示意图;

图4为本申请实施例提供的一种微控制器的框图;

图5为本申请实施例提供的一种机器人的控制方法的流程图;

图6为本申请另一实施例提供的一种机器人的控制方法的流程图;

图7为本申请实施例提供的一种电子设备的结构示意图。

具体实施方式

为使本申请实施例的目的、技术方案和优点更加清楚,下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本申请的一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动的前提下所获得的所有其他实施例,都属于本申请保护的范围。

本申请实施例提供的机器人的控制方法、机器人、电子设备及存储介质,本发明实施例所提供的方法可以应用于任意需要的电子设备,例如,可以为服务器、终端等电子设备,在此不做具体限定,为描述方便,后续简称为电子设备。

下面首先对本发明实施例所提供的一种机器人进行介绍。

图1为本申请实施例提供的一种机器人的示意图,本实施例中的机器人可以是配送机器人、清洁机器人等智能机器人。在此不做具体限定。

图2为本申请实施例提供的一种机器人的功能模块图,如图2所示,本实施例提供的一种机器人,包括:运动系统1和位置存储系统2;其中,位置存储系统2与运动系统1可以采用通信连接。

运动系统1,用于在预设时间长度内向位置存储系统发送机器人的运动参数;

位置存储系统2,用于在预设时间长度内未收到运动系统1发送的运动参数时,获取机器人在距离当前时刻最近时刻的第一运动参数,获取当前时刻对机器人检测得到的第二运动参数,根据第二运动参数对第一运动参数进行校验,确定机器人的姿态变化数据,根据姿态变化数据执行相应的处理操作,本实施例中的运动参数包括:速度,加速度以及坐标信息。

本实施例中,机器人还包括:第一供电单元3;

第一供电单元3,用于向运动系统1和位置存储系统2供电;

位置存储系统2,用于获取第一供电单元3的供电信息,根据供电信息确定第一供电单元的的状态信息,根据状态信息执行相应的控制操作。

如图2所示,本实施例中的运动系统,包括:主控制器100,以及与主控制器100连接的激光雷达101,第一惯性测量单元102以及电机驱动器103,电机驱动器103还与编码器104、电机105相互连接。

编码器104用于监控电机105的旋转状态,并通过电机驱动器103反馈至主控制器100;第一惯性测量单元102获取机器人的运动参数,并将运动参数发送至主控制器100,主控制器100根据旋转状态和运动参数生成里程信息;其中第一惯性测量单元102包括:陀螺仪、电子罗盘等,运动参数包括:角速度,方位,加速度等。

激光雷达101对当前环境进行扫描得到点云信息,并将点云信息传输至控制器,控制器根据点云信息生成环境图像。

具体的,机器人在运动过程中结合编码器104、第一惯性测量单元102反馈的运动参数计算得到机器人的里程信息。机器人的姿态信息结合观测模型(激光雷达扫描返回的周围障碍物点云数据进行地图匹配)得到机器人的精确定位,最后在精确定位的基础上,将激光数据添加到栅格地图中,通过机器人在环境中反复运动,最终完成整个环境地图的构建。

以下以机器人在当前环境中某一地点进行扫描,获取局部地图为例,首先采集激光雷达的回波信号,根据回波信号得到点云数据,对点云数据聚类得到静态对象,静态对象即静态障碍物无需区分其类型,只需要得到他们的位置和形状;建立初始栅格图;然后采集视觉传感器图像数据,使用图像识别算法得到动态对象,识别出图像中存在的行人、机动车和非机动车等动态对象的位置及尺寸信息,并对每一个动态对象标记其类型;将激光雷达和视觉传感器得到的数据进行融合;将动态对象投影到激光雷达点云数据,去除动态对象点云重新聚类,重新聚类得到更新后的静态对象;在栅格图上标记对象类型以及动态目标的多位属性信息,生成多维度动静态栅格地图,将多维度动静态栅格地图作为当前地点的局部地图。

然后通过控制机器人在当前环境中反复运动即可得到当前环境的完整地图,例如:图3为本申请实施例提供的一种环境地图的示意图,如图3所示,图中的具有多重对称结构。

在实现本发明的过程中,发明人还发现由于机器人位于多重对称结构的环境中,并且一直处于运动状态,为了得到精准的环境地图,就需要实时对机器人进行定位,但是仅仅依靠激光雷达对其进行定位容易在当前已扫描的地图中出现与机器人相匹配的多个位置,从而导致工作设最终无法准确的得到环境地图。为此本申请提供了一种为机器人进行精准定位的方法,该方法如下:

根据激光雷达的回波信号确定机器人在环境地图中的至少一个候选位置,获取机器人在运动过程中电机的旋转状态,以及机器人的当前运动参数;根据电机的旋转状态和当前运动参数生成里程信息,根据里程信息从候选位置中确定机器人的目标位置。

在本实施例中,机器人定位除了依靠激光雷达点云数据来构建地图外,还有依靠里程信息,保证机器人能够精准的进行定位。

如图2所示,本实施例中的位置存储系统,包括:微控制器200,以及与微控制器200连接的第二惯性测量单元201,只读存储器202电池切换电路203以及第二供电单元205;

微控制器200通过电池切换电路203中的第一开关2031与第一供电单元3连接,微控制器200通过所述电池切换电路203中的第二开关2032与第二供电单元205连接,其中,微控制器200与第一供电单元3之间还设有比较器204,通过比较器204对第一供电单元3的供电信息进行监控。

本实施例利用机器人运动系统与位置存储系统周期性更新位置,当机器人意外重启或者断电后,位置存储系统获取机器人的当前位置并且得到机器人姿态变化,机器人再次恢复正常工作后,若姿态未发生变化,则从位置存储系统中读取机器人重启或者断电后前的位置。可解决机器人在具有多个对称格局的建筑物内意外重启或者断电后造成自身定位失败的问题。

图4为本申请实施例提供的一种微控制器的框图,该微控制器可以通过软件、硬件或者两者的结合实现成为电子设备的部分或者全部。如图4所示,该微控制器包括:

第一获取模块41,用于当在预设时间长度内未收到机器人的运动参数时,从只读存储器内获取机器人在距离当前时刻最近时刻的第一运动参数;

第二获取模块42,用于获取当前时刻第一惯性测量单元对机器人检测得到的第二运动参数;

确定模块43,用于根据第二运动参数对第一运动参数进行校验,确定机器人的姿态变化数据;

执行模块44,用于根据姿态变化数据执行相应的处理操作。

可选的,执行子模块,具体用于根据供电信息确定第一供电单元处于异常状态时,确定第一供电单元的异常类型;当异常类型为第一类型时,向第二供电单元发送控制指令,控制指令用于控制第二供电单元替换第一供电单元进行供电。

当异常类型为第二类型时,获取机器人在第一供电单元发生异常时的第三运动参数;获取当前时刻对机器人检测得到的第四运动参数;根据第四运动参数对第三运动参数进行校验,确定机器人的姿态变化数据;根据姿态变化数据执行相应的处理操作。

其中,当微控制器确定姿态变化数据满足预设条件,且运动系统处于运行状态时,将第一运动参数或第三运动参数发送至运动系统;

或,当微控制器确定姿态变化数据大于或等于预设阈值时,向运动系统发送位置丢失信息。

图5为本申请实施例提供的一种机器人的控制方法的流程图。如图5所示,本实施例提供的方法应用于位置存储系统,该方法包括以下步骤:

步骤s51,当在预设时间长度内未收到机器人的运动参数时,获取机器人在距离当前时刻最近时刻的第一运动参数;

在本步骤中,机器人在扫描当前环境的过程中,机器人的运动系统每隔预设时间长度向位置存储系统发送机器人的运动参数,当位置存储系统在某一个预设时间长度内未收到运动参数时,确定当前时刻,并在只读存储器中查询机器人在距离当前时刻最近时刻的第一运动参数,第一运动参数包括:速度、加速度以及位置坐标等信息。

步骤s52,获取当前时刻对机器人检测得到的第二运动参数;

在本步骤中,位置存储系统调用惯性测量单元对机器人进行检测,确定当前时刻机器人的第二运动参数,第二运动参数包括:速度、加速度以及方位等信息。

步骤s53,根据第二运动参数对第一运动参数进行校验,确定机器人的姿态变化数据;

在本步骤中,可以对比第一运动参数和第二运动参数,确定机器人在预设时间长度内的姿态变化数据,例如:第一运动参数和第二运动参数相比速度、加速度变为零,但是位置坐标相同,可以确定机器人在预设时间长度内未发生位移。或第一运动参数和第二运动参数相比速度、加速度未发生变化,位置坐标不相同,可以确定机器人在预设时间长度内发生位移。

作为一个示例,运动系统在出现重启或者出现通信故障时,会导致位置存储系统在预设时间长度内无法接收到运动系统发送的运动参数时刻为12:02:00am,运动系统每隔1分钟向位置存储系统发送运动参数,则可以确定距离当前时刻最近时刻是12:01:00am,可以在位置存储系统的只读存储器查询机器人在12:01:00am的运动参数(第一运动参数),此时确定当前时刻为12:02:00am,调用位置存储系统中的惯性测量单元对机器人进行检测,得到机器人在12:02:00am的运动参数(第二运动参数)。然后对比对比第一运动参数和第二运动参数,确定机器人在预设时间长度内的姿态变化数据。

步骤s54,根据姿态变化数据执行相应的处理操作。

在本步骤中,当机器人确定姿态变化数据小于预设阈值,且运动系统处于运行状态时,将第一运动参数发送至运动系统,使运动系统继续按照第一运动参数运动。

或,当微控制器确定姿态变化数据大于或等于预设阈值时,向运动系统发送位置丢失信息,并上报监控终端。

该技术方案一方面实时记录机器人在扫描当前环境时的运动参数,另一方面在机器人发生意外后对机器人进行检测,根据发生意外前后的运动参数确定机器人的姿态是否发生变化,保证所得到环境地图的准确性。

上述实施例是位置存储系统通过被动检测的方式对机器人进行检测,确定机器人的姿态变化数据。以下实施例为位置存储系统通过主动检测的方式对机器人进行检测,确定机器人的姿态变化数据。

图6为本申请另一实施例提供的一种机器人的控制方法的流程图。如图6所示,该方法包括以下步骤:

步骤s61,获取机器人中第一供电单元的供电信息;

在本步骤中,第一供电单元用于向机器人的运动系统以及位置存储系统供电,具体的,通过位置存储系统中的微控制器调用比较器对第一供电单元进行实时监测,得到第一供电单元的供电信息,供电信息可以是输出开关量。

步骤s62,根据供电信息确定第一供电单元的状态信息;

在本步骤中,可以记录供电信息在当前时间段的变化情况,根据变化情况可以确定第一供电单元的状态信息,比如:变化情况小于预设变化值时,可以确定第一供电单元的状态信息为正常状态,变化情况大于或等于预设变化值时,可以确定第一供电单元的状态信息为异常状态。

步骤s63,根据状态信息执行相应的控制操作。

可选的,根据状态信息执行相应的控制操作,包括:

当位置存储系统根据供电信息确定第一供电单元处于异常状态时,确定第一供电单元的异常类型,当异常类型为第一类型时(本实施例中所指的第一类型为掉电),微控制器向第二供电单元发送控制指令,控制指令用于控制第二供电单元替换第一供电单元向微控制器供电。

需要说明的是,当异常类型为第一类型(掉电)时,说明第一供电单元不足以同时向运动系统和位置存储系统供电,所以需要启动第二供电单元向位置存储系统供电,保证两个系统能够正常运行。

在本实施例中,当异常类型为第二类型(在本实施例中所指的第二类型为断电)时,获取机器人在第一供电单元发生异常时刻最近时刻的第三运动参数,获取当前时刻对机器人检测得到的第四运动参数,根据第四运动参数对第三运动参数进行校验,确定机器人的姿态变化数据,根据姿态变化数据执行相应的处理操作。

作为一个示例,第一供电单元发生断电的时刻为12:01:20am,运动系统每隔1分钟向位置存储系统发送运动参数,则可以确定距离第一供电单元发生断电最近的时刻是12:01:00am,可以在位置存储系统的只读存储器查询机器人在12:01:00am的运动参数(第三运动参数),此时确定当前时刻为12:01:30am,调用位置存储系统中的惯性测量单元对机器人进行检测,得到机器人在12:01:30am的运动参数(第四运动参数)。然后对比对比第三运动参数和第四运动参数,确定机器人在预设时间长度内的姿态变化数据。

根据姿态变化数据执行相应的处理操作,可以是:当确定机器人的姿态变化数据小于预设阈值,将第三运动参数发送至运动系统,使运动系统继续按照第三运动参数运动。

或,当微控制器确定姿态变化数据大于或等于预设阈值时,向运动系统发送位置丢失信息。并上报监控终端。

本申请实施例还提供一种电子设备,如图7所示,电子设备可以包括:处理器1501、通信接口1502、存储器1503和通信总线1504,其中,处理器1501,通信接口1502,存储器1503通过通信总线1504完成相互间的通信。

存储器1503,用于存放计算机程序;

处理器1501,用于执行存储器1503上所存放的计算机程序时,实现上述实施例的步骤。

上述电子设备提到的通信总线可以是外设部件互连标准(peripheralcomponentinterconnect,pci)总线或扩展工业标准结构(extendedindustrystandardarchitecture,eisa)总线等。该通信总线可以分为地址总线、数据总线、控制总线等。为便于表示,图中仅用一条粗线表示,但并不表示仅有一根总线或一种类型的总线。

通信接口用于上述电子设备与其他设备之间的通信。

存储器可以包括随机存取存储器(randomaccessmemory,ram),也可以包括非易失性存储器(non-volatilememory,nvm),例如至少一个磁盘存储器。可选的,存储器还可以是至少一个位于远离前述处理器的存储装置。

上述的处理器可以是通用处理器,包括中央处理器(centralprocessingunit,cpu)、网络处理器(networkprocessor,np)等;还可以是数字信号处理器(digitalsignalprocessing,dsp)、专用集成电路(applicationspecificintegratedcircuit,asic)、现场可编程门阵列(field-programmablegatearray,fpga)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。

本申请还提供一种计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时实现上述实施例的步骤。

算机可读存储介质可以包括在基带中或者作为载波一部分传播的数据信号,其中承载了可读程序代码。这种传播的数据信号可以采用多种形式,包括但不限于电磁信号、光信号或上述的任意合适的组合。可读存储介质还可以是可读存储介质以外的任何可读介质,该可读介质可以发送、传播或者传输用于由指令进行系统、装置或者器件使用或者与其结合使用的程序。可读存储介质上包含的程序代码可以用任何适当的介质传输,包括但不限于无线、有线、光缆、rf等等,或者上述的任意合适的组合。

可以以一种或多种程序设计语言的任意组合来编写用于进行本发明操作的程序代码,所述程序设计语言包括面向对象的程序设计语言—诸如java、c++等,还包括常规的过程式程序设计语言—诸如“c”语言或类似的程序设计语言。程序代码可以完全地在用户计算设备上进行、部分地在用户设备上进行、作为一个独立的软件包进行、部分在用户计算设备上部分在远程计算设备上进行、或者完全在远程计算设备或服务器上进行。在涉及远程计算设备的情形中,远程计算设备可以通过任意种类的网络,包括局域网(lan)或广域网(wan),连接到用户计算设备,或者,可以连接到外部计算设备(例如利用因特网服务提供商来通过因特网连接)。

需要说明的是,对于上述装置、电子设备及计算机可读存储介质实施例而言,由于其基本相似于方法实施例,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。

进一步需要说明的是,在本文中,诸如“第一”和“第二”等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。

以上所述仅是本发明的具体实施方式,使本领域技术人员能够理解或实现本发明。对这些实施例的多种修改对本领域的技术人员来说将是显而易见的,本文中所定义的一般原理可以在不脱离本发明的精神或范围的情况下,在其它实施例中实现。因此,本发明将不会被限制于本文所示的这些实施例,而是要符合与本文所申请的原理和新颖特点相一致的最宽的范围。

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