工程设计工具程序及网络系统的制作方法

文档序号:10494372阅读:242来源:国知局
工程设计工具程序及网络系统的制作方法
【专利摘要】一种工程设计工具程序,其将程序写入至可编程逻辑控制器所具有的各功能单元,该工程设计工具程序使与可编程逻辑控制器连接的计算机执行:指示步骤,对多个可编程逻辑控制器分别指示固件的更新;以及更新步骤,通过将新的固件写入至各功能单元,从而对固件进行更新。
【专利说明】
工程设计工具程序及网络系统
技术领域
[0001]本发明涉及一种工程设计工具程序及网络系统,该工程设计工具程序及网络系统进行可编程逻辑控制器所具有的单元的固件更新。
【背景技术】
[0002]可编程逻辑控制器(PLC)具有CPU单元及智能功能单元等。以前针对这些单元的固件手动地进行更新等。因此,固件的更新费事。
[0003]在专利文献I所记载的固件更新系统中,管理装置经由网络而与PLC装置连接。并且,管理装置对连接于与基干部分相比的下游处的PLC执行固件的更新。
[0004]在专利文献2所记载的信息处理系统中,具有主控CPU的PLC、和具有从属CPU的多个PLC由系统总线连接。并且,主控CPU对从属CPU的固件进行改写。
[0005]专利文献3所记载的固件用更新工具将PC和更新对象PLC连接。然后,更新工具基于从PC发送来的固件更新文件,将固件更新文件下载至PLC。此时,更新工具一边对更新文件的版本进行确认,一边对多台PLC进行固件更新。
[0006]专利文献1:日本特开2006 —195766号公报
[0007]专利文献2:日本特开2001 — 67215号公报
[0008]专利文献3:日本特开2012 — 3658号公报

【发明内容】

