一种实现PLC控制设备计划任务队列的方法与流程

未命名 09-13 阅读:93 评论:0

一种实现plc控制设备计划任务队列的方法
技术领域
1.本发明属于可编程逻辑控制器技术领域,具体涉及一种实现plc控制设备计划任务队列的方法。


背景技术:

2.plc(programmable logic controller,可编程逻辑控制器)采用一类可编程的存储器,用于其内部存储程序、执行逻辑运算、顺序控制、定时、计数与算术操作等面向用户的指令,并通过数字或模拟式输入/输出控制各种类型的机械或生产过程,是工业控制的核心部分。
3.常规plc控制设备定时控制通常设置几月几日几时几分几秒进行启停机进行触发动作及参数设置等操作,在plc控制设备的程序运行过程中,每个扫描周期均需查询是否达到启停时间,触发动作及参数设置是否需要执行,消耗控制器算力,延长plc扫描周期,导致plc响应其他数据请求变慢,控制不灵活。


技术实现要素:

4.为了克服现有技术中的问题,本发明提出了实现plc控制设备计划任务队列的方法、装置及计算机可读存储介质。
5.本发明解决上述技术问题的技术方案如下:
6.第一方面,本发明提供了一种实现plc控制设备计划任务队列的方法,包括以下步骤:
7.根据plc控制设备定时信息,以秒数据为基础设置六十组计划任务队列,即任意分钟中第n秒(0<n≤60)要执行的计划任务归入第n条计划任务队列,每条计划任务队列包括:使能位、月字节、星期字节、日字节、时字节、分字节、触发动作及参数设置;
8.获取plc当前控制设备的时钟信息,所述plc当前控制设备的时钟信息包括月、日、时、分、秒数据;
9.基于当前plc控制设备时钟信息中的秒数据信息,在所述六十组计划任务队列查询到对应的计划任务;
10.将plc当前控制设备的时钟信息与查询到的计划任务进行比较判断,确定是否执行本条计划任务中的触发动作和参数设置。
11.进一步地,每条计划任务队列包括:使能位、星期字节、月字节、日字节、时字节、分字节、触发动作及参数设置,具体包括:
12.使能位表示是否启用该条计划任务,采用布尔型变量,数据范围true和false;月字节表示该条计划任务设定的月份,数据范围0-12,数字0代表任意月;日字节表示该条计划任务设定的日,数据范围0-12,数字0代表任意天;星期字节表示该条计划任务设定的星期天,数据范围0-7,数字0代表星期中的任意一日,7代表星期日;时字节表示该条计划任务设定的时,数据范围0-24,数字24表示任意时;分字节,表示该条计划任务设定的分,数据范
围0-60,数字60表示任意分。
13.进一步地,将plc当前控制设备的时钟信息与查询到的计划任务进行比较判断,确定是否执行本条计划任务中的触发动作和参数设置,具体包括以下步骤:
14.步骤31.检查使能位是否启用,若为false表示该条计划任务不启用其停止并退出本次查询;若为true,则执行步骤32;
15.步骤32.判断当前plc控制设备时钟中的月数据与计划任务中设定的月份之间的关系,若计划任务中的设定的月份不为0,并且与当前plc控制设备时钟中的月数据不相等,则为false退出本次查询,否则为true,则继续执行步骤33;
16.步骤33.判断当前plc控制设备时钟中的日数据与计划任务中设定的日之间的关系,若计划任务中的设定的日不为0,并且与当前plc控制设备时钟中的日数据不相等,则为false退出本次查询,否则为true,则继续执行步骤34;
17.步骤34.判断当前plc控制设备时钟中的时数据与计划任务中设定的时之间的关系,若计划任务中的设定的时不为24,并且与当前plc控制设备时钟中的时数据不相等,则为false退出本次查询,否则为true,则继续执行步骤35;
18.步骤35.判断当前plc控制设备时钟中的分数据与计划任务中设定的分之间的关系,若计划任务中设定的分不为60,并且与当前plc控制设备时钟中的分数据不相等则为false退出本次查询,否则为true,执行本条计划任务中的触发动作和参数设置。
19.第二方面,本发明还提供了实现plc控制设备计划任务队列的装置,其包括:处理器、存储器以及程序;所述程序存储在所述存储器中,所述处理器调用存储器存储的程序,以执行第一方面中任一实施例所述的实现plc控制设备计划任务队列的方法。
20.第三方面,本发明还提供了一种计算机可读存储介质,所述计算机可读存储介质包括存储的计算机程序,其中,在所述计算机程序被处理器运行时控制所述存储介质所在设备执行第一方面中任一实施例所述的所述实现plc控制设备计划任务队列的方法。
21.与现有技术相比,本发明具有如下技术效果:
22.本发明每秒的首次plc循环仅查询一条计划任务,经过极少的判断即可确定该条计划任务是否执行,判断数量少,对该次plc循环时间影响有限,不影响同一秒中其他plc循环的扫描时间。
附图说明
23.为了更清楚地说明本发明实施例或现有技术中的技术方案和优点,下面将对实施例或现有技术描述中所需要使用的附图作简单的介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其它附图。
24.图1为本发明的一种实现plc控制设备计划任务队列的方法的流程示意图。
具体实施方式
25.为了更进一步阐述本发明为达成预定发明目的所采取的技术手段及功效,以下结合附图及较佳实施例,对依据本发明提出的技术方案的具体实施方式、结构、特征及其功效,详细说明如下。一个或多个实施例中的特定特征、结构或特点可由任何合适形式组合。
除非另有定义,本发明所使用的所有的技术和科学术语与属于本发明的技术领域的技术人员通常理解的含义相同。
26.参照图1,在本发明的一个实施例中,提供了一种实现plc控制设备计划任务队列的方法,包括以下步骤:
27.步骤1.根据plc控制设备定时信息,以秒数据为基础设置六十组计划任务队列,即任意分钟中第n秒(0<n≤60)要执行的计划任务归入第n条计划任务队列,编号0-59,每条计划任务队列包括:使能位、星期字节、月字节、日字节、时字节、分字节、触发动作及参数设置。
28.本发明无秒设置,不占用字节。
29.使能位,表示是否启用该条计划任务,采用布尔型变量,数据范围true和false,占用1个位;
30.月字节,表示该条计划任务设定的月份,采用无符号短整型,数据范围0-12,数字0代表任意月,占用1个字节;
31.日字节,表示该条计划任务设定的日,采用无符号短整型,数据范围0-12,数字0代表任意天,占用1个字节;
32.星期字节,表示该条计划任务设定的星期天,采用无符号短整型,数据范围0-7,数字0代表星期中的任意一日,7代表星期日,占用1个字节;
33.时字节,表示该条计划任务设定的时,采用无符号短整型,数据范围0-24,数字24表示任意时,占用1个字节;
34.分字节,表示该条计划任务设定的分,采用无符号短整型,数据范围0-60,数字60表示任意分,占用1个字节;
35.触发动作,采用布尔型变量,数据范围true和false,占用7个位,表示该条计划任务触发时需要7个执行的动作,例如开或关设备等,可与使能位合并占用1个字节;
36.1个或多个参数设置,采用任意变量类型,表示该条计划任务触发时需要设定的控制系统参数,例如水温设定、功率设定等。
37.步骤2.获取plc当前控制设备的时钟信息,所述plc当前控制设备的时钟信息包括月、日、时、分、秒数据;基于当前plc控制设备时钟信息中的秒数据信息,在所述六十组计划任务队列查询到对应的计划任务。
38.例如,当前plc时钟时间是2023年4月15日16时35分42秒,则利用秒数据42,索引到计划任务队列中的编号为42的任务。
39.步骤3.将plc当前控制设备的时钟信息与查询到的计划任务进行比较判断,确定是否执行本条计划任务中的触发动作和参数设置。
40.此步骤具体包括:
41.步骤31.检查使能位是否启用,若为false表示该条计划任务不启用其停止并退出本次查询;若为true,则执行步骤32;
42.步骤32.判断当前plc控制设备时钟中的月数据与计划任务中设定的月份之间的关系,若计划任务中的设定的月份不为0,并且与当前plc控制设备时钟中的月数据不相等,则为false退出本次查询,否则为true,则继续执行步骤33。
43.例如,若当前plc控制设备时钟中的月数据为4,计划任务中设定的月为6,划任务
中设定的月不为0,并且与当前plc控制设备时钟中的月数据不相等,则为false退出本次查询;若当前plc控制设备时钟中的月数据为4,计划任务中设定的月为0,数字0代表任意月,则为true,继续执行步骤33。
44.步骤33.判断当前plc控制设备时钟中的日数据与计划任务中设定的日之间的关系,若计划任务中的设定的日不为0,并且与当前plc控制设备时钟中的日数据不相等,则为false退出本次查询,否则为true,则继续执行步骤34。
45.例如,若当前plc控制设备时钟中的日数据为15,计划任务中设定的日为6,计划任务中设定的日不为0,并且与当前plc控制设备时钟中的日数据不相等,则为false退出本次查询;若当前plc控制设备时钟中的日数据为15,计划任务中设定的日为0,数字0代表任意日,则为true,继续执行步骤34。
46.步骤34.判断当前plc控制设备时钟中的时数据与计划任务中设定的时之间的关系,若计划任务中的设定的时不为24,并且与当前plc控制设备时钟中的时数据不相等,则为false退出本次查询,否则为true,则继续执行步骤35。
47.例如,若当前plc控制设备时钟中的时数据为16,计划任务中设定的时为12,划任务中设定的时不为0,并且与当前plc控制设备时钟中的时数据不相等,则为false退出本次查询;若当前plc控制设备时钟中的时数据为16,计划任务中设定的时为24,数字24表示任意时,则为true,继续执行步骤35。
48.步骤35.判断当前plc控制设备时钟中的分数据与计划任务中设定的分之间的关系,若计划任务中设定的分不为60,并且与当前plc控制设备时钟中的分数据不相等则为false退出本次查询,否则为true,执行本条计划任务中的触发动作和参数设置。
49.例如,若当前plc控制设备时钟中的分数据为35,计划任务中设定的分为12,划任务中设定的分不为0,并且与当前plc控制设备时钟中的分数据不相等,则为false退出本次查询;若当前plc控制设备时钟中的分数据为35,计划任务中设定的分为60,数字60表示任意分,则为true,执行本条计划任务中的触发动作和参数设置。
50.以上方法的目的是首次plc循环仅查询一条计划任务,通过以上步骤,经过极少的判断即可确定该条计划任务是否执行,判断数量少,对该次plc循环时间影响有限,不影响同一时间中其他plc循环的扫描时间。
51.在本发明的实施例中,还提供了一种实现plc控制设备计划任务队列的装置,其包括:包括处理器、存储器以及程序;程序存储在存储器中,处理器调用存储器存储的程序,以执行上述的一种实现plc控制设备计划任务队列的方法。
52.在上述基于一种实现plc控制设备计划任务队列的装置的实现中,存储器和处理器之间直接或间接地电性连接,以实现数据的传输或交互。例如,这些元件相互之间可以通过一条或者多条通信总线或信号线实现电性连接,如可以通过总线连接。存储器中存储有实现数据访问控制方法的计算机执行指令,包括至少一个可以软件或固件的形式存储于存储器中的软件功能模块,处理器通过运行存储在存储器内的软件程序以及模块,从而执行各种功能应用以及数据处理。
53.存储器可以是,但不限于,随机存取存储器(random access memory,简称:ram),只读存储器(read only memory,简称:rom),可编程只读存储器(programmable read-only memory,简称:prom),可擦除只读存储器(erasable programmable read-only memory,简
称:eprom),电可擦除只读存储器(electric erasable programmable read-only memory,简称:eeprom)等。其中,存储器用于存储程序,处理器在接收到执行指令后,执行程序。
54.处理器可以是一种集成电路芯片,具有信号的处理能力。上述的处理器可以是通用处理器,包括中央处理器(central processing unit,简称:cpu)、网络处理器(network processor,简称:np)等。可以实现或者执行本发明实施例中的公开的各方法、步骤及逻辑框图。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。
55.在本发明的实施例中,还提供了一种计算机可读存储介质,所述计算机可读存储介质包括存储的计算机程序,其中,在所述计算机程序被处理器运行时控制所述存储介质所在设备执行上述的一种实现plc控制设备计划任务队列的方法。
56.本领域内的技术人员应明白,本发明实施例的实施例可提供为方法、装置、或计算机程序产品。因此,本发明实施例可采用完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本发明实施例可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质上实施的计算机程序产品的形式。
57.本发明实施例是参照根据本发明实施例的方法、终端设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理终端设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理终端设备的处理器执行的指令产生用于实现在流程图中指定的功能的装置。
58.这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理终端设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图中指定的功能。
59.这些计算机程序指令也可装载到计算机或其他可编程数据处理终端设备上,使得在计算机或其他可编程终端设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程终端设备上执行的指令提供用于实现在流程图中指定的功能的步骤。
60.以上对本发明所提供的一种实现plc控制设备计划任务队列的方法、一种实现plc控制设备计划任务队列的装置和一种计算机可读存储介质的应用进行了详细介绍,本发明中应用了具体个例对本发明的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本发明的方法及其核心思想;同时,对于本领域的一般技术人员,依据本发明的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本发明的限制。
61.以上实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的精神和范围,均应包含在本发明的保护范围之内。

