AGV小车的激光雷达安装位置修正方法以及AGV小车与流程

文档序号:18640955发布日期:2019-09-11 23:16阅读:1056来源:国知局
AGV小车的激光雷达安装位置修正方法以及AGV小车与流程

本发明涉及自动引导小车技术领域,尤其涉及一种agv小车的激光雷达安装位置修正方法以及agv小车。



背景技术:

基于二维激光雷达的激光导航是当前市面上叉车型agv(automatedguidedvehicle,自动导引运输车)小车广泛采用的一种导航方式。基于激光导航的叉车型agv在系统参数设置时需输入激光雷达在车体坐标系下的安装位置。传统技术中,激光雷达的安装位置通常是直接采用结构设计时的设计值,且同一车型的agv该值均相同。但是由于工件的变形、装配误差等原因,激光雷达在安装后,实际位置与设计位置会有一定的误差。实际上,即便同一型的agv小车,每台agv小车的激光雷达安装位置也不尽相同。当同一场景下存在多台相同型的agv小车运行时,由此可能产生的现象是每台agv小车在同一地图中同一栈点的停车位置并不一致,一定程度上会导致agv小车取放货物失败,无法满足高一致性的应用需求。鉴于此,有必要对每台agv小车的激光雷达安装位置进行修正,传统技术中,通常是人工直接测量,但是由于激光雷达安装在车的顶端,不与车体坐标系原点在同一水平面,因此人工测量的方式存在效率低且误差较大的问题。即使传统技术中,也有关于agv小车的激光雷达的安装位置自动修正方法,但是需要大量的迭代运算,程序较为复杂且修正精度不高。



技术实现要素:

本发明的目的在于针对传统技术的不足,提供一种agv小车的激光雷达安装位置修正方法以及agv小车。

在一个实施例中,本发明提供了一种agv小车的激光雷达安装位置修正方法,包括:

设定agv小车舵轮的转角为第一预设转角后,记录agv小车的激光雷达在第一起始点的第一初始位姿;

使agv小车从第一起始点行走以转至第一预设角度后停止,记录激光雷达在第一停车点的第一最终位姿,并根据第一初始位姿和第一最终位姿计算得到激光雷达的第一转动半径;

设定舵轮的转角为第二预设转角后,记录激光雷达在第二起始点的第二初始位姿;

使agv小车从第二起始点行走以转至第二预设角度后停止,记录激光雷达在第二停车点的第二最终位姿,并根据第二初始位姿和第二最终位姿计算得到激光雷达的第二转动半径;

获取舵轮的实际安装位置,根据第一转动半径、第二转动半径、第一预设转角、第二预设转角和舵轮的实际安装位置以预设的安装位置修正规则得到激光雷达的已修正实际安装位置。

在其中一个实施例中,在计算得到激光雷达的第一转动半径之后包括:

保持舵轮的转角为第一预设转角不变,并再重复至少一次得到第一转动半径的步骤;

计算所有第一转动半径的均值,并将该均值作为计算已修正实际安装位置的第一转动半径。

在其中一个实施例中,在计算得到激光雷达的第二转动半径”之后包括:

保持舵轮的转角为第二预设转角不变,并再重复至少一次得到第二转动半径的步骤;

计算所有第二转动半径的均值,并将该均值作为计算已修正实际安装位置的第二转动半径。

在其中一个实施例中,预设的安装位置修正规则为以下公式:

其中,ys为已修正实际安装位置的纵坐标;xs为已修正实际安装位置的横坐标;rs2为第二转动半径;rs1为第一转动半径;xw为舵轮的实际安装位置的横坐标;yw为舵轮的实际安装位置的纵坐标;为第一预设转角;为第二预设转角。

在其中一个实施例中,基于以下公式得到第一转动半径或第二转动半径:

其中,rs为舵轮的转角为预设转角时激光雷达的转动半径;激光雷达在停车点时的最终位姿的横坐标为x2,纵坐标为y2,最终方位角为θ2;激光雷达在起始点的初始位姿的横坐标为x1,纵坐标为y1,初始方位角为θ1。

在其中一个实施例中,第一预设角度和第二预设角度的取值范围为30°-180°。

在其中一个实施例中,还包括:将第一停车点作为第二起始点。

在其中一个实施例中,将上一次agv小车的第一停车点作为下一次重复得到第一转动半径步骤的第一起始点。

在其中一个实施例中,将上一次agv小车的第二停车点作为下一次重复得到第二转动半径步骤的第二起始点。

