CN108227641A - 控制装置、控制方法及计算机可读存储介质 - Google Patents
控制装置、控制方法及计算机可读存储介质 Download PDFInfo
- Publication number
- CN108227641A CN108227641A CN201710939556.0A CN201710939556A CN108227641A CN 108227641 A CN108227641 A CN 108227641A CN 201710939556 A CN201710939556 A CN 201710939556A CN 108227641 A CN108227641 A CN 108227641A
- Authority
- CN
- China
- Prior art keywords
- characteristic quantity
- abnormal
- data
- detection
- control device
- 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.)
- Granted
Links
Classifications
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05B—CONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
- G05B19/00—Programme-control systems
- G05B19/02—Programme-control systems electric
- G05B19/418—Total factory control, i.e. centrally controlling a plurality of machines, e.g. direct or distributed numerical control [DNC], flexible manufacturing systems [FMS], integrated manufacturing systems [IMS] or computer integrated manufacturing [CIM]
- G05B19/4185—Total factory control, i.e. centrally controlling a plurality of machines, e.g. direct or distributed numerical control [DNC], flexible manufacturing systems [FMS], integrated manufacturing systems [IMS] or computer integrated manufacturing [CIM] characterised by the network communication
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05B—CONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
- G05B19/00—Programme-control systems
- G05B19/02—Programme-control systems electric
- G05B19/04—Programme control other than numerical control, i.e. in sequence controllers or logic controllers
- G05B19/05—Programmable logic controllers, e.g. simulating logic interconnections of signals according to ladder diagrams or function charts
- G05B19/058—Safety, monitoring
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05B—CONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
- G05B13/00—Adaptive control systems, i.e. systems automatically adjusting themselves to have a performance which is optimum according to some preassigned criterion
- G05B13/02—Adaptive control systems, i.e. systems automatically adjusting themselves to have a performance which is optimum according to some preassigned criterion electric
- G05B13/0265—Adaptive control systems, i.e. systems automatically adjusting themselves to have a performance which is optimum according to some preassigned criterion electric the criterion being a learning criterion
- G05B13/028—Adaptive control systems, i.e. systems automatically adjusting themselves to have a performance which is optimum according to some preassigned criterion electric the criterion being a learning criterion using expert systems only
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05B—CONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
- G05B23/00—Testing or monitoring of control systems or parts thereof
- G05B23/02—Electric testing or monitoring
- G05B23/0205—Electric testing or monitoring by means of a monitoring system capable of detecting and responding to faults
- G05B23/0218—Electric testing or monitoring by means of a monitoring system capable of detecting and responding to faults characterised by the fault detection method dealing with either existing or incipient faults
- G05B23/0224—Process history based detection method, e.g. whereby history implies the availability of large amounts of data
- G05B23/024—Quantitative history assessment, e.g. mathematical relationships between available data; Functions therefor; Principal component analysis [PCA]; Partial least square [PLS]; Statistical classifiers, e.g. Bayesian networks, linear regression or correlation analysis; Neural networks
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05B—CONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
- G05B2219/00—Program-control systems
- G05B2219/10—Plc systems
- G05B2219/11—Plc I-O input output
- G05B2219/1105—I-O
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05B—CONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
- G05B2219/00—Program-control systems
- G05B2219/30—Nc systems
- G05B2219/31—From computer integrated manufacturing till monitoring
- G05B2219/31088—Network communication between supervisor and cell, machine group
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Automation & Control Theory (AREA)
- Artificial Intelligence (AREA)
- Evolutionary Computation (AREA)
- Mathematical Physics (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Health & Medical Sciences (AREA)
- Medical Informatics (AREA)
- Software Systems (AREA)
- General Engineering & Computer Science (AREA)
- Manufacturing & Machinery (AREA)
- Quality & Reliability (AREA)
- Testing And Monitoring For Control Systems (AREA)
- Programmable Controllers (AREA)
Abstract
提供控制装置、控制方法及计算机可读存储介质,以较短的周期监控控制对象中发生的现象。控制装置包括:特征量生成机构,从与控制对象相关的数据生成适合检测控制对象中发生的异常的特征量;机械学习机构,使用特征量生成机构生成的特征量实施机械学习;异常检测机构,基于根据经过机械学习得到的学习结果确定的控制对象中发生的异常检测中使用的检测参数和特征量生成机构生成的特征量检测异常;指示机构,指示异常检测机构进行异常的检测;数据压缩机构,压缩特征量生成机构生成的特征量的数据后,提供给机械学习机构和异常检测机构。指示机构向异常检测机构发送异常检测所需的请求,异常检测机构向指示机构不回复对该请求的响应而实施异常的检测。
Description
技术领域
本发明涉及一种能够监控控制对象中发生的现象的控制装置、控制方法及计算机可读存储介质。
背景技术
在各种生产现场中,广泛普及使用PLC(Programmable Logic Controller:可编程控制器)等控制装置的FA(Factory Automation:工厂自动化)技术。近年来,随着信息通信技术(ICT:Informationand Communication Technology)的发展,在这种FA领域中使用的控制装置也逐渐实现高性能化、高功能化。
作为这种高性能化的一个实例,有向控制装置输入数据和从控制装置输出数据的周期的缩短化。例如,日本特开2012-194663号公报(专利文献1)公开了将PLC的CPU单元执行的控制数据的输出和输入的通信周期设定为比控制程序的最大执行时间还短的固定时间的技术。
通过这种输入输出数据的周期的缩短化,能够以较高的精度实现控制、监控、异常检测、异常预测等。
另外,日本特开2013-008111号公报(专利文献2)公开了用于诊断机械设备是否有异常预兆的异常预兆诊断装置。在专利文献2公开的异常预兆诊断装置中,从各个机械设备经由通信网络发送由设置在机械设备中的多个传感器测量到的多维传感器数据。通过数据挖掘等,对这些多维传感器数据进行异常预兆的诊断。
专利文献1:日本特开2012-194663号公报
专利文献2:日本特开2013-008111号公报。
通过采用如上述专利文献1中公开的结构,能够获得高速输入数据,但不能将该结构适用于专利文献2中公开的异常预兆诊断装置中。是因为在专利文献2中公开的异常预兆诊断装置中,经由LAN(Local Area Network:本地网)、WAN(Wide Area Network:广域网)等通信网络发送多维传感器数据,因此难以以msec数量级、usec数量级收集输入数据。
因此,专利文献2所公开的异常预兆诊断装置停留在只能诊断伴随进展速度较慢而带来的异常预兆的程度。
发明内容
本发明提供能够以较短周期监控控制对象中发生的现象的技术。
本发明的一技术方案提供用于对控制对象进行控制的控制装置。该控制装置包括:特征量生成机构,其从与控制对象相关的数据生成适合检测控制对象中发生的异常的特征量;机械学习机构,其使用由特征量生成机构生成的特征量实施机械学习;异常检测机构,其基于异常检测参数和由特征量生成机构生成的特征量检测异常,该异常检测参数是基于经过机械学习得到的学习结果确定且在控制对象中发生的异常的检测中使用的参数;指示机构,其对异常检测机构指示进行异常的检测;数据压缩机构,其在对由特征量生成机构生成的特征量进行数据压缩之后提供给机械学习机构和异常检测机构。指示机构向异常检测机构发送异常检测所需的请求,异常检测机构向指示机构不回复对该请求的响应而实施异常检测。
优选的是,数据压缩机构用机器代码变换成为对象的数据。
优选的是,异常检测机构通过用户程序来实现异常检测功能,该用户程序包括异常检测参数的指定和成为对象的特征量的指定。
优选的是,控制装置还包括数据库,该数据库中收集并存储有与控制对象相关的数据。
优选的是,在数据库中收集有根据用户程序所包含的命令指定的数据。
优选的是,控制装置还包括确定机构,该确定机构基于数据库中收集的数据确定特征量的生成方法,该特征量是适合检测控制对象中发生的异常的特征量。
优选的是,控制装置还包括异常检测参数确定机构,该异常检测参数确定机构基于经过机械学习得到的学习结果确定异常检测参数。
优选的是,控制装置还包括保持机构,该保持机构保持异常检测参数,并且根据来自于外部装置的请求更新所保持的异常检测参数。
本发明的另一技术方案,提供存储有控制程序的计算机可读存储介质,该控制程序通过由计算机执行来实现对控制对象进行控制的控制装置。控制程序使计算机执行:从与控制对象相关的数据生成适合检测控制对象中发生的异常的特征量的步骤;使用所生成的特征量实施机械学习的步骤;基于异常检测参数和所生成的特征量检测异常的步骤,该异常检测参数是基于经过机械学习得到的学习结果确定且在控制对象中发生的异常的检测中使用的参数;指示进行异常方检测的步骤;对所生成的特征量进行数据压缩来提供机械学习和异常检测中使用的数据的步骤。进行异常的检测的步骤包括在发送异常的检测所需的请求之后,不回复对该请求的响应而实施异常检测的步骤。
根据本发明另一技术方法,提供由控制控制对象的控制装置执行的控制方法。控制方法包括:从与控制对象相关的数据生成适合检测控制对象中发生的异常的特征量的步骤;使用所生成的特征量实施机械学习的步骤;基于异常检测参数和所生成的特征量检测异常的步骤,该异常检测参数是基于经过机械学习得到的学习结果确定且在控制对象中发生的异常的检测中使用的参数;指示进行异常的检测的步骤;对所生成的特征量进行数据压缩来提供机械学习和异常检测中使用的数据的步骤。进行异常的检测的步骤包括在发送异常的检测所需的请求之后,不回复对该请求的响应而实施异常检测的步骤。
根据本发明,能够以较短的周期监控控制对象中发生的现象。
附图说明
图1是表示本实施方式的控制系统的整体结构例的示意图。
图2是表示构成本实施方式的控制系统的控制装置的硬件结构例的框图。
图3是表示构成本实施方式的控制系统的支援装置的硬件结构例的框图。
图4是用于说明使用本实施方式的控制系统的异常检测流程的示意图。
图5是用于说明本实施方式的控制系统的各个装置所提供的功能的示意图。
图6是用于说明使用本实施方式的控制系统的异常检测的各个工序中的处理内容的示意图。
图7是表示根据本实施方式的控制系统中生成的内部DB写入程序的一例的图。
图8是表示在本实施方式的控制系统的数据挖掘工序中可确定的特征量的列表的一个例子。
图9是表示本实施方式的支援装置中数据挖掘工序之后显示的用户界面画面的一例的图。
图10是表示本实施方式控制系统中生成的特征量生成程序和学习请求程序的一例的图。
图11是表示通过实施本实施方式控制系统中执行的机械学习来获得的学习结果的一例的图。
图12是表示在本实施方式的控制系统中生成的特征量生成程序和监控请求程序的一例的图。
图13是用于说明本实施方式的控制系统的控制装置中的串行化处理的示意图。
图14是用于说明本实施方式的控制系统的控制装置中的反串行化处理的示意图。
图15是用于说明在本实施方式的控制系统的控制装置中的机械学习引擎接口和机械学习引擎之间进行数据交换的示意图。
图16是表示本实施方式的控制系统的一个应用例的示意图。
图17是表示在图16示出的控制系统中发生异物咬入时的状态值和从状态值生成的特征量的变化的一例的图。
附图标记说明
1:控制系统,2:第一现场网络,4:第二现场网络,6:本地网,10:现场装置组,12:远程I/O装置,14:继电器组,16、124:I/O单元,18:图像传感器,20:照相机,22、619、629:伺服驱动器,24、618、628:伺服马达,100:控制装置,102、202:处理器,104:芯片组,106、206:主存储装置,108、208:二次存储装置,110、214:本地网控制器,112、212:USB控制器,114:存储卡接口,116:存储卡,118、120:现场总线控制器,122:内部总线控制器,130:内部DB,132:原始数据,134:学习结果,136:异常检测结果,140:机械学习引擎,142:学习功能,144:异常检测功能,146:事件日志,150:PLC引擎,152:调度器,154:变量管理器,160:控制程序,162:顺序/运动程序,164:内部DB写入程序,166:机械学习引擎接口,168:学习请求程序,170:监控请求程序,172:串行化模块,174:特征量生成程序,190:OS,200:支援装置,204:光学驱动器,205:记录介质,216:输入部,218:显示部,220:总线,222:开发程序,224:参数设定工具,226:数据挖掘工具,300:数据记录装置,400:显示装置,500:用户界面画面,502:特定信息,504、505、506:候选,508:单选按钮,600:包装机,604:包装体,605:被包装物,606:单个包装体,610:转子,612:旋转轴,614、624:处理机构,615、616、625,626:加热器,617、627:切割器,1302:目标数据,1344、1684、1704:输入变量指定,1542:系统变量,1544:设备变量,1546、1706:异常检测参数,1642:写入功能块,1644:列表名,1646:对象变量指定,1648:周期指定,1682:学习请求功能块,1686:学习结果输出目的地指定,1702:监控请求功能块,1708:故障输出目的地指定,1722:处理引擎,1724:缓冲区域,1726:对象,1742:特征量生成功能块,1746:输出目的地指定,1748、1749:条件,2242:变量访问程序,2262:访问功能,2264:数据挖掘功能,2266:可视化功能。
具体实施方式
下面,参照附图对本发明的实施方式进行详细的说明。需要说明的是,对图中相同或者相应的部分标注了相同的附图标记,并省略对其的重复说明。
<A.控制系统的整体结构例>
首先,对包括本实施方式的控制装置的控制系统1的整体结构例进行说明。
图1是表示本实施方式的控制系统1的总体结构例的示意图。参照图1,本实施方式的控制系统1的主要结构包括:控制装置100,其对控制对象进行控制;支援装置200,其与控制装置100连接。
控制装置100可通过PLC(Programmable Logic Controller)之类的一种计算机来实现。控制装置100经由第一现场网络2与现场装置组10相连接,并且经由第二现场网络4与一个或者多个显示装置400相连接。此外,控制装置100经由本地网6与数据记录装置300连接。控制装置100通过各个网络与所连接的装置之间交换数据。需要说明的是,数据记录装置300和显示装置400是可选的结构,并非控制系统1的必要结构。
控制装置100具有执行用于控制设备、机械的各种运算的控制逻辑(以下,称作“PLC引擎”)。除了PLC引擎外,控制装置100还具有用于收集在现场装置组10被测量到并向控制装置100传送的数据(以下,称作“输入数据”)的收集功能。此外,控制装置100还具有监控所收集的输入数据的监控功能。通过使控制装置具备这些功能,能够以较短的周期监控控制对象中发生的现象。
具体而言,安装于控制装置100的内部数据库(以下,称作“内部DB”)130提供收集功能,安装于控制装置100的机械学习引擎140提供监控功能。关于内部DB130和机械学习引擎140的细节,将在后面叙述。
第一现场网络2和第二现场网络4优选采用保证数据的到达时间的、进行固定周期通信的网络。作为这种进行固定周期通信的网络,已知有EtherCAT(注册商标)、EtherNet/IP(注册商标)、DeviceNet(注册商标)、ComPoNet(注册商标)等。
现场装置组10包括用于从控制对象或者与控制相关的制造装置、生产线等(以下,称作“现场”)收集输入数据的装置。作为这种收集输入数据的装置,可以想到输入继电器、各种传感器等。现场装置组10还包括基于在控制装置100中生成的指令(以下,称作“输出数据”),对现场装置提供某些作用的装置。作为对这种现场装置提供某些作用的装置,可以想到输出继电器、接触器、伺服驱动器及伺服马达、其他任意的致动器。这种现场装置组10经由第一现场网络2,与控制装置100之间交换包括输入数据和输出数据的数据。
在图1示出的结构例中,现场装置组10包括远程I/O(Input/Output:输入/输出)装置12、继电器组14、图像传感器18及照相机20、伺服驱动器22及伺服马达24。
远程I/O装置12包括:通信部,其经由第一现场网络2进行通信;输入输出部(以下,称作“I/O单元”),其用于进行输入数据的获取和输出数据的输出。经由这种I/O单元,在控制装置100和现场装置之间交换输入数据和输出数据。在图1示出了经由继电器组14交换作为输入数据和输出数据的数字信号的例子。
可使I/O单元直接连接在现场网络中。在图1示出了I/O单元16直接连接在第一现场网络2上的例子。
图像传感器18对由照相机20所摄像的图像数据进行模式匹配等图像测量处理,并将其处理结果向控制装置100发送。
伺服驱动器22根据从控制装置100的输出数据(例如,位置指令等),驱动伺服马达24。
如上所述,经由第一现场网络2,在控制装置100与现场装置组10之间进行数据交换,这种被交换的数据,以数百usec数量级~数十msec数量级的很短的周期进行更新。需要说明的是,有时会将这种被交换的数据的更新处理称作“I/O刷新处理”。
另外,经由第二现场网络4与控制装置100相连接的显示装置400,接受来自于用户的操作而向控制装置100发送与用户操作对应的指令等的同时,将控制装置100中的运算结果以图形的方式显示。
数据记录装置300经由本地网6与控制装置100相连接,并与控制装置100之间交换必要的数据。数据记录装置300例如具有数据库功能,并按时间顺序收集控制装置100发生的事件日志。在本地网6中可以安装以太网络(注册商标)等的通用协议。即,典型的是,本地网6中的数据的发送周期或者更新周期可迟于现场网络(第一现场网络2和第二现场网络4)中的数据的发送周期或者更新周期。然而,与现场网络相比,可以使本地网6能够一次发送更多的数据。
支援装置200是支援控制装置100用于控制控制对象而必要的准备的装置。具体而言,支援装置200提供由控制装置100执行的程序的开发环境(程序制作编辑工具、分析器(パーサ)、编译器等)、用于设定控制装置100及与控制装置100连接的各种设备的参数(配置(コンフィギュレーション))的设定环境、向控制装置100发送所生成的用户程序的功能、通过在线上修正或变更在控制装置100上执行的用户程序之类的功能等。
此外,本实施方式的支援装置200具有对安装于控制装置100的内部DB130和机械学习引擎140进行设定操作的功能。关于这些功能,将在后面叙述。
<B.各个装置的硬件结构例>
接着,对构成本实施方式的控制系统1的主要装置的硬件结构例进行说明。
(b1:控制装置100的硬件结构例)
图2是表示构成本实施方式的控制系统1的控制装置100的硬件构成例的框图。参照图2,控制装置100包括:CPU(Central Processing Unit:中央处理单元)、MPU(Micro-Processing Unit:微处理单元)等处理器102,芯片组104,主存储装置106,二次存储装置108,本地网控制器110,USB(Universal Serial Bus:通用串行总线)控制器112,存储卡接口114,内部总线控制器122,现场总线控制器118、120,I/O单元124-1、124-2、……。
处理器102读出存储在二次存储装置108中的各种程序,并在主存储装置106中展开执行,由此实现与控制对象对应的控制以及后述的各种处理。芯片组104通过对处理器102和各个构件进行控制,来实现作为控制装置100整体的处理。
在二次存储装置108中,除了用于实现PLC引擎的系统程序之外,还存储有利用PLC引擎执行的用户程序。此外,在二次存储装置108中,还存储用于实现内部DB130和机械学习引擎140的程序。
本地网控制器110控制经由本地网6进行的与其他装置的数据的交换。USB控制器112控制经由USB连接与支援装置200进行的数据的交换。
存储卡接口114以能够装卸存储卡116的方式构成,并能够将数据写入存储卡116中,能够从存储卡116读出各种数据(用户程序、跟踪数据等)。
内部总线控制器122是与搭载于控制装置100的I/O单元124-1、124-2,……进行数据的交换的接口。
现场总线控制器118控制经由第一现场网络2进行的与其他装置的数据的交换。同样地,现场总线控制器120控制经由第二现场网络4进行的与其他装置的数据的交换。
在图2中示出了通过处理器102执行程序来提供所需功能的结构例,但是也可以使用专用硬件电路(例如,ASIC(Application Specific Integrated Circuit:专用集成电路)或者FPGA(Field-Programmable Gate Array:现场可编程门阵列)等)来安装这些提供的功能的一部分或者全部。或者,可通过使用符合通用的构架的硬件(例如,以通用的个人计算机为基础的工业用计算机)来实现控制装置100的主要部分。在这种情况下,也可以通过使用假想化技术,来使用途不同的多个OS(Operating System:操作系统)并列地执行,并且在各个OS上执行所需的应用。
(b2:支援装置200的硬件结构例)
下面,作为一例,通过使用符合通用构架的硬件(例如,通用个人计算机)执行程序,来实现本实施方式的支援装置200。
图3是表示构成本实施方式的控制系统1的支援装置200的硬件结构例的框图。参照图3,支援装置200包括CPU、MPU等处理器202,光学驱动器204,主存储装置206,二次存储装置208,USB控制器212,本地网控制器214,输入部216及显示部218。这些设备经由总线220彼此连接。
处理器202读出存储在二次存储装置208中的各种程序,并在主存储装置206中展开执行,由此实现后述的各种处理。
二次存储装置208例如由HDD(Hard Disk Drive:硬盘驱动器)、SSD(Flash SolidState Drive:闪存固态驱动器)等构成。在二次存储装置208中,典型地存储有:开发程序222,其用于创建支援装置200中执行的用户程序、调试所创建的程序、定义系统结构、设定各种参数等;参数设定工具224,其用于指定成为机械学习的对象的变量;以及数据挖掘工具226,其用于从控制装置100所收集的数据中抽取目标信息。在二次存储装置208中,也可以存储有OS和其他所需的程序。
支援装置200具有光学驱动器204,从非临时地存储计算机可读程序的记录介质205(例如,DVD(Digital Versatile Disc:数字通用光盘)等光存储介质)读取存储在其中的程序并安装在二次存储装置208中。
在支援装置200中被执行的各种程序也可以通过计算机可读记录介质205安装,也可以从网络上的服务器等下载并安装。另外,本实施方式的支援装置200提供的功能有时会以利用OS提供的模块的一部分的形式实现。
USB控制器212经由USB连接控制与控制装置100之间的数据的交换。本地网控制器214控制经由任意网络的与其他装置之间的数据的交换。
输入部216由键盘、鼠标等构成,用于接受用户操作。显示部218由显示器、各种指示器、打印机等构成,输出来自于处理器202的处理结果。
在图3中示出了通过处理器202执行程序来提供所需的功能的结构例,但是,可通过使用专用的硬件电路(例如,ASIC或者FPGA等)来安装这些提供的功能的一部分或者全部。
(b3:数据记录装置300的硬件结构例)
接着,作为一例,可以通过使用通用的文件服务器或者数据库服务器来实现构成本实施方式的控制系统1的数据记录装置300。由于这种装置的硬件结构是众所周知的,因此,在此对其不进行详细的说明。
(b4:显示装置400的硬件结构例)
下面,构成本实施方式的控制系统1的显示装置400是被称作HMI(Human MachineInterface:人机接口)的装置,可以采用作为专用设备安装的结构,也可以使用符合通用构架的硬件(例如,以通用个人计算机作为基础的工业用计算机)来实现。
<C.控制系统提供的异常检测功能>
下面,说明本实施方式的控制系统1提供的异常检测功能。
图4是用于说明使用本实施方式的控制系统1的异常检测步骤的示意图。图4中示出的异常检测步骤整体由6个工序构成。
具体而言,首先,实施(1)原始数据收集工序。在(1)原始数据收集工序中,控制装置100所处理的数据中用于与异常检测相关的解析的数据被写入到内部DB130。(1)原始数据收集工序,通过执行后述的控制装置100的内部DB写入程序来实现。
在控制装置100中,对各个与现场之间交换的数据(输入数据和输出数据)和内部数据分别分配唯一的变量名,并利用各个变量名描述用户程序等。即,在控制装置100中被提供可编程变量的环境。因此,在以下的说明中,“变量的指定”或者“变量的特定”的表达是实质上以与成为对象的数据的特定相同的含义使用的。需要说明的是,本发明的范围不限定于可编程变量的结构,直接指定存储器上的地址的结构也包括在本发明的范围内。
接着,实施(2)数据挖掘工序。在(2)数据挖掘工序中,写入到内部DB130的数据被读取并确定异常检测方法。异常检测方法是表示以怎样的逻辑来监控什么样的数据才能检测到目标异常的方法。在本实施方式中,异常检测方法包括由来自于现场装置的一个或者多个数据生成特征量的方法。(2)数据挖掘工序是,典型地通过执行后述的支援装置200的数据挖掘工具来实现的。根据所确定的异常检测方法,输出用于生成特征量的设定、参数等。
接着,实施(3)特征量收集工序。在(3)特征量收集工序中,通过对与现场交换的数据和内部数据中成为对象的数据适用在此前的(2)数据挖掘工序中所确定的特征量的生成方法,来依次生成特征量。(3)特征量收集工序是通过执行后述的控制装置100的特征量生成程序来实现的。
接着,实施(4)特征量学习工序。在(4)特征量学习工序中,对(3)特征量收集工序中收集到的特征量实施机械学习处理,根据该机械学习处理的结果确定异常检测中使用的异常检测参数(典型的是,阈值等)。(4)特征量学习工序由后述的控制装置100的机械学习引擎来提供。
通过如上所述的(1)~(4)工序,能够确定异常检测中使用的特征量的定义和用于判断为异常的异常检测参数等。然后,实施用于监控是否发生异常的工序。具体而言,实施(5)特征量监控工序。在(5)特征量监控工序中,监控每一规定期间或者每一规定事件中生成的特征量,即判断所生成的特征量是否符合由预先设定的异常检测参数规定的条件。然后,检测到异常时,输出表示其检测到的异常的事件日志。
在(5)特征量监控工序中检测到某些异常时,可以实施用于评价其合理性的工序。即,可以根据某些异常的检测,实施(6)评价工序。在(6)评价工序中,基于异常检测结果,评价检测到的异常的合理性。(6)评价工序是典型地通过执行后述的支援装置200的数据挖掘工具来实现的。可以根据(6)评价工序的评价结果来调整异常检测中使用的异常检测参数等。
图5是用于说明本实施方式的控制系统1的各个装置提供的功能的示意图。在图5示出的示意图中,括号内的数字与图5示出的(1)~(6)工序中的处理对应。
除了内部DB130和机械学习引擎140,控制装置100还具有PLC引擎150。这些功能基本上是通过控制装置100的处理器102(图2)执行程序来实现的。为了提供该处理器102执行程序的环境,控制装置100中也安装有OS 190。
PLC引擎150是典型地在OS190上执行系统程序和用户程序来提供的。即,本发明的一技术方案可以包括通过在一种计算机中执行来实现包含PLC引擎150的控制装置100的程序。
更具体而言,PLC引擎150包括调度器152、变量管理器154、控制程序160。
调度器152控制构成PLC引擎150的各个程序(或者与其对应的任务)的执行时机、执行顺序等。在PLC引擎150所包含的各任务中预先设定有执行周期,调度器152进行控制,使得能够根据所设定的周期反复执行任务。
变量管理器154将通过在PLC引擎150中周期性地执行的I/O刷新处理更新的数据作为变量进行管理。更具体而言,变量管理器154对系统变量1542、用户变量和设备变量1544、在异常检测中使用的异常检测参数1546进行保持和管理,该系统变量1542包括表示控制装置100的各部的动作状态的数据组,该用户变量和设备变量1544包括在PLC引擎150中执行的用户程序进行写入、读取的数据组。
对异常检测参数1546,由支援装置200的PLC变量访问程序2242可以访问和更新。即,变量管理器154不仅保持异常检测参数1546,而且提供根据来自于外部装置的请求而更新所保持的异常检测参数1546的功能。
控制程序160相当于用户可任意地创建的用户程序,典型地包括顺序/运动程序162、内部DB写入程序164、机械学习引擎接口166、特征量生成程序174。构成控制程序160的程序的命令可以作为一体的程序来进行描述,也可以分离成多个程序而分别进行描述。
顺序/运动程序162包括进行用于对控制对象进行控制的逻辑运算和/或者数值运算的命令。内部DB写入程序164将用户变量和设备变量1544所包含的变量中的预先指定的变量写入内部DB130中。
机械学习引擎接口166包括用于操作机械学习引擎140的命令。具体而言,机械学习引擎接口166包括学习请求程序168、监控请求程序170、串行化模块172。
即,机械学习引擎接口166包括指示机械学习引擎140进行机械学习的命令,监控请求程序170包括指示机械学习引擎140使用异常检测参数1546监控特征量,并进行异常检测的命令。
串行化模块172执行用于降低与学习请求程序168及监控请求程序170、机械学习引擎140之间的通信量的串行化处理。如后文所述,串行化模块172提供对特征量生成程序174的执行而生成的特征量进行数据压缩之后,提供给学习功能142和异常检测功能144的数据压缩功能。
特征量生成程序174包括根据预先指定的特征量生成方法,使用用户变量和设备变量1544指定的变量来生成特征量的命令。如后文所述,根据控制对象确定适合的特征量的生成方法。即,特征量生成程序174从与控制对象相关的数据生成适合检测控制对象中发生的异常的特征量。
在内部DB130中,典型地存储有(1)原始数据收集工序中收集到的原始数据132、(4)特征量学习工序中获取到的学习结果134、(5)特征量监控工序中输出的异常检测结果136。
机械学习引擎140包括用于在(4)特征量学习工序中执行必要的处理的学习功能142和用于在(5)特征量监控工序中执行必要的处理的异常检测功能144。学习功能142使用通过特征量生成程序174的执行而生成的特征量来实施机械学习。异常检测功能144基于异常检测参数1546和通过特征量生成程序174的执行而生成的特征量,来检测控制对象中发生的异常,该异常检测参数1546是基于经过学习功能142的机械学习得到的学习结果确定且在控制对象中发生的异常的检测中使用的参数。然后,异常检测功能144检测到某些异常时,输出其检测到的异常内容的事件日志146。异常检测功能144根据来自监控请求程序170的请求进行动作。即,监控请求程序170对异常检测功能144指示进行异常的检测
另一方面,在支援装置200中,除了开发程序222(图3)外,还安装有参数设定工具224和数据挖掘工具226。
参数设定工具224包括PLC变量访问程序2242,该PLC变量访问程序2242用于访问控制装置100的变量管理器154所管理的各个变量。PLC变量访问程序2242能够参照并重新写入控制装置100内部的变量。
数据挖掘工具226包括内部DB访问功能2262、数据挖掘功能2264、可视化功能2266。内部DB访问功能2262访问内部DB130并从收集到内部DB130的原始数据中抽取所需的数据。数据挖掘功能2264主要实施上述的(2)数据挖掘工序。可视化功能2266从视觉上向用户提示通过(2)数据挖掘工序获得的各种信息、在(5)特征量监控工序中检测到的异常内容等。
数据挖掘工具226通过(2)数据挖掘工序的实施来确定特征量生成方法和异常检测方法,通过(4)特征量学习工序的实施来确定异常检测参数,通过(6)评价工序的实施来生成异常检测的评价结果。
下面,对(1)~(6)中示出的各个工序和图5中示出的各个构件的动作的关系进行说明。图6是用于说明使用本实施方式的控制系统1进行异常检测的各个工序中的处理内容的示意图。
参照图6,在(1)原始数据收集工序中,用户通过对支援装置200的开发程序222进行操作,创建用于指定应收集到内部DB130中的变量的用户程序(步骤S10)。所创建的该用户程序相当于内部DB写入程序164。通过在控制装置100的PLC引擎150执行内部DB写入程序164,原始数据132写入到控制装置100的内部DB130(步骤S12)。
在(2)数据挖掘工序中,通过用户对支援装置200的数据挖掘工具226进行操作,读出收集到内部DB130的原始数据132并进行解析,由此,确定特征量的生成方法和异常检测方法(步骤S20)。
在(3)特征量收集工序中,通过用户对支援装置200的开发程序222进行操作,创建反映了(2)数据挖掘工序中确定的特征量的生成方法的与特征量生成相关的用户程序(步骤S30)。所创建的该用户程序相当于特征量生成程序174。
在(4)特征量学习工序中,通过用户对支援装置200的开发程序222进行操作,创建用于指定使用特征量的机械学习的用户程序(步骤S40)。所创建的该用户程序相当于学习请求程序168。通过在控制装置100的PLC引擎150的机械学习引擎接口166执行学习请求程序168,控制装置100的机械学习引擎140的学习功能142实施机械学习,并将其学习结果134存储到内部DB130。需要说明的是,也可以同时执行(3)特征量收集工序的特征量生成程序174和(4)特征量学习工序的学习请求程序168。
然后,通过用户对支援装置200的数据挖掘工具226进行操作,读出存储在内部DB130的学习结果134并进行解析,由此,确定异常检测参数(步骤S42)。接着,通过用户对支援装置200的开发程序222进行操作,将所确定的异常检测参数传送至控制装置100的PLC引擎150(步骤S44)。
在(5)特征量监控工序中,通过用户对支援装置200的开发程序222进行操作,创建用于监控某些异常的发生的用户程序(步骤S50)。所创建的该用户程序相当于监控请求程序170。通过在制装置100的PLC引擎150的机械学习引擎接口166执行监控请求程序170,控制装置100中的机械学习引擎140的异常检测功能144实施异常检测处理,检测到某些异常时,输出包括其内容的事件日志146(步骤S52),并且将异常检测结果136写入到内部DB130(步骤S54)。
在(6)评价工序中,通过用户对支援装置200中的开发程序222进行操作,读出存储在内部DB130的异常检测结果136,评价其内容的合理性(步骤S60)。用户也可以根据需要调整异常检测参数1546。
通过如上所述的控制装置100和支援装置200的各个结构协同来实现本实施方式的异常检测功能。
<D.原始数据收集工序>
下面,对(1)原始数据收集工序中生成的用户程序(内部DB写入程序164)进行说明。
图7是表示本实施方式的控制系统1中生成的内部DB写入程序164的一例的图。参照图7,内部DB写入程序164典型地可以使用内部DB写入功能块1642来进行描述。
对于内部DB写入功能块1642,定义有:列表名1644,其用于特定收集到内部DB130的原始数据的集合;对象变量指定1646,其用于指定收集到内部DB130的变量;以及周期指定1648,其用于指定向内部DB130收集变量的周期。
用户将任意名称指定为列表名(Table_Name)1644,并且将表示成为对象的变量(Variable)的变量名指定为对象变量指定1646。另外,将成为对象的变量的收集周期(收集频率)指定为周期指定1648。在图7示出的例子中,4个变量(Input01~04)以100msec的周期,被收集到命名为Variableset01的表中。需要说明的是,也可以指定用于使内部DB写入功能块1642有效地动作的条件。
需要说明的是,图7示出的用户程序是一个例子,可以采用任意的描述方法。例如,可以使用梯形图语言(ladder language)、结构化文本(structured text)等。
这样,控制装置100具有作为数据库的内部DB130,用于收集并存储与控制对象相关的数据。在内部DB130中收集根据用户程序中包含的命令(例如,内部DB写入功能块1642)指定的数据。
在本实施方式的控制系统1中,用户仅通过描述如上所述的用户程序(内部DB写入程序164),就能够以控制装置100的控制周期(数百usec数量级~数十msec数量级)收集所需的一个或者多个变量的时间序列,与以往的系统相比,能够进行更细粒度的分析。
<E.数据挖掘工序>
下面,对(2)数据挖掘工序中确定的特征量的生成方法和异常检测方法的一例进行说明。
图8是表示在本实施方式的控制系统1的数据挖掘工序中可确定的特征量列表的一个例子。如图8所示的多个特征量是预先定义的,在数据挖掘工序中,确定对收集到内部DB130的原始数据优选使用哪一个特征量。
具体而言,通过使用收集到内部DB130的原始数据来算出图8示出的各个特征量,并将其特征量的变化程度大的特征量确定为候选。
或者,作为典型的方法,可以采用各种主成分分析。作为主成分分析的方法,可以采用公知的任意方法。
图9是表示本实施方式的支援装置200中数据挖掘工序之后示出的用户界面画面的一例的图。参照图9,在用户界面画面500中,与用于特定成为数据挖掘工序的对象的原始数据组的特定信息502一起显示通过数据挖掘工序的实施而导出的特征量生成方法和异常检测方法的候选(候选504~506)。
在各个候选504~506中,显示用于特征量的生成的一个或者多个变量和使用这些变量生成的特征量的类型的组合,并且还显示用于监控所生成的特征量的算法。例如,在候选504中,作为特征量生成方法(即,特征量)的候选,举出了变量Input01与变量Input02之间的相关值,此外,作为异常检测方法的候选,举出了用于监控该特征量的下限值的方法。对于其他候选505和候选506也同样如此。
此外,在各个候选504~506中,还显示“看波形”按钮,用户通过选择该按钮,能够确认确定对应的特征量生成方法和异常检测方法的候选时使用的波形等。
最终,用户通过在用户界面画面500上选择与被认为最理想的候选对应的单选按钮508,确定特征量生成方法和异常检测方法。这样,通过执行支援装置200的数据挖掘工具226,来提供基于收集到控制装置100的内部DB130中的数据,确定适合检测控制对象中发生的异常的特征量的生成方法的功能。
<F.特征量收集工序和特征量学习工序>
下面,对(3)特征量收集工序和(4)特征量学习工序中生成的用户程序(特征量生成程序174和学习请求程序168)进行说明。
图10是本实施方式的控制系统1中生成的特征量生成程序174和学习请求程序168的一例的图。参照图10,特征量生成程序174典型地可以使用特征量生成功能块1742来描述。特征量生成功能块1742是对应于图9的用户界面画面500中的第一候选,算出相关值作为特征量的功能模块。
对于特征量生成功能块1742,定义有:输入变量指定1344,其指定用于在特征量的计算中使用的变量;以及输出目的地指定1746,其表示所算出的特征量的输出目的地。需要说明的是,由于(4)特征量学习工序的目的在于确定异常检测中使用的异常检测参数,因此,也可以设定用于使特征量生成功能块1742有效地动作的条件1748。该条件1748中设定有表示在监控对象的设备、机械中可发生的某些异常的情况的变量。例如,可以设定监控对象的设备、机械的温度超过了预先设定的值的情况等。或者,也可以将监控对象的设备、机械的实际动作设定为条件1748。通过指定这样的条件1748,能够减少所生成的特征量的数据量,能够提高机械学习的效率和精度。
特征量生成功能块1742的输出端(输出目的地指定1746)可连接有用于执行与学习请求程序168对应的处理的学习请求功能块1682。即,特征量生成功能块1742的输出目的地指定1746和指定成为学习请求功能块1682的学习对象的特征量的变量的输入变量指定1684被连接。
在学习请求功能块1682的输出端(学习结果输出目的地指定1686)输出经过基于学习请求程序168的机械学习的结果获得的信息(学习结果134)。
图11是表示通过实施本实施方式的控制系统1中所执行的机械学习来获得的学习结果的一例的图。参照图11,例如,通过对算出的特征量集合进行聚类(clustering),可分为3个群集。在这种情况下,作为学习结果134,与各群集的特定一同,输出各群集中包括的特征量的数据数量、平均值以及标准偏差等。
用户通过参照如图11所示的学习结果134,对特征量即相关值相对高的第一及第三群集推定为正常状态,对于特征量即相关值相对低的第二群集推定为异常状态。在这基础上,能够将用于区别第一及第三群集与第二群集的阈值设定为异常检测参数。在这种情况下,从各群集的平均值和标准偏差特定包含各群集的波动的范围,并确定异常检测参数。例如,在图11示出的例子中,第一群集和第二群集分开的距离大,因此,能够将各群集的平均值的中间的“47.5”设定为异常检测参数。
如果能够设定异常检测参数,则完成(3)特征量收集工序和(4)特征量学习工序。这样,通过执行支援装置200的数据挖掘工具226,提供基于经过机械学习得到的学习结果确定异常检测参数1706的功能。
<G.特征量监控工序>
下面,对(5)特征量监控工序中生成的用户程序(监控请求程序170)进行说明。
图12是表示本实施方式的控制系统1中生成的特征量生成程序174和监控请求程序170的一例的图。与上述图10同样地,使用特征量生成功能块1742来描述特征量生成程序174。
在特征量生成功能块1742的输出端(输出目的地指定1746)可连接有监控请求功能块1702,该监控请求功能块1702用于执行与监控请求程序170对应的处理。即,特征量生成功能块1742的输出目的地指定1746和指定成为监控请求功能块1702的监控对象的特征量的变量的输入变量指定1704被连接。此外,在监控请求功能块1702中,定义有作为异常检测的阈值发挥作用的异常检测参数1706。
特征量生成功能块1742在每一控制周期将输入变量指定1704中指定的变量(特征量)和异常检测参数1706中指定的阈值进行比较,发生跨过阈值之类的现象时,驱动被定义为故障输出目的地指定1708的变量(线圈)使其处于ON。在用户程序中,基于被指定为故障输出目的地指定1708的变量的值,能够即刻检测控制对象的设备和机械中发生的异常。
这样,异常检测功能144通过包括异常检测参数1706的指定和成为对象的特征量的指定的用户程序(特征量生成功能块1742)来实现。通过使用这种功能块能够规定异常检测的处理,从而能够提高通用性。
需要说明的是,在(5)特征量监控工序中,有时优选在对象的设备和机械实际动作的状态下实施异常检测处理,在这种情况下,也可以设定用于使特征量生成功能块1742有效动作的条件1749。该条件1749中设定有表示监控对象的设备和机械正在动作的某些变量。需要说明的是,可以不对特征量生成功能块1742,而对监控请求功能块1702设定使其有效动作的条件。通过指定这种条件1749,能够降低错误地检测对象的设备和机械的异常的可能性,能够提高异常检测的精度。
利用如上所述的用户程序(监控请求程序170),能够进行对象的设备和机械的异常检测。
<h.串行化模块>
构成本实施方式的控制系统1的控制装置100通过安装内部DB130来实现速度较高的数据收集。作为进一步提高该数据收集速度的方法,可以采用如下面说明的串行化技术和反串行化技术。这种串行化技术和反串行化技术可由串行化模块172(图5)提供。
(h1:基于串行化的数据压缩)
首先,说明基于串行化的数据压缩。图13是用于说明本实施方式的控制系统1的控制装置100中的串行化处理的示意图。参照图13,假设例如用所谓的关键值对(key-valuepair)规定收集到内部DB130中的数据的情况。即,假设由表示某些值意味着什么的“关键”数据和实际值的组合来规定对象的输入数据。在这种情况下,由于还包括冗余信息,因此,串行化模块172对这些输入数据进行串行化来降低数据量(数据压缩)。
作为一例,可以想到将包括在输入数据中的数据划分为单位数据之后,置换为表示各个单位数据的已缩短的数据的方法。或者,如图13所示,也可以变换为处理器102能够直接解释的机器代码。即,串行化模块172可以通过使用机器代码来变换成为对象的数据,从而实现数据压缩。
通过变换成这种机器代码,能够降低最初的输入数据所具有的冗余度。另外,由于即便是数据压缩的状态,机械学习引擎140也能够直接解释输入数据,因此,也可以使用被数据压缩的输入数据来进行机械学习。
这样,在向内部DB130写入数据之前,通过实施数据压缩处理,能够提高访问内部DB130的速度。
(h2:反串行化处理的高速化)
在如上所述那样串行化的状态下将数据存储在内部DB130中的情况下,访问该数据时,需要进行与串行化相反的变换即反串行化。对于这种反串行化,可以采用如下说明的处理高速化方法。
图14用于说明本实施方式的控制系统1的控制装置100中的反串行化处理的示意图。参照图14,可以想到从内部DB130读出目标数据1302的情况。如果目标数据1302被串行化且是原来的数据,则需要对整个目标数据1302进行反串行化。
对此,在本实施方式的控制装置100中,串行化模块172的处理引擎1722将包括于目标数据1302中的一部分数据复制到缓冲区域1724,并在缓冲区域1724中生成目标数据1302的反串行化所需的一个或者多个对象1726。并且,串行化模块172的处理引擎1722参照所生成的一个或者多个对象1726,并且对目标数据1302中的剩余的数据,不进行向缓冲区域1724的复制等,而输出对目标数据1302进行反串行化之后的结果。
这样,并不是读取所有串行化的数据并进行临时复制,而是仅复制目标数据的一部分,从而能够完成反串行化,因此,能够使读取处理高速化。
<I.基于机械学习引擎接口的数据直接写入>
下面,说明机械学习引擎接口166与机械学习引擎140之间进行的数据交换。图15是用于说明本实施方式的控制系统1的控制装置100中机械学习引擎接口166与机械学习引擎140之间的数据交换的示意图。
图15A中示出了典型的服务器与客户端模型下的数据交换。在该构成中,机械学习引擎接口166向机械学习引擎140发送请求时,机械学习引擎接口166接受并处理该请求,并且响应其处理结果。然后,机械学习引擎接口166接受来自于机械学习引擎140的响应,并登记事件日志。
在采用这种发送请求并等待对该请求的响应再进行处理的结构的情况下,在等待响应期间,不能执行接下来的处理,不得不暂时中断处理。
对此,在本实施方式的控制装置100中,如图15B所示,将关于对请求的响应的处理(在该例子中,指事件日志的登记),从机械学习引擎接口166委托(delegation)给机械学习引擎140,由此,减少在机械学习引擎接口166中等待响应的时间。即,在图15B中示出的结构中,机械学习引擎接口166仅进行向机械学习引擎140发送请求。于是,机械学习引擎接口166接受并处理来自于机械学习引擎接口166的请求,并且接受该处理结果,登记事件日志146。
这样,机械学习引擎接口166向机械学习引擎140仅发送所需的请求即可,无需等待之后的响应之类的处理,就能够继续后续的处理。即,机械学习引擎接口166向异常检测功能144发送异常检测所需的请求,异常检测功能144无需向机械学习引擎接口166回复对该请求的响应,就能够实施异常的检测。
通过采用这种结构,能够使机械学习引擎接口166与机械学习引擎140之间的数据交换实现高速化。即,能够非同步地执行在机械学习引擎接口166的处理和在机械学习引擎140的处理,由此,能够减少在机械学习引擎接口166的处理等待时间。
<J.应用例>
下面,对使用了本实施方式的控制系统1的应用例进行说明。
图16是表示本实施方式的控制系统1的一个应用例的示意图。图16中示出了作为具有包装机600的控制系统1构成时的例子。
参照图16,包装机600利用转子对向规定的搬运方向搬运的包装体604依次进行密封和切断中的至少一种。包装机600具有一对转子610、620,且一对转子610、620同步旋转。各个转子配置成在与包装体604接触的位置外周的切线方向与搬运方向一致。在各个转子的预先设定的位置配置有加热器和切割器,这些加热器和切割器通过与包装体604接触来实现对包装体604的密封和切断的处理。
包装机600的转子610、620利用伺服马达618、628分别以旋转轴612、622为中心同步地旋转驱动。各个转子610、620的表面设置有处理机构614、624,处理机构614包括沿圆周方向(旋转方向)前后配置的加热器615、616和配置在加热器615与加热器616之间的切割器617。同样地,处理机构624包括沿圆周方向前后配置的加热器625、626和配置在加热器625与加热器626之间的切割器627。转子610、620包括配置在其外周面上用于切断包装体604的切割器617、627。
转子610、620通过与包装体604的搬运速度同步地旋转,加热器615和加热器625使在包装体604的纸面右侧位置彼此相向的面(上表面与下表面)密封(粘合),并且加热器616与加热器626使在包装体604的纸面左侧位置彼此相向的面(上表面与下表面)密封(粘合)。与这些密封处理并行地进行切割器617和切割器627对包装体604的切断。通过重复进行这种一系列的处理,对包括被包装物605的包装体604重复进行密封和切断,从而依次生成单个包装体606。
用于旋转驱动转子610、620的伺服马达618、628的西旋转速度、转矩等被作为驱动器(驱动装置)的一例的伺服驱动器619、629控制。控制装置100可从伺服驱动器619、629收集伺服马达618、628的状态值,即转子610、620的实际值。作为伺服驱动器619、629的状态值(或者转子610、620的实际值),包括:(1)旋转位置(相位或旋转角度)、(2)速度、(3)加速度、(4)转矩值、(5)电流值、(6)电压值等。
控制装置100通过使用伺服驱动器619、629(或者转子610、620)的状态值检测异物的咬入。
异物咬入是因包装体604自身的位置偏离、包装体604所包含的被包装物605的位置偏离而生成的。由于异物咬入的发生,在用于驱动转子610、620的伺服马达618、628中会产生较大的转矩。通过监控这种转矩变化,有时能够检测异物咬入的异常。
图17是表示图16中示出的控制系统1中发生异物的咬入时的状态值和从状态值生成的特征量的变化的一例的图。图17A示出与转子610、620上产生的力相关的信号强度随时间变化的一个例子。在图17A中示出的信号强度随时间变化的一例中,在咬入相对大的异物时,信号强度的变化大,超过了预先设定的阈值,因此能够检测异常。
与之相对,在咬入相对小的异物的情况下,信号强度的变化小,无法到达预先设定的阈值。因此,对咬入相对小的异物不能检测异常。
对于这种情况,使用本实施方式的控制系统1提供的异常检测功能的情况下,由于能够设定适当的特征量和适当的异常检测参数,因此,对转子上产生的转矩,也能够检测出通过直接观察来无法检测出的异常。
作为一例,通过创建如图17B所示的特征量,即便在咬入相对小的异物时,也能够与没有咬入的一般的状态充分地区别开。
通过在一般的状态下产生的特征量与咬入相对小的异物时产生的特征量之间设定阈值(异常检测参数),即便在咬入的异物相对小的情况下,也能够检测异常。
<K.变形例>
也可以使控制装置100具备上述支援装置200的功能的全部或者一部分。例如,也可以在控制装置100中安装安装在支援装置200中的数据挖掘工具226。通过采用这种结构,无需在支援装置200侧安装许多应用程序,就可以使用本实施方式的功能。
另外,图5和图6示出的模块结构是一个例子,只要能够提供如上所述的功能,可以采用任意的安装。例如,考虑到硬件上的限制、程序设计上的限制等,可以将图5和图6示出的功能模块安装为多个功能模块的集合,也可以将图5和图6中示出的多个功能模块安装为单一模块。
<L.优点>
根据本实施方式的控制系统,在与现场之间交换数据的控制装置中安装收集数据的数据库,通过使用该数据库中收集到的数据进行机械学习,然后使用机械学习的结果检测是否有异常。通过采用这种高功能化的控制装置,能够实现与以往的结构相比能够以更短的周期监控控制对象中发生的现象的技术。
应当认为,本发明公开的实施方式在所有方面都是示例性的,而并非限定性的。本发明的范围并非由上述说明来表示,而是由权利要求书的范围来表示,并且本发明包括在与权利要求书的范围等同的含义和范围内实施的所有变更。
Claims (10)
1.一种控制装置,用于控制控制对象,其中,包括:
特征量生成机构,从与所述控制对象相关的数据生成适合检测所述控制对象中发生的异常的特征量;
机械学习机构,使用由所述特征量生成机构生成的特征量实施机械学习;
异常检测机构,基于异常检测参数和由所述特征量生成机构生成的特征量检测所述异常,所述异常检测参数是基于经过所述机械学习得到的学习结果确定且在所述控制对象中发生的异常的检测中使用的参数;
指示机构,对所述异常检测机构指示所述异常的检测;以及
数据压缩机构,在对由所述特征量生成机构生成的特征量进行数据压缩之后,提供给所述机械学习机构和所述异常检测机构;
所述指示机构向所述异常检测机构发送所述异常的检测所需的请求,所述异常检测机构向所述指示机构不回复对该请求的响应而实施所述异常的检测。
2.根据权利要求1所述的控制装置,其中,
所述数据压缩机构用机器代码变换成为对象的数据。
3.根据权利要求1或2所述的控制装置,其中,
所述异常检测机构通过用户程序来实现异常检测功能,该用户程序包括所述异常检测参数的指定和成为对象的特征量的指定。
4.根据权利要求1至3中任一项所述的控制装置,其中,
还包括数据库,该数据库中收集并存储有与所述控制对象相关的数据。
5.根据权利要求4所述的控制装置,其中,
在所述数据库中收集有根据用户程序所包含的命令指定的数据。
6.根据权利要求4或5所述的控制装置,其中,
还包括确定机构,该确定机构基于所述数据库中收集的数据确定特征量的生成方法,该特征量是适合检测所述控制对象中发生的异常的特征量。
7.根据权利要求1至6中任一项所述的控制装置,其中,
还包括异常检测参数确定机构,该异常检测参数确定机构基于经过所述机械学习得到的学习结果,确定所述异常检测参数。
8.根据权利要求1至7中任一项所述的控制装置,其中,
还包括保持机构,该保持机构保持所述异常检测参数,并且根据来自于外部装置的请求更新所保持的异常检测参数。
9.一种计算机可读存储介质,其存储有控制程序,该控制程序通过由计算机执行来实现对控制对象进行控制的控制装置,该控制程序使所述计算机执行:
从与所述控制对象相关的数据生成适合检测所述控制对象中发生的异常的特征量的步骤;
使用所生成的特征量实施机械学习的步骤;
基于异常检测参数和所生成的特征量检测所述异常的步骤,所述异常检测参数是基于经过所述机械学习得到的学习结果确定且在所述控制对象中发生的异常的检测中使用的参数;
指示进行所述异常的检测的步骤;以及
对所述所生成的特征量进行数据压缩来提供机械学习和异常检测中使用的数据的步骤;
进行所述异常的检测的步骤包括在发送所述异常的检测所需的请求之后,不回复对该请求的响应而实施所述异常的检测的步骤。
10.一种控制方法,由对控制对象进行控制的控制装置执行,其中,包括:
从与所述控制对象相关的数据生成适合检测所述控制对象中发生的异常的特征量的步骤;
使用所生成的特征量实施机械学习的步骤;
基于异常检测参数和所生成的特征量检测所述异常的步骤,所述异常检测参数是基于经过所述机械学习得到的学习结果确定且在所述控制对象中发生的异常的检测中使用的参数;
指示进行所述异常的检测的步骤;以及
对所述所生成的特征量进行数据压缩来提供机械学习和异常检测中使用的数据的步骤,
进行所述异常的检测的步骤包括在发送所述异常的检测所需的请求之后,不回复对该请求的响应而实施所述异常的检测的步骤。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2016242303A JP6919186B2 (ja) | 2016-12-14 | 2016-12-14 | 制御システム、制御プログラムおよび制御方法 |
JP2016-242303 | 2016-12-14 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN108227641A true CN108227641A (zh) | 2018-06-29 |
CN108227641B CN108227641B (zh) | 2021-02-23 |
Family
ID=60162002
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201710939556.0A Active CN108227641B (zh) | 2016-12-14 | 2017-10-11 | 控制装置、控制方法及计算机可读存储介质 |
Country Status (4)
Country | Link |
---|---|
US (1) | US11009847B2 (zh) |
EP (1) | EP3336638B1 (zh) |
JP (1) | JP6919186B2 (zh) |
CN (1) | CN108227641B (zh) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112424718A (zh) * | 2018-08-06 | 2021-02-26 | 欧姆龙株式会社 | 控制系统以及控制装置 |
CN112639844A (zh) * | 2018-10-23 | 2021-04-09 | 欧姆龙株式会社 | 控制系统以及控制方法 |
CN112673326A (zh) * | 2018-10-24 | 2021-04-16 | 欧姆龙株式会社 | 控制装置及控制程序 |
Families Citing this family (13)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP3557354B1 (en) * | 2016-12-14 | 2023-03-01 | Omron Corporation | Control device, control program, and control method |
JP6919186B2 (ja) | 2016-12-14 | 2021-08-18 | オムロン株式会社 | 制御システム、制御プログラムおよび制御方法 |
CN110943961B (zh) | 2018-09-21 | 2022-06-21 | 阿里巴巴集团控股有限公司 | 数据处理方法、设备以及存储介质 |
JP7024678B2 (ja) * | 2018-09-28 | 2022-02-24 | オムロン株式会社 | 制御システム、サポート装置、サポートプログラム |
JP7087908B2 (ja) * | 2018-10-24 | 2022-06-21 | オムロン株式会社 | 制御装置 |
JP7099352B2 (ja) * | 2019-02-14 | 2022-07-12 | オムロン株式会社 | 制御システム |
JP7226103B2 (ja) * | 2019-05-29 | 2023-02-21 | オムロン株式会社 | 制御システム、サポート装置およびサポートプログラム |
JP2022548227A (ja) | 2019-09-11 | 2022-11-17 | シー3.エーアイ, インコーポレイテッド | 製造プロセスリスクを予測するためのシステムおよび方法 |
US11644808B2 (en) | 2019-10-03 | 2023-05-09 | Keyence Corporation | Programable logic controller |
US11409257B2 (en) | 2019-10-03 | 2022-08-09 | Keyence Corporation | Setting device that sets a programmable logic controller and PLC system that collects control data and a dashboard for displaying control data |
US11982987B2 (en) | 2020-01-31 | 2024-05-14 | Keyence Corporation | Programmable logic controller and analyzer |
WO2021171093A1 (en) * | 2020-02-28 | 2021-09-02 | Darktrace, Inc. | Cyber security for a software-as-a-service factoring risk |
JP2023051402A (ja) * | 2021-09-30 | 2023-04-11 | オムロン株式会社 | 制御システム、情報処理方法および情報処理装置 |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20030114965A1 (en) * | 2001-09-10 | 2003-06-19 | Claude-Nicolas Fiechter | Method and system for condition monitoring of vehicles |
US20050066241A1 (en) * | 2003-09-24 | 2005-03-24 | Siemens Aktiengesellschaft | Method, system and device for predictive error recognition in a plant |
JP2010009369A (ja) * | 2008-06-27 | 2010-01-14 | Yokogawa Electric Corp | フィールド機器 |
CN102282516A (zh) * | 2009-02-17 | 2011-12-14 | 株式会社日立制作所 | 异常检测方法及异常检测系统 |
JP2013008111A (ja) * | 2011-06-22 | 2013-01-10 | Hitachi Engineering & Services Co Ltd | 異常予兆診断装置および異常予兆診断方法 |
CN103403633A (zh) * | 2011-03-15 | 2013-11-20 | 欧姆龙株式会社 | 可编程控制器的中央处理器单元、可编程控制器用系统程序以及存储了可编程控制器用系统程序的记录介质 |
Family Cites Families (14)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2672576B2 (ja) * | 1988-06-16 | 1997-11-05 | 株式会社東芝 | プラント・機器の診断支援システム |
JPH0652474A (ja) * | 1992-07-29 | 1994-02-25 | Mitsubishi Heavy Ind Ltd | プラント監視装置 |
JPH11175142A (ja) * | 1997-12-10 | 1999-07-02 | Hitachi Ltd | 製造装置の運転支援システム |
JP2000056823A (ja) | 1998-08-04 | 2000-02-25 | Hitachi Ltd | データ監視システム |
CA2676441C (en) | 2006-02-03 | 2015-11-24 | Recherche 2000 Inc. | Intelligent monitoring system and method for building predictive models and detecting anomalies |
JP5431235B2 (ja) * | 2009-08-28 | 2014-03-05 | 株式会社日立製作所 | 設備状態監視方法およびその装置 |
JP5404437B2 (ja) | 2010-01-13 | 2014-01-29 | 株式会社東芝 | 安全出力装置 |
JP5502002B2 (ja) | 2011-03-18 | 2014-05-28 | 三菱電機株式会社 | プラント機器の異常診断装置 |
JP5469131B2 (ja) | 2011-07-19 | 2014-04-09 | 株式会社日立製作所 | プラントの診断方法及び装置。 |
JP6135192B2 (ja) | 2013-03-01 | 2017-05-31 | 株式会社明電舎 | 時系列データの異常監視装置、異常監視方法及びプログラム |
US10168691B2 (en) | 2014-10-06 | 2019-01-01 | Fisher-Rosemount Systems, Inc. | Data pipeline for process control system analytics |
JP6138375B2 (ja) | 2015-05-27 | 2017-05-31 | 三菱電機株式会社 | コントローラ |
US10193780B2 (en) | 2015-10-09 | 2019-01-29 | Futurewei Technologies, Inc. | System and method for anomaly root cause analysis |
JP6919186B2 (ja) | 2016-12-14 | 2021-08-18 | オムロン株式会社 | 制御システム、制御プログラムおよび制御方法 |
-
2016
- 2016-12-14 JP JP2016242303A patent/JP6919186B2/ja active Active
-
2017
- 2017-10-11 CN CN201710939556.0A patent/CN108227641B/zh active Active
- 2017-10-19 US US15/787,739 patent/US11009847B2/en active Active
- 2017-10-20 EP EP17197539.4A patent/EP3336638B1/en active Active
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20030114965A1 (en) * | 2001-09-10 | 2003-06-19 | Claude-Nicolas Fiechter | Method and system for condition monitoring of vehicles |
US20050066241A1 (en) * | 2003-09-24 | 2005-03-24 | Siemens Aktiengesellschaft | Method, system and device for predictive error recognition in a plant |
JP2010009369A (ja) * | 2008-06-27 | 2010-01-14 | Yokogawa Electric Corp | フィールド機器 |
CN102282516A (zh) * | 2009-02-17 | 2011-12-14 | 株式会社日立制作所 | 异常检测方法及异常检测系统 |
CN103403633A (zh) * | 2011-03-15 | 2013-11-20 | 欧姆龙株式会社 | 可编程控制器的中央处理器单元、可编程控制器用系统程序以及存储了可编程控制器用系统程序的记录介质 |
JP2013008111A (ja) * | 2011-06-22 | 2013-01-10 | Hitachi Engineering & Services Co Ltd | 異常予兆診断装置および異常予兆診断方法 |
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112424718A (zh) * | 2018-08-06 | 2021-02-26 | 欧姆龙株式会社 | 控制系统以及控制装置 |
US12083685B2 (en) | 2018-08-06 | 2024-09-10 | Omron Corporation | Control system and control device |
CN112639844A (zh) * | 2018-10-23 | 2021-04-09 | 欧姆龙株式会社 | 控制系统以及控制方法 |
US12008072B2 (en) | 2018-10-23 | 2024-06-11 | Omron Corporation | Control system and control method |
CN112639844B (zh) * | 2018-10-23 | 2024-09-03 | 欧姆龙株式会社 | 控制系统以及控制方法 |
CN112673326A (zh) * | 2018-10-24 | 2021-04-16 | 欧姆龙株式会社 | 控制装置及控制程序 |
Also Published As
Publication number | Publication date |
---|---|
US20180164770A1 (en) | 2018-06-14 |
CN108227641B (zh) | 2021-02-23 |
JP2018097662A (ja) | 2018-06-21 |
JP6919186B2 (ja) | 2021-08-18 |
EP3336638B1 (en) | 2021-06-23 |
EP3336638A1 (en) | 2018-06-20 |
US11009847B2 (en) | 2021-05-18 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN108227641A (zh) | 控制装置、控制方法及计算机可读存储介质 | |
JP6965798B2 (ja) | 制御システムおよび制御方法 | |
CN109983412A (zh) | 控制装置、控制程序以及控制方法 | |
US10591886B2 (en) | Control system, control program, and control method for device switching responsive to abnormality detection | |
JP6468313B2 (ja) | 制御装置、制御プログラムおよび制御方法 | |
CN108628263B (zh) | 控制系统、控制装置、计算机可读存储介质以及控制方法 | |
US10503154B2 (en) | Control device having function of collecting and saving time series data | |
EP2500791A1 (en) | System and method of simulating input/output modules in a control system | |
JP2018173883A (ja) | 制御装置、制御プログラム、制御システム、および制御方法 | |
WO2021111936A1 (ja) | 予測システム、情報処理装置および情報処理プログラム | |
US11520302B2 (en) | Control system and control device | |
JP7102801B2 (ja) | 制御システム、制御装置および表示装置 | |
WO2021044650A1 (ja) | プログラム開発装置、プロジェクト作成方法およびプログラム開発装置を実現するためのプログラム | |
JP2023151886A (ja) | 情報処理装置および情報処理プログラム | |
JP2023151755A (ja) | 情報処理装置および情報処理プログラム |
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 |