首页> 中国专利> 可编程控制器以及程序设计装置

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

摘要

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个密钥数据的核对,确定是继续进行上述启动处理,还是停止上述启动处理而执行异常处理。

著录项

  • 公开/公告号CN102763046A

    专利类型发明专利

  • 公开/公告日2012-10-31

    原文格式PDF

  • 申请/专利权人 三菱电机株式会社;

    申请/专利号CN201080063471.7

  • 发明设计人 千波保彦;

    申请日2010-02-12

  • 分类号G05B19/05;

  • 代理机构北京天昊联合知识产权代理有限公司;

  • 代理人何立波

  • 地址 日本东京

  • 入库时间 2023-12-18 07:11:56

法律信息

  • 法律状态公告日

    法律状态信息

    法律状态

  • 2015-12-16

    授权

    授权

  • 2012-12-26

    实质审查的生效 IPC(主分类):G05B19/05 申请日:20100212

    实质审查的生效

  • 2012-10-31

    公开

    公开

说明书

技术领域

本发明涉及一种基于用户程序对工业用装置进行控制的可编程 控制器(以下简称为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指示,则PLC 1启动用户程序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的电源,则PLC 1b对第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被读出,向SRAM 16的固件展开区域中展开,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、ROM 22、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中,经由总线线路向RAM 23加载。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向PLC 1所具有的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以及生成上述用户程 序的程序设计装置。

去获取专利,查看全文>

相似文献

  • 专利
  • 中文文献
  • 外文文献
获取专利

客服邮箱:kefu@zhangqiaokeyan.com

京公网安备:11010802029741号 ICP备案号:京ICP备15016152号-6 六维联合信息科技 (北京) 有限公司©版权所有
  • 客服微信

  • 服务号