生产设备的访问控制方法、设备控制器及云服务系统与流程

文档序号:26938764发布日期:2021-10-12 14:07阅读:49来源:国知局
生产设备的访问控制方法、设备控制器及云服务系统与流程

1.本发明涉及智能生产制造技术领域,具体而言,本发明涉及一种生产设备的访问控制方法、设备控制器及云服务系统。


背景技术:

2.为了提高企业竞争力、控制成本、保证质量,提高机器的智能化是制造业长期追求的目标。而随着计算机技术的兴起,云计算、大数据等使得生产的进一步自动化甚至智能化成为可能,于是反过来对机械工业提出了新的要求,机器渐渐从以机电硬件为主的传统机器,演变为具有自我感知能力、可接入工业网络、具有多种能力的智能机器。另外,在工业4.0参考架构模型(rami,reference architecture model industrie 4.0)中提出了一个工业4.0组件的新概念,工业4.0组件主要由管理外壳(as,administration shell)和物理设备(thing/asset)两部分组成,每个物理设备通过管理外壳抽象出虚拟设备,并接入工业网络,实现物理设备与数字设备的虚实映射,构成典型的信息物理融合系统。
3.由于工业机器软硬件紧耦合,要更新工业机器功能,一种方法是更换机器的部分或全部硬件以满足生产需求;另一种方法是工作人员根据生产需求,手动更改、调整机器的参数以满足生产需求。现有的更新方式存在以下问题:机器结构多样化,内部硬件结构、软件接口也不同,因此管理起来工作量大且复杂;传统工业制造系统中,工业机器一旦安装好了就难以变动,机器的升级与改造耗时耗力;传统工业制造机器,不具备自我感知、决策等功能,无法实现机器状态的监控反馈、预防避免,从而无法保证智能生产线、智能工厂生产过程中产品的质量品质。
4.为了解决由于工业机器种类多样、数量庞大导致更新效率低、灵活性差以及成本高昂等问题,现有技术还提供了另一种更新工业机器功能的方法,该方法主要包括:接收到应用层发送的更新命令,解析所述更新命令;若解析所述更新命令得到更新配置参数时,根据所述更新配置参数对所述工业机器的第一描述文件进行修改得到第二描述文件,根据所述第二描述文件对所述工业机器进行配置更新;或者若解析所述更新命令得到包括子模型、组件管理器和清单的更新信息时,根据所述子模型统一资源标志符(uri,uniform resource identifier)路径信息,从服务端下载更新软件,根据所述更新软件对所述工业机器进行配置更新;当确定所述工业机器完成配置更新后,向所述应用层发送与所述更新命令对应的更新结果。
5.以上方法根据应用层需求进行工业机器更新,更新时根据具体的更新命令分为更新参数和更新软件,增加了工业机器的适应性和灵活性,能够高效的进行工业设备配置的远程在线更新,但是以上方法仍然无法解决设备在线更新会中断生产的问题,同时设备更新的安全性问题仍然缺乏保证。


技术实现要素:

6.本发明实施例要解决的技术问题是提供一种生产设备的访问控制方法、设备控制
器及云服务系统,减少设备更新对生产的影响。
7.为解决上述技术问题,根据本发明的一个方面,提供了一种设备控制器,包括虚拟控制层和相互独立的远程访问环境和至少两个程序运行环境,所述程序运行环境为运行生产设备的控制程序的环境;所述至少两个程序运行环境包括一个主用运行环境和至少一个备用运行环境;所述远程访问环境通过内网口连接至内部网络中的认证服务器,通过所述外网口连接至外部网络中的云平台;所述虚拟控制层通过现场总线口连接至生产设备的控制模块;其中,
8.所述远程访问环境,用于通过所述外网口接收远程的读写访问请求,对读访问请求提供程序运行环境中的数据存储的只读镜像,对写访问请求的写入文件执行验证操作,将验证通过的写入文件写入到备用运行环境;以及,执行所述至少两个程序运行环境之间的主备状态切换,并同步各程序运行环境之间的控制程序和运行数据;
9.所述虚拟控制层,用于将主用程序运行环境的输出,连接至所述现场总线口。
10.根据本发明的至少一个实施例,所述远程访问环境包括有外部写寄存器、外部读寄存器、写入数据验证模块、签名及验证规则模块和同步控制模块;
11.所述程序运行环境包括数据存储区、控制逻辑区和控制输入/输出模块;
12.所述虚拟控制层包括输出切换控制模块;
13.其中,所述外部读寄存器,用于获取所述程序运行环境中的数据存储区的只读镜像,并响应于远程的读访问请求提供所述只读镜像中的对应数据;
14.所述外部写寄存器,用于接收远程的写访问请求的写入数据,以及,将验证通过的写入文件写入到备用运行环境的数据存储区和/或控制逻辑区;
15.所述签名及验证规则模块,用于通过内网口从认证服务器处获取签名文件以及验证规则,所述签名文件包括第一摘要文件、客户端识别码和写入文件序列号,所述第一摘要文件是客户端利用预设散列算法,对添加第一预设附加信息后的写入文件生成的;
16.所述写入数据验证模块,用于利用所述签名及验证规则模块获取的签名文件以及验证规则,对所述写访问请求的写入文件进行验证;
17.所述同步控制模块,用于同步各程序运行环境之间的控制程序和运行数据;
18.所述控制输入/输出模块,用于在所述控制逻辑区和输出切换控制模块之间交互数据;
19.所述输出切换控制模块,用于将从现场总线口接收到的数据发送给各个程序运行环境,以及,将主用运行环境输出的数据通过现场总线接口发送出去。
20.根据本发明的另一方面,还提供了一种生产设备的访问控制方法,应用于如上所述的设备控制器,所述访问控制方法包括:
21.通过所述外部写寄存器从外网口接收到写入文件及其文件序列号;
22.通过所述写入数据验证模块从内网口读取签名文件和验证规则,并利用所述写入文件的文件序列号匹配的签名文件,对所述写入文件进行验证;
23.若所述写入文件验证通过,则在备用运行环境准备好标志位已置位的情况下,将所述备用运行环境准备好标志位清除,并将所述写入文件写入到备用运行环境中,并在文件写入完成后,将用于表示写入文件已准备好的文件写入准备好标志位置位,以及,根据所述写入文件的更新类型,并设置对应的更新类型标志,所述更新类型包括不需要中断生产
的a类更新和需要中断生产的b类更新;
24.在检测到备用运行环境准备好标志位已清除,且文件写入准备好标志位已置位的情况下,若备用运行环境中的模拟运行符合预设条件,则根据对应的更新类型标志,将备用运行环境切换为主用运行环境或者将备用运行环境中的控制程序和数据写入到主用运行环境,并将备用运行环境准备好标志位置位,以及,将文件写入准备好标志位清除。
25.根据本发明的至少一个实施例,将所述写入文件写入到备用运行环境的步骤,包括:
26.在所述写入文件的更新为不需要中断生产时,利用所述验证规则对所述写入文件进行验证,并在规则验证通过后,判断备用运行环境准备好标志位是否置位;在备用运行环境准备好标志位已置位的情况下,将所述备用运行环境准备好标志位清除,并通过外部写寄存器将所述写入文件写入至备用运行环境中的数据存储区,并将文件写入准备好标志位置位,以及将更新类型标志设置为a类更新;
27.在所述写入文件的更新为需要中断生产时,判断备用运行环境准备好标志位是否置位;在备用运行环境准备好标志位已置位的情况下,将所述备用运行环境准备好标志位清除,并通过外部写寄存器将所述写入文件中的控制程序写入至备用运行环境中的控制逻辑区,将所述写入文件中的数据写入至备用运行环境中的数据存储区,并将文件写入准备好标志位置位,以及将更新类型标志设置为b类更新。
28.根据本发明的至少一个实施例,根据对应的更新类型标志,将备用运行环境切换为主用运行环境或者将备用运行环境中的控制程序和数据写入到主用运行环境的步骤,包括:
29.在所述更新类型标志为a类更新时,在备用运行环境中仿真运行控制程序,并判断控制程序的输出是否符合预定规则;
30.在所述程序输出符合预定规则,且允许自动更新的情况下,将备用运行环境中的控制程序和数据写入到主用运行环境;
31.在所述程序输出不符合预定规则,或者,不允许自动更新的情况下,根据接收到的人工确认或取消指令,将备用运行环境中的控制程序和数据写入到主用运行环境或者丢弃所述备用运行环境中的控制程序和数据。
32.根据本发明的至少一个实施例,根据对应的更新类型标志,将备用运行环境切换为主用运行环境或者将备用运行环境中的控制程序和数据写入到主用运行环境的步骤,包括:
33.在所述更新类型标志为b类更新时,判断所述备用运行环境中的控制程序是否存在于预设工艺列表中;
34.在所述备用运行环境中的控制程序存在于所述工艺列表,且接收到对所述控制程序的更新确认指令的情况下,或者,在所述备用运行环境中的控制程序不存在于所述工艺列表中,且对所述控制程序在备用运行环境中的调试已通过,并接收到对所述控制程序的更新确认指令的情况下,通过所述备用运行环境读取生产设备的当前状态并根据当前状态同步控制程序,并在生产设备的当前工序完成后,执行主备运行环境的切换,并将新的主用运行环境的输出连接至现场总线口;
35.在接收到对所述控制程序的更新拒绝指令的情况下,丢弃所述备用运行环境中的
控制程序和数据。
36.根据本发明的至少一个实施例,利用与所述写入文件的文件序列号匹配的签名文件,对所述写入文件进行验证的步骤,包括:
37.从与所述写入文件的文件序列号匹配的签名文件中,获取第一摘要文件和客户端识别码,所述第一摘要文件是客户端利用预设散列算法,对添加第一预设附加信息后的写入文件生成的,所述第一预设附加信息包括客户端识别码、所述客户端最近一次接收到的云平台发送的动态码、所述写入文件的序列号;
38.对所述写入文件添加第二预设附加信息,利用所述预设散列算法,对添加所述第二预设附加信息后的写入文件生成第二摘要文件,所述第二预设附加信息包括客户端识别码、所述设备控制器最近一次接收到的云平台发送的动态码、所述写入文件的序列号;在正常的合法访问的情况下,设备控制器和客户端各自最近一次接收到的云平台发送的动态码应该是相同的;
39.根据所述第一摘要文件与第二摘要文件是否相同,判断所述写入文件是否通过验证。
40.根据本发明的至少一个实施例,所述方法还包括:
41.在备用运行环境准备好标志位已置位的情况下,根据主用运行环境的控制程序和数据,实时同步备用运行环境。
42.根据本发明的至少一个实施例,所述方法还包括:
43.在预设的数据更新条件满足时,从主用运行环境中获取运行数据并写入外部读寄存器,生成所述主用运行环境中的数据存储区的只读镜像;
44.在接收到远程的读访问请求时,根据所述读访问请求,从所述只读镜像中读取对应的数据并通过所述外网口发送出去。
45.根据本发明的另一方面,还提供了一种生产设备的云服务系统,包括如上所述的设备控制器,还包括:云平台、客户端和认证服务器;其中,
46.所述客户端,用于通过自身与云平台之间的安全链路,向云平台发送对生产设备的读写访问请求,并接收所述云平台返回的读写访问请求的响应消息;以及,通过自身与认证服务器之间的安全链路,获取认证服务器发送的公钥,并利用所述公钥,对添加客户端识别码和写入文件的序列号的第一摘要文件进行加密后,生成数据签名后发送给所述认证服务器;其中,所述第一摘要文件是所述客户端在发送写访问请求前,利用预设散列算法,对添加第一预设附加信息后的写入文件生成的,所述第一预设附加信息包括客户端识别码、所述客户端最近一次接收到的云平台发送的动态码、所述写入文件的序列号;
47.所述云平台,用于通过自身与客户端之间的安全链路,接收外部客户端发的读写访问请求,并将设备控制器返回的针对读写访问请求的响应消息发送给所述客户端;通过自身与设备控制器之间的通信隧道,将所述读写访问请求发送给设备控制器,并接收所述设备控制器返回的针对所述读写访问请求的响应消息;以及,周期性生成动态码并发送给所述客户端和设备控制器;
48.所述认证服务器,用于通过自身与客户端之间的安全链路,接收客户端发送的所述数据签名,并利用私钥对所述数据签名进行解密后,得到包括所述第一摘要文件、客户端识别码和写入文件序列号的签名文件,将所述签名文件发送给设备控制器。
49.本发明实施例还提供了一种计算机可读存储介质,所述计算机可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现如上所述的生产设备的访问控制方法的步骤。
50.与现有技术相比,本发明实施例提供的生产设备的访问控制方法、设备控制器及云服务系统,至少具有以下有益效果:本发明实施例还可以减少或避免生产设备在线更新过程中的生产中断的问题;另外,本发明实施例通过安全数据传输及认证,可以保证数据由云平台写入设备控制器的安全性,可以提高生产设备更新的安全性。
附图说明
51.为了更清楚地说明本发明实施例的技术方案,下面将对本发明实施例的描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
52.图1为本发明实施例提供的生产设备的云服务系统的一种示意图;
53.图2为本发明实施例中云服务系统中的各个设备间的交互示意图;
54.图3为本发明实施例提供的设备控制器的一种结构示意图;
55.图4为本发明实施例提供的生产设备的访问控制方法的一种流程示意图;
56.图5为本发明实施例提供的生产设备的访问控制方法的另一流程示意图;
57.图6为本发明实施例提供的生产设备的访问控制方法的又一流程示意图。
具体实施方式
58.为使本发明要解决的技术问题、技术方案和优点更加清楚,下面将结合附图及具体实施例进行详细描述。在下面的描述中,提供诸如具体的配置和组件的特定细节仅仅是为了帮助全面理解本发明的实施例。因此,本领域技术人员应该清楚,可以对这里描述的实施例进行各种改变和修改而不脱离本发明的范围和精神。另外,为了清楚和简洁,省略了对已知功能和构造的描述。
59.应理解,说明书通篇中提到的“一个实施例”或“一实施例”意味着与实施例有关的特定特征、结构或特性包括在本发明的至少一个实施例中。因此,在整个说明书各处出现的“在一个实施例中”或“在一实施例中”未必一定指相同的实施例。此外,这些特定的特征、结构或特性可以任意适合的方式结合在一个或多个实施例中。
60.在本发明的各种实施例中,应理解,下述各过程的序号的大小并不意味着执行顺序的先后,各过程的执行顺序应以其功能和内在逻辑确定,而不应对本发明实施例的实施过程构成任何限定。
61.本发明实施例提供了一种生产设备的云服务系统,通过该系统,访问客户端可以安全高效的对生产设备进行在线优化和更新等服务。图1为本发明实施例提供的生产设备的云服务系统的一种示意图,如图1所示,该系统包括有厂内设施和厂内设施以外的外部设备。其中,厂内设施中包括有网络接入设备31、认证服务器51以及多个设备控制器41~43,其中,认证服务器51和多个设备控制器41之间通过内部网络63连接。网络接入设备31通过外部网络61与厂外的云平台21连接,认证服务器51通过另一外部网络62与客户端11连接。
客户端11可以通过各种网络连接方式连接至云平台21。各个设备控制器分别与对应的生产设备连接,具体可以是通过各个生产设备的控制模块与生产设备连接。为了简洁起见,图1中并未示出生产设备。
62.图2给出了本发明实施例中云服务系统中的各个设备间的交互示意图。如图2所示,客户端分别与云平台和认证服务器建立ssl安全链路,传输加密的报文。云平台与设备控制器通过固定的通信隧道连接。
63.除了网络层面的加密连接外,本发明实施例中应用层连接也被加密。客户端与认证服务器进行密钥交换,认证服务器将存储的公钥发送给客户端。客户端将待发送的写入文件附加其它信息(如客户端的识别码,云平台发送的动态码,写入文件的文件序列号等)通过散列算法生成摘要文件。该摘要文件再附加客户端唯一识别码,文件序号等信息后,通过认证服务器的公钥加密生成数据签名后发送给认证服务器。然后原始文件(包括写入文件及其文件序列号)以一个或多个数据包通过ssl加密链路发送给云平台,云平台再通过固定的通信隧道发送给设备控制器。
64.认证服务器接收到加密后的数据签名后,用自己的私钥解密,获取包括摘要文件、客户端识别码和写入文件序列号的签名文件。然后比对客户端唯一识别码是否在自己的白名单列表中,若是,则将解密后的签名文件(即摘要文件+客户端的唯一识别码+写入文件的序列号)通过内部网络发送给设备控制器。设备控制器通过云平台接收到原始文件后,首先匹配与自己序列号相同的签名文件,然后将原始文件再次添加附加信息(如签名文件中的客户端唯一识别码+写入文件的序列号+云平台发来的动态识别码)进行相同的散列算法生成摘要文件。并比对该生成的摘要文件与认证服务器发送的摘要文件是否相同,如果相同,则允许放行该数据到程序执行环境的数据存储区;如果不同丢弃该数据并向认证服务器发出警告消息。
65.在本发明实施例中:
66.所述客户端11,用于通过自身与云平台21之间的安全链路,向云平台21发送对生产设备的读写访问请求,并接收所述云平台21返回的读写访问请求的响应消息;以及,通过自身与认证服务器51之间的安全链路,获取认证服务器51发送的公钥,并利用所述公钥,对添加客户端识别码和写入文件的序列号的第一摘要文件进行加密后,生成数据签名后发送给所述认证服务器51;其中,所述第一摘要文件是所述客户端11在发送写访问请求前,利用预设散列算法,对添加第一预设附加信息后的写入文件生成的,所述第一预设附加信息包括客户端识别码、所述客户端最近一次接收到的云平台21发送的动态码、所述写入文件的序列号。
67.所述云平台21,用于通过自身与客户端11之间的安全链路,接收外部客户端11发的读写访问请求,并将设备控制器41返回的针对读写访问请求的响应消息发送给所述客户端11;通过自身与设备控制器41之间的通信隧道,将所述读写访问请求发送给设备控制器41,并接收所述设备控制器41返回的针对所述读写访问请求的响应消息;以及,周期性生成动态码并发送给所述客户端11和设备控制器41。这里,云平台21按照预设方式进行动态码的更新,并在更新动态码之后将更新后的动态码同步发送给所述客户端11和设备控制器41,以保证所述客户端11和设备控制器41能够获得相同的动态码。
68.所述认证服务器51,用于通过自身与客户端11之间的安全链路,接收客户端11发
送的所述数据签名,并利用私钥对所述数据签名进行解密后,得到包括所述第一摘要文件、客户端识别码和写入文件序列号的签名文件,将所述签名文件发送给设备控制器41。
69.图3为本发明实施例提供的设备控制器41的一种具体结构,如图3所示,该设备控制器41包括:虚拟控制层,和,相互独立的远程访问环境和至少两个程序运行环境(图3中示出了程序运行环境1和程序运行环境2),所述程序运行环境为运行生产设备的控制程序的环境;所述至少两个程序运行环境包括一个主用运行环境和至少一个备用运行环境。所述远程访问环境通过内网口连接至内部网络中的认证服务器,通过所述外网口连接至外部网络中的云平台;所述虚拟控制层通过现场总线口连接至生产设备的控制模块。下文中将主要以两个程序运行环境为例进行说明。
70.从图3可以看出,本发明实施例的设备控制器通过内网口、外网口和现场总线口通信和外部通信。其中,外网口可以通过虚拟专用通道连接云平台,内网口连接内部的认证服务器,现场总线口连接生产设备的控制模块(如设备执行器,各种传感器的控制模块等)。
71.这里,虚拟控制层接管设备硬件并划分出相互独立的多个运行环境。其中,远程访问环境专用于远程访问控制,提供内部数据存储的只读镜像,并对外部写入的数据执行验证操作。程序运行环境(如程序运行环境1~2)是生产设备的实际控制程序的运行环境,并由虚拟控制层的输出切换控制模块,决定哪个程序运行环境的输出传递给现场总线口。
72.所述远程访问环境,用于通过所述外网口接收远程的读写访问请求,对读访问请求提供程序运行环境中的数据存储的只读镜像,对写访问请求的写入文件执行验证操作,将验证通过的写入文件写入到备用运行环境;以及,执行所述至少两个程序运行环境之间的主备状态切换,并同步各程序运行环境之间的控制程序和运行数据。
73.所述虚拟控制层,用于将主用程序运行环境的输出,连接至现场总线口。
74.更为具体的,所述远程访问环境包括有外部写寄存器、外部读寄存器、写入数据验证模块、签名及验证规则模块和同步控制模块;
75.所述程序运行环境包括数据存储区、控制逻辑区和控制输入/输出模块;
76.所述虚拟控制层包括输出切换控制模块;
77.其中,所述外部读寄存器,用于获取所述程序运行环境中的数据存储区的只读镜像,并响应于远程的读访问请求提供所述只读镜像中的对应数据;
78.所述外部写寄存器,用于接收远程的写访问请求的写入数据,以及,将验证通过的写入文件写入到备用运行环境的数据存储区和/或控制逻辑区;
79.所述签名及验证规则模块,用于通过内网口从认证服务器处获取签名文件以及验证规则,所述签名文件包括第一摘要文件、客户端识别码和写入文件序列号,所述第一摘要文件是客户端利用预设散列算法,对添加第一预设附加信息后的写入文件生成的;
80.所述写入数据验证模块,用于利用所述签名及验证规则模块获取的签名文件以及验证规则,对所述写访问请求的写入文件进行验证。这里,内网的认证服务器通过内网口将签名文件等验证信息和数据验证规则传送给设备控制器,写入数据验证模块通过该信息来验证写入的数据完整性、有效性和合法性。
81.所述同步控制模块,用于同步各程序运行环境之间的控制程序和运行数据;
82.所述控制输入/输出模块,用于在所述控制逻辑区和输出切换控制模块之间交互数据;
83.所述输出切换控制模块,用于将从现场总线口接收到的数据发送给各个程序运行环境,以及,将主用运行环境输出的数据通过现场总线接口发送出去。
84.通常情况下,两个程序运行环境同步运行两套相同的程序,其中一个为主用运行环境,主用运行环境的输入和输出均接入现场总线口;另一个为备用运行环境,备用运行环境的输入接入现场总线口,但输出不接入现场总线口。两个程序运行环境的主备角色在不同条件下可以互相切换。外部写入文件在更新程序运行环境中数据和/或程序时先写入备用运行环境,在模拟运行无误后再将备用运行环境切换为主运行环境或直接写入主环境。同步控制模块负责切换程序运行环境1和程序运行环境2的主备状态,并负责同步主用、备用运行环境之间的程序及数据。
85.下面结合图4~5,以客户端发起对写访问请求为例,对本发明实施例的生产设备的访问控制方法进行说明。请参照图4~5,本发明实施例提供的生产设备的访问控制方法,应用于图2所示的设备控制器,具体包括:
86.步骤301,通过所述外部写寄存器从外网口接收到写入文件及其文件序列号。
87.这里,客户端在需要更新生产设备的控制程序或数据(如工艺参数)时,将通过发起对生产设备的写访问请求,将写入文件及其文件序列号通过云平台发送给设备控制器。所述写入文件可以包括有生产设备的控制程序和数据的更新内容。文件序列号用于唯一标识某个写入文件。设备控制器的外部写寄存器通过外网口接收并暂存云平台发送的所述写入文件及其文件序列号。
88.步骤302~306,通过所述写入数据验证模块从内网口读取签名文件和验证规则,并利用所述写入文件的文件序列号匹配的签名文件,对所述写入文件进行验证。
89.这里,在接收到所述写入文件及其文件序列号后,设备控制器的写入数据验证模块通过内网口,从认证服务器获取签名文件和验证规则。所述签名文件包括第一摘要文件、客户端识别码和写入文件序列号,所述第一摘要文件是客户端利用预设散列算法,对添加第一预设附加信息后的写入文件生成的。
90.如图4所示,对所述写入文件进行验证,具体可以包括:
91.1)从与所述写入文件的文件序列号匹配的签名文件(步骤303)中,获取第一摘要文件和客户端识别码,所述第一摘要文件是客户端利用预设散列算法,对添加第一预设附加信息后的写入文件生成的,所述第一预设附加信息包括客户端识别码、所述客户端最近一次接收到的云平台发送的动态码、所述写入文件的序列号。这里,如果未找到与所述写入文件的文件序列号匹配的签名文件,在预设的超时时间到达时,将返回步骤302,继续从内网口获取签名文件和验证规则。
92.2)对所述写入文件添加第二预设附加信息,利用所述预设散列算法,对添加所述第二预设附加信息后的写入文件生成第二摘要文件(步骤305),所述第二预设附加信息包括客户端识别码、所述设备控制器最近一次接收到的云平台发送的动态码、所述写入文件的序列号;在正常的合法访问的情况下,设备控制器和客户端各自最近一次接收到的云平台发送的动态码应该是相同的。
93.3)根据所述第一摘要文件与第二摘要文件是否相同,判断所述写入文件是否通过验证(步骤306)。
94.步骤307~319,若所述写入文件验证通过,则在备用运行环境准备好标志位已置
位的情况下,将所述备用运行环境准备好标志位清除,并将所述写入文件写入到备用运行环境中,并在文件写入完成后,将用于表示写入文件已准备好的文件写入准备好标志位置位,以及,根据所述写入文件的更新类型,并设置对应的更新类型标志,所述更新类型包括不需要中断生产设备生产的a类更新和需要中断生产设备生产的b类更新。
95.例如,a类更新可以包括写入设备控制指令和/或不会中断生产的参数调整等更新。b类更新通常是控制程序更新和/或会中断生产的参数调整等更新。对于a类更新,不需要进行主备运行环境的切换;对于b类更新,通常需要进行主备运行环境的切换。
96.这里,将所述写入文件写入到备用运行环境时,根据写入文件的更新类型,具体可以包括:
97.1)在所述写入文件的更新为不需要中断生产(即图4中的不间断更新)时,利用所述验证规则对所述写入文件进行验证(步骤313),并在规则验证通过后,判断备用运行环境准备好标志位是否置位(步骤315);在备用运行环境准备好标志位已置位的情况下,将所述备用运行环境准备好标志位清除(步骤316),并通过外部写寄存器将所述写入文件写入至备用运行环境中的数据存储区(步骤317),并将文件写入准备好标志位置位,以及将更新类型标志设置为a类更新(步骤318)。这里,如果规则验证失败,则丢弃所述备用运行环境中的控制程序和数据,并可以产生告警(步骤319)。在备用运行环境准备好标志位未置位的情况下,继续等待相关标志位置位。
98.2)在所述写入文件的更新为需要中断生产时,判断备用运行环境准备好标志位是否置位(步骤308);在备用运行环境准备好标志位已置位的情况下,将所述备用运行环境准备好标志位清除(步骤309),并通过外部写寄存器将所述写入文件中的控制程序写入至备用运行环境中的控制逻辑区(步骤310),将所述写入文件中的数据写入至备用运行环境中的数据存储区(步骤311),并将文件写入准备好标志位置位,以及将更新类型标志设置为b类更新(步骤312)。在备用运行环境准备好标志位未置位的情况下,继续等待相关标志位置位。
99.在步骤312和步骤318之后,本发明实施例进入如图4所示的程序运行环境之间的同步更新流程。在同步更新流程中,在检测到备用运行环境准备好标志位已清除,且文件写入准备好标志位已置位的情况下,若备用运行环境中的模拟运行符合预设条件,则根据对应的更新类型标志,将备用运行环境切换为主用运行环境或者将备用运行环境中的控制程序和数据写入到主用运行环境,并将备用运行环境准备好标志位置位,以及,将文件写入准备好标志位清除。
100.具体的,同步更新流程如图5所示,包括:
101.步骤320,在备用运行环境准备好标志位已置位的情况下,根据主用运行环境的控制程序和数据,实时同步备用运行环境。使得各个备用运行环境与主用运行环境保持同步。
102.步骤321,在检测到备用运行环境准备好标志位已清除的情况下,进入步骤322,否则,返回步骤320。
103.步骤322,在文件写入准备好标志位已置位的情况下,进入步骤323,否则,返回步骤321。
104.步骤323,判断更新类型标志,a类更新则进入步骤324,b类更新进入步骤331。
105.步骤324~326,在备用运行环境中仿真控制程序,判断程序输出是否符合预设规
则,在符合预设规则时,判断是否允许自动进行控制程序的更新,若是,则进入步骤329;在不符合预设规则,或者,不允许自动进行控制程序的更新的情况下,进入步骤327。
106.步骤327~328,请求人工处理,并在接收到人工允许的确认后,进入步骤329,否则,进入步骤330。
107.步骤329,将备用运行环境中的控制程序和数据写入到主用运行环境,然后进入步骤338。
108.步骤330,丢弃所述备用运行环境中的控制程序和数据,然后进入步骤338。
109.步骤331,根据控制程序的序号及版本号是否存在于预先的预设工艺列表中,若是,则进入步骤333,否则进入步骤332。
110.步骤332,人工对控制程序在备用运行环境中进行调试和确认,然后进入步骤333。
111.步骤333,确认是否进行控制程序的更新,若是,则进入步骤334,否则,进入步骤337。
112.步骤334,备用运行环境读取生产设备的当前状态,并根据当前状态同步当前的控制程序。
113.步骤335~336,在生产设备的当前工序完成后,进行主备用运行环境切换,并将新的主用运行环境的输出连接至现场总线口,然后进入步骤338。
114.步骤337,丢弃所述备用运行环境中的控制程序和数据,然后进入步骤338。
115.步骤338,设置备用运行环境准备好标志位,清除写入文件准备好标志位,然后,继续用主用运行环境数据实时同步备用运行环境。
116.从以上所述可以看出,本发明实施例在进行主备用运行环境的同步处理时,根据更新类型的不同,将备用运行环境切换为主用运行环境或者将备用运行环境中的控制程序和数据写入到主用运行环境,具体为:
117.1)在所述更新类型标志为a类更新时,在备用运行环境中仿真运行控制程序,并判断控制程序的输出是否符合预定规则:
118.在所述程序输出符合预定规则,且允许自动更新的情况下,将备用运行环境中的控制程序和数据写入到主用运行环境;
119.在所述程序输出不符合预定规则,或者,不允许自动更新的情况下,根据接收到的人工确认或取消指令,将备用运行环境中的控制程序和数据写入到主用运行环境或者丢弃所述备用运行环境中的控制程序和数据。
120.2)在所述更新类型标志为b类更新时,判断所述备用运行环境中的控制程序是否存在于预设工艺列表中:
121.在所述备用运行环境中的控制程序存在于所述工艺列表,且接收到对所述控制程序的更新确认指令的情况下,或者,在所述备用运行环境中的控制程序不存在于所述工艺列表中,且对所述控制程序在备用运行环境中的调试已通过,并接收到对所述控制程序的更新确认指令的情况下,通过所述备用运行环境读取生产设备的当前状态并根据当前状态同步控制程序,并在生产设备的当前工序完成后,执行主备运行环境的切换,并将新的主用运行环境的输出连接至现场总线口;
122.在接收到对所述控制程序的更新拒绝指令的情况下,丢弃所述备用运行环境中的控制程序和数据。
123.通过以上步骤,本发明实施例可以减少或避免生产设备在线更新过程中的生产中断的问题,并且由于利用了各种安全链路或隧道,以及利用基于散列算法的加密技术,可以提高生产设备更新的安全性。
124.最后,再结合图6,以客户端发起对读访问请求为例,对本发明实施例的生产设备的访问控制方法进行说明。图6中,预先设置数据更新条件(步骤501),在预设的数据更新条件满足(步骤502)时,从主用运行环境中获取运行数据并写入外部读寄存器,生成所述主用运行环境中的数据存储区的只读镜像。这样,后续设备控制器在接收到远程的读访问请求时,可以根据所述读访问请求,从所述只读镜像中读取对应的数据并通过所述外网口发送出去。
125.本领域普通技术人员可以意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、或者计算机软件和电子硬件的结合来实现。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本发明的范围。
126.所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的系统、装置和单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
127.在本技术所提供的实施例中,应该理解到,所揭露的装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
128.所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本发明实施例方案的目的。
129.另外,在本发明各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。
130.所述功能如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:u盘、移动硬盘、只读存储器(rom,read-only memory)、随机存取存储器(ram,random access memory)、磁碟或者光盘等各种可以存储程序代码的介质。
131.以上所述,仅为本发明的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到各种等效的修改或替换,这些修改或替换都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应以权利要求的保护范围为准。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1