另一方面,在一个实施例中,本发明还提供了一种agv小车,包括存储器和处理器,存储器存储有计算机程序,处理器执行计算机程序时实现agv小车的激光雷达安装位置修正方法。

上述技术方案中的一个技术方案具有如下优点和有益效果:

本发明的agv小车的激光雷达安装位置修正方法以及agv小车,通过设定舵轮的第一预设转角和第二预设转角,从而分别基于该第一预设转角和该第二预设转角控制agv小车转过一定的预设角度,以便根据已知的舵轮的预设转角和转弯的角度,分别得到agv小车每次转弯时激光雷达的转动半径。进一步地,根据已知的舵轮的实际安装位置、第一预设转角、第二预设转角,以及控制agv小车转动两次得到的激光雷达的第一转动半径、第二转动半径,以预设的安装位置修正规则可得到激光雷达的已修正实际安装位置。本发明各实施例的修正计算参数较少且算法较为简单,实用性强,便于操作。同时,有助于提高激光雷达安装位置修正的效率,减少程序冗余度,且自动化程度和智能化程度高,可减少人工或者无需人工参与,进一步地缩短人工调试周期。

附图说明

为了更清楚地说明本发明的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,应当理解,以下附图仅示出了本发明的某些实施例,因此不应被看作是对本发明保护范围的限定。在各个附图中,类似的构成部分采用类似的编号。

图1示出了本发明实施例的agv小车的激光雷达安装位置修正方法的流程示意图;

图2示出了本发明实施例的agv小车的激光雷达安装位置修正方法中求解激光雷达转动半径的示意图;

图3示出了本发明实施例的agv小车的激光雷达安装位置修正方法中车体坐标系示意图。

具体实施方式

下面将结合本发明实施例中附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。

通常在此处附图中描述和示出的本发明实施例的组件可以以各种不同的配置来布置和设计。因此,以下对在附图中提供的本发明的实施例的详细描述并非旨在限制要求保护的本发明的范围,而是仅仅表示本发明的选定实施例。基于本发明的实施例,本领域技术人员在没有做出创造性劳动的前提下所获得的所有其他实施例,都属于本发明保护的范围。

在下文中,可在本发明的各种实施例中使用的术语“包括”、“具有”及其同源词仅意在表示特定特征、数字、步骤、操作、元件、组件或前述项的组合,并且不应被理解为首先排除一个或更多个其它特征、数字、步骤、操作、元件、组件或前述项的组合的存在或增加一个或更多个特征、数字、步骤、操作、元件、组件或前述项的组合的可能性。

此外,术语“第一”、“第二”、“第三”等仅用于区分描述,而不能理解为指示或暗示相对重要性。

除非另有限定,否则在这里使用的所有术语(包括技术术语和科学术语)具有与本发明的各种实施例所属领域普通技术人员通常理解的含义相同的含义。所述术语(诸如在一般使用的词典中限定的术语)将被解释为具有与在相关技术领域中的语境含义相同的含义并且将不被解释为具有理想化的含义或过于正式的含义,除非在本发明的各种实施例中被清楚地限定。

参见图1,在一个实施例中,本发明实施例提供了一种agv小车的激光雷达安装位置修正方法,包括:

步骤s110:设定agv小车舵轮的转角为第一预设转角后,记录agv小车的激光雷达在第一起始点的第一初始位姿。

第一初始位姿为当agv小车舵轮的转角为第一预设转角时,激光雷达在世界坐标系中的坐标。

步骤s120:使agv小车从第一起始点行走以转至第一预设角度后停止,记录激光雷达在第一停车点的第一最终位姿,并根据第一初始位姿和第一最终位姿计算得到激光雷达的第一转动半径。

控制agv小车从第一起始点行走到第一停车点的过程中,保持舵轮的转角为第一预设转角不变。第一最终位姿为当agv小车舵轮的转角为第一预设转角时,激光雷达在世界坐标系中的坐标。

步骤s130:设定舵轮的转角为第二预设转角后,记录激光雷达在第二起始点的第二初始位姿。

第二初始位姿为当舵轮的转角为第二预设转角时,激光雷达在世界坐标系中的坐标。

步骤s140:使agv小车从第二起始点行走以转至第二预设角度后停止,记录激光雷达在第二停车点的第二最终位姿,并根据第二初始位姿和第二最终位姿计算得到激光雷达的第二转动半径。

控制agv小车从第二起始点行走到第二停车点的过程中,保持舵轮的转角为第二预设转角不变。第二最终位姿为当agv小车舵轮的转角为第二预设转角时,激光雷达在世界坐标系中的坐标。

