基于微内核操作系统的可编程逻辑控制器系统、控制方法技术方案

技术编号:20796722 阅读:30 留言:0更新日期:2019-04-06 10:21
本发明专利技术公开了一种基于微内核操作系统的可编程逻辑控制器系统、控制方法,其中,系统包括:根线程模块,用于运行根线程进行内存地址空间映射,PLC初始化,创建通讯处理线程、辅助线程,提供触发通讯处理线程、辅助线程和运算线程运行的定时机制;通讯处理线程模块,用于运行通讯处理线程对经过TCP/IP协议栈处理后的报文进行应用层解析处理;在收到全下装服务时,通知辅助线程模块加载文件;辅助线程模块,用于运行辅助线程加载用户工程文件,动态创建运算线程模块;运算线程模块,用于运行运算线程执行PLC控制逻辑和IO数据。本发明专利技术可提升PLC系统的安全性和可靠性。

Programmable Logic Controller System and Control Method Based on Microkernel Operating System

The invention discloses a programmable logic controller system and control method based on micro-kernel operating system. The system includes: root thread module, which is used to run root threads for memory address space mapping, PLC initialization, creation of communication processing threads and auxiliary threads, and timing mechanism for triggering communication processing threads, auxiliary threads and operation threads. Processing threads module, which is used to run communication processing threads for application-level parsing of messages processed by TCP/IP protocol stack; notifying auxiliary threads module to load files when receiving full download services; auxiliary threads module, which is used to run auxiliary threads to load user engineering files and dynamically create operation threads module; and operational threads module, which is used to run operation threads to execute PLC. Control logic and IO data. The invention can improve the safety and reliability of the PLC system.

