掌桥专利:专业的专利平台
掌桥专利
首页

基于多维力信息感知的容器内液体黏度分类方法及设备

文献发布时间:2023-06-19 18:46:07


基于多维力信息感知的容器内液体黏度分类方法及设备

技术领域

本发明涉及液体黏度检测技术领域,具体涉及一种基于多维力信息感知的容器内液体黏度分类方法。

背景技术

液体黏度作为决定液体物理行为的重要性质,对于人来说,可以利用视觉和腕部力觉信息配合摇晃、搅拌等动作主动感知动作轻松得到液体黏度的大致范围。但随着信息科技和自动化产业的发展,越来越多的服务机器人出现在的生活中,同样的问题也将会在机器人上出现,所以对于液体黏度的感知研究显得尤为重要。

使用黏度计测量黏度是传统的检测方法,如:毛细管法、旋转法、落球法、振动法,虽然这种方式测量出的数值最精准,但因其设备昂贵且需要直接接触待测液体,属于入侵式检测,这并不适用于日常的生活场景下的黏度检测。此外,由于检测设备的复杂性,常常需要专门的研究人员进行检测操作,学习成本较高。Christof等人基于Kinect

视觉传感器通过构建液体晃动时的三维运动信息,利用三维点云数据训练出一个神经网络分类器,该分类器在多种形状的容器上都取得了不错的结果,但推广到未知液体上还需大量数据集,且基于视觉传感器的黏度检测往往对环境和设备要求较高。

发明内容

为解决背景技术的不足,本发明提出了一种搭载在机器人上的非入侵式液体黏度检测方法,即基于多维力信息感知的容器内液体黏度分类方法,具体方案如下:

为实现上述目的,本发明采用了以下技术方案:

一种基于多维力信息感知的容器内液体黏度分类方法,包括以下步骤,

基于运动控制模块,其特征在于,所述运动控制模块包括Universal Robot六自由度机械臂、Robotiq夹爪、六维力传感器、装有待测液体的容器;

所述六维力传感器安装在机械臂末端,Robotiq夹爪与六维力传感器相连,当需要对待测液体进行黏度分类时,控制夹爪夹持住容器;

所述六维力传感器能够同时测量空间中三个方向上力和力矩分量的传感器,分别为Fx、Fy、Fz和这三个力分量上的力矩Tx、Ty、Tz;

数据采集阶段包括以下步骤:

S1、使用搭建在Ubuntu下的ROS操作系统实现对机械臂的运动控制,控制机械臂夹取装有待测液体的容器呈水平状态,进入运动控制准备阶段;

S2、控制机械臂平行于地面沿水平方向晃动液体,作若干次水平的往返运动,对容器中的液体产生振荡激励,随后保持机械臂静止,进入数据采集准备阶段;

S3、待机械臂停止运动后,使用ROS提供的rosbag数据记录功能包,通过采集机械臂末端的六维力传感器数据,得到液体在容器内产生的振荡信息,完成数据采集阶段;

S4、更换容器中不同黏度的液体,同时每种液体再分别设置三种不同程度的填充量,重复S1-S3步骤,控制机械臂给予相同的晃动激励,以得到不同液体振荡信息。

另一方面,本发明还公开一种计算机可读设备,存储有计算机程序,所述计算机程序被处理器执行时,使得所述处理器执行如上述方法的步骤。

综上所述,本发明的一种基于多维力信息感知的容器内液体黏度分类方法,其中,硬件部分包括Universal Robot机械臂(末端执行器配备二指夹爪)、六维力传感器(安装在机械臂末端);通过PC端控制机械臂夹持着装有待测液体的容器晃动,晃动期间在Ubuntu下通过ROS采集六维力传感器数据,再经过对采集到的时序信号进行数字滤波、特征提取、支持向量机分类等操作,得到容器内待测液体的黏度。本发明可以实现在不接触液体的情况下,使用机器人将液体进行分类,为后续的机器人倾倒操作提供良好的前端感知以及对视觉上难以分辨的液体进行有效分类。

本发明的基于多维力信息感知的容器内液体黏度分类方法,通过控制机械臂对容器中的液体产生扰动,使用六维力传感器采集液体晃动的阻尼信号,S-G滤波后采用catch22对震荡信号进行关键信息提取,同时使用NCA技术对模型的分类效率进行有效提升。实现了使用非入侵式的检测方式对液体黏度进行分辨,有效避免了传统检测方式对液体的污染,同时以一种更加便捷的方式部署在机器人上,有利于弥补机器人在视觉感知上的不足,使机器人在未来更好地感知厨房、食品工厂等不同场景下的液体,进而更加智能的服务于人。

附图说明

图1是本发明实施例黏度分类方法的流程图;

图2是本发明实施例黏度分类系统侧视图;

图3是本发明实施例黏度分类系统正视图。

具体实施方式

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

根据图1流程图所示,本发明实施例首先通过黏度分类ROS中的Moveit运动控制包软件对机械臂进行水平方向上的运动控制,并确保后续采集液体晃动数据时都采用相同的运动激励,如,统一控制机械臂水平晃动容器2次。

