一种基于姿态估计的多工业机器人安全性检测方法及系统
技术领域
本发明涉及智能制造和机器人领域,具体涉及一种基于姿态估计的多工业机器人安全性检测方法。
背景技术
工业机器人是集自动化,机械,嵌入式,液压,电气等硬件及其控制软件在内组成的复杂系统。其可以代替工人从事一些危险和复杂的重复性劳动。由于工业机器人精度高且无需休息,其已经广泛应用于制造业。然而,随着工业机器人的大量应用,工业机器人伤人事件时有发生。导致工业机器人安全事故的主要原因有人为因素和机器人自身故障。其中机器人自身误动作导致的安全事故占据了一半以上的比例。人为因素可以通过加强管理和培训进行控制,而机器人自身误动作导致的安全问题需要通过技术手段进行解决。由于信号干扰,器件老化,金属疲劳等各种原因,机器人误动作在机器人作业过程中大量存在。机器人误动作轻则造成机器人运动失调,导致挤压、碰撞事故,重则威胁到附近人员的生命安全。特别是在人机协作场景下,机器人安全问题至关重要。
授权公告号为CN106625724B的中国专利公开了一种面向云控制平台的工业机器人本体安全控制方法,首先,根据工业机器人所在现场情况从云控制平台下载相应等级的安全保护逻辑至安全保护模块;其次,通过安全保护逻辑对工业机器人各轴及末端的实时状态信息进行计算分析,当出现异常状态时发出报警信息并控制机器人停止运动;最后,利用安全保护逻辑对云控制平台发出的控制指令进行分析,判断其是否会使工业机器人的位置姿态超出安全保护范围,最终作出隔离或者执行控制指令的判断。
公开号为CN101509839的中国专利公开了一种基于离群点挖掘的集群工业机器人故障诊断方法,包括如下步骤:
1)采用多输入通道数据采集卡获取集群工业机器人的运行状态数据;所述运行状态数据包括:总消耗功率、基座振动、各电机的功率及工作电流、旋转关节的角速度、任务执行结果;
2)将获得的运行状态数据按统一格式整理归类,通过添加数据标识区分数据来源及数据类型,然后传输到系统数据库进行保存;
3)对集群工业机器人的运行状态数据进行聚类分析,利用离群点挖掘方法计算每台工业机器人的离群因子得出其离群程度,并根据离群程度分离出离群点,进一步确定离群点所代表的个体工业机器人是否出现故障,并通过异常运行参数的种类判断出机器人出现故障的具体部位,获得故障诊断结果;
4)将包括工业机器人的运行状态数据、故障诊断结果在内的信息存储到系统数据库中,并通过专用显示端口直接显示数据,作为管理、维修和更新工业机器人的依据。
现有技术中需要采用多个数据采集装置采集工业机器人的状态信息,对多个数据采集装置采集工业机器人的状态信息进行处理从而判断工业机器人是否状态异常,检测过程较为复杂,且成本较高。
发明内容
本发明的目的在于克服现有技术中的缺点,提供一种基于姿态估计的多工业机器人安全性检测方法及系统。
本发明的目的是通过以下技术方案来实现的:一种基于姿态估计的多工业机器人安全性检测方法,包括以下步骤:
S1:采集多工业机器人标准作业视频,并建立多个单工业机器人动作模式姿态向量序列A14,所述单工业机器人动作模式姿态向量序列A14中包含多个单工业机器人姿态向量A13,执行S2;
S2:实时采集多工业机器人的作业视频,获取多个单工业机器人姿态向量A23,执行S3;
S3:将任一所述单工业机器人姿态向量A23,记为h1,与对应的单工业机器人动作模式姿态向量序列A14进行匹配,若匹配成功,则执行S2,若匹配失败,则检测到异常动作,控制工业机器人急停。
本发明的有益效果是,本方法具有采用非接触式的方式实时采集工业机器人作业图像,将单工业机器人实时作业视频进行分帧,计算出单工业机器人姿态向量A23与对应的单工业机器人动作模式姿态向量序列A14进行匹配,若判断机器人动作异常则控制机器人急停,本方法无需数据采集装置采集工业机器人各轴及末端的实时状态信息或工业机器人的运行状态数据,检测过程简单准确且成本较低,而且可以同时检测多个工业机器人的工作状态。
进一步,所述S1具体包括以下步骤,
S101:采集多工业机器人标准作业视频,执行S102;
S102:对所述多工业机器人标准作业视频进行T视频帧提取,形成多个视频帧序列A11,执行S103;
S103:对所述视频帧序列A11中的图像进行姿态估计,获得单工业机器人姿态向量序列,包含多个单工业机器人姿态向量A13,所述单工业机器人姿态向量序列为一个热点集合,每个热点(x,y)表示一个工业机器人轴关节的图像坐标位置,执行S104;
S104:分别获取多个单工业机器人动作模式姿态向量序列A14,所述单工业机器人动作模式姿态向量序列A14仅包含一个作业周期。
采用上述进一步方案的有益效果是,采集多工业机器人标准作业视频,并进行T视频帧提取,T视频帧提取是指以时间T为间隔时间对视频进行分帧,由于多工业机器人标准作业视频中的图像包含了多个单工业机器人的动作图像,形成多个视频帧序列A11,在实际生产中,多个单工业机器人并不完全同步工作,为了减少拍摄次数,该多工业机器人标准作业视频包括多个单工业机器人至少一个工作周期的图像。获得单工业机器人姿态向量序列,包含多个单工业机器人姿态向量A13,所述单工业机器人姿态向量序列为一个热点集合,每个热点(x,y)表示一个工业机器人轴关节的图像坐标位置,使得检测更准确,计算每个所述单工业机器人动作模式姿态向量序列A14,用所述单工业机器人动作模式姿态向量序列A14表示单机器人一个周期的标准姿态作为实时检测时的对比标准。
进一步,所述S103的具体过程为:
S1031:对人体姿态估计模型OpenPose进行扩展形成RoboOpenPose,使其适用于工业机器人的姿态估计,执行S1032;
S1032:采用标注的工业机器人数据集对上述RoboOpenPose模型进行训练,执行S1033;
S1033:将所述视频帧序列A11中的图像输入到训练好的RoboOpenPose模型,输出单工业机器人姿态向量序列。
采用上述进一步方案的有益效果是,采用标记的数据集对RoboOpenPose模型进行训练,输出单工业机器人姿态向量序列,单工业机器人姿态向量序列为一个热点集合,每个热点(x,y)表示一个工业机器人轴关节的图像坐标位置,使得检测更准确。
进一步,所述S2具体包括以下步骤,
S201:实时采集多工业机器人的作业视频,执行S202;
S202:对所述多工业机器人作业视频进行T视频帧提取,形成多个视频帧序列A21,执行S203;
S203:对所述视频帧序列A21中的图像进行姿态估计,获得单工业机器人姿态向量A23。
采用上述进一步方案的有益效果是,实时采集多工业机器人作业视频,并进行T视频帧提取,T视频帧提取是指以时间T为间隔时间对视频进行分帧,由于多工业机器人作业视频中的图像包含了多个单工业机器人的动作图像,形成多个视频帧序列A21,在实际生产中,多个单工业机器人并不完全同步工作,为了减少拍摄次数,该多工业机器人作业视频中可以包括多个单工业机器人至少一个工作周期的图像,也可单独单机一个机器人一个周期的作业图像进行检测。
进一步,所述S3具体包括以下步骤:
S301:将所述单工业机器人动作模式姿态向量序列A14中的子序列依次进行序列号标记,记所述序列号的变量为qn,其中,n=1,2,3,…,n1,则依次为:q1=-1,q2=0,q3=1,q4=2,…,qn1=n1-1,执行S302;
S302:初始化序号变量,令q1=-1,执行S303;
S303:判断是否q1=-1,若是,执行S304,若否,执行S307;
S304:从所述单工业机器人动作模式姿态向量序列A14中查找子序列h1的极近似值,所述极近似值在所述单工业机器人动作模式姿态向量序列A14的顺序号记作q0,若极近似值不存在,则令q0=-1,执行S305;
S305:判断是否q0=-1,若是,则执行S309,若否,则执行S306;
S306:令q1=q0,执行S307;
S307:令q1=q1+1,执行S308;
S308:获取所述单工业机器人动作模式姿态向量序列A14中序号为q1的子序列,记为h2,若h1与h2极近似则执行S2,否则,执行S309;
S309:检测到异常动作,控制工业机器人急停。
采用上述进一步方案的有益效果是,首先将单工业机器人动作模式姿态向量序列A14中的子序列依次进行序列号标记,方便后序进行比较,由S3的具体步骤可以看出,当没有极近似值或者出现跳帧时会出现告警。
进一步,所述S304中极近似值的判断标准为:采用欧氏距离D(h1,h2)度量h1和h2的相似度,当D(h1,h2)≤δ时则认为h1与h2近似相等,其中δ为给定的相似度阈值。
一种基于姿态估计的多工业机器人安全性检测系统,包括,
图像采集装置,用于采集多工业机器人标准作业视频,还用于实时采集多工业机器人作业视频;
故障检测装置,用于接收所述图像采集装置采集的多工业机器人标准作业视频,建立多个单工业机器人动作模式姿态向量序列A14,所述单工业机器人动作模式姿态向量序列A14中包含多个单工业机器人姿态向量A13;还用于接收所述图像采集装置实时采集的多机器人作业视频,获取多个单工业机器人姿态向量A23,将任一所述单工业机器人姿态向量A23,记为h1,与对应的单工业机器人动作模式姿态向量序列A14进行匹配,并在检测单工业机器人动作异常时发送急停控制信号;
控制器,用于接收故障检测装置发送的急停控制信号并控制工业机器人停止工作。
本发明的有益效果是,本系统采用非接触式的方式实时采集工业机器人作业图像,将单工业机器人实时作业视频进行分帧,计算出单工业机器人姿态向量A23与对应的单工业机器人动作模式姿态向量序列A14进行匹配,若判断机器人动作异常则控制机器人急停,本系统无需数据采集装置采集工业机器人各轴及末端的实时状态信息或工业机器人的运行状态数据,检测过程简单准确且成本较低,而且可以同时检测多个工业机器人的工作状态。
进一步,所述故障检测装置包括视频处理单元、姿态估计单元、标准动作模式姿态向量建立单元、实时姿态向量建立单元、异常动作检测单元;
所述视频处理单元用于对所述图像采集装置采集的多工业机器人标准作业视频进行T视频帧提取,形成多个视频帧序列A11,还用于对所述图像采集装置实时采集的多机器人作业视频进行T视频帧提取,形成多个视频帧序列A21;
所述姿态估计单元用于分别对所述视频帧序列A11中的图像和所述视频帧序列A21中的图像进行姿态估计,获得单工业机器人姿态向量序列和单工业机器人姿态向量A23,所述单工业机器人姿态向量序列包含多个单工业机器人姿态向量A13;
所述标准动作模式姿态向量建立单元用于根据所述单工业机器人姿态向量A13生成单工业机器人姿态向量序列A14;
所述实时姿态向量建立单元用于存储所述单工业机器人姿态向量A23;
所述异常动作检测单元用于将任一所述单工业机器人姿态向量A23,记为h1,与对应的单工业机器人动作模式姿态向量序列A14进行匹配,并在检测单工业机器人动作异常时发送急停控制信号。
采用上述进一步方案的有益效果是,所述视频处理单元对多工业机器人标准作业视频或实时采集多工业作业视频进行T视频帧提取,T视频帧提取是指以时间T为间隔时间对视频进行分帧,由于视频中的图像包含了多个单工业机器人的动作图像,形成多个视频帧序列A11或A21,在实际生产中,多个单工业机器人并不完全同步工作,为了减少拍摄次数,该多工业机器人标准作业视频包括多个单工业机器人至少一个工作周期的图像,而实时采集的多工业机器人作业视频中可以包括多个单工业机器人至少一个工作周期的图像,也可单独单机一个机器人一个周期的作业图像进行检测;姿态估计单元进行姿态估计获得单工业机器人姿态向量序列和单工业机器人姿态向量A23,所述单工业机器人姿态向量序列包含多个单工业机器人姿态向量A13;异常动作检测单元将需要进行检测的图像的单工业机器人姿态向量A23,记为h1,与对应的单工业机器人动作模式姿态向量序列A14进行匹配,并在检测单工业机器人动作异常时发送急停控制信号,检测过程简单准确且成本较低,而且可以同时检测多个工业机器人的工作状态。
进一步,所述异故障检测装置检测单工业机器人是否动作异常包括以下步骤,
S301:将所述单工业机器人动作模式姿态向量序列A14中的子序列依次进行序列号标记,记所述序列号的变量为qn,其中,n=1,2,3,…,n1,则依次为:q1=-1,q2=0,q3=1,q4=2,…,qn1=n1-1,执行S302;
S302:初始化序号变量,令q1=-1,执行S303;
S303:判断是否q1=-1,若是,执行S304,若否,执行S307;
S304:从所述单工业机器人动作模式姿态向量序列A14中查找子序列h1的极近似值,所述极近似值在所述单工业机器人动作模式姿态向量序列A14的顺序号记作q0,若极近似值不存在,则令q0=-1,执行S305;
S305:判断是否q0=-1,若是,则执行S309,若否,则执行S306;
S306:令q1=q0,执行S307;
S307:令q1=q1+1,执行S308;
S308:获取所述单工业机器人动作模式姿态向量序列A14中序号为q1的子序列,记为h2,若h1与h2极近似则,选择另外的所述单工业机器人姿态向量A23,记为h1,并执行S301,否则,执行S309;
S309:检测到异常动作,控制工业机器人急停。
采用上述进一步方案的有益效果是,首先将单工业机器人动作模式姿态向量序列A14中的子序列依次进行序列号标记,方便后序进行比较,由S3的具体步骤可以看出,当没有极近似值或者出现跳帧时会出现告警。
进一步,所述S304中极近似值的判断标准为:采用欧氏距离D(h1,h2)度量h1和h2的相似度,当D(h1,h2)≤δ时则认为h1与h2近似相等,其中δ为给定的相似度阈值。
附图说明
图1为本发明S1的具体步骤;
图2为本发明的S3的具体步骤;
图3为本发明的一个实施例的实施流程图;
图4为本发明RoboOpenPose机器人模型的原理图;
图5为本发明单工业机器人动作模式姿态向量序列A14的计算过程;
图6为本发明一个实施例进行检测的原理图;
图7为本发明一种基于姿态估计的多工业机器人安全性检测系统的工作原理图。
具体实施方式
下面结合附图进一步详细描述本发明的技术方案,但本发明的保护范围不局限于以下。
实施例1
一种基于姿态估计的多工业机器人安全性检测方法,包括以下步骤:
S1:采集多工业机器人标准作业视频,并建立多个单工业机器人动作模式姿态向量序列A14,单工业机器人动作模式姿态向量序列A14中包含多个单工业机器人姿态向量A13,执行S2;
S2:实时采集多工业机器人的作业视频,获取多个单工业机器人姿态向量A23,执行S3;
S3:将任一单工业机器人姿态向量A23,记为h1,与对应的单工业机器人动作模式姿态向量序列A14进行匹配,若匹配成功,则执行S2,若匹配失败,则检测到异常动作,控制工业机器人急停。
本方法具有采用非接触式的方式实时采集工业机器人作业图像,将单工业机器人实时作业视频进行分帧,计算出单工业机器人姿态向量A23与对应的单工业机器人动作模式姿态向量序列A14进行匹配,若判断机器人动作异常则控制机器人急停,本方法无需数据采集装置采集工业机器人各轴及末端的实时状态信息或工业机器人的运行状态数据,检测过程简单准确且成本较低,而且可以同时检测多个工业机器人的工作状态。
如图1所示,S1具体包括以下步骤,
S101:采集多工业机器人标准作业视频,执行S102;
S102:对多工业机器人标准作业视频进行T视频帧提取,形成多个视频帧序列A11,执行S103;
S103:对视频帧序列A11中的图像进行姿态估计,获得单工业机器人姿态向量序列,包含多个单工业机器人姿态向量A13,单工业机器人姿态向量序列为一个热点集合,每个热点(x,y)表示一个工业机器人轴关节的图像坐标位置,执行S104;
S104:分别获取多个单工业机器人动作模式姿态向量序列A14,单工业机器人动作模式姿态向量序列A14仅包含一个作业周期。
其中,姿态估计就是确定某一三维目标物体的方位指向问题,姿态估计在机器人视觉、动作跟踪和单照相机定标等很多领域都有应用;热点集合表示,工业机器人轴关节的图像坐标位置的集合。
采集多工业机器人标准作业视频,并进行T视频帧提取,T视频帧提取是指以时间T为间隔时间对视频进行分帧,由于多工业机器人标准作业视频中的图像包含了多个单工业机器人的动作图像,形成多个视频帧序列A11,在实际生产中,多个单工业机器人并不完全同步工作,为了减少拍摄次数,该多工业机器人标准作业视频包括多个单工业机器人至少一个工作周期的图像。获得单工业机器人姿态向量序列,包含多个单工业机器人姿态向量A13,单工业机器人姿态向量序列为一个热点集合,每个热点(x,y)表示一个工业机器人轴关节的图像坐标位置,使得检测更准确,计算单工业机器人动作模式姿态向量序列A14,,单工业机器人动作模式姿态向量序列A14表示单机器人一个周期的标准姿态作为实时检测时的对比标准,由于单工业机器人作业是按照特定指令重复执行动作,因此获得一个周期的姿态即可。
具体的,如图5所示,计算单工业机器人动作模式姿态向量序列A14的过程如下,
假设Q=P1P2…Pn为单工业机器人姿态向量序列,其中Pi,i=1…n为单工业机器人姿态向量A13;
获取Q的后缀序列集合S(Q)={PiPi+1…Pn|i=1…n};
对多个单工业机器人姿态向量序列Q
1,Q
2∈S(Q),求解Q1,Q2的公共前缀子序列,加入到公共前缀子序列集合P(Q)中。给定任意单工业机器人姿态向量序列列Q=P1P2…Pn,称Q’=P1P2…Pi,i≤n为Q的前缀子序列。给定任意序列
和
若
则序列
为Q1和Q2的公共前缀子序列。其中,
表示机器人姿态向量
与
近似相等。给定机器人姿态向量P1和P2,采用欧氏距离D(P1,P2)度量P1和P2的相似度,当D(P
1,P
2)≤δ时则认为P1与P2近似相等,其中δ为给定的相似度阈值,其中,公共前缀子序列集合P(Q)中最长的序列单工业机器人动作模式姿态向量序列A14。
S103的具体过程为:
S1031:对人体姿态估计模型OpenPose进行扩展形成RoboOpenPose,使其适用于工业机器人的姿态估计,执行S1032;
S1032:采用标注的工业机器人数据集对上述RoboOpenPose模型进行训练,执行S1033;
S1033:将视频帧序列A11中的图像输入到训练好的RoboOpenPose模型,输出单工业机器人姿态向量序列。
OpenPose人体姿态识别项目是美国卡耐基梅隆大学(CMU)基于卷积神经网络和监督学习并以caffe为框架开发的开源库。可以实现人体动作、面部表情、手指运动等姿态估计。适用于单人和多人,具有极好的鲁棒性。具体的,对人体姿态估计模型OpenPose进行扩展形成RoboOpenPose,使其适用于工业机器人的姿态估计的具体过程为:将OpenPose定义的18个人体关节点修改为n个,对应工业机器人的n个轴关节形成RoboOpenPose模型;
采用标记的数据集对RoboOpenPose模型进行训练,输出单工业机器人姿态向量序列,单工业机器人姿态向量序列为一个热点集合,每个热点(x,y)表示一个工业机器人轴关节的图像坐标位置,使得检测更准确。如图4所示。
采用标记的数据集对RoboOpenPose模型进行训练具体过程为:构建工业机器人图像数据集,对数据集中工业机器人的关节点进行标注,其中工业机器人关节点标注方法为人工采用打点的方法在工业机器人图像中标记出机器人轴关节中心点的位置,记录所有工业机器人轴关节中心点的坐标,按照公共数据集COCO的格式要求,保存为机器人轴关节JSON文件在输入至RoboOpenPose进行训练。
S2具体包括以下步骤,
S201:实时采集多工业机器人的作业视频,执行S202;
S202:对多工业机器人作业视频进行T视频帧提取,形成多个视频帧序列A21,执行S203;
S203:对视频帧序列A21中的图像进行姿态估计,获得单工业机器人姿态向量A23。如图5所示。
实时采集多工业机器人作业视频,并进行T视频帧提取,T视频帧提取是指以时间T为间隔时间对视频进行分帧,由于多工业机器人作业视频中的图像包含了多个单工业机器人的动作图像,形成多个视频帧序列A21,在实际生产中,多个单工业机器人并不完全同步工作,为了减少拍摄次数,该多工业机器人作业视频中可以包括多个单工业机器人至少一个工作周期的图像,也可单独单机一个机器人一个周期的作业图像进行检测。
如图2所示,S3具体包括以下步骤:
S301:将单工业机器人动作模式姿态向量序列A14中的子序列依次进行序列号标记,记序列号的变量为qn,其中,n=1,2,3,…,n1,则依次为:q1=-1,q2=0,q3=1,q4=2,…,qn1=n1-1,执行S302;
S302:初始化序号变量,令q1=-1,执行S303;
S303:判断是否q1=-1,若是,执行S304,若否,执行S307;
S304:从单工业机器人动作模式姿态向量序列A14中查找子序列h1的极近似值,极近似值在单工业机器人动作模式姿态向量序列A14的顺序号记作q0,若极近似值不存在,则令q0=-1,执行S305;
S305:判断是否q0=-1,若是,则执行S309,若否,则执行S306;
S306:令q1=q0,执行S307;
S307:令q1=q1+1,执行S308;
S308:获取单工业机器人动作模式姿态向量序列A14中序号为q1的子序列,记为h2,若h1与h2极近似则执行S2,否则,执行S309;
S309:检测到异常动作,控制工业机器人急停。
首先将单工业机器人动作模式姿态向量序列A14中的子序列依次进行序列号标记,方便后序进行比较,由S3的具体步骤可以看出,当没有极近似值或者出现跳帧时会出现告警。
S304中极近似值的判断标准为:采用欧氏距离D(h1,h2)度量h1和h2的相似度,当D(h1,h2)≤δ时则认为h1与h2近似相等,其中δ为给定的相似度阈值,在本实施例中δ=5,假设h1和h2都以2进制表示,例如h1=10111101,h2=10100101,则D=2。
本实施例的实施原理,结合图3、图5和图6,采集多工业机器人标准作业视频,并进行T视频帧提取,T视频帧提取是指以时间T为间隔时间对视频进行分帧,由于多工业机器人标准作业视频中的图像包含了多个单工业机器人的动作图像,因此形成多个视频帧序列A11,在实际生产中,多个单工业机器人并不完全同步工作,为了减少拍摄次数,该多工业机器人标准作业视频包括多个单工业机器人至少一个工作周期的图像。再进行姿态估计获得单工业机器人姿态向量序列,包含多个单工业机器人姿态向量A13,分别计算多个单工业机器人动作模式姿态向量序列A14,再计算出当前单工业机器人姿态向量,进行近似匹配,当匹配失败则控制机器人急停。
实施例2
如图7所示,一种基于姿态估计的多工业机器人安全性检测系统,包括,
图像采集装置,用于采集多工业机器人标准作业视频,还用于实时采集多工业机器人作业视频;
故障检测装置,用于接收图像采集装置采集的多工业机器人标准作业视频,建立多个单工业机器人动作模式姿态向量序列A14,单工业机器人动作模式姿态向量序列A14中包含多个单工业机器人姿态向量A13;还用于接收图像采集装置实时采集的多机器人作业视频,获取多个单工业机器人姿态向量A23,将任一单工业机器人姿态向量A23,记为h1,与对应的单工业机器人动作模式姿态向量序列A14进行匹配,并在检测单工业机器人动作异常时发送急停控制信号;
在本实施例中,图像采集采集装置可使用工业相机,故障检测装置的硬件装置可包括中央处理单元(Central Processing Unit,CPU),还可包括其他通用处理器、数字信号处理器(Digital Signal Processor,DSP)、专用集成电路(Application SpecificIntegrated Circuit,ASIC)、现成可编程门阵列(Field-Programmable Gate Array,FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。
故障检测装置的硬件装置还包括存储器。存储器可以是处理器的内部存储单元,例如处理器的硬盘或内存。存储器也可以是处理器的外部存储设备,例如处理器上配备的插接式硬盘,智能存储卡(Smart Media Card,SMC),安全数字(Secure Digital,SD)卡,闪存卡(Flash Card)等。存储器还可以既包括处理器的内部存储单元也包括外部存储设备。存储器用于存储计算机程序以及处理器所需的其他程序和数据。存储器还可以用于暂时地存储已经输出或者将要输出的数据。
控制器,用于接收故障检测装置发送的急停控制信号并控制工业机器人停止工作。
本系统采用非接触式的方式实时采集工业机器人作业图像,将单工业机器人实时作业视频进行分帧,计算出单工业机器人姿态向量A23与对应的单工业机器人动作模式姿态向量序列A14进行匹配,若判断机器人动作异常则控制机器人急停,本系统无需数据采集装置采集工业机器人各轴及末端的实时状态信息或工业机器人的运行状态数据,检测过程简单准确且成本较低,而且可以同时检测多个工业机器人的工作状态。
本实施例中,控制器通过与工业机器人控制柜通信,控制器工业机器人急停;在另一个实施例中,控制器可直接与工业机器人的通电线路中的电控开关连接,通过控制电控开关的开关状态,控制工业机器人急停。
本实施例中,控制器的硬件装置可包括中央处理单元(Central ProcessingUnit,CPU),还可包括其他通用处理器、数字信号处理器(Digital Signal Processor,DSP)、专用集成电路(Application Specific Integrated Circuit,ASIC)、现成可编程门阵列(Field-Programmable Gate Array,FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。
控制器的硬件装置还包括存储器。存储器可以是处理器的内部存储单元,例如处理器的硬盘或内存。存储器也可以是处理器的外部存储设备,例如处理器上配备的插接式硬盘,智能存储卡(Smart Media Card,SMC),安全数字(Secure Digital,SD)卡,闪存卡(Flash Card)等。存储器还可以既包括处理器的内部存储单元也包括外部存储设备。存储器用于存储计算机程序以及处理器所需的其他程序和数据。存储器还可以用于暂时地存储已经输出或者将要输出的数据。
如图7所示,故障检测装置
故障检测装置包括视频处理单元、姿态估计单元、标准动作模式姿态向量建立单元、实时姿态向量建立单元、异常动作检测单元;
视频处理单元用于对图像采集装置采集的多工业机器人标准作业视频进行T视频帧提取,形成多个视频帧序列A11,还用于对图像采集装置实时采集的多机器人作业视频进行T视频帧提取,形成多个视频帧序列A21;
姿态估计单元用于分别对视频帧序列A11中的图像和视频帧序列A21中的图像进行姿态估计,获得单工业机器人姿态向量序列和单工业机器人姿态向量A23,单工业机器人姿态向量序列包含多个单工业机器人姿态向量A13;
标准动作模式姿态向量建立单元用于根据单工业机器人姿态向量A13生成单工业机器人姿态向量序列A14;
实时姿态向量建立单元存储单工业机器人姿态向量A23;
异常动作检测单元用于将任一单工业机器人姿态向量A23,记为h1,与对应的单工业机器人动作模式姿态向量序列A14进行匹配,并在检测单工业机器人动作异常时发送急停控制信号。
视频处理单元对多工业机器人标准作业视频或实时采集多工业作业视频进行T视频帧提取,T视频帧提取是指以时间T为间隔时间对视频进行分帧,由于视频中的图像包含了多个单工业机器人的动作图像,形成多个视频帧序列A11或A21,在实际生产中,多个单工业机器人并不完全同步工作,为了减少拍摄次数,该多工业机器人标准作业视频包括多个单工业机器人至少一个工作周期的图像,而实时采集的多工业机器人作业视频中可以包括多个单工业机器人至少一个工作周期的图像,也可单独单机一个机器人一个周期的作业图像进行检测;姿态估计单元进行姿态估计获得单工业机器人姿态向量序列和单工业机器人姿态向量A23,单工业机器人姿态向量序列包含多个单工业机器人姿态向量A13;;异常动作检测单元将需要进行检测的图像的单工业机器人姿态向量A23,记为h1,与对应的单工业机器人动作模式姿态向量序列A14进行匹配,并在检测单工业机器人动作异常时发送急停控制信号,检测过程简单准确且成本较低,而且可以同时检测多个工业机器人的工作状态。
异故障检测装置检测单工业机器人是否动作异常包括以下步骤,
S301:将单工业机器人动作模式姿态向量序列A14中的子序列依次进行序列号标记,记序列号的变量为qn,其中,n=1,2,3,…,n1,则依次为:q1=-1,q2=0,q3=1,q4=2,…,qn1=n1-1,执行S302;
S302:初始化序号变量,令q1=-1,执行S303;
S303:判断是否q1=-1,若是,执行S304,若否,执行S307;
S304:从单工业机器人动作模式姿态向量序列A14中查找子序列h1的极近似值,极近似值在单工业机器人动作模式姿态向量序列A14的顺序号记作q0,若极近似值不存在,则令q0=-1,执行S305;
S305:判断是否q0=-1,若是,则执行S309,若否,则执行S306;
S306:令q1=q0,执行S307;
S307:令q1=q1+1,执行S308;
S308:获取单工业机器人动作模式姿态向量序列A14中序号为q1的子序列,记为h2,若h1与h2极近似则,选择另外的单工业机器人姿态向量A23,记为h1,并执行S301,否则,执行S309;
S309:检测到异常动作,控制工业机器人急停。
首先将单工业机器人动作模式姿态向量序列A14中的子序列依次进行序列号标记,方便后序进行比较,由S3的具体步骤可以看出,当没有极近似值或者出现跳帧时会出现告警。
S304中极近似值的判断标准为:采用欧氏距离D(h1,h2)度量h1和h2的相似度,当D(h1,h2)≤δ时则认为h1与h2近似相等,其中δ为给定的相似度阈值。