CN114442516A - 装置、方法以及计算机可读存储介质 - Google Patents

装置、方法以及计算机可读存储介质 Download PDF

Info

Publication number
CN114442516A
CN114442516A CN202111268587.0A CN202111268587A CN114442516A CN 114442516 A CN114442516 A CN 114442516A CN 202111268587 A CN202111268587 A CN 202111268587A CN 114442516 A CN114442516 A CN 114442516A
Authority
CN
China
Prior art keywords
input
output
error
function
output 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
CN202111268587.0A
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.)
Yokogawa Electric Corp
Original Assignee
Yokogawa Electric 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 Yokogawa Electric Corp filed Critical Yokogawa Electric Corp
Publication of CN114442516A publication Critical patent/CN114442516A/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • 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/0703Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation
    • G06F11/079Root cause analysis, i.e. error or fault diagnosis
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/38Information transfer, e.g. on bus
    • G06F13/40Bus structure
    • G06F13/4004Coupling between buses
    • G06F13/4022Coupling between buses using switching circuits, e.g. switching matrix, connection or expansion network
    • 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/042Programme control other than numerical control, i.e. in sequence controllers or logic controllers using digital processors
    • G05B19/0428Safety, monitoring
    • 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/0703Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation
    • G06F11/0706Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation the processing taking place on a specific hardware platform or in a specific software environment
    • 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/0703Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation
    • G06F11/0751Error or fault detection not based on redundancy
    • 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/16Error detection or correction of the data by redundancy in hardware
    • G06F11/20Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements
    • G06F11/2002Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements where interconnections or communication control functionality are redundant
    • 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/24Pc safety
    • G05B2219/24024Safety, surveillance
    • 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/08Error detection or correction by redundancy in data representation, e.g. by using checking codes
    • G06F11/10Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's
    • G06F11/1004Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's to protect a block of data words, e.g. CRC or checksum

Abstract

提供一种装置,具备:诊断部,对输入输出装置中的被编程后的输入输出功能进行诊断,该输入输出装置具有电路结构通过设定配置数据而被编程的可编程电路,并进行与被编程在可编程电路中的输入输出功能对应的输入输出动作;错误检测部,检测存储配置数据的配置存储区域的错误;以及异常判定部,对于被检测出配置存储区域的错误、且被编程后的输入输出功能被诊断为正常的情况下的至少一部分,不判定为输入输出装置异常。

Description

