控制装置及编辑装置的制作方法

文档序号:16755967发布日期:2019-01-29 17:21阅读:130来源:国知局
控制装置及编辑装置的制作方法

本发明涉及执行控制程序而对被控制装置进行控制的控制装置和能够对控制程序进行编辑的编辑装置。



背景技术:

在工业机械的领域中利用执行控制程序而对被控制装置进行控制的可编程逻辑控制器(以下称为plc(programmablelogiccontroller))等控制装置。在对控制装置的动作进行变更的情况下,需要对控制程序进行编辑,对控制装置执行的控制程序进行改写。

在专利文献1中公开了,能够不使控制程序停止而对执行中的控制程序进行改写的控制装置。通过该结构,能够提高控制装置及被控制装置的动作效率。该控制装置对改写前后的控制程序和改写控制程序时执行的控制程序的部分进行临时存储,在对控制程序进行改写之后删除临时存储的信息。

专利文献1:日本特开2005-309916号公报



技术实现要素:

在上述专利文献1中没有记载在改写控制程序之后,恢复至原始的控制程序的复原功能。在改写控制程序之后,需要对控制程序的内容进行变更时,有时恢复至改写前的控制程序。在专利文献1所记载的控制装置中,存在下述问题,即,为了对控制程序进行复原,需要在以手动操作改写至原始状态之后,对执行中的控制程序进行改写,耗费工夫。

本发明就是鉴于上述情况而提出的,其目的在于得到一种控制装置,该控制装置能够在改写控制程序之后容易地将控制程序恢复至改写前的状态。

为了解决上述的课题,达到目的,本发明涉及的控制装置的特征在于,具有:第1存储部,其对包含程序步及转移的信息的控制程序进行存储;第2存储部;执行部,其执行在第1存储部存储的控制程序,对被控制装置进行控制;通信部,其在执行控制程序的过程中,接收执行中改写指示和差异信息,该执行中改写指示对在第1存储部存储的控制程序进行改写,该差异信息示出控制程序的变更部分;以及改写控制部,其对控制程序进行改写。改写控制部在每次接收执行中改写指示时,将备份信息与示出多个备份信息各自的顺序的顺序信息一起存储于第2存储部,基于差异信息对控制程序进行改写,该备份信息包含改写前的控制程序、差异信息和示出控制程序中的执行中的程序步的激活信息。

发明的效果

本发明涉及的控制装置实现能够在改写控制程序之后容易地将控制程序恢复至改写前的状态这样的效果。

附图说明

图1是表示本发明的实施方式1涉及的控制装置及编辑装置的结构的图。

图2是图1所示的控制装置执行的控制程序的说明图。

图3是表示实现图1所示的控制装置及编辑装置的功能的处理电路的一个例子的图。

图4是表示图1所示的编辑装置进行的控制程序的编辑的一个例子的图。

图5是表示对图1所示的控制装置执行的控制程序进行改写的动作的时序图。

图6是表示图1所示的编辑装置显示的执行中改写指示画面的图。

图7是表示图1所示的编辑装置显示的确认画面的图。

图8是表示在图1所示的改写控制部进行的备份处理中存储于第2存储部的信息的图。

图9是表示在图5示出的改写动作中存储于第1存储部及第2存储部的信息的具体例的图。

图10是表示对本发明的实施方式2涉及的控制装置执行的控制程序进行复原的动作的时序图。

图11是表示本发明的实施方式2涉及的编辑装置显示的对复原功能进行选择的画面的图。

图12是表示从图11所示的对复原功能进行选择的画面链接的复原执行画面的图。

图13是表示从图12所示的程序显示按钮链接的复原程序显示画面的图。

图14是表示图12所示的复原执行画面在执行复原后得到更新而显示的复原执行画面的图。

图15是表示在图10示出的复原动作中存储于第1存储部及第2存储部的信息的具体例的图。

图16是表示在图10所示的动作中复原处理发生执行错误的条件的图。

图17是表示在进行图10的复原处理时控制装置执行的动作的流程图。

图18是表示本发明的实施方式1及实施方式2的效果的一个例子的图。

具体实施方式

下面,基于附图对本发明的实施方式涉及的控制装置及编辑装置进行详细说明。此外,本发明并不限定于本实施方式。

