CN114072738A - 控制器、控制系统以及控制方法 - Google Patents

控制器、控制系统以及控制方法 Download PDF

Info

Publication number
CN114072738A
CN114072738A CN202080046727.7A CN202080046727A CN114072738A CN 114072738 A CN114072738 A CN 114072738A CN 202080046727 A CN202080046727 A CN 202080046727A CN 114072738 A CN114072738 A CN 114072738A
Authority
CN
China
Prior art keywords
access
access request
controller
command
database 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.)
Pending
Application number
CN202080046727.7A
Other languages
English (en)
Inventor
乾智成
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Omron Corp
Original Assignee
Omron Corp
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Omron Corp filed Critical Omron Corp
Publication of CN114072738A publication Critical patent/CN114072738A/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B19/00Programme-control systems
    • G05B19/02Programme-control systems electric
    • G05B19/04Programme control other than numerical control, i.e. in sequence controllers or logic controllers
    • G05B19/05Programmable logic controllers, e.g. simulating logic interconnections of signals according to ladder diagrams or function charts
    • G05B19/052Linking several PLC's
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B19/00Programme-control systems
    • G05B19/02Programme-control systems electric
    • G05B19/04Programme control other than numerical control, i.e. in sequence controllers or logic controllers
    • G05B19/05Programmable logic controllers, e.g. simulating logic interconnections of signals according to ladder diagrams or function charts
    • G05B19/058Safety, monitoring
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B19/00Programme-control systems
    • G05B19/02Programme-control systems electric
    • G05B19/04Programme control other than numerical control, i.e. in sequence controllers or logic controllers
    • G05B19/05Programmable logic controllers, e.g. simulating logic interconnections of signals according to ladder diagrams or function charts
    • G05B19/056Programming the PLC
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/14Error detection or correction of the data by redundancy in operation
    • G06F11/1402Saving, restoring, recovering or retrying
    • G06F11/1415Saving, restoring, recovering or retrying at system level
    • G06F11/1443Transmit or communication errors
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/3003Monitoring arrangements specially adapted to the computing system or computing system component being monitored
    • G06F11/302Monitoring arrangements specially adapted to the computing system or computing system component being monitored where the computing system component is a software system
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/34Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment
    • G06F11/3466Performance evaluation by tracing or monitoring
    • G06F11/3476Data logging
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/20Pc systems
    • G05B2219/22Pc multi processor system
    • G05B2219/2241Real time database, each processor stores in local memory used variables

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Automation & Control Theory (AREA)
  • General Engineering & Computer Science (AREA)
  • Quality & Reliability (AREA)
  • Computing Systems (AREA)
  • Computer Hardware Design (AREA)
  • Mathematical Physics (AREA)
  • Programmable Controllers (AREA)

Abstract

PLC(100)具有:通信接口(6),其用于访问数据库装置(400);命令执行部(2),其执行包含用于访问数据库装置(400)的访问命令、且与控制对象的控制关联的用户程序(186);以及访问处理部(4),其响应于访问命令被命令执行部(2)执行,生成访问请求,并使通信接口(6)发送访问请求。访问处理部(4)从记录有对数据库装置(400)的访问失败时的访问请求的错误列表中,提取满足规定条件的访问请求,并使通信接口(6)重发提取出的访问请求。

Description