【技术实现步骤摘要】
基于微内核操作系统的可编程逻辑控制器系统、控制方法
本专利技术涉及可编程逻辑控制技术,尤指一种基于微内核操作系统的可编程逻辑控制器系统、控制方法。
技术介绍
可编程控制器PLC广泛应用于工业自动化领域,是企业生产自动化运行的关键设备。当前PLC系统的安全性受到业界的高度重视,提高PLC系统安全性的主要方向有:研究PLC所用中央处理器CPU芯片的安全性,目的是提升PLC硬件的安全性。研究PLC软件所用操作系统的安全性,目的是提升PLC操作系统的安全性。研究PLC固件的可信启动、通信加解密技术、访问控制等技术,在此基础上开发具备主动安全防御能力的可信PLC。研究通用防病毒软件在工业控制环境的应用,目的是提升PLC外部环境的安全性。上述方向从不同层面出发,研究提升PLC系统安全性的措施。
技术实现思路
本专利技术提供了一种基于微内核操作系统的可编程逻辑控制器系统、控制方法,可提升PLC系统的安全性和可靠性。为了达到本专利技术目的,本专利技术提供了一种基于微内核操作系统的可编程逻辑控制器系统,包括:根线程模块,用于运行根线程进行内存地址空间映射,可编程逻辑控制器PLC初始化,创建通讯处理线程、辅助线程,以及提供触发所述通讯处理线程、辅助线程和运算线程运行的定时机制;通讯处理线程模块,用于运行所述通讯处理线程对经过传输控制协议TCP/因特网互联协议IP协议栈处理后的报文进行应用层解析处理;以及在收到全下装服务时,通知辅助线程模块加载文件;辅助线程模块,用于运行所述辅助线程加载用户工程文件,以及动态创建运算线程模块;所述运算线程模块,用于运行所述运算线程执行PLC控制逻辑和输入输出IO数据。作为一种实现方式,所述通讯处理线程模块,用于运行所述通讯处理线程对经过TCP/IP协议栈处理后的报文进行应用层解析处理,包括:在设置的周期开始后,检查接收缓冲区,如果所述接收缓存区存储有报文,则根据服务类型对存储的报文进行处理,所述服务类型包括:登录、传文件服务、全下装服务、读变量服务、写变量服务、强制;对报文处理完毕后准备应答信息,并将应答信息发送至发送缓冲区缓存后睡眠直到设置的周期时间结束,然后开始下一个周期。作为一种实现方式,所述通讯处理线程模块,用于在所述服务类型为传文件服务时,对存储的报文进行处理,包括:在所述服务类型为传文件服务时,调用设置在应用层的一个或多个文件访问接口进行文件传输;所述辅助线程模块,用于运行所述辅助线程加载用户工程文件,包括:所述辅助线程模块,用于调用设置在应用层的一个或多个文件访问接口读取用户工程文件内容。作为一种实现方式,所述辅助线程模块包括工程加载线程子模块和主线程子模块:所述工程加载线程子模块,用于运行所述工程加载线程加载用户工程文件,包括:在设置的周期开始后,判断是否需要加载工程文件,如果不需要加载工程文件,睡眠直到设置的周期结束;如果需要加载工程文件,解析工程文件并向主线程子模块发出创建运算线程通知后,睡眠直到设置的周期结束;主线程子模块,用于运行所述主线程动态创建运算线程,包括:在设置的周期开始后,判断是否接收到所述工程加载线程子模块发送的创建运算线程通知,如果接收到,创建运算线程并设置该运算线程为可运行状态,睡眠直到设置的周期结束;如果没有接收到,睡眠直到设置的周期结束。作为一种实现方式,根线程模块,用于提供触发所述通讯处理线程、辅助线程和运算线程运行的定时机制,包括:调用定时处理函数,等待中断信号到来,当所述中断信号到来,继续执行所述定时处理函数,更新当前时间基准,依次检查所述通讯处理线程、辅助线程、运算线程的睡眠时间;如果存在睡眠时间到期的线程,则触发该线程运行;当检查完毕,再次等待所述中断信号到来。本专利技术实施例还提供了一种基于微内核操作系统的可编程逻辑控制方法,所述方法包括:运行根线程进行内存地址空间映射,可编程逻辑控制器PLC初始化,创建通讯处理线程、辅助线程,以及提供触发通讯处理线程、辅助线程和运算线程运行的定时机制;运行所述通讯处理线程对经过传输控制协议TCP/因特网互联协议IP协议栈处理后的报文进行应用层解析处理;在收到全下装服务时,运行所述辅助线程加载用户工程文件以及动态创建运算线程;运行所述运算线程执行PLC控制逻辑和输入输出IO数据。作为一种实现方式,运行所述通讯处理线程对经过TCP/IP协议栈处理后的报文进行应用层解析处理,包括:在设置的周期开始后,检查接收缓冲区,如果所述接收缓存区存储有报文,则根据服务类型对存储的报文进行处理,所述服务类型包括:登录、传文件服务、全下装服务、读变量服务、写变量服务、强制;对报文处理完毕后准备应答信息,并将应答信息发送至发送缓冲区缓存后睡眠直到设置的周期时间结束,然后开始下一个周期。作为一种实现方式,在所述服务类型为传文件服务时,对存储的报文进行处理,包括:所述服务类型为传文件服务时,调用设置在应用层的一个或多个文件访问接口进行文件传输;运行所述辅助线程加载用户工程文件,包括:调用设置在应用层的一个或多个文件访问接口读取用户工程文件内容。作为一种实现方式,运行所述辅助线程加载用户工程文件,包括:在设置的周期开始后,判断是否需要加载工程文件,如果不需要加载工程文件,睡眠直到设置的周期结束;如果需要加载工程文件,解析工程文件并发出创建运算线程通知后,睡眠直到设置的周期结束;动态创建运算线程,包括:在设置的周期开始后,判断是否接收到创建运算线程通知,如果接收到,创建运算线程并设置该运算线程为可运行状态,睡眠直到设置的周期结束;如果没有接收到,睡眠直到设置的周期结束。作为一种实现方式,运行根线程提供触发通讯处理线程、辅助线程和运算线程运行的定时机制,包括:调用定时处理函数,等待中断信号到来,当所述中断信号到来,继续执行所述定时处理函数,更新当前时间基准,依次检查所述通讯处理线程、辅助线程、运算线程的睡眠时间;如果存在睡眠时间到期的线程,则触发该线程运行;当检查完毕,再次等待所述中断信号到来。本专利技术实施例还提供了一种计算机可读存储介质,所述介质存储有计算机可执行指令,所述计算机可执行指令被处理器执行时实现如前所述的基于微内核操作系统的可编程逻辑控制方法的步骤。与现有技术相比,本专利技术包括:根线程模块,用于运行根线程进行内存地址空间映射,可编程逻辑控制器PLC初始化,创建通讯处理线程、辅助线程,以及提供触发所述通讯处理线程、辅助线程和运算线程运行的定时机制;通讯处理线程模块,用于运行所述通讯处理线程对经过传输控制协议TCP/因特网互联协议IP协议栈处理后的报文进行应用层解析处理;以及在收到全下装服务时,通知辅助线程模块加载文件;辅助线程模块,用于运行所述辅助线程加载用户工程文件,以及动态创建运算线程模块;所述运算线程模块,用于运行所述运算线程执行PLC控制逻辑和输入输出IO数据。本专利技术可提升PLC系统的安全性和可靠性。本专利技术的其它特征和优点将在随后的说明书中阐述,并且,部分地从说明书中变得显而易见,或者通过实施本专利技术而了解。本专利技术的目的和其他优点可通过在说明书、权利要求书以及附图中所特别指出的结构来实现和获得。附图说明附图用来提供对本专利技术技术方案的进一步理解,并且构成说明书的一部分,与本申请的实施例一起用于解释本专利技术的技术方案,并不构成对本专利技术本文档来自技高网...