实施方式1.

图1是表示本发明的实施方式1涉及的控制装置1及编辑装置3的结构的图。控制装置1执行控制程序而对被控制装置2进行控制。控制装置1例如是plc等,对加工装置、检查装置等在生产现场使用的被控制装置2进行控制。编辑装置3是对控制装置1执行的控制程序进行编辑的装置。编辑装置3是pc(personalcomputer)等信息处理装置,执行对控制程序进行编辑的编辑应用程序。

控制装置1具有:第1存储部11、执行部12、通信部13、改写控制部14、第2存储部15和复原控制部16。第1存储部11对控制程序进行存储。执行部12通过将在第1存储部11存储的控制程序读出、执行,从而对被控制装置2进行控制。通信部13是与编辑装置3等外部装置的通信接口。改写控制部14对在第1存储部11存储的控制程序的改写进行控制。改写控制部14在每次经由通信部13从编辑装置3接收执行中改写指示时,根据与执行中改写指示一起接收的差异信息,对在第1存储部11存储的控制程序进行改写。

差异信息示出控制程序的变更部分。改写控制部14在对控制程序进行改写之前,将执行中的控制程序备份于第2存储部15,并且将对已备份的控制程序进行复原时所需的信息作为备份信息而存储于第2存储部15。备份信息例如包括变更前的控制程序、差异信息和示出控制程序中的执行中的部位的激活信息。改写控制部14既可以将从编辑装置3接收到的差异信息直接作为备份信息进行存储,也可以将通过对差异信息的数据格式进行变换等基于差异信息而生成的信息作为备份信息进行存储。复原控制部16使用在第2存储部15存储的备份信息对控制程序进行复原。改写控制部14在每次进行控制程序的改写时生成备份信息,与表示备份信息的生成顺序的顺序信息一起存储于第2存储部15。因此,复原控制部16能够进行多次复原,能够在每次进行复原时将控制程序逐一恢复至之前的状态。

编辑装置3具有:通信部31、编辑部32、输入输出部33和存储部34。通信部31是与控制装置1等外部装置的通信接口。编辑部32对控制装置1执行的控制程序进行编辑。输入输出部33具有输入部的功能和输出部的功能,该输入部生成与用户的输入操作相应的输入信号,该输出部对显示画面等进行输出。输入输出部33例如由兼具输入部的功能和输出部的功能的触摸屏构成,或由鼠标等指点设备、键盘这样的输入装置以及显示装置构成。存储部34对编辑装置3执行的编辑程序、在编辑程序的执行过程中生成的数据等进行存储。编辑部32能够基于输入输出部33生成的输入信号,对控制装置1执行的控制程序进行编辑。

图2是图1所示的控制装置1执行的控制程序的说明图。控制程序prog1由程序块bl0构成。在图2的例子中,1个控制程序由1个程序块构成,但有时1个控制程序也由多个程序块构成。控制程序prog1是程序块bl0由多个程序步(step)和作为跳转条件的多个转移(transition)构成的sfc(sequentialfunctionchart:顺序功能图)程序。程序步示出控制装置1进行的一系列动作中的各个动作单位,各程序步通过转移连结。在控制装置1执行sfc程序时,从编号小的程序块起依次执行,反复进行程序步的执行和转移是否成立的判定,在转移成立的情况下,依次执行下一个程序步。在图2所示的控制程序prog1的情况下,控制装置1在执行程序块bl0的程序步s0之后,对转移tr0进行判定,在转移tr0成立的情况下,接着执行程序步s1。随后,同样地,控制装置1进行转移tr1的判定、程序步s2的执行、转移tr2的判定、程序步s3的执行以及转移tr3的判定,执行至最后的程序步s4为止。在转移不成立的情况下,控制装置1结束执行中的程序块的处理。