控制器、控制系统以及控制方法
技术领域
本发明涉及对控制对象进行控制的控制器、包含该控制器的控制系统以及由控制器执行的控制方法。
背景技术
在许多生产现场使用的机械、设备这样的控制对象由可编程控制器(Programmable Logic Controller;以下也称为“PLC”。)这样的控制器控制。随着近年来的信息处理技术的进步,这样的控制器的多功能化也在发展。
例如,日本特开2012-108642号公报(专利文献1)公开了将可编程控制器(PLC)等控制装置收集到的规定的数据保存于数据库的数据收集系统。该可编程控制器包含SQL发送部,该SQL发送部经由通信路径向数据库发送包含多个用于访问数据库的SQL语句的SQL处理组。
现有技术文献
专利文献
专利文献1:日本特开2012-108642号公报
发明内容
发明所要解决的课题
如上所述的控制器发出用于将数据写入数据库装置或删除数据库装置上的数据的访问请求。作为这样的访问请求,典型地,公知有在关系数据库管理系统中使用的SQL语句。
在PLC等控制器中,典型地,通过执行根据控制对象而设计的用户程序,来生成及发送这样的访问请求。在这样的使用用户程序发出访问请求的结构中,考虑到程序的再利用性等,大多设计成使用可变的变量(参数)来指定数据的写入或删除的对象范围。
在对数据库的访问(连接)中有可能产生错误。期望在从错误恢复时能够灵活地恢复。
本公开的目的在于提供能够从数据库连接中的错误灵活地恢复的控制器、包含该控制器的控制系统、由该控制器执行的控制方法。
用于解决课题的手段
本公开的一例的控制器对控制对象进行控制,其中,该控制器具有:通信接口,其用于访问数据库装置;命令执行部,其执行包含用于访问数据库装置的访问命令、且与控制对象的控制关联的用户程序;以及访问处理部,其响应于访问命令被命令执行部执行,生成访问请求,并使通信接口发送访问请求。访问处理部从记录有对数据库装置的访问失败时的访问请求的错误列表中,提取满足规定条件的访问请求,并使通信接口重发提取出的访问请求。
根据该结构,访问处理部能够从错误列表中仅提取符合重发条件的访问请求,并重发给数据库装置400。因此,能够提供可从数据库连接的错误中灵活地恢复的控制器。
访问请求典型地可以是在关系数据库管理系统中使用的SQL语句。
优选的是,命令执行部根据与规定条件的设定相关的用户输入,命令访问处理部提取满足规定条件的访问请求。
根据该结构,能够通过用户设定提取条件,选择满足该提取条件的访问请求。因此,能够提供可从数据库连接的错误中适当地恢复的控制器。
优选的是,命令执行部执行用于显示表示由访问处理部从错误列表中提取出的访问请求的信息的用户程序,根据与访问请求的选择相关的用户输入,命令访问处理部使通信接口重发由用户选择的访问请求。
根据该结构,用户能够确认应该从满足提取条件的多个访问请求中选择的访问请求。
优选的是,访问处理部在通信接口对访问请求的重发成功的情况下,从错误列表中删除相应的访问请求。
根据该结构,访问请求的重发一旦成功,就能够防止反复重发该访问请求。
优选的是,访问处理部在通信接口对访问请求的重发失败的情况下,生成与重发的失败相关的信息。
根据该结构,能够管理与访问请求的重发相关的结果。
本公开一例的控制系统包含:上述任意一项所记载的控制器;以及数据库装置,其受理来自控制器的访问请求。
根据该结构,能够提供可从数据库连接的错误中灵活地恢复的控制系统。
本公开的一例的控制方法是对控制对象进行控制的控制器的控制方法,其具有以下步骤:控制器执行用于访问数据库装置的访问命令;控制器生成访问请求;控制器向数据库装置发送访问请求;控制器将对数据库装置的访问失败时的访问请求保存到错误列表中;控制器从错误列表中提取满足规定条件的访问请求;以及控制器向数据库装置重发提取出的访问请求。
根据该结构,能够提供可从数据库连接的错误中灵活地恢复的控制方法。
发明的效果
根据本发明,能够防止由于用户程序的执行而生成以及发送不适当的访问请求。
附图说明
图1是用于说明本实施方式的PLC的功能性概要的图。
图2是表示包含本实施方式的PLC的控制系统1的系统结构的示意图。
图3是示出表示本实施方式的PLC的主要部分的硬件结构的示意图。
图4是表示本实施方式的PLC的软件结构的示意图。
图5是表示与本实施方式的PLC连接而使用的支持装置的硬件结构的示意图。
图6是用于说明由本实施方式的PLC提供的访问请求的安装例的示意图。
图7是表示本实施第1方式的SQL语句的重发的示意图。
图8是表示用户程序中包含的第1功能块的一例的图。
图9是例示输入到图8所示的功能块的信息的图。
图10是表示本实施第1方式的SQL语句的重发处理步骤的序列图。
图11是表示本实施第2方式的SQL语句的重发的示意图。
图12是表示用户程序中包含的第2功能块的一例的图。
图13是表示用户程序中包含的第3功能块的一例的图。
图14是表示用户程序186中包含的第4功能块的一例的图。
图15是表示用于受理来自用户的SQL语句选择的工具的画面例的图。
图16是表示本实施第2方式的SQL语句的重发处理步骤的序列图。
图17是表示本实施方式的用于防止SQL语句的误重发的处理的序列图。
具体实施方式
参照附图详细说明本发明的实施方式。另外,对图中的相同或相应的部分标注相同的标号并不重复其说明。
<A.概要>
首先,从功能方面说明本实施方式的控制器的概要。在以下的说明中,将对机械、设备等控制对象进行控制的可编程控制器(PLC)作为控制器的具体化例进行说明。但是,本实施方式的控制器不限于PLC,能够应用于各种控制器、信息处理装置。
图1是用于说明本实施方式的PLC 100的功能性概要的图。参照图1,PLC 100构成为能够与数据库装置400之间进行数据的收发。即,PLC 100和数据库装置400构成为能够经由Ethernet(注册商标)等网络112相互交换数据。
更具体而言,PLC 100包含命令执行部2、访问处理部4以及通信接口6。这些组件的一部分或全部可以通过后述的处理器执行程序来实现,也可以通过专用的硬件来实现。即,图1所示的组件是从功能性的观点示意性地表现的组件,对于各个组件的实现方法没有任何限定。
命令执行部2执行与机械、装置等控制对象的控制相关的用户程序186。基本上,命令执行部2周期性地或事件性地执行用户程序186。即,PLC 100构成为通过反复执行用户程序186来对控制对象进行控制。该用户程序186典型地由后述的支持装置300创建,并发送至PLC 100。由命令执行部2执行的用户程序186有时也包含用于访问数据库装置400的命令(访问命令),在该情况下,通过执行该访问命令,向访问处理部4发出请求访问数据库装置400的内部指令。
访问处理部4在从命令执行部2接收到请求访问数据库装置400的内部指令时,向通信接口6发出向数据库装置400发出访问请求所需的内部指令。即,访问处理部4响应于由命令执行部2执行用于访问用户程序186中包含的数据库装置400的访问命令,使通信接口6发送访问请求。即,系统程序188包含用于如下处理的命令:当伴随用户程序186的执行而执行访问命令时,按照指定访问范围的信息,生成针对数据库装置400的访问请求的处理;以及经由通信接口6执行访问请求的处理。
通信接口6按照来自访问处理部4的内部指令,生成与数据库装置400进行通信所需的指令(请求),并经由网络112进行发送。另外,通信接口6接收经由网络112从数据库装置400等发送的数据(执行结果)。
图1所示的PLC 100中的直到发送对数据库装置的访问请求为止的处理为:(1)命令执行部2对用户程序186的周期性/事件性执行;(2)响应于用户程序186中包含的访问命令的执行的、访问处理部4用于发出访问请求的内部指令发出;(3)响应于来自访问处理部4的内部指令发出的、通信接口6对访问请求的发送。
以下,对本实施方式的PLC 100及其所安装的功能进行更详细的说明。
<B.系统结构>
图2是表示包含本实施方式的PLC 100的控制系统1的系统结构的示意图。参照图2,控制系统1包含PLC 100、与PLC 100连接的支持装置300、以及受理来自PLC100的访问的数据库装置400。PLC 100周期性地或事件地执行用户程序。通过执行该用户程序中包含的访问命令,执行对数据库装置400的处理。
支持装置300是生成由PLC 100执行的用户程序的信息处理装置的典型例。并且,支持装置300经由连接线缆114与PLC 100连接,与PLC 100之间提供各种参数的设定、编程、监控、调试等功能。
PLC 100包含执行控制运算的CPU单元104和1个以上的IO(Input/Output:输入/输出)单元106。这些单元构成为能够经由PLC系统总线108相互交换数据。另外,通过电源单元102向这些单元供给适当电压的电源。
在控制系统1中,PLC 100经由(借助PLC系统总线108连接的)IO单元106和/或经由现场总线110与各种现场设备之间交换数据。这些现场设备包含用于对控制对象进行某些处理的致动器、用于从控制对象取得各种信息的传感器等。在图2中,作为这样的现场设备的一例,包含检测开关10、继电器20以及驱动电机32的伺服电机驱动器30。在PLC 100上还经由现场总线110连接有远程IO终端200。远程IO终端200基本上与IO单元106同样地进行与通常的输入输出处理相关的处理。更具体而言,远程IO终端200包含用于进行与利用现场总线110的数据传输相关的处理的通信耦合器202、以及1个以上的IO单元204。这些单元构成为能够经由远程IO终端总线208相互交换数据。
<C.PLC 100的结构>
接着,对本实施方式的PLC 100的结构进行说明。图3是示出表示本实施方式的PLC100的主要部分的硬件结构的示意图。图4是表示本实施方式的PLC 100的软件结构的示意图。
参照图3,对PLC 100的CPU单元104的硬件结构进行说明。CPU单元104包含处理器120、芯片组122、系统时钟124、主存储器126、非易失性存储器128、通信连接器130、PLC系统总线控制器140、现场总线控制器150、上位通信控制器160及存储卡接口170。芯片组122与其他组件之间经由各种总线分别结合。
处理器120及芯片组122典型的是以通用的计算机架构为基准而构成的。即,处理器120解释并执行从芯片组122按照内部时钟依次供给的命令代码。为了便于说明,仅例示单一的处理器120,但并不限定于此,能够采用任意的结构。例如,也可以采用包含多个包括单一核的处理器的结构、包含多个单一处理器的结构、包含多个包括多个核的处理器的结构等。即,本实施方式的控制器也可以通过1个或多个处理器执行程序来实现。
芯片组122与所连接的各种组件之间交换内部的数据,并且生成处理器120所需的命令代码。系统时钟124产生预先确定的周期的系统时钟并提供给处理器120。芯片组122具有对作为处理器120中的运算处理的执行结果而得到的数据等进行缓存的功能。
CPU单元104具有主存储器126和非易失性存储器128作为存储单元。主存储器126是易失性的存储区域,保持应由处理器120执行的各种程序,并且也作为各种程序的执行时的作业用存储器来使用。非易失性存储器128非易失性地保持OS(Operating System:操作系统)、系统程序、用户程序、数据定义信息、日志信息等。
通信连接器130是用于经由连接线缆114将支持装置300与CPU单元104连接的接口。典型地,从支持装置300传送的可执行的程序等经由通信连接器130而被取入至CPU单元104。作为一例,通信连接器130是USB连接器,但通信标准以及与该标准对应的通信连接器130的种类没有特别限定。
CPU单元104具有PLC系统总线控制器140、现场总线控制器150以及上位通信控制器160作为通信单元。这些通信电路进行数据的发送以及接收。
PLC系统总线控制器140控制经由PLC系统总线108的数据交换。更具体而言,PLC系统总线控制器140包含缓冲存储器142、PLC系统总线控制电路144、DMA(Dynamic MemoryAccess:动态存储器存取)控制电路146。PLC系统总线控制器140经由PLC系统总线连接器148与PLC系统总线108连接。
现场总线控制器150包含缓冲存储器152、现场总线控制电路154和DMA控制电路156。现场总线控制器150经由现场总线连接器158与现场总线110连接。上位通信控制器160包含缓冲存储器162、上位通信控制电路164和DMA控制电路166。上位通信控制器160经由上位通信连接器168与网络112连接。
存储卡接口170将相对于CPU单元104可装卸的存储卡172与处理器120连接。
接着,参照图4,对用于实现本实施方式的PLC 100所提供的各种功能的软件结构进行说明。这些软件中包含的命令代码在适当的定时被读出,由CPU单元104的处理器120执行。
参照图4,作为由CPU单元104执行的软件,为OS 180、系统程序188、用户程序186这3个层级。
OS 180提供用于由处理器120执行系统程序188以及用户程序186的基本执行环境。
系统程序188是用于提供作为PLC 100的基本功能的软件组。具体而言,系统程序188包含序列命令库190、DB(数据库)访问处理库191、监视处理库192、输入输出处理库193、工具接口处理程序194、调度器195。
与此相对,用户程序186是根据针对控制对象的控制目的而任意创建的程序。即,用户程序186根据使用控制系统1进行控制的对象的生产线(进程)等而任意设计。
用户程序186与序列命令库190协作,实现用户的控制目的。即,用户程序186通过利用由序列命令库190提供的命令、函数、功能模块等,实现被编程的动作。因此,有时也将用户程序186及序列命令库190统称为“控制程序”。
这些程序、库等被保存在非易失性存储器128中。即,非易失性存储器128相当于保存系统程序188和用户程序186的存储器。
数据定义信息182包含用于在执行用户程序186等时,将所参照的数据(输入数据、输出数据、内部数据)作为唯一的变量来处理的定义。在运行日志184中,伴随系统程序188以及用户程序186的执行,在发生了预定的事件时,将该发生的事件的信息与时刻信息相关联地存储。即,在运行日志184中,作为日志(历史信息),保存有伴随系统程序188和/或用户程序186的执行的各种信息。
以下,对各程序进行更详细的说明。
序列命令库190包含如下的命令代码组,该命令代码组用于伴随用户程序186的执行,调用在用户程序186内指定的序列命令的实体,并实现该命令的内容。
DB访问处理库191包含如下的命令代码组,该命令代码组用于伴随用户程序186的执行,实现访问数据库装置400所需的处理。DB访问处理库191包含与在用户程序186中能够指定的命令对应的执行代码。
监视处理库192是用于实现本实施方式的访问请求的限制功能的程序。之后将叙述由监视处理库192提供的功能的细节。
输入输出处理库193是用于与IO单元106、各种现场设备之间管理输入数据的取得以及输出数据的发送的程序。
工具接口处理程序194提供用于与支持装置300之间交换数据的接口。
调度器195按照预先确定的优先级、系统定时器的值等,生成用于执行控制程序的线程、过程。
如上所述,用户程序186是根据用户的控制目的(例如,作为对象的生产线或进程)而创建的。用户程序186典型地成为能够由CPU单元104的处理器120执行的目标程序形式。用户程序186是通过在支持装置300等中对以梯形图形式或功能块形式记述的源程序进行编译而生成的。然后,所生成的目标程序形式的用户程序从支持装置300被传送至CPU单元104,并保存在非易失性存储器128等中。
在上述的说明中,例示了如下方式:处理器120在执行存储器中保存的用户程序186时,读出系统程序,并执行系统程序内的DB访问处理库191以及监视处理库192中包含的程序。然而,只要是包含由用户程序186记述的如下程序的结构,就不限定于上述的实施方式:受理访问命令的执行而收发针对数据库装置的访问请求的程序(作为一例,数据库连接服务);以及对指定在命令执行时访问数据库的范围的信息进行监视的程序(作为一例,监视服务)。
<D.支持装置300的结构>
接着,对本实施方式的支持装置300进行说明。支持装置300用于辅助PLC 100的CPU单元104的使用,与PLC 100之间提供各种参数的设定、编程、监控、调试等功能。
图5是表示与本实施方式的PLC 100连接而使用的支持装置300的硬件结构的示意图。支持装置300典型地由通用的计算机构成。
参照图5,支持装置300包含:CPU 302,其执行包含OS的各种程序;保存BIOS、各种数据的ROM(Read Only Memory:只读存储器)304;存储器RAM 306,其提供用于保存CPU 302执行程序所需的数据的作业区域;以及硬盘(HDD)308,其非易失性地保存由CPU 302执行的程序等。更具体而言,硬盘308中保存有用于实现支持装置300所提供的功能的支持程序330。
支持装置300还包含受理来自用户的操作的键盘310及鼠标312、及用于将信息提示给用户的监视器314。并且,支持装置300包含用于与PLC 100(CPU单元104)等进行通信的通信接口(IF)318。
由支持装置300执行的支持程序330等典型的是被保存在作为计算机可读取的记录介质的一例的光盘332中而流通。保存在光盘332中的支持程序由光盘读取装置316读取,并保存在硬盘308等中。或者,也可以构成为从上位的主计算机等通过网络下载程序。
<E.数据库装置400的结构>
接着,对本实施方式的数据库装置400进行说明。作为数据库装置400,能够采用提供数据库的公知结构。作为这样的数据库,能够采用关系型数据类型、对象数据类型这样的任意的结构。数据库装置400按照通用的计算机体系结构构成,因此在此不重复其详细的说明。
数据库装置400接收来自PLC 100的连接请求或访问请求(在关系数据类型中为SQL语句),执行必要的处理,并将其处理结果等响应给PLC 100。典型地,通过SQL语句,执行将所指定的数据写入所指定的位置或范围、读出在所指定的位置或范围中保存的数据、删除在所指定的位置或范围中保存的数据这样的处理。在以下说明的一个实施方式中,数据库装置400是关系数据型,访问请求是SQL语句。
在上述的说明中,例示了作为提供数据库的装置的数据库装置400,但并不限定于这样的结构,能够采用各种结构。即,只要是具有保持数据的功能、根据访问请求进行处理的功能、将处理结果响应给客户端的功能这样的作为数据库的基本功能的结构,则能够采用任意的结构。因此,能够采用在单一的装置中除了数据库功能以外还具有其他功能的结构、多个装置协作而提供单一的数据库功能的结构等。
<F.对数据库的访问功能>
接着,对由本实施方式的PLC 100提供的对数据库的访问功能的安装例进行说明。
图6是用于说明由本实施方式的PLC 100提供的访问请求的安装例的示意图。图6表示在用户程序186中定义了用于访问数据库装置400的访问命令的例子。在图6中,作为访问命令的一例,示出了用于向数据库装置400插入数据的“DB_INSERT”命令,但不限于此,能够指定包含对发送到数据库装置400的对象数据、访问数据库装置400的数据的范围(访问范围)进行指定的信息等的各种命令。这样,访问命令包含指定访问数据库装置400的访问范围的信息。
典型地,假设用户操作支持装置300,在用户程序186内指定了DB访问命令(DB_INSERT)。当执行该用户程序186并到达DB访问命令的执行定时时,调用DB访问处理库191(图4)的对应的命令代码,生成并发送包含对数据库装置400的访问请求的SQL语句。即,提供通过系统程序188中包含的DB访问处理库191实现的DB连接服务,伴随用户程序186内的DB访问命令的执行,触发DB连接服务。然后,DB连接服务生成SQL语句,并将所生成的SQL语句经由与数据库装置对应的驱动软件发送给数据库装置。具体而言,DB访问功能通过上位通信控制器160(图3)以及DB访问处理库191(图4),经由网络112将DB连接服务生成的SQL语句发送到数据库装置400。
数据库装置400在接收到来自PLC 100的SQL语句时,按照该SQL语句执行处理,并根据需要将其结果响应给PLC 100。
DB连接服务根据处理的执行,将该处理的内容与时刻信息建立关联(即,作为执行日志),写入运行日志184。即,保存PLC 100的运行状况的日志。DB连接服务在伴随访问命令的执行而生成并发送SQL语句时,将其内容写入运行日志184。在图6所示的例子中,DB连接服务通过将运行日志184追加到保存于存储卡172的日志文件1842来更新日志文件1842。
在DB连接服务对数据库装置400的访问中发生了错误的情况下,将包含对数据库装置400的访问失败时的SQL语句的日志(以下称为“失败日志1891”)保存在假脱机(spool)189中。然后,DB连接服务读出保存在假脱机中的SQL语句并重发给数据库装置400。此时,能够利用用户程序186或由支持装置300提供的工具,选择应该重发给数据库装置400的SQL语句。失败日志1891是记录了对数据库装置400的访问失败时的访问请求的错误列表。
假脱机并不限定于设置在CPU单元104的内部,也可以在CPU单元104的外部(PLC100的外部)设置假脱机。包含失败日志1891的错误列表可以保存在存储卡172中。以下,将应保存失败日志1891的存储区域(假脱机或存储卡)称为“保存目的地”。
支持装置300具有用于确认运行日志184的内容的功能,在发生了某些错误的情况下,用户能够利用该支持装置300的功能来确认错误的原因、内容等。
<G.错误恢复时的课题>
为了在对数据库装置400的访问中发生错误时进行恢复,可以考虑重发保存在保存目的地(例如假脱机)中的SQL语句。在批量发送保存在保存目的地中的SQL语句的情况下,有可能执行不希望的处理。例如,假设向数据库装置400的数据插入处理失败了多次。在该情况下,认为是在批量发送保存在保存目的地中的SQL语句时,在数据库装置400中多次插入相同的数据。考虑到SQL语句的批量重发不适合的情况,优选的是,用户程序186安装有仅重发所指定的SQL语句的功能。
在用户程序186中没有安装仅重发所指定的SQL语句的功能的情况下,用户必须参照日志文件(或者失败日志文件)来提取发生了错误时的SQL语句。但是,存在从日志中提取SQL语句需要耗费用户精力的问题。并且,仅通过从日志文件中提取SQL语句的功能,用户无法经由DB连接服务将任意的SQL语句追加发送到数据库装置400。
另外,在保存目的地为假脱机且该假脱机的容量小的情况下,假脱机能够存储的SQL语句的数量也受到限制。因此,还考虑用户想要执行的SQL语句未被存储到假脱机的可能性。
在本实施方式中,图1所示的访问处理部4从记录了对数据库装置400的访问失败时的访问请求的错误列表中,提取满足规定条件的访问请求。然后,访问处理部4使通信接口6重发提取出的访问请求。因此,能够仅将符合条件的SQL语句重发给数据库装置400,所以能够实现可从与数据库装置400的连接错误中灵活地恢复的控制器。以下,详细说明本实施方式的SQL语句的重发。
<H.本实施的第1方式的SQL语句的重发>
图7是表示本实施的第1方式的SQL语句的重发的示意图。根据第1方式,用户程序186确定符合所指定的条件的SQL语句,并且命令DB连接服务从日志文件或假脱机中提取并重发该确定的SQL语句。由用户程序186进行的SQL语句的选择例如在PLC 100的运行中执行。
参照图8,说明用于SQL语句重发处理的用户程序186的结构和处理内容。图8是表示用户程序186所包含的第1功能块FB1的一例的图。以下,也将功能块FB1称为块FB1。
具有块FB1的功能的程序也可以由功能块以外的方式规定。例如,块FB1也可以包含由梯形图规定的块、命令列表、结构化文本以及序列功能图中的任意一个、或者由它们的组合规定的块。此外,块FB1也可以包含用JavaScript(注册商标)或C语言这样的通用编程语言规定的块。
块FB1是用于执行命令的程序,该命令用于控制对数据库装置400的访问。更具体而言,块FB1是具有命令DB连接程序重发向数据库装置400的访问发生错误时的SQL语句的功能的程序。
块FB1包含:输入部255A~255E,其受理与SQL语句的重发相关的设定;以及输出部256A,其用来输出用于执行SQL语句的重发的命令。
表示为“Excute”的输入部255A受理用于指定是否执行SQL语句的重发处理的设定。作为一例,输入部255A被规定为受理“BOOL”类型的输入。只要向输入部255A输入了“FALSE”,则不执行SQL语句的重发。另一方面,在向输入部255A输入了“TRUE”的情况下,执行SQL语句的重发处理。
输入部255B、255C、255D、255E分别受理SQL类别、区域、区域的路径、提取条件。在处理完成的情况下,从表示为“Done”的输出部256A输出表示从区域中提取符合提取条件的SQL的命令的信号。
图9是例示输入到图8所示的功能块的信息的图。在图9中示出SQL类别、区域、区域的路径以及提取条件各自的例子。然而,本实施方式并不限定于图9所示的例子。
图10是表示本实施第1方式的SQL语句的重发处理的步骤的序列图。在图10所示的序列图中,除了PLC 100的内部处理以外,还示出其与支持装置300以及数据库装置400之间的交换。
在某个定时,用户操作支持装置300,选择重发条件(序列SQ100)。通过支持装置300的操作,用户选择应输入到用户程序186的重发条件(序列SQ102)。具体而言,用户经由支持装置300选择SQL类别、区域、区域的路径以及提取条件。支持装置300将由用户选择的信息发送至PLC 100。
接着,PLC 100执行用户程序186。此时,功能块FB1的输入部受理来自支持装置300的信息(SQL类别、区域、区域的路径以及提取条件)。从功能块FB1的输出部向系统程序188(DB连接服务)发送再次执行相应的SQL语句的命令(序列SQ104)。
DB连接服务响应于来自用户程序186的命令,发出open指令,打开保存在假脱机等保存目的地中的错误列表(失败日志的文件)(序列SQ106)。接着,DB连接服务发出grep指令,在错误列表内检索包含符合提取条件的字符串的日志(序列SQ108)。由此,DB连接服务从保存目的地接收执行grep指令的结果(序列SQ110)。以下,说明从错误列表中找到了包含相应的SQL语句的日志的情况。
DB连接服务基于提取出的日志中包含的SQL语句,创建应重发的SQL语句(序列SQ112)。DB连接服务将该SQL语句发送到数据库装置400,执行对数据库装置400的访问(序列SQ114)。数据库装置400按照接收到的访问请求执行处理,并将其执行结果返回给DB连接服务(序列SQ116)。
如以上说明的那样,在第1方式中,用户程序186(命令执行部2)根据与规定条件的设定相关的用户输入,命令访问处理部4(DB连接服务)提取满足该条件的访问请求(SQL语句)。由此,能够从失败日志中仅提取用户指定的SQL语句,并且能够仅再次执行与该SQL相关的处理。
<I.本实施的第2方式的SQL语句的重发>
图11是表示本实施的第2方式的SQL语句的重发的示意图。在第2方式中,用户程序186从保存于假脱机189的失败日志1891中,提取包含符合所指定的条件的SQL语句的日志。用户程序186执行用于在支持装置300中显示该日志的处理。
支持装置300通过执行工具软件来显示日志中所含的信息。用户从所显示的信息中选择应重发的SQL语句。支持装置300受理用户输入,并且向用户程序186发送命令用于执行SQL语句的重发的指令。用户程序186确定符合所指定的条件的SQL语句,并且命令DB连接服务从日志文件或假脱机中提取并重发该确定的SQL语句。使用工具的SQL语句的重发例如可以在PLC 100启动时执行,也可以在PLC 100的维护时执行。
参照图12~图14,对用于SQL语句提取处理的用户程序186的结构和处理内容进行说明。图12是表示用户程序186所包含的第2功能块FB2的一例的图。以下,也将功能块FB2称为块FB2。
块FB2是具有命令DB连接服务提取应该重发的SQL语句的功能的程序。块FB2包含:输入部265A~265E,其受理与SQL语句的提取相关的设定;以及输出部266A、266B,其用来输出用于执行SQL语句的提取的命令。与块FB1同样,表示为“Excute”的输入部255A受理用于指定是否执行SQL语句的重发处理的设定。作为一例,输入部265A被规定为受理“BOOL”类型的输入。只要向输入部265A输入了“FALSE”,则不执行SQL语句的提取。另一方面,在向输入部265A输入了“TRUE”的情况下,执行SQL语句的提取处理。
输入部265B、265C、265D、265E分别受理SQL类别、区域、区域的路径、提取条件。在处理完成的情况下,从表示为“Done”的输出部266A输出表示从区域提取符合提取条件的SQL的命令的信号。另外,从表示为“Handle”的输出部266B输出句柄值。
图13是表示用户程序186所包含的第3功能块FB3的一例的图。以下,也将功能块FB3称为块FB3。
块FB3是具有执行为了使支持装置300显示从保存目的地提取出的失败日志所需的处理的功能的程序。块FB3包含:输入部275A、275B,其受理与数据的取得相关的设定;输出部276A,其用来输出用于创建所取得的数据列表的命令;以及输出部276B,其用于输出提取出的数据。表示为“Excute”的输入部275A受理用于指定是否创建数据列表的设定。作为一例,输入部275A被规定为受理“BOOL”类型的输入。只要向输入部275A输入了“FALSE”,则不执行数据列表的创建。另一方面,在向输入部275A输入了“TRUE”的情况下,执行数据列表的创建。被表示为“Handle”的输入部275B受理来自块FB2的句柄值。
在处理完成的情况下,从表示为“Done”的输出部266A输出表示创建数据列表的命令的信号。另外,生成列表所需的信息从表示为“ExtractionInfo”的输出部276B输出。
图14是表示用户程序186所包含的第4功能块FB4的一例的图。以下,也将功能块FB4称为块FB4。
与块FB1相同,块FB4是具有命令DB连接程序重发向数据库装置400的访问发生错误时的SQL语句的功能的程序。块FB4包含:输入部285A、285B,其受理与SQL语句的重发相关的设定;输出部286A,其用来输出用于创建所取得的数据列表的命令;以及输出部286B,其用来输出用于执行SQL语句重发的命令。
表示为“Excute”的输入部285A受理用于指定是否执行SQL语句的重发处理的设定。作为一例,输入部285A被规定为受理“BOOL”类型的输入。只要向输入部285A输入了“FALSE”,则不执行SQL语句的重发。另一方面,在向输入部285A输入了“TRUE”的情况下,执行SQL语句的重发处理。被表示为“Handle”的输入部285B受理来自块FB2的句柄值。
在处理完成的情况下,从表示为“Done”的输出部276A输出表示重发符合提取条件的SQL语句的命令的信号。
图15是表示用于受理从用户对SQL语句的选择的工具的画面例的图。参照图15,支持装置300执行工具程序,由此将图15所示的画面显示于支持装置300。工具301包含SQL类别选择部351、区域选择部352、路径选择部353以及提取条件选择部354。
SQL类别选择部351、区域选择部352、路径选择部353以及提取条件选择部354分别由用户操作。SQL类别选择部351具有选择SQL类别(SQL指令)的种类的功能。区域选择部352具有选择保存失败日志的区域的功能。路径选择部353具有选择由区域选择部352选择的区域的路径的功能。提取条件选择部354具有选择应提取的SQL语句的条件的功能。在图15所示的例子中,选择SQL类别(“INSERT”)、区域(“运行日志-失败日志”)、区域的路径(“/fs/MEMORYCARD/DBConnection”)以及提取条件(“连接名=DBConnection 1”)。
工具301还包含SQL执行失败日志显示部355。SQL执行失败日志显示部355以一览表形式显示失败日志中包含的信息。SQL执行失败日志显示部355所显示的项目例如是条目、日期时刻、SQL类别、日志代码、日志名、执行结果、连接名、序列ID等。通过用户操作SQL执行失败日志显示部355,将SQL执行失败日志显示部355所显示的日志中的、包含应重发的SQL语句的日志反转显示,并且选择该日志。
工具301还包含SQL显示部356和SQL重发按钮357。SQL显示部356显示从SQL执行失败日志显示部355所显示的日志中选择出的失败日志所包含的SQL语句。SQL重发按钮357受理用户的操作。通过操作SQL重发按钮357,工具301向用户程序186发送用于向数据库装置400重发SQL显示部356所显示的SQL语句的命令。
图16是表示本实施第2方式的QL语句的重发处理的步骤的序列图。与第1方式同样地,在某个定时,用户操作支持装置300,选择重发条件(序列SQ100)。通过支持装置300的操作,用户选择应输入到用户程序186的重发条件(序列SQ102)。具体而言,用户经由支持装置300选择SQL类别、区域、区域的路径以及提取条件。支持装置300将由用户选择的信息发送至PLC 100。
接着,PLC 100执行用户程序186。此时,功能块FB2的输入部受理来自支持装置300的信息(SQL类别、区域、区域的路径以及提取条件)。从功能块FB2的输出部向系统程序188(DB连接服务)发送提取相应的SQL语句的命令(序列SQ104)。
DB连接服务响应于来自用户程序186的命令,发出open指令,打开保存在假脱机等保存目的地中的错误列表(失败日志的文件)(序列SQ106)。接着,DB连接服务发出grep指令,在错误列表内检索包含符合提取条件的字符串的日志(序列SQ108)。由此,DB连接服务从保存目的地接收执行grep指令的结果(序列SQ110)。以下,说明从错误列表中找到了包含相应的SQL语句的日志的情况。
DB连接服务根据提取出的日志创建SQL语句(序列SQ112)。接着,DB连接服务将执行结果发送到用户程序186(序列SQ120)。
支持装置300根据用户操作,将确认提取出的内容的命令发送至用户程序186(序列SQ122)。根据命令,用户程序186(功能块FB3)向DB连接服务发送用于显示提取出的信息的命令(序列SQ124)。
DB连接服务响应于命令将执行结果发送到用户程序186。由此,用户程序186取得提取出的信息(序列SQ126)。支持装置300以显示提取出的信息的方式执行工具301的程序。
通过用户对工具301进行操作,来选择应该重发的SQL语句。支持装置300指示PLC100执行SQL语句的重发。相应地,功能块FB4命令DB连接服务重发SQL语句(序列SQ130)。DB连接服务将该SQL语句发送到数据库装置400,执行对数据库装置400的访问(序列SQ132)。数据库装置400按照接收到的访问请求执行处理,并将其执行结果返回给DB连接服务(序列SQ134)。
如以上说明的那样,在第2方式中,用户程序186(命令执行部2)执行用于显示表示由访问处理部4(DB连接服务)从错误列表中提取出的访问请求(SQL语句)的信息的用户程序186(块FB2、FB3)。用户程序186(命令执行部2)根据与访问请求的选择相关的用户输入,命令访问处理部4(DB连接服务)使通信接口6重发由用户选择的访问请求。因此,与第1方式相同,能够从失败日志中仅提取用户指定的SQL语句,并且能够仅再次执行与该SQL相关的处理。
<J.误重发的防止>
在用户能够选择应该重发给数据库装置400的SQL语句的情况下,用户有可能操作工具而将相同的SQL语句多次发送给数据库装置400。在这样的情况下,存在对数据库装置400的同一处理重复多次的可能性。例如,将同一数据多次插入数据库装置400。因此,在通过SQL语句的重发而对数据库装置400的处理成功的情况下,优选防止同一SQL语句被进一步发送到数据库装置(防止SQL语句的误重发)。
图17是表示本实施方式的用于防止SQL语句的误重发的处理的序列图。参照图17,序列SQ128以前的序列与图16所示的对应的序列相同。序列SQ132、SQ134的处理也与图16所示的对应的序列的处理相同。
DB连接服务通过受理来自数据库装置400的执行结果,检查数据库装置400的响应。在DB连接服务接收到表示与数据库装置400的连接正常的响应的情况下,从保存于保存目的地中的失败日志的列表中删除相应的日志(包含SQL语句的访问请求)(序列SQ140)。另外,在序列SQ140中,也可以执行使相应的SQL语句无效的处理。例如,也可以将与SQL语句关联的标志的值设定为表示重发成功的值。
另一方面,在DB连接服务接收到表示与数据库装置400的连接失败的响应的情况下,生成表示该SQL语句的重发(RESEND指令)失败的信息,并且将该信息保存在保存目的地中(序列SQ142)。因此,在该情况下,能够重发该SQL语句,直到与数据库装置400的连接正常为止。
如上所述,根据本实施方式,能够从包含对数据库装置400的访问失败时的SQL语句的日志(失败日志)中选择应该重发的SQL语句。因此,能够从向数据库装置400的连接错误中灵活地恢复。
<K.附记>
如上所述,本实施方式包含以下的公开。
(结构1)
一种控制器(100),其对控制对象进行控制,该控制器(100)具有:
通信接口(6),其用于访问数据库装置(400);
命令执行部(2),其执行包含用于访问所述数据库装置(400)的访问命令、且与所述控制对象的控制关联的用户程序(186);以及
访问处理部(4),其响应于所述访问命令被所述命令执行部(2)执行,生成访问请求,并使所述通信接口(6)发送所述访问请求,
所述访问处理部(4)从记录有对所述数据库装置(400)的访问失败时的访问请求的错误列表中,提取满足规定条件的访问请求,并使所述通信接口(6)重发提取出的访问请求。
(结构2)
在结构1所记载的控制器(100)中,
所述命令执行部(2)根据与所述规定条件的设定相关的用户输入,命令所述访问处理部(4)提取满足所述规定条件的所述访问请求。
(结构3)
在结构1所记载的控制器(100)中,
所述命令执行部(2)执行用于显示表示由所述访问处理部(4)从所述错误列表中提取出的所述访问请求的信息的所述用户程序(186),根据与所述访问请求的选择相关的用户输入,命令所述访问处理部(4)使所述通信接口(6)重发由所述用户选择的所述访问请求。
(结构4)
在结构1~结构3中的任意一项所记载的控制器(100)中,
所述访问处理部(4)在所述通信接口(6)对所述访问请求的重发成功的情况下,从所述错误列表中删除相应的访问请求。
(结构5)
在结构4所记载的控制器(100)中,
所述访问处理部(4)在所述通信接口(6)对所述访问请求的重发失败的情况下,生成与所述重发的失败相关的信息。
(结构6)
一种控制系统,其中,该控制系统包含:
结构1~结构5中的任意一项所记载的控制器(100);以及
数据库装置(400),其受理来自所述控制器(100)的访问请求。
(结构7)
一种控制方法,其是对控制对象进行控制的控制器(100)的控制方法,该控制方法具有以下步骤:
所述控制器(100)执行用于访问数据库装置(400)的访问命令;
所述控制器(100)生成访问请求;
所述控制器(100)向所述数据库装置(400)发送所述访问请求;
所述控制器(100)将对所述数据库装置(400)的访问失败时的访问请求保存到错误列表中;
所述控制器(100)从所述错误列表中提取满足规定条件的访问请求;以及
所述控制器(100)向所述数据库装置(400)重发提取出的访问请求。
应该认为本次公开的实施方式在所有方面都是例示而不是限制性的。本发明的范围由权利要求书、而不由上述的说明来表示,意在包含与权利要求书等同的意思以及范围内的所有变更。
标号说明
1:控制系统;2:命令执行部;4:访问处理部;6:通信接口;10:检测开关;20:继电器;30:伺服电机驱动器;32:电机;100:PLC;102:电源单元;104:CPU单元;106:IO单元;108:PLC系统总线;110:现场总线;112:网络;114:连接线缆;120:处理器;122:芯片组;124:系统时钟;126:主存储器;128:非易失性存储器;130:通信连接器;140:PLC系统总线控制器;142、152、162:缓冲存储器;144:PLC系统总线控制电路;146、156、166:DMA控制电路;148:PLC系统总线连接器;150:现场总线控制器;154:现场总线控制电路;158:现场总线连接器;160:上位通信控制器;164:上位通信控制电路;168:上位通信连接器;170:存储卡接口;172:存储卡;180:OS;182:数据定义信息;184:运行日志;1842:日志文件;186:用户程序;188:系统程序;189:假脱机;1891:失败日志;190:序列命令库;191:DB(数据库)访问处理库;192:监视处理库;193:输入输出处理库;194:工具接口处理程序;195:调度器;200:远程IO终端;202:通信耦合器;208:终端总线;255A~255E、265A~265E、275A、275B、285A、285B:输入部;256A、266A、266B、276A、276B、286A、286B:输出部;300:支持装置;301:工具;302:CPU;304:ROM;306:RAM;308:硬盘;310:键盘;312:鼠标;314:监视器;316:光盘读取装置;330:支持程序;332:光盘;351:类别选择部;352:区域选择部;353:路径选择部;354:提取条件选择部;355:执行失败日志显示部;356:SQL显示部;357:SQL重发按钮;400:数据库装置;FB1~FB4:功能块;SQ100~SQ142:序列。

