CN102763046A - 可编程控制器以及程序设计装置 - Google Patents

可编程控制器以及程序设计装置 Download PDF

Info

Publication number
CN102763046A
CN102763046A CN2010800634717A CN201080063471A CN102763046A CN 102763046 A CN102763046 A CN 102763046A CN 2010800634717 A CN2010800634717 A CN 2010800634717A CN 201080063471 A CN201080063471 A CN 201080063471A CN 102763046 A CN102763046 A CN 102763046A
Authority
CN
China
Prior art keywords
key data
plc
user program
key
user
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.)
Granted
Application number
CN2010800634717A
Other languages
English (en)
Other versions
CN102763046B (zh
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.)
Mitsubishi Electric Corp
Original Assignee
Mitsubishi 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 Mitsubishi Electric Corp filed Critical Mitsubishi Electric Corp
Publication of CN102763046A publication Critical patent/CN102763046A/zh
Application granted granted Critical
Publication of CN102763046B publication Critical patent/CN102763046B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • 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
    • 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/10Plc systems
    • G05B2219/13Plc programming
    • G05B2219/13195Protected programs, running these programs

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Automation & Control Theory (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Computer Security & Cryptography (AREA)
  • Software Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Programmable Controllers (AREA)

Abstract

PLC(1)基于用户程序(12)对工业用装置进行控制,具有:被实施了访问保护的可拆卸的第1存储部(10),其存储第1密钥数据(11);第2存储部(15),其将上述用户程序(12)与第2密钥数据(13)相关联而存储;以及启动处理部(31),其在接通电源时,执行本PLC(1)的启动处理,上述启动处理部(31)具有启动处理停止确定部(34),其将本PLC(1)所安装的上述第1存储部(10)所存储的第1密钥数据(11)、和与上述第2存储部(15)中存储的用户程序(12)相关联的第2密钥数据(13)读出,基于上述读出的2个密钥数据的核对,确定是继续进行上述启动处理,还是停止上述启动处理而执行异常处理。

Description

可编程控制器以及程序设计装置
技术领域
本发明涉及一种基于用户程序对工业用装置进行控制的可编程控制器(以下简称为PLC)以及生成上述用户程序的程序设计装置。
背景技术
PLC在通过PLC制造商出货后,由装置制造商组装在工业用装置中,并设置在终端用户的工厂中。用于使PLC执行工业用装置控制的用户程序,是由装置制造商使用程序设计装置生成的,并写入PLC中。通常,用户程序由装置制造商进行了各种技术上的改良,以使得作为组装对象的工业用装置可以执行技术上精炼的动作。用户程序制作的好坏,影响装置制造商向终端用户提供的工业用装置或者组装在该工业用装置中的PLC的产品价值。
但是,如果终端用户或终端用户以外的其他人将该用户程序从PLC读出并复制,将复制的用户程序安装至空的PLC中,则可以不付出任何成本地生成多台进行相同控制的PLC。这一点妨碍了装置制造商享受正当利益。因此,期望在PLC中具有用于防止不正当地对进行相同控制的PLC实施复制的结构。
例如,在专利文献1中公开了下述技术,即,在通用比较命令的第1操作码中,设置硬件固有数据所在的输入输出存储器的规定地址,在第2操作码中,设置希望使保护对象程序部分运行的PLC的硬件固有数据,将该通用比较命令的执行结果作为输入条件而使保护对象程序部分得以执行。根据该技术,通过由装置制造商确定作为第1操作码的地址,且将该地址设为非公开,由此,可以使得装置制造商生成的用户程序只能在装置制造商准备的特定的PLC中执行。
专利文献1:日本特开2009-70144号公报
发明内容
另一方面,在终端用户侧,在PLC发生故障时,将故障的PLC更换为备用的PLC,存在希望尽可能迅速地使工业用装置再运转的要求。但是,根据上述专利文献1的技术,由于使得故障的PLC的用户程序只能在与故障的PLC相同的地址处设置了相同的硬件固有数据的PLC中运行,所以必须针对每个PLC准备备用的PLC,否则就必须与装置制造商联络,购入更换用的PLC,对于终端用户而言存在维护性差的问题。
另外,除了专利文献1的技术之外,还考虑利用密码对从PLC读出用户程序的权限进行管理,以防止不正当复制,但根据该技术,在终端用户泄漏了密码的情况下,无法防止不正当复制,相反如果终端用户严格进行密码管理,则失去了维护性。
本发明就是鉴于上述情况而提出的,其目的在于,得到一种具有尽可能高的维护性且可以防止不正当的装置复制的PLC以及程序设计装置。
为了解决上述课题,实现目的,本发明是一种可编程控制器,其基于用户程序对工业用装置进行控制,其特征在于,具有:被实施了访问保护的可拆卸的第1存储部,其存储第1密钥数据;第2存储部,其将所述用户程序与第2密钥数据相关联而存储;以及启动处理部,其在接通电源时,执行本PLC的启动处理,所述启动处理部具有启动处理停止确定部,其将本PLC中安装的所述第1存储部所存储的第1密钥数据、和与所述第2存储部中存储的用户程序相关联的第2密钥数据读出,基于所述读出的2个密钥数据的核对,确定是继续进行所述启动处理,还是停止所述启动处理而执行异常处理。
发明的效果
根据本发明,具有下述效果,即,可以尽可能具有高维护性且防止不正当的装置复制。
附图说明
图1是对可以防止不正当的PLC复制这一点进行说明的图。
图2是对具有高维护性这一点进行说明的图。
图3是对本发明的实施方式的PLC的硬件结构进行说明的图。
图4是对本发明的实施方式的PLC的功能结构进行说明的图。
图5是对本发明的实施方式的程序设计装置的硬件结构进行说明的图。
图6是对本发明的实施方式的程序设计装置的功能结构进行说明的图。
图7是对第1密钥数据设定处理进行说明的流程图。
图8是对第2密钥数据设定处理进行说明的流程图。
图9是对PLC启动处理进行说明的流程图。
符号的说明
1PLC
2程序设计工具
10密钥存储装置
11第1密钥数据
12用户程序
13第2密钥数据
14CPU
15EEPROM
16SRAM
17通信I/F
18密钥存储装置I/F
19固件
21CPU
22ROM
23RAM
24输入部
25显示部
26通信I/F
27程序设计工具程序
31PLC启动处理部
32用户程序执行部
33第1密钥数据读出部
34密钥数据核对部
41用户程序设定部
42第2密钥数据设定部
43第1密钥数据设定部
44功能限制部
具体实施方式
下面,基于附图,详细说明本发明所涉及的可编程控制器以及程序设计装置的实施方式。此外,本发明并不受本实施方式限定。
实施方式
在本发明的实施方式中,为了具有高维护性且可以防止不正当的PLC复制,PLC构成为,安装对第1密钥数据进行存储的密钥存储装置,该第1密钥数据不对终端用户公开且禁止终端用户的访问,PLC存储与对应于第1密钥数据的第2密钥数据相关联的用户程序,如果第1密钥数据和第2密钥数据的核对结果不是吻合,则不完成本PLC的启动处理。首先,为了有助于理解,对本发明的实施方式的特征概括地进行说明。此外,以下,举出在第1密钥数据和第2密钥数据相同的情况下,判定为核对结果吻合的例子而进行说明。
图1是说明通过本发明的实施方式可以防止不正当的PLC复制这一点的图。在这里,对下述情况进行说明,即,从装置制造商准备的PLC(PLC 1a)读出用户程序12,通过将读出的用户程序12向空的PLC(PLC 1b)写入,从而要使PLC 1b进行与PLC 1a相同的控制。在PLC 1a以及PLC 1b(以下总称为PLC 1)中,安装有密钥存储装置10,其是可拆卸且具有终端用户无法访问的结构的存储装置。装置制造商预先在PLC 1a的密钥存储装置10中写入不对终端用户公开的数据、即第1密钥数据11,在用户程序12中预先嵌入与第1密钥数据11相同值的数据、即第2密钥数据13。
在PLC 1中,如果接通电源,则作为包含PLC 1自身具有的存储区域的检查等在内的PLC启动处理的一环,对第1密钥数据11和第2密钥数据13进行核对,对这两者是否一致进行判定。在这两个密钥数据一致的情况下,PLC 1完整地执行PLC启动处理,跳转至可以启动用户程序的状态。如果在该状态下输入RUN指示,则PLC1启动用户程序12。在第1密钥数据11和第2密钥数据13不一致的情况下,PLC 1停止PLC启动处理。
在图1的情况下,对于作为用户程序12的复制源的PLC 1a,第1密钥数据11和第2密钥数据13一致(核对结果吻合),PLC启动处理顺利结束,成为可以启动用户程序12的状态。另一方面,对于作为用户程序12的复制目标的PLC 1b,如果没有安装PLC 1a中所安装的密钥存储装置10,则接通电源后,第1密钥数据11和第2密钥数据13成为核对不一致(核对结果不吻合),停止PLC启动处理,不向可以启动用户程序12的状态跳转。
此外,还考虑构成为,在输入RUN指示的定时执行第1密钥数据11和第2密钥数据13的核对,或如专利文献1所公开的技术那样,在用户程序12启动后执行,但在本发明的实施方式中,为了使得通过逆向工程而对第1密钥数据11和第2密钥数据13进行译解变得困难,所以如上述所示在PLC启动处理中进行核对。
另外,如果如专利文献1所公开的技术那样,构成为,在用户程序12中包含用于核对密钥数据的通用比较命令,则通过将该通用比较命令删除,从而可以不正当使用所复制的用户程序12,但在本发明的实施方式中,由于没有采用基于用户程序12进行密钥数据核对的结构,所以即使找到嵌入有第2密钥数据13的位置,并将该第2密钥数据13删除,也成为核对结果不吻合,因此,可以防止用户程序12的不正当使用。
如上述所示,根据本发明的实施方式,如果没有装置制造商准备的密钥存储装置10,则无法执行用户程序12,因此,可以防止将执行相同控制的PLC 1任意复制。
图2是对本发明的实施方式具有高维护性这一点进行说明的图。在这里,对终端用户将PLC 1a更换为PLC 1b的情况进行说明。首先,如图2(a)所示,终端用户从PLC 1a拔出用于存储第1密钥数据11的密钥存储装置10,使用程序设计装置(以下称为程序设计工具)2,针对各个第2密钥数据13读出已搭载在PLC 1a中的用户程序12。然后,终端用户如图2(b)所示,向PLC 1b中安装从PLC 1a拔出的密钥存储装置10,使用程序设计工具2将读出的用户程序12向PLC 1b中写入。然后,如果终端用户接通PLC 1b的电源,则PLC1b对第1密钥数据11和第2密钥数据13进行核对。由于第1密钥数据11以及第2密钥数据13分别与PLC 1a中存储的相同,所以核对结果吻合,PLC 1b完成PLC启动处理,成为可以进行用户程序12的启动的状态。
如上述所示,根据本发明的实施方式,如果将密钥存储装置10调换,并且对用户程序12进行复制,则可以使其他PLC 1执行相同的控制,因此,在PLC 1发生故障时等,终端用户可以在短时间内更换PLC 1。另外,作为更换用而准备的PLC 1b,不需要如专利文献1所公开的技术那样,是由装置制造商预先将硬件固有数据设置在规定地址的PLC(即,由装置制造商作为专用装置而准备的PLC),只要是具有本发明的实施方式所应用的结构的PLC即可,可以是任意的PLC 1。例如,存在下述情况,即,终端用户使用分别执行不同控制的多个PLC 1。在此情况下,如果准备1个备用的PLC 1,则无论多个PLC 1中的哪个PLC 1发生故障,都可以更换为备用的PLC 1。另外,终端用户不必进行密码输入就可以简单地更换PLC 1。如上述所示,本发明的实施方式成为对于终端用户而言维护性高的技术方案。
图3是对上述说明的PLC 1的硬件结构进行说明的图。如图所示,PLC 1具有CPU(Central Processing Unit)14、EEPROM(Electrically Erasable Programmable Read Only Memory)15、SRAM(Static Random Access Memory)16、通信接口(I/F)17、以及密钥存储装置I/F 18。CPU 14、EEPROM 15、SRAM 16、通信I/F 17以及密钥存储装置I/F 18分别经由总线彼此连接。
密钥存储装置I/F 18是用于访问上述的密钥存储装置10的接口。PLC 1经由密钥存储装置I/F 18访问安装的密钥存储装置10所存储的第1密钥数据11。
此外,如上述所示,密钥存储装置10所存储的第1密钥数据11是终端用户无法进行读写的。作为用于实现上述目的的结构,在这里构成为,对于密钥存储装置10的访问,使用不对终端用户公开的专用通信协议(对传送路径的物理条件、传递、对象的确定、信息表达中的至少一个进行了专用设计的通信协议)进行。
EEPROM 15存储有:嵌入有第2密钥数据13的用户程序12、以及作为PLC 1的系统程序的固件19。
在SRAM 16中,预留了固件展开区域、用户程序展开区域、设备(device)数据存储区域。固件19从EEPROM 15被读出,向SRAM16的固件展开区域中展开,CPU 14基于展开至SRAM 16中的固件19,执行PLC 1的包含上述PLC启动处理在内的基本动作。CPU 14在完成PLC启动处理后,如果来自操作人员的RUN指示经由未图示的输入接口或可编程显示器而输入,则启动用户程序12(用户程序启动处理)。具体地说,作为用户程序启动处理,CPU 14将用户程序12从EEPROM 15读出并向SRAM 16的用户程序展开区域中展开,启动展开后的用户程序12。CPU 14基于通过用户程序启动处理启动的用户程序12的控制,生成用于控制工业用装置的设备数据,将生成的设备数据向SRAM 16的设备数据存储区域中存储。
通信I/F 17是用于执行与程序设计工具2之间的通信的通信接口。
图4是说明通过由CPU 14执行固件19而实现的PLC 1的功能结构的图。如图所示,PLC 1具有:执行PLC启动处理的PLC启动处理部31、以及执行用户程序启动处理的用户程序执行部32。PLC启动处理部31还具有:第1密钥数据读出部33,其使用上述的专用通信协议,访问密钥存储装置10,读出第1密钥数据11;以及密钥数据核对部34,其将第1密钥数据读出部33所读出的第1密钥数据11和嵌入至用户程序12中的第2密钥数据13进行核对,基于核对结果,确定是继续进行PLC启动处理,还是停止PLC启动处理而执行异常处理。
此外,作为异常处理,可以是使PLC 1强制结束,也可以是在使PLC启动处理停止后,向可编程显示器等上输出对操作人员的警告。
图5是对程序设计工具2的硬件结构进行说明的图。如图所示,程序设计工具2采用与具有CPU 21、ROM 22、RAM 23、输入部24、显示部25以及通信I/F 26的通常的计算机等同的结构。CPU 21、ROM22、RAM 23、输入部24、显示部25以及通信I/F 26分别经由总线彼此连接。
CPU 21执行程序设计工具程序27,其是用于实现后述的程序设计工具2的功能的计算机程序。显示部25是液晶显示器等显示装置,基于来自CPU 21的指示,显示操作画面等的针对操作人员的输出信息。输入部24具有鼠标及键盘而构成,输入来自操作人员的程序设计工具2的操作。输入至输入部24的操作信息被发送至CPU 21。通信I/F 26是用于执行与PLC 1之间的通信的通信接口。
程序设计工具程序27存储在ROM 22中,经由总线线路向RAM23加载。CPU 21执行已加载至RAM 23内的程序设计工具程序27。
此外,程序设计工具程序27也可以存储在磁盘(DISK)等存储装置中。另外,程序设计工具程序27也可以向磁盘等存储装置中加载。另外,也可以构成为,将程序设计工具程序27向与互联网等网络连接的计算机上存储,通过经由网络下载而提供或者散发。另外,也可以构成为,经由互联网等网络提供或者散发由程序设计工具2执行的程序设计工具程序27。另外,也可以构成为,将程序设计工具程序27预先安装在ROM 22等中,从而向程序设计工具2提供。
图6是说明通过由CPU 21执行程序设计工具程序27而实现的程序设计工具2的功能结构的图。
如图6所示,程序设计工具2具有用户程序设定部41,其基于操作人员的操作,生成用户程序12、将所生成的用户程序12向PLC1所具有的EEPROM 15中写入、或者将已写入至EEPROM 15中的用户程序12读出。在这里,用户程序设定部41还具有第2密钥数据设定部42,其在生成的用户程序12中嵌入第2密钥数据13。
另外,程序设计工具2具有:第1密钥数据设定部43,其使用专用通信协议访问密钥存储装置10,读写第1密钥数据11;功能限制部44,其对操作人员对于第1密钥数据设定部43的使用进行限制(许可/不许可)。作为功能限制部44的限制方式,在这里采用下述密码认证方式,即,要求输入密码、即作为访问对象的密钥存储装置10所存储的第1密钥数据11,在所输入的密码与密钥存储装置10所存储的第1密钥数据11一致的情况下,许可第1密钥数据设定部43的使用。通过这种密码认证方式,可以将能够访问密钥存储装置10的操作人员,仅限定为写入了第1密钥数据11的操作人员(即,装置制造商)。
下面,对本发明的实施方式的PLC 1以及程序设计工具2的动作进行说明。图7是说明通过装置制造商的操作人员对程序设计工具2进行操作而设定第1密钥数据11的动作(第1密钥数据设定处理)的流程图。此外,在这里,第1密钥数据设定处理是在将安装有密钥存储装置10的PLC 1和程序设计工具2连接后的状态下执行的。
如果功能限制部44启动,开始第1密钥数据设定处理,则如图7所示,功能限制部44接受作为密码的第1密钥数据11的输入(步骤S 1)。这样,功能限制部44经由第1密钥数据设定部43对PLC 1中安装的密钥存储装置10进行访问,将密钥存储装置10所存储的第1密钥数据11读出,对所输入的第1密钥数据11和所读出的第1密钥数据11是否一致进行判定(步骤S2)。
在这两个第1密钥数据11不一致的情况下(步骤S2,否),功能限制部44不许可操作人员访问密钥存储装置10(步骤S3),结束第1密钥数据设定处理。在这两个第1密钥数据11一致的情况下(步骤S2,是),功能限制部44许可操作人员访问密钥存储装置10,即,许可第1密钥数据设定部43的操作(步骤S4)。
然后,如果第1密钥数据设定部43接受来自操作人员的作为新的设定值的第1密钥数据11的输入(步骤S5),则利用所输入的第1密钥数据11的设定值,覆盖密钥存储装置10所存储的第1密钥数据11(步骤S6),结束第1密钥数据设定处理。
此外,在向未设定第1密钥数据11的密钥存储装置10中设定第1密钥数据11的情况下,也可以不必经过步骤S1~步骤S4的密码认证,就可以设定第1密钥数据11。在此情况下,也可以由功能限制部44在步骤S1之前对第1密钥数据11是否未设定进行判定,在未设定的情况下,向步骤S5跳转,在不是未设定的情况下,向步骤S1跳转。
另外,也可以由PLC制造商在密钥存储装置10中设定了作为初始值的第1密钥数据11的状态下向装置制造商出货,装置制造商通过在步骤S1中输入从PLC制造商获知的初始值,从而通过密码认证。
图8是说明通过装置制造商的操作人员对程序设计工具2进行操作而设定第2密钥数据13的动作(第2密钥数据设定处理)的流程图。此外,对于第2密钥数据,可以将程序设计工具2与PLC 1连接,直接向处于存储在EEPROM 15中的状态下的用户程序12中设定,也可以不将程序设计工具2与PLC 1连接,而向处于存储在程序设计工具2的RAM 23的数据存储区域中或未图示的外部存储装置中的状态下的用户程序12中设定。
如图8所示,如果用户程序设定部41中的第2密钥数据设定部42启动,开始第2密钥数据设定处理,则首先,第2密钥数据设定部42接受来自操作人员的第2密钥数据13的设定值的输入(步骤S11)。这样,第2密钥数据设定部42将所输入的第2密钥数据13的设定值向用户程序12中嵌入(步骤S12),结束第2密钥数据设定处理。
在这里,用户程序12中的第2密钥数据13的嵌入部位对于终端用户是不公开的。另外,也可以通过由第2密钥数据设定部42对用户程序12实施不易读处理,从而使得第2密钥数据13嵌入部位的确定变得困难。通过使第2密钥数据13的嵌入部位的确定变得困难,从而可以得到使PLC 1的不正当复制变得更困难的效果。
下面,图9是对PLC启动处理进行说明的流程图。如图所示,如果接通PLC 1的电源,开始PLC启动处理,则首先,通过PLC启动处理部31,将固件19向SRAM 16中所预留的固件展开区域展开(步骤S21)。步骤S21以后,CPU 14基于展开至SRAM 16上的固件19而进行动作。
然后,作为PLC启动处理的一环,第1密钥数据读出部33从安装在PLC 1上的密钥存储装置10读出第1密钥数据11(步骤S22)。然后,密钥数据核对部34将已嵌入至用户程序12中的第2密钥数据13读出(步骤S23)。然后,密钥数据核对部34对第1密钥数据读出部33所读出的第1密钥数据11和已嵌入至用户程序12中的第2密钥数据13是否一致进行判定(步骤S24)。
在第1密钥数据11和第2密钥数据13不一致的情况下(步骤S24,否),PLC启动处理部31停止PLC启动处理,执行异常处理(步骤S25)。
另一方面,在第1密钥数据11和第2密钥数据13一致的情况下(步骤S24,是),PLC启动处理部31直接继续进行PLC启动处理(步骤S26),完成PLC启动处理。
此外,在以上的说明中,举出了密钥数据核对部34在第1密钥数据11和第2密钥数据13相等的情况下视为核对结果吻合的例子,并进行了说明,但也可以在密钥数据核对部34中设置规定的变换算法,密钥数据核对部34应用该变换算法,对一个或这两个密钥数据进行变换,在应用该变换算法后的密钥数据彼此一致的情况下,视为核对吻合。
另外,举出了功能限制部44将访问对象的密钥存储装置10所存储的第1密钥数据11作为密码而对第1密钥数据设定部43的使用进行许可/不许可的例子,并进行了说明,但功能限制部44所使用的密码并不仅限定于第1密钥数据11。例如,也可以在密钥存储装置10中,除了第1密钥数据11之外存储作为密码使用的数据,功能限制部44接受访问对象的密钥存储装置10所存储的上述数据的输入。另外,也可以将上述数据和第1密钥数据11的组合,作为在核对中使用的密码而使用。
另外,举出了第1密钥数据设定处理在将安装了密钥存储装置10的PLC 1和程序设计工具2连接后的状态下执行的例子,并进行了说明,但也可以构成为,在程序设计工具2中也具有密钥存储装置I/F,经由该密钥存储装置I/F执行第1密钥数据设定处理。此外,密钥存储装置I/F可以是USB存储器,也可以是专用设计的硬件。
如上述所示,根据本发明的实施方式,PLC 1在接通电源时,将本PLC中安装的被实施了访问保护的可拆卸的密钥存储装置10所存储的第1密钥数据11、和与EEPROM 15所存储的用户程序12相关联的第2密钥数据13读出,将所读出的第1密钥数据11和第2密钥数据13进行核对,基于核对结果,确定是继续进行PLC启动处理,还是停止PLC启动处理而执行异常处理,因此,可以得到具有尽可能高的维护性且能够防止不正当的装置复制的PLC。
另外,由于程序设计工具2具有下述部分而构成,即:第1密钥数据设定部43,其对密钥存储装置10中存储的第1密钥数据11进行读写;功能限制部44,其对用户对于第1密钥数据设定部43的操作进行许可/不许可;以及第2密钥数据设定部42,其接受用户的第2密钥数据13的输入,将上述接受的第2密钥数据13与用户程序12相关联,所以除了装置制造商之外的用户难以设定第1密钥数据,因此,可以防止PLC 1的不正当的装置复制。
工业实用性
如上述所示,本发明所涉及的PLC和程序设计装置,优选应用于基于用户程序对工业用装置进行控制的PLC以及生成上述用户程序的程序设计装置。

Claims (10)

1.一种可编程控制器、即PLC,其基于用户程序对工业用装置进行控制,
其特征在于,具有:
被实施了访问保护的可拆卸的第1存储部,其存储第1密钥数据;
第2存储部,其将所述用户程序与第2密钥数据相关联而存储;以及
启动处理部,其在接通电源时,执行本PLC的启动处理,
所述启动处理部具有启动处理停止确定部,其将本PLC中安装的所述第1存储部所存储的第1密钥数据、和与所述第2存储部中存储的用户程序相关联的第2密钥数据读出,基于所述读出的2个密钥数据的核对,确定是继续进行所述启动处理,还是停止所述启动处理而执行异常处理。
2.根据权利要求1所述的可编程控制器,其特征在于,
所述启动处理停止确定部在所述读出的2个密钥数据一致时,确定为继续进行所述启动处理,在所述读出的2个密钥数据不一致时,确定为停止所述启动处理而执行异常处理。
3.根据权利要求1所述的可编程控制器,其特征在于,
所述第1存储部通过访问时需要专用的通信协议这一点,而得到访问保护。
4.根据权利要求1所述的可编程控制器,其特征在于,
所述第2密钥数据通过嵌入至所述用户程序中并存储在所述第2存储部中,从而与该用户程序相关联。
5.根据权利要求4所述的可编程控制器,其特征在于,
对嵌入有所述第2密钥数据的用户程序进行了不易读化。
6.一种程序设计装置,其生成由权利要求1所述的PLC执行的用户程序,
其特征在于,具有:
第1密钥数据设定部,其对存储在所述第1存储部中的所述第1密钥数据进行读写;
功能限制部,其对用户对于所述第1密钥数据设定部的操作进行许可/不许可;以及
第2密钥数据设定部,其接受所述用户的第2密钥数据的输入,将所述接受的第2密钥数据与所述生成的用户程序相关联。
7.根据权利要求6所述的程序设计装置,其特征在于,
所述功能限制部在所述用户对所述第1存储部中存储的第1密钥数据进行更新时,接受来自所述用户的密码输入,基于所述接受的密码,对所述第1密钥数据设定部的操作进行许可/不许可。
8.根据权利要求7所述的程序设计装置,其特征在于,
所述功能限制部对所述接受的密码和所述第1存储部中存储的第1密钥数据是否一致进行判定,在所述接受的密码和所述第1存储部中存储的第1密钥数据一致时,许可对所述第1密钥数据设定部的操作,在所述接受的密码和所述第1存储部中存储的第1密钥数据不一致时,不许可对所述第1密钥数据设定部的操作。
9.根据权利要求6所述的程序设计装置,其特征在于,
所述第2密钥数据设定部通过将所述接受的第2密钥数据向所述生成的用户数据中嵌入,从而将所述接受的第2密钥数据与所述生成的用户程序相关联。
10.根据权利要求9所述的可编程控制器,其特征在于,
所述第2密钥数据设定部对与所述接受的第2密钥数据相关联的用户程序进行不易读化。
CN201080063471.7A 2010-02-12 2010-02-12 可编程控制器 Active CN102763046B (zh)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/JP2010/052081 WO2011099146A1 (ja) 2010-02-12 2010-02-12 プログラマブルコントローラおよびプログラミング装置

Publications (2)

Publication Number Publication Date
CN102763046A true CN102763046A (zh) 2012-10-31
CN102763046B CN102763046B (zh) 2015-12-16

Family

ID=44367449

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201080063471.7A Active CN102763046B (zh) 2010-02-12 2010-02-12 可编程控制器

Country Status (7)

Country Link
US (1) US20120310379A1 (zh)
JP (1) JP5414812B2 (zh)
KR (1) KR101440707B1 (zh)
CN (1) CN102763046B (zh)
DE (1) DE112010005256T5 (zh)
TW (1) TWI437391B (zh)
WO (1) WO2011099146A1 (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109765838A (zh) * 2019-03-04 2019-05-17 杭州电子科技大学 可编程逻辑控制器组态文件的生成方法及装置

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9311460B2 (en) * 2011-03-15 2016-04-12 Omron Corporation Programmable controller system, tool device, tool program, storage medium, and programmable controller
JP5786386B2 (ja) * 2011-03-15 2015-09-30 オムロン株式会社 プログラマブルコントローラシステム、ツール装置、ツール用プログラム及び記録媒体並びにプログラマブルコントローラ
KR20140071413A (ko) * 2011-09-09 2014-06-11 미쓰비시덴키 가부시키가이샤 프로그래머블 표시기
KR101888382B1 (ko) * 2011-12-16 2018-09-21 삼성전자 주식회사 복수 키 활용 지원 저장 장치
JP2017506377A (ja) * 2013-12-20 2017-03-02 ウエスチングハウス・エレクトリック・カンパニー・エルエルシー 産業用制御システムを防護するためのシステムおよび方法

Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS61206036A (ja) * 1985-03-11 1986-09-12 Hitachi Ltd 述語論理型言語処理方式
JPH06110512A (ja) * 1992-09-25 1994-04-22 Matsushita Electric Works Ltd プログラマブルコントローラ
JPH06222815A (ja) * 1993-01-26 1994-08-12 Matsushita Electric Works Ltd プログラマブルコントローラ
JP2003022141A (ja) * 2001-07-05 2003-01-24 Qubit Co Inc 不正防止方法及び不正防止プログラム
JP2005038068A (ja) * 2003-07-17 2005-02-10 Ricoh Co Ltd ソフトウェア違法コピー防止システム
CN101005361A (zh) * 2007-01-22 2007-07-25 北京飞天诚信科技有限公司 一种服务器端软件保护方法及系统
CN101034427A (zh) * 2006-03-09 2007-09-12 环隆电气股份有限公司 保护软件使用权的方法及电脑可读取的记录媒体
CN101082950A (zh) * 2007-07-10 2007-12-05 侯同济 一种软件加密注册防盗版方法

Family Cites Families (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2544099B2 (ja) * 1985-03-09 1996-10-16 株式会社 メルコ コンピユ−タプログラムの盗用防止装置
US6237103B1 (en) * 1998-09-30 2001-05-22 International Business Machines Corporation Power sequencing in a data processing system
US7110580B2 (en) * 2000-05-19 2006-09-19 Nextgenid, Inc. Distributed biometric access control method and apparatus
JP3526293B2 (ja) * 2001-11-30 2004-05-10 三菱電機株式会社 プログラマブルコントローラ
GB2385156B (en) * 2002-02-06 2005-08-10 Inventec Corp Automatic storage and retrieval system and method
US8335920B2 (en) * 2005-07-14 2012-12-18 Imation Corp. Recovery of data access for a locked secure storage device
JP4851182B2 (ja) * 2005-12-28 2012-01-11 ルネサスエレクトロニクス株式会社 マイクロコンピュータ、マイクロコンピュータに対するプログラム書込み方法、及び書込み処理システム
EP1982245B1 (en) * 2006-02-10 2014-04-02 Siemens Aktiengesellschaft Security key with instructions
CA2655555A1 (en) * 2006-06-19 2007-12-27 Liquid Computing Corporation Methods, systems and protocols for application to application communications
CN101329658B (zh) * 2007-06-21 2012-12-05 西门子(中国)有限公司 加密、解密方法,及应用所述方法的plc系统
US8185941B2 (en) * 2007-07-31 2012-05-22 Hewlett-Packard Development Company, L.P. System and method of tamper-resistant control
JP2009070144A (ja) 2007-09-13 2009-04-02 Omron Corp Plcにおけるプログラミング方法
US20110105222A1 (en) * 2008-06-23 2011-05-05 Gagner Mark B Managing wagering game content
US8516237B2 (en) * 2010-01-12 2013-08-20 Oracle America, Inc. Method and system for providing information to a subsequent operating system

Patent Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS61206036A (ja) * 1985-03-11 1986-09-12 Hitachi Ltd 述語論理型言語処理方式
JPH06110512A (ja) * 1992-09-25 1994-04-22 Matsushita Electric Works Ltd プログラマブルコントローラ
JPH06222815A (ja) * 1993-01-26 1994-08-12 Matsushita Electric Works Ltd プログラマブルコントローラ
JP2003022141A (ja) * 2001-07-05 2003-01-24 Qubit Co Inc 不正防止方法及び不正防止プログラム
JP2005038068A (ja) * 2003-07-17 2005-02-10 Ricoh Co Ltd ソフトウェア違法コピー防止システム
CN101034427A (zh) * 2006-03-09 2007-09-12 环隆电气股份有限公司 保护软件使用权的方法及电脑可读取的记录媒体
CN101005361A (zh) * 2007-01-22 2007-07-25 北京飞天诚信科技有限公司 一种服务器端软件保护方法及系统
CN101082950A (zh) * 2007-07-10 2007-12-05 侯同济 一种软件加密注册防盗版方法

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109765838A (zh) * 2019-03-04 2019-05-17 杭州电子科技大学 可编程逻辑控制器组态文件的生成方法及装置

Also Published As

Publication number Publication date
US20120310379A1 (en) 2012-12-06
JPWO2011099146A1 (ja) 2013-06-13
DE112010005256T5 (de) 2013-05-02
CN102763046B (zh) 2015-12-16
WO2011099146A1 (ja) 2011-08-18
KR20120119217A (ko) 2012-10-30
KR101440707B1 (ko) 2014-09-17
JP5414812B2 (ja) 2014-02-12
TW201128333A (en) 2011-08-16
TWI437391B (zh) 2014-05-11

Similar Documents

Publication Publication Date Title
CN107924443B (zh) 用于过程控制的控制装置的固件升级方法及其系统
CN102763046A (zh) 可编程控制器以及程序设计装置
CN101840221B (zh) 可移动安全模块及相关方法
CN109597633B (zh) 软件管理系统、软件更新装置、软件更新方法以及存储介质
US9548867B2 (en) Method and apparatus for secure distribution of embedded firmware
KR20170131551A (ko) 시스템 설계 지원 장치, 시스템 설계 지원 방법 및 시스템 설계 지원 프로그램
JP6457471B2 (ja) 操作者識別システム
CN103258148B (zh) 控制系统、控制装置和程序执行控制方法
CN102236765B (zh) 一种可编程逻辑控制器安全保护的方法及装置
JP5951162B1 (ja) 制御装置、複合ユニット装置、更新判定プログラム及びプログラム更新方法
WO2020195348A1 (ja) 制御システム、セキュリティ装置および方法
CN111108451A (zh) 工业控制系统
WO2022185583A1 (ja) 制御装置、ならびに制御装置の記憶部に保存されたデータの入出力を管理するプログラムおよび方法
US11841698B2 (en) Arrangement and method for secure execution of an automation program in a cloud computing environment
US20070174202A1 (en) System and method for enabling software programs which need to be enabled
JP5951405B2 (ja) プログラマブルコントローラ、エンジニアリングツールプログラム、およびそのシステム
US20220326677A1 (en) Control device, control system, and management method
JP5786386B2 (ja) プログラマブルコントローラシステム、ツール装置、ツール用プログラム及び記録媒体並びにプログラマブルコントローラ
JP6065161B2 (ja) 産業機器生産システム、産業機器生産方法、プログラム、及び情報記憶媒体
WO2022190526A1 (ja) 制御システムおよびその制御方法
JP7318264B2 (ja) コントローラシステム
WO2022190422A1 (ja) 制御システムおよびその制御方法
JP6138636B2 (ja) プログラマブルコントローラ、プログラミング装置、およびそれらのシステム
CN106406155B (zh) 射出机用的人机界面应用系统
CN117389614A (zh) 车辆软件的激活方法、装置、计算机设备及存储介质

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C14 Grant of patent or utility model
GR01 Patent grant