[0009]但是,在前述第I及第2现有技术中,需要用于对固件进行更新的PC及管理PLC13S后,针对由管理PLC进行管理的PLC,进行固件的更新。因此,存在系统结构变得复杂的问题。另外,在前述第3现有技术中,由于需要将更新工具安装于系统,因此存在系统结构变得复杂的问题。
[0010]本发明就是鉴于上述情况而提出的,其目的在于得到一种能够以简单的结构对多个固件进行更新的工程设计工具程序、网络系统以及可编程逻辑控制器。
[0011 ]为了解决上述课题,实现目的,本发明是一种工程设计工具程序,该工程设计工具程序将程序写入至可编程逻辑控制器所具有的各功能单元,该工程设计工具程序的特征在于,使与所述可编程逻辑控制器连接的计算机执行:指示步骤,对多个所述可编程逻辑控制器分别指示固件的更新;以及更新步骤,通过将新的固件写入至所述各功能单元,从而对所述固件进行更新。
[0012]发明的效果
[0013]根据本发明,具有能够以简单的结构对多个固件进行更新的效果。
【附图说明】
[0014]图1是表示本发明的实施方式所涉及的网络系统的结构的图。
[0015]图2是表示PLC的结构例的图。
[0016]图3是表示对I个单元开始固件的更新时的PC的处理步骤的流程图。
[0017]图4是表示针对I个单元的固件更新处理的处理步骤的流程图。
[0018]图5是表示对多个单元开始固件的更新时的网络系统的处理步骤的流程图。
[0019]图6是表示针对多个单元的固件更新处理的处理步骤的流程图。
[0020]图7是表示PC的硬件结构的图。
【具体实施方式】
[0021]下面,基于附图,对本发明的实施方式所涉及的工程设计工具程序及网络系统进行详细说明。此外,本发明不限定于本实施方式。
[0022]实施方式
[0023]图1是表示本发明的实施方式所涉及的网络系统的结构的图。本实施方式的网络系统I是如下系统,即,针对PLC(可编程逻辑控制器)所具有的单元(功能单元)的固件,自动地进行更新。
[0024]网络系统I具有:管理设备(生产管理装置)10、PC(Personal Computer)20(l)?20(N)、以及PLC 30(1)?30(M)。这里的M、N是大于或等于2的自然数。
[0025]在网络系统I中,各PC20(1)?20(N)是利用网络而与管理设备10连接的。另外,与各PC 20(1)?20(N)连接有所管理的PLC。在这里,示出PLC 30(I)、30(2)与PC 20(1)连接、PLC 30(3)?30(5)与PC 20(2)连接、PLC 30(M)与PC 20(N)连接的情况。因此,PC 20(1)对PLC 30(1)、30(2)进行管理,PC 20(2)对PLC 30(3)?30(5)进行管理,PC 20(N)对PLC 30(M)进行管理。
[0026]此外,在以下的说明中,有时将PC 20(1)?20(N)中的任I个或多个称为PC 20。另夕卜,有时将PLC 20(1)?20(M)中的任I个或多个称为PLC 30。
[0027]各PC 20(1)?20(N)分别具有工程设计工具21 (I)?21 (N)。工程设计工具21 (I)?21(N)是进行PLC 30的控制的工具(系统设定程序)。工程设计工具21(1)?21(N)是用于将程序(固件等)写入至PLC 30(1)?30(M)的软件,该程序(固件等)用于使PLC 30(1)?30(M)分别进行动作。
[0028]换言之,工程设计工具21(1)?21(N)是用于对PLC 30(1)?30(M)的动作方式进行编程的工具。工程设计工具21 (I)?21 (N)记录于计算机可读取且非易失性的记录介质(nontransitory computer readable medium)等。
[0029]本实施方式的工程设计工具21(1)?21(N)具有对PLC30所具备的固件进行更新的功能。此外,在以下的说明中,有时将工程设计工具21(1)?21(N)中的任I个或多个称为工程设计工具21。
[0030]管理设备10是对PC20进行控制的计算机等。管理设备10具有调度管理部11,该调度管理部11进行生产工序的调度管理。调度管理部11储存有设置于各场所的PLC 30的起动的次序(启动顺序)、和各PLC 30的动作调度(生产计划)。由调度管理部11进行调度管理的生产工序是使用PLC 30执行的。
[0031]在这里,对PLC 30的结构例进行说明。此外,由于PLC 30(1)?30(M)分别具有相同的结构,因此在这里对PLC 30(1)的结构进行说明。图2是表示PLC的结构例的图。PLC 30(1)具有CPU单元31 (I)、和智能功能单元32( I)。
[0032]CPU单元31 (IWfPLC 30(1)进行控制。CPU单元31 (I)在从工程设计工具21 (I)接受到固件更新的指示的情况下,从工程设计工具21(1)接收更新用固件。CPU单元31(1)如果接收到更新用固件,则进行(PU单元31(1)所具有的固件的更新。
[0033]智能功能单元32(1)是例如A/D变换(Analog/Digital Convers1n)单元、D/A变换(Digital/Analog Convers1n)单元等具有除输入输出以外的功能的单元。智能功能单元32(1)在从工程设计工具21(1)接受到固件更新的指示的情况下,从工程设计工具21(1)接收更新用固件。智能功能单元32(1)如果接收到更新用固件,则进行智能功能单元32(1)所具有的固件的更新。
[0034]同样地,各PLC 30(2)?30(M)分别具有未图示的CPU单元31(2)?31(M)、和未图示的智能功能单元32(2)?32(M) XPU单元31(2)?31(M)具有与CPU单元31(1)相同的功能,智能功能单元32(2)?32(M)具有与智能功能单元32(1)相同的功能。此外,在以下的说明中,有时将CPU单元31 (I)?31 (M)中的任I个或多个称为CPU单元31。另外,有时将智能功能单元32(1)?32(M)中的任I个或多个称为智能功能单元32。
[0035]接下来,说明I台PC20对I个单元开始固件的更新时的PC 20的动作。图3是表示对I个单元开始固件的更新时的PC的处理步骤的流程图。在图3中,示出工程设计工具21(1)确认是否能够对处于其管理之下的PLC 30(1)的固件进行更新(版本升级)的步骤(开始执行更新之前的准备步骤)。
[0036]PC 20(1)的工程设计工具21(1)针对处于管理之下的PLC 30(1)的I个单元,开始确认是否能够进行固件的更新(步骤S100)。
[0037]此时,工程设计工具21(1)访问作为确认对象的单元,从该单元获取固件版本。然后,工程设计工具21(1)基于获取到的固件版本,对作为确认对象的单元是否能够进行固件的更新(是否是更新对象)进行确认(步骤S101)。进行固件的更新的单元例如是CPU单元31(I)或智能功能单元32(1)。
[0038]工程设计工具21(1)在获取到的固件版本比将要进行更新的固件的版本旧的情况下,判断为PLC 30(1)的固件能够进行更新。
[0039]工程设计工具21(I)在判断为PLC 30(I)的固件能够进行更新的情况下(步骤SlOUYes),将保存于外部设备等的作为更新对象的固件保存于安装有工程设计工具21(1)的PC 20(步骤S102)。然后,工程设计工具21(1)向固件更新的执行阶段转移(步骤S103)。此夕卜,关于作为更新对象的固件,只要是在执行固件更新之前,可以在任意的定时保存于PC
20 ο
[0040]另一方面,工程设计工具21(1)在判断为PLC30(1)的固件不能进行更新的情况下(步骤S11、No ),将固件更新的执行中止(步骤S104)。
[0041]接下来,对固件更新的执行处理进行说明。图4是表示针对I个单元的固件更新处理的处理步骤的流程图。在图4中,示出工程设计工具21(1)对I个单元(例如CPU单元31(1))执行固件的更新、直至更新完成为止的处理步骤。
[0042]工程设计工具21(1)如果向固件更新的执行阶段转移(图3的步骤S103之后),则工程设计工具21(1)开始执行固件的更新(步骤S110)。
[0043]工程设计工具21(I)向PLC 30(I)指示执行I个单元(CPU单元31 (I))的更新(步骤SI 11)。该执行更新的指示从工程设计工具21 (I)发送至作为更新对象的单元。
[0044]PC 20(1)从作为更新对象的PLC 30(1)读取PLC 30(1)内的数据(程序、参数等)、和当前的固件而进行备份(步骤S112)。
[0045]具体地说,工程设计工具21(1)向PLC30( I)的CHJ单元31 (I)发出进行备份的指示。接受到该指示的CPU单元31(1)使PLC 30(1)内的程序、参数、当前的固件数据备份于PC20(1)。
[0046]在备份完成后,工程设计工具21(I)将所储存的新固件向PLC30 (I)的CHJ单元31(I)写入。由此,执行固件的更新(步骤S113)。向CPU单元31(1)写入的新固件例如是相对于安装于CPU单元31 (I)的固件而追加新功能后的固件。
[0047]此外,工程设计工具21(1)也可以向CPU单元31(1)写入旧版本的固件。换言之,向新固件的改写也可以是降级。如上所述,工程设计工具21(1)执行固件的升级或降级而作为针对CPU单元31(1)的固件更新处理。下面,说明工程设计工具21(1)对CPU单元31(1)执行固件的升级的情况。
[0048]被执行了更新后的CPU单元31(1)自身对固件的更新是否正常完成进行确认(步骤SI 14) XPU单元31 (I)将确认结果通知给工程设计工具21 (I)。
[0049]在更新未正常完成的情况下(步骤S114、No(第I次)),工程设计工具21(1)将所储存的新固件向PLC 30(1)的CPU单元31(1)写入。由此,执行固件的更新(步骤S113)。
[0050]然后,被执行了更新后的CPU单元31(1)自身对固件的更新是否正常完成进行确认(步骤SI 14) XPU单元31 (I)将确认结果通知给工程设计工具21 (I)。
[0051]在更新再次未正常完成的情况下(步骤S114、No(第2次)),工程设计工具21(1)将备份好的丨日版本的固件向PLC 30 (I)的CPU单元31 (I)写入(步骤S115)。
[0052]换言之,如果2次更新均未正常完成,则将旧版本的固件向CPU单元31(1)还原(重新设定)。由此,旧版本的固件被回写至(PU单元31(1)。
[0053]工程设计工具21(1)对更新后的CPU单元31(1)的存储器所储存的数据(程序、参数)和PC 20(1)中备份好的数据(备份数据)进行对照(步骤S116)。
[0054]另外,在更新正常完成的情况下(步骤S114、Yes),工程设计工具21(1)对更新后的CPU单元31(1)的存储器所储存的数据(程序、参数WPPC 20(1)中备份好的数据(备份数据)进行对照(步骤S116)。
[0055]如上所述,如果向新版本固件的更新或者旧版本固件的回写完成,则对CPU单元31(I)内的数据和PC 20( I)中备份好的数据进行对照。
[0056]然后,工程设计工具21(I)通过数据的对照,对双方的数据是否一致进行确认。在不一致的情况下(步骤S116、不一致),工程设计工具21(1)以PC 20(1)中备份好的数据,将CPU单元31(1)内的存储器数据覆盖(步骤S117)。换言之,在固件被更新为新的固件的情况下,以PC 20( I)中备份好的程序及参数,将CPU单元31 (I)内的存储器数据覆盖。
[0057]由此,工程设计工具21(1)使在固件的更新之前获取到的程序及参数与更新之后的程序及参数一致。然后,工程设计工具21(1)将PLC 30(1)重置(步骤S118)。
[0058]另外,在通过数据的对照而确认到双方的数据一致的情况下(步骤S116、一致),工程设计工具21 (I)将PLC 30(1)重置(步骤S118)。工程设计工具21(1)在将PLC 30(1)重置后使PLC 30(1)重启,完成更新(步骤S119)。
[0059]接下来,说明对多个PLC所具有的各单元执行更新的情况下的处理。图5是表示对多个单元开始固件的更新时的网络系统的处理步骤的流程图。在图5中示出如下步骤(开始执行更新之前的准备步骤),即,调度管理部11及工程设计工具21针对网络系统I整体的PLC,确认是否能够进行固件的更新。
[0060]管理设备10的调度管理部11针对处于管理之下的PLC30中的多个单元各自,开始确认是否能够进行固件的更新(步骤S130)。调度管理部11基于生产计划等,选择希望进行更新的单元的机种(型号)。
[0061]然后,调度管理部11将希望进行更新的单元的机种通知给安装有工程设计工具21的PC 20。进而,调度管理部11对选择出的单元的固件是否需要更新进行确认。具体地说,调度管理部11向管理着所选择出的单元的各工程设计工具21,发送有无能够进行更新的PLC(单元)的确认指示(步骤S131)。
[0062]由此,接受到指示的工程设计工具21对选择出的各单元的固件的版本进行确认(步骤S132)。具体地说,工程设计工具21指示所选择出的单元进行固件的版本确认。由此,接受到指示的单元将固件的版本发送至工程设计工具21。工程设计工具21从所选择出的各单元接收固件的版本,从而对所选择出的各单元的固件的版本进行确认。
[0063]在各单元的固件的版本被确认后,在网络系统I中,针对每一个所选择出的单元,执行图3所示的处理(步骤SlOO?S104)。如果针对所有单元都结束了直至步骤S104为止的处理,则开始以下的图6所示的处理。
[0064]图6是表示针对多个单元的固件更新处理的处理步骤的流程图。在网络系统I中,调度管理部11从工程设计工具21对实施固件更新的单元的信息进行收集。然后,调度管理部11对在网络系统I的整体进行更新所花费的时间和进行更新的最佳时期进行计算,基于所计算出的时间及时期,向各工程设计工具21发出更新的指示。
[0065]具体地说,调度管理部11向对作为固件的更新对象的单元进行管理的各工程设计工具21请求与作为更新对象的单元相关的信息。
[0066]各工程设计工具21将与来自调度管理部11的请求相应的信息发送至调度管理部
11。各工程设计工具21将由调度管理部11发出了请求的单元中的、能够进行固件更新的单元的信息通知给调度管理部11(步骤S140)。由此,调度管理部11从各PC 20的各工程设计工具21获取能够进行更新的单元的信息(步骤S141)。
[0067]调度管理部11预先将对各单元的固件进行更新所需的时间、和对各PLC30进行重置的次序(启动顺序)的信息作为更新信息进行储存。调度管理部11将使作为更新对象的所有单元的固件得到更新的时间、和直至网络系统I恢复为止的时间的合计时间作为更新合计时间进行计算。调度管理部11基于更新信息而对更新合计时间进行计算。
[0068]该更新合计时间是从作为更新对象的所有单元的固件中的最先开始固件的更新起直至网络系统I恢复为止的时间。
[0069]调度管理部11使用更新信息,计算对各单元的固件进行更新的最佳时期(定时)(步骤S142)。然后,调度管理部11基于各PLC30的动作调度(生产计划),在不对基于网络系统I的生产工序造成妨碍的时间段(生产计划调度的空闲时间等),对更新固件的时期(更新时期)进行设定。对基于网络系统I的生产工序不造成妨碍的时间段例如是PLC 30不工作的时间段。
[0070]调度管理部11将所设定的更新时期设定于生产计划(生产工序)的任务中(步骤S143)。然后,如果更新的预定时刻来临,则调度管理部11向各工程设计工具21依次发出针对各单元的更新指示(步骤S144)。
[0071]从调度管理部11接受到更新指示的各工程设计工具21分别按照图4所说明的处理步骤,执行各单元的更新。如果所有单元的更新完成,则调度管理部11按照更新信息将各PLC 30重置。
[0072]图7是表示PC的硬件结构的图。此外,由于PC20(1)?200)具有相同的结构,因此在这里对PC 20(1)的结构进行说明。PC 20(1)具有:CPU(Central Processing Unit)91、ROM (Read Only Memory) 92、RAM (Random Access Memory)93、显不部 94、输入部 95。在 PC 20(I)中,这些CPU 91、R0M 92,RAM 93、显示部94、输入部95经由总线B而连接。
[0073]CPU 91使用作为计算机程序(工程设计工具程序)的工程设计工具21(1),将用于使PLC 30(1)进行动作的程序写入至PLC 30(1)。
[0074]显示部94是液晶监视器等显示装置,基于来自CPU 91的指示,对PLC 30(1)所具有的各单元的固件的版本等进行显示。输入部95具有鼠标、键盘而构成,输入由使用者从外部输入的指示信息(固件的更新所需的参数等)。向输入部95输入的指示信息被向CPU 91发送。
[0075]工程设计工具21 (I)储存于ROM 92内,经由总线B向RAM93载入。CPU 91执行载入至RAM 93内的工程设计工具21(I)0具体地说,在PC 20(I)中,按照由使用者输入的来自输入部95的指示,CPU 91从ROM 92内对工程设计工具21(1)进行读取,展开至RAM 93内的程序储存区域而执行各种处理。CPU 91使在上述各种处理时所生成的各种数据暂时存储于在RAM93内形成的数据储存区域。
[0076]由PC20(1)执行的工程设计工具21(1),在将用于使PLC 30(1)进行动作的程序(固件等)写入至PLC 30(1)的情况下、或者对固件进行更新时,被载入至主存储装置上,在主存储装置上生成各要素。
[0077]此外,在更新未正常完成的情况下,调度管理部11也可以进行生产计划的修正。在该情况下,工程设计工具21对更新未正常完成的单元的恢复所需的时间进行计算,并发送至调度管理部11。由此,调度管理部11基于恢复所需的时间,自动地进行生产计划的修正。
[0078]另外,在网络系统I中,也可以取代PC20而配置除PC 20以外的计算机。另外,配置于网络系统I的PC 20不限于多台,也可以是I台。
[0079]如上所述,在本实施方式中,自动地对PLC30所具有的单元的固件进行更新。另夕卜,调度管理部11与生产计划调度的空闲时间相匹配地进行更新。因此,作业者的作业时间缩短,并且能够消除生产工序的延迟。
[0080]另外,调度管理部11基于将各PLC30重置的次序的信息,计算对各固件进行更新的最佳时期,因此能够将应用了网络系统I的工厂等顺利地起动。
[0081]另外,在本实施方式中,由于在固件的更新之前自动地对PLC30的数据(程序、参数等)进行备份,在更新后的新的固件设定所备份好的数据,因此能够避免在更新前后进行矛盾的动作。
[0082]另外,在本实施方式中,由于PC20对PLC 30所具有的单元内的固件进行更新,因此能够对固件进行更新,而不使用特殊的工具(接口设备)。
[0083]另外,由于是PC20对固件进行更新,因此能够针对每个单元,对是否执行更新进行设定。另外,在更新未正常完成的情况下,进行生产计划的修正,因此能够执行高效的生产。
[0084]如上所述,根据实施方式,由于PC20的工程设计工具21对PLC30所具有的多个单元内的各固件进行更新,因此能够以简单的结构对多个固件进行更新。
[0085]另外,由于将更新固件的时期设定于对生产工序不造成妨碍的时间段,因此能够对PLC 30所具有的单元的固件进行更新,而不改变生产工序。
[0086]工业实用性
[0087]如上所述,本发明所涉及的工程设计工具程序及网络系统适用于固件的更新。
[0088]标号的说明
[0089]1网络系统,10管理设备,11调度管理部,20(1)?200汗(:,21(1)?210)工程设计工具,30(1)?30(M)PLC,31(1)CPU单元,32(1)智能功能单元。
【主权项】
1.一种工程设计工具程序,其将程序写入至可编程逻辑控制器所具有的各功能单元, 该工程设计工具程序的特征在于,使与所述可编程逻辑控制器连接的计算机执行: 指示步骤,对多个所述可编程逻辑控制器分别指示固件的更新;以及 更新步骤,通过将新的固件写入至所述各功能单元,从而对所述固件进行更新。2.根据权利要求1所述的工程设计工具程序,其特征在于, 使所述计算机, 按照所述可编程逻辑控制器的启动的次序,针对每个所述功能单元依次执行指示所述固件的更新的处理、和对所述固件进行更新的处理。3.根据权利要求1或2所述的工程设计工具程序,其特征在于, 使所述计算机还执行:判断步骤,基于所述可编程逻辑控制器所进行的生产的计划,对所述可编程逻辑控制器不工作的定时进行判断, 使所述计算机在所述定时,执行指示所述固件的更新的处理、和对所述固件进行更新的处理。4.根据权利要求1至3中任一项所述的工程设计工具程序,其特征在于, 使所述计算机还执行: 第I备份步骤,在对所述固件进行更新之前,对设定于所述功能单元内的程序及参数进行备份;以及 重新设定步骤,在所述固件被正常地更新之后,将备份好的所述程序及参数重新设定于所述功能单元内。5.根据权利要求1至4中任一项所述的工程设计工具程序,其特征在于, 使所述计算机还执行: 第2备份步骤,在开始所述固件的更新之前,备份对所述固件进行更新之前的旧的固件;以及 还原步骤,在所述固件的更新未正常完成的情况下,将所述旧的固件回写至所述更新未正常完成的单元。6.—种网络系统,其特征在于,具有: 多个可编程逻辑控制器;以及 计算机,其与所述多个可编程逻辑控制器连接,并且对所述多个可编程逻辑控制器进行控制, 所述多个可编程逻辑控制器分别具有功能单元, 所述计算机使用将程序写入至所述功能单元的工程设计工具程序,对所述功能单元各自的固件进行更新。7.根据权利要求6所述的网络系统,其特征在于, 还具有管理设备,该管理设备对所述计算机进行控制,并且对使用了所述可编程逻辑控制器的生产的计划进行设定, 所述计算机在开始所述固件的更新之前,备份对所述固件进行更新之前的旧的固件, 所述计算机在所述固件的更新未正常完成的情况下,将所述旧的固件回写至所述更新未正常完成的单元, 所述管理设备基于更新未正常完成的单元的恢复所需的时间,对所述生产的计划重新进行设定。8.根据权利要求7所述的网络系统,其特征在于, 所述功能单元对所述固件的更新是否正常完成进行判定,并且将判定结果通知给所述计算机, 所述计算机在从所述功能单元接受到所述固件的更新未正常完成的通知的情况下,将所述旧的固件回写至所述更新未正常完成的单元。
【文档编号】G06F11/00GK105849700SQ201380081390
【公开日】2016年8月10日
【申请日】2013年12月3日
【发明人】校条祐辅, 田中修, 田中修一, 岩田秀章, 前泽幸宽
【申请人】三菱电机株式会社
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1