[发明专利]PLC的多任务控制方法和装置在审
申请号: | 201310323489.1 | 申请日: | 2013-07-29 |
公开(公告)号: | CN103399798A | 公开(公告)日: | 2013-11-20 |
发明(设计)人: | 罗德福 | 申请(专利权)人: | 深圳市汇川控制技术有限公司;深圳市汇川技术股份有限公司;苏州汇川技术有限公司 |
主分类号: | G06F9/50 | 分类号: | G06F9/50;G06F9/48 |
代理公司: | 深圳市顺天达专利商标代理有限公司 44217 | 代理人: | 陆军 |
地址: | 518000 广东省深圳市福*** | 国省代码: | 广东;44 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | plc 任务 控制 方法 装置 | ||
技术领域
本发明涉及可编程逻辑控制器(Programmable Logic Controller,PLC),更具体地说,涉及一种PLC的多任务控制方法和装置。
背景技术
PLC以微处理器技术为基础,综合了计算机技术、自动化技术以及通讯技术,国际电工技术委员会IEC将其定义为:“可编程控制器是一种数字运算操作的电子系统,专为在工业环境下应用而设计,它采用一类可编程序的存储器,用于在其内部存储程序,执行逻辑运算、顺序控制、定时、计数和算术操作等面向用户的指令,并通过数字式和模拟式的输入输出,控制各种类型的机械的生产过程。PLC及其有关外围设备,都按易于与工业控制系统联成一个整体、易于扩充功能的原则设计”。
PLC的工作过程一般分为三个阶段,即输入采样、用户程序执行和输出刷新,完成上述三个阶段称作一个扫描周期,在整个运行期间,PLC以一定的扫描速度重复执行上述三个阶段。在输入采样阶段,PLC以扫描方式依次地读入所有输入状态和数据,并将它们存入I/O映象区中的输入存储单元。在用户程序执行阶段,PLC扫描读取用户程序并执行,以完成响应运算和控制操作。在输出刷新阶段,PLC将输出存储单元的状态和数据刷新至所有的输出电路。
传统PLC以单任务的方式执行用户程序指令以及外部I/O状态的采集与刷新,整个应用程序采用一个扫描周期,扫描周期的时间长度由用户程序的长短、指令的种类以及CPU执行速度共同决定,小至几毫秒大至几十毫秒。但在实际的PLC控制系统中,有一些控制操作是高实时性的,而有一些控制操作如大惯性模拟量是没有高实时要求的,如果都放在单个任务里面采用同样的刷新速度进行处理,势必会导致系统的控制速度严重依靠于应用程序的大小,特别是在用户应用程序比较复杂庞大时,控制速度就比较低,严重影响了I/O通道实时性。传统PLC的单任务扫描执行方式,决定了传统PLC在系统实时性、处理速度、系统效率、编程方便性等方面存在严重不足。
发明内容
本发明针对传统PLC以单任务的方式执行用户程序指令以及外部I/O状态的采集与刷新,造成其系统实时性差、系统效率低、以及不便于编程的缺陷,提供一种PLC的多任务控制方法和装置,在PLC控制系统中引入实时操作系统(RTOS)来实现多任务的调用,支持用户多任务编程,从而解决了传统PLC的上述不足。
本发明解决其技术问题采用的技术方案是:提供一种PLC的多任务控制方法,包括以下步骤:
S1、将PLC的控制任务分为多种类型的子任务;
S2、为各种类型的子任务分配优先级;
S3、在实时操作系统的调度下,运行当前所有就绪的子任务中优先级最高的子任务,具有相同优先级的子任务则按照时间片轮转运行。
优选地,步骤S1包括以下子步骤:
S11、将PLC的控制任务分为外部事件类型的子任务、内部事件类型的子任务以及循环类型的子任务,其中,所述外部事件类型的子任务由外部事件驱动,所述内部事件类型的子任务由PLC内部事件驱动,所述循环类型的子任务由PLC按照一个固定的时间周期执行。
优选地,步骤S2包括以下子步骤:
S21、根据以下规则分配优先级:所述外部事件类型的子任务的优先级高于所述内部事件类型的子任务的优先级,所述内部事件类型的子任务的优先级高于所述循环类型的子任务的优先级。
优选地,子步骤S11包括以下次级子步骤:
S111、根据时间周期的长短,将循环类型的子任务分为快速循环类型的子任务和普通循环类型的子任务;
子步骤S21包括以下次级子步骤:
S211、根据以下规则分配优先级:所述快速循环类型的子任务的优先级高于所述普通循环类型的子任务的优先级。
优选地,本发明的方法还包括以下步骤:
S4、为子任务配置任务看门狗,当该子任务的执行时间超出其任务看门狗的溢出时间时,停止PLC并报警;和/或配置系统看门狗,当就绪的子任务中优先级最高的子任务未被执行的时间超过所述系统看门狗的溢出时间时,停止PLC并报警。
提供一种PLC的多任务控制装置,包括:
分类单元,用于将PLC的控制任务分为多种类型的子任务;
优先级分配单元,用于为各种类型的子任务分配优先级;
执行单元,用于在实时操作系统的调度下,运行当前所有就绪的子任务中优先级最高的子任务,具有相同优先级的子任务则按照时间片轮转运行。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于深圳市汇川控制技术有限公司;深圳市汇川技术股份有限公司;苏州汇川技术有限公司,未经深圳市汇川控制技术有限公司;深圳市汇川技术股份有限公司;苏州汇川技术有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201310323489.1/2.html,转载请声明来源钻瓜专利网。
- 上一篇:基于稀疏信号的波束形成器及其方法
- 下一篇:轴封装置