机器人控制方法、装置、设备以及存储介质

申请号 CN202210434444.0 申请日 2022-04-24 公开(公告)号 CN114767009B 公开(公告)日 2024-05-07
申请人 深圳市倍思科技有限公司; 发明人 何世友; 杭大明; 邓祯平;
摘要 本 发明 公开了一种 机器人 控制方法、装置、设备以及存储介质,属于扫地 机器人技术 领域。扫地机器人具有红外发射模 块 与红外接收模块,所述红外发射模块以预设参数发射红外线,所述预设参数包括预设发射周期和预设发射功率;所述方法包括:获取所述红外接收模块接收的实时红外 信号 ;将所述实时红外信号转化为 数字信号 ,获得信号强度 波形 数据;根据所述信号强度波形数据、所述预设发射周期以及所述预设发射功率,确定所述实时红外信号所检测的范围是否在所述机器人的活动范围内。
权利要求

1.一种机器人控制方法,其特征在于,所述机器人具有红外发射模与红外接收模块,所述红外发射模块以预设参数发射红外线,所述预设参数包括预设发射周期和预设发射功率;
所述方法包括:
获取所述红外接收模块接收的实时红外信号
将所述实时红外信号转化为数字信号,获得信号强度波形数据;
根据所述信号强度波形数据、所述预设发射周期以及所述预设发射功率,确定所述实时红外信号所检测的范围是否在所述机器人的活动范围内;
所述根据所述信号强度波形数据、所述预设发射周期以及所述预设发射功率,确定所述实时红外信号所检测的范围是否在所述机器人的活动范围内的步骤,包括:
将相邻两段发射周期的信号强度波形数据作差,得到波形数据差值;
从多个波形数据差值中筛选出与所述预设发射功率相对应的目标波形数据差值;
统计预设时间段内所述目标波形数据差值的总数;
判断所述总数是否大于或者等于第一预设统计值;
若所述总数大于或者等于第一预设统计值,则确定前方环境存在障碍物,所述实时红外信号所检测的范围不在所述机器人的活动范围内;
和/或,判断所述总数是否小于或者等于第二预设统计值;
若所述总数小于或者等于所述第二预设统计值,则确定前方环境存在悬崖,所述实时红外信号所检测的范围不在所述机器人的活动范围内。
2.根据权利要求1所述的机器人控制方法,其特征在于,所述红外发射模块包括第一红外发射模块,用于向前方发射红外信号,所述红外接收模块包括第一红外接收模块,用于接收前方反射的红外信号;
所述根据所述信号强度波形数据、所述预设发射周期以及所述预设发射功率,确定所述实时红外信号所检测的范围是否在所述机器人的活动范围内的步骤,包括:
将相邻两段发射周期的信号强度波形数据作差,得到波形数据差值;
判断所述波形数据差值是否大于或者等于第一预设值;
若大于或者等于第一预设值,则确定前方环境存在障碍物,所述实时红外信号所检测的范围不在所述机器人的活动范围内。
3.根据权利要求1所述的机器人控制方法,其特征在于,所述判断所述总数是否大于或者等于第一预设统计值之后,所述方法还包括:
若所述总数小于第一预设统计值,则确定所述实时红外信号所检测的范围在所述机器人的活动范围内;
控制所述机器人执行扫地动作。
4.根据权利要求1所述的机器人控制方法,其特征在于,所述红外发射模块包括第二红外发射模块,用于向地面发射红外信号,所述红外接收模块包括第二红外接收模块,用于接收地面反射的红外信号;
所述根据所述信号强度波形数据、所述预设发射周期以及所述预设发射功率,确定所述实时红外信号所检测的范围是否在所述机器人的活动范围内的步骤,包括:
将相邻两段发射周期的信号强度波形数据作差,得到波形数据差值;
判断所述波形数据差值是否小于或者等于第二预设值;
若小于或者等于第二预设值,则确定前方环境存在悬崖,所述实时红外信号所检测的范围不在所述机器人的活动范围内。
5.根据权利要求1所述的机器人控制方法,其特征在于,所述则确定所述实时红外信号所检测的范围不在所述机器人的活动范围内之后,所述方法还包括:
控制所述机器人执行转向动作。
6.一种机器人控制装置,其特征在于,配置于机器人,所述机器人具有红外发射模块与红外接收模块,所述红外发射模块以预设参数发射红外线,所述预设参数包括预设发射周期和预设发射功率;
所述机器人控制装置包括:
红外获取模块,用于获取所述红外接收模块接收的实时红外信号;
信号转化模块,用于将所述实时红外信号转化为数字信号,获得信号强度波形数据;
数据处理模块,用于根据所述信号强度波形数据、所述预设发射周期以及所述预设发射功率确定所述实时红外信号所检测的范围是否在所述机器人的活动范围内;
所述数据处理模块,还用于将相邻两段发射周期的信号强度波形数据作差,得到波形数据差值;从多个波形数据差值中筛选出与所述预设发射功率相对应的目标波形数据差值;统计预设时间段内所述目标波形数据差值的总数;判断所述总数是否大于或者等于第一预设统计值;若所述总数大于或者等于第一预设统计值,则确定前方环境存在障碍物,所述实时红外信号所检测的范围不在所述机器人的活动范围内;
和/或,所述数据处理模块,还用于判断所述总数是否小于或者等于第二预设统计值;
若所述总数小于或者等于所述第二预设统计值,则确定前方环境存在悬崖,所述实时红外信号所检测的范围不在所述机器人的活动范围内。
7.一种机器人控制设备,其特征在于,包括:处理器,存储器以及存储在所述存储器中的机器人控制程序,所述机器人控制程序被所述处理器运行时实现如权利要求1至5中任一项所述机器人控制方法的步骤。
8.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质上存储有机器人控制程序,所述机器人控制程序被处理器执行时实现如权利要求1至5中任一项所述的机器人控制方法。