Claims (7)

1.一种控制器,其对控制对象进行控制,该控制器具有:
通信接口,其用于访问数据库装置;
命令执行部,其执行包含用于访问所述数据库装置的访问命令、且与所述控制对象的控制关联的用户程序;以及
访问处理部,其响应于所述访问命令被所述命令执行部执行,生成访问请求,并使所述通信接口发送所述访问请求,
所述访问处理部从记录有对所述数据库装置的访问失败时的访问请求的错误列表中,提取满足规定条件的访问请求,并使所述通信接口重发提取出的访问请求。
2.根据权利要求1所述的控制器,其中,
所述命令执行部根据与所述规定条件的设定相关的用户输入,命令所述访问处理部提取满足所述规定条件的所述访问请求。
3.根据权利要求1所述的控制器,其中,
所述命令执行部执行用于显示表示由所述访问处理部从所述错误列表中提取出的所述访问请求的信息的所述用户程序,根据与所述访问请求的选择相关的用户输入,命令所述访问处理部使所述通信接口重发由所述用户选择的所述访问请求。
4.根据权利要求1~3中的任意一项所述的控制器,其中,
所述访问处理部在所述通信接口对所述访问请求的重发成功的情况下,从所述错误列表中删除相应的访问请求。
5.根据权利要求4所述的控制器,其中,
所述访问处理部在所述通信接口对所述访问请求的重发失败的情况下,生成与所述重发的失败相关的信息。
6.一种控制系统,其中,该控制系统包含:
权利要求1~5中的任意一项所述的控制器;以及
数据库装置,其受理来自所述控制器的访问请求。
7.一种控制方法,其是对控制对象进行控制的控制器的控制方法,该控制方法具有以下步骤:
所述控制器执行用于访问数据库装置的访问命令;
所述控制器生成访问请求;
所述控制器向所述数据库装置发送所述访问请求;
所述控制器将对所述数据库装置的访问失败时的访问请求保存到错误列表中;
所述控制器从所述错误列表中提取满足规定条件的访问请求;以及
所述控制器向所述数据库装置重发提取出的访问请求。
CN202080046727.7A 2019-07-08 2020-03-03 控制器、控制系统以及控制方法 Pending CN114072738A (zh)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
JP2019-126704 2019-07-08
JP2019126704A JP7331507B2 (ja) 2019-07-08 2019-07-08 コントローラ、制御システム、および制御方法
PCT/JP2020/008911 WO2021005829A1 (ja) 2019-07-08 2020-03-03 コントローラ、制御システム、および制御方法