技术特征:
1.一种实现plc控制设备计划任务队列的方法,其特征在于,包括以下步骤:根据plc控制设备定时信息,以秒数据为基础设置六十组计划任务队列,即任意分钟中第n秒(0<n≤60)要执行的计划任务归入第n条计划任务队列,每条计划任务队列包括:使能位、星期字节、月字节、日字节、时字节、分字节、触发动作及参数设置;获取plc当前控制设备的时钟信息,所述plc当前控制设备的时钟信息包括月、日、时、分、秒数据;基于当前plc控制设备时钟信息中的秒数据信息,在所述六十组计划任务队列查询到对应的计划任务;将plc当前控制设备的时钟信息与查询到的计划任务进行比较判断,确定是否执行本条计划任务中的触发动作和参数设置。2.根据权利要求1中的一种实现plc控制设备计划任务队列的方法,其特征在于,每条计划任务队列包括:使能位、星期字节、月字节、日字节、时字节、分字节、触发动作及参数设置,具体包括:使能位表示是否启用该条计划任务,采用布尔型变量,数据范围true和false;月字节表示该条计划任务设定的月份,数据范围0-12,数字0代表任意月;日字节表示该条计划任务设定的日,数据范围0-12,数字0代表任意天;星期字节表示该条计划任务设定的星期天,数据范围0-7,数字0代表星期中的任意一日,7代表星期日;时字节表示该条计划任务设定的时,数据范围0-24,数字24表示任意时;分字节,表示该条计划任务设定的分,数据范围0-60,数字60表示任意分。3.根据权利要求2中的一种实现plc控制设备计划任务队列的方法,其特征在于,将plc当前控制设备的时钟信息与查询到的计划任务进行比较判断,确定是否执行本条计划任务中的触发动作和参数设置,具体包括以下步骤:步骤31.检查使能位是否启用,若为false表示该条计划任务不启用其停止并退出本次查询;若为true,则执行步骤32;步骤32.判断当前plc控制设备时钟中的月数据与计划任务中设定的月份之间的关系,若计划任务中的设定的月份不为0,并且与当前plc控制设备时钟中的月数据不相等,则为false退出本次查询,否则为true,则继续执行步骤33;步骤33.判断当前plc控制设备时钟中的日数据与计划任务中设定的日之间的关系,若计划任务中的设定的日不为0,并且与当前plc控制设备时钟中的日数据不相等,则为false退出本次查询,否则为true,则继续执行步骤34;步骤34.判断当前plc控制设备时钟中的时数据与计划任务中设定的时之间的关系,若计划任务中的设定的时不为24,并且与当前plc控制设备时钟中的时数据不相等,则为false退出本次查询,否则为true,则继续执行步骤35;步骤35.判断当前plc控制设备时钟中的分数据与计划任务中设定的分之间的关系,若计划任务中设定的分不为60,并且与当前plc控制设备时钟中的分数据不相等则为false退出本次查询,否则为true,执行本条计划任务中的触发动作和参数设置。4.一种实现plc控制设备计划任务队列的装置,其特征在于,其包括:处理器、存储器以及程序;所述程序存储在所述存储器中,所述处理器调用存储器存储的程序,以执行权利要求1-3任意一项所述的方法。5.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质包括存储的计算
机程序,其中,在所述计算机程序被处理器运行时控制所述存储介质所在设备执行权利要求1-3中任意一项所述的方法。