图3是表示实现图1所示的控制装置1及编辑装置3的功能的处理电路92的一个例子的图。图3所示的处理电路92具有存储器93和处理器94。控制装置1的第1存储部11、执行部12、改写控制部14、第2存储部15以及复原控制部16、编辑装置3的编辑部32以及存储部34通过由处理器94将在存储器93中存储的计算机程序读出、执行而实现。存储器93例如是ram(randomaccessmemory)、rom(readonlymemory)、闪存等非易失性或易失性的半导体存储器、磁盘、软盘、光盘等存储装置。处理器94是cpu(centralprocessingunit),也称为中央处理装置、处理装置、运算装置、微处理器、微型计算机、dsp(digitalsignalprocessor)等。此外,第1存储部11和第2存储部15既可以通过1个存储装置实现,也可以通过多个存储装置实现,该第1存储部11是对执行部12执行的控制程序进行存储的区域,该第2存储部15是对备份信息进行存储的区域。

另外,关于控制装置1的各功能,也可以将一部分通过专用的硬件实现,将一部分通过软件或固件实现。这样,能够通过硬件、软件、固件、或它们的组合来实现上述的各功能。

接下来,针对图1所示的控制装置1及编辑装置3进行的执行中改写使用具体例进行说明。图4是表示图1所示的编辑装置3进行的控制程序prog1的编辑的一个例子的图。

编辑装置3对控制程序prog1的第1版本进行编辑而生成第2版本,在向控制装置1作出了执行中改写的指示之后,进一步对第2版本进行编辑而生成第3版本,向控制装置1作出执行中改写的指示。然后,编辑装置3对将控制程序prog1的第3版本改写为第2版本的复原进行指示,然后,对将控制程序prog1的第2版本改写为第1版本的复原进行指示。

控制程序prog1的第2版本是进行了对第1版本追加程序步s5以及程序步s6的变更而得到的,第3版本是进行了对第2版本追加程序步s7以及程序步s8的变更而得到的。在控制装置1接收到将控制程序prog1的第1版本改写为第2版本的执行中改写指示时,控制装置1的执行部12正在执行控制程序prog1的程序块bl0的程序步s0。在控制装置1接收到将控制程序prog1的第2版本改写为第3版本的执行中改写指示时,控制装置1的执行部12正在执行程序步s1。另外,控制程序prog1的从第1版本编辑成第2版本时的变更部分是地址“20”至“31”,在从第2版本编辑成第3版本时的变更部分是地址“32”至“41”。

用户能够使用编辑装置3,对已有的程序步的动作内容、将程序步之间连接的转移进行编辑、或者对新的程序步及转移进行追加,从而对控制程序prog1进行编辑。新的程序步及转移的追加通过下述方式进行,即,在画面上对表示程序步的对象即方形块、表示转移的对象即横线等对象进行拖放操作而进行排列。

图5是表示对图1所示的控制装置1执行的控制程序进行改写的动作的时序图。编辑装置3的编辑部32根据用户的操作,对控制程序prog1的第1版本进行编辑而生成第2版本(步骤s101)。如果控制程序prog1的编辑结束,则编辑装置3的编辑部32向控制装置1发送执行中改写指示、和表示控制程序prog1的第1版本与第2版本的差异的差异信息(步骤s102)。

图6是表示图1所示的编辑装置3显示的执行中改写指示画面40的图。该执行中改写指示画面40是能够在编辑部32结束控制程序prog1的编辑之后,显示于输入输出部33的显示部的画面。如果从显示于执行中改写指示画面40的菜单中选择“程序变换+执行中改写”,则编辑部32将在画面上编辑后的对象所表示的动作变换为程序,并且生成表示控制程序prog1的第1版本与第2版本的程序的差异的差异信息。

在选择“程序变换+执行中改写”之后,在复原功能为无效的情况下,编辑部32也可以使复原功能选择画面42显示于输入输出部33。复原功能选择画面42是接收将复原功能设为有效的操作的画面。

图7是表示图1所示的编辑装置3显示的确认画面43的图。当在图6所示的复原功能选择画面42中选择“是”时、或者在复原功能预先为有效的情况下,在执行中改写指示画面40中刚刚选择“程序变换+执行中改写”之后,显示图7所示的确认画面43。确认画面43示出与执行中改写相关的当前设定的概要,如果对选项设定按钮进行操作,则能够对与执行中改写相关的设定进行变更。如果在确认画面43中对“是”按钮44进行操作,则确定进行执行中改写,编辑部32将执行中改写指示和差异信息发送至控制装置1。