Publications (1)

Publication Number Publication Date
CN114072738A true CN114072738A (zh) 2022-02-18

Family

ID=74114609

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202080046727.7A Pending CN114072738A (zh) 2019-07-08 2020-03-03 控制器、控制系统以及控制方法

Country Status (5)

Country Link
US (1) US20220236711A1 (zh)
EP (1) EP3998513A4 (zh)
JP (1) JP7331507B2 (zh)
CN (1) CN114072738A (zh)
WO (1) WO2021005829A1 (zh)

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20140136570A1 (en) * 2012-11-14 2014-05-15 Omron Corporation Controller and program
CN103995500A (zh) * 2013-02-15 2014-08-20 欧姆龙株式会社 控制器、信息处理装置及程序
US20140236997A1 (en) * 2013-02-15 2014-08-21 Omron Corporation Controller, information processing apparatus, and recording medium
JP2014157483A (ja) * 2013-02-15 2014-08-28 Omron Corp コントローラおよび情報処理装置
CN109739806A (zh) * 2018-12-28 2019-05-10 安谋科技(中国)有限公司 内存访问方法、内存访问控制器和片上系统

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0887310A (ja) * 1994-09-14 1996-04-02 Toshiba Corp プログラマブルコントローラ
JP5549556B2 (ja) 2010-11-16 2014-07-16 富士電機株式会社 データ収集システム、データ収集システムの異常要因判定方法
JP6064749B2 (ja) 2013-03-29 2017-01-25 オムロン株式会社 コントローラおよびプログラム

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20140136570A1 (en) * 2012-11-14 2014-05-15 Omron Corporation Controller and program
CN103995500A (zh) * 2013-02-15 2014-08-20 欧姆龙株式会社 控制器、信息处理装置及程序
US20140236997A1 (en) * 2013-02-15 2014-08-21 Omron Corporation Controller, information processing apparatus, and recording medium
JP2014157483A (ja) * 2013-02-15 2014-08-28 Omron Corp コントローラおよび情報処理装置
CN109739806A (zh) * 2018-12-28 2019-05-10 安谋科技(中国)有限公司 内存访问方法、内存访问控制器和片上系统