说明书全文

机器人控制方法、装置、设备以及存储介质

技术领域

[0001] 本发明涉及扫地机器人领域,尤其涉及一种机器人控制方法、装置、设备以及存储介质。

背景技术

[0002] 扫地机器人作为一种智能家用电器,能够自动检测并避开前方障碍物,完成在房间内自动清扫地面的工作,给人们的生活带来极大便利。
[0003] 但是现有技术中,利用红外检测的扫地机器人障碍物检测方法会出现误把太阳光当障碍物的现象,直接避过太阳光照射区域导致清扫遗漏。而考虑到太阳光对扫地机器人工作影响的现有技术中,扫地机器人不再把太阳光当做障碍物,而是在太阳光下会判断障碍物失效,导致机器人若在太阳光下遇到障碍物时,直接撞向障碍物或者在遇到“悬崖”时判断失效导致直接从悬崖跌落。

发明内容

[0004] 本发明的主要目的在于提供一种机器人控制方法、装置、设备以及存储介质,旨在避免扫地机器人被太阳光干扰导致判断悬崖或者障碍物失效或者误把太阳光当障碍物的问题。
[0005] 为实现上述目的,本发明提供一种机器人控制方法,所述扫地机器人具有红外发射模与红外接收模块,所述红外发射模块以预设参数发射红外线,所述预设参数包括预设发射周期和预设发射功率;
[0006] 所述方法包括:
[0007] 获取所述红外接收模块接收的实时红外信号
[0008] 将所述实时红外信号转化为数字信号,获得信号强度波形数据;
[0009] 根据所述信号强度波形数据、所述预设发射周期以及所述预设发射功率,确定所述实时红外信号所检测的范围是否在所述机器人的活动范围内。
[0010] 可选的,所述红外发射模块包括第一红外发射模块,用于向前方发射红外信号,所述红外接收模块包括第一红外接收模块,用于接收前方反射的红外信号;
[0011] 所述根据所述信号强度波形数据、所述预设发射周期以及所述预设发射功率,确定所述实时红外信号所检测的范围是否在所述机器人的活动范围内的步骤,包括:
[0012] 将相邻两段发射周期的信号强度波形数据作差,得到波形数据差值;
[0013] 判断所述波形数据差值是否大于或者等于第一预设值;
[0014] 若大于或者等于第一预设值,则确定前方环境存在障碍物,所述实时红外信号所检测的范围不在所述机器人的活动范围内。
[0015] 可选的,所述判断所述波形数据差值是否大于或者等于第一预设值的步骤,包括:
[0016] 从多个波形数据差值中筛选出与所述预设发射功率相对应的目标波形数据差值;
[0017] 统计预设时间段内所述目标波形数据差值的总数;
[0018] 判断所述总数是否大于或者等于第一预设统计值;
[0019] 所述若大于或者等于第一预设值,则确定前方环境存在障碍物,所述实时红外信号所检测的范围不在所述机器人的活动范围内的步骤,包括:
[0020] 若所述总数大于或者等于第一预设统计值,则确定前方环境存在障碍物,所述实时红外信号所检测的范围不在所述机器人的活动范围内。
[0021] 可选的,所述判断所述总数是否大于或者等于第一预设统计值之后,所述方法还包括:
[0022] 若所述总数小于第一预设统计值,则确定所述实时红外信号所检测的范围在所述机器人的活动范围内;
[0023] 控制所述机器人执行扫地动作。
[0024] 可选的,所述红外发射模块包括第二红外发射模块,用于向地面发射红外信号,所述红外接收模块包括第二红外接收模块,用于接收地面反射的红外信号;
[0025] 所述根据所述信号强度波形数据、所述预设发射周期以及所述预设发射功率,确定所述实时红外信号所检测的范围是否在所述机器人的活动范围内的步骤,包括:
[0026] 将相邻两段发射周期的信号强度波形数据作差,得到波形数据差值;
[0027] 判断所述波形数据差值是否小于或者等于第二预设值;
[0028] 若小于或者等于第二预设值,则确定前方环境存在悬崖,所述实时红外信号所检测的范围不在所述机器人的活动范围内。
[0029] 可选的,所述判断所述波形数据差值是否小于或者等于第二预设值的步骤,包括:
[0030] 从多个波形数据差值中筛选出与所述预设发射功率相对应的目标波形数据差值;
[0031] 统计预设时间段内所述目标波形数据差值的总数;
[0032] 判断所述总数是否小于或者等于第二预统计值;
[0033] 所述若小于或者等于第二预设值,则确定前方环境存在悬崖,所述实时红外信号所检测的范围不在所述机器人的活动范围内的步骤,包括:
[0034] 若所述总数小于或者等于第二预设统计值,则确定前方环境存在悬崖,所述实时红外信号所检测的范围不在所述机器人的活动范围内。
[0035] 可选的,所述则确定所述实时红外信号所检测的范围不在所述机器人的活动范围内之后,所述方法还包括:
[0036] 控制所述机器人执行转向动作。
[0037] 为实现上述目的,本发明还提供一种机器人控制装置,配置于机器人,所述机器人控制装置具有红外发射模块与红外接收模块,所述红外发射模块以预设参数发射红外线,所述预设参数包括预设发射周期和预设发射功率;
[0038] 所述机器人控制装置包括:
[0039] 红外获取模块,用于获取所述红外接收模块接收的实时红外信号;
[0040] 信号转化模块,用于将所述实时红外信号转化为数字信号,获得信号强度波形数据;
[0041] 数据处理模块,用于根据所述信号强度波形数据、所述预设发射周期以及所述预设发射功率确定所述实时红外信号所检测的范围是否在所述机器人的活动范围内。
[0042] 为实现上述目的,本发明还提供一种机器人控制设备,包括:
[0043] 处理器,存储器以及存储在所述存储器中的机器人控制程序,所述机器人控制程序被所述处理器运行时实现如上任一项所述机器人控制方法的步骤。
[0044] 此外,为实现上述目的,本发明还提供一种计算机可读存储介质,所述计算机可读存储介质上存储有机器人控制程序,所述机器人控制程序被处理器执行时实现如上任一项所述的机器人控制方法。
[0045] 本发明实施例提出的一种机器人控制方法,该方法通过获取机器人的红外接收模块接收的实时红外信号,将所述实时红外信号转化为数字信号,获得信号强度波形数据,再根据相邻发射周期的信号强度波形数据差值与所述预设发射功率,确定前方环境是否存在障碍物或者悬崖。由此,本发明通过将红外信号转化为数字信号,从而根据数字信号波形数据的变化是否在预设波形变化范围内来判断是否有障碍物或者悬崖,从而避免扫地机器人被太阳光干扰导致判断障碍物或者悬崖失效,或者误把太阳光当障碍物的问题。附图说明
[0046] 图1为本发明机器人控制设备第一实施例的结构示意图;
[0047] 图2为本发明机器人控制方法第一实施例的流程示意图;
[0048] 图3为本发明机器人控制方法第二实施例的障碍物监测流程示意图;
[0049] 图4为本发明机器人控制方法第三实施例的悬崖监测流程示意图;
[0050] 图5为本发明机器人控制方法的太阳‑障碍物环境信号强度波形示意图;
[0051] 图6为本发明机器人控制方法的太阳‑悬崖环境信号强度波形示意图;
[0052] 图7为本发明机器人控制装置第一实施例的模块示意图。
[0053] 本发明目的的实现、功能特点及优点将结合实施例,参照附图做进一步说明。