返回图5的说明。如果通信部13接收到由编辑装置3发送的执行中改写指示以及差异信息,则控制装置1的改写控制部14在对控制程序prog1进行改写之前,执行备份处理#1(步骤s103)。具体而言,改写控制部14在每次接收执行中改写指示时,将备份信息与示出多个备份信息各自的顺序的顺序信息一起存储于第2存储部15。

图8是表示在图1所示的改写控制部14进行的备份处理中存储于第2存储部15的信息的图。改写控制部14将备份信息与示出多个备份信息各自的顺序的顺序信息一起存储于第2存储部15。备份信息包含变更前的控制程序prog1、表示控制程序prog1中的执行中的程序步的激活信息和用于对控制程序prog1的变更部分进行确定的差异信息。

返回图5的说明。如果备份处理#1完成,则改写控制部14基于在步骤s102接收到的差异信息,执行控制程序prog1的执行中改写#1(步骤s104)。根据步骤s104的执行中改写#1,执行部12执行的控制程序prog1从第1版本改写为第2版本。如果执行中改写#1结束,则改写控制部14将通知执行中改写#1已完成的完成通知发送至编辑装置3(步骤s105)。

编辑装置3的编辑部32如果接收到完成通知,则读入控制程序而进行显示,接收用户针对所显示的控制程序的操作。编辑部32根据用户的操作,对控制程序prog1的第2版本进行编辑而生成第3版本(步骤s106)。如果控制程序prog1的编辑结束,则编辑部32向控制装置1发送执行中改写指示、和表示控制程序prog1的第2版本与第3版本的差异的差异信息(步骤s107)。

如果通信部13接收到编辑装置3发送的执行中改写指示以及差异信息,则控制装置1的改写控制部14在对控制程序prog1进行改写之前,执行备份处理#2(步骤s108)。具体而言,改写控制部14在每次接收执行中改写指示时,将备份信息与示出多个备份信息各自的顺序的顺序信息一起存储于第2存储部15。此时,改写控制部14没有将在备份处理#1中向第2存储部15存储的备份信息覆盖,在残留有备份处理#1的备份信息的状态下,追加存储备份处理#2的备份信息。

在备份处理#2完成之后,改写控制部14基于在步骤s107接收到的差异信息,进行控制程序prog1的执行中改写#2(步骤s109)。根据步骤s109的执行中改写#2,执行部12执行的控制程序prog1从第2版本改写为第3版本。如果执行中改写#2结束,则改写控制部14将通知执行中改写#2已完成的完成通知发送至编辑装置3(步骤s110)。

图9是表示在图5示出的改写动作中存储于第1存储部11及第2存储部15的信息的具体例的图。

在对控制程序prog1进行变更之前,执行中的控制程序prog1以程序块为单位存储于控制装置1的第1存储部11。在第2存储部15中准备的对变更前的控制程序进行转存的区域尚未存储控制程序prog1。此时,尚不存在备份信息,因此在对备份信息进行存储的区域存储有值“0”。

在执行中改写#1之前进行的备份处理#1中,改写控制部14将备份信息与示出多个备份信息各自的顺序的顺序信息一起存储于第2存储部15,该备份信息包含在第1存储部11存储的变更前的控制程序prog1中的已被变更的部分的程序。备份信息包含:变更前的控制程序prog1、用于对控制程序prog1的变更部分进行确定的信息即差异信息、和表示控制程序prog1中的执行中的部分的激活信息。具体而言,就变更前的控制程序prog1而言,将通过执行中改写#1而改写的部分的程序即程序块bl0程序存储于第2存储部15,作为备份信息。差异信息在图9所示的例子中,是程序名、程序块名、程序步名、变更部分的开始地址以及结束地址。激活信息对于执行中的程序步而成为值“1”,在不是执行中的情况下成为值“0”。除了控制程序prog1、差异信息、以及激活信息以外,在备份信息中还包含对变更前的控制程序prog1的改写对象部分即程序块bl0程序进行了存储的转存区域的起始地址以及末尾地址。另外,顺序信息只要是表示各个备份信息的顺序的信息即可,对内容没有限制。顺序信息是各个备份信息的日期信息、管理编号等。另外,也可以按照备份信息的生成顺序预先确定对备份信息进行存储的区域。在该情况下,存储有各个备份信息的区域本身成为顺序信息。