【技术保护点】
1.一种基于微内核操作系统的可编程逻辑控制器系统,其特征在于,包括:根线程模块,用于运行根线程进行内存地址空间映射,可编程逻辑控制器PLC初始化,创建通讯处理线程、辅助线程,以及提供触发所述通讯处理线程、辅助线程和运算线程运行的定时机制;通讯处理线程模块,用于运行所述通讯处理线程对经过传输控制协议TCP/因特网互联协议IP协议栈处理后的报文进行应用层解析处理;以及在收到全下装服务时,通知辅助线程模块加载文件;辅助线程模块,用于运行所述辅助线程加载用户工程文件,以及动态创建运算线程模块;所述运算线程模块,用于运行所述运算线程执行PLC控制逻辑和输入输出IO数据。

【技术特征摘要】
1.一种基于微内核操作系统的可编程逻辑控制器系统,其特征在于,包括:根线程模块,用于运行根线程进行内存地址空间映射,可编程逻辑控制器PLC初始化,创建通讯处理线程、辅助线程,以及提供触发所述通讯处理线程、辅助线程和运算线程运行的定时机制;通讯处理线程模块,用于运行所述通讯处理线程对经过传输控制协议TCP/因特网互联协议IP协议栈处理后的报文进行应用层解析处理;以及在收到全下装服务时,通知辅助线程模块加载文件;辅助线程模块,用于运行所述辅助线程加载用户工程文件,以及动态创建运算线程模块;所述运算线程模块,用于运行所述运算线程执行PLC控制逻辑和输入输出IO数据。2.根据权利要求1所述的于微内核操作系统的可编程逻辑控制器系统,其特征在于,所述通讯处理线程模块,用于运行所述通讯处理线程对经过TCP/IP协议栈处理后的报文进行应用层解析处理,包括:在设置的周期开始后,检查接收缓冲区,如果所述接收缓存区存储有报文,则根据服务类型对存储的报文进行处理,所述服务类型包括:登录、传文件服务、全下装服务、读变量服务、写变量服务、强制;对报文处理完毕后准备应答信息,并将应答信息发送至发送缓冲区缓存后睡眠直到设置的周期时间结束,然后开始下一个周期。3.根据权利要求2基于微内核操作系统的可编程逻辑控制器系统,其特征在于,所述通讯处理线程模块,用于在所述服务类型为传文件服务时,对存储的报文进行处理,包括:在所述服务类型为传文件服务时,调用设置在应用层的一个或多个文件访问接口进行文件传输;所述辅助线程模块,用于运行所述辅助线程加载用户工程文件,包括:所述辅助线程模块,用于调用设置在应用层的一个或多个文件访问接口读取用户工程文件内容。4.根据权利要求2或3所述的基于微内核操作系统的可编程逻辑控制器系统,其特征在于,所述辅助线程模块包括工程加载线程子模块和主线程子模块:所述工程加载线程子模块,用于运行所述工程加载线程加载用户工程文件,包括:在设置的周期开始后,判断是否需要加载工程文件,如果不需要加载工程文件,睡眠直到设置的周期结束;如果需要加载工程文件,解析工程文件并向主线程子模块发出创建运算线程通知后,睡眠直到设置的周期结束;主线程子模块,用于运行所述主线程动态创建运算线程,包括:在设置的周期开始后,判断是否接收到所述工程加载线程子模块发送的创建运算线程通知,如果接收到,创建运算线程并设置该运算线程为可运行状态,睡眠直到设置的周期结束;如果没有接收到,睡眠直到设置的周期结束。5.根据权利要求1、2或3所述的基于微内核操作系统的可编程逻辑控制器系统,其特征在于,根线程模块,用于提供触发所述通讯处理线程、辅助线程和运算线程运行的定时机制,包括:调用定时处理函数,等待中断信号到来,当所述中断信号到来,继续执行所述定时处理函数,更新当前时间基准,依次检查所述通讯处理线程、辅助线程、运算线程的...

【专利技术属性】
技术研发人员:董广谱李蒙李宗杰
申请(专利权)人:北京和利时系统工程有限公司
类型:发明
国别省市:北京,11

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1