一种plc保护系统及保护方法
【技术领域】
[0001]本发明涉及自动化控制的技术领域,特别是涉及一种可编程逻辑控制器(Programmable Logic Controller,PLC)保护系统及保护方法。
【背景技术】
[0002]随着我国经济的快速发展,制造和加工工业正逐步向中国转移。这给中国国内工业装备市场带来了大量的商机,国内各行业的制造商开发和制造出大量价廉物美的设备,取得了良好的经济和社会效应。现代工业设备中大量采用PLC作为主控制系统,PLC作为整个设备的核心部件,其软件包涵了生产工艺、控制逻辑,设备数据、加工参数及信息通讯等重要内容,从而成为设备仿制者重点要获取的目标之一。
[0003]现有技术中,PLC的保护必须依靠PLC厂家提供的硬件和软件平台。如申请号为201110210475.X,发明名称为《一种PLC加密方法》的中国发明专利中公开一种PLC加密方法,包括以下步骤:101)向PLC生产线和PLC用户颁发配套的含有用户识别码信息的许可证证书;102) PLC生产线从“许可证证书”导出用户识别码,将用户识别码写入PLC的EEPROM中;103)用户编程时,PLC的后台编程软件从用户的许可证证书中导出用户识别码信息,PLC的后台编程软件编译用户程序生成PLC目标代码时,将用户识别码信息编译到PLC目标代码中,PLC目标代码保存到PLC的FLASH存储器中;104) PLC运行时,比较EEPROM的用户识别码与PLC目标代码的用户识别代码是否匹配,如果不匹配则中止运行。该发明增加了破解的难度,保证了 PLC源程序的安全。
[0004]然而,虽然在硬件和软件设计上都采用了多种技术来对PLC进行加密,但由于PLC厂家提供的技术存在共性,所以破解者也就有路可循,有章可依。从最初的穷举法、端口侦听、软件跟踪、到现在可以通过直接复制提取内存芯片的内容来分析破解,更有甚者全部复制程序代码,直接应用到相同硬件配置的设备,导致所有产品无一例外地遭到了破解。
[0005]因此,对于PLC,使用者能用的保护方法非常有限,且存在易于被解锁、被盗用,甚至被全盘COPY使用的风险。
【发明内容】
[0006]鉴于以上所述现有技术的缺点,本发明的目的在于提供一种PLC保护系统及保护方法,能够与PLC持续交换数据,一旦数据交换停止,PLC中的程序不再执行或者CPU直接停止工作,从而保证了 PLC中程序的安全性。
[0007]为实现上述目的及其他相关目的,本发明提供一种PLC保护系统,PLC包括CPU、存储单元和输入/输出单元,所述保护系统包括微处理器、指示模块、通讯接口和电源模块;所述指示模块、所述通讯接口和所述电源模块均与所述微处理器相连;所述电源模块用于给所述微处理器供电;所述微处理器用于与所述CPU进行实时数据交换,判断所读取的数据是否符合预先设定的规则;若是,指示PLC正常工作;若否,指示PLC停止工作;所述通讯接口用于实现所述微处理器与所述CPU的通讯;所述指示模块用于指示所述电源模块的工作状态,以及所述微处理器与所述CPU间的通讯状态。
[0008]根据上述的PLC保护系统,其中:所述电源模块将由CPU通讯口取得的电源转换稳压后提供给所述微处理器。
[0009]根据上述的PLC保护系统,其中:所述通讯接口采用RS485接口,通讯协议采用MP1
[0010]根据上述的PLC保护系统,其中:所述指示模块包括两个贴片LED。一个贴片LED用于作所述电源模块的工作状态指示,另一个贴片LED用于作所述微处理器与所述CPU通讯状态指示。
[0011 ] 同时,本发明还提供一种根据上述任一的PLC保护系统的PLC保护方法,包括以下步骤:
[0012]步骤S1、微处理器进行自检;
[0013]步骤S2、微处理器进行初始化;
[0014]步骤S3、微处理器读取PLC内的寄存器数值;
[0015]步骤S4、微处理器判断读取的数据是否满足预先设定的规则;若是,转入步骤S5 ;若否,转入步骤S6;
[0016]步骤S5、微处理器根据PLC控制的设备生产工艺需要的参数,执行为实现自动控制需要的功能算法,并将计算结果和心跳包发送至PLC ;
[0017]步骤S6、对PLC与微处理器的接口存储区进行清零操作,同时指示指示模块进行显不O
[0018]根据上述的PLC保护方法,其中:所述步骤SI中,所述微处理器进行自检时,在每次上电启动时完成微处理器内时钟、内存、累加器、计数器、定时器、1端口的诊断。
[0019]根据上述的PLC保护方法,其中:所述步骤S2中,所述微处理器进行初始化时,进行时钟选择、中断设定、1端口设置、外围器件设置、变量初始化。
[0020]根据上述的PLC保护方法,其中:所述步骤S3在,所述微处理器通过MPI端口采集PLC内的寄存器数值。
[0021]根据上述的PLC保护方法,其中:所述步骤S4中还包括:对读取到的数据进行解密操作,对解密后的数据进行判断。
[0022]根据上述的PLC保护方法,其中:所述步骤S5中还包括:所述PLC读取所述微处理器的数据,并进行解析;如果数据符合预先设定的规则且心跳包正常,则CPU正常写数据供微处理器读取使用,CPU中相关功能正常运行;否则,PLC中相关功能失效。
[0023]如上所述,本发明的PLC保护系统及保护方法,具有以下有益效果:
[0024](I)不再单纯依靠PLC厂家提供的编程软件应用平台,通过硬件实现了 PLC程序的保护;
[0025](2)安全性高,无法破解、通用性好。
【附图说明】
[0026]图1显示为本发明的PLC保护系统的结构示意图;
[0027]图2显示为本发明的电源模块的结构示意图;
[0028]图3显示为RS485接口的结构示意图;
[0029]图4显示为本发明的PLC保护方法的流程图。
[0030]元件标号说明
[0031]I微处理器
[0032]2指示模块
[0033]3通讯接口
[0034]4电源模块
[0035]SI ?S6 步骤
【具体实施方式】
[0036]以下通过特定的具体实例说明本发明的实施方式,本领域技术人员可由本说明书所揭露的内容轻易地了解本发明的其他优点与功效。本发明还可以通过另外不同的【具体实施方式】加以实施或应用,本说明书中的各项细节也可以基于不同观点与应用,在没有背离本发明的精神下进行各种修饰或改变。
[0037]需要说明的是,本实施例中所提供的图示仅以示意方式说明本发明的基本构想,遂图式中仅显示与本发明中有关的组件而非按照实际实施时的组件数目、形状及尺寸绘制,其实际实施时各组件的型态、数量及比例可为一种随意的改变,且其组件布局型态也可能更为复杂。
[0038]本发明的PLC保护系统利用CPU现有的通讯口,与PLC做实时数据交换。只有与CPU间的心跳正常,CPU中的程序才能正常工作;否则即使把PLC中程序全盘移植到另一个CPU中,程序也不能正常运行。
[0039]现有技术中,PLC包括CPU、存储单元和输入/输出单元等模块,程序存储在存储单元中。在本发明中无需对现有的PLC做任何改动,即可实现对PLC中程序的保护。
[0040]参照图1,本发明的PLC保护系统包括微处理器1、指示模块2、通讯接口 3和电源模块4。指示模块2、通讯接口 3和电源模块4均与微处理器I相连。
[0041]电源模块4用于给微处理器I供电。优选地,电源模块4将由CPU通讯口取得的电源转换稳压后提供给微处理器。
[0042]微处理器I用于与CPU进行实时数据交换,判断所读取的数据是否符合预先设定的规则;若是,指示PLC正常工作;若否,指示PLC停止工作。
[0043]具体地,本发明中采用MSP430F149作为微处理器。MSP430