具体而言,在图9所示的例子中,在执行中改写#1之前执行的备份处理#1中,改写控制部14使变更前的控制程序prog1的程序块bl0程序存储于第2存储部15的转存区域。改写控制部14将起始地址“10000”以及末尾地址“10050”存储于第2存储部15,作为对变更前的控制程序prog1的程序块bl0程序进行了存储的存储区域的地址,将程序名prog1、程序块名bl0、程序步名s5、s6存储于第2存储部15,作为表示变更部分的差异信息。在这里,在第2存储部15的转存区域存储的控制程序prog1是图4所示的第1版本,不包含变更部分,变更部分的开始地址、结束地址均为0不变。另外,改写控制部14对生成备份信息的日期即“20161115”进行存储,作为生成备份信息的日期信息。此外,在这里,设为日期信息,但是为了更详细地对生成备份信息的时刻进行确定,也可以设为日期时间信息。另外,改写控制部14将“1”写入至第2存储部15,作为管理编号的最大值。并且,由于执行中的控制程序prog1正在执行程序块bl0的程序步0,因此改写控制部14对程序步0的值为“1”的激活信息进行存储。在对上述的备份信息进行存储之后,改写控制部14进行执行中改写#1,将变更后的bl0程序写入至第1存储部11的对执行中的控制程序prog1进行存储的区域即第1存储部11。

接下来,在执行中改写#2之前执行的备份处理#2中,改写控制部14将变更前的控制程序prog1的程序块bl0程序存储于第2存储部15的转存区域。此时,改写控制部14将变更前的程序块bl0程序存储于与通过备份处理#1而存储的程序块bl0程序不同的存储区域。改写控制部14对起始地址“10050”以及末尾地址“10100”进行存储,作为对变更前的控制程序prog1的程序块bl0程序进行了存储的存储区域的地址,对程序名prog1、程序块名bl0、程序步名s7、s8以及变更部分的个数“1”、开始地址“20”、结束地址“31”进行存储,作为表示变更部分的差异信息。另外,改写控制部14对生成备份信息的日期即“20161116”进行存储,作为生成备份信息的日期信息。另外,改写控制部14将管理编号的最大值更新为“2”。并且,由于执行中的控制程序prog1正在执行程序块bl0的程序步1,因此改写控制部14生成程序步1的值为“1”的激活信息而进行存储。在对上述备份信息进行存储之后,改写控制部14进行执行中改写#2,将变更后的bl0程序写入至第1存储部11的对执行中的控制程序prog1进行存储的区域即第1存储部11。

如上所说明的那样,根据本发明的实施方式1,控制装置1在执行控制程序prog1的过程中,在每次接收执行中改写指示时,对备份信息进行存储。备份信息包含变更前的控制程序、用于对控制程序的变更部分进行确定的差异信息、和示出控制程序中的执行中的程序步的激活信息。备份信息与示出多个备份信息各自的顺序的顺序信息一起进行存储。因此,在对控制程序prog1进行改写之后,能够使用备份信息多次进行恢复至原始状态的复原处理。此时,在备份信息中包含激活信息,因此在复原之后,控制程序prog1的执行状态也能够恢复至原始状态。

实施方式2.

图10是表示对本发明的实施方式2涉及的控制装置1执行的控制程序进行复原的动作的时序图。本实施方式2涉及的控制装置1及编辑装置3的结构与实施方式1相同,因此在这里省略说明。此外,以下说明的复原处理在实施方式1中,设为在执行中改写#1以及执行中改写#2执行之后进行。因此,在复原处理的开始时刻,设为将通过备份处理#1以及备份处理#2而生成的2个备份信息存储于控制装置1的第2存储部15。

如果用户使用编辑装置3的输入输出部33选择了复原功能(步骤s201),则编辑部32将对备份信息进行请求的消息即数据请求发送至控制装置1(步骤s202)。

如果控制装置1接收到数据请求,则经由通信部13输入至复原控制部16。复原控制部16取得在第2存储部15存储的备份信息(步骤s203)。在多个备份信息存储于第2存储部15的情况下,复原控制部16取得多个备份信息。复原控制部16将取得的备份信息发送至编辑装置3(步骤s204)。

编辑装置3的编辑部32使用从控制装置1取得的备份信息对复原执行画面进行显示(步骤s205)。