技术总结
本发明属于可编程逻辑控制器技术领域,具体涉及一种实现PLC控制设备计划任务队列的方法,根据PLC控制设备定时信息,以秒数据为基础设置六十组计划任务队列,每条计划任务队列包括:使能位、月字节、日字节、时字节、分字节、触发动作及参数设置;获取PLC当前控制设备的时钟信息,基于当前PLC控制设备时钟信息中的秒数据信息,在六十组计划任务队列查询到对应的计划任务;在查询到的计划任务中,将PLC当前控制设备的时钟信息与计划任务进行比较判断,确定是否执行触发动作和参数设置。本发明每秒的首次PLC循环仅查询一条计划任务,经过极少的判断即可确定该条计划任务是否执行,判断数量少,对该次PLC循环时间影响有限。对该次PLC循环时间影响有限。对该次PLC循环时间影响有限。


技术研发人员:姜文 洪峰 刘小军
受保护的技术使用者:顿汉布什(中国)工业有限公司
技术研发日:2023.06.15
技术公布日:2023/9/12
版权声明

本文仅代表作者观点,不代表航家之家立场。
本文系作者授权航家号发表,未经原创作者书面授权,任何单位或个人不得引用、复制、转载、摘编、链接或以其他任何方式复制发表。任何单位或个人在获得书面授权使用航空之家内容时,须注明作者及来源 “航空之家”。如非法使用航空之家的部分或全部内容的,航空之家将依法追究其法律责任。(航空之家官方QQ:2926969996)

航空之家 https://www.aerohome.com.cn/

飞机超市 https://mall.aerohome.com.cn/

航空资讯 https://news.aerohome.com.cn/

分享:

扫一扫在手机阅读、分享本文

相关推荐