待机械臂停止运动后,迅速进入数据采集阶段,以保证最大限度的采集到液体的晃动信息,并使用ROSbag保存2s的六维力传感器数据,其数据包含传感器六个通道数据:Fx、Fy、Fz、Tx、Ty、Tz。

以下具体说明,

其黏度分类ROS的硬件结构,包括:Universal Robot六自由度机械臂1、Robotiq夹爪2、六维力传感器3、装有待测液体的容器4。

所述六维力传感器3安装在机械臂1末端,Robotiq夹爪2与六维力传感器3相连,当需要对待测液体进行黏度分类时,控制夹爪夹持住容器。

所述的六维力传感器,能够同时测量空间中三个方向上力和力矩分量的传感器,分别为Fx、Fy、Fz和这三个力分量上的力矩Tx、Ty、Tz。

具体的说,本发明实施例的一种基于多维力信息感知的容器内液体黏度分类方法,数据采集阶段包括以下步骤:

S1、使用搭建在Ubuntu下的ROS操作系统实现对机械臂的运动控制,具体来说是控制机械臂夹取装有待测液体的容器呈水平状态,进入运动控制准备阶段。

S2、控制机械臂平行于地面沿水平方向晃动液体,作若干次水平的往返运动,对容器中的液体产生足够的振荡激励,随后保持机械臂静止,进入数据采集准备阶段。

S3、待机械臂停止运动后,使用ROS提供的rosbag数据记录功能包,通过采集机械臂末端的六维力传感器数据,得到液体在容器内产生的振荡信息,完成数据采集阶段。

S4、更换容器中不同黏度的液体,同时每种液体再分别设置三种不同程度的填充量,重复S1-S3步骤,控制机械臂给予相同的晃动激励,以得到不同液体振荡信息。

其中,所述的液体振荡信息,其基于的原理在于:液体黏度代表着液体内部的一种流动阻力,流体在流动时,相邻流体层间因为相对运动而存在摩擦阻力,这种摩擦阻力称为黏滞力,其大小用黏度衡量。黏度与物质种类、温度、浓度有关。当对容器水平晃动后,容器内液体的运动是阻尼振荡,而且阻尼振荡的振荡频率和衰减率与液体的高度和黏度直接相关,通过机器学习的方法对六维力传感器采集到的振荡数据进行数据滤波、特征提取、机器学习分类,最后实现对生活中的常见液体进行黏度分类。

所述的数据滤波,通过设计了一个Savitzky-Golay(S-G)滤波器用于平滑采集到的振荡时序信息。这种滤波器最大的特点在于在滤除噪声的同时可以确保信号的趋势、宽度不变,所以在本发明中将此滤波器用于采集到的时间序列数据上,可以在过滤掉传感器高频噪声的同时平滑数据,相较于均值滤波、中值滤波等传统方法,S-G滤波可以最大限度地保留原始力信号的趋势,这保证了后续提取到特征的有效性。

所述的特征提取方法,使用了Lubba等人建议的Catch22,即22个高性能时间序列特征,这是一组基于hctsa特征库的过滤版本,包括了线性和非线性自相关、连续差分、数值分布和离群值以及波动缩放特性。Catch22可以适合时间序列数据挖掘任务中通常遇到的动态变化。虽然相比于使用完整的hctsa特征库分类准确度降低了7%,但完成从4791个特征降到22个特征的降维任务,使从时间序列提取出特征所需的计算时间减少了约1000倍,并且计算时间会随着时间序列长度的变化接近线性缩放,这会大大提高特征提取的效率。采用此方法对每条力数据上的Fy、Tx、Tz数据进行特征提取,在三个通道上均获得22个高性能特征,为后续的分类任务做准备。

所述的特征筛选方法,运用了近邻成分分析(NCA),这是一个强大的、能处理非常高维数据集的特征选择技术。它的本质是一种简单有效的距离测度学习算法,NCA算法的目的是采用自适应的学习方法学习一个使随机近邻分类准确率尽可能高的距离度量,通过对度量矩阵的维度控制完成高维向低维的转化。在本实验中采用NCA算法针对三个力通道提取出来的22*3个特征进行权重排序,筛选出最具代表性的特征,有效地避免了“维度灾难”问题。

所述的机器学习分类,采用传统且高效的Support Vector Machine(SVM)机器学习方法对提取的特征进行分类,并使用五折交叉验证的方式验证模型的准确性。SVM由数学家Corinna Cortes和Vapnik等人早在1963年提出,它是机器学习近几十年来最为经典的,也是最受欢迎的分类方法之一。对于小样本、非线性以及高纬度的模式识别问题,SVM具有较强的优势。该算法的基本原理是:将输入向量映射到一个高维的特征空间中,并在该空间中寻找最优的分离超平面,从而将未知样本分类。当选用合适的映射函数时,在特征空间中,大多数线性不可分的问题通过引入核函数来将非线性分类问题都能被转换成线性可分类的问题。考虑到高斯核函数地泛化效果较好,在各种不同维度与样本数量的场合性能都较好,也是目前应用最为广泛的核函数,在本实验中所使用的SVM算法也是以高斯核函数作为特征空间转化的方法。