步骤s150:获取舵轮的实际安装位置,根据第一转动半径、第二转动半径、第一预设转角、第二预设转角以及舵轮的实际安装位置以预设的安装位置修正规则得到激光雷达的已修正实际安装位置。

舵轮的实际安装位置为舵轮在车体坐标系中的安装位置。预设的安装位置修正规则为根据舵轮的实际安装位置、agv小车的激光雷达在舵轮两个不同的预设转角转动过程中其转动半径等参数在车体坐标系下与激光雷达的实际安装位置的几何关系得到的算法。

本发明实施例的agv小车的激光雷达安装位置修正方法,通过设定舵轮的第一预设转角和第二预设转角,从而分别基于该第一预设转角和该第二预设转角控制agv小车转过一定的预设角度,以便根据已知的舵轮的预设转角和转弯的角度,分别得到agv小车每次转弯时激光雷达的转动半径。进一步地,根据已知的舵轮的实际安装位置、第一预设转角、第二预设转角,以及控制agv小车转动两次得到的激光雷达的第一转动半径、第二转动半径,以预设的安装位置修正规则可得到激光雷达的已修正实际安装位置。本发明实施例的修正计算参数较少且算法较为简单,实用性强,便于操作。同时,有助于提高激光雷达安装位置修正的效率,减少程序冗余度,且自动化程度和智能化程度高,可减少人工或者无需人工参与,进一步地缩短人工调试周期。

在一个具体的实施例中,还包括:将第一停车点作为第二起始点。

在本发明实施例中,为了提高修正过程中的连贯性、自动化以及尽可能减少人工参与,可将第一停车点作为下一次改变舵轮的转角获得第二转动半径的第二起始点。

在一个具体的实施例中,第一预设角度和第二预设角度的取值范围为30°-180°。

本发明实施例的agv小车的激光雷达安装位置修正法方法,每次agv小车转过的第一预设角度和第二预设角度可以为任意值,但是为了提高计算结果的可靠性和稳定性,每次转过的角度不宜太过小也不宜过大,以避免每次求出的激光雷达的转动半径波动较大。因此,以30°-180°为宜。

参见图2,在一个具体的实施例中,基于以下公式得到第一转动半径或第二转动半径:

其中,rs为舵轮的转角为设定转角时激光雷达的转动半径;激光雷达在停车点时的最终位姿的横坐标为x2,纵坐标为y2,最终方位角为θ2;激光雷达在起始点的初始位姿的横坐标为x1,纵坐标为y1,初始方位角为θ1。

在agv小车行走转动的过程中,舵轮的转角保持不变,如图2所示,假设在第一起始点或者在第二起始点,激光雷达的初始位姿为p1(x1,y1,θ1),当行走转弯至第一停车点或第二停车点后,激光雷达的最终位姿为p2(x2,y2,θ2),设agv小车转过的角度为△θ,则根据图2中的几何关系,p1和p2两点之间的直线距离为d,则有以下关系式:

进一步地可知,激光雷达转动半径rs满足如下关系:

联立(1)和(2)可知激光雷达转动半径rs可基于以下公式得到:

本发明实施例的agv小车的激光雷达安装位置修正法方法,能够在agv小车转动过程中产生的初始位姿和最终位姿在世界坐标下的几何关系,得到激光雷达在舵轮对应的预设转角下的转动半径,其算法复杂程度较低,且计算效率较快,省去了额外的运算,有助于快速修正激光雷达的实际安装位置。

参见图3,在一个具体的实施例中,预设的安装位置修正规则为以下公式:

其中,ys为已修正实际安装位置的纵坐标;xs为已修正实际安装位置的横坐标;rs2为第二转动半径;rs1为第一转动半径;xw为舵轮的实际安装位置的横坐标;yw为舵轮的实际安装位置的纵坐标;为第一预设转角;为第二预设转角。

如图3所示,如图3为agv小车的车体坐标系示意图,其中,o点为两被动轮210和220轮轴的中点,y轴从o点指向左侧被动轮210,x轴从o点指向车头,舵轮230的实际安装位置,即舵轮230在车体坐标系下的安装位置为(xw,yw),激光雷达240在车体坐标系下的实际安装位置为(xs,ys),即所要修正的实际安装位置。点icr为agv小车的瞬时转动中心,其坐标为(0,r),r的大小随舵轮的转角变化,且满足如下关系:

激光雷达的转动半径实际上为绕瞬时转动中心icr的转动半径,其大小与r以及激光雷达的安装位置有关,满足以下关系:

rs2=(ys-r)2+xs2(5)

进一步地,若舵轮的转角为第一预设转角由(4)式得到此时的agv小车瞬时转动中心坐标为(0,r1):

