一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

扫盘控制方法、装置、清扫车及介质与流程

2022-08-03 00:14:43 来源:中国专利 TAG:


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.在一些实施例中,轨迹调整单元中,根据所得到的多个间隔距离,从多个扫盘轨迹点中确定目标轨迹点,包括:
37.若间隔距离包括纵向位置差和横向位置差,则从多个扫盘轨迹点中,选取对应纵向位置差和横向位置差满足预设差距条件的扫盘轨迹点,作为目标轨迹点;
38.其中,纵向位置差为在清扫车对应的车辆坐标系下的纵向坐标的差值,横向位置差为在车辆坐标系下的横向坐标的差值。
39.在一些实施例中,控制执行单元,具体用于:
40.根据新扫盘伸缩轨迹,确定目标扫盘在各个时刻的伸缩变化量;
41.根据目标扫盘在各个时刻的伸缩变化量,确定各个时刻分别对应的扫盘伸缩调整指令和指令发出时间;
42.按照各个时刻分别对应的扫盘伸缩调整指令和指令发出时间,控制目标扫盘执行伸缩动作。
43.在一些实施例中,控制执行单元中,指令发出时间通过如下方式确定得到:
44.根据目标时刻的伸缩变化量和预先设定的变化量与补偿时长的映射关系,确定目标时刻的指令补偿时长,以及根据目标时刻对应的时间和指令补偿时长,确定指令发出时间;
45.其中,目标时刻为与指令发出时间相对应的时刻。
46.在一些实施例中,轨迹获取单元,具体用于:
47.获取待行驶路段的目标路缘的路缘线,以及获取清扫车在未来预设时长内的车辆运行轨迹,其中,目标路缘与目标扫盘相对应;
48.根据路缘线和车辆运行轨迹,生成扫盘伸缩轨迹。
49.第三方面,本技术实施例提供了一种清扫车,包括存储器、处理器以及存储在存储器中并可在处理器上运行的计算机程序,处理器执行计算机程序时实现上述任一项扫盘控制方法的步骤。
50.第四方面,本技术实施例提供了一种计算机可读存储介质,计算机可读存储介质存储有计算机程序,上述计算机程序被处理器执行时实现上述任一项扫盘控制方法的步骤。
51.第五方面,本技术实施例提供了一种计算机程序产品,当计算机程序产品在清扫车上运行时,使得清扫车执行上述任一项扫盘控制方法。
52.本技术实施例与相关技术相比存在的有益效果是:清扫车上的扫盘可自动伸缩,可以在清扫车与路缘存有间距的情况下,通过伸缩扫盘进一步扩大清扫范围,有助于提高清扫覆盖率。另外,在待行驶路段上存在障碍物时,采用障碍物的物体类型信息和轮廓位置信息,对扫盘伸缩轨迹进行调整,以实现使用新扫盘伸缩轨迹,对扫盘进行伸缩控制,可以实现自动对清扫车上扫盘的扫盘伸缩轨迹进行调整,有助于实现更准确地对扫盘进行自动伸缩控制。在清扫车为有人驾驶的情况下,由于无需驾驶员参与扫盘控制问题,驾驶员可以专注开车,有助于保障驾驶安全。
53.可以理解的是,上述第二方面至第五方面的有益效果可以参见上述第一方面中的相关描述,在此不再赘述。
附图说明
54.为了更清楚地说明本技术实施例中的技术方案,下面将对实施例或现有技术描述
中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本技术的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其它的附图。
55.图1是本技术实施例提供的一种扫盘控制方法的流程示意图;
56.图2是本技术实施例提供的用于对扫盘伸缩轨迹进行调整的流程示意图;
57.图3是本技术实施例提供的障碍物、清扫车、扫盘伸缩轨迹之间的位置关系示意图;
58.图4是本技术实施例提供的用于控制扫盘执行伸缩动作的流程示意图;
59.图5是本技术实施例提供的用于获取扫盘伸缩轨迹的流程示意图;
60.图6是本技术实施例提供的扫盘控制装置的结构示意图;
61.图7是本技术实施例提供的清扫车的结构示意图。
具体实施方式
62.以下描述中,为了说明而不是为了限定,提出了诸如特定系统结构、技术之类的具体细节,以便透彻理解本技术实施例。然而,本领域的技术人员应当清楚,在没有这些具体细节的其它实施例中也可以实现本技术。在其它情况中,省略对众所周知的系统、装置、电路以及方法的详细说明,以免不必要的细节妨碍本技术的描述。
63.应当理解,当在本技术说明书和所附权利要求书中使用时,术语“包括”指示所描述特征、整体、步骤、操作、元素和/或组件的存在,但并不排除一个或多个其它特征、整体、步骤、操作、元素、组件和/或其集合的存在或添加。
64.还应当理解,在本技术说明书和所附权利要求书中使用的术语“和/或”是指相关联列出的项中的一个或多个的任何组合以及所有可能组合,并且包括这些组合。
65.如在本技术说明书和所附权利要求书中所使用的那样,术语“如果”可以依据上下文被解释为“当...时”或“一旦”或“响应于确定”或“响应于检测到”。类似地,短语“如果确定”或“如果检测到[所描述条件或事件]”可以依据上下文被解释为意指“一旦确定”或“响应于确定”或“一旦检测到[所描述条件或事件]”或“响应于检测到[所描述条件或事件]”。
[0066]
另外,在本技术说明书和所附权利要求书的描述中,术语“第一”、“第二”、“第三”等仅用于区分描述,而不能理解为指示或暗示相对重要性。
[0067]
在本技术说明书中描述的参考“一个实施例”或“一些实施例”等意味着在本技术的一个或多个实施例中包括结合该实施例描述的特定特征、结构或特点。由此,在本说明书中的不同之处出现的语句“在一个实施例中”、“在一些实施例中”、“在其它一些实施例中”、“在另外一些实施例中”等不是必然都参考相同的实施例,而是意味着“一个或多个但不是所有的实施例”,除非是以其它方式另外特别强调。术语“包括”、“包含”、“具有”及它们的变形都意味着“包括但不限于”,除非是以其它方式另外特别强调。
[0068]
为了说明本技术的技术方案,下面通过以下实施例来进行说明。
[0069]
实施例一
[0070]
请参阅图1,本技术实施例提供一种扫盘控制方法,包括:
[0071]
步骤101,获取清扫车上的目标扫盘在未来预设时长内的扫盘伸缩轨迹。
[0072]
其中,扫盘伸缩轨迹用于描述目标扫盘在未来预设时长内各个时刻的扫盘伸缩
量。
[0073]
其中,上述目标扫盘通常是预先设定的扫盘。实践中,在清扫车上横向并列设置两个扫盘时,上述目标扫盘可以是清扫车左侧的扫盘,也可以是清扫车右侧的扫盘。
[0074]
其中,上述未来预设时长通常是即将发生的预设时长。上述预设时长通常与清扫车的车辆速度负有关,也即是,车辆速度越大,上述预设时长通常越小,这样,扫盘伸缩轨迹更加实时准确。举例来说,若车辆速度为10公里每小时,则上述预设时长可以为4秒,若车辆速度为40公里每小时,则上述预设时长可以为2秒。
[0075]
实践中,上述执行主体可以将上述未来预设时长划分为多个时刻,比如,可以划分为固定数目个时刻,也可以划分为若干个固定间隔的时刻。比如,若上述未来预设时长为2秒,若固定数目为10,则可以划分为10个时刻,若上述固定间隔为0.1秒,则可划分为20个间隔为0.1秒的时刻。
[0076]
这里,上述扫盘控制方法的执行主体通常为清扫车,具体可以为清扫车上的控制器。实践中,上述执行主体可以通过多种方式获取到目标扫盘的扫盘伸缩轨迹。作为一个示例,上述执行主体可以通过如下方式获取到目标扫盘的扫盘伸缩轨迹:采用清扫车在当前与车辆左侧路缘之间的最短距离,确定清扫车左侧扫盘在当前位置的伸缩量,以及将该伸缩量作为该左侧扫盘在未来预设时长内的各个时刻的扫盘伸缩量,实现获取到目标扫盘的扫盘伸缩轨迹。作为另一个示例,上述执行主体也可以通过如下方式获取到目标扫盘的扫盘伸缩轨迹:接收通信连接的其它设备,如,对上述清扫车的扫盘伸缩轨迹进行规划的服务器,发送的扫盘伸缩轨迹。
[0077]
步骤102,在待行驶路段上存在障碍物时,根据障碍物的物体类型信息和轮廓位置信息,对扫盘伸缩轨迹进行调整,得到新扫盘伸缩轨迹。
[0078]
其中,上述物体类型信息通常是用于描述障碍物的类型的信息。实践中,障碍物的类型可以包括但不限于:车辆、石头、树、栅栏等。
[0079]
上述轮廓位置信息通常是用于描述上述障碍物的轮廓位置的信息。实际应用中,上述轮廓位置信息可以实现成一条轮廓曲线,也可以实现成多个轮廓点。上述轮廓点通常是障碍物的轮廓上的点。
[0080]
这里,上述执行主体可以通过多种方式,实现对待行驶路段进行障碍物检测,从而确定是否存在障碍物,以及确定得到障碍物的物体类型信息和轮廓位置信息。
[0081]
作为一个示例,上述执行主体可以采用自身安装的深度相机,拍摄待行驶路段的车辆周边图像,将所拍摄的车辆周边图像输入预先训练的障碍物检测模型,检测得到待行驶路段上的障碍物、障碍物的物体类型信息和轮廓位置信息。
[0082]
作为另一个示例,上述执行主体也可以通过自身安装的传感器检测得到待行驶路段上的障碍物,以及可以检测得到清扫车与障碍物的轮廓点之间的相对距离,从而得到障碍物的轮廓位置信息,然后通过自身安装的摄像头拍摄得到障碍物的物体图像,通过对所拍摄的物体图像进行识别,得到障碍物的物体类型信息。
[0083]
这里,在待行驶路段上存在障碍物时,上述执行主体可以采用障碍物的物体类型信息和轮廓位置信息,对扫盘伸缩轨迹进行调整。
[0084]
作为一个示例,若物体类型信息指示障碍物为车辆类型,且车辆类型对应的间隔余量为0.1米,则上述执行主体可以采用轮廓位置信息,确定该障碍物在清扫车前进方向上
的覆盖区段。然后,采用清扫车在当前时刻的位置信息和速度信息,预测清扫车在各个时刻的车辆位置,以及基于各个时刻的车辆位置,计算得到各个时刻的扫盘位置。之后,计算扫盘伸缩轨迹上对应扫盘位置处于上述覆盖区段内的各扫盘位置与障碍物之间的最短距离。最后,将对应最短距离小于0.1米的时刻处的扫盘伸缩量,调整为0.1米,以及将对应最短距离大于0.1米且并未伸长至扫盘的最大可伸长量的时刻处的扫盘伸缩量,调整为0.1米或者是调整为最大可伸长量。
[0085]
需要指出的是,在待行驶路段上可以同时存在一个或多个障碍物,在存在多个障碍物时,针对每个障碍物的处理过程基本相同,这里不做赘述。
[0086]
步骤103,根据新扫盘伸缩轨迹,控制目标扫盘执行伸缩动作。
[0087]
这里,针对上述该新扫盘伸缩轨迹中的每个时刻,上述执行主体可以通过控制上述目标扫盘伸缩至该时刻对应的扫盘伸缩量,实现控制目标扫盘执行伸缩动作。
[0088]
本实施例提供的扫盘控制方法,清扫车上的扫盘可自动伸缩,可以在清扫车与路缘存有间距的情况下,通过伸缩扫盘进一步扩大清扫范围,有助于提高清扫覆盖率。另外,在待行驶路段上存在障碍物时,采用障碍物的物体类型信息和轮廓位置信息,对扫盘伸缩轨迹进行调整,以实现使用新扫盘伸缩轨迹,对扫盘进行伸缩控制,可以实现自动对清扫车上扫盘的扫盘伸缩轨迹进行调整,有助于实现更准确地对扫盘进行自动伸缩控制。在清扫车为有人驾驶的情况下,由于无需驾驶员参与扫盘控制问题,驾驶员可以专注开车,有助于保障驾驶安全。
[0089]
在本实施例的一些可选的实现方式中,若扫盘伸缩轨迹包括未来预设时长内各个时刻分别对应的扫盘轨迹点,则上述根据障碍物的物体类型信息和轮廓位置信息,对扫盘伸缩轨迹进行调整,得到新扫盘伸缩轨迹,可以包括如下步骤201至步骤202。图2为本技术实施例提供的用于对扫盘伸缩轨迹进行调整的流程示意图。
[0090]
步骤201,根据轮廓位置信息,确定各个扫盘轨迹点与障碍物之间的间隔距离,以及根据所得到的多个间隔距离,从多个扫盘轨迹点中确定目标轨迹点。
[0091]
其中,上述扫盘轨迹点可以描述扫盘所处位置。实际应用中,针对上述未来预设时长内的每个时刻,可以对应一个扫盘轨迹点。
[0092]
其中,上述间隔距离通常是扫盘轨迹点与障碍物之间的最小距离。实际应用中,在上述轮廓位置信息实现成轮廓曲线时,上述扫盘轨迹点与障碍物之间的最小距离,可以是扫盘轨迹点与轮廓曲线之间的最短距离,也可以是相同纵坐标下,扫盘轨迹点与轮廓曲线之间的横向位置差。实际应用中,扫盘轨迹点通常包括横向位置和纵向位置。纵向位置为扫盘轨迹点在清扫车对应的车辆坐标系下的纵向坐标,横向位置为该扫盘轨迹点在车辆坐标系下的横向坐标。
[0093]
需要指出的是,上述轮廓曲线可以是在目标坐标系下的曲线。其中,上述目标坐标系可以为世界坐标系,也可以是清扫车对应的车辆坐标系。上述清扫车对应的车辆坐标系,通常是以清扫车的中心为原点的坐标系。
[0094]
这里,针对每个扫盘轨迹点,上述执行主体可以计算得到该扫盘轨迹点与障碍物之间的间隔距离。之后,上述执行主体可以通过分析各扫盘轨迹点对应的间隔距离,从多个扫盘轨迹点中选取得到上述目标轨迹点。
[0095]
作为示例,上述执行主体可以选取对应间隔距离小于预设距离阈值的扫盘轨迹点
作为目标轨迹点。其中,预设距离阈值通常是预先设定的距离值。实际应用中,上述预设距离阈值的选取通常与所采集的轮廓点的密集程度正相关,比如,若所采集的障碍物的轮廓点较少,则上述预设距离阈值可以设置的大一些,这样,可以通过增多目标轨迹点的数目,实现扩大避障区域,从而避免由于障碍物的某些凸出部位的漏检测导致影响扫盘安全。
[0096]
图3为本技术实施例提供的障碍物、清扫车、扫盘伸缩轨迹之间的位置关系示意图。
[0097]
如图3所示地,障碍物位于清扫车的左前方。xoy为车辆坐标系,x轴方向为横向,y轴方向为纵向,s1-s9为扫盘伸缩轨迹上的扫盘轨迹点。根据图3,可以选取s4-s7作为目标轨迹点。
[0098]
步骤202,根据物体类型信息,对扫盘伸缩轨迹中的目标轨迹点对应时刻的扫盘伸缩量进行调整,得到新扫盘伸缩轨迹。
[0099]
实际应用中,上述执行主体可以预先针对每种类型的障碍物,配置与扫盘之间的安全距离。比如,针对车辆的安全距离可以为0.2米。针对石头的安全距离可以为0.01米。其中,上述安全距离通常是扫盘与障碍物之间需要保持的间隔余量。
[0100]
这里,上述执行主体可以采用障碍物的物体类型信息,找到与该物体类型信息相对应的安全距离,然后,可以采用该安全距离,对每个目标轨迹点对应时刻的扫盘伸缩量进行调整,从而得到上述新扫盘伸缩轨迹。结合图3进行举例,若障碍物为车辆,目标轨迹点为s4-s7,若s4对应的时刻为t4,s5对应的时刻为t5,s6对应的时刻为t6,s7对应的时刻为t7,若s4与障碍物的间隔距离为0.1,s5与障碍物的间隔距离为0.1,s6与障碍物的间隔距离为0.2,s7与障碍物的间隔距离为0.2,扫盘伸缩轨迹中目标轨迹点对应部分为:(t4,0.1)-(t5,0.2)-(t6,0.2)-(t7,0.2),若扫盘的最大伸长量为0.5米,则为了保障扫盘始终与障碍物之间的距离大于或等于0.2米,则对扫盘伸缩轨迹进行调整,所得到的t4-t7时刻的新扫盘伸缩轨迹部分可以为:(t4,0)-(t5,0.1)-(t6,0.2)-(t7,0.2)。
[0101]
需要指出的是,基于扫盘在各个时刻的扫盘轨迹点分别与障碍物的间隔距离,可以准确确定出扫盘伸缩轨迹中的需要调整的部分,可以实现实时准确对扫盘伸缩轨迹进行调整。
[0102]
在一些实现方式中,根据轮廓位置信息,确定各个扫盘轨迹点与障碍物之间的间隔距离,可以包括:若轮廓位置信息包括障碍物的多个轮廓点的位置信息,则针对各扫盘轨迹点,根据相应扫盘轨迹点与各轮廓点之间的点距离,确定相应扫盘轨迹点与障碍物之间的间隔距离。
[0103]
实践中,在轮廓位置信息实现成多个轮廓点时,上述轮廓位置信息可以包括多个轮廓点的位置信息。
[0104]
其中,上述点距离通常是扫盘轨迹点与轮廓点之间的距离。
[0105]
这里,针对每个扫盘轨迹点,上述执行主体可以计算该扫盘轨迹点与每个轮廓点之间的点距离,从而得到针对该扫盘轨迹点的多个点距离。然后,可以采用针对该扫盘轨迹点的多个点距离,确定得到该扫盘轨迹点与障碍物之间的间隔距离。比如,可以将上述多个点距离的均值,作为该扫盘轨迹点与障碍物之间的间隔距离,也可以将上述多个点距离中的最小值,作为该扫盘轨迹点与障碍物之间的间隔距离。
[0106]
在一些可选的实现方式中,上述根据所得到的多个间隔距离,从多个扫盘轨迹点
中确定目标轨迹点,可以包括:若间隔距离包括纵向位置差和横向位置差,则从多个扫盘轨迹点中,选取对应纵向位置差和横向位置差满足预设差距条件的扫盘轨迹点,作为目标轨迹点。
[0107]
其中,纵向位置差为在清扫车对应的车辆坐标系下的纵向坐标的差值,横向位置差为在车辆坐标系下的横向坐标的差值。
[0108]
其中,上述预设差距条件包括:对应纵向位置差小于第一差距阈值且对应横向位置差小于第二差距阈值。上述第一差距阈值通常是预先设定的大于零的数值,上述第二差距阈值通常是预先设定的大于零的数值。上述第一差距阈值与上述第二差距阈值通常较小,二者可以相同也可以不同。作为一个示例,上述第一差距阈值可以为0.1米,上述第二差距阈值可以为0.2米。
[0109]
这里,针对每个扫盘轨迹点,可以得到一个间隔距离。每个间隔距离包括横向位置差和纵向位置差。上述执行主体可以通过筛选对应横向位置差和纵向位置差全部满足预设差距条件的扫盘轨迹点作为目标轨迹点,这样可以实现更为准确地得到目标轨迹点。
[0110]
在本实施例的一些可选的实现方式中,上述根据新扫盘伸缩轨迹,控制目标扫盘执行伸缩动作,可以包括如下步骤401至步骤403。
[0111]
图4为本技术实施例提供的用于控制扫盘执行伸缩动作的流程示意图。
[0112]
步骤401,根据新扫盘伸缩轨迹,确定目标扫盘在各个时刻的伸缩变化量。
[0113]
上述伸缩变化量通常是指连续的两个时刻之间的扫盘伸缩量的差值。
[0114]
这里,在得到上述新扫盘伸缩轨迹之后,上述执行主体可以直接得到上述目标扫盘在每个时刻的扫盘伸缩量。之后,针对每个时刻,上述执行主体可以将上一时刻的扫盘伸缩量与该时刻的扫盘伸缩量作差,得到该时刻的伸缩变化量。需要指出的是,针对第一个时刻,上述执行主体可以将当前时刻的扫盘伸缩量与第一个时刻的扫盘伸缩量作差,得到第一个时刻的伸缩变化量。
[0115]
步骤402,根据目标扫盘在各个时刻的伸缩变化量,确定各个时刻分别对应的扫盘伸缩调整指令和指令发出时间。
[0116]
其中,上述扫盘伸缩调整指令通常是用于控制扫盘执行伸缩动作的指令。作为示例,上述扫盘伸缩调整指令可以为
“‑
0.1”,用于控制执行缩回动作,且动作量为0.1米。上述扫盘伸缩调整指令也可以为“plus 0.2”,用于控制执行伸长动作,且动作量为0.2米。本实施例对扫盘伸缩调整指令的具体实现形式不做限定。
[0117]
实践中,针对每个时刻,上述执行主体可以采用该时刻的伸缩变化量,确定伸缩调整指令。作为一个示例,上述执行主体可以采用该伸缩变化量,查找与该伸缩变化量对应的指令,作为该时刻的伸缩调整指令。作为另一示例,上述执行主体也可以采用该伸缩变化量,生成该时刻的伸缩调整指令,比如,可以将该伸缩变化量写入预先设定的指令生成模板,生成得到上述伸缩调整指令。
[0118]
另外,针对每个时刻,上述执行主体可以采用该时刻的伸缩变化量,确定指令发出时间,比如,可以将该时刻的伸缩变化量代入预先设定的计算公式,计算得到该时刻对应的指令发出时间。作为一个示例,上述计算公式可以包括yi=ti-0.1xi,其中,ti为第i时刻对应的时间,yi为第i时刻对应的指令发出时间,xi为第i时刻对应的伸缩变化量。
[0119]
实践中,通常是伸缩变化量越大,则指令发出时间越提前。举例来说,针对t1时刻,
若伸缩变化量为0.1米,则指令发出时间可以为t1时刻对应时间减去0.1秒,若t2时刻的伸缩变化量为0.2米,则指令发出时间可以为t2时刻对应时间减去0.2秒。
[0120]
步骤403,按照各个时刻分别对应的扫盘伸缩调整指令和指令发出时间,控制目标扫盘执行伸缩动作。
[0121]
这里,针对每个时刻,上述执行主体可以在该时刻对应的指令发出时间,发出该时刻对应的扫盘伸缩调整指令,以控制上述目标扫盘执行伸缩动作。
[0122]
在一些可选的实现方式中,上述指令发出时间可以通过如下方式确定得到:根据目标时刻的伸缩变化量和预先设定的变化量与补偿时长的映射关系,确定目标时刻的指令补偿时长,以及根据目标时刻对应的时间和指令补偿时长,确定指令发出时间。
[0123]
其中,目标时刻为与指令发出时间相对应的时刻。
[0124]
其中,上述指令补偿时长通常是用于对指令进行时间补偿的时长量。
[0125]
这里,由于伸缩动作的执行需要一定的时间,针对每个时刻,在该时刻对应的时间的基础上,提前指令补偿时长发出该时刻对应的扫盘伸缩调整指令,可以实现及时准确地对扫盘进行自动伸缩控制。
[0126]
在本技术的各个实施例的可选的实现方式中,上述获取清扫车上的目标扫盘在未来预设时长内的扫盘伸缩轨迹,可以包括如下步骤501至步骤502。
[0127]
图5为本技术实施例提供的用于获取扫盘伸缩轨迹的流程示意图。
[0128]
步骤501,获取待行驶路段的目标路缘的路缘线,以及获取清扫车在未来预设时长内的车辆运行轨迹。
[0129]
其中,目标路缘与目标扫盘相对应。实践中,在清扫车上横向并列设置两个扫盘时,清扫车左侧的扫盘与车辆左侧路缘相对应,以及清扫车右侧的扫盘与车辆右侧路缘相对应。实际应用中,在清扫车上横向并列设置两个扫盘时,该两个扫盘可被独立控制。
[0130]
实践中,上述执行主体可以从本地,或者是从通信连接的其它设备获取上述路缘线和上述车辆运行轨迹。
[0131]
可选地,上述获取待行驶路段的目标路缘的路缘线,可以包括:检测待行驶路段的目标路缘上的多个路缘点,以及根据多个路缘点生成用于描述目标路缘的路缘线。
[0132]
实践中,上述执行主体可以通过多种方式检测到目标路缘上的路缘点。作为一个示例,上述执行主体可以采用深度相机拍摄车辆周边图像,通过识别车辆周边图像中的路缘上的障碍物或者是路缘上的交通指示线,实现检测得到目标路缘上的一个或多个路缘点。作为另一个示例,上述执行主体也可以通过激光雷达对路缘上的障碍物,比如,路侧栅栏进行识别,从而实现检测得到目标路缘上的一个或多个路缘点。
[0133]
在检测到目标路缘上的多个路缘点之后,上述执行主体可以采用所得到的多个路缘点,生成路缘线。作为一个示例,上述执行主体可以直接将所得到的多个路缘点,按照与清扫车由近及远的顺序进行有序组合,得到路缘点序列,以及将路缘点序列直接确定为上述路缘线。作为另一个示例,上述执行主体也可以将多个路缘点在目标坐标系下进行数据拟合,得到一条曲线,以及将所得到的曲线确定为上述路缘线。其中,上述目标坐标系可以为世界坐标系,也可以是清扫车对应的车辆坐标系。上述清扫车对应的车辆坐标系,通常是以清扫车的中心为原点的坐标系。
[0134]
可选地,上述获取清扫车在未来预设时长内的车辆运行轨迹,可以包括:根据清扫
车的车辆位置信息和车辆速度信息,生成清扫车在未来预设时长内的车辆运行轨迹。
[0135]
其中,上述车辆位置信息通常是用于描述清扫车当前所处位置的信息。实践中,上述车辆位置信息可以包括但不限于车辆在世界坐标系下的坐标和在车辆坐标系下的坐标。上述车辆速度信息通常是用于描述清扫车当前的速度的信息。实践中,上述车辆速度信息包括以下至少一项:车辆速度、车辆角速度、车辆加速度、车辆角加速度。
[0136]
这里,上述执行主体可以结合车辆位置信息和车辆速度信息,计算得到各个时刻的预测轨迹点,之后,可以将各个时刻的预测轨迹点顺序组合得到上述车辆运行轨迹。其中,上述预测轨迹点为预测得到的车辆在某个时刻的车辆位置。
[0137]
进一步举例来说,若车辆位置信息指示车辆当前位置为l0,若上述未来预设时长为3秒,且可以被划分为3个时刻,分别为第1秒时刻、第2秒时刻、第3秒时刻,若车辆速度信息包括车辆速度,且车辆速度为15公里每小时,则可以计算得到清扫车以25米每秒行进,第1秒时刻的预测轨迹点对应位置为l1,且l1=l0 25,第2秒时刻的预测轨迹点对应位置为l2,且l2=l0 50,第3秒时刻的预测轨迹点对应位置为l3,且l3=l0 75。
[0138]
步骤502,根据路缘线和车辆运行轨迹,生成扫盘伸缩轨迹。
[0139]
这里,上述执行主体可以采用路缘线和车辆运行轨迹,计算得到目标路缘这一侧的扫盘的扫盘伸缩轨迹。举例来说,可以计算路缘线和车辆运行轨迹之间的最短间隔距离,比如,可以通过计算各个预测轨迹点分别到各个路缘点之间的距离得到上述最短间隔距离。然后,基于该最短间隔距离确定清扫车的扫盘在未来预设时长内的伸缩量,从而得到上述扫盘伸缩轨迹。进一步举例来说,若路缘线和车辆运行轨迹之间的最短间隔距离为0.5米,则可以确定清扫车在未来预设时长内的伸缩量为0.5米,此时,在未来预设时长内上述扫盘伸缩轨迹可与车辆运行轨迹平行,且二者间隔0.5米。
[0140]
本实施例中,通过路缘线与未来预设时长内的车辆运行轨迹,来确定扫盘伸缩轨迹,可以实现自动对清扫车上的扫盘进行轨迹规划。
[0141]
实施例二
[0142]
对应于上文实施例的扫盘控制方法,图6示出了本技术实施例提供的扫盘控制装置600的结构框图,为了便于说明,仅示出了与本技术实施例相关的部分。
[0143]
参照图6,该装置包括:
[0144]
轨迹获取单元601,用于获取清扫车上的目标扫盘在未来预设时长内的扫盘伸缩轨迹,扫盘伸缩轨迹用于描述目标扫盘在未来预设时长内各个时刻的扫盘伸缩量;
[0145]
轨迹调整单元602,用于在待行驶路段上存在障碍物时,根据障碍物的物体类型信息和轮廓位置信息,对扫盘伸缩轨迹进行调整,得到新扫盘伸缩轨迹;
[0146]
控制执行单元603,用于根据新扫盘伸缩轨迹,控制目标扫盘执行伸缩动作。
[0147]
在一些实施例中,轨迹调整单元602,具体用于:首先,根据轮廓位置信息,确定各个扫盘轨迹点与障碍物之间的间隔距离,以及根据所得到的多个间隔距离,从多个扫盘轨迹点中确定目标轨迹点。然后,根据物体类型信息,对扫盘伸缩轨迹中的目标轨迹点对应时刻的扫盘伸缩量进行调整,得到新扫盘伸缩轨迹。
[0148]
在一些实施例中,轨迹调整单元602中,根据轮廓位置信息,确定各个扫盘轨迹点与障碍物之间的间隔距离,包括:若轮廓位置信息包括障碍物的多个轮廓点的位置信息,则针对各扫盘轨迹点,根据相应扫盘轨迹点与各轮廓点之间的点距离,确定相应扫盘轨迹点
与障碍物之间的间隔距离。
[0149]
在一些实施例中,轨迹调整单元602中,根据所得到的多个间隔距离,从多个扫盘轨迹点中确定目标轨迹点,包括:若间隔距离包括纵向位置差和横向位置差,则从多个扫盘轨迹点中,选取对应纵向位置差和横向位置差满足预设差距条件的扫盘轨迹点,作为目标轨迹点。其中,纵向位置差为在清扫车对应的车辆坐标系下的纵向坐标的差值,横向位置差为在车辆坐标系下的横向坐标的差值。
[0150]
在一些实施例中,控制执行单元603,具体用于:首先,根据新扫盘伸缩轨迹,确定目标扫盘在各个时刻的伸缩变化量。然后,根据目标扫盘在各个时刻的伸缩变化量,确定各个时刻分别对应的扫盘伸缩调整指令和指令发出时间。最后,按照各个时刻分别对应的扫盘伸缩调整指令和指令发出时间,控制目标扫盘执行伸缩动作。
[0151]
在一些实施例中,控制执行单元603中,指令发出时间通过如下方式确定得到:根据目标时刻的伸缩变化量和预先设定的变化量与补偿时长的映射关系,确定目标时刻的指令补偿时长,以及根据目标时刻对应的时间和指令补偿时长,确定指令发出时间。其中,目标时刻为与指令发出时间相对应的时刻。
[0152]
在一些实施例中,轨迹获取单元601,具体用于:首先,获取待行驶路段的目标路缘的路缘线,以及获取清扫车在未来预设时长内的车辆运行轨迹。其中,目标路缘与目标扫盘相对应。然后,根据路缘线和车辆运行轨迹,生成扫盘伸缩轨迹。
[0153]
本实施例提供的装置,清扫车上的扫盘可自动伸缩,可以在清扫车与路缘存有间距的情况下,通过伸缩扫盘进一步扩大清扫范围,有助于提高清扫覆盖率。另外,在待行驶路段上存在障碍物时,采用障碍物的物体类型信息和轮廓位置信息,对扫盘伸缩轨迹进行调整,以实现使用新扫盘伸缩轨迹,对扫盘进行伸缩控制,可以实现自动对清扫车上扫盘的扫盘伸缩轨迹进行调整,有助于实现更准确地对扫盘进行自动伸缩控制。在清扫车为有人驾驶的情况下,由于无需驾驶员参与扫盘控制问题,驾驶员可以专注开车,有助于保障驾驶安全。
[0154]
需要说明的是,上述装置/单元之间的信息交互、执行过程等内容,由于与本技术方法实施例基于同一构思,其具体功能及带来的技术效果,具体可参见方法实施例部分,此处不再赘述。
[0155]
实施例三
[0156]
图7为本技术一实施例提供的清扫车700的结构示意图。如图7所示,该实施例的清扫车700包括:至少一个处理器701(图7中仅示出一个处理器)、存储器702以及存储在存储器702中并可在至少一个处理器701上运行的计算机程序703,例如扫盘控制程序。处理器701执行计算机程序703时实现上述任意各个方法实施例中的步骤。处理器701执行计算机程序703时实现上述各个扫盘控制方法的实施例中的步骤。处理器701执行计算机程序703时实现上述各装置实施例中各模块/单元的功能,例如图6所示单元601至603的功能。
[0157]
示例性的,计算机程序703可以被分割成一个或多个模块/单元,一个或者多个模块/单元被存储在存储器702中,并由处理器701执行,以完成本技术。一个或多个模块/单元可以是能够完成特定功能的一系列计算机程序指令段,该指令段用于描述计算机程序703在清扫车700中的执行过程。例如,计算机程序703可以被分割成轨迹获取单元,轨迹调整单元,控制执行单元,各单元具体功能在上述实施例中已有描述,此处不再赘述。
[0158]
清扫车700可以是服务器、台式电脑、平板电脑、云端服务器和移动终端等计算设备。清扫车700可包括,但不仅限于,处理器701,存储器702。本领域技术人员可以理解,图7仅仅是清扫车700的示例,并不构成对清扫车700的限定,可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件,例如清扫车还可以包括输入输出设备、网络接入设备、总线等。
[0159]
所称处理器701可以是中央处理单元(central processing unit,cpu),还可以是其它通用处理器、数字信号处理器(digital signal processor,dsp)、专用集成电路(application specific integrated circuit,asic)、现场可编程门阵列(field-programmable gate array,fpga)或者其它可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。
[0160]
存储器702可以是清扫车700的内部存储单元,例如清扫车700的硬盘或内存。存储器702也可以是清扫车700的外部存储设备,例如清扫车700上配备的插接式硬盘,智能存储卡(smart media card,smc),安全数字(secure digital,sd)卡,闪存卡(flash card)等。进一步地,存储器702还可以既包括清扫车700的内部存储单元也包括外部存储设备。存储器702用于存储计算机程序以及清扫车所需的其它程序和数据。存储器702还可以用于暂时地存储已经输出或者将要输出的数据。
[0161]
所属领域的技术人员可以清楚地了解到,为了描述的方便和简洁,仅以上述各功能单元、模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能单元、模块完成,即将装置的内部结构划分成不同的功能单元或模块,以完成以上描述的全部或者部分功能。实施例中的各功能单元、模块可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中,上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。另外,各功能单元、模块的具体名称也只是为了便于相互区分,并不用于限制本技术的保护范围。上述系统中单元、模块的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
[0162]
在上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述或记载的部分,可以参见其它实施例的相关描述。
[0163]
本领域普通技术人员可以意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、或者计算机软件和电子硬件的结合来实现。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本技术的范围。
[0164]
在本技术所提供的实施例中,应该理解到,所揭露的装置/清扫车和方法,可以通过其它的方式实现。例如,以上所描述的装置/清扫车实施例仅仅是示意性的,例如,模块或单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通讯连接可以是通过一些接口,装置或单元的间接耦合或通讯连接,可以是电性,机械或其它的形式。
[0165]
作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的
部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
[0166]
另外,在本技术各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
[0167]
集成的模块如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读存储介质中。其中,计算机可读存储介质可以是非易失性的,也可以是易失性的。基于这样的理解,本技术实现上述实施例方法中的全部或部分流程,也可以通过计算机程序来指令相关的硬件来完成,计算机程序可存储于一计算机可读存储介质中,该计算机程序在被处理器执行时,可实现上述各个方法实施例的步骤。其中,计算机程序包括计算机程序代码,计算机程序代码可以为源代码形式、对象代码形式、可执行文件或某些中间形式等。计算机可读存储介质可以包括:能够携带计算机程序代码的任何实体或装置、记录介质、u盘、移动硬盘、磁碟、光盘、计算机存储器、只读存储器(rom,read-only memory)、随机存取存储器(ram,random access memory)、电载波信号、电信信号以及软件分发介质等。需要说明的是,计算机可读存储介质包含的内容可以根据司法管辖区内立法和专利实践的要求进行适当的增减,例如在某些司法管辖区,根据立法和专利实践,计算机可读存储介质不包括电载波信号和电信信号。
[0168]
以上实施例仅用以说明本技术的技术方案,而非对其限制;尽管参照前述实施例对本技术进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本技术各实施例技术方案的精神和范围,均应包含在本技术的保护范围之内。
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献