Also Published As

Publication number Publication date
WO2021005829A1 (ja) 2021-01-14
EP3998513A1 (en) 2022-05-18
JP2021012563A (ja) 2021-02-04
EP3998513A4 (en) 2023-07-19
US20220236711A1 (en) 2022-07-28
JP7331507B2 (ja) 2023-08-23

Similar Documents

Publication Publication Date Title
JP6171386B2 (ja) コントローラ、情報処理装置およびプログラム
JP6171387B2 (ja) コントローラ、情報処理装置およびプログラム
WO2015136959A1 (ja) 制御システム、方法、プログラムおよび情報処理装置
CN101853173A (zh) 一种分布式系统的可编程逻辑器件的软件升级方法和设备
JP4877068B2 (ja) ソフトウェア開発支援プログラム、ソフトウェア開発支援方法
JP2008282363A (ja) プログラマブルコントローラ、プログラム作成支援装置、コンピュータプログラム及びplcシステム
EP2733613B1 (en) Controller and program
JP6442131B2 (ja) 制御システムおよび制御装置
JP2016224557A (ja) プログラム作成支援装置、プログラムおよび判別方法
JP6171385B2 (ja) コントローラおよび情報処理装置
CN114072738A (zh) 控制器、控制系统以及控制方法
JP2006235992A (ja) プリンタのファームウェア書き替えシステムおよびファームウェア書き替え方法並びにプリンタ
CN113434467B (zh) 网络文件传输方法、装置及计算机可读存储介质
JP6064749B2 (ja) コントローラおよびプログラム
CN100583961C (zh) 一种可重复在线编程的电路装置和实现方法
JP5414191B2 (ja) 文書変換システムおよび文書変換制御プログラム
JP4906805B2 (ja) プログラムの遠隔テスト実行システム
JP2008176708A (ja) 情報処理装置
US20150169483A1 (en) Expansion unit
EP3531219B1 (en) Control system and functional unit
CN110419009B (zh) 控制器以及控制方法
JP2008269128A (ja) バージョンアップ管理装置及びバージョンアップ管理プログラム
CN117687710A (zh) 网络设备芯片寄存器的设置方法、网络设备和存储介质
US20180349122A1 (en) Image forming apparatus capable of executing extension application, method of controlling same, and storage medium
CN114816460A (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