【技术实现步骤摘要】
一种PLC任务调度方法和装置
本专利技术涉及数据处理
,具体涉及一种PLC任务调度方法和装置。
技术介绍
随着产品的多样性,工业生产控制越来越复杂,可编程控制器(ProgrammbleController,简称PC或PLC)作为工业控制的大脑,要完成的工作越来越多,PLC的单任务工作环境显然不能满足复杂计算及IO要求,多进程或多任务在现代计算机操作系统领域是成熟的技术,对于PLC工业控制领域的特点,不能直接使用通用计算机领域的多进程或多任务技术,因此,急需一种能够适用于PLC的多任务调度方案。
技术实现思路
有鉴于此,本专利技术实施例提供一种PLC任务调度方法和装置,以实现PLC进行多任务调度的调度机制。为实现上述目的,本专利技术实施例提供如下技术方案:一种PLC任务调度方法,包括:检测中断调度任务注册时钟的中断状态;当所述时钟的中断到来时,触发中断调度任务获取各个PLC中IEC任务的调度状态;基于所述调度状态判断是否存在满足调度条件的IEC任务;当存 ...
【技术保护点】
1.一种PLC任务调度方法,其特征在于,包括:/n检测中断调度任务注册时钟的中断状态;/n当所述时钟的中断到来时,触发中断调度任务,获取各个PLC中IEC任务的调度状态;/n基于所述调度状态判断是否存在满足调度条件的IEC任务;/n当存在满足调度条件的IEC任务时,控制调度器调度满足条件的IEC任务。/n
【技术特征摘要】
1.一种PLC任务调度方法,其特征在于,包括:
检测中断调度任务注册时钟的中断状态;
当所述时钟的中断到来时,触发中断调度任务,获取各个PLC中IEC任务的调度状态;
基于所述调度状态判断是否存在满足调度条件的IEC任务;
当存在满足调度条件的IEC任务时,控制调度器调度满足条件的IEC任务。
2.根据权利要求1所述的PLC任务调度方法,其特征在于,所述基于所述调度状态判断是否存在满足调度条件的IEC任务,包括:
判断与各个所述IEC任务相匹配的调度码的类型,当与所述IEC任务相匹配的调度码的类型为第一类型时,表明所述IEC任务满足调度条件,否则,表明所述IEC任务不满足调度条件;
其中,所述调度码为用于表征所述IEC任务是否满足调度条件的二进制码。
3.根据权利要求2所述的PLC任务调度方法,其特征在于,当所述IEC任务为周期型任务时,且当所述PLC中周期型任务的预设运行周期TRunCycle的时长大于所述IEC任务的执行时间TRunTime时,所述IEC任务的调度码的计算规则为:
基于公式TCount=TRunCycle/TScheduleInterval计算得到所述IEC任务的调度计数量TCount,其中,所述TScheduleInterval为中断调度任务的调度间隔时间;
依据公式TRunCount=TRunTime/TScheduleInterval和TSleepCount=TCount–TRunCount,计算得到TSleepCount,将所述TSleepCount的值作为所述IEC任务的调度码,所述TSleepCount的值作为值为0时,表明所述IEC任务的调度码的类型为第一类型。
4.根据权利要求3所述的PLC任务调度方法,其特征在于,当所述PLC中周期型任务的预设运行周期TRunCycle的时长小于所述IEC任务的执行时间TRunTime时,所述IEC任务的调度码的计算规则为:
基于公式TCount=TRunCycle/TScheduleInterval计算得到所述IEC任务的调度计数量TCount,其中,所述TScheduleInterval为中断调度任务的调度间隔时间;
依据公式TRunCount=TRunTime/TScheduleInterval和TSleepCount=TCount–(TRunCount%TCount),计算得到TSleepCount,将所述TSleepCount的值作为所述IEC任务的调度码,所述TSleepCount的值作为值为0时,表明所述IEC任务的调度码的类型为第一类型。
5.根据权利要求2所述的PLC任务调度方法,其特征在于,当所述IEC任务为事件型任务时,当满足与所述IEC任务相匹配的调度的条件时,所述IEC任务对应的调度码的类型切换为第一类型1,当所述IEC任务执行完毕后,所述IEC任务对应的调度码切换至第二类型0。
6.根据权利要求2所述的PLC任务调度方法,其特征在于,当所述IEC任务为状态型任务时,...
【专利技术属性】
技术研发人员:陈幼柏,尹俊杰,王伟,
申请(专利权)人:北京和利时智能技术有限公司,宁波和利时智能科技有限公司,
类型:发明
国别省市:北京;11
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。