CN111065976B - 工厂自动化***、控制器和控制方法 - Google Patents
工厂自动化***、控制器和控制方法 Download PDFInfo
- Publication number
- CN111065976B CN111065976B CN201980004105.5A CN201980004105A CN111065976B CN 111065976 B CN111065976 B CN 111065976B CN 201980004105 A CN201980004105 A CN 201980004105A CN 111065976 B CN111065976 B CN 111065976B
- Authority
- CN
- China
- Prior art keywords
- controller
- packet data
- controllers
- packet
- module
- 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.)
- Active
Links
- 238000000034 method Methods 0.000 title claims abstract description 29
- 238000004891 communication Methods 0.000 claims abstract description 103
- 238000012544 monitoring process Methods 0.000 claims abstract description 89
- 239000000872 buffer Substances 0.000 claims abstract description 76
- 230000003139 buffering effect Effects 0.000 claims abstract description 56
- 238000003860 storage Methods 0.000 claims description 37
- 230000005540 biological transmission Effects 0.000 claims description 23
- 230000006870 function Effects 0.000 description 93
- 238000011161 development Methods 0.000 description 82
- 238000010586 diagram Methods 0.000 description 44
- 238000012545 processing Methods 0.000 description 15
- 238000012790 confirmation Methods 0.000 description 8
- 238000012546 transfer Methods 0.000 description 7
- 238000004458 analytical method Methods 0.000 description 6
- 230000004044 response Effects 0.000 description 6
- 238000009825 accumulation Methods 0.000 description 5
- 238000004519 manufacturing process Methods 0.000 description 4
- 238000013461 design Methods 0.000 description 3
- 230000005856 abnormality Effects 0.000 description 2
- 239000000470 constituent Substances 0.000 description 2
- 238000005401 electroluminescence Methods 0.000 description 2
- 230000010365 information processing Effects 0.000 description 2
- 239000004973 liquid crystal related substance Substances 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 238000004886 process control Methods 0.000 description 2
- 102220554706 Holliday junction recognition protein_S30T_mutation Human genes 0.000 description 1
- 102220475756 Probable ATP-dependent RNA helicase DDX6_S30A_mutation Human genes 0.000 description 1
- 102220475757 Probable ATP-dependent RNA helicase DDX6_S31A_mutation Human genes 0.000 description 1
- 230000004397 blinking Effects 0.000 description 1
- 238000013480 data collection Methods 0.000 description 1
- 238000012217 deletion Methods 0.000 description 1
- 230000037430 deletion Effects 0.000 description 1
- 238000003825 pressing Methods 0.000 description 1
- 102220293834 rs1553603207 Human genes 0.000 description 1
- 230000000007 visual effect Effects 0.000 description 1
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
-
- 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/31094—Data exchange between modules, cells, devices, processors
-
- 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/33—Director till display
- G05B2219/33244—Packet information exchange
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02P—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN THE PRODUCTION OR PROCESSING OF GOODS
- Y02P90/00—Enabling technologies with a potential contribution to greenhouse gas [GHG] emissions mitigation
- Y02P90/02—Total factory control, e.g. smart factories, flexible manufacturing systems [FMS] or integrated manufacturing systems [IMS]
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Automation & Control Theory (AREA)
- General Engineering & Computer Science (AREA)
- Manufacturing & Machinery (AREA)
- Quality & Reliability (AREA)
- Programmable Controllers (AREA)
Abstract
提供能够针对与同一网络连接的任意的控制器(100A~100C)防止分组数据的丢失的技术。FA***具有多个控制器(100A~100C)。各控制器(100A~100C)包含:缓冲器(150);通信模块(152),其与其他控制器进行分组通信;分组监视模块(154),其将由本控制器生成的分组数据和本控制器接收到的分组数据缓冲到缓冲器(150)中;以及停止模块(156),其根据满足了预定的停止条件(108),针对多个控制器(100A~100C)中的指定的控制器,停止分组监视模块(154)的缓冲功能。
Description
技术领域
本公开涉及用于针对任意的控制器停止分组数据的缓冲处理的技术。
背景技术
在各种生产现场中,导入了PLC(Programmable Logic Controller:可编程逻辑控制器)、机器人控制器等产业用的控制装置(以下也称为“控制器”。)。控制器对各种产业用的驱动设备进行控制,由此使生产工序自动化。
控制器经由进行EtherCAT(注册商标)等恒定周期通信的现场网络对驱动设备进行控制。向该现场网络传输分组数据,控制器和驱动设备针对该分组数据进行数据读写,由此相互通信。
分组数据保存在控制器内的缓冲器中以进行异常分析等。缓冲器的容量有限,因此,在缓冲器溢出的情况下,删除缓冲器内的任意一个分组数据。为了进行异常分析,异常产生紧前的分组数据是重要的。关于用于防止这种分组数据的丢失的技术,日本特开2011-35664号公报(专利文献1)公开了以“在EtherCAT的FA(Factory Automation)***中能够简单可靠地进行异常分析”为目的的控制器。该控制器在产生了异常的情况下停止分组监视功能,由此防止重要分组数据的删除。
现有技术文献
专利文献
专利文献1:日本特开2011-35664号公报
发明内容
发明要解决的课题
有时在同一网络连接有多个控制器。为了进行更加详细的分析,有时不仅需要本控制器中缓冲的分组数据,还需要其他控制器中缓冲的分组数据。因此,期望针对链接于同一网络的任意的控制器防止分组数据的丢失。
本公开正是为了解决上述这种问题而完成的,某个方面的目的在于,提供能够针对连接于同一网络的任意的控制器防止分组数据的丢失的技术。
用于解决课题的手段
在本公开的一例中,具有多个控制器,上述多个控制器各自对作为控制对象的驱动设备进行控制。上述多个控制器各自包含:缓冲器;通信模块,其用于与其他控制器进行分组通信;分组监视模块,其用于将由本控制器生成的分组数据和本控制器接收到的分组数据缓冲到上述缓冲器中;以及停止模块,其用于根据满足了预定的停止条件,针对上述多个控制器中的指定的控制器,停止上述分组监视模块的缓冲功能。
根据该公开,各控制器不仅能够停止本控制器中的缓冲功能,还能够停止其他控制器中的缓冲功能。因此,不仅能够防止本控制器中缓冲的分组数据的丢失,还能够防止其他控制器中缓冲的分组数据的丢失。
在本公开的一例中,上述停止模块根据从上述其他控制器接收到停止缓冲功能的停止命令,停止上述本控制器中的上述分组监视模块的缓冲功能。
根据该公开,上述停止模块不仅将缓冲功能的停止命令发送到其他控制器,还能够接收来自其他控制器的停止命令,来停止缓冲功能。
在本公开的一例中,上述分组数据具有用于确定作为发送方的控制器的发送方信息、以及用于确定作为发送目的地的控制器的发送目的地信息。上述FA***还具有构成为能够与上述多个控制器进行通信的外部设备。上述外部设备包含:通信模块,其用于从上述多个控制器分别接收上述多个控制器各自的缓冲器中存储的分组数据;以及显示部,其用于针对从上述多个控制器分别接收到的各个分组数据显示发送方信息和发送目的地信息。
根据该公开,分组数据的记录保留在作为发送方的控制器和作为发送目的地的控制器双方中,因此,如果存在未保留成对的记录的控制器,则是由于某些原因使分组数据丢失。通过针对各分组数据显示发送方信息和发送目的地信息,用户能够容易地掌握哪个分组数据在哪个控制器中丢失。
在本公开的一例中,上述显示部使发送方信息一致、且发送目的地信息一致的分组数据彼此对应起来进行显示。
根据该公开,用户能够更加简单地发现哪个分组数据在哪个控制器中丢失。
在本公开的一例中,上述显示部以与其他分组数据不同的显示方式显示不存在发送方信息一致、且发送目的地信息一致的成对分组数据的分组数据。
根据该公开,用户能够立即发现哪个分组数据丢失。
在本公开的一例中,上述多个控制器各自包含:接口部,其用于连接外部存储装置;以及保存模块,其用于根据满足了预定的保存条件,将上述多个控制器中的指定的控制器的缓冲器中存储的分组数据分别存储在与该控制器连接的上述外部存储装置中。
根据该公开,各控制器能够将所缓冲的分组数据保存在外部存储装置中,防止所缓冲的分组数据的丢失。
在本公开的一例中,控制器对作为控制对象的驱动设备进行控制,上述控制器包含:缓冲器;通信模块,其用于与其他控制器进行分组通信;分组监视模块,其用于将由上述控制器生成的分组数据和上述其他控制器接收到的分组数据缓冲到上述缓冲器中;以及停止模块,其用于根据满足了预定的停止条件,针对上述控制器或上述其他控制器中的指定的控制器,停止上述分组监视模块的缓冲功能。
根据该公开,各控制器不仅能够停止本控制器中的缓冲功能,还能够停止其他控制器中的缓冲功能。因此,不仅能够防止本控制器中缓冲的分组数据的丢失,还能够防止其他控制器中缓冲的分组数据的丢失。
在本公开的一例中,控制方法是对作为控制对象的驱动设备进行控制的控制器的控制方法,上述控制方法包含以下步骤:与其他控制器进行分组通信;将由上述控制器生成的分组数据和上述其他控制器接收到的分组数据缓冲到上述控制器的缓冲器中;以及根据满足了预定的停止条件,针对上述控制器或上述其他控制器中的指定的控制器,停止进行上述缓冲的步骤中的缓冲。
根据该公开,各控制器不仅能够停止本控制器中的缓冲功能,还能够停止其他控制器中的缓冲功能。因此,不仅能够防止本控制器中缓冲的分组数据的丢失,还能够防止其他控制器中缓冲的分组数据的丢失。
附图说明
图1是示出基于实施方式的FA***的概略的图。
图2是概略地示出基于实施方式的FA***的装置结构的示意图。
图3是示出针对分组监视模块的设定处理的流程的顺序图。
图4是示出作为开发工具提供的用户界面的一例的程序生成画面的图。
图5是示出作为开发工具提供的用户界面的一例的设定画面的图。
图6是示出满足了停止条件的情况下的控制器之间的数据流的顺序图。
图7是概略地示出满足了停止条件的情况下的控制器的动作方式的概念图。
图8是示出从各控制器收集所缓冲的分组数据的处理的流程的顺序图。
图9是示出作为开发工具提供的用户界面的一例的事件日志画面的图。
图10是示出作为开发工具提供的用户界面的一例的确认画面的图。
图11是示出作为开发工具提供的用户界面的一例的分组数据的收集结果画面的图。
图12是示出基于变形例的收集结果画面的图。
图13是示出执行了分组数据的保存功能的情况下的控制流程的顺序图。
图14是示出执行了基于分组监视模块的缓冲处理的开始功能的情况下的控制流程的顺序图。
图15是示出基于实施方式的控制器的硬件结构的一例的示意图。
图16是示出基于实施方式的开发辅助装置的硬件结构的示意图。
图17是示出基于实施方式的控制器和开发辅助装置的功能结构的一例的图。
图18是示出用于进行针对分组监视模块的设定的CIP(Common IndustrialProtocol:通用工业协议)参数的图。
图19是示出用于指定分组监视模块的执行命令的CIP参数的图。
图20是示出用于取得分组监视模块的当前状态的CIP参数的图。
具体实施方式
下面,参照附图对基于本发明的各实施方式进行说明。在以下的说明中,对相同部件和结构要素标注相同标号。它们的名称和功能也相同。因此,不重复进行它们的详细说明。
<A.应用例>
参照图1对本发明的应用例进行说明。图1是示出FA***10的概略的图。
FA***10是用于对机器和装置等控制对象进行控制来使生产工序自动化的***。FA***10包含多个控制器。在图1中,作为多个控制器的例子,示出2个控制器100A、100B。下面,也将多个控制器统称为控制器100。
控制器100A、100B能够连接于同一网络N1。网络N1例如采用EtherNet/IP(注册商标)等。
控制器100A、100B各自包含缓冲器150、通信模块152、分组监视模块154、停止模块156。
缓冲器150例如是控制器100内的易失性存储区域。作为一例,缓冲器150是RAM(Random Access Memory:随机存取存储器)、高速缓冲存储器等存储区域。
通信模块152是用于通过分组通信实现与其他通信装置之间的通信的功能模块。“其他通信装置”是包含除了本控制器以外的任意通信装置的概念。例如,其他通信装置包含其他控制器、作为本控制器的控制对象的驱动设备300(参照图2)、与控制器连接的服务器等信息处理终端。
分组监视模块154是用于捕获所发送接收的分组数据的功能模块。更具体而言,分组监视模块154将为了发送到其他通信装置而由本控制器生成的分组数据、以及本控制器从其他通信装置接收到的分组数据依次缓冲到缓冲器150中。缓冲器150的大小受到限制,分组监视模块154例如以FIFO(First In First Out:先进先出)形式或LIFO(Last InFirst Out:后进先出)形式对缓冲器150进行管理。
“分组数据”是包含在控制器100中传输的一定大小的任意通信数据的概念。作为一例,分组数据包含按照EtherNet/IP的通信协议生成的通信数据、按照EtherNET(注册商标)的通信协议生成的通信数据、按照EtherCAT的通信协议生成的通信数据、按照CompoNet(注册商标)的通信协议生成的通信数据、按照OPC-UA(Object Linking and Embeddingfor Process Control Unified Architecture:用于过程控制的对象链接和嵌入-统一架构)的通信协议生成的通信数据等。
停止模块156是用于停止基于分组监视模块154的分组数据的缓冲功能的功能模块。更具体而言,停止模块156根据满足了预定的停止条件108,针对与网络N1连接的控制器中的指定的控制器停止分组监视模块154的缓冲功能。例如,根据在本控制器中产生了错误,满足停止条件108。停止条件108的详情在后面叙述。
在指定本控制器作为停止对象的情况下,停止模块156将用于停止缓冲功能的停止命令输出到本控制器的分组监视模块154。分组监视模块154根据受理了该停止命令,停止分组数据的缓冲处理。
另一方面,在指定其他控制器作为停止对象的情况下,停止模块156生成缓冲功能的停止命令,经由通信模块152将该停止命令发送到其他控制器。接收到该停止命令的其他控制器停止分组数据的缓冲功能。
缓冲器150的容量有限,因此,在缓冲器150溢出的情况下,删除缓冲器150内的任意一个分组数据。基于本实施方式的FA***10不仅能够停止本控制器中的缓冲功能,还能够停止其他控制器中的缓冲功能。由此,不仅能够防止本控制器中缓冲的分组数据的丢失,还能够防止其他控制器中缓冲的分组数据的丢失。
<B.FA***10的装置结构>
参照图2对FA***10的装置结构的一例进行说明。图2是概略地示出FA***10的装置结构的示意图。
FA***10包含1个以上的控制器100、1个以上的开发辅助装置200、1个以上的驱动设备300。在图2的例子中,示出3个控制器100A~100C和1个开发辅助装置200。
控制器100具有多个物理的通信端口。能够在各个通信端口连接不同的网络。在图2的例子中,控制器100具有2个通信端口P1、P2。在通信端口P1连接有网络N1。在通信端口P2连接有网络N2。
控制器100和开发辅助装置200经由集线器90而与网络N1连接。除此之外,能够在网络N1连接有任意的信息处理装置。作为一例,能够在网络N1连接有HMI(Human MachineInterface:人机接口)等显示器、服务器装置等。
开发辅助装置200例如是笔记本型PC(Personal Computer:个人计算机)、桌上型PC、平板终端或智能手机等。能够在开发辅助装置200中安装开发工具30。开发工具30是用于对控制器100用的控制程序的开发进行辅助的应用。作为一例,开发工具30是欧姆龙公司制的“Sysmac Studio”。用户能够在开发工具30上设计控制器100用的控制程序,将设计出的控制程序安装在控制器100中。所生成的控制程序作为由开发辅助装置200编译后的执行形式的文件被发送到控制器100。
下级的网络N2优选采用保证数据的到达时间的进行恒定周期通信的现场网络。作为这种进行恒定周期通信的现场网络,公知有EtherCAT、CompoNet等。控制器100按照开发辅助装置200上生成的控制程序对作为控制对象的驱动设备300进行控制。
驱动设备300是用于直接或间接地对工件进行规定的作业的设备的集合。在图2的例子中,驱动设备300包含机器人控制器300A、伺服驱动器300B、被机器人控制器300A控制的手臂机器人301A、由伺服驱动器300B控制的伺服马达301B等。此外,驱动设备300也可以包含用于拍摄工件的视觉传感器、生产工序中利用的其他设备等。
<C.FA***10的功能>
典型地讲,FA***10具有以下的设定功能A~C。
(功能A)开发辅助装置200受理与分组监视模块154(参照图1)有关的各种设定的功能。
(功能B)各控制器按照通过上述功能(a)受理的设定对本控制器和其他控制器的分组监视模块154的动作方式进行切换的功能。
(功能C)开发辅助装置200收集由各控制器的分组监视模块154缓冲的分组数据的功能。
在典型的使用例中,依次执行这些功能A~C。下面,依次对这些上述功能A~C进行说明。
[C1.设定功能]
首先,参照图3~图5对FA***10的上述功能A进行说明。图3是示出针对分组监视模块154(参照图1)的设定处理的流程的顺序图。
在步骤S10中,开发辅助装置200受理了开发工具30的起动操作。由此,开发辅助装置200显示程序生成画面。图4是示出作为开发工具30提供的用户界面的一例的程序生成画面31的图。程序生成画面31例如显示在开发辅助装置200的显示部221上。
用户能够在程序生成画面31上开发控制器100用的控制程序。在图4中示出作为控制器100用的控制程序的一例的用户程序210。用户程序210能够以任意的编程语言进行描述。作为一例,用户程序210可以由梯形图(LD:Ladder Diagram)规定,也可以由命令列表(IL:Instruction List)、结构文本(ST:Structured Text)和顺序功能图(SFC:SequentialFunction Chart)中的任意一方或它们的组合来规定。或者,用户程序210也可以由JavaScript(注册商标)、C语言这种通用编程语言规定。
在图4的例子中,用户程序210通过梯形图来描述。设计者在程序生成画面31上组合任意的功能块,或者规定变量、功能块的输入输出关系,由此,能够设计符合作为控制对象的驱动设备300的用户程序210。功能块是使在用户程序210内反复使用的功能部件化而成的。
在图4的例子中,用户程序210包含变量“A”~“C”、功能块FB1、FB2。功能块FB1根据与其输入部相关联的变量“A”的值,执行功能块FB1中规定的预定的功能。该执行结果反映在与功能块FB1的输出部相关联的变量“B”中。功能块FB2根据与其输入部相关联的变量“B”的值,执行功能块FB2中规定的预定的功能。该执行结果反映在与功能块FB2的输出部相关联的变量“C”中。这样,设计者通过在程序生成画面31上组合变量、功能块,能够设计任意的用户程序210。
开发工具30提供各种功能块。作为一例,提供用于停止分组数据的缓冲功能的上述停止模块156(参照图1)作为功能块。除此之外,提供用于开始执行分组数据的缓冲功能的开始模块作为功能块。除此之外,提供用于将缓冲器150中缓冲的分组数据保存在外部存储装置(例如存储卡等)中的保存模块作为功能块。
再次参照图3,在步骤S12中,开发工具30调出了用于进行与分组监视模块154(参照图1)有关的各种设定的设定画面。由此,设定画面显示在开发辅助装置200的显示部221上。
图5是示出作为开发工具30提供的用户界面的一例的设定画面33的图。设定画面33是受理与分组监视模块154有关的各种设定的用户界面。
如图5所示,设定画面33包含设定栏41、42、45、47、保存按钮50、取消按钮51。通过输入到设定画面33的设定,来设定分组数据的缓冲处理的开始条件、分组数据的缓冲处理的停止条件、分组数据的保存条件、分组数据的传送条件等。
更具体而言,设定栏41受理用于指定分组监视模块154的动作方式的设定。作为可指定的动作方式,例如列举出“开始”、“停止”、“保存”、“传送”等。作为一例,根据按下了按钮41A,一览显示可指定的动作对象。用户通过从所显示的动作方式的一览中选择一个动作方式,能够指定分组监视模块154的动作方式。
设定栏42受理用于指定执行条件的设定。在设定栏42中,例如能够指定控制器100内可能产生的事件日志的错误类别、由分组数据表示的错误类别等。典型地讲,预先规定能够由设定栏42指定的执行条件的候选。例如,根据按下了按钮42A,一览显示可指定的执行条件的候选。用户通过从所显示的执行条件的候选的一览中选择一个执行条件,能够指定执行条件。
下面,将设定栏41中指定“开始”的执行条件也称为“开始条件”。将设定栏41中指定“停止”的执行条件也称为“停止条件”。将设定栏41中指定“保存”的执行条件也称为“保存条件”。将设定栏41中指定“传送”的执行条件也称为“传送条件”。
设定栏45受理用于指定命令对象的控制器的设定。命令对象的控制器可以从预定的候选中选择,也可以通过控制器的识别信息(例如控制器名、IP地址等)的输入来指定。作为一例,根据按下了按钮45A,一览显示可指定为命令对象的控制器的候选。用户通过从所显示的控制器的候选的一览中选择一个控制器,能够指定命令对象的控制器。
控制器100根据满足了由设定栏42指定的执行条件,使由设定栏45指定的控制器的分组监视模块154以由设定栏41指定的动作方式进行动作。
作为一例,在满足了开始条件的情况下,控制器100使与该开始条件对应的命令对象的控制器开始分组监视模块154的执行。
在满足了停止条件的情况下,控制器100使与该停止条件对应的命令对象的控制器停止分组监视模块154。该停止条件对应于上述停止条件108(参照图1)。
在满足了保存条件的情况下,控制器100使与该保存条件对应的命令对象的控制器将所缓冲的分组数据保存在本控制器中。
在满足了传送条件的情况下,控制器100使与该传送条件对应的命令对象的控制器将所缓冲的分组数据传送到所指定的发送目的地。
设定栏47受理用于指定报知功能的ON/OFF(开启/关闭)的设定。在设定栏47中指定了ON的情况下,在满足了由设定栏42指定的执行条件时,报知错误的产生。错误的产生可以通过警告音等声音进行报知,也可以通过消息等的显示进行报知。在设定栏47中指定了OFF的情况下,在满足了由设定栏42指定的执行条件时,也不报知错误的产生。
在按下了保存按钮50的情况下,开发辅助装置200保存输入到设定画面33的设定信息212。在按下了设定画面33的取消按钮51的情况下,开发辅助装置200不保存输入到设定画面33的设定信息212,关闭设定画面33。
再次参照图3,在步骤S14中,开发工具30受理了编译操作。由此,开发工具30对程序生成画面31上生成的用户程序210进行编译。然后,开发工具30受理了编译结果的下载操作。由此,开发工具30将步骤S12中保存的设定信息212与所编译的用户程序210一起传送到控制器100。控制器100将接收到的用户程序210和设定信息212保存在内部的存储装置中。
[C2.分组监视模块154的停止功能]
接着,参照图6和图7对FA***10的上述功能B的一例进行说明。图6是示出满足了停止条件108的情况下的控制器100A~100C之间的数据流的顺序图。图7是概略地示出满足了停止条件108的情况下的控制器100A~100C的动作方式的概念图。
图6所示的步骤编号和图7所示的步骤编号相互对应。
在步骤S30A中,控制器100A起动。由此,控制器100A开始执行基于分组监视模块154的分组监视功能。
在步骤S30B中,控制器100B起动。由此,控制器100B开始执行基于分组监视模块154的分组监视功能。
在步骤S30C中,控制器100C起动。由此,控制器100C开始执行基于分组监视模块154的分组监视功能。
在步骤S31A中,控制器100A受理了本控制器中存储的用户程序210的执行命令。由此,控制器100A开始执行用户程序210。
在步骤S31B中,控制器100B受理了本控制器中存储的用户程序210的执行命令。由此,控制器100B开始执行用户程序210。
在步骤S31C中,控制器100C受理了本控制器中存储的用户程序210的执行命令。由此,控制器100C开始执行用户程序210。
在步骤S32中,控制器100A判断是否满足了设定信息212中规定的执行条件中的某一方。例如,设为满足作为执行条件的一例的停止条件。该情况下(步骤S32:是),控制器100A将控制切换为步骤S34。控制器100A在判断为不满足设定信息212中规定的执行条件中的任意一方的情况下(步骤S32:否),再次执行步骤S32的处理。
作为一例,指定了控制器100A~100C作为命令对象的控制器。该情况下,控制器100A停止本控制器中的分组数据的缓冲处理、其他控制器100B、100C中的分组数据的缓冲处理。
更具体而言,在步骤S34中,控制器100A的停止模块156针对本控制器中的分组监视模块154停止缓冲功能。由此,停止在控制器100A的缓冲器150中蓄积分组数据。
在步骤S36中,控制器100A的停止模块156生成缓冲功能的停止命令,将该停止命令发送到其他控制器100B、100C。控制器100B的停止模块156根据从控制器100A接收到停止命令,停止控制器100B的分组监视模块154的缓冲功能。由此,停止在控制器100B的缓冲器150中蓄积分组数据。同样,控制器100C的停止模块156根据从控制器100A接收到停止命令,停止控制器100C的分组监视模块154的缓冲功能。由此,停止在控制器100C的缓冲器150中蓄积分组数据。
这样,控制器100具有根据满足了预定的停止条件而停止本控制器和其他控制器的缓冲功能的功能。优选同时或大致同时停止本控制器和其他控制器的缓冲功能。由此,各控制器能够将相同期间内缓冲的分组数据保留在缓冲器150中。
[C3.分组数据的收集处理]
接着,参照图8~图11对FA***10的上述功能C进行说明。图8是示出从各控制器收集所缓冲的分组数据的处理的流程的顺序图。
在步骤S50中,开发辅助装置200受理了事件日志画面的显示操作。由此,开发辅助装置200显示事件日志画面。图9是示出作为开发工具30提供的用户界面的一例的事件日志画面35的图。事件日志画面35例如显示在开发辅助装置200的显示部221上。
开发辅助装置200将从各控制器100收集的事件日志显示在事件日志画面35上。事件日志画面35具有显示栏60~65。在显示栏60中显示所产生的错误的重要度。在显示栏61中显示产生了错误的通信协议。在显示栏62中显示错误的产生源的通信端口。在显示栏63中显示事件名。在显示栏64中显示事件代码。在显示栏65中显示详情按钮。
再次参照图8,在步骤S52中,开发辅助装置200根据按下了显示栏65中显示的详情按钮中的任意一方,显示用于受理是否开始分组收集的确认画面。图10是示出确认画面的一例的图。
在图10中,示出确认画面70作为确认画面的一例。确认画面70具有表示“是”的按钮71和表示“否”的按钮72。在按下了表示“是”的按钮71的情况下,开发辅助装置200开始收集各控制器100中的分组数据。在按下了表示“否”的按钮72的情况下,开发辅助装置200不进行任何动作,关闭确认画面70。
再次参照图8,在步骤S60中,开发辅助装置200根据按下了确认画面70中的表示“是”的按钮71,向所指定的控制器100A~100C分别发送分组数据的取得请求。
在步骤S62中,控制器100A~100C分别取得本控制器的缓冲器150(参照图1)中存储的分组数据,将该分组数据发送到开发辅助装置200。
在步骤S70中,开发辅助装置200显示从控制器100A~100C分别收集的分组数据的收集结果。图11是示出作为开发工具30提供的用户界面的一例的分组数据的收集结果画面37A的图。
基于EtherCAT、EtherNet、EtherNet/IP等的分组数据包含EtherNET头。该EtherNET头包含用于确定作为发送方的控制器的发送方信息(例如IP地址)、以及用于确定作为发送目的地的控制器的发送目的地信息(例如IP地址)。除此以外,该分组数据包含发送目的地的端口编号等信息。
收集结果画面37A根据分组数据中规定的信息,针对所收集的各分组数据显示发送方的IP地址和发送目的地的IP地址。分组数据的记录保留在作为发送方的控制器和作为发送目的地的控制器双方中,因此,如果存在未保留成对的记录的控制器,则是由于某些原因而使分组数据丢失。通过针对各分组数据显示发送方的IP地址和发送目的地的IP地址,用户能够容易地掌握哪个分组数据在哪个控制器中丢失,通信错误的分析变得容易。
优选收集结果画面37A使发送方信息一致、且发送目的地信息一致的分组数据彼此对应起来进行显示。在图11的例子中,这些分组数据彼此排成一列进行显示。例如,如虚线部分81所示,从IP地址“A”的控制器100A发送到IP地址“B”的控制器100B的分组数据的记录保留在控制器100A和控制器100B双方中。开发辅助装置200并列显示从控制器100A和控制器100B分别收集的这些对应的分组数据。由此,用户能够更加简单地发现哪个分组数据在哪个控制器中丢失,通信错误的分析更加容易。
优选收集结果画面37A以与其他分组数据不同的显示方式显示不存在发送方信息一致、且发送目的地信息一致的成对分组数据的分组数据。即,对不存在成对的分组数据的分组数据进行强调显示。强调显示例如通过阴影显示、特定颜色(例如红色)的显示、闪烁显示等来实现。在图11的例子中,强调显示通过阴影显示来实现(虚线部分82、83)。通过对不存在成对的分组数据的分组数据进行强调显示,用户能够立即发现哪个分组数据丢失。
另外,分组数据的收集结果画面37A不限于图11的例子。图12是示出收作为集结果画面37A的变形例的收集结果画面37B的图。如图12所示,收集结果画面37B具有检索条件的输入区域85和检索结果的显示区域86。
检索条件的输入区域85受理用于检索分组数据的各种条件。作为一例,输入区域85受理控制器的识别信息作为检索条件。另外,输入区域85中可指定的检索条件不限于控制器的识别信息。作为一例,也可以输入通信协议、端口编号等作为检索条件。
根据在输入区域85中输入了检索条件,开发辅助装置200从所收集的分组数据中检索符合所指定的检索条件的分组数据,在检索结果的显示区域86中一览显示符合所指定的检索条件的分组数据。作为检索结果,例如显示发送方的控制器的IP地址、发送目的地的控制器的IP地址、通信时利用的通信协议、发送目的地的端口编号、备注。
<D.分组数据的保存功能>
参照图13对用于保存所缓冲的分组数据的保存功能进行说明。图13是示出执行了分组数据的保存功能的情况下的控制流程的顺序图。
在步骤S80中,控制器100A判断是否满足了设定信息212(参照图5)中规定的保存条件。控制器100A在判断为满足了设定信息212中规定的保存条件的情况下(步骤S80:是),将控制切换为步骤S82。不是这样的情况下(步骤S80:否),再次执行步骤S80的处理。
在设定信息212中规定的保存条件中对应有命令对象的控制器。作为一例,对应有控制器100A~100C作为命令对象的控制器。该情况下,控制器100A执行本控制器中缓冲的分组数据的保存处理和其他控制器100B、100C中缓冲的分组数据的保存处理。
更具体而言,在步骤S82中,控制器100A将本控制器的缓冲器150中缓冲的分组数据保存在外部存储装置(例如后述的存储卡140)中。由此,保存控制器100A中的分组数据作为日志数据。
在步骤S84中,控制器100A生成分组数据的保存命令,将该保存命令发送到其他控制器100B、100C。控制器100B根据从控制器100A接收到保存命令,将控制器100B的缓冲器150中缓冲的分组数据保存在外部存储装置(例如后述的存储卡140)中。由此,控制器100B中的分组数据保留在外部存储装置中。同样,控制器100C根据从控制器100A接收到保存命令,将控制器100C的缓冲器150中缓冲的分组数据保存在外部存储装置(例如后述的存储卡140)中。由此,控制器100C中的分组数据保存在外部存储装置中。
<E.缓冲处理的开始功能>
参照图14对用于使分组监视模块154开始缓冲处理的开始功能进行说明。图14是示出执行了基于分组监视模块154的缓冲处理的开始功能的情况下的控制流程的顺序图。
在步骤S90中,控制器100A判断是否满足了设定信息212(参照图5)中规定的开始条件。控制器100A在判断为满足了设定信息212中规定的开始条件的情况下(步骤S90:是),将控制切换为步骤S92。不是这样的情况下(步骤S90:否),再次执行步骤S90的处理。
在设定信息212中规定的开始条件中对应有命令对象的控制器。作为一例,对应有控制器100A~100C作为命令对象的控制器。该情况下,控制器100A开始本控制器中的分组数据的缓冲处理和其他控制器100B、100C中的分组数据的缓冲处理。
更具体而言,在步骤S92中,控制器100A使本控制器中的分组监视模块154开始缓冲功能。由此,分组数据向本控制器的缓冲器150的缓冲处理开始。
在步骤S94中,控制器100A生成缓冲功能的开始命令,将该开始命令发送到其他控制器100B、100C。控制器100B根据从控制器100A接收到开始命令,使控制器100B的分组监视模块154开始缓冲功能。由此,开始在控制器100B的缓冲器150中蓄积分组数据。同样,控制器100C根据从控制器100A接收到开始命令,使控制器100C的分组监视模块154开始缓冲功能。由此,开始在控制器100C的缓冲器150中蓄积分组数据。
这样,控制器100具有根据满足了预定的开始条件而开始本控制器和其他控制器的缓冲功能的功能。优选同时或大致同时开始本控制器和其他控制器的缓冲功能。
<F.硬件结构>
参照图15和图16依次对控制器100和开发辅助装置200的硬件结构进行说明。
(F1.控制器100的硬件结构)
首先,参照图15对控制器100的硬件结构进行说明。图15是示出控制器100的硬件结构的一例的示意图。
控制器100包含通信接口101、CPU(Central Processing Unit:中央处理单元)或MPU(Micro-Processing Unit:微处理单元)等控制装置102、芯片组104、主存储器106、非易失性存储装置110、内部总线控制器122、现场总线控制器124、存储卡接口139。
控制装置102读出存储装置110中存储的控制程序111,在主存储器106中展开并执行,由此实现针对作为控制对象的驱动设备300等的任意控制。控制程序111包含用于对控制器100进行控制的各种程序。作为一例,控制程序111包含***程序109和用户程序210等。***程序109包含用于提供数据的输入输出处理、执行定时控制等控制器100的基本功能的命令代码。用户程序210是从开发辅助装置200下载的。用户程序210是根据控制对象而任意进行设计的,包含用于执行顺序控制的顺序程序210A和用于执行运动控制的运动程序210B。
芯片组104通过对各组成部分进行控制,实现作为控制器100整体的处理。
存储装置110除了存储控制程序111以外,还存储各种数据。作为一例,存储装置110存储上述设定信息212(参照图5)等。
内部总线控制器122是与通过内部总线连结于控制器100的各种设备交换数据的接口。连接有I/O单元126作为这种设备的一例。
现场总线控制器124是与通过现场总线连结于控制器100的各种驱动设备300交换数据的接口。连接有机器人控制器300A、伺服驱动器300B作为这种设备的一例。除此之外,也可以连接有视觉传感器等驱动设备。
内部总线控制器122和现场总线控制器124能够对所连接的设备赋予任意指令,并且能够取得设备所管理的任意数据。此外,内部总线控制器122和/或现场总线控制器124还作为用于在与机器人控制器300A、伺服驱动器300B之间交换数据的接口发挥功能。
通信接口101对通过各种有线/无线网络的数据的交换进行控制。控制器100经由通信接口101而与开发辅助装置200等外部设备进行通信。控制器100经由通信接口101而与其他通信装置进行分组通信。
存储卡接口139是用于连接作为外部存储介质的一例的存储卡140(例如SD卡)的接口部。存储卡接口139构成为能够拆装存储卡140,能够对存储卡140写入数据,从存储卡140读出数据。
(F2.开发辅助装置200的硬件结构)
接着,参照图16对开发辅助装置200的硬件结构进行说明。图16是示出开发辅助装置200的硬件结构的示意图。
作为一例,开发辅助装置200由基于通用的计算机架构构成的计算机构成。开发辅助装置200包含CPU或MPU等控制装置202、主存储器204、非易失性存储装置208、通信接口211、I/O(Input/Output:输入/输出)接口214、显示接口220。这些组成部分经由内部总线225以能够通信的方式相互连接。
控制装置202在主存储器204中展开并执行存储装置208中存储的开发辅助程序208A,由此实现开发工具30中的各种处理。开发辅助程序208A是用于提供用户程序210的开发环境的程序。存储装置208除了存储开发辅助程序208A以外,还存储开发工具30中生成的各种数据等。该数据例如包含开发工具30上生成的上述用户程序210、上述设定信息212等。
通信接口211在与其他通信设备之间经由网络交换数据。该其他通信设备例如包含控制器100、服务器等外部设备。开发辅助装置200也可以构成为能够经由通信接口211从该其他通信设备下载开发辅助程序208A等各种程序。
I/O接口214与操作部215连接,取入表示来自操作部215的用户操作的信号。典型地讲,操作部215由键盘、鼠标、触摸面板、触摸板等构成,受理来自用户的操作。
显示接口220与显示部221连接,按照来自控制装置202等的指令,对显示部221送出用于显示图像的图像信号。显示部221由LCD(Liquid Crystal Display:液晶显示器)、有机EL(Electro Luminescence:电致发光)显示器等构成,对用户提示各种信息。能够在显示部221上显示由开发工具30提供的各种画面(例如上述程序生成画面31、设定画面33)。另外,在图16的例子中,开发辅助装置200和显示部221分开示出,但是,开发辅助装置200和显示部221也可以一体地构成。
<G.功能结构>
参照图17对控制器100和开发辅助装置200的功能进行说明。图17是示出控制器100和开发辅助装置200的功能结构的一例的图。
如图17所示,控制器100A、100B各自包含通信命令执行模块151、通信模块152、通信驱动器153、分组监视模块154作为功能结构。这些功能模块例如安装在***程序109(参照图15)内。通信模块152包含客户端功能152A、服务器功能152B。
此外,在开发辅助装置200上向控制器100A、100B中安装用户程序210。用户程序210例如包含用于停止基于分组监视模块154的分组数据的缓冲处理的停止模块156、用于开始基于分组监视模块154的分组数据的缓冲处理的开始模块157、用于将所缓冲的分组数据保存在外部存储装置中的保存模块158作为其一个功能。典型地讲,控制器100的功能模块由控制装置102(参照图15)执行。
通信模块152、分组监视模块154和停止模块156的功能如上所述,因此,下面,不会重复进行这些功能的说明。
通信命令执行模块151是用于对通信模块152进行控制的功能模块。作为一例,通信命令执行模块151根据从停止模块156受理了缓冲停止命令,生成用于生成CIP消息的CIP参数,将CIP参数输出到客户端功能152A。CIP参数的详情在后面叙述。
通信驱动器153是通信接口101(参照图15)用的软件。通信驱动器153是根据通信接口101的种类而由制造商提供的,可以预先安装,也可以根据需要进行安装。控制器100经由通信驱动器153实现与其他控制器、开发辅助装置200之间的通信。
服务器功能152B例如根据受理了停止命令,停止本控制器的分组监视模块154。停止命令有时从本控制器自发地发出,有时从其他控制器、开发辅助装置200发出。
作为一例,对从开发辅助装置200发出停止命令的情况进行说明。用户在开发辅助装置200上确认了在某一个控制器100中产生了错误,在开发辅助装置200上选择要停止缓冲功能的控制器100。由此,开发辅助装置200向所指定的控制器100控制器100A发送缓冲功能的停止命令。
开发辅助装置200具有通信模块252和通信驱动器253作为功能模块。通信模块252包含客户端功能252A。典型地讲,开发辅助装置200的功能模块由控制装置202(参照图16)执行。
通信驱动器253是通信接口211(参照图16)用的软件。通信驱动器253是根据通信接口211的种类而由制造商提供的,可以预先安装,也可以根据需要进行安装。开发辅助装置200经由通信驱动器253实现与控制器100之间的通信。
<H.CIP消息>
如上所述,通信模块152根据CIP参数,生成规定针对分组监视模块154的控制指令的CIP消息。下面,参照图18~图20对CIP参数的具体例进行说明。
图18是示出用于进行与分组监视模块154有关的设定的CIP参数的图。
作为一例,CIP参数包含与分组监视模块154的有效/无效的设定有关的服务代码。例如,在输入了“0x4E”作为服务代码的情况下,取得表示分组监视模块154的有效/无效的当前的设定值。在输入了“0x4F”作为服务代码的情况下,根据输入来设置分组监视模块154的有效/无效。
除此之外,CIP参数包含与分组监视模块154的各种设定有关的服务代码。例如,例如,在输入了“0x50”作为服务代码的情况下,取得分组监视模块154的当前的各种设定。在输入了“0x51”作为服务代码的情况下,根据输入来设置分组监视模块154的各种设定。
图19是示出用于指定分组监视模块154的执行命令的CIP参数的图。
作为一例,CIP参数包含用于开始分组监视模块154的分组监视处理(即分组数据的缓冲处理)的服务代码。例如,在输入了“0x4B”作为服务代码的情况下,开始基于分组监视模块154的分组监视处理。
除此之外,CIP参数包含用于停止分组监视模块154的分组监视处理的服务代码。例如,在输入了“0x4C”作为服务代码的情况下,停止基于分组监视模块154的分组监视处理。
除此之外,CIP参数包含用于将由分组监视模块154缓冲的分组数据保存在外部存储装置中的CIP参数。例如,在输入了“0x4D”作为服务代码的情况下,将所缓冲的分组数据保存在外部存储装置中。
图20是示出用于取得分组监视模块154的当前状态的CIP参数的图。
作为一例,CIP参数包含用于取得分组监视模块154的当前状态的服务代码。例如,在输入了“0x52”作为服务代码的情况下,得到分组监视模块154的当前状态。分组监视模块154的状态例如包含将分组监视设定为无效的状态、表示分组监视停止中的状态、表示分组监视执行中的状态等。
<I.总结>
如上所述,控制器100根据满足了预定的停止条件,针对所指定的控制器停止分组监视模块154的缓冲功能。即,控制器100不仅能够停止本控制器中的缓冲功能,还能够停止其他控制器中的缓冲功能。由此,不仅能够防止本控制器中缓冲的分组数据的丢失,还能够防止其他控制器中缓冲的分组数据的丢失。
<J.附记>
如上所述,本实施方式包含以下那样的公开。
[结构1]
一种FA(Factory Automation)***,其中,
所述FA***具有多个控制器(100A~100C),所述多个控制器(100A~100C)分别对作为控制对象的驱动设备进行控制,
所述多个控制器(100A~100C)各自包含:
缓冲器(150);
通信模块(152),其用于与其他控制器进行分组通信;
分组监视模块(154),其用于将由本控制器生成的分组数据和本控制器接收到的分组数据缓冲到所述缓冲器(150)中;以及
停止模块(156),其用于根据满足了预定的停止条件(108),针对所述多个控制器(100A~100C)中的指定的控制器,停止所述分组监视模块(154)的缓冲功能。
[结构2]
根据结构1所述的FA***,其中,
所述停止模块(156)根据从所述其他控制器接收到停止缓冲功能的停止命令,停止所述本控制器中的所述分组监视模块(154)的缓冲功能。
[结构3]
根据结构1或2所述的FA***,其中,
所述分组数据具有用于确定作为发送方的控制器的发送方信息、以及用于确定作为发送目的地的控制器的发送目的地信息,
所述FA***还具有构成为能够与所述多个控制器(100A~100C)进行通信的外部设备(200),
所述外部设备(200)包含:
通信模块(252),其用于从所述多个控制器(100A~100C)分别接收所述多个控制器(100A~100C)各自的缓冲器(150)中存储的分组数据;以及
显示部(221),其用于显示从所述多个控制器(100A~100C)分别接收到的各个分组数据的发送方信息和发送目的地信息。
[结构4]
根据结构3所述的FA***,其中,
所述显示部(221)使发送方信息一致、且发送目的地信息一致的分组数据彼此对应起来进行显示。
[结构5]
根据结构4所述的FA***,其中,
所述显示部(221)以与其他分组数据不同的显示方式显示不存在发送方信息一致、且发送目的地信息一致的成对分组数据的分组数据。
[结构6]
根据结构1~5中的任意一项所述的FA***,其中,
所述多个控制器(100A~100C)各自包含:
接口部(139),其用于连接外部存储装置;以及
保存模块(159),其用于根据满足了预定的保存条件,将所述多个控制器(100A~100C)中的指定的控制器的缓冲器(150)中存储的分组数据各自存储在与该控制器连接的所述外部存储装置(140)中。
[结构7]
一种控制器,其对作为控制对象的驱动设备进行控制,其中,所述控制器包含:
缓冲器(150);
通信模块(152),其用于与其他控制器进行分组通信;
分组监视模块(154),其用于将由所述控制器生成的分组数据和所述其他控制器接收到的分组数据缓冲到所述缓冲器(150)中;以及
停止模块(156),其用于根据满足了预定的停止条件(108),针对所述控制器或所述其他控制器中的指定的控制器,停止所述分组监视模块(154)的缓冲功能。
[结构8]
一种控制方法,其是对作为控制对象的驱动设备进行控制的控制器的控制方法,其中,所述控制方法包含以下步骤:
与其他控制器进行分组通信;
将由所述控制器生成的分组数据和所述其他控制器接收到的分组数据缓冲到所述控制器的缓冲器(150)中;以及
根据满足了预定的停止条件(108),针对所述控制器或所述其他控制器中的指定的控制器,停止进行所述缓冲的步骤中的缓冲。
应该理解到本次公开的实施方式在全部方面是例示而不是限制。本发明的范围不由上述说明示出而由权利要求书示出,意图包含与权利要求书等同的意思和范围内的全部变更。
标号说明
10:FA***;30:开发工具;31:程序生成画面;33:设定画面;35:事件日志画面;37A、37B:收集结果画面;41、42、45、47:设定栏;41A、42A、45A、71、72:按钮;50:保存按钮;51:取消按钮;60、61、62、63、64、65:显示栏;70:确认画面;81、82、83:虚线部分;85:输入区域;86:显示区域;90:集线器;100、100A、100B、100C:控制器;101、211:通信接口;102、202:控制装置;104:芯片组;106、204:主存储器;108:停止条件;109:***程序;110、208:存储装置;111:控制程序;122:内部总线控制器;124:现场总线控制器;126:I/O单元;139:存储卡接口;140:存储卡;150:缓冲器;151:通信命令执行模块;152、252:通信模块;152A、252A:客户端功能;152B:服务器功能;153、253:通信驱动器;154:分组监视模块;156:停止模块;157:开始模块;158:保存模块;200:开发辅助装置;208A:开发辅助程序;210:用户程序;210A:顺序程序;210B:运动程序;212:设定信息;214:I/O接口;215:操作部;220:显示接口;221:显示部;225:内部总线;300:驱动设备;300A:机器人控制器;300B:伺服驱动器;301A:手臂机器人;301B:伺服马达。
Claims (6)
1.一种FA***,即工厂自动化***,其中,
所述FA***具有多个控制器,所述多个控制器各自对作为控制对象的驱动设备进行控制,
所述多个控制器各自包含:
缓冲器;
通信模块,其用于与其他控制器进行分组通信;
控制模块,其按照控制程序对所述作为控制对象的驱动设备进行控制;
分组监视模块,其用于在通过所述控制模块控制所述作为控制对象的驱动设备时,将由本控制器生成的分组数据和包含通过所述通信模块与所述其他控制器所通信的分组数据在内的本控制器所通信的分组数据缓冲到所述缓冲器中;以及
停止模块,其用于根据满足了预定的停止条件,针对所述多个控制器中的所述本控制器和指定的其他控制器,停止所述分组监视模块的缓冲功能,
所述分组数据具有用于确定作为发送方的控制器的发送方信息、以及用于确定作为发送目的地的控制器的发送目的地信息,
所述FA***还具有构成为能够与所述多个控制器进行通信的外部设备,
所述外部设备包含:
通信模块,其用于从所述多个控制器分别接收所述多个控制器各自的缓冲器中存储的分组数据;以及
显示部,其用于针对从所述多个控制器分别接收到的各个分组数据,将发送方信息和发送目的地信息以使发送方信息一致、且发送目的地信息一致的分组数据彼此对应起来的方式进行显示。
2.根据权利要求1所述的FA***,其中,
所述停止模块根据从所述其他控制器接收到停止缓冲功能的停止命令,停止所述本控制器中的所述分组监视模块的缓冲功能。
3.根据权利要求1或2所述的FA***,其中,
所述显示部以与其他分组数据不同的显示方式显示不存在发送方信息一致、且发送目的地信息一致的成对分组数据的分组数据。
4.根据权利要求1或2所述的FA***,其中,
所述多个控制器各自包含:
接口部,其用于连接外部存储装置;以及
保存模块,其用于根据满足了预定的保存条件,将所述多个控制器中的指定的控制器的缓冲器中存储的分组数据分别存储在与该控制器连接的所述外部存储装置中。
5.一种控制器,其对作为控制对象的驱动设备进行控制,其中,所述控制器包含:
缓冲器;
通信模块,其用于与其他控制器进行分组通信;
控制模块,其按照控制程序对所述作为控制对象的驱动设备进行控制;
分组监视模块,其用于在通过所述控制模块控制所述作为控制对象的驱动设备时,将由本控制器生成的分组数据和包含通过所述通信模块与所述其他控制器所通信的分组数据在内的本控制器所通信的分组数据缓冲到所述缓冲器中;
停止模块,其用于根据满足了预定的停止条件,针对所述本控制器和所述其他控制器中的指定的控制器,停止所述分组监视模块的缓冲功能;以及
通信接口,其与外部设备进行通信,
所述分组数据具有用于确定作为发送方的控制器的发送方信息、以及用于确定作为发送目的地的控制器的发送目的地信息,
所述外部设备包含:
通信模块,其用于从多个所述控制器分别接收多个所述控制器各自的缓冲器中存储的分组数据;以及
显示部,其用于针对从多个所述控制器分别接收到的各个分组数据,将发送方信息和发送目的地信息以使发送方信息一致、且发送目的地信息一致的分组数据彼此对应起来的方式进行显示。
6.一种控制器所实施的方法,所述控制器对作为控制对象的驱动设备进行控制,其中,所述方法包含以下步骤:
与其他控制器进行分组通信;
按照控制程序对所述作为控制对象的驱动设备进行控制;
在控制所述作为控制对象的驱动设备时,将由本控制器生成的分组数据和包含在进行所述分组通信的步骤中与所述其他控制器所通信的分组数据在内的所述本控制器所通信的分组数据缓冲到所述本控制器的缓冲器中;
根据满足了预定的停止条件,针对所述本控制器和所述其他控制器中的指定的控制器,停止进行所述缓冲的步骤中的缓冲;以及
与外部设备进行通信,
所述分组数据具有用于确定作为发送方的控制器的发送方信息、以及用于确定作为发送目的地的控制器的发送目的地信息,
所述外部设备从多个所述控制器分别接收多个所述控制器各自的缓冲器中存储的分组数据,针对从多个所述控制器分别接收到的各个分组数据,将发送方信息和发送目的地信息以使发送方信息一致、且发送目的地信息一致的分组数据彼此对应起来的方式进行显示。
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2018-043851 | 2018-03-12 | ||
JP2018043851A JP6984499B2 (ja) | 2018-03-12 | 2018-03-12 | FA(Factory Automation)システム、コントローラ、および制御方法 |
PCT/JP2019/002736 WO2019176337A1 (ja) | 2018-03-12 | 2019-01-28 | FA(Factory Automation)システム、コントローラ、および制御方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN111065976A CN111065976A (zh) | 2020-04-24 |
CN111065976B true CN111065976B (zh) | 2024-02-20 |
Family
ID=67908297
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201980004105.5A Active CN111065976B (zh) | 2018-03-12 | 2019-01-28 | 工厂自动化***、控制器和控制方法 |
Country Status (5)
Country | Link |
---|---|
US (1) | US11215974B2 (zh) |
EP (1) | EP3767409A4 (zh) |
JP (1) | JP6984499B2 (zh) |
CN (1) | CN111065976B (zh) |
WO (1) | WO2019176337A1 (zh) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP7276309B2 (ja) * | 2020-12-25 | 2023-05-18 | 株式会社安川電機 | プログラム作成装置、プログラム作成方法、及びプログラム |
Citations (16)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5166928A (en) * | 1990-04-27 | 1992-11-24 | Matsushita Electric Industrial Co., Ltd. | Communication system comprising a communication line monitor for monitoring a communication line |
JPH08331146A (ja) * | 1995-06-02 | 1996-12-13 | Hitachi Electron Service Co Ltd | Lanアナライザ |
JPH11134007A (ja) * | 1997-10-27 | 1999-05-21 | Honda Motor Co Ltd | プログラマブルコントローラを用いた設備の監視システム |
JP2000047707A (ja) * | 1998-07-27 | 2000-02-18 | Omron Corp | 情報管理装置およびその制御方法 |
DE19857436A1 (de) * | 1998-12-12 | 2000-06-21 | Kuka Roboter Gmbh | Verfahren zum Behandeln des Spannungsabfalls in der Steuerung eines Roboters und zum Wiederanfahren eines Roboters nach Spannungsabfall |
JP2001117607A (ja) * | 1999-10-18 | 2001-04-27 | Toshiba Corp | コントローラシステム、およびそれを適用したプラント |
CN1899774A (zh) * | 2005-07-20 | 2007-01-24 | 发那科株式会社 | 机器人***以及机器人控制装置 |
CN101069167A (zh) * | 2004-10-01 | 2007-11-07 | 松下电器产业株式会社 | 存储卡控制器、存储卡驱动设备、以及计算机程序 |
CN101206612A (zh) * | 2006-12-22 | 2008-06-25 | 富士通株式会社 | 信息处理装置以及历史管理方法 |
JP2011035664A (ja) * | 2009-07-31 | 2011-02-17 | Omron Corp | コントローラ |
CN102132532A (zh) * | 2008-08-22 | 2011-07-20 | 艾利森电话股份有限公司 | 用于避免不需要的数据分组的方法和装置 |
JP2012181784A (ja) * | 2011-03-03 | 2012-09-20 | Hitachi High-Tech Instruments Co Ltd | 分散型制御システム |
JP2013242629A (ja) * | 2012-05-18 | 2013-12-05 | Omron Corp | 制御装置、制御方法および命令セット |
CN103995500A (zh) * | 2013-02-15 | 2014-08-20 | 欧姆龙株式会社 | 控制器、信息处理装置及程序 |
CN107132808A (zh) * | 2016-02-26 | 2017-09-05 | 欧姆龙株式会社 | 可编程控制器及其控制方法与控制程序 |
CN107436594A (zh) * | 2016-05-17 | 2017-12-05 | 罗克韦尔自动化技术公司 | 使用基于控制器的元属性的自动化历史记录器配置方法 |
Family Cites Families (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7146408B1 (en) * | 1996-05-30 | 2006-12-05 | Schneider Automation Inc. | Method and system for monitoring a controller and displaying data from the controller in a format provided by the controller |
KR20070049926A (ko) * | 2005-11-09 | 2007-05-14 | 삼성전자주식회사 | 멀티미디어신호 수신장치 및 그 제어방법 |
JP2008293314A (ja) * | 2007-05-25 | 2008-12-04 | Densei Lambda Kk | 無停電電源装置用のネットワーク通信システム、並びに、無停電電源装置の負荷機器の稼動状態を制御するために通信するコントローラ群を無停電電源装置毎に組分けする方法 |
US20100198781A1 (en) * | 2007-05-29 | 2010-08-05 | Tsutomu Yuine | Plc having communication function |
ATE545289T1 (de) * | 2007-12-31 | 2012-02-15 | Ericsson Telefon Ab L M | Optimierter mobil-internetzugang |
EP2273820A1 (en) * | 2009-06-30 | 2011-01-12 | Panasonic Corporation | Inter-VPLMN handover via a handover proxy node |
CN106411820B (zh) * | 2015-07-29 | 2019-05-21 | 中国科学院沈阳自动化研究所 | 一种基于sdn架构的工业通信流传输安全控制方法 |
KR20170096893A (ko) * | 2016-02-17 | 2017-08-25 | 엘에스산전 주식회사 | 통신 패킷 분석 장치 |
US10764781B2 (en) * | 2016-05-03 | 2020-09-01 | Qualcomm Incorporated | Systems and methods for reordering data received from a plurality of radio access technologies (RATs) |
US10498945B2 (en) * | 2016-10-31 | 2019-12-03 | Mitsubishi Electric Corporation | Imaging-device coordination apparatus, imaging-device coordination program, coordination support system, and control system |
-
2018
- 2018-03-12 JP JP2018043851A patent/JP6984499B2/ja active Active
-
2019
- 2019-01-28 EP EP19767391.6A patent/EP3767409A4/en active Pending
- 2019-01-28 CN CN201980004105.5A patent/CN111065976B/zh active Active
- 2019-01-28 WO PCT/JP2019/002736 patent/WO2019176337A1/ja unknown
- 2019-01-28 US US16/643,549 patent/US11215974B2/en active Active
Patent Citations (17)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5166928A (en) * | 1990-04-27 | 1992-11-24 | Matsushita Electric Industrial Co., Ltd. | Communication system comprising a communication line monitor for monitoring a communication line |
JPH08331146A (ja) * | 1995-06-02 | 1996-12-13 | Hitachi Electron Service Co Ltd | Lanアナライザ |
JPH11134007A (ja) * | 1997-10-27 | 1999-05-21 | Honda Motor Co Ltd | プログラマブルコントローラを用いた設備の監視システム |
JP2000047707A (ja) * | 1998-07-27 | 2000-02-18 | Omron Corp | 情報管理装置およびその制御方法 |
DE19857436A1 (de) * | 1998-12-12 | 2000-06-21 | Kuka Roboter Gmbh | Verfahren zum Behandeln des Spannungsabfalls in der Steuerung eines Roboters und zum Wiederanfahren eines Roboters nach Spannungsabfall |
JP2001117607A (ja) * | 1999-10-18 | 2001-04-27 | Toshiba Corp | コントローラシステム、およびそれを適用したプラント |
CN101069167A (zh) * | 2004-10-01 | 2007-11-07 | 松下电器产业株式会社 | 存储卡控制器、存储卡驱动设备、以及计算机程序 |
CN1899774A (zh) * | 2005-07-20 | 2007-01-24 | 发那科株式会社 | 机器人***以及机器人控制装置 |
CN101206612A (zh) * | 2006-12-22 | 2008-06-25 | 富士通株式会社 | 信息处理装置以及历史管理方法 |
CN102132532A (zh) * | 2008-08-22 | 2011-07-20 | 艾利森电话股份有限公司 | 用于避免不需要的数据分组的方法和装置 |
JP2011035664A (ja) * | 2009-07-31 | 2011-02-17 | Omron Corp | コントローラ |
CN101989085A (zh) * | 2009-07-31 | 2011-03-23 | 欧姆龙株式会社 | 控制器 |
JP2012181784A (ja) * | 2011-03-03 | 2012-09-20 | Hitachi High-Tech Instruments Co Ltd | 分散型制御システム |
JP2013242629A (ja) * | 2012-05-18 | 2013-12-05 | Omron Corp | 制御装置、制御方法および命令セット |
CN103995500A (zh) * | 2013-02-15 | 2014-08-20 | 欧姆龙株式会社 | 控制器、信息处理装置及程序 |
CN107132808A (zh) * | 2016-02-26 | 2017-09-05 | 欧姆龙株式会社 | 可编程控制器及其控制方法与控制程序 |
CN107436594A (zh) * | 2016-05-17 | 2017-12-05 | 罗克韦尔自动化技术公司 | 使用基于控制器的元属性的自动化历史记录器配置方法 |
Also Published As
Publication number | Publication date |
---|---|
JP2019159634A (ja) | 2019-09-19 |
EP3767409A1 (en) | 2021-01-20 |
JP6984499B2 (ja) | 2021-12-22 |
US11215974B2 (en) | 2022-01-04 |
US20200201297A1 (en) | 2020-06-25 |
CN111065976A (zh) | 2020-04-24 |
EP3767409A4 (en) | 2021-12-01 |
WO2019176337A1 (ja) | 2019-09-19 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US6640140B1 (en) | PLC executive with integrated web server | |
CN110050237B (zh) | 数据收集装置、数据收集方法及记录介质 | |
EP1586966B1 (en) | Control system configuration device | |
CN111095195B (zh) | 控制器、控制方法以及存储介质 | |
EP1705540A2 (en) | Network opening method in manufacturing system | |
WO2019176486A1 (ja) | 制御システム、コントローラ、および制御方法 | |
CN111065976B (zh) | 工厂自动化***、控制器和控制方法 | |
CN111052009B (zh) | 控制***、控制器和控制方法 | |
WO2019167512A1 (ja) | 表示装置、画面生成方法、および画面生成プログラム | |
US11196812B2 (en) | Method for establishing a network communication in an automation system | |
CN112639636B (zh) | 开发支援装置、开发支援方法以及存储介质 | |
CN111108453B (zh) | 控制***、控制方法和控制程序 | |
JP7412119B2 (ja) | データ活用システム | |
WO2023228357A1 (ja) | プログラマブルロジックコントローラ、制御システム、データ収集方法及びプログラム | |
JP7044086B2 (ja) | 制御システム、制御方法、および制御プログラム | |
US20180095435A1 (en) | Systems and methods for rapid industrial network troubleshooting for automation systems | |
KR20210156896A (ko) | 스마트팩토리를 위한 근로자 주도 서비스 시스템 | |
CN112639637A (zh) | 控制***、控制方法以及控制程序 |
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 |