装置、方法以及计算机可读存储介质
技术领域
本发明涉及装置、方法以及计算机可读存储介质。
背景技术
在专利文献1中记载有“根据控制装置,在异常判定部中能够判定软错误的位置是功能部的未使用部还是使用部,因此能够实现高可靠性并防止不必要的停止”(段落0017)。
现有技术文献
专利文献
专利文献1:日本特开2018-128820号公报
发明内容
在本发明的第1方式中,提供一种装置。也可以是,装置具备诊断部,该诊断部对输入输出装置中的被编程后的输入输出功能进行诊断,该输入输出装置具有电路结构通过设定配置数据而被编程的可编程电路,并进行与被编程在可编程电路中的输入输出功能对应的输入输出动作。也可以是,装置具备错误检测部,该错误检测部检测存储配置数据的配置存储区域的错误。也可以是,装置具备异常判定部,该异常判定部对于被检测出配置存储区域的错误、且被编程后的输入输出功能被诊断为正常的情况下的至少一部分,不判定为输入输出装置异常。
也可以是,装置还具备判定部,该判定部判定输入输出装置是否被复用。也可以是,在被检测出配置存储区域的错误、且被编程后的输入输出功能被诊断为正常的情况下,异常判定部以输入输出装置未被复用的情况为条件,不判定为输入输出装置异常。
也可以是,在输入输出装置被复用,并且对于作为主系统进行动作的输入输出装置,被编程后的输入输出功能被诊断为正常的情况下,异常判定部以对于作为主系统进行动作的输入输出装置被检测出配置存储区域的错误的情况为条件,判定为作为主系统进行动作的输入输出装置异常。
也可以是,装置还具备切换部,该切换部根据被检测出作为主系统进行动作的输入输出装置异常的情况,切换被复用的多个输入输出装置中作为主系统进行动作的输入输出装置。
也可以是,装置还具备功能变更部,该功能变更部通过对配置存储区域变更配置数据,变更可编程电路的输入输出功能。
也可以是,功能变更部根据被检测出配置存储区域的错误的情况,禁止变更可编程电路的输入输出功能。
也可以是,在被检测出配置存储区域的错误、并且由功能变更部变更后的输入输出功能被诊断为异常的情况下,功能变更部将可编程电路的输入输出功能恢复为变更前的输入输出功能。
也可以是,错误检测部对划分了配置存储区域得到的多个部分区域各自中的错误进行检测。也可以是,功能变更部以在假设变更了可编程电路的输入输出功能的情况下在输入输出功能中使用的部分区域中已经被检测出错误的情况为条件,禁止变更可编程电路的输入输出功能。
在本发明的第2方式中,提供一种方法。也可以是,方法包括:诊断阶段,对输入输出装置中的被编程后的输入输出功能进行诊断,该输入输出装置具有电路结构通过设定配置数据而被编程的可编程电路,并进行与被编程在可编程电路中的输入输出功能对应的输入输出动作。也可以是,方法包括:错误检测阶段,检测存储配置数据的配置存储区域的错误。也可以是,方法包括:异常判定阶段,对于被检测出配置存储区域的错误、且被编程后的输入输出功能被诊断为正常的情况下的至少一部分,不判定为输入输出装置异常。
在本发明的第3方式中,提供计算机可读存储介质。也可以是,计算机可读存储介质存储程序,该程序使计算机执行:诊断步骤,对输入输出装置中的被编程后的输入输出功能进行诊断,该输入输出装置具有电路结构通过设定配置数据而被编程的可编程电路,并进行与被编程在可编程电路中的输入输出功能对应的输入输出动作。也可以是,计算机可读存储介质存储程序,该程序使计算机执行:错误检测步骤,检测存储配置数据的配置存储区域的错误。也可以是,计算机可读存储介质存储程序,该程序使计算机执行:异常判定步骤,对于被检测出配置存储区域的错误、且被编程后的输入输出功能被诊断为正常的情况下的至少一部分,不判定为输入输出装置异常。
另外,上述发明的概要并未列举出本发明的所有必要特征。另外,这些特征组的子组合也可以成为发明。
附图说明
图1同时示出了本实施方式的控制系统10的结构和设施20。
图2表示本实施方式的输入输出装置130的动作流程的一例。
图3表示本实施方式的输入输出装置130的输入输出处理部142从控制器100接受到用户电路133的输入输出功能的变更指示的情况下的动作流程的一例。
图4表示本实施方式的输入输出装置130的输入输出处理部142从控制器100接受到用户电路133的输入输出功能的变更指示的情况下的动作流程的其他例子。
图5表示本实施方式的输入输出装置130的输入输出处理部142从控制器100接受到用户电路133的输入输出功能的变更指示的情况下的动作流程的另一例子。
图6表示可以整体或部分地实现本发明的多个方式的计算机2200的例子。
具体实施方式
以下,通过发明的实施方式对本发明进行说明,但以下的实施方式并不限定权利要求书所涉及的发明。另外,在实施方式中说明的特征的全部组合并非是发明的解决手段所必须的。
图1同时示出了本实施方式的控制系统10的结构和设施20。本实施方式的控制系统10控制设施20内的1台或多台现场设备155。
设施(設備)20设置于工场或工厂等。这样的工场或工厂例如可以是:用于生产各种工业产品等的工场;化学或金属的工业工厂;对气田、油田等的井源及其周边进行管理控制的工厂;对水力、火力、核能等的发电进行管理控制的工厂;对太阳能、风力等的环境发电进行管理控制的工厂;对上下水、水坝等进行管理控制的工厂等。另外,设施20也可以设置于大厦或交通机构等。
控制系统10控制设施20内的各个现场设备155,进行与设施20的目的对应的生产、发电和/或控制。现场设备155例如也可以是压力计、流量计、温度传感器等传感器设备、流量控制阀或开闭阀等阀门设备、风扇或电动机等致动器设备、对工厂等的状况或对象物进行拍摄的照相机或摄像机等摄像设备、收集工厂等的异常声音等或发出警报声等的麦克风或扬声器等音响设备、输出设施20的各设备的位置信息的位置检测设备、或其他设备。
本实施方式的控制系统10具备网络50、控制器100、复用共用装置160、以及能够采取冗余结构的1个或多个输入输出装置130。作为一例,本实施方式的控制系统10具备2个输入输出装置130a、130b。2个输入输出装置130a、130b彼此具有相同的功能、结构,对相同的结构使用相同的参照编号,省略重复的说明。另外,在以后的说明中,有时将2个输入输出装置130a、130b简称为输入输出装置130。在称为输入输出装置130的情况下,有时指2个输入输出装置130a、130b双方,也有时指它们中的其中一方。另外,输入输出表示输入或输出中的至少一个,输入装置、输出装置也包含在输入输出装置中。
网络50是连接控制器100和输入输出装置130之间的通用或专用的网络。网络50可以是以太网(注册商标),也可以是在工厂等的场内使用的LAN,还可以是总线。另外,在控制器100从远程控制设施20的情况下,网络50也可以是WAN或因特网等广域网。网络50可以是包含有线的因特网等的有线网络,也可以代替它,是包含例如4G(第4代)或5G(第5代)那样的便携通信网络等的无线网络。网络50也可以构成为包括工业用网络。网络50也可以通过传输网络分组来实现控制器100以及输入输出装置130间的通信。
控制器100从经由复用共用装置160与设施20内的各现场设备155连接的输入输出装置130,接收各现场设备155的感测数据等。控制器100基于该感测数据等控制参数进行控制运算处理,将用于控制各现场设备155的控制数据发送给输入输出装置130。
在本实施方式中,控制器100可以是PC(个人计算机)、工作站、服务器计算机、通用计算机等计算机,通过在计算机上执行控制程序而作为控制器100发挥功能。取而代之,控制器100可以是用于工厂等的控制而设计的专用计算机,也可以是通过专用电路来实现的专用硬件。
复用共用装置160在采取冗余结构的多个输入输出装置130中的、担当设施20的控制的输入输出装置130和各现场设备155之间传输信号。复用共用装置160与2个输入输出装置130各自的输入输出端口连接。复用共用装置160还与设施20内的1个或多个现场设备155连接。另外,多个现场设备155以及输入输出装置130也可以经由复用共用装置160进行使用了由HART(注册商标)、BRAIN、现场总线(Foundation Fieldbus)(注册商标)、ISA100.11a等规定的通信协议的相互通信。
输入输出装置130具有电路结构通过设定配置数据而被编程的可编程电路,进行与被编程在可编程电路中的输入输出功能对应的输入输出动作。本实施方式的输入输出装置130有时被称为网络I/O或通用I/O。另外,输入输出装置130可以是用于工厂等的控制而设计的、具有微控制器等的专用装置,也可以是对一般的计算机附加了用于与复用共用装置160连接的用户电路的装置,也可以是通过专用电路而实现的专用硬件。
本实施方式的输入输出装置130具备作为可编程电路的一例的FPGA(FieldProgramable Gate Alley,现场可编程门阵列)部131和输入输出控制部141。FPGA部131具有通过对可编程电路进行编程而实现的用户电路133、以及作为存储上述配置数据的配置存储区域的一例的CRAM(Configuration Randam Access Memory,配置随机存取存储器)135。
FPGA部131的用户电路133具有单独与复用共用装置160连接的多个输入输出端口、例如16个输入输出端口。用户电路133在经由复用共用装置160与现场设备155连接的每个通道中,包含例如数字信号输入输出用的输入缓冲器以及输出驱动器、模拟信号输入输出用的AD转换器、DA转换器、以及保存用于AD转换或DA转换的参考值的存储器等的通道用的各种接口电路。这样的接口电路也可以在输入输出装置130中设置在FPGA部131以外的其他结构内。
用户电路133根据各现场设备155的功能,与各现场设备155发送接收模拟信号或数字信号。例如,在与现场设备155连接的信道被设定为模拟信号的输出或输入用的情况下,用户电路133通过AD转换器将从输入输出装置130输出的数字信号转换为模拟信号,通过DA转换器将来自现场设备155的模拟信号转换为数字信号。
输入输出装置130a的1个输入输出端口以及输入输出装置130b的1个输入输出端口被分配给1个现场设备155。输入输出装置130a以及输入输出装置130b中的成为主系统(也表示为“控制系统”、“主机”。)的输入输出装置130的输入输出端口,通过复用共用装置160与现场设备155连接,使得能够与现场设备155之间进行通信。对于在输入输出装置130a以及输入输出装置130b中、成为辅助系统(也表示为“待机系统”、“从机”。)的输入输出装置130的输入输出端口,与现场设备155之间的通信通过复用共用装置160被无效,使得不妨碍成为主系统的输入输出装置130以及现场设备155之间的通信。
用户电路133还具有输入输出电路,该输入输出电路针对多个输入输出端口的每一个,将复用共用装置160对现场设备155的输入输出功能切换为AI(模拟输入)、AO(模拟输出)、DI(数字输入)以及DO(数字输出)中的至少一个。这样的输入输出电路也可以将各输入输出端口设定为其中一个输入输出功能,并设定为不使用其他的输入输出功能。
FPGA部131在电源接通或复位时等的初始化处理中,读出从FPGA部131的外部的ROM复制并保存在CRAM135中的配置数据,将用户电路133设定为FPGA部131中的可编程电路。用户电路133从输入输出控制部141接受用于控制各现场设备155的控制数据,进行与被编程的输入输出功能对应的输入输出动作。
用户电路133根据上述的输入输出功能,将规定的输入输出端口设定为规定的输入输出功能,从该输入输出端口向复用共用装置160输出与上述的输入输出功能对应的信号形式的现场设备155用数据。用户电路133还在经由该输入输出端口以与上述的输入输出功能对应的信号形式从复用共用装置160被输入了该现场设备155的感测数据等的情况下,向输入输出控制部141输出该感测数据等。
这样,输入输出装置130基于从控制器100接收的控制数据,通过FPGA部131的CRAM135以及用户电路133与输入输出控制部141的协作,在与上述设施20内的1个或多个现场设备155之间进行数据的输入输出。输入输出装置130除了该处理之外,还对输入输出装置130的异常进行自诊断。
输入输出控制部141具有输入输出处理部142,该输入输出处理部经由网络50从控制器100接收并处理用于使输入输出装置130、复用共用装置160以及1个或多个现场设备155进行动作的控制数据。输入输出控制部141还具有诊断部143、错误检测部145和异常判定部147。本实施方式的输入输出控制部141还具有判定部149、切换部151、功能变更部153。
诊断部143对输入输出装置130被编程的输入输出功能进行诊断。作为具体的一例,诊断部143通过从外部控制被编程在FPGA部131的用户电路133中的自诊断电路,来诊断用户电路133的输入输出功能。诊断部143还可以通过使用户电路133经由复用共用装置160向现场设备155输出的信号从复用共用装置160向用户电路133环回(loopback)等,来诊断复用共用装置160的输入输出功能。诊断部143例如在输入输出装置130的初始化处理中或预先确定的每个维护期间等的定时,诊断各个输入输出功能。诊断部143将诊断结果输出到异常判定部147。
错误检测部145检测存储有配置数据的配置存储区域中的错误。具体而言,错误检测部145使用CRC(Cyclic Redundancy Check,循环冗余校验)码来检测FPGA部131的CRAM135的软错误。错误检测部145在例如输入输出装置130的初始化处理中或预定的每个维护期间等的定时对CRAM135的软错误进行校验。在FPGA部131具有自诊断CRAM135的存储区域的功能的情况下,错误检测部145可以从CRAM135接受存储区域的自诊断结果。错误检测部145将检测结果输出到异常判定部147。
作为一例,错误检测部145也可以使用对CRAM135的每帧附加的CRC码,以帧为单位进行CRC校验,从而进行软错误的检测。错误检测部145也可以对CRAM135中包含的多个帧依次进行CRC码的计算和附加的CRC码是否一致的CRC校验,当全部帧的CRC校验结束时,再次从最初的帧开始循环地进行CRC校验。
另外,错误检测部145检测出的软错误是指例如暂时发生的故障,而不是硬件发生的永久性故障。软错误也可以是暂时产生存储器的1位故障(1乱码)。另外,CRAM135也可以不具有基于ECC(Error Correction Code,纠错码)的纠错功能。
判定部149判定输入输出装置130是否被复用。更具体地说,判定部149从切换部151取得与采用冗余结构的其他输入输出装置130的切换部151相互进行通信的信息,基于该信息,判定输入输出装置130是否被复用。判定部149将输入输出装置130是否被复用的判定结果输出到异常判定部147。
异常判定部147基于从诊断部143、错误检测部145以及判定部149输入的数据,判定为输入输出装置130异常。但是,异常判定部147对于被检测出CRAM135的错误、且用户电路133的被编程的输入输出功能被诊断为正常的情况下的至少一部分,不判定为输入输出装置130异常。异常判定部147在判定为输入输出装置130异常的情况下,经由总线及网络50将检测结果发送至控制器100。
切换部151根据检测出作为主系统进行动作的输入输出装置130异常的情况,切换被复用的多个输入输出装置130中的作为主系统进行动作的输入输出装置130。切换部151经由总线与其他输入输出装置130的切换部151相互进行通信。切换部151在切换作为主系统进行动作的输入输出装置130的情况下,也可以经由总线,将用于调整各现场设备155和各输入输出装置130的各用户电路133的连接状态的切换信号发送给复用共用装置160。
功能变更部153根据FPGA部131的CRAM135的错误状况来控制用户电路133的输入输出功能的变更。例如,功能变更部153也可以根据被检测出CRAM135的错误的情况,禁止变更用户电路133的输入输出功能。更具体地说,功能变更部153根据从错误检测部145取得被检测出CRAM135的错误的结果的情况,向输入输出处理部142输出禁止变更用户电路133的输入输出功能的指示。
另外,输入输出控制部141也可以包括对输入输出装置130进行控制的程序、保存该程序的动作所需的数据等的ROM(Read Only Memory,只读存储器)、作为输入输出装置130的工作区域进行动作的RAM(Randam Access Memory,随机存取存储器)等。在这种情况下,例如,功能变更部153也可以在初始化处理中从ROM读出配置数据并写入FPGA部131的CRAM135,由此,进行CRAM135的初始设定,该初始化处理是对输入输出装置130接通电源或复位时等的初始化处理。
图2表示本实施方式的输入输出装置130的动作流程的一例。使用该动作流程,说明本实施方式的输入输出装置130检测软错误和/或将输入输出功能诊断为异常时的处理。
该动作流程例如也可以通过用户电路133从输入输出处理部142接受用于控制各现场设备155的控制数据,进行与被编程的输入输出功能对应的输入输出动作来开始。在图3以后的流程图的说明中也同样,省略重复的说明。
输入输出装置130a的诊断部143在预先确定的每个维护期间诊断用户电路133的输入输出功能(步骤S101),错误检测部145在预先确定的每个维护期间校验CRAM135的软错误(步骤S103)。
本实施方式的输入输出装置130a的异常判定部147,在输入输出装置130被复用、并且对于作为主系统进行动作的输入输出装置130a,用户电路133的输入输出功能被诊断为正常的情况下,以对于作为主系统进行动作的输入输出装置130a被检测出CRAM135的错误的情况为条件,判定为作为主系统进行动作的输入输出装置130a异常。
更具体而言,输入输出装置130a的异常判定部147从判定部149取得输入输出装置130是否被复用的判定结果(步骤S105),在是被复用这样的判定结果的情况下(步骤S105:是),以在步骤S103中被检测出CRAM135的软错误的情况为条件(步骤S107:是),判定为作为主系统进行动作的输入输出装置130a异常,将主系统切换为其他输入输出装置130b(步骤S109),结束本流程。另外,在步骤S107中,当在步骤S103中未被检测出CRAM135的软错误的情况下(步骤S107:否),在步骤S101中用户电路133的输入输出功能被诊断为异常的情况下(步骤S111:是),也判定为作为主系统进行动作的输入输出装置130a异常,将主系统切换为其他输入输出装置130b(步骤S109),结束本流程。另外,在步骤S111中,在步骤S101中用户电路133的输入输出功能未被诊断为异常的情况下(步骤S111:否),返回步骤S101。
这样,在将步骤S105以及步骤S107设为“是”而进入步骤S109的情况下,即输入输出装置130被复用、被检测出CRAM135的软错误的情况下,不考虑步骤S101中的输入输出功能的诊断结果。换而言之,作为主系统进行动作的输入输出装置130a在输入输出装置130被复用、被检测出CRAM135的软错误的情况下,即便是用户电路133的输入输出功能被诊断为正常,也设为判定为输入输出装置130a异常。由此,输入输出装置130能够维持运转率(可用性),并且能够极力抑制未检测故障率。
另外,进行输入输出装置130被复用这样的判定的情况,例如也可以指以采用冗余结构的2个输入输出装置130a、130b中的输入输出装置130a作为主系统进行动作为前提,另一方的输入输出装置130b及复用共用装置160的输入输出功能被诊断为正常的状态。另一方面,进行输入输出装置130没有被复用这样的判定的情况,例如也可以指以在采取冗余结构的2个输入输出装置130a、130b中的输入输出装置130a作为主系统进行动作为前提,另一方的输入输出装置130b以及复用共用装置160的至少一方的输入输出功能被诊断为异常的状态。
另外,本实施方式的输入输出装置130a的异常判定部147在被检测出CRAM135的错误、且用户电路133的输入输出功能被诊断为正常的情况下,以输入输出装置130a未被复用的情况为条件,不判定为输入输出装置130a异常。
更具体而言,输入输出装置130a的异常判定部147从判定部149取得输入输出装置130是否被复用的判定结果(步骤S105),在是没有被复用的判定结果的情况下(步骤S105:否),在步骤S101中用户电路133的输入输出功能未被诊断为异常的情况下(步骤S113:否),返回步骤S101。另外,当在步骤S103中被检测出CRAM135的软错误的情况下,功能变更部153也可以向输入输出处理部142输出用于禁止变更用户电路133的输入输出功能的指示。在该情况下,输入输出处理部142也可以变更向用户电路133输出的上述的控制数据,并且将该意思报告给控制器100。在步骤S113中,当在步骤S101中用户电路133的输入输出功能被诊断为异常时(步骤S113:是),判定为输入输出装置130a异常,向控制器100报告(步骤S115),结束本流程。
这样,在将步骤S105以及步骤S113设为“否”而返回到步骤S101的情况下,即在输入输出装置130未被复用、用户电路133的输入输出功能未被诊断为异常的情况下,不考虑步骤S103中的CRAM135的软错误的检查结果。换而言之,作为主系统进行动作的输入输出装置130a在输入输出装置130未被复用、用户电路133的输入输出功能未被诊断为异常的情况下,即便是被检测出CRAM135的软错误,也设为不判定为输入输出装置130a异常。由错误检测部145进行的CRC校验,由于即使在CRAM135中的一部分区域中发生了错误的情况下,也检测为CRAM135整体的软错误,因此假设为异常判定部147忽略与用户电路133的输入输出功能无关的CRAM135的区域中的错误。
作为比较例,在输入输出装置仅依赖于CRAM的CRC校验来检测故障的情况下,故障率会不必要地升高,运转率降低。与此相对,根据输入输出装置130的上述结构,能够抑制运转率像这样降低。
图3表示本实施方式的输入输出装置130的输入输出处理部142从控制器100接受到用户电路133的输入输出功能的变更指示的情况下的动作流程的一例。另外,在输入输出装置130中所需要的输入输出功能根据连接目的地的现场设备155的规范而预先决定。
输入输出装置130的输入输出处理部142从控制器100接收变更用户电路133的输入输出功能的控制数据(步骤S201)。在功能变更部153未从错误检测部145取得被检测出CRAM135的软错误这样的检测结果、且未对输入输出处理部142输出指示的情况下(步骤S203:否),输入输出处理部142变更用户电路133的输入输出功能(步骤S205),结束本流程。
另一方面,在步骤S203中,功能变更部153从错误检测部145取得被检测出CRAM135的软错误这样的检测结果、且对输入输出处理部142输出禁止变更用户电路133的输入输出功能的指示的情况下(步骤S203:是),输入输出处理部142禁止变更用户电路133的输入输出功能(步骤S207),将该意思通知给控制器100,结束本流程。控制器100例如由于现场设备155被变更或改变了现场设备155的设定等理由,必须变更输入输出装置130的规定的通道(输入输出端口)的输入输出功能。但是,在被检测出CRAM135的软错误、当变更输入输出功能时输入输出装置130有可能不正确地进行动作的情况下,输入输出装置130也可以如图3的动作流程那样不变更输入输出功能。
图4表示本实施方式的输入输出装置130的输入输出处理部142从控制器100接受到用户电路133的输入输出功能的变更指示的情况下的动作流程的其他例子。
输入输出装置130的输入输出处理部142从控制器100接收变更用户电路133的输入输出功能的控制数据(步骤S301)。即使功能变更部153从错误检测部145取得被检测出CRAM135的软错误这样的检测结果,输入输出处理部142也变更用户电路133的输入输出功能(步骤S303)。
功能变更部153在被检测出CRAM135的软错误、且由功能变更部153变更后的用户电路133的输入输出功能被诊断为异常的情况下,也可以将用户电路133的输入输出功能恢复为变更前的输入输出功能。更具体而言,在步骤S303中变更了用户电路133的输入输出功能之后,在功能变更部153从诊断部143取得用户电路133的输入输出功能异常这样的诊断结果的情况下(步骤S305:是),输入输出处理部142从功能变更部153被输入将用户电路133的输入输出功能恢复为变更前的输入输出功能的指示,按照该指示,恢复为在步骤S303中变更前的输入输出功能(步骤S307),并将该意思通知给控制器100,结束本流程。也可以不管在步骤S305中功能变更部153是否从错误检测部145取得检测到CRAM135的软错误这样的检测结果。此外,在步骤S305中功能变更部153没有从诊断部143取得用户电路133的输入输出功能异常这样的诊断结果的情况下(步骤S305:否),结束本流程。这样,即便是在变更用户电路133的输入输出功能之前被检测出CRAM135的软错误,也有可能在对变更后的用户电路133的输入输出功能没有影响的CRAM135的区域中产生软错误,因此输入输出装置130也可以如图4的动作流程那样,验证是否对变更了输入输出功能后的用户电路133的输入输出功能产生影响。
图5表示本实施方式的输入输出装置130的输入输出处理部142从控制器100接受到用户电路133的输入输出功能的变更指示的情况下的动作流程的另一例子。在本实施方式的输入输出装置130中,作为与使用图1至图4说明的多个实施方式的不同点,错误检测部145至少检测划分CRAM135而得到的多个部分区域各自的错误。
输入输出装置130的输入输出处理部142从控制器100接收变更用户电路133的输入输出功能的控制数据(步骤S401)。
功能变更部153也可以以在假设变更了用户电路133的输入输出功能的情况下在用户电路133的输入输出功能中使用的CRAM135的部分区域中、已经被检测出错误为条件,禁止变更用户电路133的输入输出功能。更具体地说,在功能变更部153从错误检测部145取得被检测出该部分区域的软错误这样的检测结果,并对输入输出处理部142输出禁止变更用户电路133的输入输出功能的指示的情况下(步骤S4031:是),输入输出处理部142禁止变更用户电路133的输入输出功能(步骤S407),将该意思通知给控制器100,结束本流程。另外,在步骤S403中功能变更部153没有取得上述的检测结果的情况下(步骤S403:否),输入输出处理部142变更用户电路133的输入输出功能(步骤S405),结束本流程。这样,在输入输出装置130例如像模拟区域和数字区域、输入区域和输出区域那样,将CRAM135划分为多个部分区域,在能够检测各个部分区域的软错误的情况下,也可以像图5的动作流程那样,在变更用户电路133的输入输出功能之前,预先验证是否对变更了输入输出功能后的用户电路133的输入输出功能产生影响。
如以上说明的那样,本实施方式的输入输出装置130具有电路结构通过设定配置数据而被编程的可编程电路,进行与被编程在可编程电路中的输入输出功能对应的输入输出动作。而且,本实施方式的输入输出装置130具备:诊断部143,对于输入输出装置130的可编程电路中的、被编程的输入输出功能进行诊断;错误检测部145,检测存储配置数据的配置存储区域的错误;以及异常判定部147,对于被检测出配置存储区域的错误、且被编程后的输入输出功能被诊断为正常的情况下的至少一部分,不判定为输入输出装置130异常。
作为比较例,在输入输出装置未被复用的单一运用中,以被检测出CRAM的软错误的情况为理由,检测为在输入输出装置中有异常,停止输入输出装置的运转时,输入输出装置的可用性降低。与此相对,根据具有上述结构的输入输出装置130,即使在单一运用中检测到CRAM135的软错误的情况下,如果能够诊断为用户电路133的输入输出功能正常,则也不判定为输入输出装置130异常。由此,本实施方式的输入输出装置130能够防止如比较例那样输入输出装置130的可用性降低。另一方面,在输入输出装置130是复用系统的情况下,即使在检测到CRAM135的软错误的情况下,也可以切换到其他系统(输入输出装置130),所以可以维持可用性。
可以参照流程图和框图对本发明的各种实施方式进行记载,其中,框可以表示(1)执行操作的过程的阶段,或(2)具有执行操作的作用的装置的部分。特定的阶段和部分可以通过专用电路、与保存在计算机可读介质上的计算机可读指令一起提供的可编程电路、和/或与保存在计算机可读介质上的计算机可读指令一起提供的处理器来实现。专用电路可以包括数字和/或模拟硬件电路,并且可以包括集成电路(IC)和/或分立电路。可编程电路可以包括可重构的硬件电路,其包含逻辑AND、逻辑OR、逻辑XOR、逻辑NAND、逻辑NOR及其他逻辑操作、诸如触发器、寄存器、现场可编程门阵列(FPGA)、可编程逻辑阵列(PLA)等存储器元件等。
计算机可读介质可以包括能够保存由适当的设备执行的指令的任意的有形设备,其结果为,具有保存于其中的指令的计算机可读介质具备包含为了创建用于执行在流程图或框图中所指定的操作的单元而能够被执行的指令的产品。作为计算机可读介质的一例,可以包括电子存储介质、磁存储介质、光存储介质、电磁存储介质、半导体存储介质等。作为计算机可读介质的更具体的示例,可以包括软(Floppy(注册商标))盘、磁盘、硬盘、随机存取存储器(RAM)、只读存储器(ROM)、可擦除可编程只读存储器(EPROM或闪存)、电可擦除可编程只读存储器(EEPROM)、静态随机存取存储器(SRAM)、压缩盘只读存储器(CD-ROM)、数字多功能盘(DVD)、蓝光(注册商标)盘、记忆棒、集成电路卡等。
计算机可读指令可以包括汇编指令、指令集架构(ISA)指令、机器指令、机器相关指令、微代码、固件指令、状态设定数据、及以一种或多种编程语言的任何组合编写的源代码或目标代码中的任一种,所述编程语言包括诸如Smalltalk(注册商标)、JAVA(注册商标)、C++等面向对象的编程语言、及诸如“C”编程语言或类似的编程语言的现有的面向过程的编程语言。
计算机可读指令可以经由本地或局域网(LAN)、诸如因特网等广域网(WAN)提供给通用计算机、专用计算机或其他计算机等的能够编程的数据处理装置的处理器或可编程电路,为了创建用于执行在流程图或框图中所指定的操作的单元,而执行计算机可读指令。作为处理器的示例,包括计算机处理器、处理单元、微处理器、数字信号处理器、控制器、微控制器等。
图6表示可以全部或部分地实现本发明的多个方式的计算机2200的示例。安装于计算机2200的程序能够使计算机2200作为与本发明的实施方式所涉及的装置相关联的操作或该装置的一个或多个部分发挥功能,或者能够使计算机2200执行该操作或该一个或多个部分,和/或能够使计算机200执行本发明的实施方式所涉及的过程或该过程的阶段。这种程序可由CPU2212执行,以使计算机2200执行与本说明书所记载的流程图及框图的框中的一些或全部相关联的特定操作。
基于本实施方式的计算机2200包括CPU2212、RAM2214、图形控制器2216和显示设备2218,它们通过主机控制器2210相互连接。计算机2200还包括输入/输出单元,诸如通信接口2222、硬盘驱动器2224、DVD-ROM驱动器2226和IC卡驱动器,它们经由输入/输出控制器2220与主机控制器2210连接。计算机还包括传统的输入/输出单元,诸如ROM2230和键盘2242,它们经由输入/输出芯片2240与输入/输出控制器2220连接。
CPU2212按照保存在ROM2230和RAM2214内的程序进行动作,由此控制各单元。图形控制器2216取得在RAM2214内所提供的帧缓冲器等或图形控制器2216自身中由CPU2212生成的图像数据,并使图像数据显示在显示设备2218上。
通信接口2222经由网络与其他电子设备进行通信。硬盘驱动器2224保存由计算机2200内的CPU2212使用的程序和数据。DVD-ROM驱动器2226从DVD-ROM2201读取程序或数据,并经由RAM2214向硬盘驱动器2224提供程序或数据。IC卡驱动器从IC卡读取程序和数据,和/或将程序和数据写入到IC卡。
ROM2230在其中保存在激活时由计算机2200执行的引导程序等、和/或依赖于计算机2200的硬件的程序。输入/输出芯片2240还可以经由并行端口、串行端口、键盘端口、鼠标端口等将各种输入/输出单元连接到输入/输出控制器2220。
程序由诸如DVD-ROM2201或IC卡的计算机可读介质提供。程序被从计算机可读介质读取,安装于也是计算机可读介质的示例的硬盘驱动器2224、RAM2214或ROM2230,并由CPU2212执行。编写在这些程序中的信息处理被计算机2200读取,并提供程序与上述各种类型的硬件资源之间的协作。装置或方法可以通过按照计算机2200的使用而实现信息的操作或处理来构成。
例如,在计算机2200与外部设备之间执行通信的情况下,CPU2212可以执行加载到RAM2214中的通信程序,并基于编写在通信程序中的处理,对通信接口2222命令通信处理。通信接口2222在CPU2212的控制下,读取保存在诸如在RAM2214、硬盘驱动器2224、DVD-ROM2201或IC卡的记录介质内所提供的发送缓冲处理区域中的发送数据,并将所读取的发送数据发送到网络,或者将从网络接收到的接收数据写入到在记录介质上所提供的接收缓冲处理区域等。
另外,CPU2212也可以将保存在诸如硬盘驱动器2224、DVD-ROM驱动器2226(DVD-ROM2201)、IC卡等外部记录介质中的文件或数据库的全部或必要的部分读取到RAM2214,并对RAM2214上的数据执行各种类型的处理。然后,CPU2212将经处理的数据回写到外部记录介质。
各种类型的信息,诸如各种类型的程序、数据、表和数据库可以保存于记录介质,并接受信息处理。CPU2212可以对从RAM2214读取的数据执行各种类型的处理,并将结果回写到RAM2214,所述处理包括在本公开的各处所记载的由程序的指令序列指定的各种类型的操作、信息处理、条件判断、条件分支、无条件分支、信息的检索/置换等。另外,CPU2212也可以检索记录介质内的文件、数据库等中的信息。例如,在具有分别与第二属性的属性值相关联的第一属性的属性值的多个条目保存在记录介质内的情况下,CPU2212可以从该多个条目中检索指定第一属性的属性值的、与条件一致的条目,并读取保存在该条目内的第二属性的属性值,由此取得与满足预先确定的条件的第一属性相关联的第二属性的属性值。
以上所说明的程序或软件模块可以保存在计算机2200上或计算机2200附近的计算机可读介质中。另外,在连接到专用通信网络或因特网的服务器系统内所提供的诸如硬盘或RAM的记录介质也可用作计算机可读介质,由此经由网络向计算机2200提供程序。
以上,使用实施方式对本发明进行了说明,但本发明的技术范围并不限定于上述实施方式所记载的范围。对于本领域技术人员显而易见的是,可以对上述实施方式加以各种变更或改良。根据权利要求书的记载可以明确,加以这样的变更或改良所得的方式也能够包含在本发明的技术范围内。
例如,控制系统可以是被容纳在单个壳体中的计算机。即,控制器也可以通过计算机的处理器上的程序执行来实现,各输入输出装置也可以作为计算机的I/O装置来实现。另外,控制器也可以作为由1个或多个处理器执行的虚拟机来实现。在这样的结构中,控制系统不具备作为通用或专用的网络的网络,控制器以及输入输出装置可以通过连接处理器以及I/O装置之间的内存控制集线器(Memory controller hub)以及I/O控制集线器等芯片组来连接。
应当注意,对于在权利要求书、说明书和附图中示出的装置、系统、程序和方法中的动作、过程、步骤和阶段等各处理的执行顺序,只要没有特别明示为“之前”、“先”等,并且只要不是将在前的处理的输出用于在后的处理,则能够以任意的顺序实现。关于权利要求书、说明书及附图中的动作流程,即使为了方便而使用“首先”、“接着”等进行了说明,也并不意味着必须以该顺序实施。
标号说明
10控制系统、20设施、50网络、100控制器、130、130a、130b输入输出装置、131FPGA部、133用户电路、135CRAM、141输入输出控制部、142输入输出处理部、143诊断部、145错误检测部、147异常判定部、149判定部、151切换部、153功能变更部、155现场设备、160复用共用装置、2200计算机、2201DVD-ROM、2210主机控制器、2212CPU、2214RAM、2216图形控制器、2218显示设备、2220输入/输出控制器、2222通信接口、2224硬盘驱动器、2226DVD-ROM驱动器、2230ROM、2240输入/输出芯片、2242键盘。