若此时激光雷达的第一转动半径为rs1,则由式(5)(6)知rs1满足以下关系:

进一步地,若舵轮的转角为第二预设转角由式(4)得到此时agv小车的瞬时转动中心坐标为(0,r2):

若此时激光雷达的第二转动半径为rs2,则由(5)(8)知rs2满足以下关系:

联立式(7)(9)可得到激光雷达的已修正实际安装位置基于以下预设的安装位置修正规则得到:

本发明实施例的agv小车的激光雷达安装位置修正法方法,能够根据舵轮的实际安装位置、agv小车的激光雷达在舵轮两个不同的预设转角转动过程中其转动半径等参数在车体坐标系下与激光雷达的实际安装位置的几何关系,对激光雷达在车体坐标系中的实际安装位置进行修正。本实施的修正算法较为简单,实用性强,便于操作。同时,有助于提高激光雷达安装位置修正的效率,减少程序冗余度,且自动化和智能化程度高,可减少人工或者无需人工参数与,进一步地缩短人工调试周期。

在一个具体的实施例中,在计算得到激光雷达的第一转动半径之后包括:

保持舵轮的转角为第一预设转角不变,并再重复至少一次得到第一转动半径的步骤;

计算所有第一转动半径的均值,并将该均值作为计算已修正实际安装位置的第一转动半径。

为了进一步地减少误差,提高精度,在获得第一个第一转动半径之后,保持舵轮的转角为第一预设转角不变,可重复得到第一转动半径的步骤。可选地,重复1次、2次、3次或者4次等。在每次重复过程中,可另起一起始点控制agv小车行走,或者为了提高修正的连贯性和自动化程度,可以上一次agv小车的第一停车点作为下一次重复的第一起始点。然后,将每次得到的第一转动半径求均值,将该均值作为计算已修正实际安装位置的第一转动半径。

在一个具体的实施例中,将上一次agv小车的第一停车点作为下一次重复得到第一转动半径步骤的第一起始点。

在重复得到第一转动半径的步骤过程中,可以把agv小车上一次的第一停车点作为下一次重复该步骤的第一起始点。进一步地,可控制agv小车依次前进转至第一预设角度后停止,求取每次前进转弯后激光雷达的第一转动半径,从而得到各第一转动半径的均值。或者还可控制agv小车先前进转弯若干次例如1次、2次或3次等,求取每次前进转弯的第一转动半径,再控制agv小车后退转弯与前进转弯相同的次数,求取每次后退转弯的第一转动半径,将每次得到的第一半径求均值。

本发明实施例的agv小车的激光雷达安装位置修正方法,能够在保证修正过程中的连续性和自动化,减少人工参数,同时也减少随机误差造成的干扰,提高修正精度。

在一个具体的实施例中,在计算得到激光雷达的第二转动半径,之后包括:

保持舵轮的转角为第二预设转角不变,并再重复至少一次得到第二转动半径的步骤。

计算所有第二转动半径的均值,并将该均值作为计算已修正实际安装位置的第二转动半径。

为了进一步地减少误差,提高精度,在获得第一个第二转动半径之后,保持舵轮的转角为第二预设转角不变,可重复一次得到第二转动半径的步骤。可选地,重复1次、2次、3次或者4次等。在每次重复过程中,可另起一起始点控制agv小车行走,或者为了提高修正的连贯性和自动化程度,可以上一次agv小车的第二停车点作为下一次重复的第二起始点。然后,将每次得到的第二转动半径求均值,将该均值作为计算已修正实际安装位置的第二转动半径。

在一个具体的实施例中,将上一次agv小车的第二停车点作为下一次重复得到第二转动半径步骤的第二起始点。

在重复得到第二转动半径的步骤过程中,可以把agv小车上一次的第二停车点作为下一次重复该步骤的第二起始点。进一步地,可控制agv小车依次前进转至第二预设角度后停止,求取每次前进转弯后的激光雷达的第二转动半径,从而得到各第二转动半径的均值。或者还可可控制agv小车先前进转弯若干次例如1次、2次或3次等,求取每次前进转弯的第二转动半径,再控制agv小车后退转弯与前进转弯相同的次数,求取每次后退转弯的第二转动半径,将每次得到的第二半径求均值。

本发明实施例的agv小车的激光雷达安装位置修正方法,能够在保证修正过程中的连续性和自动化,减少人工参数,同时也减少随机误差造成的干扰,提高修正精度。

作为一优选的实施例,以舵轮的第一预设转角为45°,第二预设转角为90°为例进行说明,当舵轮的第一预设转角为45°时,由式(4)得到此时agv小车的瞬时转动中心坐标中r1为:r1=xw+yw(11)

