1.本技术涉及智能机器人领域,尤其涉及一种用于检测机器人的传感器是否失效的方法、一种控制机器人的方法、一种机器人以及一种计算机可读存储介质。
背景技术:2.随着计算机技术、传感器技术以及人工智能等技术的快速发展,机器人技术也变得日趋成熟,而其中的移动机器人类型应用最为广泛,在餐饮、酒店、商场、医院等众多的领域中扮演着越来越重要的角色,其中传感器在机器人的控制中起了非常重要的作用,正是因为有了传感器,机器人才具备了类似人类的知觉功能和反应能力。
3.机器人具有各种各样的传感器,比如激光雷达、红外线传感器、双目视觉摄像头、超声波传感器等等,如果传感器失效,则会影响机器人的正常工作。例如对于送餐机器人来讲,如果传感器失效,将导致机器人定位不准,甚至无法完成配送任务,影响客户体验,更严重的会对人身安全造成威胁,因此检测传感器是否失效显得尤为重要。但现有技术中并未有泛用性很高的传感器是否失效的检测方法,仅有的检测方法多为检测传感器是否在线或者是否定时输出数据。这种检测方式并未从数据的有效性和准确性等方面进行比较,从而当传感器的数据因某些原因出现误差时无法获得及时处理或报警的机会。
4.背景技术部分的内容仅仅是公开发明人所知晓的技术,并不当然代表本领域的现有技术。
技术实现要素:5.有鉴于现有技术的一个或多个缺陷,本发明提供一种用于检测机器人的传感器是否失效的方法,其中所述机器人包括至少一个传感器,所述方法包括:
6.获取所述传感器的输出数据;
7.对所述传感器的输出数据进行预处理;
8.将不同传感器的对应同一区域的输出数据进行相互校核;和
9.根据所述校核的结果,确定所述传感器中失效的传感器。
10.根据本发明的一个方面,其中所述传感器包括激光雷达、红外线传感器、超声波传感器、双目视觉摄像头中至少一个。
11.根据本发明的一个方面,其中所述不同传感器包括同类别的不同传感器和/或不同类别的不同传感器。
12.根据本发明的一个方面,其中所述对传感器的输出数据进行预处理的步骤包括以下至少其中一个步骤:
13.判断所述传感器在预设点上是否具有有效数据;
14.判断所述传感器的输出数据是否落入预设区间。
15.根据本发明的一个方面,其中所述预设点包括:所述传感器的视场区域的边缘像素、中心像素和/或固定角度的像素中至少一个。
16.根据本发明的一个方面,其中所述判断传感器的输出数据是否落入预设区间的步骤包括:
17.判断所述传感器在一定时间段内的输出数据中是否有预定比例的数据落入所述预设区间。
18.根据本发明的一个方面,其中所述将不同传感器的对应同一区域的输出数据进行相互校核的步骤包括以下至少其中一个步骤:
19.比对所述不同传感器的输出数据在同一位置的差别;
20.比对所述不同传感器的输出的障碍物数据的差别。
21.根据本发明的一个方面,其中所述确定一个或者多个传感器中失效的传感器的步骤包括:
22.当所述不同传感器在同一位置的输出数据的差别大于预设阈值时,则检测所述不同传感器的更多的同一位置的输出数据,进而确定失效的传感器;
23.当所述不同传感器在同一位置的输出数据的障碍物的差别大于预设阈值时,则检测所述不同传感器的更多的同一位置的障碍物的差别,进而确定失效的传感器。
24.本发明还提供一种用于控制机器人的方法,其中所述机器人包括至少一个传感器,用于探测所述机器人周围环境,所述方法包括:
25.通过所述传感器采集所述机器人的周围环境并分别获得所述传感器的输出数据;
26.通过如上所述的方法,检测所述传感器中是否存在失效的传感器;将失效的传感器的输出数据去除;和
27.根据未失效的传感器的输出数据控制所述机器人。
28.根据本发明的一个方面,还包括:根据所述失效传感器的类型执行预设的应对操作,所述应对操作包括:重启机器人、发出报警和上报失效信息中的一种或多种。
29.本发明还涉及一种机器人,包括:
30.主体,具有行走机构;
31.至少一个传感器,所述传感器设置在所述主体上,用于探测所述机器人周围环境;
32.控制器,所述控制器与所述传感器和所述行走机构耦合,配置成执行如上所述的方法,以控制所述行走机构。
33.本发明还涉及一种计算机可读存储介质,包括存储于其上的计算机可执行指令,所述可执行指令在被处理器执行时实施如上所述的方法。
34.采用本发明的技术方案,可以检测出失效的传感器,使机器人定位更加准确,减少事故的发生,提高机器人的工作效率以及客户体验。
附图说明
35.附图用来提供对本发明的进一步理解,并且构成说明书的一部分,与本发明的实施例一起用于解释本发明,并不构成对本发明的限制。在附图中:
36.图1示出了本发明一个实施例的检测机器人的传感器是否失效的方法的流程图;
37.图2a~2c示出了本发明的一个实施例的传感器的视场区域的边缘像素、中心像素、固定角度的像素的示意图;
38.图3示出了本发明的一个实施例的同类别的不同传感器之间进行相互校核的示意
图;
39.图4a~4b示出了本发明的一个实施例的同类别的不同传感器之间进行相互校核的示意图;
40.图5示出了本发明的一个实施例的一种用于控制机器人的方法的流程图;和
41.图6示出了本发明的一个实施例的机器人的示意图。
具体实施方式
42.在下文中,仅简单地描述了某些示例性实施例。正如本领域技术人员可认识到的那样,在不脱离本发明的精神或范围的情况下,可通过各种不同方式修改所描述的实施例。因此,附图和描述被认为本质上是示例性的而非限制性的。
43.在本发明的描述中,需要理解的是,术语"中心"、"纵向"、"横向"、"长度"、"宽度"、"厚度"、"上"、"下"、"前"、"后"、"左"、"右"、"坚直"、"水平"、"顶"、"底"、"内"、"外"、"顺时针"、"逆时针"等指示的方位或位置关系为基于附图所示的方位或位置关系,仅是为了便于描述本发明和简化描述,而不是指示或暗示所指的装置或元件必须具有特定的方位、以特定的方位构造和操作,因此不能理解为对本发明的限制。此外,术语"第一"、"第二"仅用于描述目的,而不能理解为指示或暗示相对重要性或者隐含指明所指示的技术特征的数量。由此,限定有"第一"、"第二"的特征可以明示或者隐含地包括一个或者更多个所述特征。在本发明的描述中,"多个"的含义是两个或两个以上,除非另有明确具体的限定。
44.在本发明的描述中,需要说明的是,除非另有明确的规定和限定,术语"安装"、"相连"、"连接"应做广义理解,例如,可以是固定连接,也可以是可拆卸连接,或一体地连接:可以是机械连接,也可以是电连接或可以相互通讯;可以是直接相连,也可以通过中间媒介间接相连,可以是两个元件内部的连通或两个元件的相互作用关系。对于本领域的普通技术人员而言,可以根据具体情况理解上述术语在本发明中的具体含义。
45.在本发明中,除非另有明确的规定和限定,第一特征在第二特征之"上"或之"下"可以包括第一和第二特征直接接触,也可以包括第一和第二特征不是直接接触而是通过它们之间的另外的特征接触。而且,第一特征在第二特征"之上"、"上方"和"上面"包括第一特征在第二特征正上方和斜上方,或仅仅表示第一特征水平高度高于第二特征。第一特征在第二特征"之下"、"下方"和"下面"包括第一特征在第二特征正上方和斜上方,或仅仅表示第一特征水平高度小于第二特征。
46.下文的公开提供了许多不同的实施方式或例子用来实现本发明的不同结构。为了简化本发明的公开,下文中对特定例子的部件和设置进行描述。当然,它们仅仅为示例,并且目的不在于限制本发明。此外,本发明可以在不同例子中重复参考数字和/或参考字母,这种重复是为了简化和清楚的目的,其本身不指示所讨论各种实施方式和/或设置之间的关系。此外,本发明提供了的各种特定的工艺和材料的例子,但是本领域普通技术人员可以意识到其他工艺的应用和/或其他材料的使用。
47.以下结合附图对本发明的优选实施例进行说明,应当理解,此处所描述的优选实施例仅用于说明和解释本发明,并不用于限定本发明。
48.图1示出了检测机器人的传感器是否失效的方法100的流程图,所述方法100包括步骤s101-s104,下面对方法100的各个步骤进行详细描述。
49.在步骤s101中,获取传感器的输出数据。所述传感器包括一个或多个同类别的传感器和/或不同类别的传感器,所述传感器进一步可包括激光雷达、红外线传感器、超声波传感器、双目视觉摄像头中至少一个。机器人通过安装的传感器感知周围环境,具体的,机器人的传感器以自身为中心,扫描周围环境,并将获取的数据上传至中心服务器。可替换的,也可以将获取的数据上传至本地控制装置。应理解,前面所述只是举例说明,并不构成对本发明的限制。
50.在步骤s102中,对传感器的输出数据进行预处理。其中所述步骤s102包括以下至少其中一个步骤:
51.s102-1:判断所述传感器在预设点上是否具有有效数据;
52.s102-2:判断所述传感器的输出数据是否落入预设区间。
53.在步骤s102-1中,判断传感器在预设点上是否具有有效数据。所述预设点包括:传感器的视场区域的边缘像素、中心像素和/或固定角度的像素中至少一个。所述视场区域指得是机器人的传感器能够探测到的范围。根据本发明的一个实施例,参考图2a,由于传感器的视场区域的边缘部分的数据相对来说更容易丢失或者畸变,因此可通过检测边缘像素的数据是否有效,来判断传感器的数据是否有效,具体的,可以检测边缘像素的灰度值(或深度值)。根据本发明的一个实施例,参考图2b,由于传感器的视场区域的中心部分的数据相对来说最完备和最准确,也可通过检测中心像素的数据是否有效,来判断传感器的数据是否有效,具体的,可以检测中心像素的灰度值(或深度值)。根据本发明的一个实施例,参考图2c,还可以通过检测激光在固定θ角时的数据是否有效,来判断传感器的数据是否有效,具体的,可以检测激光在固定θ角时的像素的灰度值(或深度值),本发明不限制θ的具体角度。以上三种预设点既可以单独检测,也可以任意几种组合起来综合检测,优选的,三种预设点综合检测,本发明不限制预设点的数量和类型。应理解,上述实施例只是举例说明,并不构成对本发明的限制。
54.在步骤s102-2中,判断传感器的输出数据是否落入预设区间。具体的,判断机器人的传感器在一定时间段内的输出数据中是否有预定比例的数据落入预设区间,如果所述输出数据中有预定比例的数据落入预设区间,则认为传感器失效。根据本发明的一个实施例,机器人的某一传感器在一定时间段内获取输出10万个数据,在这10万个数据中,有9万个数据都是0,也就是说,数据为0的比例达到90%,预设的区间例如60%~95%,说明此传感器输出的数据大多数都不可用,可认为此传感器失效。此外,还可以判断传感器在一定时间段内同一位置的数据变化。具体的,根据本发明的一个实施例,获取机器人的某一传感器在一定时间段内在同一位置输出的所有数据,所述同一位置可以是传感器视场范围内的任一位置,优选的,为传感器的视场区域的边缘、中心和/或固定角度的位置。如果传感器的视场区域的同一位置的数据在一定时间段内出现大范围波动,例如变化量达到50%,则可认为传感器失效。应理解,上述实施例只是举例说明,并不构成对本发明的限制。
55.在步骤s102中,对传感器的输出数据进行预处理。步骤s102包括步骤s102-1、步骤s102-2中至少一个。对传感器的输出数据进行预处理的目的在于,让传感器本身先进行初步自检,初步判断传感器是否失效。当然,要想比较精准地确定传感器是否失效,还需要传感器之间相互校核,下面具体描述。
56.在步骤s103中,将不同传感器对应同一区域的输出数据进行相互校核。所述不同
传感器包括同类别的不同传感器和/或不同类别的不同传感器。在步骤s103中,可以同类别的不同传感器之间相互校核,也可以不同类别的不同传感器之间进行相互校核,进行相互校核的传感器的数量至少为两个。其中所述步骤s103包括以下至少其中一个步骤:
57.s103-1:比对所述不同传感器的输出数据在同一位置的差别;
58.s103-2:比对所述不同传感器的输出的障碍物数据的差别。
59.下面具体描述。
60.在步骤s103-1中,比对所述不同传感器的输出数据在同一位置的差别。
61.图3示出了同类别的不同传感器之间进行相互校核的示意图。根据本发明的一个实施例,对于激光雷达,可以将多个激光雷达对同一位置障碍物的探测结果进行比对。参考图3,激光雷达a、激光雷达b、激光雷达c对同一障碍物测得的距离分别为d1、d2和d3,将所述距离d1、d2和d3进行比对。应理解,本实施例只是以3个激光雷达为例说明,并不构成对本发明的限制。根据本发明的一个实施例,对于超声波传感器,可以将多个超声波传感器对同一障碍物测得的距离进行比对。根据本发明的一个实施例,对于红外线传感器,可以将多个红外线传感器对同一障碍物测得的距离进行比对;此外还可以将多个红外传感器测得的同一位置的温度进行比对。
62.根据本发明的一个实施例,例如双目视觉摄像头,可将多个双目摄像头在同一时刻在同一位置的输出数据进行比对,优选的,可以比对在同一时刻、同一预设点采集的图像的像素的深度值;此外,还可以将多个双目摄像头在一段时间内同一位置的输出数据进行比对。应理解,上述实施例只是举例说明,并不构成对本发明的限制。
63.对于不同类别的不同传感器,根据本发明的一个实施例,例如激光雷达和红外传感器,激光雷达和红外传感器在同一位置障碍物测得的距离分别为d4和d5,可将所述距离d4和d5进行比对。应理解,本实施例只是举例说明,并不构成对本发明的限制。根据本发明的一个实施例,对于红外传感器和超声波传感器,可将红外传感器和超声波传感器在同一位置测得的距离进行比对。根据本发明的一个实施例,可将超声波传感器和激光雷达在同一位置测得的距离进行比对。根据本发明的一个实施例,可将激光雷达和双目视觉摄像头测得的同一障碍物的高度进行比对。应理解,上述实施例只是举例说明,并不构成对本发明的限制。
64.在步骤s103-2中,比对不同传感器的输出的障碍物数据的差别。
65.图4示出了同类别的不同传感器之间进行相互校核的示意图。根据本发明的一个实施例,对于激光雷达,可将多个激光雷达在对应同一区域探测生成的点云数据进行比对,具体的,可比对点云数据呈现的轮廓或形状。根据本发明的一个实施例,对于双目视觉摄像头,可将多个双目视觉摄像头在对应同一区域拍摄的图像进行对比,具体的,可对比是否有障碍物,是否为同一障碍物等等。应理解,上述实施例只是举例说明,并不构成对本发明的限制。
66.对于不同类别的不同传感器,根据本发明的一个实施例,例如激光雷达和双目视觉摄像头,可将激光雷达扫描探测生成的点云数据呈现的轮廓或形状与双目视觉摄像头在对应同一区域拍摄的图像进行比对。应理解,上述实施例只是举例说明,并不构成对本发明的限制。
67.在步骤s104中,确定一个或多个传感器中失效的传感器。所述步骤包括:当所述不
同传感器在同一位置的输出数据的差别大于预设阈值时,则检测所述不同传感器的更多的同一位置的输出数据,进而确定失效的传感器。
68.根据本发明的一个实施例,对于激光雷达,可以将多个激光雷达测得的同一位置的距离进行比对。参考图3,激光雷达a、激光雷达b、激光雷达c测得的同一位置的距离分别为d1、d2和d3,将所述距离d1、d2和d3进行比对,并计算任意两者之间的差值,将所述差值分别与预设的阈值比对,如果所述差值不大于预设阈值(例如15%),可认为激光雷达a、激光雷达b以及激光雷达c均处于正常工作状态。具体的,例如d1与d2之间的差值为10%,d1与d3之间的差值为11%,d2与d3之间的差值为8%,任意两者之间的差值均小于预设的阈值(15%),可认为激光雷达a、激光雷达b以及激光雷达c均处于正常工作状态。反之,如果所述差值大于预设阈值,例如d1和d2之间的差值为16%,d1和d3之间的差值为17%,d2和d3之间的差值为12%,即可认为激光雷达a失效。也就是说,可通过更多的传感器检测同一位置的数据从而确定失效的传感器。同样可替换的,也可以检测更多的同一位置的数据,从而确定失效的传感器。同理,对于超声波传感器、红外传感器等用于测距时,都可以按照上述方法进行比对,进而确定失效的传感器。应理解,上述实施例只是举例说明,并不构成对本发明的限制。
69.根据本发明的一个实施例,当红外传感器用于测温时,可将多个红外传感器测得的同一位置的温度进行比对,分别计算差值,将所有差值中最大的差值与预设的阈值比对,如果所述最大的差值不大于预设的阈值,可认为所述多个红外传感器都处于正常工作状态。反之,如果所述最大的差值大于预设的阈值,可扩大检测范围,检测更多的同一位置的温度,直至确定失效的传感器。应理解,上述实施例只是举例说明,并不构成对本发明的限制。
70.根据本发明的一个实施例,可将多个双目视觉摄像头对应同一区域的中心像素两两比对,例如比对所述中心像素在同一时刻的深度值的差别,当所述差别大于预设阈值(例如10%)时,筛选出所述差别大于预设阈值的所有双目视觉摄像头,进一步比对对应同一区域的中心像素在一定时间段内的深度值的变化。当所述深度值的变化大于预设的阈值(例如5%)时,则认为对应传感器失效。
71.根据本发明的一个实施例,还可以比对多个双目视觉摄像头对应同一区域的同一边缘像素在同一时刻的输出数据的差别,当所述差别大于预设阈值(例如15%)时,扩大检测范围,检测更多的同一边缘像素在同一时刻的差别,直到确定失效的传感器。同样的,也可以比对多个双目视觉摄像头对应同一区域的同一边缘像素在一定时间段内的深度值的变化,当所述深度值的变化大于预设的阈值(例如5%)时,则认为对应传感器失效。应理解,上述实施例只是举例说明,并不构成对本发明的限制。
72.在步骤s104中,确定一个或多个传感器中失效的传感器。所述步骤还包括:当不同传感器在同一位置的输出数据的障碍物的差别大于预设阈值时,则检测所述不同传感器的更多的同一位置的障碍物的差别,进而确定失效的传感器。
73.根据本发明的一个实施例,可将多个激光雷达在对应同一区域探测生成的点云数据进行比对,具体的,可比对点云数据呈现的轮廓或形状。具体的,参考图4a,激光雷达1扫描得到一个苹果,激光雷达2扫描得到一本书,激光雷达3扫描得到一本书。由此可见,激光雷达2和激光雷达3探测的障碍物相同,而激光雷达1与激光雷达2、激光雷达3探测的障碍物
都不同,则可认为激光雷达1失效。应理解,上述实施例只是举例说明,并不构成对本发明的限制。
74.根据本发明的一个实施例,对于双目视觉摄像头,可将多个双目视觉摄像头在对应同一区域拍摄的图像进行对比,具体的,可对比是否有障碍物,是否为同一障碍物等等。参考图4b,例如双目视觉摄像头1拍摄到一幅山水画,而双目视觉摄像头2拍摄的同一区域的图像中并没有山水画(虚线示),而激光雷达探测到一幅山水画。由此可见,双目视觉摄像头1和激光雷达探测到的障碍物相同,而双目视觉摄像头2采集的图像与双目视觉摄像头1和激光雷达探测的障碍物都不同,则可认为双目视觉摄像头2失效。应理解,上述实施例只是举例说明,并不构成对本发明的限制。
75.在步骤s104中,确定一个或多个传感器中失效的传感器。具体的,还包括:当不同传感器在同一位置的输出的障碍物数据的差别大于预设阈值时,则检测更多的同一位置的障碍物的差别,进而确定失效的传感器。具体的,可以比对不同传感器在同一位置的输出的障碍物数据的差别,当所述差别大于预设阈值时,则检测更多的同一位置的障碍物的差别,进而确定失效的传感器。根据本发明的一个实施例,例如将多个双目摄像头在同一位置拍摄的图像进行比对,当所述图像的差别大于预设阈值(例如30%)时,则比对在更多同一位置拍摄的图像的差别,尝试进一步判断失效的传感器。应理解,上述实施例只是举例说明,并不构成对本发明的限制。
76.当检测出失效的传感器时,可选的,将失效的传感器的输出数据去除,根据未失效的机器人的输出数据控制机器人的工作。此外,还可根据失效传感器的类型执行预设的应对操作,包括:重启机器人、发出报警和上报失效信息中的一种或多种。可选的,当根据上述方法确定失效的传感器后,可将相关失效的传感器检修或替换成工作正常的传感器。可选的,机器人在闲置状态下能够定期自动检测传感器是否失效,用户或者研发技术人员还根据需求自行设置。
77.本发明还涉及一种用于控制机器人的方法。参考图5,图5示出了用于控制机器人的方法200的流程图。其中所述机器人包括至少一个传感器,用于探测所述机器人周围环境,所述方法200包括:s201:通过传感器采集机器人的周围环境并分别获得所述传感器的输出数据;s202:通过前面所述的方法,检测所述传感器中是否存在失效的传感器;s203:将失效的传感器的输出数据去除;和s204:根据未失效的传感器的输出数据控制所述机器人。
78.所述方法200还包括:根据所述失效传感器的类型执行预设的应对操作,所述应对操作包括:重启机器人、发出报警和上报失效信息中的一种或多种。应理解,上述应对操作只是示例性的说明,并不构成对本发明的限制。
79.本发明还涉及一种机器人300,参考图6,包括:主体301,具有行走机构;至少一个传感器302,所述传感器设置在所述主体301上,用于探测所述机器人周围环境;控制器303,所述控制器303与所述传感器302和所述行走机构耦合,配置成执行如上所述的方法,以控制所述行走机构。
80.本发明还涉及一种计算机可读存储介质,包括存储于其上的计算机可执行指令,所述可执行指令在被处理器执行时实施如上所述的方法100以及方法200。其中所述计算机可读存储介质,包括但不限于任何类型的磁盘,包括软盘、光盘、cd-rom、磁光盘、只读存储器(rom)、随机存取存储器(ram)、电可编程只读存储器(eprom)、电可擦除可编程只读存储
器(eeprom)、铁电随机存取存储器(fram)、磁性或光学卡,或任何其他类型的适合于存储电子指令并且能够联接到计算机系统总线上的介质。
81.采用本发明的技术方案,可以检测出失效的传感器,使机器人定位更加准确,减少事故的发生,提高机器人的工作效率以及客户体验。
82.最后应说明的是:以上所述仅为本发明的优选实施例而已,并不用于限制本发明,尽管参照前述实施例对本发明进行了详细的说明,对于本领域的技术人员来说,其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换。凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。