图11是表示本发明的实施方式2涉及的编辑装置3显示的对复原功能进行选择的功能选择画面45的图。该功能选择画面45包含复原执行菜单46,在图10的步骤s201中,通过用户对复原执行菜单46进行操作,从而选择复原功能,发送步骤s202的数据请求。

在对复原执行菜单46进行操作之后,在备份信息未存储于控制装置1的情况下,编辑部32使用输入输出部33的显示装置,对复原错误画面47进行显示。复原错误画面47包含对备份信息不存在于控制装置1内进行通知的消息。

图12是表示从图11所示的对复原功能进行选择的画面链接的复原执行画面48-1的图。在对图11所示的复原执行菜单46进行操作之后,如果从控制装置1取得备份信息,则编辑部32对复原执行画面48-1进行显示。复原执行画面48-1包含:从控制装置1取得的多个备份信息:程序显示按钮49,其用于显示各个备份信息所包含的控制程序;以及复原执行按钮50,其用于对复原的执行进行指示。

图12所示的复原执行画面48-1包含2个备份信息。各备份信息包含表示各个备份信息的顺序的“no.”、表示作为对象的控制程序的“程序名”、生成备份信息的“日期”、通过改写而变更的“变更部分”和用于对进行复原时改写的控制程序的内容进行显示的“程序显示”按钮。就备份信息而言,表示顺序的数越大则越新,最新的备份信息成为复原对象。在图12的例子中,第2个备份信息为复原对象。

图13是表示从图12所示的程序显示按钮49链接的复原程序显示画面51的图。如果按下图12所示的程序显示按钮49,则编辑部32对复原程序显示画面51进行显示,该复原程序显示画面51对与按下的程序显示按钮49对应的控制程序prog1进行显示。该复原程序显示画面51示出了对应的控制程序,编辑装置3的用户通过参照复原程序显示画面51,能够对在进行了复原的情况下控制程序prog1恢复至何种状态进行确认。

返回图10的说明。如果输入输出部33检测到图12所示的复原执行画面48-1的复原执行按钮50的按下(步骤s206),则输入输出部33将表示检测到的操作内容的操作信息输入至编辑部32。编辑部32基于输入来的操作信息,将复原指示发送至控制装置1(步骤s207)。

控制装置1的复原控制部16如果接收到复原指示,则基于顺序信息,对最新的备份信息进行选择(步骤s208)。复原控制部16使用选择出的备份信息,进行控制程序的改写(步骤s209)。复原控制部16从选择出的备份信息所包含的激活信息示出的程序步起执行控制程序prog1(步骤s210)。在该例子中,从控制程序prog1的程序块bl0的程序步1起执行控制程序prog1。复原控制部16删除1个在复原处理中使用过的备份信息(步骤s211)。然后,复原控制部16将复原完成通知发送至编辑装置3(步骤s212)。

编辑装置3的编辑部32如果接收到复原完成通知,则对复原执行画面进行更新、显示(步骤s213)。图14是表示图12所示的复原执行画面38-1在执行复原后得到更新而显示的复原执行画面48-2的图。由于执行1次复原处理而删除了1个备份信息,因此显示包含剩余的1个备份信息的复原执行画面48-2。

如果输入输出部33检测到图14所示的复原执行画面48-2的复原执行按钮50的按下(步骤s214),则输入输出部33将表示检测到的操作内容的操作信息输入至编辑部32。编辑部32基于输入来的操作信息,将复原指示发送至控制装置1(步骤s215)。

控制装置1的复原控制部16如果接收到复原指示,则基于顺序信息,选择最新的备份信息(步骤s216)。复原控制部16使用选择出的备份信息,进行控制程序的改写(步骤s217)。复原控制部16从选择出的备份信息所包含的激活信息示出的程序步起执行控制程序prog1(步骤s218)。在该例子中,从控制程序prog1的程序块bl0的程序步0起执行控制程序prog1。复原控制部16删除1个在复原处理中使用过的备份信息(步骤s219)。然后,复原控制部16将复原完成通知发送至编辑装置3(步骤s220)。

图15是表示在图10示出的复原动作中存储于第1存储部11及第2存储部15的信息的具体例的图。

