著录项信息
专利名称 | 用于更新可编程逻辑控制器中的操作系统的装置和方法 |
申请号 | CN201410534400.0 | 申请日期 | 2014-08-28 |
法律状态 | 授权 | 申报国家 | 中国 |
公开/公告日 | 2015-03-18 | 公开/公告号 | CN104423310A |
优先权 | 暂无 | 优先权号 | 暂无 |
主分类号 | G05B19/05 | IPC分类号 | G;0;5;B;1;9;/;0;5查看分类表>
|
申请人 | LS产电株式会社 | 申请人地址 | 韩国京畿道
变更
专利地址、主体等相关变化,请及时变更,防止失效 |
权利人 | LS产电株式会社 | 当前权利人 | LS产电株式会社 |
发明人 | 朴朝东 |
代理机构 | 北京金信知识产权代理有限公司 | 代理人 | 黄威;徐爱萍 |
摘要
本公开涉及一种用于更新PLC(可编程逻辑控制器)中的OS(操作系统)的装置以及使用其的方法,所述装置被配置为更新PLC中的OS,并且通过立即应用更新后的OS到PLC而执行操作,所述装置包括MPU(微处理单元)、闪存、第二工作存储器以及切换单元。
1.一种用于更新可编程逻辑控制器中的操作系统的装置,所述装置包括:
微处理单元,其被配置为控制由编程和调试工具提供的操作系统的下载,以及响应于上传的操作系统而执行操作;
闪存,其响应于所述微处理单元的控制而存储有多个下载的操作系统;
第一工作存储器,其响应于所述微处理单元的控制而上传有所述闪存中存储的多个操作系统中的最新版本的操作系统;
第二工作存储器,其在最新版本的操作系统上传到所述第一工作存储器中之后,通过所述微处理单元的下载而上传有所述闪存中所存储的操作系统;以及
切换单元,其被配置为响应于由所述微处理单元产生的芯片切换信号而切换用于分别选择所述第一工作存储器和所述第二工作存储器的片选信号,以及施加所述片选信号到所述第一工作存储器和所述第二工作存储器,其中
所述可编程逻辑控制器能够通过应用新版本的操作系统立即操作,而不是要切断和再次打开可编程逻辑控制器的电源,并且
其中用于选择所述第一工作存储器的切换信号是逻辑1,而用于选择所述第二工作存储器的切换信号是逻辑0。
2.根据权利要求1所述的装置,其中所述闪存包括存储有操作系统的第一操作系统区和第二操作系统区,并且所述微处理单元通过比较分别存储在所述第一操作系统区和所述第二操作系统区中的操作系统的版本,而上传最新版本的操作系统到所述第一工作存储器中。
3.根据权利要求1所述的装置,其中所述闪存包括存储有多个操作系统的第一操作系统区和第二操作系统区,并且所述微处理单元通过比较分别存储在所述第一操作系统区和所述第二操作系统区中的操作系统的版本,而将从所述编程和调试工具下载的操作系统存储到存储有以前版本的操作系统区上。
4.根据权利要求1所述的装置,其中所述微处理单元通过调用引导程序从所述编程和调试工具下载所述操作系统。
5.一种用于更新可编程逻辑控制器中的操作系统的方法,所述方法包括:
由微处理单元从编程和调试工具下载操作系统;
由所述微处理单元通过比较分别存储在闪存的第一操作系统区和第二操作系统区中的操作系统的版本,而将下载的操作系统存储在存储有以前版本操作系统的所述第一操作系统区或所述第二操作系统区上;
由所述微处理单元将下载并存储在所述第一操作系统区或所述第二操作系统区的操作系统上传到,第一工作存储器和第二工作存储器中的未存储有当前工作中使用的操作系统的第一工作存储器或第二工作存储器上;以及
由所述微处理单元响应于上传到所述第一工作存储器或所述第二工作存储器上的操作系统,而执行工作,其中
所述可编程逻辑控制器能够通过应用新版本的操作系统立即操作,而不是要切断和再次打开可编程逻辑控制器的电源,并且
其中用于选择所述第一工作存储器的切换信号是逻辑1,而用于选择所述第二工作存储器的切换信号是逻辑0。
6.根据权利要求5所述的方法,其中所述下载通过由所述微处理单元调用的引导程序实现。
7.根据权利要求5所述的方法,还包括:在上传操作系统之后,通过切换单元响应于由所述微处理单元输出的芯片切换信号进行切换,施加片选信号到所述第一工作存储器或所述第二工作存储器,所述片选信号被配置为选择所述第一工作存储器或所述第二工作存储器。
8.根据权利要求7所述的方法,其中所述片选信号是使先前输出的用于选择所述第一工作存储器或所述第二工作存储器的片选信号反转的信号。
用于更新可编程逻辑控制器中的操作系统的装置和方法\n技术领域\n[0001] 本公开涉及一种用于更新PLC(可编程逻辑控制器)中的OS(操作系统)的装置以及使用其的方法,该装置被配置为更新PLC中的OS,并且被配置为通过立即应用更新后的OS到PLC而执行操作。\n背景技术\n[0002] 在背景技术部分中公开的信息仅用于增强对本公开的整体背景的理解,并且不应被视为承认或任何形式的暗示该信息构成对于本领域技术人员来说是已知的现有技术。\n[0003] 由于成熟的技术,随着自动化领域的发展已经出现了用于工厂自动化的各种类型的装置。作为用于工厂自动化的装置之一,PLC使用可编程存储器来通过数字或模拟输入/输出(I/O)模块执行诸如逻辑、序列、计时、计数和运算的功能。PLC(一种被配置为控制工厂中的各种设备、机器和工序的装置)是用于工厂自动化的核心元件,并且是被配置为满足工厂自动化的各种需求的有效手段之一。\n[0004] PLC能够在模块中或在基本单元中提供各种功能,例如算术四则运算、数字信号的输入/输出、模拟信号的输入/输出、通信、定位和高速计数。\n[0005] 甚至在产品从工厂装运出去之后,经常发生PLC中的OS更新,用于功能升级、缺陷更正以及功能添加。为了更新PLC中的OS,以及为了允许PLC根据更新后的OS进行操作,PLC的电源必须切断并且再次接通,或者必须执行系统复位以进行初始化,其中在初始化过程中更新的OS被上传到工作存储器,并且必须根据更新后的OS执行操作。\n[0006] 因此,按照惯例,需要很多的时间来更新PLC上的OS以及允许PLC根据更新后的OS进行操作,因此使用PLC的产品的生产率大大降低。\n发明内容\n[0007] 这部分提供本公开的整体概述,而不是其全部范围或其所有特征的充分公开。本公开的示例性方案基本上至少解决上述问题和/或缺点,并且至少提供下述优点。\n[0008] 因此,本公开的方案提供一种用于更新PLC中的OS(操作系统)的装置及其方法,该装置被配置为允许PLC立即应用更新后的OS并且使其工作,而不是在PLC上更新OS时切断PLC的电源并再次接通PLC的电源。\n[0009] 然而,应当强调的是,本公开不限于如上所述的特定公开。应该理解的是,本文未提及的其他技术主题可以被本领技术人员所了解。\n[0010] 在本公开的一个总的方案中,提供了一种用于更新PLC中的OS(操作系统)的装置,所述装置包括:\n[0011] MPU(微处理单元),其被配置为控制由PADT(编程和调试工具)提供的OS的下载,以及响应于上传的OS而执行操作;\n[0012] 闪存,其响应于MPU的控制而存储有多个下载的OS;\n[0013] 第一工作存储器,其响应于MPU的控制而上传有在闪存中所存储的多个OS中的最新版本的OS;\n[0014] 第二工作存储器,其在最新版本的OS上传到第一工作存储器中之后,通过MPU的下载而上传有闪存中所存储的OS;以及\n[0015] 切换单元,其被配置为响应于由MPU产生的芯片切换信号而切换用于分别选择第一工作存储器和第二工作存储器的片选信号,以及施加所述片选信号到第一工作存储器和第二工作存储器。\n[0016] 优选地,但不是必须地,所述闪存可以包括存储有OS的第一OS区和第二OS区,并且MPU通过比较分别存储在第一OS区和第二OS区中的OS的版本,而上传最新版本的OS到第一工作存储器中。\n[0017] 优选地,但不是必须地,所述闪存可以包括存储有多个OS的第一OS区和第二OS区,并且MPU通过比较分别存储在第一OS区和第二OS区中的OS的版本,而将从PADT下载的OS存储到存储有以前版本的OS区上。优选地,但不是必须地,MPU可以通过调用引导程序从PADT下载OS。\n[0018] 在本公开的另一个总的方案中,提供了一种用于更新PLC(可编程逻辑控制器)中的OS(操作系统)的方法,所述方法包括:\n[0019] 由MPU(微处理单元)从PADT(编程和调试工具)下载OS;\n[0020] 由MPU通过比较分别存储在闪存的第一OS区和第二OS区中的OS的版本,而将下载的OS存储在存储有以前版本OS的第一OS区或第二OS区上;\n[0021] 由MPU将下载并存储在第一OS区或第二OS区的OS上传到,第一工作存储器和第二工作存储器中的未存储有当前工作中使用的OS的第一工作存储器或第二工作存储器;以及[0022] 由MPU响应于上传到第一工作存储器或第二工作存储器上的OS,而执行工作。\n[0023] 优选地,但不是必须地,所述下载可以通过由MPU调用的引导程序实现。\n[0024] 优选地,但不是必须地,所述方法还可以包括:在上传OS之后,通过切换单元响应于由MPU输出的芯片切换信号进行切换,施加片选信号到第一工作存储器或第二工作存储器,所述片选信号被配置为选择第一工作存储器或第二工作存储器。\n[0025] 优选地,但不是必须地,所述片选信号可以是使先前输出的用于选择第一工作存储器或第二工作存储器的片选信号反转(reversing)的信号。\n[0026] 有益效果\n[0027] 用于更新PLC中的OS的装置和方法具有以下有益效果:\n[0028] 在由PADT提供的新版本的OS被下载和存储时,PLC能够通过应用新版本的OS立即操作,而不是要切断和再次打开PLC的电源,由此能够减少用于更新OS的时间和用于响应于更新后的OS而操作PLC的时间,并且由此能够改善通过使用PLC而制造的产品的生产率。\n[0029] 通过下述详细描述,其结合附图公开了本发明的示例性实施例,本公开的其他示例性方案、优点和显著特征对于本领域技术人员将变得更加显而易见。\n[0030] 本发明的上述特征及其他特征在下文中论述。\n附图说明\n[0031] 下面参照在附图中示出的某些示例性实施例详细地描述本发明的上述和其他特征,在下文中所述示例性实施例仅以实例说明的方式给出,并因此不限制本发明,全文相同的附图标记表示相同的元件,其中:\n[0032] 图1是示出了根据现有技术的用于更新PLC中的OS的装置的配置的框图;\n[0033] 图2是示出了通过根据现有技术的用于更新PLC中的OS的方法的MPU的操作的信号流程图;\n[0034] 图3是示出了根据本公开的用于更新PLC中的OS的装置的配置的框图;\n[0035] 图4a和图4b分别是图3的切换单元的详细电路图以及示出操作状态的图表;\n[0036] 图5a和图5b是示出了在根据本公开的用于更新PLC中的OS的装置中将闪存中存储的新版本的OS上传到工作存储器的操作的图表;以及\n[0037] 图6是示出了根据本公开的用于更新PLC中的OS的方法的MPU的操作的信号流程图。\n[0038] 本公开的其他优点、目的和特征将部分地在接下来的描述中阐述,并且部分地将在对下文的审查时对于本领域技术人员变得显而易见或可以从本公开的实践中学到。本公开的目的和其他优点可以通过在所撰写的说明书及其权利要求书以及附图中特别指出的结构实现和获得。\n[0039] 可以理解的是,本公开的先前整体描述和接下来的详细描述都是示例性的和说明性的,并且旨在为所要求保护的本公开提供进一步解释。\n具体实施方式\n[0040] 在描述本公开中,可以省略本领域已知的结构或过程的详细描述,以避免由于关于这种已知结构和功能的不必要细节而使本领域技术人员模糊对本发明的理解。因此,在说明书和权利要求书中使用的特定术语或词语的含义不应限于字面或通常采用的意思,而应该根据用户或操作者的意图和习惯用途被解释或可以不同。因此,特定术语或词语的定义应该基于整个说明书的内容。\n[0041] 在下文中,将参照附图详细地描述本公开的示例性实施例。\n[0042] 图1是示出了根据现有技术的PLC的高速计数器模块的脉冲输入方法的框图,其中附图标记100是PADT(编程和调试工具),而110是PLC。\n[0043] PADT 100响应于操作者的操纵而产生操作命令,并且将操作命令提供给PLC 110,并且当所产生的命令是OS的下载命令时,PADT 100向PLC 110提供将要被下载的OS。PLC \n110响应于预存储的多个OS中的最新版本的OS而执行预定操作,并且响应于PADT 100的操作命令而执行操作。\n[0044] 此外,当产生了OS的下载命令时,PLC 110下载由PADT 100提供的OS并且存储该OS。此时,PLC 110可以包括MPU(微处理单元)112、闪存114以及工作存储器116。\n[0045] MPU 112通过以下方式进行控制:即,PLC 110响应于预存储的多个OS中的最新版本的OS而执行预定工作,并且响应于PADT 100的操作命令而执行操作。此外,当PADT 100产生OS的下载命令时,MPU 112调用引导程序112a以允许下载由PADT 100提供的OS,并且控制所下载的OS的存储和运行。\n[0046] 闪存114包括多个OS区,并且存储由MPU 112下载的OS。例如,闪存114可以包括第一OS区114a和第二OS区114b,其中第一OS区114a和第二OS区114b响应于MPU 112的控制而选择性地存储由PADT 100提供的OS。工作存储器116响应于MPU 112的控制而对在第一OS区\n114a和第二OS区114b中存储的多个OS中的最新版本的OS进行存储,并且通过将存储的OS提供到MPU 112响应于该OS而执行预定操作。\n[0047] 在根据现有技术如此配置的用于更新PLC系统中的OS的装置中,当PLC 110的电源接通时,MPU 112检查在闪存114的第一OS区114a和第二OS区114b中所存储的OS的每个版本。例如,MPU 112产生片选信号CS1以激活闪存114的第一OS区114a和第二OS区114b。此外,MPU 112产生闪存114的读取信号RD,并且通过地址总线产生地址信号以读取分别存储在第一OS区114a和第二OS区114b中的OS,通过数据总线接收所读取的OS,并且比较所接收的OS的版本以确定第一OS区114a或第二OS区114b存储有最新版本的OS。此时,将假定最新版本的OS存储在第一OS区114a中来解释操作。\n[0048] 当确定最新版本的OS存储在第一OS区114a中时,MPU 112读出第一区114a中所存储的最新版本的OS,并将该最新版本的OS存储在工作存储器116中。例如,当片选信号CS1被产生以激活闪存114时,MPU 112产生地址信号和闪存114的读取信号RD,并且允许闪存114的第一OS区114a中所存储的最新版本的OS通过数据总线被输出。\n[0049] 此外,MPU 112产生片选信号CS2以及写入信号WR,并且将所产生的片选信号CS2和写入信号WR发送到工作存储器116,且通过地址总线产生地址信号并将所产生的地址信号发送到工作存储器116。然后,存储在闪存114的第一区114a中的最新版本的OS通过数据总线被输入且存储在工作存储器116中。\n[0050] 如上所述,当最新版本的OS存储在工作存储器116中时,MPU 112读出工作存储器\n116中所存储的OS,并且响应于从工作存储器116读出的OS而执行预定的工作。\n[0051] 在响应于最新版本的OS而执行工作时,MPU112确定是否已经从PADT 100接收到预定的操作命令。当确定已经从PADT 100接收到预定的操作命令时,MPU 112确定该操作命令是否是新版本OS的下载命令,并且当操作命令不是新版本OS的下载命令时,MPU 112响应于输入的相关操作命令而执行预定的操作。当确定从PADT 100接收的操作命令是新版本OS的下载命令时,MPU 112调用引导程序112a以允许下载由PADT 100提供的新版本OS。\n[0052] 此外,MPU 112检查闪存114的第一OS区114a和第二OS区114b中所存储的多个OS的版本,并且当存储在第二OS区114b中的OS的版本是比存储在第一OS区114a中的OS早的版本时,MPU 112删除第二OS区114b中所存储的OS,并且在第二OS区114b中存储通过引导程序\n112a所下载的新版本OS。\n[0053] 当如此描述的所下载的新版本OS存储在第二OS区114b中时,MPU 112切断PLC 110的电源并且再次接通电源或执行系统复位。\n[0054] 此外,当PLC 110接通电源或响应于系统复位而执行初始化工作时,MPU 112检查闪存114的第一OS区114a和第二OS区114b中所存储的多个OS的版本,其中假定存储在第二OS区114b中的OS的版本晚于存储在第一OS区114a中的OS的版本。然后,MPU读出第二OS区\n114b中所存储的OS并且将所读出的OS存储在工作存储器116中,并且响应于存储在第二OS区114b中的最新版本的OS而执行预定的工作。\n[0055] 图2是示出了通过根据现有技术的用于更新PLC中的OS的方法的MPU的操作的信号流程图。参照图2,MPU 112接收由PADT 100产生的命令(S200),并且确定所接收的命令是否是要求OS下载的命令(S202)。\n[0056] 作为确定的结果,如果所接收的命令不是要求OS下载的命令,则MPU 112响应于所接收的命令而执行预定的操作(S204)。此外,作为确定的结果,如果所接收的命令是要求OS下载的命令,则MPU 112调用引导程序112a以能够下载最新版本的OS(S206),并且确定分别存储在闪存114的第一OS区114a和第二OS区114b中的OS中的最新版本OS(S208)。\n[0057] 作为确定的结果,如果确定第一OS区114a中所存储OS的版本晚于第二OS区114b中所存储的OS的版本,则MPU 112删除第二OS区114b中所存储的OS(S210)。即,MPU 112删除第二OS区114b的闪存块(flash sector)。\n[0058] 此外,MPU112在闪存114的第二OS区114b中存储从引导程序112a接收的新版本的OS(S212),并且确定新版本的OS是否下载完成(S214)。\n[0059] 作为确定的结果,如果确定新版本的OS没有下载完成,则MPU 112返回到步骤S212以在闪存114的第二OS区114b中存储从引导程序112a接收的新版本的OS,并且重复确定新版本的OS是否已经下载完成的操作。\n[0060] 此外,作为确定的结果,如果确定第二OS区114b中所存储的OS的版本晚于第一OS区114a中所存储的OS的版本,则MPU 112删除第一OS区114a中所存储的OS(S216)。然后,MPU \n112在闪存114的第一OS区114a中存储从引导程序112a接收的新版本的OS(S218),并且确定新版本的OS是否下载完成(S220)。\n[0061] 作为确定的结果,如果确定新版本的OS没有下载完成,则MPU 112返回到步骤S218以在闪存114的第一OS区114a中存储从引导程序112a接收的新版本的OS,并且重复确定新版本的OS是否已经下载完成的操作。在这种情况下,如果确定新版本的OS已经完成下载,则MPU 112切断PLC 110的电源并且再次接通电源,或执行系统复位(S222)。\n[0062] 然后,MPU 112接通PLC 110的电源或响应于系统复位而执行初始化操作,并且将分别存储在闪存114的第一OS区114a和第二OS区114b中的OS中的最新版本OS上传到工作存储器116中(S224)。\n[0063] 即,MPU 112执行初始化工作并且检查分别存储在闪存114的第一OS区114a和第二OS区114b中的OS的版本,并且读出最新版本的OS且将所读出的最新版本的OS上传到工作存储器116中。当最新版本的OS的上传完成时,MPU 112运行上传到工作存储器116中的最新版本的OS(S226)。\n[0064] 在MPU 112运行当前版本的OS时,当从PADT 100产生下载OS的命令时,根据现有技术PLC 110可以在闪存114中存储由PADT 100提供的新版本OS。然而,为了运行存储在闪存\n114中的新版本OS,MPU 112必须切断PLC 110的电源并且再次接通电源,或运行系统复位以执行初始化工作,并且在执行初始化工作时将新版本的OS上传到工作存储器116中。因此,在MPU 112运行所下载的新版本OS之前需要花很多时间,这会导致产品生产率降低的问题的产生。\n[0065] 图3是示出了根据本公开的用于更新PLC中的OS的装置的配置的框图,其中附图标记300是PADT,而310是PLC。\n[0066] PADT 300响应于操作者的操纵而产生操作命令,并且将操作命令提供给PLC 310,且当所产生的命令是下载OS的命令时,PADT 300提供待由PLC 310下载的OS。PLC 310响应于预存储的多个OS中的最新版本的OS而执行预定操作。此外,当PADT 300产生下载OS的命令时,PLC 310下载由PADT 300提供的OS并且存储所下载的OS。\n[0067] PLC 31O可以包括MPU(微处理单元)312、闪存314、第一工作存储器316和第二工作存储器318以及切换单元320。\n[0068] MPU 312通过以下方式进行控制:即,PLC 310响应于预存储的多个OS中的最新版本的OS而执行预定操作,并且响应于PADT 300的操作命令而执行操作。此外,当PADT 300产生下载OS的命令时,MPU 312调用引导程序312a以能够下载由PADT 300提供的OS,并且控制所下载的OS的存储和运行。\n[0069] 例如,闪存314可以包括第一OS区314a和第二OS区314b,其中第一OS区314a和第二OS区314b可以响应于MPU 312的控制而选择性地存储由PADT 300提供的OS。\n[0070] 响应于MPU 312的控制可以选择第一工作存储器316和第二工作存储器318的其中一个,第一工作存储器316和第二工作存储器318的其中一个工作存储器可以存储有第一OS区314a和第二OS区314b中存储的OS中的最新版本OS,并且可以通过将所存储的OS提供到MPU 312而执行预定的操作。\n[0071] 此外,当新版本的OS被更新以存储在闪存314中时,响应于MPU 312的控制而选择第一工作存储器316和第二工作存储器318的其中一个,由此更新的新版本OS被上传。切换单元320响应于由MPU 312产生的芯片切换信号MEM_CS而切换由MPU 312产生的片选信号CS2,CS3,从而产生第一工作存储器316的片选信号CS2’和第二工作存储器318的片选信号CS3’。\n[0072] 因此配置的根据本公开的用于更新PLC中的OS的装置是这样的:当PLC310的电源被接通时,MPU 312检查闪存314的第一OS区314a和第二OS区314b中所存储的多个OS的每个版本,其中通过假定第一OS区314a存储有最新版本的OS来说明操作。\n[0073] 如果确定第一OS区314a存储有最新版本的OS,则MPU 312读出第一OS区314a中所存储的最新版本的OS,并且选择性地将最新版本的OS存储在第一工作存储器316或第二工作存储器318中。\n[0074] 现在,将通过假定第一工作存储器316存储有最新版本的OS来说明操作。\n[0075] 在片选信号CS1被产生以激活闪存314时,MPU 312产生读取信号RD以及闪存314的地址信号,从而允许闪存314通过数据总线输出存储在第一OS区314a中的最新版本的OS。\n[0076] 此外,MPU 312产生片选信号CS2并且输出逻辑1信号的芯片切换信号MEM_CS,并且响应于所输出的逻辑1信号的芯片切换信号MEM_CS通过允许片选信号CS2经由切换单元320而被输出为片选信号CS2’,能够使得第一工作存储器316被激活。此外,MPU 312产生第一工作存储器316的读取信号RD,并且还通过地址总线产生地址信号。于是,通过数据总线从闪存314的第一OS区314a输出的最新版本的OS被输入到第一工作存储器316和被上传。\n[0077] 如上所述,当最新版本的OS上传到第一工作存储器316中时,MPU 312读出上传到第一工作存储器316中的OS,并且响应于从第一工作存储器316读出的OS而执行预定的操作。\n[0078] 在MPU 312响应于最新版本的OS而执行操作时,MPU 312确定是否已经从PADT 300接收到预定的操作命令。当从PADT 300输入了预定的操作命令时,MPU 312确定预定命令是否是下载新版本OS的命令,并且当预定命令不是下载新版本OS的命令时,响应于相关的操作命令而执行预定的操作。\n[0079] 当从PADT 300输入的操作命令是下载新版本OS的命令时,MPU 312调用引导程序\n312a以下载由PADT 300提供的新版本的OS。此外,MPU 312检查闪存314的第一OS区314a和第二OS区314b中所存储的OS的版本,并且当存储在第二OS区314b中的OS的版本是比第一OS区314a中的OS的版本早时,MPU 312删除第二OS区314b中所存储的OS,并且在第二OS区314b中存储通过引导程序312a所下载的新版本OS。\n[0080] 如上所述,当新版本的OS都存储在第二OS区314b中时,MPU 312产生片选信号CS3,其中所产生的片选信号CS3响应于逻辑1信号的芯片切换信号MEM_CS而通过切换单元320被输出为芯片切换信号CS2’,以激活第二工作存储器318。此外,MPU 312读出第二OS区314b中所存储的新版本的OS,并且将新版本的OS上传到第二工作存储器318中。\n[0081] 当第二工作存储器318被上传有第二OS区314b中所存储的所有新版本的OS时,MPU \n312不输出片选信号CS3而是输出作为逻辑0的芯片切换信号MEM_CS。然后,切换单元320响应于逻辑0的芯片切换信号MEM_CS通过将片选信号CS2输出为片选信号CS3’激活第二工作存储器318,因此MPU 312能够响应于上传到第二工作存储器318的新版本OS而执行预定的操作。\n[0082] 图4a和图4b分别是图3的切换单元的详细电路图以及示出操作状态的图表。\n[0083] 参照图4a,本公开的切换单元320能够通过允许片选信号CS2,CS3施加和连接到缓冲器(BF1,BF2)(BF3,BF4)的输入端子,而使每个片选信号CS2’,CS3’从缓冲器(BF1,BF3)(BF2,BF4)的输出端子输出。此外,芯片切换信号MEM_CS被施加和连接到缓冲器BF1,BF3的非反相控制端子,并且芯片切换信号MEM_CS被施加和连接到缓冲器BF2,BF4的反相控制端子。\n[0084] 因此根据本公开配置的切换单元320为这样的:当芯片切换信号MEM_CS是逻辑1时,缓冲器BF1,BF3工作而缓冲器BF2,BF4不工作。于是,如图4b所示,片选信号CS2,CS3分别通过缓冲器BF1,BF3被输出为片选信号CS2’,CS3’,以分别施加到第一工作存储器316和第二工作存储器318。\n[0085] 当芯片切换信号MEM_CS是逻辑0时,缓冲器BF1,BF3不工作而缓冲器BF2,BF4工作。\n于是,如图4b所示,片选信号CS2,CS3分别通过缓冲器BF2,BF4被输出为片选信号CS2’,CS3’,以分别施加到第一工作存储器316和第二工作存储器318。\n[0086] 因此,如上所述,当产生片选信号CS2以激活第一工作存储器316并且响应于存储在第一工作存储器316中的OS而执行操作时,MPU 312通过使芯片切换信号MEM_CS反转(reverting)而激活第二工作存储器318,并且响应于存储在第二工作存储器318中的OS而执行操作。\n[0087] 图5a和图5b是示出了在根据本公开的用于更新PLC中的OS的装置中将闪存中存储的新版本的OS上传到工作存储器的操作的图表。\n[0088] 参照图5a和图5b,在当前OS操作区是0x200000~0x2FFFFF时,MPU 312通过使用片选信号CS2来选择工作存储器。此时,当MPU 312输出逻辑1的芯片切换信号MEM_CS时,片选信号CS2通过切换单元320被输出为片选信号CS2’,因此第一工作存储器316被选中,而当MPU 312输出逻辑0的芯片切换信号MEM_CS时,片选信号CS2通过切换单元320被输出为片选信号CS3’,因此第二工作存储器318被选中。\n[0089] 响应于PADT 300的OS下载命令而下载的新版本OS被存储在闪存314中。此时,由MPU 312检查存储在第一OS区314a和第二OS区314b中的OS的每个版本,并且所下载的新版本OS被存储在存储有低版本OS的区中。\n[0090] 例如,当存储在第一OS区314a中的OS的版本是V1.0,而存储在第二OS区314b中的OS的版本是V1.1时,MPU 312删除第一OS区314a中所存储OS并且存储所下载的新版本OS。当完成对所下载新版本OS的存储时,将存储在第一OS区314a中的新版本OS以0x300000~\n0x3FFFFF上传到工作存储器中,并且响应于片选信号CS3而选择上传有新版本OS的工作存储器。\n[0091] 例如,当MPU 312操作的当前OS被上传到第一工作存储器316上时,第二工作存储器318被选中用于上传新版本的OS,而当MPU 312操作的当前OS被上传到第二工作存储器\n318上时,第一工作存储器316被选中用于上传新版本的OS。\n[0092] 当新版本OS完成上传并且MPU 312将芯片切换信号MEM_CS反转并且输出时,存储有新版本OS的工作存储器被激活以允许在MPU 312中提供所存储的OS。\n[0093] 图6是示出了根据本公开的用于更新PLC中的OS的方法的MPU的操作的信号流程图。\n[0094] 参照图6,MPU 312接收由PADT 300产生的命令(S600),并且确定所接收的命令是否是下载OS的命令(S602)。作为确定的结果,如果所接收的命令不是下载OS的命令,则MPU \n312响应于所接收的命令而执行预定的操作(S604)。作为确定的结果,如果所接收的命令是下载OS的命令,则MPU 312调用引导程序312a以允许下载新版本的OS(S606),并且确定分别存储在第一OS区314a和第二OS区314b中的OS中的最新版本OS(S608)。\n[0095] 作为确定的结果,如果第一OS区314a中所存储的OS的版本晚于第二OS区314b的OS的版本,则MPU 312删除第二OS区314b中所存储的OS(S610)。然后,MPU 312在第二OS区314b中存储由引导程序312a接收的新版本的OS(S612),并且确定新版本的OS是否下载完成(S614)。\n[0096] 当新版本的OS没有下载完成时,MPU 312返回至S612以在闪存312的第二OS区314b中存储通过引导程序312a接收的新版本的OS,并且重复检查新版本的OS是否下载完成的操作。此外,作为在步骤S608确定的结果,如果第二OS区314b中所存储的OS的版本晚于第一OS区314a中所存储的OS的版本,则MPU 312删除第一OS区314a中所存储的OS(S616)。然后,MPU \n312在第一OS区314a中存储由引导程序312a接收的新版本的OS(S618),并且确定新版本的OS的下载是否完成(S620)。\n[0097] 当新版本的OS没有完成下载时,MPU 312返回到步骤S618以在闪存314的第一OS区\n314a中存储通过引导程序312a接收的新版本的OS,并且重复检查新版本的OS是否下载完成的操作。\n[0098] 当新版本的OS完成下载时,在第一工作存储器316和第二工作存储器318中的一个当前不工作的存储器(即,第一工作存储器316)存储有MPU 312当前操作的OS的情况下,MPU \n312选择第二工作存储器318以上传新版本的OS(S622),并且将芯片切换信号MEM_CS反转和输出。\n[0099] 然后,存储有新版本OS的第二工作存储器318被激活以将所存储的新版本OS提供给MPU 312。\n[0100] 然而,根据本公开的上述用于更新PLC中的OS的装置和方法,可以以许多不同的方式实施,并且不应该被理解为限于在本文所阐述的实施例。因此,旨在本公开的实施例可以覆盖本公开的修改和变型,只要它们落入所附权利要求书及其等同方案的范围内。\n[0101] 虽然已经针对多个实施例公开了特定的特征或方面,但是根据需要这些特征或方面可以与其他实施例的一个以上其他特征和/或方面选择性地组合。
法律信息
- 2017-10-27
- 2015-04-15
实质审查的生效
IPC(主分类): G05B 19/05
专利申请号: 201410534400.0
申请日: 2014.08.28
- 2015-03-18
引用专利(该专利引用了哪些专利)
序号 | 公开(公告)号 | 公开(公告)日 | 申请日 | 专利名称 | 申请人 | 该专利没有引用任何外部专利数据! |
被引用专利(该专利被哪些专利引用)
序号 | 公开(公告)号 | 公开(公告)日 | 申请日 | 专利名称 | 申请人 | 该专利没有被任何外部专利所引用! |