基于数据驱动的图像视觉伺服控制系统及方法与流程

文档序号:20919127发布日期:2020-05-29 13:54阅读:419来源:国知局
基于数据驱动的图像视觉伺服控制系统及方法与流程
本发明涉及传感器机器人控制
技术领域
,具体地,涉及一种基于数据驱动的图像视觉伺服控制系统及方法。
背景技术
:目前机械臂在工业自动化方面得到了应用。通常情况下,机械臂的工作模式总是固定不变的,换句话说,机械臂是在静态结构环境下重复地运行预先编译好的指令,然后实现相应功能。而在动态的不确定环境下完成复杂作业,便要求机械臂配备相应的传感器,获得智能感知能力。传统的传感器技术通常会存在检测范围的局限性和检测手段的单一性等问题。而视觉传感器作为机器人的非接触式传感器,可以感知机器人外部环境的动态变化,提供更加丰富的信息,检测范围和方式更加多元化。因此,视觉传感器在机器人领域具有重要的地位和作用。视觉伺服是利用计算机视觉反馈的数据来控制机器人的运动,而该数据能够从安装在机器人上的摄像机或者安装在环境中的摄像机获取。所以视觉伺服设计囊括图像处理、计算机视觉和控制理论等领域。近年来,随着计算机视觉技术的提升,机器人的广泛应用,视觉伺服得到了飞速发展。目前,视觉伺服按照控制系统中计算机视觉的反馈信息分为基于位置的视觉伺服和基于图像的视觉伺服。按照摄像机传感器的安装方式分为基于眼在手上的视觉伺服和眼在手外的视觉伺服。根据相机的数量可以分为单目视觉伺服系统、双目视觉伺服系统和多目视觉伺服系统。其中,基于位置的视觉伺服在3d笛卡尔空间坐标系中构成闭环控制系统,然后利用视觉信息获得被观测对象在笛卡尔空间坐标系下的位置和姿态,与期望的位置和姿态形成反馈误差,根据该误差设计控制率,来驱动机器人的运动。基于图像的视觉伺服在二维的图像空间中构成闭环控制系统,并利用图像信息获取的图像特征与期望的图像特征构造反馈误差特征,再根据该误差设计控制律,实现机器人的反馈运动。顾名思义,眼在手上的视觉伺服,是将摄像机置于机器人执行器末端来进行观测;眼在手外的视觉伺服是将摄像头固定在其他地方,然后观测机器人的末端执行器位置和姿态。目前,视觉伺服的控制方法主要分为以下三大类别,分别是自适应算法、鲁棒算法和智能算法。而其中,自适应算法中可以分为参数自适应法和图像雅可比矩阵自适应法。这两种方法是分别对模型中的参数或者图像雅可比矩阵进行辨识估计。鲁棒视觉伺服是为了保证参数摄动的情况下的控制器的稳定性,可以在最优参数估计的基础上设计鲁棒控制器,从而在参数变化的一定范围内保证稳定性。智能算法主要通过神经网络、模糊控制和迭代学习控制来设计控制器。经过查阅文献,目前视觉伺服在自适应控制方面有一定的研究成果,该类方法主要通过对图像雅可比矩阵或图像雅可比矩阵中的不确定参数进行辨识,然后再用辨识好的图像雅可比矩阵去设计反馈控制律。但是通常在做参数辨识时,辨识完的模型和真实模型仍然会存在一定程度上的误差,这个问题在一定程度上抑制了视觉伺服的性能,降低了视觉伺服的收敛速度;并且辨识过程计算量较大,会减慢控制器的运行速度,降低了系统的实时性。目前没有发现同本发明类似技术的说明或报道,也尚未收集到国内外类似的资料。技术实现要素:本发明针对现有技术中存在的上述不足,提供了一种基于数据驱动的图像视觉伺服控制系统及方法,该系统及方法是一种提升视觉伺服收敛速度的控制策略设计,针对视觉伺服目标跟踪问题,通过结合视觉伺服技术和数据驱动技术,实现目标精确跟踪,提升跟踪响应速度。本发明是通过以下技术方案实现的。根据本发明的一个方面,提供了一种基于数据驱动的图像视觉伺服控制系统,包括:六轴串联机器人、机器人控制柜、控制主机、单目rgb摄像机、数据存储模块、数据计算模块以及视觉模块。其中:所述单目rgb摄像机固定在六轴串联机器人的末端执行器上,并与控制主机通信连接;所述视觉模块对单目rgb摄像机采集的图像数据进行处理并提取目标的像素位置,向控制主机提供反馈信息;所述六轴串联机器人固定在工作空间中,由机器人控制柜控制其关节运动,所述机器人控制柜与控制主机通信连接;所述数据存储模块与控制主机数据连接,用于实时从控制主机中获取历史数据并进行存储;所述数据计算模块与数据存储模块数据连接,用于实时从数据存储模块中获取历史数据进行计算,将得到的数据驱动控制补偿量提供给控制主机,用于视觉伺服控制。优选地,所述数据存储模块对操作数据进行实时存储,所述数据计算模块对获取的历史数据进行优化计算,计算所得到的结果作为视觉伺服控制补偿量,用于补偿视觉伺服控制量。优选地,所述数据计算模块对获取的历史数据进行优化计算的具体过程为:数据计算模块求解数据驱动的最优权重系数λ为:式中,为历史误差增量,e(k)为目标在k时刻的像素与期望像素的误差,t为矩阵转置运算。求解数据驱动控制补偿量为:式中,为历史控制量。优选地,所述单目rgb摄像机与控制主机通信连接。优选地,所述视觉模块对摄像机采集的图像数据进行处理并提取目标的像素位置,向控制主机提供反馈信息。优选地,所述六轴串联机器人固定在工作空间中,由机器人控制柜控制其关节运动,机器人控制柜与控制主机通信连接。优选地,所述数据存储模块与控制主机数据连接,用于实时从控制主机中获取历史数据并进行存储。优选地,所述数据计算模块与数据存储模块数据连接,用于实时从数据存储模块中获取历史数据进行计算,将得到的数据驱动控制补偿量提供给控制主机,用于视觉伺服控制。根据本发明的另一个方面,提供了一种上述任一项所述的基于数据驱动的图像视觉伺服控制系统的控制方法,包括如下步骤:s1,对系统进行初始化;s2,在k时刻,数据计算模块从数据存储模块中获取历史数据并求解数据驱动最优权重系数以及数据驱动控制补偿量;s3,从视觉模块获取目标当前的像素与期望像素的误差,从数据计算模块获取数据驱动控制补偿量加入传统视觉伺服反馈控制率中,计算生成新的控制量;,控制主机将单目rgb摄像机运动转换为六轴串联机器人关节运动,将新的控制量转换为机器人指令,并将机器人指令发送给机器人控制柜;s4,将该k时刻产生的所有数据送入数据存储模块,等待下一次控制使用;如果目标当前的像素到达期望像素,则停止控制;否则返回s2。优选地,所述s1中对系统进行初始化包括如下内容:初始化数据存储模块和数据计算模块,包括:数据滚动窗口长度初始化为l,历史控制量的最优权重系数初始化为滚动窗口下的单目rgb摄像机历史运动速度初始化为滚动窗口下的历史误差增量初始化为初始化控制主机的视觉伺服反馈控制率h、控制周期以及图像处理周期;获取系统控制目标的指定跟踪对象的期望图像,其中,所述控制目标为工作空间中的指定跟踪目标。优选地,所述s2中,求解数据驱动最优权重系数的方法为:数据存储模块提供单目rgb摄像机历史运动速度和历史误差增量其中:式中,l为数据滚动窗口长度;数据计算模块计算数据驱动的最优权重系数λ如下所示:式中,e(k)为目标在k时刻的像素与期望像素的误差,t为矩阵转置运算。优选地,所述s2中,求解数据驱动控制补偿量的方法为:式中,h为控制主机的视觉伺服反馈控制率,为图像雅可比矩阵逆矩阵的估计。优选地,所述s3中,生成新的控制量的求解方法为:基于数据驱动的视觉伺服控制器求解单目rgb摄像机在当前时刻的下一个时刻的单目rgb摄像机的运动速度vc(k)为:式中,为传统视觉伺服控制率,e(k)为目标在k时刻的像素与期望像素的误差,h为控制主机的视觉伺服反馈控制率,为图像雅可比矩阵逆矩阵的估计,λ为数据驱动的最优权重系数,单目rgb摄像机历史运动速度,为历史误差增量;得到当前时刻的下一个时刻的单目rgb摄像机运动速度vc(k)后,将该速度vc(k)送入数据存储模块进行保存,并将该速度vc(k)转换为六轴串联机器人期望关节速度。优选地,所述s3中,将单目rgb摄像机运动转换为六轴串联机器人关节运动的方法为:根据机械臂的正运动学和六轴串联机器人当前的关节角度,求解当前基坐标系和末端坐标系之间的坐标转换关系为通过手眼标定获得六轴串联机器人末端坐标系与摄像头坐标系之间的坐标转换关系为最终获得六轴串联机器人基坐标系和单目rgb摄像机坐标系的转换矩阵为:式中,为旋转矩阵,为平移向量;计算单目rgb摄像机运动速度和六轴串联机器人关节运动速度之间的关系为:式中,jb为六轴串联机器人运动学雅可比矩阵,为六轴串联机器人关节速度,θ为关节角度,δθ为关节增量,i为单位矩阵;其中式中,vc为单目rgb摄像机线速度,wc为单目rgb摄像机角速度;得到单目rgb摄像机运动速度对应的六轴串联机器人关节速度将该关节速度发送给机器人控制柜。与现有技术相比,本发明具有如下有益效果:本发明提供的基于数据驱动的图像视觉伺服控制系统及方法,通过增加数据驱动模块来消除模型误差,从而避免辨识过程中的计算量,提升系统控制性能。所述数据驱动模块来使用历史输出数据的最优权重组合加入到传统控制量中,来抑制模型误差对控制性能的影响,从而提升视觉伺服的收敛性能,提升系统控制的收敛速度。本发明提供的基于数据驱动的图像视觉伺服控制系统及方法,增加了数据存储模块和数据计算模块,设计了数据驱动补偿模块;数据存储模块将有效的历史数据提供给控制主机;数据计算模块根据历史数据来计算数据驱动控制率,并将该数据驱动控制率用于补偿控制主机中的传统视觉伺服控制率,具有数据计算量小,计算运行速度快,能有效避免因为计算量而影响系统实时性,并且利用了历史控制数据的最优权重组合来提升传统视觉伺服的收敛性能。附图说明通过阅读参照以下附图对非限制性实施例所作的详细描述,本发明的其它特征、目的和优点将会变得更明显:图1为本发明实施例所提供的基于数据驱动的图像视觉伺服控制系统结构示意图;图2为本发明实施例所提供的作为控制目标的棋盘格目标物图;图3为本发明实施例所提供的基于数据驱动的图像视觉伺服控制系统结构简图;图4为本发明实施例所提供的基于数据驱动的图像视觉伺服控制系统工作过程示意图;图5为本发明实施例所提供的基于数据驱动的图像视觉伺服控制系统的控制方法流程图;图中,1为单目rgb摄像机,2为六轴串联机器人,3为目标物上的目标特征点,4为工作坐标系,5为目标物。具体实施方式下面对本发明的实施例作详细说明:本实施例在以本发明技术方案为前提下进行实施,给出了详细的实施方式和具体的操作过程。应当指出的是,对本领域的普通技术人员来说,在不脱离本发明构思的前提下,还可以做出若干变形和改进,这些都属于本发明的保护范围。本发明实施例提供了一种基于数据驱动的图像视觉伺服控制系统,包括:轴串联机器人、机器人控制柜、控制主机、单目rgb摄像机、数据存储模块、数据计算模块以及视觉模块。其中,所述单目rgb摄像机固定在六轴串联机器人的末端执行器上,并与控制主机通信连接;所述视觉模块对摄像机采集的图像数据进行处理并提取目标的像素位置,向控制主机提供反馈信息;所述六轴串联机器人固定在工作空间中,由机器人控制柜控制其关节运动,机器人控制柜与控制主机通信连接;所述数据存储模块与控制主机数据连接,用于实时从控制主机中获取历史数据并进行存储;所述数据计算模块与数据存储模块数据连接,用于实时从数据存储模块中获取历史数据进行计算,将得到的数据驱动控制补偿量提供给控制主机,用于视觉伺服控制。进一步地,所述数据计算模块对获取的历史数据进行优化计算,计算所得到的结果为视觉伺服控制补偿量,该结果用于补偿视觉伺服控制量。基于本发明实施例所提供的基于数据驱动的图像视觉伺服控制系统,本发明实施例同时提供了一种该系统的控制方法,包括:s1,对系统进行初始化;初始化数据存储模块和数据计算模块,包括:数据滚动窗口长度初始化为l,历史控制量的最优权重系数初始化为滚动窗口下的单目rgb摄像机历史运动速度初始化为滚动窗口下的历史误差增量初始化为初始化控制主机的视觉伺服反馈控制率h、控制周期以及图像处理周期;获取系统控制目标的指定跟踪对象的期望图像,其中,所述控制目标为工作空间中的指定跟踪目标。s2,在k时刻,数据存储模块提供单目rgb摄像机历史运动速度和历史误差增量数据计算模块计算数据驱动的最优权重系数λ如下所示:求解数据驱动控制补偿量为:s3,基于数据驱动的视觉伺服控制器求解单目rgb摄像机在当前时刻的下一个时刻的单目rgb摄像机的运动速度vc(k)为:得到当前时刻的下一个时刻的单目rgb摄像机运动速度vc(k)后,将该速度vc(k)送入数据存储模块进行保存。根据机械臂的正运动学和六轴串联机器人当前的关节角度,求解六轴串联机器人基坐标系和单目rgb摄像机坐标系的转换矩阵为:计算单目rgb摄像机运动速度和六轴串联机器人关节运动速度之间的关系为:得到单目rgb摄像机运动速度对应的六轴串联机器人关节速度将该关节速度发生给机器人控制柜。s4,将该k时刻产生的所有数据送入数据存储模块,等待下一次控制使用;如果目标当前的像素到达期望像素,则停止控制;否则返回s2。下面结合具体实施例,并结合附图,对本发明实施例技术方案作进一步详细说明。本具体实施例所提供的基于数据驱动的图像视觉伺服控制系统,在前人视觉伺服工作的基础上,增加数据驱动模块来消除模型误差,并且避免了辨识过程中的计算量,提升了系统控制性能。该数据驱动模块使用历史数据的最优权重组合加入到传统控制量中,来抑制模型误差对控制性能的影响,从而提升视觉伺服的收敛性能,提升系统的计算速度。本具体实施例所提供的基于数据驱动的图像视觉伺服控制系统,其结构示意图如图1所示,该基于数据驱动的图像视觉伺服控制系统,采用六自由度六轴串联机器人和单目摄像机来搭建实现,跟踪目标如图2所示,系统结构简图如图3所示,整个工作过程如图4所示,系统的控制方法流程图如图5所示。本具体实施例所提供的基于数据驱动的图像视觉伺服控制系统,其各模块的具体实现过程如下:1、视觉模块本具体实施例中视觉模块由工业单目rgb摄像机及其配件组成。其分辨率960*1280,帧数为30fps/s,使用usb3.0通讯传图,其内参参数如下该单目rgb摄像机视觉模块对棋盘格进行实时检测,并将特征点的像素位置实时反馈给视觉伺服控制器模块,单目rgb摄像机模块本身的运动由六轴串联机器人模块提供运动支撑。视觉检测具体任务如下:设定给定棋盘格上的角点为特征点,对其进行实时信息采集和跟踪,并将目标的位置信息反馈给控制主机。2、六轴串联机器人和机器人控制柜六轴串联机器人选取为六自由度串联六轴串联机器人,其dh参数如表1所示。六轴串联机器人末端执行器上搭载视觉模型,它们之间的坐标系转换矩阵为表1iαi-1ai-1θi-1di-110°0θ10.242m2-90°0θ2-90°030°0.225mθ3+90°0490°0θ40.229m590°0-θ506-90°0θ60.05m机器人控制柜的控制芯片为嵌入式stm32,通过调节pwm波对六轴串联机器人关节位置进行控制,通过串口通讯接受控制的控制命令和反馈机器人状态信息。3、控制主机、数据存储模块、数据计算模块控制主机根据视觉模块反馈的坐标信息,基于传统视觉伺服控制方式,设计六轴串联机器人模块的控制指令。在控制的过程中,将历史的控制指令和误差增量进行存储到数据存储模块以备数据计算模块使用。数据计算模块调用历史数据计算历史控制量的最优权重组合系数,并计算视觉伺服的控制率的补偿量。最后,控制主机结合传统视觉伺服控制量和数据驱动补偿量得到最终输出量,并将数据驱动控制量发送给机器人控制柜,六轴串联机器人按照控制指令,完成相应操作。本具体实施例所提供的基于数据驱动的图像视觉伺服控制系统,其控制方法,包括以下具体步骤:s1,对系统进行初始化;初始化数据存储模块和数据计算模块,包括:数据滚动窗口长度初始化为l,历史控制量的最优权重系数初始化为滚动窗口下的单目rgb摄像机历史运动速度初始化为滚动窗口下的历史误差增量初始化为初始化控制主机的视觉伺服反馈控制率h、控制周期以及图像处理周期;获取系统控制目标的指定跟踪对象的期望图像,其中,所述控制目标为工作空间中的指定跟踪目标。s2,在k时刻,数据存储模块提供单目rgb摄像机历史运动速度和历史误差增量数据计算模块计算数据驱动的最优权重系数λ如下所示:求解数据驱动控制补偿量为:s3,基于数据驱动的视觉伺服控制器求解单目rgb摄像机在当前时刻的下一个时刻的单目rgb摄像机的运动速度vc(k)为:得到当前时刻的下一个时刻的单目rgb摄像机运动速度vc(k)后,将该速度vc(k)送入数据存储模块进行保存。根据机械臂的正运动学和六轴串联机器人当前的关节角度,求解六轴串联机器人基坐标系和单目rgb摄像机坐标系的转换矩阵为:计算单目rgb摄像机运动速度和六轴串联机器人关节运动速度之间的关系为:得到单目rgb摄像机运动速度对应的六轴串联机器人关节速度将该关节速度发生给机器人控制柜。s4,将该k时刻产生的所有数据送入数据存储模块,等待下一次控制使用;如果目标当前的像素到达期望像素,则停止控制;否则返回s2。本发明上述实施例所提供的基于数据驱动的图像视觉伺服控制系统及方法,其中,单目rgb摄像机固定在六轴串联机器人的末端执行器上,并与控制主机通信连接;六轴串联机器人固定在工作空间中,接收机器人控制柜的指令。机器人控制柜与控制主机通信连接;数据存储模块从控制主机中获取数据进行存储;数据计算模块与数据存储模块数据连接,从数据存储模块中获取历史数据并计算得到的数据驱动控制补偿量提供给控制主机。本发明上述实施例所提供的系统基及方法,数据计算量小,计算运行速度快,能有效避免因为计算量而影响系统实时性,并且利用了历史控制数据的最优权重组合来提升传统视觉伺服的收敛性能。以上对本发明的具体实施例进行了描述。需要理解的是,本发明并不局限于上述特定实施方式,本领域技术人员可以在权利要求的范围内做出各种变形或修改,这并不影响本发明的实质内容。当前第1页12
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1