Claims (10)

1.一种装置,具备:
诊断部,对输入输出装置中的被编程后的输入输出功能进行诊断,该输入输出装置具有电路结构通过设定配置数据而被编程的可编程电路,并进行与被编程在所述可编程电路中的所述输入输出功能对应的输入输出动作;
错误检测部,检测存储所述配置数据的配置存储区域的错误;以及
异常判定部,对于被检测出所述配置存储区域的错误、且被编程后的所述输入输出功能被诊断为正常的情况下的至少一部分,不判定为所述输入输出装置异常。
2.根据权利要求1所述的装置,其中,
还具备判定部,该判定部判定所述输入输出装置是否被复用,
在被检测出所述配置存储区域的错误、且被编程后的所述输入输出功能被诊断为正常的情况下,所述异常判定部以所述输入输出装置未被复用的情况为条件,不判定为所述输入输出装置异常。
3.根据权利要求2所述的装置,其中,
在所述输入输出装置被复用,并且对于作为主系统进行动作的所述输入输出装置,被编程后的所述输入输出功能被诊断为正常的情况下,所述异常判定部以对于作为主系统进行动作的所述输入输出装置被检测出所述配置存储区域的错误的情况为条件,判定为作为主系统进行动作的所述输入输出装置异常。
4.根据权利要求3所述的装置,其中,
还具备切换部,该切换部根据被检测出作为所述主系统进行动作的所述输入输出装置异常的情况,切换被复用的多个输入输出装置中作为主系统进行动作的输入输出装置。
5.根据权利要求1至4中任一项所述的装置,其中,
还具有功能变更部,该功能变更部根据所述配置存储区域的错误状况,对所述可编程电路的所述输入输出功能的变更进行控制。
6.根据权利要求5所述的装置,其中,
所述功能变更部根据被检测出所述配置存储区域的错误的情况,禁止变更所述可编程电路的所述输入输出功能。
7.根据权利要求5所述的装置,其中,
在被检测出所述配置存储区域的错误、并且由所述功能变更部变更后的所述输入输出功能被诊断为异常的情况下,所述功能变更部将所述可编程电路的所述输入输出功能恢复为变更前的所述输入输出功能。
8.根据权利要求5所述的装置,其中,
所述错误检测部对划分了所述配置存储区域得到的多个部分区域各自中的错误进行检测,
所述功能变更部以在假设变更了所述可编程电路的所述输入输出功能的情况下在所述输入输出功能中使用的所述部分区域中已经被检测出错误的情况为条件,禁止变更所述可编程电路的所述输入输出功能。
9.一种方法,包括:
诊断阶段,对输入输出装置中的被编程后的输入输出功能进行诊断,该输入输出装置具有电路结构通过设定配置数据而被编程的可编程电路,并进行与被编程在所述可编程电路中的所述输入输出功能对应的输入输出动作;
错误检测阶段,检测存储所述配置数据的配置存储区域的错误;以及
异常判定阶段,对于被检测出所述配置存储区域的错误、且被编程后的所述输入输出功能被诊断为正常的情况下的至少一部分,不判定为所述输入输出装置异常。
10.一种计算机可读存储介质,存储了程序,所述程序使计算机执行如下步骤:
诊断步骤,对输入输出装置中的被编程后的输入输出功能进行诊断,该输入输出装置具有电路结构通过设定配置数据而被编程的可编程电路,并进行与被编程在所述可编程电路中的所述输入输出功能对应的输入输出动作;
错误检测步骤,检测存储所述配置数据的配置存储区域的错误;以及
异常判定步骤,对于被检测出所述配置存储区域的错误、且被编程后的所述输入输出功能被诊断为正常的情况下的至少一部分,不判定为所述输入输出装置异常。
CN202111268587.0A 2020-10-30 2021-10-29 装置、方法以及计算机可读存储介质 Pending CN114442516A (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2020183150A JP7338608B2 (ja) 2020-10-30 2020-10-30 装置、方法およびプログラム
JP2020-183150 2020-10-30

Publications (1)

Publication Number Publication Date
CN114442516A true CN114442516A (zh) 2022-05-06

Family

ID=81362665

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202111268587.0A Pending CN114442516A (zh) 2020-10-30 2021-10-29 装置、方法以及计算机可读存储介质

Country Status (3)

Country Link
US (1) US11687397B2 (zh)
JP (1) JP7338608B2 (zh)
CN (1) CN114442516A (zh)

Family Cites Families (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4072775B2 (ja) 2005-01-28 2008-04-09 横河電機株式会社 電源電圧監視システム
JP5080140B2 (ja) * 2007-06-13 2012-11-21 株式会社日立製作所 I/oデバイス切り替え方法
JP5499950B2 (ja) * 2010-06-30 2014-05-21 富士通株式会社 制御装置、情報処理装置、制御プログラム、及び制御方法
JP5904189B2 (ja) 2013-10-29 2016-04-13 横河電機株式会社 信号処理装置
JP6579479B2 (ja) 2015-02-03 2019-09-25 横河電機株式会社 入出力モジュール
JP6288609B2 (ja) 2015-11-30 2018-03-07 横河電機株式会社 二重化制御装置
JP6880795B2 (ja) * 2017-02-08 2021-06-02 オムロン株式会社 制御装置およびその制御方法

Also Published As

Publication number Publication date
US11687397B2 (en) 2023-06-27
US20220138033A1 (en) 2022-05-05
JP7338608B2 (ja) 2023-09-05
JP2022073271A (ja) 2022-05-17

Similar Documents

Publication Publication Date Title
JP5014899B2 (ja) 再構成可能デバイス
US20060200278A1 (en) Generic software fault mitigation
US7706900B2 (en) Control apparatus with fast I/O function, and control method for control data thereof
US20070222630A1 (en) Power supply monitoring device
WO2009155993A1 (en) A safety system for a machine
JP2006157482A (ja) プログラマブル・ロジック・デバイス、情報処理装置、プログラマブル・ロジック・デバイスの制御方法
EP3306422B1 (en) Arithmetic device and control apparatus
KR20190058310A (ko) 반도체 장치
US10228664B2 (en) Field device for determining or monitoring a process variable in automation technology
US11048565B2 (en) Control system and control apparatus
JP6175788B2 (ja) マイクロプログラムを更新可能な電子機器
US10838815B2 (en) Fault tolerant and diagnostic boot
JP2013175118A (ja) 制御装置、及びそのメモリ故障検出方法、その自己診断方法
CN114442516A (zh) 装置、方法以及计算机可读存储介质
JP2017204664A (ja) プログラマブルデバイス及び制御装置
JP4102814B2 (ja) 入出力制御装置,情報制御装置及び情報制御方法
CN114513507A (zh) 接口装置、接口方法和记录有接口程序的记录介质
JP7077644B2 (ja) 制御システム、診断装置、診断方法、および診断プログラム
JP5348418B2 (ja) コントローラ
CN100530119C (zh) 同步监控提供辅助基本输入/输出系统码的方法及相关装置
JP2020064340A (ja) 制御システム
JP2020197934A (ja) 制御システム、プログラマブルロジックコントローラおよび情報処理方法
JP2014098985A (ja) 安全スレーブユニット、その制御方法、その制御プログラム、および安全制御システム
EP4033313A1 (en) Control device and control method
JP2007058549A (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