本发明涉及自动搬运领域,特别涉及一种无人搬运车agv及其路线纠偏方法。
背景技术:
现行的全自动停车库和全自动物流搬运等领域,常用到无人搬运车(automatedguidedvehicle,agv),该agv能准确、高效、灵活的完成搬运任务,且agv都需要在载体(货架、托盘等)下面运行。现有的agv的引导方式主要有:电磁感应引导、激光引导和视觉引导等。
电磁感应引导一般是在地面上沿预设行驶路线埋设天线,当天线中流经高频电流时导线周围产生电磁场,agv小车装有电磁感应器可在埋设的天线上按预定线路行驶。
激光引导是在运行路径沿途的墙壁或支柱上安装有高反光性反射板的激光定位标志,agv小车装有激光扫描器,agv依靠激光扫描器发射激光束,然后接受由四周定位标志反射回的激光束,车载计算机计算出车辆当前的位置以及运动的方向,实现自动搬运功能。
视觉引导是在agv小车上装有摄像机和传感器,在车载计算机中设置有agv欲行驶路径周围环境图像数据库。agv行驶过程中,摄像机动态获取车辆周围环境图像信息并与图像数据库进行比较,从而确定当前位置并对下一步行驶做出决策。
发明人在实现本发明的过程中发现,现行非常热门的全自动停车库、快递货到人前分拣、汽车生产线和一些经常需要改变导航路径的领域中,agv都需要在载体(货架、托盘等)下面运行,电磁感应引导的agv易受环路周围金属物质的干扰,施工难,且不易维护;激光引导的agv激光扫描头发射的激光光束易被遮挡,无法很好的识别周边的定位反光板,而且激光测距需要照射布置在周边的反射板,这样的条件在很多环境中无法达到;视觉导航的agv小车在这种环境的运行过程中发生了路线偏移时,是针对偏移的类型进行车身姿态调整,调整到原位置未偏移的状态,增加了运输时间。
鉴于此,在全自动停车库、快递货到人前分拣、汽车生产线和一些经常需要改变导航路径的领域,选择视觉引导的agv小车时,在agv小车的运行过程中如何在agv小车继续运行中进行纠正偏移姿态调整,以实现平滑的纠偏是本领域的技术人员所关注的。
技术实现要素:
本发明的目的在于提供一种无人搬运车agv及其路线纠偏方法,使得agv在运输过程中发生线路偏转时能及时纠偏后回到目标路线。
为解决上述技术问题,本发明的实施方式提供了一种无人搬运车agv路线纠偏方法,包含以下步骤:
获取所述agv的图像传感器拍摄获得的图像,其中,所述图像传感器拍摄的位置为所述agv底部中心位置的正下方;
若确定所述图像中的路线指引标志不在预设位置,则根据所述图像中路线指引标志所在的位置确定所述agv中心点与所述预设位置所在直线的垂直距离值;
根据所述垂直距离值、到达目标状态所需运行的水平距离值、所述agv中心点运行需要保持的速度值以及所述agv各驱动组之间的位置关系,确定所述agv从当前状态运行至所述目标状态所需的控制信息,其中,在所述目标状态下所述图像传感器拍摄获得的图像中所述路线指引标志位于所述预设位置;
根据所述控制信息运行所述agv,直至所述agv达到所述目标状态。
本发明的实施方式还提供了一种无人搬运车agv,包括:多个驱动组、图像传感器和处理器,其中,每个所述驱动组中均包含转向轮组件和编码器,且至少两个所述驱动中包含行走轮组件,所述转向轮组件中包括转向轮、转向轮驱动电机以及转向轮电机控制器,所述行走轮组件中包括行走轮、行走轮驱动电机和行走轮电机控制器,所述编码器用于记录所述驱动组行走的位移值和转向的角度值;
所述图像传感器拍摄获得所述agv底部中心位置正下方的图像;
所述处理器获取所述图像传感器拍摄获得的图像;
所述处理器若确定所述图像中的路线指引标志不在预设位置,则根据所述图像中路线指引标志所在的位置确定所述agv中心点与所述预设位置所在直线的垂直距离值;
所述处理器根据所述垂直距离值、到达目标状态所需运行的水平距离值、所述agv中心点运行需要保持的速度值以及所述agv各驱动组之间的位置关系,确定所述agv从当前状态运行至所述目标状态所需的控制信息,其中,在所述目标状态下所述图像传感器拍摄获得的图像中所述路线指引标志位于所述预设位置;
所述处理器分别根据所述控制信息驱动每个所述驱动组,直至所述agv达到所述目标状态。
本发明实施方式相对于现有技术而言,本实施方式中通过图像传感器拍摄获得的图像,通过分析拍摄的图像确定agv的中心点与预设位置所在直线的垂直距离,根据该垂直距离、到达目标状态需要运行的水平距离值、agv运行速度值以及agv各驱动组件之间位置关系,即可确定agv从当前状态运行至目标状态需要的控制信息,在该控制信息的控制下运行agv,即可使得agv运行至目标状态,从而实现对agv的纠偏,提高agv的搬运效率,且能够使得agv平滑得回到目标状态。
另外,该agv小车的路线纠偏方法中,所述根据所述垂直距离值、到达目标状态所需运行的水平距离值、所述agv中心点运行需要保持的速度值以及所述agv各驱动组之间的位置关系,确定所述agv从当前状态运行至所述目标状态所需的控制信息,包括:
根据所述agv中心点的坐标以及所述agv各驱动组之间的位置关系,确定所述当前状态下所述agv每个驱动组的坐标;
根据所述垂直距离值、所述水平距离值以及所述当前状态下所述agv每个驱动组的坐标,确定所述目标状态下所述agv每个驱动组的坐标;
根据所述agv中心点运行需要保持的速度值、所述垂直距离值以及所述水平距离值,确定所述控制信息,其中,所述控制信息包括所述agv的每个驱动组各自所需的运行速度值以及所述每个驱动组各自所需的旋转角度值。
该实施方式中,通过确定每个驱动组各自的运行速度值以及每个驱动组各自所需的旋转角度值,使得能够保证agv小车整体的速度保持一致,使得各驱动组能够协同运行至目标状态。
另外,该agv的路线纠偏方法中,所述agv各驱动组之间的关系包括:所述agv各驱动组组成长方形,所述长方形每条边的边长以及所述长方形的对角线与至少一条边的夹角。
另外,该agv的路线纠偏方法中,所述到达目标状态所需运行的水平距离值为预先配置得到。该实施方式中,通过设置达到目标状态所需运行的水平距离值,使得控制信息的确定过程简单化,能够进一步提高纠偏效率。
另外,该agv的路线纠偏方法中,所述到达目标状态所需运行的水平距离值至少大于所述agv车体的长度。该实施方式中,选取目标状态的距离值至少大于agv车体的长度,保证agv纠偏能够顺利进行,且保证纠偏过程的平滑性。
附图说明
图1是本发明第一实施方式中带自动导航装置的agv路线纠偏方法流程图;
图2是本发明第二实施方式中带自动导航装置的agv路线纠偏方法流程图;
图3是本发明第二实施方式中一个具体的实现过程中路线偏移图;
图4a是本发明第二实施方式中一个具体的偏移类型图;
图4b是本发明第二实施方式中一个具体的偏移类型图;
图5是本发明第三实施方式中带自动导航装置的agv的结构示意图;
图6是本发明第四实施方式中处理器的模块结构示意图。
具体实施方式
为使本发明的目的、技术方案和优点更加清楚,下面将结合附图对本发明的各实施方式进行详细的阐述。然而,本领域的普通技术人员可以理解,在本发明各实施方式中,为了使读者更好地理解本申请而提出了许多技术细节。但是,即使没有这些技术细节和基于以下各实施方式的种种变化和修改,也可以实现本申请各权利要求所要求保护的技术方案。
本发明的第一实施方式涉及一种agv路线纠偏方法,应用于agv上。具体流程如图1所示。
步骤101:获取agv的图像传感器拍摄获得的图像,其中,图像传感器拍摄的位置为agv底部中心位置的正下方;
步骤102:若确定拍摄的图像中的路线指引标志不在预设位置,则根据图像中路线指引标志所在的位置确定该agv中心点与预设位置所在直线的垂直距离值;
步骤103:根据该垂直距离值、到达目标状态所需运行的水平距离值、agv中心点运行需要保持的速度值以及agv各驱动组之间的位置关系,确定agv从当前状态运行至目标状态所需的控制信息,其中,agv在目标状态下时图像传感器拍摄获得的图像中路线指引标志位于预设位置;
步骤104:根据控制信息运行agv,直至agv达到目标状态。
一个具体实施中,图像传感器设置在agv底部中心,且拍摄区域的中心位置为该agv底部中心的正下方。
一个具体实施中,图像传感器可以实时拍摄agv底部中心位置的正下方,也可以按照预设周期拍摄agv底部中心位置的正下方。其中,该预设周期以不大于agv完全脱离指引标志所需的时长为宜。
相对于现有技术而言,本发明的第一实施方式是搬运车在行驶路线中发生路线偏移时,通过分析图像传感器拍摄的图像确定agv在偏移状态下的偏移量,包括agv的中心点与预设位置所在直线的垂直距离和达到目标状态需要运行的水平距离,根据该垂直距离和该水平距离确定的偏移量与要到达的目标状态的控制信息,agv在该控制信息作用下使搬运车平滑的运行至目标状态。相对于现有技术本实施方式的纠偏方法提高了agv的搬运效率,以及保证agv能平滑的回到目标状态。
具体的,本实施方式中指引标志可以为色带,二维码或者功能控制码等。其中,色带可以与功能控制码配合使用,在需要转弯或运动方向发生改变的点设置功能控制码,色带具有易于实施、维护简单、成本小等优点。同时需要说明的是,指引标志的选择此处仅为举例,不局限于色带,二维码或功能标识码,只要是视觉传感器能够根据指引标志确定行进路线以及确定是否在行进过程中发生偏移,均在本发明的保护范围之内。具体实施中色带和二维码更容易更换,成本更低。
例如,在指引标志是二维码的情况中,则视觉传感器在读取偏移量时,可读取角度偏差的范围是0°到360°;在agv路线运行方向可读取的偏差范围是-45mm(毫米)到+45mm(超过范围不可读);在agv运行路线的垂直方向上的可读取的偏差范围是-70mm到+70mm(超过范围不可读)。
本发明的第二实施方式涉及一种agv路线纠偏方法。第二实施方式与第一实施方式大致相同,主要区别之处在于:相对于在第一实施方式,在本发明第二实施方式中,具体说明了确定agv从当前状态运行至目标状态所需的控制信息的过程。具体流程如图2所示。
步骤201:获取agv的图像传感器拍摄获得的图像,其中,该图像传感器拍摄的位置为agv底部中心位置的正下方;
步骤202:若确定图像中的路线指引标志不在预设位置,则根据该图像中路线指引标志所在的位置确定agv中心点与预设位置所在直线的垂直距离值;
步骤203:根据agv中心点的坐标以及agv各驱动组之间的位置关系,确定当前状态下agv每个驱动组的坐标;
步骤204:根据垂直距离值、水平距离值以及当前状态下agv每个驱动组的坐标,确定目标状态下agv每个驱动组的坐标;
步骤205:根据agv中心点运行需要保持的速度值、垂直距离值以及水平距离值,确定控制信息,其中,控制信息包括agv的每个驱动组各自所需的运行速度值以及每个驱动组各自所需的旋转角度值;
步骤206:根据控制信息运行agv,直至agv达到目标状态。
基于以上第一或第二实施方式的一个具体实现中,该agv路线纠偏方法中agv各驱动组之间的关系包括:agv各驱动组组成长方形,且该长方形每条边的边长以及长方形的对角线与至少一条边的夹角。另外,agv到达目标状态所需运行的水平距离值为预先配置得到。到达目标状态所需运行的水平距离值至少大于agv车体的长度。
一个具体的实施方式中,如图3所示,当agv沿以色带作为指引标志的路线上运行时,若发生图3所示的路线偏移,参考第一和第二实施方式中的描述,若根据对图像传感器拍摄图像的分析结果角度偏移的量为θ,则agv的垂直距离值为h;当agv的四轮定位点确定后该agv被唯一确定,如图3中a、b、c、d四点,其中,a、b、c、d四点分别表示agv的四轮的位置,a、b、c、d构成一个确定的长方形。如图3所示,以agv的中心点z作为参考点,z点为坐标原点,以z所在的平行于色带的直线为x轴,agv沿指引标志运行方向为x轴的正方向,以垂直于x轴的方向为y轴,以垂直于x轴向上的方向为y轴正方向。图3仅是给出了一种坐标表示,不限于图3中表示的坐标系的定义方式,当以平行于指引标志的指向作为x轴所建立的坐标系均可,且可以参考以下各个点的坐标以及各个点的偏移角度的计算方式。agv当前状态与目标状态之间的水平距离值为预先配置得到,具体的此处用m表示当前状态的中心点与目标状态的中心点之间的水平距离值(m至少大于该agv车长),保持agv中心点z的速度为v。
以图3中的偏移状态为例,一个具体实施中,图像传感器实时拍摄的图像中指引标志不在预设位置,且指引标志未处于拍摄图像的中心,以该图像的中心点到该图像中指引标志所在直线的垂直距离,将该垂直距离乘以预设系数后所得的值作为agv在路线运行中的垂直偏移量。如图3中h所示的距离即为图像中路线指引标志所在的位置确定该agv中心点与预设位置所在直线的垂直距离值。其中,预设系数为实际拍摄区域的大于与拍摄所得的图像的大小的比值。
若z点的坐标表示为(xz,yz),图3是一种坐标的表示方式,其中z为原点,则z的坐标为(0,0)由于a、b、c、d组成长方形,且已知ab和bc的边长,可由此计算出a、b、c、d四个点的坐标。ac与ab之前的夹角可以表示为表达式1:
φ=arcsin(ab/ac)(1)
则在该直角坐标系中a点的坐标(xa,ya)可以表示为表达式2和表达式3:
表达式2中xa表示a点的横坐标,xz为z点的横坐标,θ表示在图3中agv在角度上的偏移量(设定agv向下偏移的时候θ为负数,向上偏移的时候θ为正数)。
表达式3中ya表示a点的纵坐标,yz为z点的纵坐标,
路线纠偏后为目标状态,如图3所示,z1是目标状态的中心点,坐标表示为(xz+m,yz-h),根据目标状态得到纠偏之后a、b、c、d四点的坐标,其中a1为纠偏后的a坐标(xa1,ya1),用表达式4和表达式5表示:
xz为z点的横坐标,xa1为a1点的横坐标,ya1为a1点的纵坐标。
agv路线纠偏的目标状态如图3所示,保持agv中心点z的速度为v,因此,到达目标状态的时间用表达式6表示为:
agv到达目标状态的时间为δt,则a点在δt时间到达a1点,在纠偏过程中a点的速度va用表达式7表示为:
表达式7中xa、ya、xa1、ya1、δt在上述表达式2至6均已做出表示。
若有方向偏差同样应计算方向的偏差值,a的旋转角度值αa用表达式8表示:
αa=arctan[(ya1-ya)/(xa1-xa)]+θ(8)
表达式8中xa、ya、xa1、ya1在上述表达式2至5中已做出表示,θ表示在图3中agv在角度上的偏移量(若agv向下偏移的时候θ为负数,此表达式依然适用)。
同理可以推理出b、c、d的角度值,b的角度值为
在一个具体的实施方式中,agv在图3表示的色带路线运动时,不考虑x方向的偏差,y方向的偏差范围是-45mm(毫米)到+45mm(超过范围不可读);角度偏差的范围是-45°到+45°(超过范围不可读)。此为举例说明,偏差范围以视觉传感器的识别范围为准。
基于以上第一或第二的具体实施方式中,agv发生的偏移可能为方向无偏差时角度偏差;角度无偏差时方向偏差。控制算法与上述相同,如图4a中方向无偏差时角度偏差,则以h=0的情况做同样的推理;如图4b中角度无偏差时方向偏差,则同样以上述a的推理过程相同。
上面各种方法的步骤划分,只是为了描述清楚,实现时可以合并为一个步骤或者对某些步骤进行拆分,分解为多个步骤,只要包含相同的逻辑关系,都在本专利的保护范围内;对算法中或者流程中添加无关紧要的修改或者引入无关紧要的设计,但不改变其算法和流程的核心设计都在该专利的保护范围内。
本发明第三实施方式涉及一种agv,如图5所示,包含:图像传感器501、处理器502和驱动组503。agv包含:多个驱动组、图像传感器和处理器,其中,每个驱动组中均包含转向轮组件和编码器,且至少两个驱动中包含行走轮组件,转向轮组件中包括转向轮、转向轮驱动电机以及转向轮电机控制器,行走轮组件中包括行走轮、行走轮驱动电机和行走轮电机控制器,编码器用于记录驱动组行走的位移值和转向的角度值;
图像传感器拍摄获得所述agv底部中心位置正下方的图像;
其中,处理器中存储有程序,用于执行如下步骤:
处理器获取所述图像传感器拍摄获得的图像;
处理器若确定所述图像中的路线指引标志不在预设位置,则根据所述图像中路线指引标志所在的位置确定所述agv中心点与所述预设位置所在直线的垂直距离值;
处理器根据所述垂直距离值、到达目标状态所需运行的水平距离值、所述agv中心点运行需要保持的速度值以及所述agv各驱动组之间的位置关系,确定所述agv从当前状态运行至所述目标状态所需的控制信息,其中,在所述目标状态下所述图像传感器拍摄获得的图像中所述路线指引标志位于所述预设位置;
处理器分别根据所述控制信息驱动每个所述驱动组,直至所述agv达到目标状态。
不难发现,本实施方式为与第一实施方式相对应的系统实施例,本实施方式可与第一实施方式互相配合实施。第一实施方式中提到的相关技术细节在本实施方式中依然有效,为了减少重复,这里不再赘述。相应地,本实施方式中提到的相关技术细节也可应用在第一实施方式中。
具体的,第三实施方式中,处理器、图像传感器和驱动组采用总线方式连接,总线可以包括任意数量的互联的总线和桥,总线将包括由处理器代表的一个或多个处理器和驱动组代表的多个驱动组的各种电路链接在一起。总线还可以将诸如外围设备、稳压器和功率管理电路等之类的各种其他电路链接在一起,这些都是本领域所公知的,因此,本文不再对其进行进一步描述。总线接口在总线和图像传感器之间提供接口。图像传感器可以是一个元件,也可以是多个元件,用于获取拍摄图像。处理器负责管理总线和通常的处理,还可以提供各种功能,包括定时,外围接口,电压调节、电源管理以及其他控制功能。
本发明的第四实施例涉及一种agv,第四实施方式与第三实施方式大致相同,如图6所示主要区别之处在于:在本发明第四实施方式中,处理器主要包括:获取模块601、运算模块602、发送模块603。
获取模块601:用于获取根据agv中心点的坐标以及agv各驱动组之间的位置关系,确定当前状态下agv每个驱动组的坐标,还用于根据垂直距离值、水平距离值以及当前状态下agv每个驱动组的坐标,确定目标状态下agv每个驱动组的坐标;
运算模块602:用于根据agv中心点运行需要保持的速度值、垂直距离值以及水平距离值,确定控制信息,其中,控制信息包括agv的每个驱动组各自所需的运行速度值以及每个驱动组各自所需的旋转角度值;
发送模块603:用于将控制信息发送到每个驱动组,直至agv达到目标状态。
由于第二实施方式与本实施方式相互对应,因此本实施方式可与第二实施方式互相配合实施。第二实施方式中提到的相关技术细节在本实施方式中依然有效,在第二实施方式中所能达到的技术效果在本实施方式中也同样可以实现,为了减少重复,这里不再赘述。相应地,本实施方式中提到的相关技术细节也可应用在第二实施方式中。
在一个具体的实施方式中,agv的四个轮子均为驱动轮,包含4个驱动组,一种优选的实施方案中,agv的四个轮子中均包含转向轮组件,在处于对角线的两个行走轮可以共用一个行走轮组件。
值得一提的是,本实施方式中所涉及到的各模块均为逻辑模块,在实际应用中,一个逻辑单元可以是一个物理单元,也可以是一个物理单元的一部分,还可以以多个物理单元的组合实现。此外,为了突出本发明的创新部分,本实施方式中并没有将与解决本发明所提出的技术问题关系不太密切的单元引入,但这并不表明本实施方式中不存在其它的单元。
本领域技术人员可以理解实现上述实施例方法中的全部或部分步骤是可以通过程序来指令相关的硬件来完成,该程序存储在一个存储介质中,包括若干指令用以使得一个设备(可以是单片机,芯片等)或处理器(processor)执行本申请各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:u盘、移动硬盘、只读存储器(rom,read-onlymemory)、随机存取存储器(ram,randomaccessmemory)、磁碟或者光盘等各种可以存储程序代码的介质。
本领域的普通技术人员可以理解,上述各实施方式是实现本发明的具体实施例,而在实际应用中,可以在形式上和细节上对其作各种改变,而不偏离本发明的精神和范围。