具体实施方式

[0054] 应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。
[0055] 由于在现有技术中,利用红外检测障碍物的扫地机器人在接收障碍物或者地面反射回来的红外信号的同时,还会接收太阳光中的红外信号,而扫地机器人无法判断是障碍物或者地面反射回来的红外信号,还是太阳光中的红外信号,会出现误把太阳光当障碍物的现象,直接避过太阳光照射区域导致清扫遗漏。而考虑到太阳光对扫地机器人工作影响的现有技术中,扫地机器人不再把太阳光当做障碍物,而是在太阳光下会判断障碍物失效,导致机器人若在太阳光下遇到障碍物时,直接撞向障碍物或者遇到悬崖时判断失效导致直接从悬崖跌落。
[0056] 本发明提供一种解决方案,通过将红外信号转化为数字信号,从而根据数字信号波形数据的变化是否与所述预设发射功率匹配来判断是否有障碍物或者悬崖,旨在避免太阳光干扰扫机器人正常工作的问题。
[0057] 本申请实施例以下,将对本申请技术实现中应用到的机器人控制设备进行说明:
[0058] 参照图1,图1为本申请实施例方案涉及的硬件运行环境机器人控制设备的结构示意图。
[0059] 如图1所示,该系统可以包括:处理器1001,例如中央处理器(Central Processing Unit,CPU),通信总线1002、用户接口1003,网络接口1004,存储器1005。其中,通信总线1002用于实现这些组件之间的连接通信。用户接口1003可以包括显示屏(Display)、输入单元比如键盘(Keyboard),可选用户接口1003还可以包括标准的有线接口、无线接口。网络接口1004可选的可以包括标准的有线接口、无线接口(如无线保真(WIreless‑FIdelity,WI‑FI)接口)。存储器1005可以是高速的随机存取存储器(Random Access Memory,RAM)存储器,也可以是稳定的非易失性存储器(Non‑Volatile Memory,NVM),例如磁盘存储器。存储器1005可选的还可以是独立于前述处理器1001的存储装置。
[0060] 本领域技术人员可以理解,图1中示出的结构并不构成对机器人控制终端的限定,可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件布置。
[0061] 如图1所示,作为一种存储介质的存储器1005中可以包括操作系统、数据存储模块、网络通信模块、用户接口模块以及机器人控制程序。
[0062] 在图1所示的机器人控制终端中,网络接口1004主要用于与网络服务器进行数据通信;用户接口1003主要用于与用户进行数据交互;本发明机器人控制终端中的处理器1001、存储器1005可以设置在机器人控制终端中,机器人控制终端通过处理器1001调用存储器1005中存储的机器人控制程序,并执行本申请实施例提供的机器人控制方法。
[0063] 本申请实施例以下,将对本申请技术实现中应用到的机器人控制方法进行说明:
[0064] 基于上述硬件且不限于上述硬件结构,提出本发明机器人控制方法第一实施例,参照图2,图2示出了本发明机器人控制方法第一实施例的流程示意图。
[0065] 本实施例中,所述扫地机器人具有红外发射模块与红外接收模块,所述红外发射模块以预设参数发射红外线,所述预设参数包括预设发射周期和预设发射功率。
[0066] 所述机器人控制方法包括:
[0067] 步骤S100、获取所述红外接收模块接收的实时红外信号;
[0068] 红外接收模块接收的实时红外信号包括红外发射模块发射出去,遇到障碍物或者地面又反射回来的红外信号,以及太阳光中的红外信号。
[0069] 红外发射模块以预设参数发射红外线,可以是以预设频率发射红外线,或者以预设周期发射红外线,比如每隔20ms发射一次红外线。
[0070] 在一示例中,扫地机器人在无太阳光照,无障碍物环境下工作。红外发射模块以预设参数发射红外线,由于在预设距离的前方没有障碍物,发射出去的红外线被预设距离之外的障碍物反射回来,又由于没有太阳光照,在忽略其他外界因素影响的前提下,此时扫地机器人的红外接收模块接收的红外该信号为预设距离之外的障碍物反射回来的红外信号。
[0071] 在一示例中,扫地机器人在无太阳光照,有障碍物环境下工作。红外发射模块以预设参数发射红外线,由于在预设距离的前方有障碍物,发射出去的红外线反射回来,又由于没有太阳光照,在忽略其他外界因素影响的前提下,此时扫地机器人的红外接收模块接收的红外信号为预设距离之内的障碍物反射回来的红外信号。
[0072] 在一示例中,扫地机器人在有太阳光照,无障碍物环境下工作。红外发射模块以预设参数发射红外线,由于在预设距离的前方没有障碍物,发射出去的红外线被预设距离之外的障碍物反射回来,又由于有太阳光照,在忽略其他外界因素影响的前提下,此时扫地机器人的红外接收模块接收的红外信号为预设距离之外的障碍物反射回来的红外信号以及太阳光中的红外信号。
[0073] 在一示例中,扫地机器人在有太阳光照,有障碍物环境下工作。红外发射模块以预设参数发射红外线,由于在预设距离的前方有障碍物,发射出去的红外线反射回来,又由于有太阳光照,在忽略其他外界因素影响的前提下,此时扫地机器人的红外接收模块接收的红外信号为预设距离之内的障碍物反射回来的红外信号以及太阳光中的红外信号。
[0074] 在一示例中,扫地机器人在无太阳光照,无悬崖环境下工作。红外发射模块以预设参数发射红外线,由于在预设距离的前方没有悬崖,发射出去的红外线被地面反射回来,又由于没有太阳光照,在忽略其他外界因素影响的前提下,此时扫地机器人的红外接收模块接收的红外信号为地面反射的红外信号。
[0075] 在一示例中,扫地机器人在无太阳光照,有悬崖环境下工作。红外发射模块以预设参数发射红外线,由于在预设距离的前方有悬崖,发射出去的红外线被较远处的地面反射回来,又由于没有太阳光照,在忽略其他外界因素影响的前提下,此时扫地机器人的红外接收模块接收的红外信号为较远处地面反射回来的红外信号。
[0076] 在一示例中,扫地机器人在有太阳光照,无悬崖环境下工作。红外发射模块以预设参数发射红外线,由于在预设距离的前方没有悬崖,发射出去的红外线被地面反射回来,又由于有太阳光照,在忽略其他外界因素影响的前提下,此时扫地机器人的红外接收模块接收的红外信号为地面反射回来的红外信号以及太阳光中的红外信号。
[0077] 在一示例中,扫地机器人在有太阳光照,有悬崖环境下工作。红外发射模块以预设参数发射红外线,由于在预设距离的前方有悬崖,发射出去的红外线被较远处的地面反射回来,又由于有太阳光照,在忽略其他外界因素影响的前提下,此时扫地机器人的红外接收模块接收的红外信号为较远处地面反射回来的红外信号以及太阳光中的红外信号。
[0078] 步骤S200、将所述实时红外信号转化为数字信号,获得信号强度波形数据;
[0079] 扫地机器人在获取实时红外信号后,将实时红外信号转化为数字信号。
[0080] 在具体应用中,可以在扫地机器人中设置A/D转换模块,A/D转换就是模数转换,即把模拟信号转换为数字信号,在模数转换前,输入到A/D转换模块的信号需要经过一系列传感器把物理量转换为电压信号。
[0081] 在具体实施中,扫地机器人中的所述一系列传感器将红外信号转换为模拟电压信号,再将模拟电压信号传输至A/D转换模块,由A/D转换模块将其转换成数字信号,根据转换的数字信号得到信号强度数据。
[0082] 在一示例中,扫地机器人的红外发射模块以预设发射功率,预设发射周期发射红外信号,获取红外接收模块接收的实时红外信号,将获取的实时红外信号转化为数字信号,根据数字信号得到信号强度数据。
[0083] 以得到的信号强度数据为纵轴,以时间为横轴,绘制信号强度波形示意图,如图5和图6所示,图5和图6为扫地机器人在不同环境下工作时得到的信号强度波形图。
[0084] 需要说明的是,假设图5和图6中T0‑T1为20ms,则T0‑T6为120ms,由于预设周期很小,每段周期内波形变化也很小,可以忽略不计。此外,红外发射模块的预设发射功率要在适合扫地机器人正常工作的范围内。
[0085] 如图5所示,在无太阳无障碍物的环境下,扫地机器人的红外接收模块接收的红外信号为红外发射模块发射出去,遇到预设距离之外的障碍物反射回来的红外信号,又由于红外发射模块是以预设发射功率,预设发射周期发射红外信号,不是一直不间断地发射,由此得到图中所示的不连续的短线波形图。
[0086] 在无太阳有障碍物的环境下,扫地机器人的红外接收模块接收的红外信号为红外发射模块发射出去,遇到障碍物又反射回来的红外信号,由于红外发射模块是以预设发射功率,预设发射周期发射红外信号,由此得到图中所示的不连续的短线波形图。
[0087] 在有太阳无障碍物的环境下,扫地机器人的红外接收模块接收的红外信号为预设距离之外的障碍物反射回来的红外信号以及太阳光中的红外信号,由于在极短时间内太阳光看做是恒定的,由此得到如图所示的连续阶梯波形图。
[0088] 在有太阳有障碍物的环境下,扫地机器人的红外接收模块接收的红外信号为障碍物反射回来的红外信号以及太阳光中的红外信号,由此得到如图所示的连续阶梯波形图。
[0089] 如图6所示,在无太阳无悬崖的环境下,扫地机器人的红外接收模块接收的红外信号为地面反射回来的红外信号,又由于红外发射模块是以预设发射功率,预设发射周期发射红外信号,由此得到图中所示的不连续的短线波形图。
[0090] 在无太阳有悬崖的环境下,扫地机器人的红外接收模块接收的红外信号为红外发射模块发射出去,被较远地面反射回来的红外信号,由于红外发射模块是以预设发射功率,预设发射周期发射红外信号,由此得到图中所示的不连续的短线波形图。
[0091] 在有太阳无悬崖的环境下,扫地机器人的红外接收模块接收的红外信号为地面反射回来的红外信号以及太阳光中的红外信号,由于在极短时间内太阳光看做是恒定的,由此得到如图所示的连续阶梯波形图。
[0092] 在有太阳有悬崖的环境下,扫地机器人的红外接收模块接收的红外信号为较远地面反射回来的红外信号以及太阳光中的红外信号,由此得到如图所示的连续阶梯波形图。
[0093] 步骤S300、根据所述信号强度波形数据、所述预设发射周期以及所述预设发射功率,确定所述实时红外信号所检测的范围是否在所述机器人的活动范围内。
[0094] 在具体实施中,可以根据得到的与预设发射功率相匹配的波形图的变化情况来确定前方环境是否存在障碍物或者悬崖,以此确定所述实时红外该信号所检测的范围是否在所述机器人的活动范围内。
[0095] 可以理解的是,此处确定所述实时红外信号所检测的范围是否在所述机器人的活动范围内,即检测红外接收模块接收的实时红外信号对应的机器人的下一时刻或者后续时刻的活动范围,再判断检测到的下一时刻或者后续时刻的活动范围是否是机器人可以继续活动的范围。
[0096] 例如图5中在无太阳无障碍环境下以及有太阳无障碍环境下,图中T0‑T6时段,信号强度波形数据无明显差值。
[0097] 而在无太阳有障碍环境下以及有太阳有障碍环境下,图中T0‑T6时段,信号强度波形数据呈具有规定性的波峰出现,该波峰与预设发射功率相关。此时,相邻发射周期的信号强度波形数据差值较为明显。
[0098] 综上,在有障碍环境下,相邻发射周期的信号强度波形数据差值较为明显,在无障碍环境下,相邻发射周期的信号强度波形数据差值相对不明显。
[0099] 例如图6中,与图五中情况相反,在无太阳有悬崖环境下以及有太阳有悬崖环境下,图中T0‑T6时段,信号强度波形数据无明显差值。
[0100] 而在无太阳无悬崖环境下以及有太阳无悬崖环境下,图中T0‑T6时段,相邻发射周期的信号强度波形数据差值较为明显。
[0101] 综上,在无悬崖环境下,相邻发射发射周期的信号强度波形数据差值较为明显,在有悬崖环境下,相邻发射周期的信号强度波形数据差值相对不明显。
[0102] 综上所述,可以根据波形数据的变化情况来直接判断有无障碍物或者悬崖,比如在预设时间内,累加相邻预设周期波形数据差值的总数,再判断总数是否大于或者小于预设总数来判断是否存在障碍物或者悬崖。
[0103] 本实施例提供一种解决方案,通过将接收的实时红外信号转化为数字信号,获得信号强度波形数据,从而根据信号强度波形数据的变化来判断是否有障碍物或者悬崖,使扫地机器人无论在有无太阳光的环境下都可以正常工作。
[0104] 基于上述图2所示的实施例,提出本发明机器人控制方法第二实施例,参照图3,图3示出了本发明机器人控制方法第二实施例的流程示意图。
[0105] 本实施例中,机器人的红外发射模块向前方发射红外信号。
[0106] 步骤S310、将相邻两段发射周期的信号强度波形数据作差,得到波形数据差值;
[0107] 在一示例中,如图5所示,假设预设距离之外的障碍物反射的红外信号转化的数字信号强度为D1,预设距离之内的障碍物反射的红外信号转化的数数字信号强度为D2,太阳光对应的数字信号强度为D2,图中的D1,D2,D3,D4代表强度大小1,2,3,4,值越大,信号强度越大。
[0108] 在无太阳无障碍环境下,图中T0‑T6时段,红外接收模块接收的红外信号为预设距离之外的障碍物反射回来的红外信号,信号强度波形数据为0、1、0、1、0、1,将相邻两段发射周期的信号强度波形数据作差,即将T0‑T1段的信号强度波形数据与T1‑T2段的信号强度波形数据作差,将T1‑T2段的信号强度波形数据与T2‑T3段的信号强度波形数据作差,以此类推,得到的波形数据差值为1、1、1、1、1。
[0109] 在无太阳有障碍环境下,图中T0‑T6时段,红外接收模块接收的红外信号为预设距离之内的障碍物反射回来的红外信号,信号强度波形数据为0、2、0、2、0、2,将相邻两段发射周期的信号强度波形数据作差,得到的波形数据差值为2、2、2、2、2。
[0110] 在有太阳无障碍环境下,图中T0‑T6时段,红外接收模块接收的红外信号为预设距离之外的障碍物反射回来的红外信号以及太阳光中的红外信号,信号强度波形数据为2、3、2、3、2、3,将相邻两段发射周期的信号强度波形数据作差,得到的波形数据差值为1、1、1、1、
1。
[0111] 在有太阳有障碍环境下,图中T0‑T6时段,红外接收模块接收的红外信号为预设距离之内的障碍物反射回来的红外信号以及太阳光中的红外信号,信号强度波形数据为2、4、2、4、2、4,将相邻两段发射周期的信号强度波形数据作差,得到的波形数据差值为2、2、2、2、
2。
[0112] 步骤S320、从多个波形数据差值中筛选出与预设发射功率相对应的目标波形数据差值;
[0113] 步骤S330、统计预设时间段内目标波形数据差值的总数;
[0114] 步骤S340、判断总数是否大于或者等于第一预设统计值;
[0115] 步骤S341、若总数大于或者等于第一预设统计值,则确定前方环境存在障碍物,红外信号所检测的范围不在机器人的活动范围内,控制机器人执行转向动作;
[0116] 步骤S342、若总数小于第一预设统计值,则实时红外信号所检测的范围在机器人的活动范围内,控制机器人执行扫地动作。
[0117] 可以理解的是,在具体实施中,也可以判断相邻两段发射周期的信号强度波形数据差值是否大于或者等于第一预设值,在预设时间段内,统计大于或者等于第一预设值的次数,若该次数大于或者等于预设次数,则确定前方环境存在障碍物,同理,其他基于同一构思的判断方法皆可,此实施例以判断预设时间段内目标波形数据差值总数是否大于或者等于第一预设统计值为例进行说明。
[0118] 由于扫地机器人将实时红外信号转化为数字信号,再获得的信号强度波形数据不是百分之百准确,在具体实施中,从波形数据中筛选出与预设发射功率相对应的目标波形数据差值,即过滤有明显偏差的差值,统计预设时间段内目标波形数据差值的总数,通过判断总数是否大于或者等于预设统计值,来确定前方环境是否存在障碍物。
[0119] 在一示例中,扫地机器人的红外发射模块以预设发射功率,预设发射周期向前方发射红外信号,红外接收模块接收实时红外信号,传感器和A/D转换模块将实时红外信号转化为数字信号,根据数字信号得到信号强度数据。
[0120] 以得到的信号强度数据为纵轴,以时间为横轴,绘制信号强度波形示意图,得到信号强度波形数据。
[0121] 将相邻两段发射周期的信号强度波形数据作差,得到波形数据差值。
[0122] 与预设发射功率值相匹配的波形数据差值为目标波形数据差值,统计预设时间段内的目标波形数据差值的总数,若总数大于或者等于第一预设统计值,则确定前方环境存在障碍物,实时红外信号所检测的范围不在机器人的活动范围内,控制机器人执行转向动作,避开障碍物。
[0123] 在一示例中,扫地机器人的红外发射模块以预设发射功率p,预设发射周期20ms发射红外信号,红外接收模块接收实时红外信号,传感器和A/D转换模块将实时红外信号转化为数字信号,根据数字信号得到信号强度数据。
[0124] 以得到的信号强度数据为纵轴,以时间为横轴,绘制信号强度波形示意图,得到信号强度波形数据。
[0125] 将相邻两段发射周期的信号强度波形数据作差,得到波形数据差值。与预设发射功率值相匹配的波形数据差值为目标波形数据差值,统计预设时间段2s内的目标波形数据差值的总数。
[0126] 如图五所示,在无太阳无障碍环境下和有太阳无障碍环境下,目标波形数据差值为1。在无太阳有障碍环境下和有太阳有障碍环境下,目标波形数据差值为2。
[0127] 若预设时间段为2s,第一预设统计值为170,则以20ms为发射周期,在2s内,可以得到99个波形数据差值。
[0128] 假设在无太阳无障碍环境下有96个目标波形数据差值,则预设时间2s内目标波形数据差值总数为96。
[0129] 假设在有太阳无障碍环境下有97个目标波形数据差值,则预设时间2s内目标波形数据差值总数为97。
[0130] 假设在无太阳有障碍环境下有95个目标波形数据差值,则预设时间2s内目标波形数据差值总数为190。
[0131] 假设在有太阳有障碍环境下有96个目标波形数据差值,则预设时间2s内目标波形数据差值总数为192。
[0132] 上述差值总数中的190和192大于第一预设统计值170,确定总数190和192对应的前方环境存在障碍物,实时红外信号所检测的范围不在机器人的活动范围内,控制机器人执行转向动作。
[0133] 上述差值总数中的96和97小于第一预设统计值170,确定总数96和97对应的前方环境不存在障碍物,实时红外信号所检测的范围在所述机器人的活动范围内,控制机器人执行扫地动作。
[0134] 本实施例通过扫地机器人的红外发射模块向前方发射红外信号,将红外接受模块接受的红外信号转化为数字信号,获得信号强度波形数据,将相邻两段发射周期的信号强度波形数据作差,得到波形数据差值,统计目标波形数据差值的总数,通过判断目标波形数据差值的总数是否大于或者等于第一预设统计值来判断前方环境是否存在障碍物,从而实现扫地机器在太阳光环境下也能正常监测障碍物。
[0135] 基于上述图3所示的实施例,提出本发明机器人控制方法第三实施例,参照图4,图4示出了本发明机器人控制方法第三实施例的流程示意图。
[0136] 本实施例中,机器人的红外发射模块向地面发射红外信号。
[0137] 步骤S310、将相邻两段发射周期的信号强度波形数据作差,得到波形数据差值;
[0138] 在一示例中,如图6所示,假设有悬崖时较远处地面反射的红外信号转化的数字信号强度为D1,无悬崖时地面反射的红外信号转化的数数字信号强度为D2,太阳光对应的数字信号强度为D2,图中的D1,D2,D3,D4代表强度大小1,2,3,4,值越大,信号强度越大。
[0139] 在无太阳无悬崖环境下,图中T0‑T6时段,红外接收模块接收的红外信号为地面反射回来的红外信号,信号强度波形数据为0、2、0、2、0、2,将相邻两段发射周期的信号强度波形数据作差,即将T0‑T1段的信号强度波形数据与T1‑T2段的信号强度波形数据作差,将T1‑T2段的信号强度波形数据与T2‑T3段的信号强度波形数据作差,以此类推,得到的波形数据差值为2、2、2、2、2。
[0140] 在无太阳有悬崖环境下,图中T0‑T6时段,红外接收模块接收的红外信号为较远处地面反射回来的红外信号,信号强度波形数据为0、1、0、1、0、1,将相邻两段发射周期的信号强度波形数据作差,得到的波形数据差值为1、1、1、1、1。
[0141] 在有太阳无悬崖环境下,图中T0‑T6时段,红外接收模块接收的红外信号为地面反射的红外信号以及太阳光中的红外信号,信号强度波形数据为2、4、2、4、2、4,将相邻两段发射周期的信号强度波形数据作差,得到的波形数据差值为2、2、2、2、2。
[0142] 在有太阳有悬崖环境下,图中T0‑T6时段,红外接收模块接收的红外信号为较远处地面反射回来的红外信号以及太阳光中的红外信号,信号强度波形数据为2、3、2、3、2、3,将相邻两段发射周期的信号强度波形数据作差,得到的波形数据差值为1、1、1、1、1。
[0143] 步骤S320、从多个波形数据差值中筛选出与预设发射功率相对应的目标波形数据差值;
[0144] 步骤S330、统计预设时间段内目标波形数据差值的总数;
[0145] 步骤S350、判断总数是否小于或者等于第二预设统计值;
[0146] 步骤S351、若总数小于或者等于第二预设统计值,则确定前方环境存在悬崖,实时红外信号所检测的范围不在机器人的活动范围内,控制机器人执行转向动作。
[0147] 可以理解的是,在具体实施中,也可以判断相邻两段发射周期的信号强度波形数据差值是否小于或者等于第二预设值,在预设时间段内,统计小于或者等于第二预设值的次数,若该次数小于或者等于预设次数,则确定前方环境存在悬崖,同理,其他基于同一构思的判断方法皆可,此实施例以判断预设时间段内目标波形数据差值总数是否小于或者等于第二预设统计值为例进行说明。
[0148] 由于扫地机器人将实时红外信号转化为数字信号,再获得的信号强度波形数据不是百分之百准确,在具体实施中,从波形数据中筛选出与预设发射功率相对应的目标波形数据差值,统计预设时间段内目标波形数据差值的总数,通过判断总数是否小于或者等于第二预设统计值,来确定前方环境是否存在悬崖。
[0149] 在一示例中,扫地机器人的红外发射模块以预设发射功率,预设发射周期发射红外信号,红外接收模块接收实时红外信号,传感器和A/D转换模块将实时红外信号转化为数字信号,根据数字信号得到信号强度数据。
[0150] 以得到的信号强度数据为纵轴,以时间为横轴,绘制信号强度波形示意图,得到信号强度波形数据。
[0151] 将相邻两段发射周期的信号强度波形数据作差,得到波形数据差值。
[0152] 与预设发射功率值相匹配的波形数据差值为目标波形数据差值,统计预设时间段内的目标波形数据差值的总数,若总数小于或者等于第二预设统计值,则确定前方环境存在悬崖,实时红外信号所检测的范围不在机器人的活动范围内,控制机器人执行转向动作,避开悬崖。
[0153] 在一示例中,扫地机器人的红外发射模块以预设发射功率p,预设发射周期20ms发射红外信号,红外接收模块接收实时红外信号,传感器和A/D转换模块将实时红外信号转化为数字信号,根据数字信号得到信号强度数据。
[0154] 以得到的信号强度数据为纵轴,以时间为横轴,绘制信号强度波形示意图,得到信号强度波形数据。
[0155] 将相邻两段发射周期的信号强度波形数据作差,得到波形数据差值。与预设发射功率值相匹配的波形数据差值为目标波形数据差值,统计预设时间段2s内的目标波形数据差值的总数。
[0156] 如图六所示,在无太阳无悬崖环境下和有太阳无悬崖环境下,目标波形数据差值为2。在无太阳有悬崖环境下和有太阳有悬崖环境下,目标波形数据差值为1。
[0157] 若预设时间段为2s,第二预设统计值为130,则以20ms为发射周期,在2s内,可以得到99个波形数据差值。
[0158] 假设在无太阳无悬崖环境下有94个目标波形数据差值,则预设时间2s内目标波形数据差值总数为188。
[0159] 假设在有太阳无悬崖环境下有96个目标波形数据差值,则预设时间2s内目标波形数据差值总数为192。
[0160] 假设在无太阳有悬崖环境下有95个目标波形数据差值,则预设时间2s内目标波形数据差值总数为95。
[0161] 假设在有太阳有悬崖环境下有96个目标波形数据差值,则预设时间2s内目标波形数据差值总数为96。
[0162] 上述差值总数中的95和96小于第二预设统计值130,确定总数95和96对应的环境存在悬崖,实时红外信号所检测的范围不在机器人的活动范围内,控制机器人执行转向动作。
[0163] 本实施例通过扫地机器人的红外发射模块向地面发射红外信号,将红外接收模块接收的红外信号转化为数字信号,获得信号强度波形数据,将相邻两段发射周期的信号强度波形数据作差,得到波形数据差值,统计目标波形数据差值的总数,通过判断目标波形数据差值的总数是否小于或者等于第二预设统计值来判断前方环境是否存在悬崖,从而实现扫地机器在太阳光环境下也能正常监测悬崖。
[0164] 此外,基于同一发明构思,参阅图6,本发明实施例还提出一种机器人控制装置,配置于扫地机器人,所述扫地机器人具有红外发射模块与红外接收模块,所述红外发射模块以预设参数发射红外线,所述预设参数包括预设发射周期和预设发射功率;
[0165] 所述机器人控制装置包括:
[0166] 红外获取模块,用于获取所述红外接收模块接收的实时红外信号;
[0167] 信号转化模块,用于将所述实时红外信号转化为数字信号,获得信号强度波形数据;
[0168] 数据处理模块,用于根据所述信号强度波形数据、所述预设发射周期以及所述预设发射功率,确定所述实时红外信号所检测的范围是否在所述机器人的活动范围内。
[0169] 本机器人控制装置的其他实施方式和实施例参照上述方法实施例,此处不再赘述。
[0170] 此外,本发明实施例还提出一种计算机存储介质,存储介质上存储有机器人控制程序,机器人控制程序被处理器执行时实现如上文的机器人控制方法的步骤。因此,这里将不再进行赘述。另外,对采用相同方法的有益效果描述,也不再进行赘述。对于本申请所涉及的计算机可读存储介质实施例中未披露的技术细节,请参照本申请方法实施例的描述。确定为示例,程序指令可被部署为在一个计算设备上执行,或者在位于一个地点的多个计算设备上执行,又或者,在分布在多个地点且通过通信网络互连的多个计算设备上执行。
[0171] 本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,上述的程序可存储于一计算机可读取存储介质中,该程序在执行时,可包括如上述各方法的实施例的流程。其中,上述的存储介质可为磁碟、光盘、只读存储记忆体(Read‑Only Memory,ROM)或随机存储记忆体(Random AccessMemory,RAM)等。
[0172] 另外需说明的是,以上所描述的装置实施例仅仅是示意性的,其中作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。另外,本发明提供的装置实施例附图中,模块之间的连接关系表示它们之间具有通信连接,具体可以实现为一条或多条通信总线或信号线。本领域普通技术人员在不付出创造性劳动的情况下,即可以理解并实施。
[0173] 通过以上的实施方式的描述,所属领域的技术人员可以清楚地了解到本发明可借助软件加必需的通用硬件的方式来实现,当然也可以通过专用硬件包括专用集成电路、专用CPU、专用存储器、专用元器件等来实现。一般情况下,凡由计算机程序完成的功能都可以很容易地用相应的硬件来实现,而且,用来实现同一功能的具体硬件结构也可以是多种多样的,例如模拟电路、数字电路或专用电路等。但是,对本发明而言更多情况下软件程序实现是更佳的实施方式。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在可读取的存储介质中,如计算机的软盘、U盘、移动硬盘只读存储器(ROM,Read‑OnlyMemory)、随机存取存储器(RAM,RandomAccessMemory)、磁碟或者光盘等,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例的方法。
[0174] 以上仅为本发明的优选实施例,并非因此限制本发明的专利范围,凡是利用本发明说明书及附图内容所作的等效结构或等效流程变换,或直接或间接运用在其他相关的技术领域,均同理包括在本发明的专利保护范围内。
QQ群二维码
意见反馈