本方法基于阻尼振荡原理:对容器水平晃动后,容器内液体的运动是阻尼振荡,而且阻尼振荡的振荡频率和衰减率与液体的高度和黏度直接相关。

根据上述阻尼振荡原理,为了保证采集晃动数据的泛化性,消除液体高度对液体晃动数据的影响,在对液体数据进行采集时,将每种液体在容器中的填充度分为1/3、1/2和2/3,对于每种填充度分别采集100条数据,故每种黏度液体共计300条数据。

由于采集到的数据含有噪声,在本方法中设计了一个二阶Savitzky-Golay(S-G)滤波器,对数据进行滤波处理。

在本方法中,考虑到液体晃动数据的本质为时间序列数据,故采用Lubba等人建议的catch22,这是一组基于hctsa特征库的过滤版本筛选出来的22个高效的时间序列特征。特别之处在于,仅对采集到的每条数据上Fy、Tx、Tz通道上的数据进行特征提取,忽略另外三个未产生明显晃动信息的数据通道,共计3*22个特征。

为了剔除不必要或冗余特征,探索使用更少的特征以达到不错的分类效果,即使会适当降低一些准确度,结合近邻成分分析(NCA)方法,这是一个强大的、能处理非常高维数据集的特征选择技术。最后根据特征贡献度排序,仅保留1/3的特征。在Fy、Tx、Tz通道上共计留下22个特征。

最后对于黏度分类,采用传统且高效的Support Vector Machine(SVM)机器学习方法对提取的特征进行分类,并使用五折交叉验证的方式验证了模型的准确性。

为了探究力感知方式分类的效果和量化黏度液体,本实施例的方法采用了黏度不同的二甲基硅油作为实验对象,分别为20cst、50cst、100cst、350cst、500cst、1000cst,和1cst的水,一共7种液体。使用本方法最终得到的7种液体黏度分类正确率为93.3%,相较于未使用NCA技术时的准确度提升了3.1%。

同时使用本方法检验了在实际生活场景下的分类效果,对生活中常见的几种液体水、牛奶、酸奶、洗涤剂进行了检测。(其中包括视觉上颜色相近的液体,如:牛奶和酸奶)采用与之前实验相同的设置,每种液体分别在1/3、1/2、2/3填充程度下进行实验,每次采集100条数据,共计1200个样本。使用相同的特征提取方法,并使用上述实验筛选后的22个重要特征进行模型训练,最终针对四种常见液体的分类效果达到了99.6%,仅在黏度较高时出现了1.5%的误差。

有效佐证了基于力传感器感知分类的有效性,为以后帮助机器人更好地感知厨房、食品工厂等不同场景下的液体提供了新的感知方式。

综上所述,基于多维力信息感知的容器内液体黏度分类方法,通过控制机械臂对容器中的液体产生扰动,使用六维力传感器采集液体晃动的阻尼信号,S-G滤波后采用catch22对震荡信号进行关键信息提取,同时使用NCA技术对模型的分类效率进行有效提升。实现了使用非入侵式的检测方式对液体黏度进行分辨,有效避免了传统检测方式对液体的污染,同时以一种更加便捷的方式部署在机器人上,有利于弥补机器人在视觉感知上的不足,使机器人在未来更好地感知厨房、食品工厂等不同场景下的液体,进而更加智能的服务于人。

又一方面,本发明还公开一种计算机可读存储介质,存储有计算机程序,所述计算机程序被处理器执行时,使得所述处理器执行如上述任一方法的步骤。

再一方面,本发明还公开一种计算机设备,包括存储器和处理器,所述存储器存储有计算机程序,所述计算机程序被所述处理器执行时,使得所述处理器执行如上述任一方法的步骤。

在本申请提供的又一实施例中,还提供了一种包含指令的计算机程序产品,当其在计算机上运行时,使得计算机执行上述实施例中任一方法的步骤。

可理解的是,本发明实施例提供的系统与本发明实施例提供的方法相对应,相关内容的解释、举例和有益效果可以参考上述方法中的相应部分。

本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的程序可存储于一非易失性计算机可读取存储介质中,该程序在执行时,可包括如上述各方法的实施例的流程。其中,本申请所提供的各实施例中所使用的对存储器、存储、数据库或其它介质的任何引用,均可包括非易失性和/或易失性存储器。非易失性存储器可包括只读存储器(ROM)、可编程ROM(PROM)、电可编程ROM(EPROM)、电可擦除可编程ROM(EEPROM)或闪存。易失性存储器可包括随机存取存储器(RAM)或者外部高速缓冲存储器。作为说明而非局限,RAM以多种形式可得,诸如静态RAM(SRAM)、动态RAM(DRAM)、同步DRAM(SDRAM)、双数据率SDRAM(DDRSDRAM)、增强型SDRAM(ESDRAM)、同步链路(Synchlink)DRAM(SLDRAM)、存储器总线(Rambus)直接RAM(RDRAM)、直接存储器总线动态RAM(DRDRAM)、以及存储器总线动态RAM(RDRAM)等。

以上实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的精神和范围。

技术分类

06120115686024