CN114419164B - 位姿标定数据生成方法、装置、电子设备及存储介质 - Google Patents
位姿标定数据生成方法、装置、电子设备及存储介质 Download PDFInfo
- Publication number
- CN114419164B CN114419164B CN202210047970.1A CN202210047970A CN114419164B CN 114419164 B CN114419164 B CN 114419164B CN 202210047970 A CN202210047970 A CN 202210047970A CN 114419164 B CN114419164 B CN 114419164B
- Authority
- CN
- China
- Prior art keywords
- pose
- data
- chassis
- image
- calibration
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
- G06T7/80—Analysis of captured images to determine intrinsic or extrinsic camera parameters, i.e. camera calibration
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B25—HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
- B25J—MANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
- B25J19/00—Accessories fitted to manipulators, e.g. for monitoring, for viewing; Safety devices combined with or specially adapted for use in connection with manipulators
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
- G06T7/70—Determining position or orientation of objects or cameras
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2207/00—Indexing scheme for image analysis or image enhancement
- G06T2207/30—Subject of image; Context of image processing
- G06T2207/30204—Marker
Landscapes
- Engineering & Computer Science (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Robotics (AREA)
- Mechanical Engineering (AREA)
- Manipulator (AREA)
Abstract
本申请提供一种位姿标定数据生成方法、装置、电子设备及存储介质,通过获取仓储机器人在第一位置的底盘位姿数据和图像位姿数据,其中,底盘位姿数据表征移动底盘相对标定板的位姿,控制移动底盘移动至第二位置,并获取仓储机器人在第二位置的底盘位姿数据和图像位姿数据;根据第一位置对应的底盘位姿数据、图像位姿数据,和第二位置对应的底盘位姿数据、图像位姿数据,生成位姿标定数据,其中,位姿标定数据用于通过手眼标定算法校准仓储机器人的搬运单元的位姿。实现了对手眼标定算法所需的标定数据的生成,进而能够实现对仓储机器人的搬运单元的位姿校准,提高仓储机器人的搬运单元的位姿精确性。
Description
技术领域
本申请涉及智能仓储技术领域,尤其涉及一种位姿标定数据生成方法、装置、电子设备及存储介质。
背景技术
当前,智能仓储技术迅速发展,一些配备着机械臂或者类机械臂的搬运单元的移动仓储机器人被应用在智能仓储的场景中,随着技术的进步,智能仓储的要求也越来越高,尤其是存储密度的需求,为了满足高存储密度这个需求,需要仓储机器人的手臂的位姿精准性满足要求。
然而,由于仓储机器人安装误差等原因,仓储机器人的搬运单元的实际位姿精度与设计精度直接存在一定的位姿误差,该位姿误差会导致仓储机器人的搬运单元与仓储环境发生碰撞,从而影响仓储机器人装卸货物的效率和安全性。
发明内容
本申请提供一种位姿标定数据生成方法、装置、电子设备及存储介质,用以解决在仓储机器人的搬运单元的位姿精度低的问题。
第一方面,本申请提供了一种位姿标定数据生成方法,应用于仓储机器人,所述仓储机器人包括移动底盘、搬运单元和配置于所述搬运单元上的摄像头,所述方法包括:
获取所述仓储机器人在第一位置的底盘位姿数据和图像位姿数据,其中,所述底盘位姿数据表征所述移动底盘相对标定板的位姿,所述图像位姿数据至少包括以下一者:所述摄像头对准所述标定板拍摄的图像数据、所述摄像头对准所述标定板的动作或姿态数据、所述摄像头对准所述标定板的方向与所述仓储机器人行进方向形成的角度数据;控制所述移动底盘移动至第二位置,并获取所述仓储机器人在所述第二位置的底盘位姿数据和图像位姿数据;根据所述第一位置对应的底盘位姿数据、图像位姿数据,和所述第二位置对应的底盘位姿数据、图像位姿数据,生成位姿标定数据,其中,所述位姿标定数据用于通过手眼标定算法校准所述仓储机器人的搬运单元的位姿。
在一种可能的实现方式中,根据所述第一位置对应的底盘位姿数据、图像位姿数据,和所述第二位置对应的底盘位姿数据、图像位姿数据,生成位姿标定数据,包括:根据所述图像位姿数据,确定搬运单元位姿数据,其中,所述搬运单元位姿数据表征所述搬运单元相对所述标定板的位姿;根据所述第一位置对应的搬运单元位姿数据和所述第二位置对应的搬运单元位姿数据,生成搬运单元位姿变化数据;根据所述第一位置对应的底盘位姿数据和所述第二位置对应的底盘位姿数据,生成底盘位姿变化数据;根据所述搬运单元位姿变化数据和所述底盘位姿变化数据,生成位姿标定数据。
在一种可能的实现方式中,所述底盘位姿数据中包括第一底盘参数、第二底盘参数和第三底盘参数,其中,所述第一底盘参数表征所述移动底盘在预设坐标系内的横坐标;所述第二底盘参数表征所述移动底盘在所述预设坐标系内的纵坐标;所述第三底盘参数表征所述移动底盘在所述预设坐标系内的航向角。
在一种可能的实现方式中,获取所述底盘位姿数据,包括:扫描预设的地面二维码,获得二维码数据,所述二维码数据用于指示所述地面二维码所在预设坐标系内的位置坐标;解析所述二维码数据,获得第一底盘参数和第二底盘参数。
在一种可能的实现方式中,所述仓储机器人还包括陀螺仪传感器,所述陀螺仪传感器用于检测所述移动底盘的旋转运动;获取所述底盘位姿数据,包括:通过所述陀螺仪传感器,获得所述第三底盘数据。
在一种可能的实现方式中,所述搬运单元位姿数据包括位姿矩阵;根据所述第一位置对应的搬运单元位姿数据和所述第二位置对应的搬运单元位姿数据,生成搬运单元位姿变化数据,包括:通过所述第一位置对应的位姿矩阵和所述第二位置对应的位姿矩阵的逆矩阵的乘积,生成搬运单元位姿变化数据。
在一种可能的实现方式中,所述图像位姿数据包括标定图像,所述标定图像是所述摄像头对所述标定板的基准点进行图像采集得到的图像,根据所述图像位姿数据,确定搬运单元位姿数据,包括:对所述标定图像进行解码,得到所述搬运单元位姿数据。
在一种可能的实现方式中,在控制所述移动底盘移动至第二位置之后,所述方法还包括:控制所述搬运单元旋转预设角度,以使所述摄像头的图像采集点位于所述标定板的基准点。
在一种可能的实现方式中,所述仓储机器人还包括驱动电机单元,所述驱动电机单元用于驱动所述移动底盘移动,所述控制所述移动底盘移动至第二位置,包括:向所述驱动电机单元发送第一指令,所述第一指令用于通过驱动电机单元驱动所述移动底盘向第二位置移动;在所述移动底盘向所述第二位置移动过程中,采集所述移动底盘的状态数据,所述状态数据用于表征所述移动底盘在向所述第二位置移动过程中的运行状态;基于所述状态数据,确定所述移动底盘的估计位姿,其中,所述估计位姿中包括估计位置,所述估计位置表征所述移动底盘在向所述第二位置移动过程中在所述预设坐标系内的位置坐标;在所述移动底盘的估计位置与所述第二位置一致时,向所述驱动电机单元发送第二指令,所述第二指令用于停止所述移动底盘移动。
在一种可能的实现方式中,在所述移动底盘的估计位置与所述第二位置一致之前,所述方法还包括:基于所述估计位置,对所述驱动电机进行闭环控制,直至所述移动底盘的估计位置与所述第二位置一致。
在一种可能的实现方式中,所述驱动电机单元上设置有电机编码器,所述状态数据包括所述移动底盘的测量线速度,采集所述移动底盘的状态数据,包括:通过所述电机编码器,确定所述移动底盘的测量线速度。
在一种可能的实现方式中,所述驱动电机单元还用于驱动所述移动底盘旋转,所述估计位姿中还包括估计转角,所述估计转角表征所述移动底盘在向所述第二位置移动过程中的航向角;在所述移动底盘的估计位置与所述第二位置一致之后,所述方法还包括:基于所述估计转角,对所述驱动电机进行闭环控制,直至所述估计转角与预设航向角一致,其中,所述预设航向角为所述移动底盘位于所述第一位置时的航向角。
在一种可能的实现方式中,所述仓储机器人还包括陀螺仪传感器,所述陀螺仪传感器用于检测所述移动底盘的旋转运动,所述状态数据包括所述移动底盘的测量角速度;采集所述移动底盘的状态数据,包括:通过所述陀螺仪传感器,确定所述移动底盘的测量角速度。
在一种可能的实现方式中,基于所述状态数据,确定所述移动底盘的估计位姿,包括:获取预设的差速轮模型,其中,所述差速轮模型用于表征由移动底盘的线速度和线速度组成的输入量,与移动底盘的位姿的映射关系;基于所述移动底盘的测量线速度和测量角度速,通过所述差速轮模型,确定所述移动底盘的测量位姿;通过预设的卡尔曼滤波算法,基于所述测量位姿进行估计,得到所述估计位姿。
第二方面,本申请提供了一种位姿标定数据生成装置,应用于仓储机器人,所述仓储机器人包括移动底盘、搬运单元和配置于所述搬运单元上的摄像头,所述装置包括:
获取模块,用于获取所述仓储机器人在第一位置的底盘位姿数据和图像位姿数据,其中,所述底盘位姿数据表征所述移动底盘相对标定板的位姿,所述图像位姿数据至少包括以下一者:所述摄像头对准所述标定板拍摄的图像数据、所述摄像头对准所述标定板的动作或姿态数据、所述摄像头对准所述标定板的方向与所述仓储机器人行进方向形成的角度数据;
控制模块,用于控制所述移动底盘移动至第二位置,并获取所述仓储机器人在所述第二位置的底盘位姿数据和图像位姿数据;
生成模块,用于根据所述第一位置对应的底盘位姿数据、图像位姿数据,和所述第二位置对应的底盘位姿数据、图像位姿数据,生成位姿标定数据,其中,所述位姿标定数据用于通过手眼标定算法校准所述仓储机器人的搬运单元的位姿。
在一种可能的实现方式中,所述生成模块,具体用于:根据所述图像位姿数据,确定搬运单元位姿数据,其中,所述搬运单元位姿数据表征所述搬运单元相对所述标定板的位姿;根据所述第一位置对应的搬运单元位姿数据和所述第二位置对应的搬运单元位姿数据,生成搬运单元位姿变化数据;根据所述第一位置对应的底盘位姿数据和所述第二位置对应的底盘位姿数据,生成底盘位姿变化数据;根据所述搬运单元位姿变化数据和所述底盘位姿变化数据,生成位姿标定数据。
在一种可能的实现方式中,所述底盘位姿数据中包括第一底盘参数、第二底盘参数和第三底盘参数,其中,所述第一底盘参数表征所述移动底盘在预设坐标系内的横坐标;所述第二底盘参数表征所述移动底盘在所述预设坐标系内的纵坐标;所述第三底盘参数表征所述移动底盘在所述预设坐标系内的航向角。
在一种可能的实现方式中,所述获取模块在获取所述底盘位姿数据时,具体用于:扫描预设的地面二维码,获得二维码数据,所述二维码数据用于指示所述地面二维码所在预设坐标系内的位置坐标;解析所述二维码数据,获得第一底盘参数和第二底盘参数。
在一种可能的实现方式中,所述仓储机器人还包括陀螺仪传感器,所述陀螺仪传感器用于检测所述移动底盘的旋转运动;所述获取模块在获取所述底盘位姿数据时,具体用于:通过所述陀螺仪传感器,获得所述第三底盘数据。
在一种可能的实现方式中,所述搬运单元位姿数据包括位姿矩阵;所述生成模块在根据所述第一位置对应的搬运单元位姿数据和所述第二位置对应的搬运单元位姿数据,生成搬运单元位姿变化数据时,具体用于:通过所述第一位置对应的位姿矩阵和所述第二位置对应的位姿矩阵的逆矩阵的乘积,生成搬运单元位姿变化数据。
在一种可能的实现方式中,所述图像位姿数据包括标定图像,所述标定图像是所述摄像头对所述标定板的基准点进行图像采集得到的图像,所述生成模块在根据所述图像位姿数据,确定搬运单元位姿数据时,具体用于:对所述标定图像进行解码,得到所述搬运单元位姿数据。
在一种可能的实现方式中,在控制所述移动底盘移动至第二位置之后,所述控制模块,还用于:控制所述搬运单元旋转预设角度,以使所述摄像头的图像采集点位于所述标定板的基准点。
在一种可能的实现方式中,所述仓储机器人还包括驱动电机单元,所述驱动电机单元用于驱动所述移动底盘移动,所述控制模块在控制所述移动底盘移动至第二位置时,具体用于:向所述驱动电机单元发送第一指令,所述第一指令用于通过驱动电机单元驱动所述移动底盘向第二位置移动;在所述移动底盘向所述第二位置移动过程中,采集所述移动底盘的状态数据,所述状态数据用于表征所述移动底盘在向所述第二位置移动过程中的运行状态;基于所述状态数据,确定所述移动底盘的估计位姿,其中,所述估计位姿中包括估计位置,所述估计位置表征所述移动底盘在向所述第二位置移动过程中在所述预设坐标系内的位置坐标;在所述移动底盘的估计位置与所述第二位置一致时,向所述驱动电机单元发送第二指令,所述第二指令用于停止所述移动底盘移动。
在一种可能的实现方式中,在所述移动底盘的估计位置与所述第二位置一致之前,所述控制模块还用于:基于所述估计位置,对所述驱动电机进行闭环控制,直至所述移动底盘的估计位置与所述第二位置一致。
在一种可能的实现方式中,所述驱动电机单元上设置有电机编码器,所述状态数据包括所述移动底盘的测量线速度,所述控制模块在采集所述移动底盘的状态数据时,具体用于:通过所述电机编码器,确定所述移动底盘的测量线速度。
在一种可能的实现方式中,所述驱动电机单元还用于驱动所述移动底盘旋转,所述估计位姿中还包括估计转角,所述估计转角表征所述移动底盘在向所述第二位置移动过程中的航向角;在所述移动底盘的估计位置与所述第二位置一致之后,所述控制模块,还用于:基于所述估计转角,对所述驱动电机进行闭环控制,直至所述估计转角与预设航向角一致,其中,所述预设航向角为所述移动底盘位于所述第一位置时的航向角。
在一种可能的实现方式中,所述仓储机器人还包括陀螺仪传感器,所述陀螺仪传感器用于检测所述移动底盘的旋转运动,所述状态数据包括所述移动底盘的测量角速度;所述控制模块在采集所述移动底盘的状态数据时,具体用于:通过所述陀螺仪传感器,确定所述移动底盘的测量角速度。
在一种可能的实现方式中,所述控制模块在基于所述状态数据,确定所述移动底盘的估计位姿时,具体用于:获取预设的差速轮模型,其中,所述差速轮模型用于表征由移动底盘的线速度和线速度组成的输入量,与移动底盘的位姿的映射关系;基于所述移动底盘的测量线速度和测量角度速,通过所述差速轮模型,确定所述移动底盘的测量位姿;通过预设的卡尔曼滤波算法,基于所述测量位姿进行估计,得到所述估计位姿。
第三方面,本申请提供了一种电子设备,包括:处理器,以及与所述处理器通信连接的存储器;
所述存储器存储计算机执行指令;
所述处理器执行所述存储器存储的计算机执行指令,以实现如本申请实施例第一方面任一项所述的位姿标定数据生成方法。
第四方面,本申请提供了一种计算机可读存储介质,所述计算机可读存储介质中存储有计算机执行指令,所述计算机执行指令被处理器执行时用于实现如本申请实施例第一方面任一项所述的位姿标定数据生成方法。
根据本申请实施例的第五方面,本申请提供了一种计算机程序产品,包括计算机程序,该计算机程序被处理器执行时实现如上第一方面任一项所述的位姿标定数据生成方法。
本申请提供的位姿标定数据生成方法、装置、电子设备及存储介质,应用于仓储机器人,所述仓储机器人包括移动底盘、搬运单元和配置于所述搬运单元上的摄像头,通过获取所述仓储机器人在第一位置的底盘位姿数据和图像位姿数据,其中,所述底盘位姿数据表征所述移动底盘相对标定板的位姿,所述图像位姿数据至少包括以下一者:所述摄像头对准所述标定板拍摄的图像数据、所述摄像头对准所述标定板的动作或姿态数据、所述摄像头对准所述标定板的方向与所述仓储机器人行进方向形成的角度数据;控制所述移动底盘移动至第二位置,并获取所述仓储机器人在所述第二位置的底盘位姿数据和图像位姿数据;根据所述第一位置对应的底盘位姿数据、图像位姿数据,和所述第二位置对应的底盘位姿数据、图像位姿数据,生成位姿标定数据,其中,所述位姿标定数据用于通过手眼标定算法校准所述仓储机器人的搬运单元的位姿。基于配置于所述搬运单元上的摄像头采集的图像位姿数据,以及底盘位姿数据,通过控制仓储机器人移动,实现了对手眼标定算法所需的标定数据的生成,进而能够实现对仓储机器人的搬运单元的位姿校准,提高仓储机器人的搬运单元的位姿精确性。
附图说明
此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本申请的实施例,并与说明书一起用于解释本申请的原理。
图1为现有技术中一种智能机械臂的示意图;
图1A为本申请一个实施例提供的仓储机器人的结构示意图;
图1B为本申请图1A所示实施例中的一种搬运单元的结构示意图;
图1C为本申请图1A所示实施例中的一种搬运单元的结构示意图;
图2为本申请一个实施例提供的位姿标定数据生成方法的流程图;
图3为本申请实施例提供的一种仓储机器人与标定板的位置关系示意图;
图4为图2所述实施例中步骤S103的实现步骤流程图;
图5为本申请实施例提供的一种仓储机器人位于第一位置与第二位置时的位置示意图;
图6为本申请另一个实施例提供的位姿标定数据生成方法的流程图;
图7为图6所述实施例中步骤S204的实现步骤流程图;
图8为本申请实施例提供的一种移动底盘的控制过程示意图;
图9为本申请一个实施例提供的位姿标定数据生成装置的结构示意图;
图10为本申请一个实施例提供的电子设备的示意图。
通过上述附图,已示出本申请明确的实施例,后文中将有更详细的描述。这些附图和文字描述并不是为了通过任何方式限制本申请构思的范围,而是通过参考特定实施例为本领域技术人员说明本申请的概念。
具体实施方式
这里将详细地对示例性实施例进行说明,其示例表示在附图中。下面的描述涉及附图时,除非另有表示,不同附图中的相同数字表示相同或相似的要素。以下示例性实施例中所描述的实施方式并不代表与本申请相一致的所有实施方式。相反,它们仅是与如所附权利要求书中所详述的、本申请的一些方面相一致的装置和方法的例子。
首先对本申请所涉及的名词进行解释:
手眼标定算法:在智能机器人技术领域中,智能机器人可以基于视觉系统采集的数据,对智能机器人的执行单元进行控制,从而实现对目标物体的抓取等操作。在该过程中,智能机器人需要知道执行单元的末端(例如机械臂)的坐标系与视觉系统的传感器(例如固定在机械臂上的摄像头)的坐标系之间的映射关系,而确定这种映射关系的算法,即为手眼标定算法。
图1为现有技术中一种智能机械臂的示意图,参考图1所示,现有技术中的手眼标定算法,通常是应用于此类智能机械臂的标定,通过采集机械臂和机械臂上的摄像头在三维空间的不同位置的位姿数据,确定机械臂对应的位姿变换矩阵和摄像头对应的位姿变换矩阵,即位姿标定数据,进而根据位姿标定数据,求解机械臂对应的坐标系与摄像头对应的坐标系之间的关系,完成对机械臂位姿的校准。然而,现有技术中获取的机械臂和机械臂上的摄像头的位姿数据,通常是三维空间的位置数据,再利用三维空间的位置数据求解位姿标定数据。而在智能仓储机器人的手眼标定的应用场景下,由于仓储机器人的搬运单元(例如货叉)不能在三维空间内随意移动,而只能在竖直平面做升降运动和一定范围的旋转运动。因此,对于仓储机器人的搬运单元的校准,无法通过控制仓储机器人的搬运单元在三维空间内任意移动,而获取传统的手眼标定算法所需要的位姿标定数据,因此无法实现对搬运单元的校准。
下面以具体地实施例对本申请的技术方案以及本申请的技术方案如何解决上述技术问题进行详细说明。下面这几个具体的实施例可以相互结合,对于相同或相似的概念或过程可能在某些实施例中不再赘述。下面将结合附图,对本申请的实施例进行描述。
本实施例提供的位姿标定数据生成方法应用于仓储机器人,仓储机器人包括移动底盘、搬运单元和配置于搬运单元上的摄像头,示例性地,图1A 为本申请一个实施例提供的仓储机器人的结构示意图;如图1A所示,仓储机器人80包括移动底盘83,存储货架82,搬运单元84,升降组件81。其中,存储货架82、搬运单元84以及升降组件81均安装于移动底盘83,以及在存储货架82上设置若干存储单元。升降组件81用于驱动搬运单元84进行升降移动,使搬运单元84对准存储货架82上的任意一个存储单元,或者对准货架和/或货物。搬运单元84能以竖直方向为轴进行旋转而调整朝向,以对准至存储单元,或者对准货架和/或货物。搬运单元84用于执行货物的装载或卸除,以在货架与存储单元之间进行货物的搬运。其中,搬运单元84上配置有摄像头(图中未示出),当搬运单元上下移动或旋转时,摄像头随之对应移动或旋转。
示例性的,存储货架82可以选择性的配置或不配置,在不配置存储货架 82时,机器人80在搬运货物期间,货物是存放在搬运单元84的容置空间内。
上述实施例中的机器人80可以执行本申请任意实施例提供的货物存放方法,以实现货架、操作平台之间的货物搬运。
在机器人80执行存放货物任务的过程中,机器人80移动至货物被指定的存放空间的位置,通过调节组件,如旋转机构,配合搬运单元84,将目标物从机器人本体81的存储单元搬运至货架上。
示例性的,图1B为本申请图1A所示实施例中的一种搬运单元的结构示意图。
示例性的,搬运单元84通过旋转机构85安装于托架86,旋转机构85 用于带动搬运单元84相对于托架86绕一竖直轴线旋转,以对准存储单元,或者对准货架和/或货物。搬运单元84用于在存储单元与货架之间搬运货物。若搬运单元84未对准货架和/或货物,可通过旋转机构85带动搬运单元84 相对于托架86旋转,以保证搬运单元84对准货架和/或货物。
示例性的,图1C为本申请图1A所示实施例中的一种搬运单元的结构示意图,请配合图1B利于理解。如图1C所示,搬运单元84包括托板841和伸缩臂组件。托板841用于放置货物,可以为一水平设置的平板。伸缩臂组件用于将托板841所放置的货物推出托板841或者将货物拉至托板841。伸缩臂组件包括伸缩臂843、固定推杆842以及活动推杆844。伸缩臂843包括左伸缩臂与右伸缩臂,伸缩臂843可水平地伸出,在垂直于伸缩臂843的伸出方向且平行于托板841的方向上,伸缩臂843位于托板841的一侧。伸缩臂843由电机提供动力,由链轮机构传递动力,根据实际情况,链轮机构可以替换成带轮机构,丝杠机构等传动机构驱动。固定推杆842及活动推杆844 皆安装于伸缩臂843,固定推杆842及活动推杆844可随伸缩臂843一并伸出。固定推杆842与托板841位于伸缩臂843的同一侧,在伸缩臂843伸出时,固定推杆842用于将货物从托板841上推出。活动推杆844可收入伸缩臂843,当活动推杆844未收入伸缩臂843时,活动推杆844、固定推杆842 以及托板841三者皆位于伸缩臂843的同一侧,并且活动推杆844位于固定推杆842沿伸缩臂843的伸出方向上。活动推杆844可直接由电机驱动,根据实际情况,也可通过如齿轮组,连杆机构等传动机构传递动力。当活动推杆844未收入伸缩臂,并且伸缩臂843缩回时,活动推杆844用于将货物拉至托板841。
图2为本申请一个实施例提供的位姿标定数据生成方法的流程图,如图 2所示,本实施例提供的位姿标定数据生成方法包括以下几个步骤:
步骤S101,获取仓储机器人在第一位置的底盘位姿数据和图像位姿数据,其中,底盘位姿数据表征移动底盘相对标定板的位姿,图像位姿数据至少包括以下一者:摄像头对准标定板拍摄的图像数据、摄像头对准标定板的动作或姿态数据、摄像头对准标定板的方向与仓储机器人行进方向形成的角度数据。
示例性地,图3为本申请实施例提供的一种仓储机器人与标定板的位置关系示意图,参考图3以及图1A、图1B、图1C所示,仓储机器人80位于第一位置时,仓储机器人80通过安装在移动底盘83上的传感器,可以获得移动底盘83当前的位置和移动底盘83相对标定板的角度关系,从而生成底盘位姿数据。示例性地,底盘位姿数据可以通过第一底盘参数、第二底盘参数、第三底盘参数实现,其中,第一底盘参数表征移动底盘在预设坐标系内的横坐标;第二底盘参数表征移动底盘在预设坐标系内的纵坐标;第三底盘参数表征移动底盘在预设坐标系内的航向角。其中,如图所示,预设坐标系可以是以标定板中心点为原点的二维坐标系,其中,x轴表示横向;y轴表示纵向。在一种可能的实现方式中,获取底盘位姿数据,包括:扫描预设的地面二维码,获得二维码数据,二维码数据用于指示地面二维码所在预设坐标系内的位置坐标;解析二维码数据,获得第一底盘参数和第二底盘参数。具体地,在仓储机器人所在的智能仓库内,地面预设有地面二维码,通过设置在移动底盘上的图像传感器,扫描地面二维码,获得对应的位置信息,位置信息中包括第一底盘参数和第二底盘参数,即一个X坐标和一个Y坐标。其中,X坐标表征预设坐标系中的横坐标,Y坐标表征预设坐标系中的纵坐标。
进一步地,在一种可能的实现方式中,仓储机器人还包括陀螺仪传感器,陀螺仪传感器用于检测移动底盘的旋转运动,通过陀螺仪传感器,获得第三底盘数据,即移动底盘在预设坐标系内的航向角。进而,根据第一底盘参数、第二底盘参数和底盘参数,生成完整的底盘位姿数据。
示例性地,图像位姿数据是用于表征摄像头角度与标定板关系的数据,具体地,在一种可能的实现方式中,图像位姿数据为摄像头对准标定板拍摄的图像数据。图像位姿数据包括标定图像,参考图3所示,标定图像是摄像头87对标定板的基准点(例如标定板的中心)进行图像采集得到的图像。具体地,即摄像头在基于基准点位置进行拍摄,所采集的图像。通过对标定图像进行解码,可以确定摄像头相对标定板的拍摄角度。
在另一种可能的方式中,图像位姿数据为摄像头对准标定板的动作或姿态数据,例如摄像头在基于标定板的基准点位置进行拍摄时,摄像头本身的旋转角度,该图像位姿数据可以是基于摄像头所拍摄的图像进行解码确定的,也可以是其他外部摄像头对仓储机器人的搬运单元进行图像采集而得到的。
在又一种可能的实现方式中,图像位姿数据为摄像头对准标定板的方向与仓储机器人行进方向形成的角度数据。具体地,即摄像头在基于标定板的基准点位置进行拍摄时,摄像头本身的旋转角度与仓储机器人行进方向的角度的夹角。其中,仓储机器人行进方向的角度,可以通过其他传感器对仓储机器人的移动方向进行测试而获得,此处不进行具体限定。
步骤S102,控制移动底盘移动至第二位置,并获取仓储机器人在第二位置的底盘位姿数据和图像位姿数据。
示例性地,在获取仓储机器人在第一位置的底盘位姿数据和图像位姿数据之后,控制仓储机器人的移动底盘移动至第二位置,其中,第二位置是指与不同与第一位置的地点,可以通过输入具体地位置坐标,或者相对坐标,或者相对移动量的方式实现。例如,根据预设的目标位置(X,Y),控制移动底盘移动至座位为X、Y的位置,其中,X、Y为预设坐标系中的横坐标和纵坐标。再例如,根据相对移动坐标(m、n),控制移动底盘自当前位置,横向移动m,纵向移动n,其中,m、n为预设坐标系中的横向移动量和纵向移动量。
示例性地,在移动至第二位置后,再次获取仓储机器人在第二位置的底盘位姿数据和图像位姿数据。由于底盘位姿数据表征移动底盘相对标定板的位姿,图像位姿数据表征摄像头相对标定板的位姿,由于标定板是静止的,因此,当仓储机器人的位置发生变化时,所采集的底盘位姿数据和图像位姿数据也会相应的发生变化。进而,得到与第一位置不同的底盘位姿数据和图像位姿数据。
步骤S103,根据第一位置对应的底盘位姿数据、图像位姿数据,和第二位置对应的底盘位姿数据、图像位姿数据,生成位姿标定数据,其中,位姿标定数据用于通过手眼标定算法校准仓储机器人的搬运单元的位姿。
示例性地,在分别获得第一位置对应的底盘位姿数据、图像位姿数据,以及第二位置对应的底盘位姿数据、图像位姿数据后,通过底盘位姿数据在第一位置、第二位置的变化量,以及图像位姿数据在第一位置、第二位置的变化量,可以分别计算得到表征底盘位姿变化的底盘位姿变化数据,以及表征搬运单元位置变化的搬运单元位姿变化数据。进而,将底盘位姿变化数据和搬运单元位姿变化数据两个维度的数据,合并为位姿标定数据。
在一种可能的实现方式中,如图4所示,步骤S103的实现方式包括步骤 S1031、步骤S1032、步骤S1033和步骤S1034:
步骤S1031,根据图像位姿数据,确定搬运单元位姿数据,其中,搬运单元位姿数据表征搬运单元相对标定板的位姿。
步骤S1032,根据第一位置对应的搬运单元位姿数据和第二位置对应的搬运单元位姿数据,生成搬运单元位姿变化数据。
步骤S1033,根据第一位置对应的底盘位姿数据和第二位置对应的底盘位姿数据,生成底盘位姿变化数据。
步骤S1034,根据搬运单元位姿变化数据和底盘位姿变化数据,生成位姿标定数据。
图5为本申请实施例提供的一种仓储机器人位于第一位置与第二位置时的位置示意图,如图5所示,一方面,在仓储机器人位于第一位置时和第二位置时,根据第一位置对应的图像位姿数据和第二位置对应的图像位姿数据,分别确定对应的搬运单元位姿数据,其中,第一位置对应的搬运单元位姿数据,表征搬运单元在第一位置,且摄像头对准标定板的中心时,搬运单元的朝向角度;第二位置对应的搬运单元位姿数据,表征搬运单元在第二位置时,且摄像头对准标定板的中心时,搬运单元的朝向角度。进一步地,根据第一位置对应的搬运单元位姿数据和第二位置对应的搬运单元位姿数据,计算二者的变化量,从而确定生成搬运单元位姿变化数据。搬运单元位姿变化数据即表征搬运单元在第一位置和第二位置的朝向角度的变化情况。在一种可能的实现方式中,搬运单元位姿数据包括位姿矩阵,确定生成搬运单元位姿变化数据,包括:通过第一位置对应的位姿矩阵和第二位置对应的位姿矩阵的逆矩阵的乘积,生成搬运单元位姿变化数据。
示例性地,另一方法,在仓储机器人位于第一位置时和第二位置时,根据第一位置对应的底盘位姿数据和第二位置对应的底盘位姿数据,可以确定底盘位姿变化数据,底盘位姿变化数据表征仓储机器人的移动底盘在第一位置和在第二位置时的变化量。在一种可能的实现方式中,移动底盘在第一位置和第二位置不发生旋转,移动底盘在第一位置和第二位置的坐标,即对应搬运单元在第一位置和第二位置的坐标。因此,底盘位姿变化数据也表征搬运单元在第一位置和在第二位置时的横向、纵向的坐标变化量。
在仓储机器人的搬运单元矫正的应用场景下,由于仓储机器人的搬运单元本身无法在水平面的横向(x方向)和纵向(y方向)移动(如图1A、1B 所示,搬运单元仅能进行竖向升降和旋转),因此,传统方法中,无法通过控制搬运单元移动,而对搬运单元的横向误差和纵向误差进行矫正,而本实施例中,通过将底盘位姿变化数据和搬运单元位姿变化数据两个维度的数据,合并为位姿标定数据,以底盘位姿变化数据来表征搬运单元的横向移动情况,相当于代替传统的手眼标定算法中的机械臂的横向、纵向变化,进而结合搬运单元本身的搬运单元位姿变化数据,实现对搬运单元的位姿矫正。其中,具体地手眼标定算法为本领域技术人员知晓的现有技术,此处不再进行赘述。
本实施例中,通过获取仓储机器人在第一位置的底盘位姿数据和图像位姿数据,其中,底盘位姿数据表征移动底盘相对标定板的位姿,图像位姿数据至少包括以下一者:摄像头对准标定板拍摄的图像数据、摄像头对准标定板的动作或姿态数据、摄像头对准标定板的方向与仓储机器人行进方向形成的角度数据;控制移动底盘移动至第二位置,并获取仓储机器人在第二位置的底盘位姿数据和图像位姿数据;根据第一位置对应的底盘位姿数据、图像位姿数据,和第二位置对应的底盘位姿数据、图像位姿数据,生成位姿标定数据,其中,位姿标定数据用于通过手眼标定算法校准仓储机器人的搬运单元的位姿。基于配置于搬运单元上的摄像头采集的图像位姿数据,以及底盘位姿数据,通过控制仓储机器人移动,实现了对手眼标定算法所需的标定数据的生成,进而能够实现对仓储机器人的搬运单元的位姿校准,提高仓储机器人的搬运单元的位姿精确性。
图6为本申请另一个实施例提供的位姿标定数据生成方法的流程图,如图6所示,本实施例提供的位姿标定数据生成方法在图2所示实施例提供的位姿标定数据生成方法的基础上,对步骤S102进一步细化,其中,仓储机器人还包括驱动电机单元,驱动电机单元用于驱动移动底盘移动,则本实施例提供的位姿标定数据生成方法包括以下几个步骤:
步骤S201,获取仓储机器人在第一位置的底盘位姿数据和图像位姿数据。
步骤S202,向驱动电机单元发送第一指令,第一指令用于通过驱动电机单元驱动移动底盘向第二位置移动。
步骤S203,在移动底盘向第二位置移动过程中,采集移动底盘的状态数据,状态数据用于表征移动底盘在向第二位置移动过程中的运行状态。
示例性地,驱动电机单元上设置有电机编码器,状态数据包括移动底盘的测量线速度,采集移动底盘的状态数据,包括:通过电机编码器,确定移动底盘的测量线速度。
示例性地,通过设置在驱动电机单元上的电机编码器,确定移动底盘的测量线速度,在基于驱动电机单元的运行时长,确定移动底盘的运行距离和运行位置。其中,驱动电机单元包括横向电机单元和纵向电机单元,分别用于驱动移动底盘横向移动和纵向移动。对应的,横向电机单元和纵向电机单元上分别设置电机编码器,通过横向电机单元和纵向电机单元上分别设置的电机编码器,可以确定横向测量线速度和纵向测量线速度,进而确定移动底盘的横向位移和纵向位移。
进一步地,示例性地,仓储机器人还包括陀螺仪传感器,陀螺仪传感器用于检测移动底盘的旋转运动,状态数据包括移动底盘的测量角速度;采集移动底盘的状态数据,还包括:通过陀螺仪传感器,确定移动底盘的测量角速度。具体地,除移动底盘的横向位移和纵向位移外,移动底盘在移动过程中,还可能发生转向,陀螺仪传感器为用于检测移动底盘的旋转运动的装置,通过陀螺仪传感器,获得移动底盘的车辆角速度,进而根据测量角速度,可以确定移动底盘的旋转量,即移动底盘自第一位置移动至第二位置的过程中的航向角。
步骤S204,基于状态数据,确定移动底盘的估计位姿。
示例性地,在获取状态数据后,可以根据状态数据,实时的判断移动底盘当前所在的位置和转角,是否到达预设的目标位置、预设的旋转角度,在控制移动底盘从第一位置向第二位置移动的过程中,由于移动底盘的移动量以及转角,最终会影响位姿标定数据,因此,若由于累计误差、启动时打滑等原因,导致移动底盘从第一位置移动至第二位置的移动量有偏差,则可能影响位姿标定数据的精准性,进而影响矫正效果,因此,需要在移动底盘移动的过程中,根据其状态数据判断移动底盘的状态,保证移动底盘准确的移动至预设的第二位置。
其中,估计位姿中包括估计位置和估计转角,估计位置表征移动底盘在向第二位置移动过程中在预设坐标系内的位置坐标,估计转角表征移动底盘在向第二位置移动过程中的航向角。
示例性地,如图7所示,步骤S204的实现步骤包括:
步骤S2041,获取预设的差速轮模型,其中,差速轮模型用于表征由移动底盘的线速度和线速度组成的输入量,与移动底盘的位姿的映射关系。
步骤S2042,基于移动底盘的测量线速度和测量角度速,通过差速轮模型,确定移动底盘的测量位姿。
步骤S2043,通过预设的卡尔曼滤波算法,基于测量位姿进行估计,得到估计位姿。
示例性地,将测量线速度和测量角度速作为输入量,输入差速轮模型,根据差速轮模型所表征的映射关系,确定测量线速度和测量角度速所对应的移动底盘的测量位姿,进一步地,基于卡尔曼滤波模型,对测量位姿进行处理,得到估计值,即估计位姿,由于经卡尔曼滤波模型处理后的估计位姿,能够去除测量位姿中的噪声成分,因此,能够得到的估计位姿相比测量位姿更加准确,也即,得到更加准确的估计位置和估计转角,进而实现对移动底盘更加精准的位置控制。同时,卡尔曼滤波模型的执行效率高,实时性好,因此进一步地提高了本实施例中,在对移动底盘进行控制的应用场景下的底盘控制精度。
步骤S205,基于估计位置,对驱动电机进行闭环控制,直至移动底盘的估计位置与第二位置一致。
步骤S206,在移动底盘的估计位置与第二位置一致时,向驱动电机单元发送第二指令,第二指令用于停止移动底盘移动。
示例性地,在确定估计位置后,可以通过估计位置与预设的第二位置进行对比,并根据对比后得到的差值,对移动底盘的位置进行闭环控制。在一种可能的实现方式中,包括:通过增量式PID算法,对驱动电机进行闭环控制,直至移动底盘的估计位置与第二位置一致。从而,使移动底盘精准的停在预设的第二位置处。
进一步地,示例性地,驱动电机单元还用于驱动移动底盘旋转,估计位姿中还包括估计转角,估计转角表征移动底盘在向第二位置移动过程中的航向角;在步骤S206之后,还包括:
步骤S207,基于估计转角,对驱动电机进行闭环控制,直至估计转角与预设航向角一致,其中,预设航向角为移动底盘位于第一位置时的航向角。
步骤S208,在估计转角与预设航向角一致时,向驱动电机单元发送第三指令,第三指令用于停止移动底盘旋转。
由于仓储机器人的搬运单元是设置在移动底座上的,若移动底座在第一位置和第二位置处的转角发生变化,则该转角变化量会影响搬运单元的位姿矫正,因此,在移动底座从第一位置移动至第二位置的过程中,在判断移动底座移动至第二位置后,还需要保证移动底座的航向角与第一位置处的预设航向角一致。图8为本申请实施例提供的一种移动底盘的控制过程示意图,如图8所示,移动底盘在自第一位置项第二位置移动的过程中,首先通过实时的估计移动底盘的估计位置,并与预设的目标位置,即第二位置,进行比较,基于比较结果进行位置闭环控制,直至移动底盘到达第二位置,之后,通过移动底盘的估计转角,与预设航向角进行比较,基于比较结果进行转角闭环控制,直至移动底盘的估计转角达到预设航向角。本实施例中,基于估计转角,通过增量式PID算法,对驱动电机进行闭环控制,从而使移动底盘在第一位置时的旋转角度与第二位置时的旋转角度一致,提高对搬运单元的位姿的校准精度。
其中,PID算法和卡尔曼滤波算法的实现过程为本领域技术人员所知晓的现有技术,此处不再赘述。
步骤S209,根据第一位置对应的底盘位姿数据、图像位姿数据,和第二位置对应的底盘位姿数据、图像位姿数据,生成位姿标定数据,其中,位姿标定数据用于通过手眼标定算法校准仓储机器人的搬运单元的位姿。
本实施例中,步骤S201、步骤S209的实现方式与本申请图2所示实施例中的步骤S101、步骤S103的实现方式相同,在此不再一一赘述。
图9为本申请一个实施例提供的位姿标定数据生成装置的结构示意图,如图9所示,本实施例提供的位姿标定数据生成装置3应用于仓储机器人,仓储机器人包括移动底盘、搬运单元和配置于搬运单元上的摄像头,本实施例提供的位姿标定数据生成装置3,包括:
获取模块31,用于获取仓储机器人在第一位置的底盘位姿数据和图像位姿数据,其中,底盘位姿数据表征移动底盘相对标定板的位姿,图像位姿数据至少包括以下一者:摄像头对准标定板拍摄的图像数据、摄像头对准标定板的动作或姿态数据、摄像头对准标定板的方向与仓储机器人行进方向形成的角度数据;
控制模块32,用于控制移动底盘移动至第二位置,并获取仓储机器人在第二位置的底盘位姿数据和图像位姿数据;
生成模块33,用于根据第一位置对应的底盘位姿数据、图像位姿数据,和第二位置对应的底盘位姿数据、图像位姿数据,生成位姿标定数据,其中,位姿标定数据用于通过手眼标定算法校准仓储机器人的搬运单元的位姿。
在一种可能的实现方式中,生成模块33,具体用于:根据图像位姿数据,确定搬运单元位姿数据,其中,搬运单元位姿数据表征搬运单元相对标定板的位姿;根据第一位置对应的搬运单元位姿数据和第二位置对应的搬运单元位姿数据,生成搬运单元位姿变化数据;根据第一位置对应的底盘位姿数据和第二位置对应的底盘位姿数据,生成底盘位姿变化数据;根据搬运单元位姿变化数据和底盘位姿变化数据,生成位姿标定数据。
在一种可能的实现方式中,底盘位姿数据中包括第一底盘参数、第二底盘参数和第三底盘参数,其中,第一底盘参数表征移动底盘在预设坐标系内的横坐标;第二底盘参数表征移动底盘在预设坐标系内的纵坐标;第三底盘参数表征移动底盘在预设坐标系内的航向角。
在一种可能的实现方式中,获取模块31在获取底盘位姿数据时,具体用于:扫描预设的地面二维码,获得二维码数据,二维码数据用于指示地面二维码所在预设坐标系内的位置坐标;解析二维码数据,获得第一底盘参数和第二底盘参数。
在一种可能的实现方式中,仓储机器人还包括陀螺仪传感器,陀螺仪传感器用于检测移动底盘的旋转运动;获取模块31在获取底盘位姿数据时,具体用于:通过陀螺仪传感器,获得第三底盘数据。
在一种可能的实现方式中,搬运单元位姿数据包括位姿矩阵;生成模块33在根据第一位置对应的搬运单元位姿数据和第二位置对应的搬运单元位姿数据,生成搬运单元位姿变化数据时,具体用于:通过第一位置对应的位姿矩阵和第二位置对应的位姿矩阵的逆矩阵的乘积,生成搬运单元位姿变化数据。
在一种可能的实现方式中,图像位姿数据包括标定图像,标定图像是摄像头对标定板的基准点进行图像采集得到的图像,生成模块33在根据图像位姿数据,确定搬运单元位姿数据时,具体用于:对标定图像进行解码,得到搬运单元位姿数据。
在一种可能的实现方式中,在控制移动底盘移动至第二位置之后,控制模块32,还用于:控制搬运单元旋转预设角度,以使摄像头的图像采集点位于标定板的基准点。
在一种可能的实现方式中,仓储机器人还包括驱动电机单元,驱动电机单元用于驱动移动底盘移动,控制模块32在控制移动底盘移动至第二位置时,具体用于:向驱动电机单元发送第一指令,第一指令用于通过驱动电机单元驱动移动底盘向第二位置移动;在移动底盘向第二位置移动过程中,采集移动底盘的状态数据,状态数据用于表征移动底盘在向第二位置移动过程中的运行状态;基于状态数据,确定移动底盘的估计位姿,其中,估计位姿中包括估计位置,估计位置表征移动底盘在向第二位置移动过程中在预设坐标系内的位置坐标;在移动底盘的估计位置与第二位置一致时,向驱动电机单元发送第二指令,第二指令用于停止移动底盘移动。
在一种可能的实现方式中,在移动底盘的估计位置与第二位置一致之前,控制模块32还用于:基于估计位置,对驱动电机进行闭环控制,直至移动底盘的估计位置与第二位置一致。
在一种可能的实现方式中,驱动电机单元上设置有电机编码器,状态数据包括移动底盘的测量线速度,控制模块32在采集移动底盘的状态数据时,具体用于:通过电机编码器,确定移动底盘的测量线速度。
在一种可能的实现方式中,驱动电机单元还用于驱动移动底盘旋转,估计位姿中还包括估计转角,估计转角表征移动底盘在向第二位置移动过程中的航向角;在移动底盘的估计位置与第二位置一致之后,控制模块32,还用于:基于估计转角,对驱动电机进行闭环控制,直至估计转角与预设航向角一致,其中,预设航向角为移动底盘位于第一位置时的航向角。
在一种可能的实现方式中,仓储机器人还包括陀螺仪传感器,陀螺仪传感器用于检测移动底盘的旋转运动,状态数据包括移动底盘的测量角速度;控制模块32在采集移动底盘的状态数据时,具体用于:通过陀螺仪传感器,确定移动底盘的测量角速度。
在一种可能的实现方式中,控制模块32在基于状态数据,确定移动底盘的估计位姿时,具体用于:获取预设的差速轮模型,其中,差速轮模型用于表征由移动底盘的线速度和线速度组成的输入量,与移动底盘的位姿的映射关系;基于移动底盘的测量线速度和测量角度速,通过差速轮模型,确定移动底盘的测量位姿;通过预设的卡尔曼滤波算法,基于测量位姿进行估计,得到估计位姿。
其中,获取模块31、控制模块32和生成模块33依次连接。本实施例提供的位姿标定数据生成装置3可以执行如图2-图8任一所示的方法实施例的技术方案,其实现原理和技术效果类似,此处不再赘述。
图10为本申请一个实施例提供的电子设备的示意图,如图10所示,本实施例提供的电子设备4包括:处理器41,以及与处理器41通信连接的存储器42。
其中,存储器42存储计算机执行指令;
处理器41执行存储器42存储的计算机执行指令,以实现本申请图2-图 8所对应的实施例中任一实施例提供的位姿标定数据生成方法。
其中,存储器42和处理器41通过总线43连接。
相关说明可以对应参见图2-图8所对应的实施例中的步骤所对应的相关描述和效果进行理解,此处不做过多赘述。
本申请一个实施例提供一种计算机可读存储介质,其上存储有计算机程序,计算机程序被处理器执行以实现本申请图2-图8所对应的实施例中任一实施例提供的位姿标定数据生成方法。
其中,计算机可读存储介质可以是ROM、随机存取存储器(RAM)、 CD-ROM、磁带、软盘和光数据存储设备等。
本申请一个实施例提供一种计算机程序产品,包括计算机程序,该计算机程序被处理器执行时实现本申请图2-图8所对应的实施例中任一实施例提供的位姿标定数据生成方法。
在本申请所提供的几个实施例中,应该理解到,所揭露的装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,模块的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个模块或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或模块的间接耦合或通信连接,可以是电性,机械或其它的形式。
本领域技术人员在考虑说明书及实践这里公开的申请后,将容易想到本申请的其它实施方案。本申请旨在涵盖本申请的任何变型、用途或者适应性变化,这些变型、用途或者适应性变化遵循本申请的一般性原理并包括本申请未公开的本技术领域中的公知常识或惯用技术手段。说明书和实施例仅被视为示例性的,本申请的真正范围和精神由下面的权利要求书指出。
应当理解的是,本申请并不局限于上面已经描述并在附图中示出的精确结构,并且可以在不脱离其范围进行各种修改和改变。本申请的范围仅由所附的权利要求书来限制。
Claims (18)
1.一种位姿标定数据生成方法,其特征在于,应用于仓储机器人,所述仓储机器人包括移动底盘、搬运单元和配置于所述搬运单元上的摄像头,所述方法包括:
获取所述仓储机器人在第一位置的底盘位姿数据和图像位姿数据,其中,所述底盘位姿数据表征所述移动底盘相对标定板的位姿,所述图像位姿数据至少包括以下一者:所述摄像头对准所述标定板拍摄的图像数据、所述摄像头对准所述标定板的动作或姿态数据、所述摄像头对准所述标定板的方向与所述仓储机器人行进方向形成的角度数据;
控制所述移动底盘移动至第二位置,并获取所述仓储机器人在所述第二位置的底盘位姿数据和图像位姿数据;
根据所述第一位置对应的底盘位姿数据、图像位姿数据,和所述第二位置对应的底盘位姿数据、图像位姿数据,生成搬运单元位姿变化数据和底盘位姿变化数据;
根据所述搬运单元位姿变化数据和所述底盘位姿变化数据,生成位姿标定数据,其中,所述搬运单元位姿变化数据表征所述搬运单元在第一位置和第二位置的朝向角度的变化情况,所述底盘位姿变化数据表征所述搬运单元在第一位置和在第二位置时的横向、纵向的坐标变化量,所述位姿标定数据用于通过手眼标定算法校准所述仓储机器人的搬运单元的位姿。
2.根据权利要求1所述的方法,其特征在于,根据所述第一位置对应的底盘位姿数据、图像位姿数据,和所述第二位置对应的的底盘位姿数据、图像位姿数据,生成底盘位姿变化数据和搬运单元位姿变化数据,包括:
根据所述图像位姿数据,确定搬运单元位姿数据,其中,所述搬运单元位姿数据表征所述搬运单元相对所述标定板的位姿;
根据所述第一位置对应的搬运单元位姿数据和所述第二位置对应的搬运单元位姿数据,生成搬运单元位姿变化数据;
根据所述第一位置对应的底盘位姿数据和所述第二位置对应的底盘位姿数据,生成底盘位姿变化数据。
3.根据权利要求1所述的方法,其特征在于,所述底盘位姿数据中包括第一底盘参数、第二底盘参数和第三底盘参数,其中,所述第一底盘参数表征所述移动底盘在预设坐标系内的横坐标;所述第二底盘参数表征所述移动底盘在所述预设坐标系内的纵坐标;所述第三底盘参数表征所述移动底盘在所述预设坐标系内的航向角。
4.根据权利要求3所述的方法,其特征在于,获取所述底盘位姿数据,包括:
扫描预设的地面二维码,获得二维码数据,所述二维码数据用于指示所述地面二维码所在预设坐标系内的位置坐标;
解析所述二维码数据,获得第一底盘参数和第二底盘参数。
5.根据权利要求3所述的方法,其特征在于,所述仓储机器人还包括陀螺仪传感器,所述陀螺仪传感器用于检测所述移动底盘的旋转运动;获取所述底盘位姿数据,包括:
通过所述陀螺仪传感器,获得所述第三底盘参数。
6.根据权利要求2所述的方法,其特征在于,所述搬运单元位姿数据包括位姿矩阵;
根据所述第一位置对应的搬运单元位姿数据和所述第二位置对应的搬运单元位姿数据,生成搬运单元位姿变化数据,包括:
通过所述第一位置对应的位姿矩阵和所述第二位置对应的位姿矩阵的逆矩阵的乘积,生成搬运单元位姿变化数据。
7.根据权利要求2所述的方法,其特征在于,在所述图像位姿数据为所述摄像头对准所述标定板拍摄的图像数据时,所述图像位姿数据包括标定图像,所述标定图像是所述摄像头对所述标定板的基准点进行图像采集得到的图像,根据所述图像位姿数据,确定搬运单元位姿数据,包括:
对所述标定图像进行解码,得到所述搬运单元位姿数据。
8.根据权利要求1所述的方法,其特征在于,在控制所述移动底盘移动至第二位置之后,所述方法还包括:
控制所述搬运单元旋转预设角度,以使所述摄像头的图像采集点位于所述标定板的基准点。
9.根据权利要求1-8任一项所述的方法,其特征在于,所述仓储机器人还包括驱动电机单元,所述驱动电机单元用于驱动所述移动底盘移动,所述控制所述移动底盘移动至第二位置,包括:
向所述驱动电机单元发送第一指令,所述第一指令用于通过驱动电机单元驱动所述移动底盘向第二位置移动;
在所述移动底盘向所述第二位置移动过程中,采集所述移动底盘的状态数据,所述状态数据用于表征所述移动底盘在向所述第二位置移动过程中的运行状态;
基于所述状态数据,确定所述移动底盘的估计位姿,其中,所述估计位姿中包括估计位置,所述估计位置表征所述移动底盘在向所述第二位置移动过程中在预设坐标系内的位置坐标;
在所述移动底盘的估计位置与所述第二位置一致时,向所述驱动电机单元发送第二指令,所述第二指令用于停止所述移动底盘移动。
10.根据权利要求9所述的方法,其特征在于,在所述移动底盘的估计位置与所述第二位置一致之前,所述方法还包括:
基于所述估计位置,对所述驱动电机进行闭环控制,直至所述移动底盘的估计位置与所述第二位置一致。
11.根据权利要求9所述的方法,其特征在于,所述驱动电机单元上设置有电机编码器,所述状态数据包括所述移动底盘的测量线速度,采集所述移动底盘的状态数据,包括:
通过所述电机编码器,确定所述移动底盘的测量线速度。
12.根据权利要求9所述的方法,其特征在于,所述驱动电机单元还用于驱动所述移动底盘旋转,所述估计位姿中还包括估计转角,所述估计转角表征所述移动底盘在向所述第二位置移动过程中的航向角;
在所述移动底盘的估计位置与所述第二位置一致之后,所述方法还包括:
基于所述估计转角,对所述驱动电机进行闭环控制,直至所述估计转角与预设航向角一致,其中,所述预设航向角为所述移动底盘位于所述第一位置时的航向角。
13.根据权利要求9所述的方法,其特征在于,所述仓储机器人还包括陀螺仪传感器,所述陀螺仪传感器用于检测所述移动底盘的旋转运动,所述状态数据包括所述移动底盘的测量角速度;
采集所述移动底盘的状态数据,包括:
通过所述陀螺仪传感器,确定所述移动底盘的测量角速度。
14.根据权利要求13所述的方法,其特征在于,基于所述状态数据,确定所述移动底盘的估计位姿,包括:
获取预设的差速轮模型,其中,所述差速轮模型用于表征由移动底盘的线速度和线速度组成的输入量,与移动底盘的位姿的映射关系;
基于所述移动底盘的测量线速度和测量角度速,通过所述差速轮模型,确定所述移动底盘的测量位姿;
通过预设的卡尔曼滤波算法,基于所述测量位姿进行估计,得到所述估计位姿。
15.一种位姿标定数据生成装置,其特征在于,应用于仓储机器人,所述仓储机器人包括移动底盘、搬运单元和配置于所述搬运单元上的摄像头,所述装置包括:
获取模块,用于获取所述仓储机器人在第一位置的底盘位姿数据和图像位姿数据,其中,所述底盘位姿数据表征所述移动底盘相对标定板的位姿,所述图像位姿数据至少包括以下一者:所述摄像头对准所述标定板拍摄的图像数据、所述摄像头对准所述标定板的动作或姿态数据、所述摄像头对准所述标定板的方向与所述仓储机器人行进方向形成的角度数据;
控制模块,用于控制所述移动底盘移动至第二位置,并获取所述仓储机器人在所述第二位置的底盘位姿数据和图像位姿数据;
生成模块,用于根据所述第一位置对应的底盘位姿数据、图像位姿数据,和所述第二位置对应的底盘位姿数据、图像位姿数据,生成搬运单元位姿变化数据和底盘位姿变化数据;根据所述搬运单元位姿变化数据和所述底盘位姿变化数据,生成位姿标定数据,其中,所述搬运单元位姿变化数据表征所述搬运单元在第一位置和第二位置的朝向角度的变化情况,所述底盘位姿变化数据表征所述搬运单元在第一位置和在第二位置时的横向、纵向的坐标变化量,所述位姿标定数据用于通过手眼标定算法校准所述仓储机器人的搬运单元的位姿。
16.一种电子设备,其特征在于,包括:处理器,以及与所述处理器通信连接的存储器;
所述存储器存储计算机执行指令;
所述处理器执行所述存储器存储的计算机执行指令,以实现如权利要求1至14中任一项所述的方法。
17.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质中存储有计算机执行指令,所述计算机执行指令被处理器执行时用于实现如权利要求1至14中任一项所述的位姿标定数据生成方法。
18.一种计算机程序产品,其特征在于,包括计算机程序,该计算机程序被处理器执行时实现权利要求1至14中任一项所述的位姿标定数据生成方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210047970.1A CN114419164B (zh) | 2022-01-17 | 2022-01-17 | 位姿标定数据生成方法、装置、电子设备及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210047970.1A CN114419164B (zh) | 2022-01-17 | 2022-01-17 | 位姿标定数据生成方法、装置、电子设备及存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN114419164A CN114419164A (zh) | 2022-04-29 |
CN114419164B true CN114419164B (zh) | 2023-03-24 |
Family
ID=81272842
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202210047970.1A Active CN114419164B (zh) | 2022-01-17 | 2022-01-17 | 位姿标定数据生成方法、装置、电子设备及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN114419164B (zh) |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110238851A (zh) * | 2019-06-14 | 2019-09-17 | 苏州大学 | 一种移动机器人及其快速标定方法和系统 |
CN113666304A (zh) * | 2021-08-30 | 2021-11-19 | 上海快仓智能科技有限公司 | 搬运机器人的控制方法、装置、设备和存储介质 |
Family Cites Families (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109633612B (zh) * | 2018-10-18 | 2020-06-16 | 浙江大学 | 一种无共同观测的单线激光雷达与相机外参标定方法 |
KR102577448B1 (ko) * | 2019-01-22 | 2023-09-12 | 삼성전자 주식회사 | 핸드 아이 캘리브레이션 방법 및 시스템 |
US11254019B2 (en) * | 2019-03-05 | 2022-02-22 | The Boeing Company | Automatic calibration for a robot optical sensor |
CN110039543B (zh) * | 2019-04-14 | 2022-04-15 | 炬星科技(深圳)有限公司 | 仓储地图快速确定方法、设备、存储介质及机器人 |
CN112815851A (zh) * | 2021-04-19 | 2021-05-18 | 杭州蓝芯科技有限公司 | 手眼标定方法及装置、系统、电子设备、存储介质 |
-
2022
- 2022-01-17 CN CN202210047970.1A patent/CN114419164B/zh active Active
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110238851A (zh) * | 2019-06-14 | 2019-09-17 | 苏州大学 | 一种移动机器人及其快速标定方法和系统 |
CN113666304A (zh) * | 2021-08-30 | 2021-11-19 | 上海快仓智能科技有限公司 | 搬运机器人的控制方法、装置、设备和存储介质 |
Also Published As
Publication number | Publication date |
---|---|
CN114419164A (zh) | 2022-04-29 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109927012B (zh) | 移动抓取机器人和自动取货方法 | |
EP4005948A1 (en) | Method for controlling warehouse robot to store and retrieve inventory material | |
US11772267B2 (en) | Robotic system control method and controller | |
US20230286750A1 (en) | Method and device for storing goods, robot, warehousing system and storage medium | |
JP4565023B2 (ja) | 物品取り出し装置 | |
EP3407088A1 (en) | Systems and methods for tracking location of movable target object | |
CN112292235B (zh) | 机械手控制装置、机械手控制方法及记录介质 | |
CN112428248B (zh) | 机器人系统及控制方法 | |
WO2023005854A1 (zh) | 机器人控制方法、装置、机器人、存储介质及程序产品 | |
CN109866201B (zh) | 双目视觉系统、移动抓取机器人和自动取货方法 | |
US11570422B2 (en) | Method for calibrating a sensor unit of an industrial truck | |
CN113666304A (zh) | 搬运机器人的控制方法、装置、设备和存储介质 | |
CN112214012A (zh) | 一种导航方法、移动载体及导航系统 | |
JP2020163502A (ja) | 物体検出方法、物体検出装置およびロボットシステム | |
CN114419164B (zh) | 位姿标定数据生成方法、装置、电子设备及存储介质 | |
CN114714357A (zh) | 一种分拣搬运方法、分拣搬运机器人及存储介质 | |
US10035264B1 (en) | Real time robot implementation of state machine | |
EP4139243A1 (en) | Robot for stacking elements | |
CN115008477B (zh) | 机械手移动补偿方法、装置、计算机可读存储介质 | |
CN116902467A (zh) | 一种货箱定位方法、装置、设备和存储介质 | |
CN114034205A (zh) | 一种箱体装填系统及装填方法 | |
US20240210542A1 (en) | Methods and apparatus for lidar alignment and calibration | |
US20230419546A1 (en) | Online camera calibration for a mobile robot | |
CN114322752B (zh) | 一种玻璃自动化传输的方法、装置及设备 | |
CN114633248B (zh) | 一种机器人及定位方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |