首页 / 堆高机作业姿态的控制方法、装置、控制器及堆高机

堆高机作业姿态的控制方法、装置、控制器及堆高机实质审查 发明

技术领域

[0001] 本申请涉及车辆技术领域,尤其涉及一种堆高机作业姿态的控制方法、装置、控制器及堆高机。

相关背景技术

[0002] 堆高机(也称为堆垛机或堆垛叉车)在港口和物流行业被广泛用于抓取和放置集装箱,通过堆高机能够快速、准确地移动和堆放集装箱,减少了人工操作的时间,提高了作业效率。
[0003] 堆高机与集装箱的相对位置不是固定的,堆高机在抓取或放置集装箱时需要行走对位,当对位不齐时,可能出现操作失败的情况。在实际使用中,一般在场地上规划贝位线,用以提高对位的精准度。但是,通过人为操作控制堆高机的对准贝位线会产生一定的误差。
[0004] 因此,如何提高堆高机对位的精度是亟待解决的问题。

具体实施方式

[0057] 这里将详细地对示例性实施例进行说明,其示例表示在附图中。下面的描述涉及附图时,除非另有表示,不同附图中的相同数字表示相同或相似的要素。以下示例性实施例中所描述的实施方式并不代表与本申请相一致的所有实施方式。相反,它们仅是与如所附权利要求书中所详述的、本申请的一些方面相一致的装置和方法的例子。
[0058] 首先对本申请所涉及的名词进行解释:
[0059] 堆高机:是指一种用于搬运、堆垛和存储货物的机械设备,特别是在仓库、港口和物流中心等环境中应用广泛。
[0060] 堆高机在进行取箱和放箱作业时,有箱位对齐的需求。当对位不齐时,可能出现操作失败的情况。在实际使用中,一般在场地上规划贝位线,用以提高对位的精准度。但是,通过人为操作控制堆高机的对准贝位线会产生一定的误差。
[0061] 鉴于上述问题,本申请提供的堆高机作业姿态的控制方法,通过控制堆高机的位姿朝向与贝位线的夹角来自动控制堆高机的位姿朝向,以使堆高机与集装箱进行对齐,提高了堆高机对位的精度。图1为本申请提供的构思示意图,如图1所示,堆高机在与贝位线有一定夹角时,控制堆高机转向,直至堆高机与贝位线的方向相同,控制堆高机直线行驶,使堆高机和箱体对齐。
[0062] 本申请的应用场景可以是堆高机抓取集装箱,行驶对齐后放置集装箱,也可以是空载去抓取集装箱。
[0063] 本申请的执行主体为堆高机的车辆控制器,也可以是控制器中的芯片或者处理器。
[0064] 下面以具体地实施例对本申请的技术方案以及本申请的技术方案如何解决上述技术问题进行详细说明。下面这几个具体的实施例可以相互结合,对于相同或相似的概念或过程可能在某些实施例中不再赘述。下面将结合附图,对本申请的实施例进行描述。
[0065] 图2为本申请提供的堆高机作业姿态的控制方法的流程示意图一,如图2所示,该方法包括:
[0066] S101、获取摄像头拍摄的堆高机前方的图像。
[0067] 在本步骤中,堆高机上的摄像头与堆高机为刚性连接,预先设置好摄像机的位置,因此图像源视角与堆高机位姿朝向的变化是同步的。图3为本申请提供的一种堆高机的示意图,如图3所示,堆高机上设置有视觉相机(即摄像头),能够拍摄堆高机前方的预先角度的图像,堆高机下方在门架底部还可以设置有激光雷达,获取前方集装箱距离,以确定到达集装箱位置进行抓取。控制器实时获取摄像头拍摄的图像数据。
[0068] S102、识别图像中的贝位线。
[0069] 在一种实现方式中,使用神经网络模型(例如LaneNet(AF)模型)对图中纵向贝位线进行检测,得到其在图像上的位置。
[0070] 示例性的,图4为本申请提供的拍摄的图像的示意图,从图像中可以识别到纵向的贝位线。
[0071] S103、根据贝位线和堆高机位姿朝向的夹角,控制堆高机在预设夹角范围内行驶。
[0072] 在一种可能的实现方式中,得到图像后,在图像中标注出堆高机位姿朝向线,因为摄像头固定在堆高机上,因此堆高机位姿朝向在图像中的位置是固定的。获取贝位线和堆高机位姿朝向线的夹角,作为贝位线和堆高机位姿朝向的夹角。
[0073] 在一种可能的实现方式中,根据摄像头的设置方向预先确定好堆高机朝向与画面中某个方向的第一夹角。在得到贝位线后,确定贝位线与该方向的第二夹角。根据第一夹角与第二夹角的差值,即可确定贝位线和堆高机位姿朝向的夹角。
[0074] 在得到贝位线和堆高机位姿朝向的夹角之后,判断夹角是否在预设的夹角范围内,若超出了预设夹角,则需要转向行驶,重新获取转向后的贝位线和堆高机位姿朝向的新的夹角,直至新的夹角到达预设的夹角范围,然后控制使堆高机在预设夹角范围内直线行驶。
[0075] 示例性的,如图5所示,图5为本申请提供的一种夹角控制的示意图,预设夹角范围为‑2°~2°的灰色区域,预设夹角范围也可以设置为其他范围,在此只是一种示例。
[0076] 夹角在‑2°~2°范围时,保持直线行驶。
[0077] 夹角在‑60°~‑2°范围时,车辆右转行驶。
[0078] 夹角在2°~60°范围时,车辆左转行驶。
[0079] 本实施例提供一种堆高机作业姿态的控制方法,该方法包括:获取摄像头拍摄的堆高机前方的图像;识别图像中的贝位线;根据贝位线和堆高机位姿朝向的夹角,控制堆高机在预设夹角范围内行驶。通过这种方法,根据堆高机的朝向与贝位线的夹角控制堆高机与集装箱自动对齐,增加对齐的精度。
[0080] 下面在一个实施例详细介绍如何确定贝位线和堆高机位姿朝向的夹角。
[0081] 图6为本申请提供的一种贝位线与堆高机位姿朝向的关系示意图,图6中a图是现实俯瞰图,堆高机朝向与贝位线的夹角为θ,而在实际应用中无法获取顶部的俯瞰图。摄像机是设置在堆高机上的,因此就生成了b图所示的图像源。因为摄像机的朝向以及摄像头的参数,图像中的画面会产生畸变,得到b图所示的画面。但是,摄像头是设置在堆高机上的,所以堆高机位姿朝向线段在各个图像中是不变的,是一条固定斜率的直线,各个图像中的贝位线是变化的。如c图所示,就可以在图像中标注出预设角度的堆高机位姿朝向线。
[0082] 因此,就可以得到堆高机位姿朝向线在图像中的方程(即第一直线方程)为:
[0083] f(x)=ax+b
[0084] 其中,a为预设的斜率,b为可变常数,x为图像中横坐标自变量。
[0085] 进一步的,需要确定贝位线的直线方程。图7为本申请提供的一种识别贝位线的示意图,如图7所示,通过神经网络模型可以检测到纵向贝位线在图中的位置,标记一条纵向贝位线的两个点(x1,y1)和(x2,y2),这两个点可以是纵向贝位线的两端,根据两个点可以确定贝位线在图像中的直线方程(即第二直线方程)为:
[0086]
[0087] 根据两条方程就可以求解贝位线与堆高机位姿朝向的夹角θ:
[0088]
[0089] 通过两条直线进行公式求解,可以精准计算贝位线与堆高机位姿朝向的夹角。
[0090] 在得到贝位线与堆高机位姿朝向的夹角之后,若夹角小于预设夹角范围,则需要对堆高机进行转向控制。但是,其夹角是在图像中两条线的夹角,需要对夹角进行转换,转换为堆高机实际的转向角度。
[0091] 因此,需要根据预设的夹角与转向角度的对应关系,确定夹角对应的转向角度,然后控制堆高机转动确定的转向角度。
[0092] 其中,预设的夹角与转向角度的对应关系,是预先根据大量实验确定的畸变图像中的夹角与实际需要转向之间的映射关系,映射关系还与摄像机设置位置和朝向有关,在摄像头的设置位置以及朝向固定后,这个关系是固定的。
[0093] 示例性的,转向角度 等于:
[0094]
[0095] 在得到转向角度后,就可以根据转向角度控制堆高机转向,图8为本申请提供的一种堆高机转向示意图,如图8所示,控制堆高机实际转动 角度。在实际场景中,转向角度有大有小,在转向角度大时,往往需要大的速度才能实现调整,在转向角度小时,只需要微调。而转向调整时,速度过大,会导致车辆侧倾,甚至倾翻,因此需要对转向速度进行限制,保证堆高机作业时的安全。
[0096] 在对堆高机行驶过程进行防倾翻的设计,需要考虑倾翻的影响因素,第一个因素是转向速度,速度越高,离心力越大,越容易倾翻;第二个是堆高机的作业的质心,质心越偏移车辆越容易倾翻;第三个是转向角度,其决定着堆高机的转弯半径,影响离心力。
[0097] 因此,需要对车辆进行受力分析以及设计控制策略。
[0098] 图9为本申请提供的一种堆高机的质心示意图,其中,a图为空载时的质心位置,b图为增加负载时的整体质心,c图为将负载抓取到高点处的质心。
[0099] 以沿着车辆纵向方向为x轴,以垂直车辆纵向方向为y轴,以高度为z轴,则空载时的质心设为(x1,y1,z1),整车质量为M,负载的质量为m,吊具高度h,负载质心通常在吊具的末端(x2,y1,h)。
[0100] 因此,在作业负载时的整体质心
[0101]
[0102] 对于空载时,负载的质量为0,空载时的质心预先可以确定好,并存储在控制器中。
[0103] 根据上述质心,可以得到堆高机的稳定力矩M1为:
[0104]
[0105] 其中,负载车辆重力为M+m,质心到地面的垂直距离为
[0106] 车辆的倾翻力矩M2为:
[0107]
[0108] 如图8所示,F为转向离心力,v为转向车速,r为转向半径。
[0109] 其中,转向半径与转向角度,以及前后轮的轮距有关:
[0110]
[0111] 其中,为转向角度,w为前后轮距。
[0112] 为避免倾翻风险,稳定力矩除以倾翻力矩需要大于等于预设的防倾翻系数L,防倾翻系数根据经验得到,可以设置为1.4、1.5、或者1.3。
[0113]
[0114] 由此,可以得到最大倾翻力矩,进而可以得到转向速度v的表达式:
[0115]
[0116] 示例性的,L取1.4,将夹角与转向角度的关系带入,可以的得到最大转向速度:
[0117]
[0118] 其中,θ为贝位线和堆高机位姿朝向的夹角,在‑2到2度的预设夹角范围内,保持预设的速度直线行驶,在本示例中,示出以30km/h的速度行驶,也可以设置为其他速度。
[0119] 通过最大转向速度的公式可以得知,负载越高或者负载越重,其整体质心越高,最大转向速度就越小。
[0120] 通过上述公式,可以确定在不同夹角情况下的转向速度,可以控制堆高机以最大转向速度行驶,或者以最大转向速度的80%行驶,或者以最大转向速度的70%行驶,在此不做限制,可以根据需要设置,但是不能超过最大转向速度。
[0121] 通过最大转向速度的限制,能够实现堆高机到集装箱的安全行驶速度控制,这种控制是动态的而不是仅限制在一个低的速度。
[0122] 下面以一个完整实例进行介绍。
[0123] 图10为本申请提供的堆高机作业姿态的控制的流程示意图二,如图10所示。
[0124] 步骤一、获取图像源。
[0125] 控制器实时获取摄像头拍摄的图像源。
[0126] 步骤二、通过AI模型检测贝位车道线。
[0127] 将获取的图像源进行预处理,预处理的目的是确保图像适合模型输入,从而提高检测的准确性和效率。调整图像大小,确保输入图像的尺寸与模型所需的输入尺寸相匹配。将图像的像素值缩放到模型训练时使用的范围,具体的,通过将像素值除以255进行归一化。可选的,使用高斯模糊等滤波器对图像进行平滑处理,减少图像中的噪声,提高车道贝位线检测的清晰度。
[0128] 将处理后的图像输入到预先训练的LaneNet模型中进行推理,模型会返回车道线的分割结果。解析模型的输出,通常包含车道线的掩膜或分割图,根据模型的输出,识别出图像中的贝位线。
[0129] 步骤三、获取车辆姿态前进的方向线。
[0130] 其中,车辆姿态前进的方向线在图像中是预设的,是一条指定斜率的直线,在图像中可以平移,目的是与贝位线产生夹角。
[0131] 步骤四、计算两线段的夹角角度。
[0132] 步骤五、调整堆高机左右走向,减少夹角角度。
[0133] 步骤六、通过防倾翻速度限制转向速度。
[0134] 防倾翻速度即前述实施例中的最大转向速度,在此不再介绍如何计算。
[0135] 步骤七、判断夹角是否小于预设夹角P。
[0136] 若没有小于预设夹角P,则返回执行步骤五。
[0137] 若小于预设夹角P,执行步骤八。
[0138] 步骤八、控制车辆直线行驶。
[0139] 步骤九、锁孔对齐或者箱位对齐。
[0140] 贝位线作为一种辅助参考线,在移动到锁孔或箱位时,堆高机在贝位线范围内,表示堆高机处于指示的最佳路径,提高对齐的准确性。进一步的,为增加对齐的精度,在到达目标位置时,通过计算图像中锁孔或箱位的位置实现精准对齐。
[0141] 上述步骤构成了一个堆高机姿态控制的基础流程,确保堆高机能够有效地识别贝位线并做出相应的控制决策。在控制策略中,通过转向角度的控制,使贝位线和堆高机位姿朝向的夹角在预设范围内,实现堆高机位姿到集装箱位姿的辅助对齐、自动对齐,能够控制最终对齐集装箱的横向误差在20mm以内。
[0142] 在上述各个实施例中,若贝位线和堆高机位姿朝向的夹角在预设范围内,还有可能存在堆高机处于贝位线之外,并且与贝位线平行的情况,因此,仅通过夹角去判断也可能产生误判,需要增加对堆高机位置点的判断。拍摄图像中的预设位置点在贝位线延长线内,这样就保证了堆高机没有超出贝位线区域,预设位置点可以采用图像底边的中点,还可以采用其他位置点,在此不做限制。通过对堆高机位置的限制使其在贝位线之内,在以夹角控制其位姿朝向,增加对齐精度。若图像中的预设位置点不在贝位线延长线之内,需要控制车辆行驶到贝位线区域中。
[0143] 图11为本申请提供的堆高机作业姿态的控制装置的结构示意图,如图11所示,本实施例提供的堆高机作业姿态的控制装置110包括:
[0144] 获取模块1101,用于获取摄像头拍摄的堆高机前方的图像;
[0145] 识别模块1102,用于识别所述图像中的贝位线;
[0146] 控制模块1103,用于根据所述贝位线和堆高机位姿朝向的夹角,控制所述堆高机在预设夹角范围内行驶。
[0147] 在一种可能的实现方式中,所述获取模块1101还用于:
[0148] 获取所述贝位线和堆高机位姿朝向线的夹角,作为所述贝位线和所述堆高机位姿朝向的夹角;其中,所述堆高机位姿朝向线为预设的指示所述堆高机在所述图像中的位姿朝向的线。
[0149] 在一种可能的实现方式中,所述控制模块1103具体用于:
[0150] 判断所述夹角是否在所述预设夹角范围内;
[0151] 若所述夹角在所述预设夹角范围内,则控制所述堆高机直线行驶;
[0152] 若所述夹角不在所述预设夹角范围内,则根据所述夹角控制所述堆高机转向行驶,直至新的贝位线和堆高机位姿朝向夹角达到所述预设夹角范围内。
[0153] 在一种可能的实现方式中,所述控制模块1103还用于:
[0154] 根据预设的夹角与转向角度的对应关系,确定所述夹角对应的转向角度;
[0155] 控制所述堆高机转动所述转向角度。
[0156] 在一种可能的实现方式中,所述装置还包括确定模块1104;
[0157] 所述确定模块1104用于根据所述转向角度、所述堆高机前轮和后轮之间的轮距、所述堆高机的重量、集装箱的重量、所述集装箱的高度和预设的防倾翻系数,确定转向速度阈值;
[0158] 相应的,所述控制控制模块1103还用于:
[0159] 控制所述堆高机以小于或等于所述转向阈值的速度转动所述转向角度。
[0160] 在一种可能的实现方式中,所述确定模块1104具体用于:
[0161] 根据所述堆高机的重量、所述集装箱的重量和所述集装箱的高度,确定稳定力矩;
[0162] 根据倾翻力矩、所述稳定力矩和所述防倾翻系数的映射关系,确定最大倾翻力矩;
[0163] 根据所述最大倾翻力矩确定所述转向速度阈值。
[0164] 在一种可能的实现方式中,所述映射关系为所述倾翻力矩除以所述稳定力矩大于或等于所述防倾翻系数。
[0165] 在一种可能的实现方式中,所述获取模块1101还用于:
[0166] 确定所述贝位线在所述图像中的第一直线方程;
[0167] 确定所述堆高机位姿朝向线在所述图像中的第二直线方程;
[0168] 根据所述第一直线方程和所述第二直线方程,确定所述夹角。
[0169] 本实施例提供的堆高机作业姿态的控制装置,可执行上述方法实施例提供的方法,其实现原理和技术效果类似,本实施例此处不做赘述。
[0170] 图12为本申请提供的电子设备的结构示意图,该电子设备可以是堆高机的控制器。如图12所示,本实施例提供的电子设备50包括:至少一个处理器501和存储器502。可选地,该设备50还包括通信部件503。其中,处理器501、存储器502以及通信部件503通过总线504连接。
[0171] 在具体实现过程中,至少一个处理器501执行存储器502存储的计算机执行指令,使得至少一个处理器501执行上述的方法。
[0172] 处理器501的具体实现过程可参见上述方法实施例,其实现原理和技术效果类似,本实施例此处不再赘述。
[0173] 在上述的实施例中,应理解,处理器可以是中央处理单元(英文:Central Processing Unit,简称:CPU),还可以是其他通用处理器、数字信号处理器(英文:Digital Signal Processor,简称:DSP)、专用集成电路(英文:Application Specific Integrated Circuit,简称:ASIC)等。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。结合发明所公开的方法的步骤可以直接体现为硬件处理器执行完成,或者用处理器中的硬件及软件模块组合执行完成。
[0174] 存储器可能包含高速存储器(Random Access Memory,RAM),也可能还包括非易失性存储器(Non‑volatile Memory,NVM),例如至少一个磁盘存储器。
[0175] 总线可以是工业标准体系结构(Industry Standard Architecture,ISA)总线、外部设备互连(Peripheral Component,PCI)总线或扩展工业标准体系结构(Extended Industry Standard Architecture,EISA)总线等。总线可以分为地址总线、数据总线、控制总线等。为便于表示,本申请附图中的总线并不限定仅有一根总线或一种类型的总线。
[0176] 本申请还提供一种堆高机,堆高机包括摄像头和控制器,摄像头和控制器连接,控制器能够根据摄像头拍摄的图像执行上述任一实施例的方法。
[0177] 本申请还提供一种计算机程序产品,包括计算机程序,该计算机程序被处理器执行时实现上述的方法。
[0178] 本申请还提供一种计算机可读存储介质,计算机可读存储介质中存储有计算机执行指令,当处理器执行计算机执行指令时,实现上述的方法。
[0179] 上述可读存储介质可以是由任何类型的易失性或非易失性存储设备或者它们的组合实现,如静态随机存取存储器(SRAM),电可擦除可编程只读存储器(EEPROM),可擦除可编程只读存储器(EPROM),可编程只读存储器(PROM),只读存储器(ROM),磁存储器,快闪存储器,磁盘或光盘。可读存储介质可以是通用或专用计算机能够存取的任何可用介质。
[0180] 一种示例性的可读存储介质耦合至处理器,从而使处理器能够从该可读存储介质读取信息,且可向该可读存储介质写入信息。当然,可读存储介质也可以是处理器的组成部分。处理器和可读存储介质可以位于专用集成电路(Application Specific Integrated Circuits,简称:ASIC)中。当然,处理器和可读存储介质也可以作为分立组件存在于设备中。
[0181] 单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
[0182] 作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
[0183] 另外,在本发明各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。
[0184] 功能如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read‑Only Memory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质。
[0185] 本领域普通技术人员可以理解:实现上述各方法实施例的全部或部分步骤可以通过程序指令相关的硬件来完成。前述的程序可以存储于一计算机可读取存储介质中。该程序在执行时,执行包括上述各方法实施例的步骤;而前述的存储介质包括:ROM、RAM、磁碟或者光盘等各种可以存储程序代码的介质。
[0186] 最后应说明的是:本领域技术人员在考虑说明书及实践这里公开的发明后,将容易想到本发明的其它实施方案。本发明旨在涵盖本发明的任何变型、用途或者适应性变化,这些变型、用途或者适应性变化遵循本发明的一般性原理并包括本发明未公开的本技术领域中的公知常识或惯用技术手段,并不局限于上面已经描述并在附图中示出的精确结构,并且可以在不脱离其范围进行各种修改和改变。本发明的范围仅由所附的权利要求书来限制。

当前第1页 第1页 第2页 第3页