进一步地,当舵轮的第一预设转角为90°时,由式(4)得到此时agv小车的瞬时转动中心坐标中r2为:r2=yw(13)

进一步地,将式(11)、式(13)代入到式(10)可得到激光雷达的已修正安装位置为:

本发明实施例的agv小车的激光雷达安装位置修正法方法,包括:

步骤s4:设定舵轮的转角例如为45°,记录agv小车在第一起始点的第一初始位姿p1,并保持舵轮的转角不变,使agv小车缓慢匀速前进,当agv小车转至第一预设角度例如180°后停止,记录此时在第一停车点时激光雷达的第一最终位姿p2,按式(3)得到第一次激光雷达的第一转动半径,并记录为rs11。

步骤s6:保持舵轮的转角45°不变,以上一次agv小车的第一停车点作为第一起始点,控制agv小车前进并转至第一预设角度,并重复步骤s4中计算的第一转动半径的步骤,得到rs12。

步骤s8:保持舵轮的转角45°不变,以上一次agv小车的第一停车点作为第一起始点,控制agv小车后退并转至第一预设角度,并重复步骤s4中计算的第一转动半径的步骤,得到rs13。

步骤s10:保持舵轮的转角45°不变,以上一次agv小车的第一停车点作为第一起始点,控制agv小车后退并转至第一预设角度,并重复步骤s4中计算的第一转动半径的步骤,得到rs14。

步骤s12:取四次的计算结果的平均值,得到舵轮的转角为45°时,激光雷达的第一转动半径rs1:

步骤s14:设定舵轮的转角例如90°,记录agv小车在第二起始点的第二初始位姿p3,并保持舵轮的转角不变,使agv小车缓慢匀速前进,当agv小车转至第二预设角度例如180°后停止,记录此时在第二停车点时激光雷达的第二最终位姿p4,按式(3)得到第一次激光雷达的第二转动半径,并记录为rs21。

步骤s16:保持舵轮的转角90°不变,以上一次agv小车的第二停车点作为第二起始点,控制agv小车前进并转至第二预设角度,并重复步骤s14中计算的第二转动半径的步骤,得到rs22。

步骤s18:保持舵轮的转角90°不变,以上一次agv小车的第二停车点作为第二起始点,控制agv小车后退并转至第二预设角度,并重复步骤s14中计算的第二转动半径的步骤,得到rs23。

步骤s20:保持舵轮的转角90°不变,以上一次agv小车的第二停车点作为第二起始点,控制agv小车后退并转至第二预设角度,并重复步骤s14中计算的第二转动半径的步骤,得到rs24。

步骤s22:取四次的计算结果的平均值,得到舵轮的转角为90°时,激光雷达的第二转动半径rss:

步骤s24:按照式(15)计算得到激光雷达的已修正实际安装位置xs,ys,并将xs,ys写入到agv小车的控制,结束修正。

本发明实施例的agv小车的激光雷达安装位置修正方法,可采取第一预设转角为45°,第二预设转角为90°,可便于计算,提高修正效率。

在一个实施例中,本发明还提供了一种agv小车,包括存储器和处理器,存储器存储有计算机程序,处理器执行计算机程序时实现agv小车的激光雷达安装位置修正方法。

本发明实施例的agv小车,自动修正激光雷达的安装位置,修正计算参数较少且算法较为简单,实用性强,便于操作。同时,有助于提高激光雷达安装位置修正的效率,减少程序冗余度,且自动化程度和智能化程度高,可减少人工或者无需人工参与,进一步地缩短人工调试周期。

在本申请所提供的几个实施例中,应该理解到,所揭露的方法,也可以通过其它的方式实现。流程图或框图中的每个方框可以代表一个模块、程序段或代码的一部分,所述模块、程序段或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。也应当注意,在作为替换的实现方式中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个连续的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,结构图和/或流程图中的每个方框、以及结构图和/或流程图中的方框的组合,可以用执行规定的功能或动作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。

另外,在本发明各个实施例中的各功能模块或单元可以集成在一起形成一个独立的部分,也可以是各个模块单独存在,也可以两个或更多个模块集成形成一个独立的部分。

所述功能如果以软件功能模块的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是智能手机、个人计算机、服务器、或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:u盘、移动硬盘、只读存储器(rom,read-onlymemory)、随机存取存储器(ram,randomaccessmemory)、磁碟或者光盘等各种可以存储程序代码的介质。

以上所述,仅为本发明的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本发明的保护范围之内。

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