嵌置在可编程逻辑控制器的软件平台中的预报分析方法与流程

文档序号:12042021阅读:348来源:国知局
嵌置在可编程逻辑控制器的软件平台中的预报分析方法与流程
嵌置在可编程逻辑控制器的软件平台中的预报分析方法相关申请的交叉引用本申请要求以2012年4月13日提交的、美国临时申请序号为61/623,647、名称为“EmbeddedPrognosticsonPLCPlatformsforEquipmentConditionMonitoring,DiagnosisandTime-to-Failure/ServicePrediction”的申请为优先权,该申请的全部内容在此以引用方式并入本文。技术领域本发明一般涉及用于机器监控的技术。具体而言,本发明涉及可编程逻辑控制器平台中执行设备预报的嵌置预报(prognostics)分析软件。

背景技术:
意外停机仍是制造业中影响生产力和总体拥有成本的重要问题。对出现的故障和劣化趋势的早期检测可以避免停机,针对性维护工作提高生产力并节约成本。制造厂里基于状态的维护系统持续传送关于机器状态及性能的数据,但对于现场工程师和管理工作人员的挑战是有效利用巨量数据来准确地检测设备劣化。

技术实现要素:
为了解决上述问题,本发明提出了一种技术,给可编程逻辑控制(PLC)系统增加用于预报的本地数据处理能力。所提出的系统可以潜在地应用于广泛的应用。所提出的系统利用现代PLC平台的计算能力(例如,多核CPU)来提供设备预报信息作为增值功能。本系统适于不同运行状态/用途,并且,能以最小人为干预在正常运行期间识别并诊断设备故障。在重大故障出现之前,本系统使用PLC诊断消息或简单的物理指示诸如灯光告警用户需要进行维护。正常运行期间后台收集(同步方式或异步方式)多传感器数据,并且通过一套数据分析算法将数据转换成单位数健康指标。如果健康指标超过统计/预定门限,则触发诊断和预测功能,以便确定故障类型和/或潜在的剩 余使用寿命或工作时间。本发明是一种用于确定有关由可编程逻辑控制器控制的设备的预报信息的方法。本方法利用嵌置在可编程逻辑控制器的软件平台中的预报分析程序。确定预报分析程序是否具有空闲状态。如果是,那么,在可编程逻辑控制器实时循环期间,由可编程逻辑控制器从数据采集装置中读取预定数量的数据样本,并将这些数据样本写到缓冲区中。然后,可编程逻辑控制器软件平台的系统功能块激活预报分析程序以具有活动状态。从缓冲区将数据样本读入预报分析程序。基于来自缓冲区的数据样本,识别设备的运行状态,以及,基于设备的运行状态,从来自缓冲区的数据样本中提取多个特征。确定与所识别出的运行状态相对应的模型是否已经过训练,以及,只有该模型已经过训练,才在基于特征来确定预报信息时使用该模型。在确定预报信息之后,设定预报分析程序状态为空闲。在本发明的另一方面,提供一种非暂时性计算机可用介质,具有存储于其上的计算机可读指令,用于由处理器执行,以便使用如上所述的嵌置在可编程逻辑控制器的软件平台中的预报分析程序,执行用于确定有关由可编程逻辑控制器控制的设备的预报信息的操作。在本发明的又一方面,提供一种可编程逻辑控制器,其具有如上所述的嵌置在该可编程逻辑控制器的软件平台中的预报分析程序。附图说明图1是示出根据本发明一种实施例的带有嵌置预报的PLC操作的示意图;图2是示出根据本发明实施例的带有嵌置预报的PLC的方块图;图3是示出根据本发明实施例的带有嵌置预报的PLC的特定结构的方块图;图4是示出根据本发明一种实施例的方法的流程图;图5是图示根据本发明实施例的数据处理概要的示意性方块图;图6是示出根据本发明一种实施例的用于对系统进行测试的试验台的方块图;图7a、图7b、图7c、图7d和图7e是根据本发明的一种实施例在测试 一种系统的过程中所产生的原始振动数据的曲线;图8是示出有关使用图6试验台的几次测试运行所计算出的与基线的偏差的曲线;以及图9是根据本发明一种实施例的数据处理系统的示意性方块图。具体实施方式在将预报算法适配于使用中的众多类型的设备和应用而不要求明显的努力以实现各种情形时仍有许多挑战。进一步的挑战在于,使预报解决方案更靠近于设备以保证信息在正确的时间传送给正确的人。例如,现行方法可以使用执行实际计算的、远离PLC的状态监控服务器。大量的数据必须从PLC传输至用于信息处理的远程计算机。这种数据传输会招致网络信息流通量问题以及在存储并维持大量数据方面的扩大成本。此外,数据传输的滞后可能延迟信息处理,并导致维修决策的滞后。本文所描述的系统向设备用户传送简单、可靠的机器诊断和预报信息。本技术的关键要求在于,应当产生这种信息而不用自定义机器建模、自定义参数、或特殊机器测试循环—也就是,尽可能接近“即插即用”。嵌置式PLC平台上的预报解决方案的开发使分析功能更靠近于设备,以更低成本的控制器针对更广泛的应用。用图1中所示的系统100说明嵌置式PLC平台上预报解决方案的基本概念。外部传感器130测量关于设备110或其环境的属性。设备可以例如是如所示的加工中心。传感器类型的广泛范围可以由客户选择。由整理和/或编译数据的数据采集装置(DAQ)140读取传感器测量结果。广泛范围的数据采集装置类型也可以由客户选择。将数据周期性地从数据采集装置140传输至PLC系统115上的嵌置预报分析程序120。然后,将由预报分析程序120计算出的结果150传输至人机接口(MMI)或存储器160。预报分析程序结果对于机器操作人员等是本地可得到的。因为该分析在本地发生,所以无需通过工厂网络传输大量的测量数据。方法将预报功能集成到PLC平台中。使用PLC输入模块和/或第三方装置和/或内部传感器信号,集成系统收集来自传感器的数据。系统使用嵌置预报库将数据自动转换成预报信息。在本披露中使用下列缩写词:WinAC-视窗自动化中心RT-实时RTX-实时扩展ODK-开放式开发工具包OB-组织块DB-数据块CCX-自定义代码扩展DLL-动态链接库RTDLL-实时动态链接库WinLC-视窗逻辑控制器SFB-系统功能块DAQ:数据采集AI-模拟输入DI-数字输入SOM-自组织映射系统结构图2中示出根据本发明的一种PLC系统200。系统包括PLC215,其运行至少两个程序:在PLC的实时操作系统中运行的程序216;以及嵌置的预报分析软件220。PLC循环程序217根据实时操作系统程序216周期性地运行。PLC循环程序217收集来自DAQ装置240的数据,所述DAQ装置240与安装在设备210上的传感器连接。PLC循环程序217还可以收集来自内部传感器的数据。取决于采样频率的要求,PLC循环可以正常或高速循环地执行。可以使用多个PLC循环来收集不同采样频率要求下的数据。当收集了预定数量的数据样本时,使系统功能块218初始化,以便激活嵌置的预报分析软件220,并传送缓冲区中的数据至预报分析软件220。预报分析软件220处理所接收的数据。预报分析软件实现为插件软件组件,诸如按照DLL格式。它还提供机会以使用第三方装置260,诸如商品化工业用人机接口。图3中示出在运行WinAC的西门子PLC系统315上的系统结构200(图 2)的示例实现300。组织块317从在WinLC实时扩展中运行的程序316的步骤7开始循环地运行。组织块317中的程序从与安装在设备310中的传感器330相连接的DAQ装置340中收集数据。当收集了预定数量的数据样本时,初始化系统功能调用,以调用动态链接库中的自定义代码扩展(CCX)功能321,以便将步骤7缓冲区中的数据传送至西门子PnP(即插即用)分析软件320。西门子WinACODKCCX提供工具,用于从高级编程语言环境中实现DLL或RTDLL。PnP分析软件320使用CCXDLL(C++语言)实现,以处理所接收的数据。它还提供接口,以便在CCXDLL中使用第三方装置360。程序流程图图4中示出流程图400,其示出集成了PLC循环程序410和分析程序(AP)450的系统的操作。左手侧表示PLC循环程序410,而右手侧表示AP450。在PLC循环程序410中,数据采集是主要任务。程序开始于420,以及,数据采集仅在AP空闲时进行(判断422)。通过在对数据采集例程进行循环之前要求AP程序是空闲的,本系统保证适当的处理资源在PLC中是可得到的,因为在任何给定时间只有数据采集循环和AP之一在运行。该要求还将相对较快的数据采集循环与相对较慢的分析程序进行同步,避免前者以数据压制后者。数据采集只在满足DAQ触发条件(例如,设备正在运行或操作)时(判断424)进一步进行,避免无意义或无效数据的收集和分析。在每一次PLC循环中,程序从DAQ装置(和/或第三方装置)中读取(操作426)一个数据样本,并且将此数据样本写入(操作428)到PLC数据块中所建立的PLC缓冲区。当读取了一个数据样本时,使数据计数器递增。当所收集数据样本的数量达到预定门限(例如,100个)时(判断430),PLC程序停止数据收集,并且调用AP(操作434),以传送数据。如果在达到预定门限之前(判断430)不再满足触发条件422、424中的任意一个,清除数据缓冲区,并且将数据计数器置零(操作432)。PLC程序开始等待(操作420),直至满足触发条件。AP450负责分析数据,并生成预报信息。一旦由PLC程序调用AP(操作462),其设置AP状态为忙(操作464),使得PLC程序停止读取数据。 AP读取保存在PLC缓冲区中的数据记录(含有多个数据样本)(操作466),并且应用运行状态识别(操作468),然后应用信号处理算法,以从原始数据中提取特征(操作470)。在AP开始预测之前,确定基线是否已经基于预定数量的(例如,100个)数据记录进行了训练。如果模型未经训练以及如果不满足预定门限(判断474),则AP将所提取的特征保存到数据阵列中,并且设置AP状态为空闲(操作480),以等待更多数据记录进来。当达到了预定数量的记录(判断474),AP应用训练算法(操作478),以基于含有全部提取特征的所保存的数据阵列训练基线。在训练基线之后(判断472),当新数据到达时,AP应用测试算法,并且输出预测结果(操作476)。就具体实现而言,例如,如果在运行WinAC的西门子公司PLC系统上实现,AP是CCXDLL格式。嵌置预报库-数据分析软件图5中示出根据本发明的概要数据分析流程图500。在许多情况下,由于机器的不同用途,一台设备的运行状态On是随时间而交替的(块510)。运行状态可以由单个变量诸如速度、电压、以及方向确定(块520),或者可以使用多个变量的组合确定。如果运行状态已经存在(O1...On),则将测量数据输入至与运行状态相关联的预测模型530(M1…Mn)以生成预测结果(R1...Rn)。如果运行状态在过去从未遭遇过,则创建新运行状态O_new,以及,当收集了预定数量的数据记录时,训练相关的预测模型M_new。一旦训练了预测模型,则其可以开始生成预测结果。根据运行状态随时间出现的顺序(块510),对预测结果进行组织(块540)。下面,给出用于工业机床的异常检测和故障诊断的数据分析流程的示例。与一种运行状态On相关联的预测模型中所使用的算法在图5中用Mn表示。预测模型中的具体算法可以定制,以用于不同应用。在特定运行状态下从数据采集装置取得原始数据之后,选择来自各数据记录中的“最稳定窗口”,以避免时域中随时间可能快速变化的噪声和/或避免剧烈的频率变化。然后,应用快速傅里叶变换(FFT),以将信号分解成为其分量频率及其幅值。在沿FFT频谱的同等分布频率范围内计算带能量。小波包变换(waveletpackettransform)表示就波形(周知为母小波)而言具有有限长度或快速衰减振荡特征的信号。分解层次的结束时,对所有节点计算能量,以揭示罕见的频率变化,这可能由不同分辨率处潜在错误引入。还 对所选择的数据段应用时域特征提取,以计算统计量,诸如均值、标准偏差、均方根(RMS)以及尖峰值等。在提取所有上述特征之后,使用它们作为给用于异常检测或诊断目的的自组织映射(SOM)的输入。关于本算法数学背景的更多细节可以在L.LiaoandR.Pavel,“MachineAnomalyDetectionandDiagnosisIncorporatingOperationalDataIncorporatingOperationalDataAppliedtoFeedAxisHealthMonitoring,”ASME2011InternationalManufacturingScienceandEngineeringConference,Corvallis,OR,USA,2011中找到,其内容在此以引用的方式并入本文。实验和结果本段使用发动机试验台来测试异常检测以及诊断功能,说明嵌置预报系统的概念。实验步骤对于图6中所示的试验台600,装配了Maxon直流电动机610(A-max26)、橡胶轮(载荷)640和联轴器645。支架630设计成将电动机支撑于基底620上。电动机用24伏直流电源615供电。加速表650(IMIPCB62B61)安装在电动机610的壳体上。加速表650的输出范围是在-5伏与+5伏之间。使用信号调节器660(IMI682A02)调节数据,信号调节器660提供4毫安电流激励给加速表、以及按1:1比例的原始信号输出。使用常规AI模块672(例如AI2x12bit6ES7331-7KB02-0AB0)以1千赫采样频率(OB的周期设定为1毫秒)取得数据(使用高速AI模块,例如AI8x14bit6ES7331-7HF01-0AB0,可以实现52微秒的更高数据转换速度)。使用DI模块674(DI16xDC24V6ES7321-1BH02-0AA0)来检测电动机610的运行或运转状态(通/断)。AI和DI模块与接口模块670(IM513-4PN6ES7153-4AA00-0XB0)连接,接口模块670则与工业以太网690连接。其上运行WinAC的PC680(可以由基于PC的控制器取代)经由PCI接口卡691(CP1616-CP1604)与工业以太网690连接。引入故障为了测试异常检测和诊断功能,将失衡故障手工地引入至电动机试验台。在与轴一起旋转的轮缘上的不同角度位置安装小螺丝。随着螺丝位置的改变,失衡格局也改变。测试的目的是,首先检测是否有失衡情形(使用无监督学习),其次是在失衡格局出现时区分不同的失衡格局(使用有监督训 练)。应当注意到,在安装中存在固有的失调。失调存在于所有平衡和失衡的情形中。尽管有失调,但本算法仍能检测出失衡格局。电动机试验台上手工引入的失衡格局包括(a)未安装不平衡螺丝(“平衡”),(b)在角度上靠近于为了将轮缘固定至轴而使用的紧定螺丝的轮缘上安装一个螺丝(“1螺丝近”),(c)角度上与紧定螺丝相反(约成180度)地安装一个螺丝(“1螺丝远”),(d)靠近于紧定螺丝安装两个螺丝(“2螺丝近”),(e)与紧定螺丝相反地安装两个螺丝(“2螺丝远”)。“近”和“远”二者都是相对于紧定螺丝的位置。结果对于每一种不同失衡情形,让电动机运转约500秒,并且使用AI模块收集数据。从500秒的数据中随机生成500个数据记录成为4096个数据样本的段。图7a至图7e中示出不同的平衡和失衡情形下的原始振动数据。仅仅通过检查时域信号来区分失衡情形并不简单。确定运行状态时选择了电动机的转速。为了简单起见,让电动机以恒定速度运转,只形成一种运行状态。以下分析都是在此特定运行状态内。对于图7a至图7e中所示的数据组,10个频率带的能量同等地分布在FFT频谱中,提取时域特征(包括均值、RMS、以及波峰因数、方差和偏度(skewness)、标准偏差、以及尖峰值)以及小波包能量。还提取FFT频谱中中心在167赫兹(电动机转速)和334赫兹处在20赫兹范围内的两个能量作为特征。异常检测-无监督测试结果:从各故障情形收集数据。对于测试,使用了80个不同记录。各数据记录含有4092个数据样本。这里有被测试的5种不同失衡情形。对于该测试,选择2个能量特征和6个时域特征作为输入至异常检查算法的特征。只用平衡数据对自组织映射(SOM)进行训练,将其用作基线。然后,用在1螺丝近、1螺丝远、2螺丝近、以及2螺丝远的情形中所收集到的其它数据对映射进行测试。结果显示:当训练平衡情形作为基线时,2螺丝远失衡故障产生了最大差异。图8示出不同失衡与基线的距离,其使用SOM的输出区分四类失衡情形与平衡情形(MQE是偏离基线的指标)。类‘2螺丝近’的增大距离(MQE)的可能解释是:由于非固定地安装于 地,该数据可能不是在完美环境中取得。然而,不同水平的失衡仍能良好地区别。为了预测各数据记录的标号,进行下列监督测试(诊断)。诊断-有监督的测试结果:除了1螺丝近数据组之外,将无监督测试的相同数据组用于诊断。不使用1螺丝近数据组的原因是它非常接近于基线。当检查信号及其特性时,表明在1螺丝近与平衡情形之间几乎没有差异。这就是为何从测试中将其排除的原因。所以,用四个类进行了有监督训练的诊断测试:平衡、1螺丝远、2螺丝近、2螺丝远。测试中,应用了交叉验证方法。建立了四个交叠(fold),并且各交叠含有80个数据记录。这些数据记录由四类组成,都是失衡情形。在每次测试中,用三个交叠训练SOM映射,而余下交叠则进行测试。使用下列特征作为给有监督SOM算法的输入:中心在第二、第三、第四、第六运行速度处20赫兹带内的能量、信号的波峰因数、以及信号的标准偏差。所以,对于各数据记录有六个特征。当检查来自电动机的信号时,在167赫兹频率处可以看到峰值以及其倍数,这意味着在此频率处占优势。为了减少由于分辨率问题所导致的错误,选择20赫兹的范围,这意味着167+/-20赫兹。能量表示这些值。例如,第二能量包括频率167*2-20赫兹与167*2+20赫兹之间的能量;第三能量是167*3-20赫兹与167*3+20赫兹之间的能量;如此等等。在交叉验证测试中,本程序可以以95%的准确性预测类。系统在可编程逻辑控制器(PLC)计算机系统中实现如上所述方法的要素。图9中示出示例性系统900。PLC910优选是商用工业单元,能周期性地收集来自内部或外部传感器的数据并且处理这些数据。PLC还能使用所收集数据来控制设备。PLC910可以通过数据采集装置950接收数据或直接从传感器(未示出)接收数据。输入/输出数据可以经由广域网诸如因特网、经由局域网、或经由直接总线连接在PLC910与人机接口(MMI)948之间通过。PLC910可以构造成通过使用例如MMI948执行一定任务来操作并显示信息。在一种实施例中,经由MMI948初始化数据采集,而诊断结果则经由相同装置显示给用户。PLC910包括一个或多个处理器920诸如中央处理单元(CPU),并且 还包括存储器930。当构造成使用根据本发明的软件时,处理器920包括诊断分析软件模块922,其构造成执行一种或多种方法,用于确定有关由PLC910控制的设备的诊断信息,如本文所讨论的。这些模块包括从外部传感器收集数据并且还可以将机器控制指令传送给所控制的设备的PLC运行时程序924。存储器930可以包括随机存取存储器(RAM)和只读存储器(ROM)。存储器还可以包括可移动介质诸如磁盘驱动器、磁带驱动器、存储卡等、或者其组合。RAM起到数据存储器的作用,其存储处理器920中的程序执行期间所使用的数据;RAM还用作程序工作区。ROM起到程序存储器的作用,用于存储在处理器920中执行的程序。程序可以驻留在ROM上、或者任何其它有形或非易失性计算机可读介质940上,作为存储于其上的、用于由处理器执行的计算机可读指令,以执行本发明的方法。ROM还可以含有由本程序或有其它程序使用的数据。通常,上述程序模块922、924包括例程、对象、组件、数据结构等,其执行特定任务或实现特定的抽象数据类型。“程序”在此使用术语时可以意味着单一程序模块或一致作用的多个程序模块。本发明可以在不同类型的计算机上实现,包括专用PLC、个人计算机(PC)、手持装置、多处理器系统、基于微处理器的可编程消费电子设备、网络PC、迷你计算机、主计算机等。所披露的技术也可以在分布式计算环境中采用,由通过通信网络链接的远程处理装置执行这些任务。在分布式计算环境中,这些模块可以位于本地或远程存储装置二者中。用于实现以上技术的示例处理模块可以是硬件接线的、或存储在单独存储器中,将其从计算机可读介质诸如ROM或其它类型的硬磁装置、光学存储器、磁带或闪存中读入处理器或多个处理器的主存储器中。在程序存储于存储介质中的情况下,模块中指令的顺序执行促使处理器执行本文所述的处理步骤。本发明的实施例并不局限于硬件和软件的任意特定组合,以及,实现上述所要求的计算机程序可以由本领域的普通技术人员开发。术语“计算机可读介质”在此采用时指任何有形机器编码介质,其提供或参与提供指令至一个或多个处理器。例如,计算机可读介质可以是一个或多个光或磁存储盘、闪存驱动器和闪存卡、只读存储器或随机存取存储器诸如DRAM,其典型构成主存储器。这种介质排除非有形的传播信号。缓存信息 视为存储在计算机可读介质上。计算机可读介质的通常临时手段在本领域是周知的,并且无需在此具体描述。结论本发明描述了一种系统和方法,包括PLC平台上的嵌置设备预报(异常检测、诊断、以及时间-故障/服务预测)分析功能。通过在PLC循环程序中使用PLC输入模块,系统从安装在装置上的传感器收集数据。诊断分析软件实现为插件软件组件,诸如DLL,在收集数据之后由PLC循环程序调用。本系统已经使用电动机试验台加以证明,并且示出成功地检测并识别出电动机载荷上不同失衡故障的异常情形。本系统可以潜在地应用于不同应用,包括但并不局限于机床部件(例如,电动机、齿轮箱、以及轴承)、燃气轮机/风轮机、以及火车。以上具体描述在各方面都应当理解为说明性和示例性而非限制性的,以及,本发明的范围并不由这些描述确定,而是由根据专利法广度许可的所附权利要求确定。应当理解由本领域的技术人员可以实现不同的修改,而不脱离本发明的范围和精神。
当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1