在开始图10所示的动作的时刻,在第1存储部11及第2存储部15存储的信息是图9的“执行中改写#2”的状态。在图10的步骤s211中,如果复原控制部16删除1个备份信息,则如图15的复原#2所示,管理编号2的备份信息被删除,管理编号的最大值更新为“1”。然后,在步骤s219中,如果复原控制部16进一步删除1个备份信息,则如图15的复原#1所示,管理编号1的备份信息被删除,管理编号的最大值也被删除。

图16是表示在图10所示的动作中复原处理发生执行错误的条件的图。控制装置1执行的控制程序有时被切换。在执行中的控制程序被切换的情况下,在本实施方式2中,在指示了向不同的控制程序的复原的情况下,作为错误处理而不进行复原。具体而言,如图16所示,正在执行控制程序prog1的第1版本的程序块bl0,然后进行执行中改写,改写为控制程序prog1的第2版本的程序块bl0。在该情况下,能够将执行中的控制程序prog1从第2版本复原至第1版本。

在将执行中的控制程序从prog1的第2版本切换至控制程序prog2的第1版本的情况下,在该状态下即使按下控制程序prog1的复原执行按钮,在作为复原对象的控制程序与执行中的控制程序不同的情况下,也是进行错误处理而不进行复原处理。在正在执行控制程序prog2的第1版本的程序块bl0的过程中进行执行中改写而改写为控制程序prog2的第2版本的情况下,能够通过复原处理复原为控制程序prog2的第1版本。然而,即使在正在执行控制程序prog2的第2版本的过程中而按下控制程序prog1的复原执行按钮,也不执行复原处理。

图17是表示在进行图10的复原处理时控制装置1执行的动作的流程图。控制装置1的复原控制部16从编辑装置3接收复原指示(步骤s301)。复原控制部16将作为复原对象的控制程序与正在由执行部12执行的控制程序进行比较,对作为复原对象的控制程序是否为执行中的控制程序进行判断(步骤s302)。在作为复原对象的控制程序为执行中的控制程序的情况下(步骤s302:yes),复原控制部16执行复原(步骤s303)。在作为复原对象的控制程序不是执行中的控制程序的情况下(步骤s302:no),复原控制部16进行错误处理(步骤s304)。错误处理的内容例如是对错误消息进行显示,不执行复原处理。

图18是表示本发明的实施方式1及实施方式2的效果的一个例子的图。在本发明的实施方式1中,备份信息存储于控制装置1的内置的第2存储部15。并且,在实施方式2中,在进行复原时,编辑装置3从控制装置1取得备份信息而进行显示,如果按下复原指示按钮,则编辑装置3将复原指示发送至控制装置1。因此,进行了控制程序的编辑的编辑装置3和输出复原指示的编辑装置3也可以不是相同的装置。例如,如图18所示,当在对控制装置#1的控制程序进行了编辑的编辑装置#1出于其他用途而正在被使用,无法将复原指示输出至控制装置#1的状态下,需要对控制装置#1的控制程序进行复原的情况下,能够由编辑装置#3将复原指示发送至控制装置#1。

如上所说明的那样,根据本发明的实施方式2,复原控制部16在每次接收复原指示时,使用基于顺序信息而从多个备份信息选择出的备份信息,对在第1存储部11存储的控制程序进行改写,并且指示执行部12从选择出的备份信息所包含的激活信息示出的程序步起开始控制程序的执行。通过该结构,在每次接收复原指示时,能够将控制程序逐一恢复至原始状态而实现多次复原。此时,由于从激活信息示出的部分起执行控制程序,因此连同执行状态都能够恢复至改写前的状态。

在上述实施方式示出的结构表示的是本发明的内容的一个例子,也能够与其他公知技术组合,在不脱离本发明的主旨的范围也能够省略、变更结构的一部分。

标号的说明

1控制装置,2被控制装置,3编辑装置,11第1存储部,12执行部,13通信部,14改写控制部,15第2存储部,16复原控制部,31通信部,32编辑部,33输入输出部,34存储部,40执行中改写指示画面,42复原功能选择画面,43确认画面,45功能选择画面,46复原执行菜单,47复原错误画面,48-1、48-2复原执行画面,49程序显示按钮,50复原执行按钮,92处理电路,93存储器,94处理器。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1