CN103180841B - 可编程控制器 - Google Patents
可编程控制器 Download PDFInfo
- Publication number
- CN103180841B CN103180841B CN201180051666.4A CN201180051666A CN103180841B CN 103180841 B CN103180841 B CN 103180841B CN 201180051666 A CN201180051666 A CN 201180051666A CN 103180841 B CN103180841 B CN 103180841B
- Authority
- CN
- China
- Prior art keywords
- relative importance
- connection
- importance value
- request
- communication
- 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.)
- Expired - Fee Related
Links
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L43/00—Arrangements for monitoring or testing data switching networks
- H04L43/10—Active monitoring, e.g. heartbeat, ping or trace-route
-
- 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
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F15/00—Digital computers in general; Data processing equipment in general
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Automation & Control Theory (AREA)
- Theoretical Computer Science (AREA)
- General Health & Medical Sciences (AREA)
- Cardiology (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Health & Medical Sciences (AREA)
- Computer Hardware Design (AREA)
- General Engineering & Computer Science (AREA)
- Programmable Controllers (AREA)
Abstract
为了能够优先对需要高速响应的应用做出响应,具有:连接部(21),其经由各应用的连接从上级装置接收请求及向上级装置发送响应;通信缓冲器(25),其对应于各连接而暂时存储连接部(21)接收到的请求;系统主要部(请求处理部)(23),其从输入输出存储区域读取由上级装置请求的设备值;优先度存储区域(26),其存储各连接的优先度的设定;以及通信调度部(22),其从通信缓冲器(25)依次获取请求并传送至系统主要部(23),将系统主要部(23)读取的设备值作为响应而传送至连接部(21),对于优先度存储区域(26)中设定的优先度越高的连接,通信调度部(22)以越高的频度获取请求。
Description
技术领域
本发明涉及一种用于对工业用装置进行控制的可编程控制器(PLC)。
背景技术
在PLC中,具有能够经由网络而与个人计算机或可编程显示器等上级装置连接的PLC。作为网络的通信方式,例如,可使用以太网(注册商标)。所连接的上级装置使用多种应用(application)对PLC进行访问。
在这里,根据应用的种类不同,所需的响应速度不同。例如,构成编程显示器的应用从对PLC的设备值实时进行监视的性质考虑,需要高速响应。另外,每隔1天等较长跨度的周期对生产数据等进行收集的生产管理软件,不需要如进行实时监视的应用那么高速的响应。如上所述,与PLC连接的应用,有的需要高速响应,有的不需要。
然而,对于要求进行高速高精度控制的PLC,与上级装置之间的通信所分配的CPU时间是有限的。因此,需要在PLC侧搭载能够优先对于要求高速响应的应用做出响应的机制。
作为与上述期望相关的技术,例如在专利文献1中公开了一种能够针对通信装置的物理端口设定传送优先度的技术。
专利文献1:日本特开2010-109568号公报
发明内容
然而,根据上述现有技术,由于针对物理端口设定优先度,因此,例如在1台计算机上运行的多个应用进行通信的情况下,存在该多个应用全部使用同一优先度的问题。
本发明就是鉴于上述情况而提出的,其目的在于得到一种能够优先对于需要高速响应的应用做出响应的可编程控制器。
为了解决上述课题并实现目的,本发明是一种可编程控制器,具有对设备值进行存储的输入输出存储区域,该可编程控制器在从所连接的上级装置接收到设备值的请求时,利用所请求的设备值做出响应,该可编程控制器的特征在于,具有:连接部,其针对由所述上级装置执行的各应用建立连接,经由所述建立的各应用的连接进行从所述上级装置接收请求及将响应发送至所述上级装置的动作;通信缓冲器,其针对各连接暂时存储所述连接部接收到的请求;请求处理部,其从所述输入输出存储区域读取由所述上级装置请求的设备值;优先度存储区域,其存储各连接的优先度的设定;以及通信调度部,其从所述通信缓冲器依次获取请求,并将所述获取的请求传送至所述请求处理部,将所述请求处理部读取的与所述传送的请求相对应的设备值作为响应,传送至所述连接部,对于所述优先度存储区域中设定的优先度越高的连接,所述通信调度部以越高的频度从所述通信缓冲器获取请求。
发明的效果
本发明所涉及的可编程控制器由于以高频度执行与设定为高优先度的连接相关的通信处理,因此,具有能够优先对需要高速响应的应用做出响应的效果。
另外,本发明所涉及的可编程控制器具有下述效果,即,在存在要求高速响应的应用且存在允许低速响应的应用的情况下,即使服务(Service)处理的执行时间减少,如果将与要求高速响应的应用间的连接设定为高优先度,也能够对要求高速响应的应用高速做出响应。
附图说明
图1是表示实施方式1的PLC的使用情况的图。
图2是对对比例所涉及的PLC中的与上级装置之间的通信处理的特征进行说明的流程图。
图3是说明实施方式1的PLC的通信处理的特征的流程图。
图4是说明实施方式1的PLC的硬件结构例的图。
图5是说明实施方式1的PLC的功能结构的图。
图6是表示优先度信息的数据构造的一个例子的图。
图7是表示优先度信息的生成画面的一个例子的图。
图8是说明实施方式1的PLC的动作的流程图。
图9是说明实施方式2的PLC的功能结构的图。
图10是说明实施方式2的PLC的动作的流程图。
图11是说明实施方式3的PLC的功能结构的图。
图12是说明实施方式3的PLC的动作的流程图。
图13是说明实施方式3中的通信处理的时间线的图。
具体实施方式
下面,基于附图,对本发明所涉及的PLC的实施方式详细地进行说明。此外,本发明并不限定于本实施方式。
实施方式1
图1是表示本发明所涉及的实施方式1的PLC的使用情况的图。如图所示,PLC1经由网络集线器2而与多台个人计算机(在此为2台个人计算机3a、3b)经由网络连接。网络的通信方式例如采用以太网(注册商标)。并且,在个人计算机3a上执行应用a和应用b,在个人计算机3b上执行应用c。应用a、b、c向PLC1发出请求,PLC1将响应返回至请求发出源。所谓请求,是指设备值的读取请求,所谓响应,是指从自身具有的输入输出存储区域读取出的受到读取请求的设备值。即,个人计算机3a、3b(应用a、b、c)作为PLC1的上级装置起作用。此外,作为PLC1的上级装置起作用的装置,除了个人计算机以外,还有可编程显示器等。
图2是对与实施方式1进行比较的PLC中的与上级装置之间的通信处理的特征进行说明的流程图。所谓通信处理,更详细地说,是指对存储在PLC的通信缓冲器中的、来自上级装置的请求进行读取,并返回响应的动作。此外,将该流程图所示的例子称为对比例。
根据对比例,在PLC中,由梯形执行处理、结束处理及服务处理构成的1次扫描(Scan)所涉及的处理,如步骤S1至S3、步骤S4至S6、步骤S7至S9所示循环地执行。在步骤S7至S9的扫描之后,执行步骤S1至S3的扫描。在梯形执行处理(步骤S1、S4、S7)中执行用户程序,在结束处理(步骤S2、S5、S8)中,执行将用户程序的运算结果反映在输入输出存储区域中的处理。在服务处理(步骤S3、S6、S9)中,执行与上级装置的通信处理。
分配给服务处理的CPU时间被限定为一定时间。因此,在此,在与上级装置的应用之间建立16个连接(connection)的情况下,在第1次扫描的服务处理(步骤S3)中,执行16个连接中的5个连接(连接No.1至5)所涉及的通信处理,在第2次扫描的服务处理(步骤S6)中,执行接下来的5个连接(连接No.6至10)所涉及的通信处理,在第3次的服务处理(步骤S9)中,执行最后6个连接(连接No.11至16)所涉及的通信处理。如上所述,根据对比例,通过多次扫描而完成一遍全部连接的通信处理。另外,对于各连接,以相同的频度执行通信处理。
如前所述,与PLC1连接的各应用所需的通信速度不同。然而,在图2的对比例中,由于对于任意一个应用均以每3个扫描1次的频度进行通信处理,因此,对全部应用都以相同的响应速度进行通信。因此,在本发明的实施方式1中,对应于针对各应用所设定的优先度,而使进行通信处理的频度变化,其结果,能够使响应速度变化。
图3是说明本发明的实施方式1的通信处理的特征的流程图。如图所示,根据本发明的实施方式1,与对比例同样地,在各次扫描中执行梯形执行处理、结束处理及服务处理。并且,针对各连接设定3档的优先度。在此,对通过连接No.1及16连接的应用设定优先度为“高”,对通过连接No.2及3连接的应用设定优先度为“中”,对通过连接No.6连接的应用设定优先度为“低”。并且,优先度“高”的连接所涉及的通信处理,由3次扫描中的2次扫描中的服务处理(步骤S13、16)执行,优先度“中”的连接所涉及的通信处理由3次扫描中的1次扫描中的服务处理(步骤S19)执行。并且,优先度“低”的连接所涉及的通信处理,每隔由用户预先设定的时间间隔在服务处理中得到执行(在此,由步骤S19的服务处理执行)。如上所述,在实施方式1中,与在连接装置上运行的应用之间的通信处理,分别以基于预先设定的优先度的频度执行,对于应用而言,优先度设定得越高,越能够高速地返回响应。
在图1的例子中,在PLC1中,作为相对于应用a、b、c的通信优先度,分别设定为高、低、中。PLC1与优先度高的应用a之间以最高频度进行通信处理,与优先度中的应用c之间以低于应用a的频度进行通信处理。另外,PLC1与优先度低的应用b之间,以比应用c的通信处理的间隔长的、由用户预先设定的时间间隔(间隔时间)执行通信处理。
图4是说明实施方式1的PLC1的硬件结构例的图。如图所示,PLC1具有CPU(CentralProcessingUnit)11、ROM(ReadOnlyMemory)12、RAM(RandomAccessMemory)13及通信接口(I/F)14,具有与通常的计算机相同的结构。CPU11、ROM12、RAM13及通信I/F14分别经由总线连接。
ROM12存储有PLC1的系统程序15及由用户生成的用户程序16。系统程序15作为PLC1的资源管理的一环,执行上述服务处理中的通信处理的优先度管理。用户程序16由CPU11在梯形执行处理中执行。
RAM13保留有程序展开区域、工作区域、输入输出存储区域等。
CPU11执行系统程序15及用户程序16。具体来说,将系统程序15及用户程序16从ROM12读取,并在RAM13中保留的程序展开区域中展开。CPU11通过执行在RAM13中展开的系统程序15,从而实现后述的功能,在服务处理中执行基于优先度的通信处理。另外,在梯形执行处理中,CPU11执行在RAM13中展开的用户程序16。CPU11通过执行结束处理,从而执行存储在输入输出存储区域中的设备值的输入输出。
通信I/F14是PLC1用于与网络连接的连接接口,是网络控制器单元或物理连接器的统称。
图5是说明通过执行系统程序15而实现的本发明的实施方式1的PLC1的功能结构的图。如图所示,PLC1具有:连接部21、通信调度部22、系统主要部(请求处理部)23、计时部24、优先度存储区域26及设定时间存储区域27。连接部21、通信调度部22、系统主要部23、计时部24、优先度存储区域26及设定时间存储区域27形成在RAM13内。另外,连接部21具有通信缓冲器25。此外,也可以使得通信I/F14具有存储器或寄存器等存储装置,连接部21将该存储装置作为通信缓冲器25使用。
系统主要部23执行包含PLC1的资源管理在内的基本控制。在此,特别地,系统主要部23从RAM13内的输入输出存储区域读取通过由连接部21接收到的请求而请求的设备值。
通信缓冲器25是用于与上级装置之间的通信的缓冲存储器。来自上级装置的请求暂时存储在该通信缓冲器25中(进行缓冲)。
连接部21使所连接的上级装置的互联网协议(IP)地址及端口号与本PLC1的端口号相关联而建立连接,并且,针对各连接,执行来自上级装置的请求向通信缓冲器25中的缓冲及系统主要部23生成的响应向上级装置的发送。用于建立连接的通信协议能够采用BSD套接字等通常的通信协议,也能够生成并采用专用的通信协议。另外,也能够采用未来开发的任意通信协议。
优先度存储区域26设定有定义了各连接的优先度的信息(优先度信息)。优先度信息由用户使用例如编程装置等进行设定。图6是表示存储在优先度存储区域26中的优先度信息的数据构造的一个例子的图。如图所示,优先度信息28具有按照连接使连接的识别编号和优先度相关联的数据构造。
图7是表示编程装置中的优先度信息28的生成画面的一个例子的图。如图所示,在生成画面例中,显示有具有如下字段的表格,即,记入协议、本站点(本PLC1)的端口号、通信对象(所连接的上级装置)的IP地址、通信对象的端口号(在上级装置中执行的应用所使用的端口号)及优先度的字段。用户通过在本表中输入所期望的值,从而能够设定最多16个连接和各连接的优先度。在PLC1中,基于输入至该生成画面中的信息而登记优先度信息28,并由连接部21建立连接。
设定时间存储区域27用于存储执行优先度“低”的连接所涉及的通信处理的间隔时间的设定。该间隔时间与优先度等同样地,是通过编程装置等设定的。
计时部24对经过时间进行计数。
在服务处理中,通信调度部22参照优先度存储区域26存储的优先度信息28,或者参照计时部24的计数值而对是否经过了设定时间存储区域27中设定的间隔时间进行确认,选择执行通信处理的连接。并且,从通信缓冲器25获取所述选择的连接所涉及的请求,将获取的请求传送至系统主要部23。另外,通信调度部22对应于从通信缓冲器25传送至系统主要部23的请求,将系统主要部23读取的设备值作为响应而传送至连接部21。
图8是说明本发明的实施方式1的PLC1的动作的流程图。如图所示,如果PLC1开始用户程序16所涉及的动作(RUN),则首先,通信调度部22分别参照优先度信息28而获取全部连接的优先度,参照设定时间存储区域27而获取所设定的间隔时间(步骤S21)。此外,在PLC1的RUN开始后,连接部21在与上级装置之间建立连接,但在此省略该动作的说明。另外,在此,在设定时间存储区域27中作为间隔时间设定为10sec。
从步骤S22至步骤S35的循环处理,是在服务处理中划分为大于或等于1次扫描而执行的。这是因为,在1次扫描中分配给通信处理的CPU时间被限定为用户的期望时间。在步骤S22中,通信调度部22从通信缓冲器25获取1个优先度“高”的连接所涉及的请求(步骤S22),并发送至系统主要部23(步骤S23)。通信调度部22在接收到从系统主要部23发送的与请求相对应的响应后,将接收到的响应传送至连接部21,连接部21将传送来的响应发送至上级装置(步骤S24)。
并且,通信调度部22判定是否执行了优先度“高”的连接所涉及的全部通信处理(步骤S25),在存在未执行的通信处理的情况下(步骤S25为“否”),转入步骤S22。
在优先度“高”的连接所涉及的通信处理已全部执行的情况下(步骤S25为“是”),通信调度部22判定优先度“高”的连接所涉及的全部通信处理是否各执行了2次(步骤S26),在没有全部各执行2次的情况下(步骤S26为“否”),转入步骤S22。
在优先度“高”的连接所涉及的全部通信处理各执行了2次的情况下(步骤S26为“是”),通信调度部22获取优先度“中”的连接所涉及的1个请求(步骤S27)。并且,通信调度部22将获取的请求发送至系统主要部23(步骤S28)。通信调度部22在接收到从系统主要部23发送的与请求相对应的响应后,将接收到的响应传送至连接部21,连接部21将传送来的响应发送至上级装置(步骤S29)。
并且,通信调度部22判定是否执行了优先度“中”的连接所涉及的全部通信处理(步骤S30),在没有完成执行的情况下(步骤S30为“否”),转入步骤S27。
在优先度“中”的连接所涉及的通信处理已全部执行的情况下(步骤S30为“是”),通信调度部22参照计时部24的计数值,判断在最后执行优先度“低”的连接所涉及的通信处理之后,是否经过了10秒(步骤S31)。在没有经过10秒的情况下(步骤S31为“否”),转入步骤S22。
在从最后执行优先度“低”的连接所涉及的通信处理后经过了10秒的情况下(步骤S31为“是”),通信调度部22获取优先度“低”的连接所涉及的1个请求(步骤S32)。并且,通信调度部22将获取的请求发送至系统主要部23(步骤S33)。通信调度部22在接收到从系统主要部23发送的与请求相对应的响应后,将接收到的响应传送至连接部21,连接部21将传送来的响应发送至上级装置(步骤S34)。
并且,通信调度部22判定是否执行了优先度“低”的连接所涉及的全部通信处理(步骤S35),在没有完成执行的情况下(步骤S35为“否”),转入步骤S32。在执行了优先度“低”的连接所涉及的全部通信处理的情况下(步骤S35为“是”),转入步骤S22。
此外,在以上的说明中,对于能够将优先度设定为“高”、“中”、“低”3档的情况进行了说明,但也能够设定除了3档以外的多档优先度。
另外,优先度设定为“低”的连接所涉及的通信处理的频度,是通过间隔时间的设定而规定的,但对于“低”以外的其他优先度所涉及的连接,也能够同样地通过间隔时间的设定而规定频度。
另外,也可以是针对全部优先度所涉及的连接,并非通过间隔时间的设定,而是与上述说明的优先度为“高”及“中”的连接同样地,通过通信处理的次数而规定频度。即,例如,优先度为“高”的连接所涉及的通信处理各执行3次,优先度为“中”的连接所涉及的通信处理各执行2次,优先度为“低”的连接所涉及的通信处理各执行1次。
如上所述,根据本发明的实施方式1,由于其构成为,具有:连接部21,其经由各应用的连接从上级装置接收请求及向上级装置发送响应;通信缓冲器25,其对应于各连接而暂时存储连接部21接收到的请求;系统主要部(请求处理部)23,其从输入输出存储区域读取由上级装置请求的设备值;优先度存储区域26,其存储各连接的优先度的设定;以及通信调度部22,其从通信缓冲器25依次获取请求并传送至请求处理部23,将系统主要部23读取出的设备值作为响应而传送至连接部21,对于优先度存储区域26中设定的优先度越高的连接,通信调度部22以越高的频度从通信缓冲器25获取请求,因此,所设定的优先度越高,连接所涉及的通信处理以越高的频度执行,因此,能够优先对需要高速响应的应用做出响应。
另外,由于构成为,还具有:计时部24,其对经过时间进行计数;以及设定时间存储区域27,其存储间隔时间的设定,通信调度部22参照计时部24的计数值,判定是否经过了设定时间存储区域27中设定的间隔时间,在经过了间隔时间时,从通信缓冲器25获取优先度存储区域26中设定为特定优先度的连接所涉及的请求,因此,用户能够对特定的应用以期望的时间间隔执行通信处理。
实施方式2
在实施方式2中,PLC将与各优先度的连接所涉及的通信请求相对的每单位时间的响应次数作为设备值而记录在输入输出存储区域中,以能够定量掌握各应用的连接所涉及的通信处理状况。用户通过使用可编程显示器等参照该设备值,从而能够对于所关注的应用确认进行的是否是期望优先度下的通信处理。
图9是说明实施方式2的PLC的功能结构的图。此外,对与实施方式1相同的结构要素标注相同的标号,省略重复说明。
如图9所示,实施方式2的PLC4具有连接部41、通信调度部42、系统主要部(请求处理部)23、计时部24、优先度存储区域26、设定时间存储区域27、输入输出存储区域43。连接部41具有通信缓冲器25及响应次数存储区域45。
响应次数存储区域45由存储器或寄存器等存储装置构成,用于存储各连接的响应次数。此外,响应次数存储区域45所配置的位置与通信缓冲器25同样地,并不限定于特定的位置。
输入输出存储区域43是在RAM13内保留的,分配有响应次数设备44,该响应次数设备44用于存储与响应次数相关的状态信息。响应次数设备44中与各连接对应地存储状态信息。所谓状态信息,在此设为各连接所涉及的每单位时间的响应次数。响应次数设备44由系统主要部23更新。此外,在输入输出存储区域43中除了响应次数设备44以外,还分配有与用户程序16相关的设备(通过前述的结束处理更新的设备),但在此省略图示。
连接部41除了与实施方式1相同的动作以外,还执行响应次数存储区域45的存储值的管理。具体来说,连接部41在每次将响应发送至上级装置时,使响应次数存储区域45中记录的响应对象的连接所涉及的响应次数递增。
通信调度部42除了与实施方式1相同的动作以外,还作为状态信息计算部起作用,即,基于响应次数存储区域45的存储值对状态信息(此处是每单位时间的响应次数)进行计算,并将该计算出的状态信息存储在响应次数设备44中。在此,由于要在响应次数设备44中存储各连接的状态信息,因此,通信调度部42针对各连接而计算状态信息。
图10是说明实施方式2的PLC4的动作的流程图。此外,在此,优先度存储区域26中存储的优先度信息及设定时间存储区域27中存储的间隔时间的设定值,设为与实施方式1相同。即,优先度“高”的连接所涉及的通信处理由3次扫描中的2次扫描的服务处理执行,优先度“中”的连接所涉及的通信处理由3次扫描中的1次扫描的服务处理执行。并且,优先度“低”的连接所涉及的通信处理每隔10sec执行一次。
对于通信调度部42,如果PLC4开始用户程序16所涉及的动作(RUN),则首先,通信调度部42分别参照优先度信息28获取全部连接的优先度,参照设定时间存储区域27获取所设定的时间间隔(步骤S41)。并且,指示连接部41,使其执行响应次数存储区域45的初始化(步骤S42),其中,响应次数存储区域45用于存储与各连接所涉及的通信请求相对应的响应次数。
接下来,通信调度部42从通信缓冲器25获取优先度“高”的连接所涉及的一个请求(步骤S43),并将获取的请求发送至系统主要部23(步骤S44)。然后,通信调度部42将从系统主要部23接收到的请求的响应经由连接部41发送至上级装置(步骤S45)。此时,连接部41将与响应对象的连接所涉及的通信请求相对应的响应次数存储区域45的存储值加1(步骤S46)。
并且,通信调度部42判定是否执行了优先度“高”的连接所涉及的全部通信处理(步骤S47),在存在未执行的通信处理的情况下(步骤S47为“否”),转入步骤S43。在优先度“高”的连接所涉及的通信处理已全部执行的情况下(步骤S47为“是”),通信调度部42判定优先度“高”的连接所涉及的全部通信处理是否各实施了2次(步骤S48),在没有全部执行2次的情况下(步骤S48为“否”),转入步骤S43。
在优先度“高”的连接所涉及的全部通信处理各执行了2次的情况下(步骤S48为“是”),通信调度部42获取优先度“中”的连接所涉及的1个请求(步骤S49)。并且,通信调度部42将获取的请求发送至系统主要部23(步骤S50)。通信调度部42在从系统主要部23接收到与所述发送的请求相对应的响应后,将接收到的响应传送至连接部41,连接部41将传送来的响应发送至上级装置(步骤S51)。此时,连接部41将与响应对象的连接所涉及的通信请求相对应的响应次数存储区域45的存储值加1(步骤S52)。
并且,通信调度部42判定是否执行了优先度“中”的连接所涉及的全部通信处理(步骤S53),在没有完成执行的情况下(步骤S53为“否”),转入步骤S49。
在优先度“中”的连接所涉及的通信处理已全部执行的情况下(步骤S53为“是”),通信调度部42参照计时部24的计数值,判定在最后执行优先度“低”的连接所涉及的通信处理后,是否经过了10秒(步骤S54)。在优先度“低”的连接所涉及的最后的通信处理后没有经过10秒的情况下(步骤S54为“否”),转入步骤S43。
在最后执行优先度“低”的连接所涉及的通信处理后经过了10秒的情况下(步骤S54为“是”),通信调度部42获取优先度“低”的连接所涉及的1个请求(步骤S55)。并且,通信调度部42将获取的请求发送至系统主要部23(步骤S56)。通信调度部42在从系统主要部23接收到与所述发送的请求相对应的响应后,将接收到的响应传送至连接部41,连接部41将传送来的响应发送至上级装置(步骤S57)。此时,连接部41将与响应对象的连接所涉及的通信请求相对应的响应次数存储区域45的存储值加1(步骤S58)。
并且,通信调度部42判定是否执行了优先度“低”的连接所涉及的全部通信处理(步骤S59),在没有完成执行的情况下(步骤S59为“否”),转入步骤S55。
在执行了优先度“低”的连接所涉及的全部通信处理的情况下(步骤S59为“是”),通信调度部42参照计时部24的计数值,计算执行步骤S42的处理后的经过时间,即,最后使针对各连接而记录在响应次数存储区域45中的响应次数初始化后的经过时间(步骤S60)。并且,通信调度部42从连接部41获取与1个连接所涉及的通信请求相对应的响应次数存储区域45的存储值,使获取的与连接所涉及的通信请求相对应的响应次数存储区域45的存储值,除以通过步骤S60的处理而计算出的经过时间,从而计算与该连接所涉及的通信处理相关的每单位时间的响应次数(步骤S61)。并且,通信调度部42将该计算出的每单位时间的响应次数发送至系统主要部23,系统主要部23将接收到的每单位时间的响应次数存储在响应次数设备44中(步骤S62)。
然后,通信调度部42判定是否计算出全部连接所涉及的每单位时间的响应次数(步骤S63),在存在没有对每单位时间的响应次数进行计算的连接的情况下(步骤S63为“否”),转入步骤S61。在完成了全部连接所涉及的每单位时间的响应次数的计算的情况下(步骤S63为“是”),转入步骤S42。
如上所述,根据本发明的实施方式2,由于构成为,具有对应于各连接而存储响应次数的响应次数存储区域45,通信调度部42基于响应次数存储区域45的存储值,针对各连接计算与响应次数相关的状态信息,并将计算出的各连接的状态信息存储在输入输出存储区域43内的规定设备(响应次数设备44)中,因此,用户通过参照该设备的值,从而能够定量地掌握各应用的连接所涉及的通信处理的状况。
此外,在以上的说明中,对于响应次数存储区域45以连接为单位存储与通信请求相对应的响应次数、通信调度部42以连接为单位计算每单位时间的响应次数的情况进行了说明,但也可以不以连接为单位,而以尺度比连接单位大的单位即优先度单位,执行响应次数记录及每单位时间的响应次数计算。即,也可以使得响应次数存储区域45至少对应于各优先度存储响应次数,响应次数设备44至少对应于各优先度存储状态信息,通信调度部42至少对应于各优先度计算状态信息。
另外,每单位时间的响应次数的计算定时(timing)并不仅限定于执行优先度“低”的连接所涉及的全部通信处理后的定时。例如,也可以在各连接的通信处理结束后的定时或关于各个优先度完成了全部连接所涉及的通信处理后的定时,计算每单位时间的响应次数。
另外,对于响应次数设备44中存储的状态信息为每单位时间的响应次数的情况进行了说明,但只要是能够确认与响应相关的状态的信息,可以采用任何值。例如,能够采用响应次数的累计值。
实施方式3
在实施方式1及实施方式2中,优先度“低”所涉及的通信处理,在设定时间存储区域27中作为间隔时间设定为10sec,优先度“低”所涉及的通信处理每隔10sec进行一次。在此,假定优先度“低”的应用c的超时值设定为9sec。在刚刚进行了优先度“低”的连接所涉及的通信处理而在通信缓冲器25中存储了优先度“低”的应用c的请求的情况下,与应用c的请求相对应的响应的传送,在应用c的请求被存储在通信缓冲器25中后大致10sec后执行。然而,在执行了该请求时,应用c已经超时,从而响应传送发生错误。为了避免由于超时错误而无法进行优先度“低”的通信处理的通信的情况,根据实施方式3,在优先度“低”的连接所涉及的通信处理中,在响应传送发生了错误的情况下,将设定时间存储区域27的设定时间变更为更小的值。
图11是说明本发明的实施方式3的PLC的功能结构的图。此外,对与实施方式1相同的结构要素标注相同的标号,省略重复说明。
如图11所示,实施方式3的PLC5具有:连接部21、通信调度部51、系统主要部(请求处理部)23、计时部24、优先度存储区域26及设定时间存储区域27。连接部21具有通信缓冲器25。
通信调度部51除了执行与实施方式1相同的动作以外,还作为设定时间重新设定部起作用,即,对于设定为每隔设定时间存储区域27中所设定的间隔时间执行通信处理的优先度(即优先度“低”)的连接,在发生了超时错误的情况下,将设定时间存储区域27中设定的间隔时间重新设定为更小的值。此外,通信调度部51对超时错误的发生进行检测的方法并没有特别限定。在此,作为一个例子,连接部21预先存储发生了超时错误(以下简称为错误)这一情况,通信调度部51通过询问该连接部21而确认是否发生了超时错误。
图12是说明本实施方式3的PLC5的动作的流程图。此外,在此,优先度存储区域26中存储的优先度信息及设定时间存储区域27中存储的间隔时间的设定值,设为与实施方式1相同。即,优先度“高”的连接所涉及的通信处理由3次扫描中的2次扫描的服务处理执行,优先度“中”的连接所涉及的通信处理由3次扫描中的1次扫描的服务处理执行。并且,优先度“低”的连接所涉及的通信处理每隔10sec执行一次。另外,作为一个例子,通信调度部51在因超时而发生了错误时,将间隔时间的设定值更新为缩短4秒的值。
如图所示,分别在步骤S71至步骤S84中执行与实施方式1中的步骤S21至步骤S34等同的处理。
在步骤S84的处理后,通信调度部51判定是否执行了优先度“低”的连接所涉及的全部通信处理(步骤S85),在没有完成执行的情况下(步骤S85为“否”),转入步骤S82。在执行了优先度“低”的连接所涉及的全部通信处理的情况下(步骤S85为“是”),通信调度部51对于优先度“低”的连接所涉及的通信请求,向连接部21询问是否存在响应传送发生了错误的通信请求(步骤S86)。在与优先度“低”的连接所涉及的通信请求相对应的响应的传送没有发生错误的情况下(步骤S86为“否”),转入步骤S72。对于优先度“低”的连接所涉及的通信请求,在存在响应传送发生了错误的通信请求的情况下(步骤S86为“是”),通信调度部51使设定时间存储区域27存储的间隔时间的值减少4秒(步骤S87),转入步骤S71。
图13是说明本实施方式3中的通信处理的时间线的图。本图示出对来自优先度设定为“低”的应用c的请求进行处理的情况。纵轴表示时间,横轴表示各优先度的连接所涉及的通信处理状况。空白四边形表示执行了各优先度的连接所涉及的全部处理这一情况。
首先,将来自应用c的请求存储在通信缓冲器25中(步骤S91)。在此期间,优先度“高”的连接所涉及的通信处理全部执行2次(步骤S92、S93)。并且,优先度“中”的连接所涉及的通信处理全部执行(步骤S94)。然后,从最后执行优先度“低”的连接所涉及的通信处理至经过10秒为止,执行优先度“高”及优先度“中”的连接所涉及的处理(步骤S95至S107)。
在此期间,在应用c发送请求后经过9秒,应用c超时(步骤S106)。
并且,在优先度“中”的连接所涉及的全部通信处理执行后,如果检测到从最后执行优先度“低”的连接所涉及的通信处理开始经过了10秒,则执行优先度“低”的连接所涉及的通信处理(步骤S108)。并且,向应用c传送与请求相对应的响应,但由于应用c已经超时,因此,响应被忽略,发生错误(步骤S109)。
通信调度部51如果检测到与应用c的连接所涉及的通信请求相对应的响应传送发生了错误,则使设定时间存储区域27存储的用于执行优先度“低“的连接所涉及的通信请求处理的间隔时间减少4秒。
在之后的处理中,用于执行优先度“低”的连接所涉及的通信请求处理的间隔时间变为6秒。具体来说,在优先度”低“的连接所涉及的通信处理(步骤S110)刚刚结束后,再次从应用c发送请求(步骤S111)。与此同时,优先度“高”的连接所涉及的通信处理开始,从优先度“低”的连接所涉及的前一个通信处理(此处是指步骤S110的处理)至经过设定时间存储区域27存储的间隔时间(6秒)为止,执行优先度“高”的连接所涉及的通信处理及优先度“中”的连接所涉及的通信处理(步骤S112至S120)。
在执行了优先度“中”的连接所涉及的全部通信处理后,如果检测到从步骤S110的处理开始经过了6秒,则执行优先度“低”的连接所涉及的通信处理(步骤S121)。然后,在应用c超时前,即,从在步骤S111的处理中发送请求开始经过9秒之前,接收请求响应(步骤S122)。
如上所述,在与优先度“低”的连接所涉及的通信请求相对应的响应的传送发生错误的情况下,通过由通信调度部51减少优先度“低”的连接所涉及的通信处理的间隔时间,从而能够避免由于超时而导致无法通信。
此外,在本实施方式3中,由于对间隔时间的值进行变更,因此,存在通信处理的频度变化而无法进行基于优先度的通信处理的情况。为了防止上述情况,也可以构成为,能够由用户设定是否执行使间隔时间的值缩短的处理。
另外,在以上的说明中,将在与优先度“低”的连接所涉及的通信请求相对应的响应的传送发生错误的情况下减少的间隔时间设为4秒,但减少幅度并不限定于4秒。也可以构成为,能够由用户任意设定间隔时间的减少幅度。
如上所述,根据本发明的实施方式3,由于其构成为,对于优先度“低”的连接,在发生了超时错误的情况下,由通信调度部51将执行优先度“低”的连接所涉及的通信处理的间隔时间重新设定为比当前设定的值小的值,因此,能够防止连续发生超时错误。即,对于优先度“低”的连接,能够避免由于超时错误导致无法通信。
工业实用性
如上所述,本发明所涉及的可编程控制器适合应用于对工业用装置进行控制的可编程控制器。
标号的说明
1、4、5PLC
2网络集线器
3a、3b个人计算机
11CPU
12ROM
13RAM
14通信I/F
15系统程序
16用户程序
21、41连接部
22、42、51通信调度部
23系统主要部
24计时部
25通信缓冲器
26优先度存储区域
27设定时间存储区域
28优先度信息
43输入输出存储区域
44响应次数设备
45响应次数存储区域
Claims (7)
1.一种可编程控制器,其具有存储设备值的输入输出存储区域,该可编程控制器在从所连接的上级装置接收到设备值的请求时,利用所请求的设备值做出响应,
该可编程控制器的特征在于,具有:
连接部,其针对由所述上级装置执行的各应用建立连接,经由所述建立的各应用的连接进行从所述上级装置接收请求及将响应发送至所述上级装置的动作;
通信缓冲器,其对应于各连接暂时存储所述连接部接收到的请求;
系统主要部即请求处理部,其从所述输入输出存储区域读取由所述上级装置请求的设备值;
优先度存储区域,其存储各连接的优先度的设定;以及
通信调度部,其从所述通信缓冲器依次获取请求,将所述获取的请求传送至所述请求处理部,并将所述请求处理部读取的与所述传送的请求相对应的设备值作为响应而传送至所述连接部,
对于所述优先度存储区域中设定的优先度越高的连接,所述通信调度部以越高的频度从所述通信缓冲器获取请求。
2.根据权利要求1所述的可编程控制器,其特征在于,
还具有:
计时部,其对经过时间进行计数;以及
设定时间存储区域,其存储间隔时间的设定,
所述通信调度部参照所述计时部的计数值,判定是否经过了所述设定时间存储区域中设定的间隔时间,在经过了所述间隔时间时,从所述通信缓冲器获取在所述优先度存储区域中设定了特定的优先度的连接所涉及的请求。
3.根据权利要求1所述的可编程控制器,其特征在于,
所述连接部在作为连接对象的上级装置的、由用户指定的端口,和由所述用户指定的本可编程控制器的端口之间,建立各应用的连接。
4.根据权利要求1所述的可编程控制器,其特征在于,
所述输入输出存储区域具有响应次数设备,该响应次数设备用于存储与针对所述上级装置的响应次数相关的至少各优先度的状态信息,
该可编程控制器还具有:
响应次数存储区域,其至少对应于各优先度而存储针对所述上级装置的响应次数;以及
状态信息计算部,其基于所述响应次数存储区域中存储的响应次数,计算出状态信息,并将所述计算出的状态信息存储在所述响应次数设备中。
5.根据权利要求4所述的可编程控制器,其特征在于,
所述状态信息是每单位时间的响应次数。
6.根据权利要求4所述的可编程控制器,其特征在于,
所述响应次数存储区域对应于各连接而存储针对所述上级装置的响应次数,
所述响应次数设备用于存储各连接的状态信息。
7.根据权利要求2所述的可编程控制器,其特征在于,
还具有设定时间重新设定部,在设定了所述特定的优先度的连接发生了超时错误的情况下,该设定时间重新设定部将所述设定时间存储区域存储的间隔时间的设定值重新设定为更小的值。
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
PCT/JP2010/069107 WO2012056537A1 (ja) | 2010-10-27 | 2010-10-27 | プログラマブルコントローラ |
JPPCT/JP2010/069107 | 2010-10-27 | ||
PCT/JP2011/073853 WO2012056930A1 (ja) | 2010-10-27 | 2011-10-17 | プログラマブルコントローラ |
Publications (2)
Publication Number | Publication Date |
---|---|
CN103180841A CN103180841A (zh) | 2013-06-26 |
CN103180841B true CN103180841B (zh) | 2015-12-02 |
Family
ID=45993292
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201180051666.4A Expired - Fee Related CN103180841B (zh) | 2010-10-27 | 2011-10-17 | 可编程控制器 |
Country Status (6)
Country | Link |
---|---|
US (1) | US20130145025A1 (zh) |
KR (1) | KR101467132B1 (zh) |
CN (1) | CN103180841B (zh) |
DE (1) | DE112011103595T5 (zh) |
TW (2) | TW201217923A (zh) |
WO (2) | WO2012056537A1 (zh) |
Families Citing this family (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
GB2507816A (en) * | 2012-11-13 | 2014-05-14 | Ibm | Calculating timeout for remote task execution from network delays and processing duration on local application/hardware replica |
TW201443594A (zh) * | 2013-05-13 | 2014-11-16 | Shi-Shan Wu | 智慧型可程序控制裝置 |
JP6338923B2 (ja) * | 2014-04-30 | 2018-06-06 | パナソニック デバイスSunx株式会社 | プログラマブルコントローラ及び制御プログラム |
US9218646B1 (en) * | 2014-06-03 | 2015-12-22 | Mitsubishi Electric Research Laboratories, Inc. | Distributed path planning for mobile sensors |
JP7035391B2 (ja) * | 2017-09-08 | 2022-03-15 | 株式会社安川電機 | 産業用通信システム、産業機器、及び産業用通信方法 |
JP6921342B1 (ja) * | 2020-03-30 | 2021-08-18 | 三菱電機株式会社 | 制御装置及びロギング方法 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2004054622A (ja) * | 2002-07-19 | 2004-02-19 | Hitachi Ltd | コントローラおよび情報通信サービス方法 |
WO2006129294A1 (en) * | 2005-06-03 | 2006-12-07 | Koninklijke Philips Electronics N.V. | Electronic device and method of communication resource allocation. |
CN101266474A (zh) * | 2007-05-29 | 2008-09-17 | 深圳市合信自动化技术有限公司 | 扩展模块及可编程控制器系统 |
Family Cites Families (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5633859A (en) * | 1994-09-16 | 1997-05-27 | The Ohio State University | Method and apparatus for congestion management in computer networks using explicit rate indication |
JPH08278935A (ja) * | 1995-04-05 | 1996-10-22 | Mitsubishi Electric Corp | プログラマブルコントローラ |
JPH11272310A (ja) * | 1998-03-23 | 1999-10-08 | Mitsubishi Electric Corp | プログラマブルコントローラのエミュレーション装置 |
JP3672517B2 (ja) * | 2001-10-05 | 2005-07-20 | 沖電気工業株式会社 | 通信装置 |
JP4446166B2 (ja) * | 2004-10-14 | 2010-04-07 | ソニー株式会社 | 送信装置および方法、記録媒体、プログラム、並びに制御装置 |
JP4529747B2 (ja) * | 2005-03-17 | 2010-08-25 | Kddi株式会社 | Ponシステムにおける論理リンク確立方法及び光終端装置 |
JP4901775B2 (ja) * | 2008-02-04 | 2012-03-21 | 三菱電機株式会社 | プログラマブルコントローラ |
JP5201674B2 (ja) | 2008-10-29 | 2013-06-05 | シャープ株式会社 | 伝送優先度設定装置、伝送優先度設定方法、および伝送優先度設定プログラム |
-
2010
- 2010-10-27 WO PCT/JP2010/069107 patent/WO2012056537A1/ja active Application Filing
- 2010-12-09 TW TW099142955A patent/TW201217923A/zh unknown
-
2011
- 2011-10-17 CN CN201180051666.4A patent/CN103180841B/zh not_active Expired - Fee Related
- 2011-10-17 US US13/817,191 patent/US20130145025A1/en not_active Abandoned
- 2011-10-17 DE DE112011103595T patent/DE112011103595T5/de active Pending
- 2011-10-17 KR KR1020137009769A patent/KR101467132B1/ko not_active IP Right Cessation
- 2011-10-17 WO PCT/JP2011/073853 patent/WO2012056930A1/ja active Application Filing
- 2011-10-24 TW TW100138445A patent/TWI461870B/zh not_active IP Right Cessation
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2004054622A (ja) * | 2002-07-19 | 2004-02-19 | Hitachi Ltd | コントローラおよび情報通信サービス方法 |
WO2006129294A1 (en) * | 2005-06-03 | 2006-12-07 | Koninklijke Philips Electronics N.V. | Electronic device and method of communication resource allocation. |
CN101266474A (zh) * | 2007-05-29 | 2008-09-17 | 深圳市合信自动化技术有限公司 | 扩展模块及可编程控制器系统 |
Also Published As
Publication number | Publication date |
---|---|
KR101467132B1 (ko) | 2014-11-28 |
DE112011103595T5 (de) | 2013-09-05 |
TW201229701A (en) | 2012-07-16 |
KR20130060331A (ko) | 2013-06-07 |
TW201217923A (en) | 2012-05-01 |
WO2012056930A1 (ja) | 2012-05-03 |
US20130145025A1 (en) | 2013-06-06 |
WO2012056537A1 (ja) | 2012-05-03 |
CN103180841A (zh) | 2013-06-26 |
TWI461870B (zh) | 2014-11-21 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN103180841B (zh) | 可编程控制器 | |
KR102042664B1 (ko) | 데이터 수집 장치, 데이터 수집 방법 및 기록 매체 | |
US8131827B2 (en) | PLC with web-accessible program development software | |
CN112602025A (zh) | 工业控制器的数字孪生的自动设置 | |
MX2011001728A (es) | Soporte tecnico remoto utilizando una aplicacion ejecutable configurable. | |
CN112130528B (zh) | 用于配置工业自动化系统的方法 | |
WO2012050734A1 (en) | Intelligent interface for a distributed control system | |
CN114070726A (zh) | 数据采集方法、系统、装置及存储介质 | |
CN104077230A (zh) | 在分布式系统上执行压力测试的方法以及装置 | |
US8301273B2 (en) | Method for providing functions in an industrial automation system, control program and industrial automation system | |
WO2015135559A1 (en) | Optimized configuration method for an automation system | |
JP6878697B2 (ja) | データ処理装置、データ処理方法およびプログラム | |
CN112134950B (zh) | 维护Linux集群的方法、装置、维护服务器及介质 | |
JP6838022B2 (ja) | 製造装置の制御装置及び監視システム | |
JP5414909B2 (ja) | プログラマブルコントローラ | |
KR102282850B1 (ko) | 로봇 프로세스 자동화를 이용한 입출력장치와 소프트 plc간의 통신 성능 검증 시스템 | |
US11622015B2 (en) | Method for configuring an OPC UA PubSub subscriber, automation system, computer program and computer-readable medium | |
US20230266734A1 (en) | Method for controlling an industrial plant | |
CN114128248B (zh) | 管理多个图像设备 | |
JP6175759B2 (ja) | コントローラ、制御システム、プログラム、および情報処理装置 | |
CN115599058A (zh) | 信号交互控制方法、装置、设备与存储介质 | |
CN115037811A (zh) | 设备数据交互方法、装置、设备及存储介质 | |
TW202201226A (zh) | 電子化標準作業程序的同步顯示系統及其方法 | |
CN117148916A (zh) | 波形生成方法、装置、计算机设备及存储介质 | |
KR20070082267A (ko) | 시스템의 소프트웨어 업데이트 방법 및 그 장치 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant | ||
CF01 | Termination of patent right due to non-payment of annual fee |
Granted publication date: 20151202 Termination date: 20171017 |
|
CF01 | Termination of patent right due to non-payment of annual fee |