首页 理论教育 理解周期性任务对连续任务的影响

理解周期性任务对连续任务的影响

时间:2023-06-28 理论教育 版权反馈
【摘要】:在本实验中,将了解周期性任务对连续任务的执行所产生的影响。在控制器项目管理器中,可注意到有一个连续任务和七个周期性任务。名为Manager的周期性任务用于处理其他任务属性。这将禁用周期性任务。每个任务都具有一个指示任务类型及其状态的图标。该暂停符号表示任务当前已禁用或未执行。图12-7 任务监视器运行截图来看一下周期性任务对连续任务的影响。这样会将所有周期性任务的周期更改为25ms。

理解周期性任务对连续任务的影响

在本实验中,将了解周期性任务对连续任务的执行所产生的影响。

在控制器项目管理器中,可注意到有一个连续任务和七个周期性任务。可能需要最小化任务文件夹。名为Manager的周期性任务用于处理其他任务属性。当前,该连续任务和5个周期性任务都已禁用,因此它们不会执行。

1.在控制器项目管理器中,双击“控制器标签”(Controller Tags)。这将打开标签监视器。在“标签监视器”(Tag Monitor)窗口中,能控制程序的执行方式。

2.验证已处于“监视标签”(Monitor Tags)选项卡中。

3.在“标签监视器”(Tag Monitor)窗口中,在Inhibit_Periodic的值列中输入1并按回车键。这将禁用周期性任务。

4.在“标签监视器”(Tag Monitor)窗口中,在Uninhibit_Continuous的值列中输入1并按回车键。这将禁用Combined_Periodic任务并令连续任务开始执行。

5.在控制器项目管理器中,右键单击MainTask并选择“属性”(Properties)。

6.出现“任务属性-主任务”(Task Properties-MainTask)窗口后,单击“监视”(Monitor)选项卡,如图12-2所示。

7.可看到,连续任务的扫描时间约为23.872ms到25.862ms(见图12-2)。

978-7-111-47798-3-Chapter01-214.jpg

图12-2 打开的任务属性窗口

现在将打开Logix5000任务监视器工具,以同时监视所有项目任务。

8.在计算机桌面上,双击Logix5000任务监视器978-7-111-47798-3-Chapter01-215.jpg图标。

9.在工具栏菜单中,选择“通信>监视”(Communications>Monitor),如图12-3所示。

10.出现RSWho窗口后,左键单击以太网驱动程序前面的+符号展开其中的选项,如图12-4所示。

978-7-111-47798-3-Chapter01-216.jpg

图12-3 任务监视器通信菜单

978-7-111-47798-3-Chapter01-217.jpg

图12-4 监控对象选择列表

11.出现以下界面后,左键单击演示箱中1756-ENBT的IP地址前面的+符号,以展开其中的选项(10.112.2.1x3,其中x是学员站的编号),如图12-5所示。

978-7-111-47798-3-Chapter01-218.jpg

图12-5 选择监控对象

12.在ControlLogix演示箱插槽1中选择1756-L63并单击“确定”(OK)。如图12-6所示。

978-7-111-47798-3-Chapter01-219.jpg

图12-6 选中的监控任务列表

参考信息

Logix5000任务监视器任务选项卡概述

Logix5000任务监视器为连接的控制器显示有关CPU分配的控制器应用信息。

“任务”(Tasks)选项卡显示与控制器内各个任务有关的信息。每个任务都具有一个指示任务类型及其状态(即,已禁用或未禁用)的图标。

参数:

1)名称(Name):任务的名称,以及表示任务类型的图标。

2)速率(Rate):计划的任务更新时间间隔(以毫秒为单位)。

3)CPU:每个任务的处理器占用百分比

4)优先级(Priority):获取执行所需资源的任务相对优先级。任务的优先级数越低,代表的优先级越高。

5)上次扫描时间(Last Scan):任务从开始执行到结束已耗用的时间(以毫秒为单位)。

6)最长扫描时间(Max Scan):任务从开始执行到结束所需的最长时间。

7)看门狗(Watchdog):为任务分配的最长执行时间。

8)状态(Status):任务的内部状态。有效的状态包括:

a)已停止(Stopped):任务未运行,但也未禁用。

b)运行中(Running):任务当前正在进行扫描和执行。

c)已禁用(Inhibited):任务已被禁止执行(任务已禁用)。

9)“刷新”(Refresh)按钮:通过“刷新”(Refresh)按钮可刷新任务名称。如果已添加任务或已对其名称进行编辑,则需要单击“刷新”(Refresh)按钮来刷新名称列表。

10)日志(Log):选中后将启用对此选项卡的记录。与此选项卡相关的数据将按照CSV的格式记录下来,并将以此文件名保存在C:盘的根目录下:

C:\[controller name]_Tasks[mmddyyy].csv

软件将按照组态的更新速率(默认值:约1000ms)向此文件中记录。可更改记录速率,具体方式是选择“选项->通信更新速率”(Options->Communication Update Rate)并设置一个介于200ms和5000ms之间的值。

11)“重置最长扫描时间”(Reset Max Scan)按钮:单击此按钮可重置每个任务的“最长扫描时间”(Max Scan Time),从而可提供更精确的最长扫描时间值。任务列表中至少有一项突出显示时,才可启用该按钮。右键单击列表中的项时,将出现一个弹出菜单,可用于重置扫描时间。只有在任务列表中有突出显示的项时,此弹出菜单才会出现。允许在列表中突出显示多个任务,可以同时重置所有这些任务的最长扫描时间。

12)“重置重叠计数”(Reset Overlap Count)按钮:单击此按钮将所选任务的重叠计数设置为零。任务列表中至少有一项突出显示时,才可启用该按钮。同样,右键单击列表中的项时,将出现一个弹出菜单,可用于重置重叠计数。只有在任务列表中有突出显示的项时,此弹出菜单才会出现。允许在列表中突出显示多个任务,可以同时重置所有这些任务的重叠计数。可注意到一些“任务”(Task)文件夹上有一个符号。该暂停符号表示任务当前已禁用或未执行。

在任务监视器界面中可看到有两个任务正在运行,六个已禁用。还可在一个界面中查看这两个运行中任务的最大扫描时间和上次扫描时间。(www.xing528.com)

13.单击工具栏上的最小化按钮最小化“任务监视器”界面,如图12-7所示。

978-7-111-47798-3-Chapter01-220.jpg

图12-7 任务监视器运行截图

来看一下周期性任务对连续任务的影响。

14.单击“确定”(OK),关闭“任务属性”(Task Properties)窗口。

15.转到“标签监视器”(Tag Monitor)窗口。

16.将标签Task_22的值修改为25000并按回车键。这样便可将周期性任务的周期更改为25ms。

17.在Periodic_to_22的值列中输入1并按回车键。该值将恢复为零。这样会将所有周期性任务的周期更改为25ms。

18.在Uninhibit_Periodic的值列中输入1并按回车键。该值将恢复为零。刚刚激活了所有周期性任务。

19.通过查看控制器面板可注意到,控制器已发生故障,如图12-8所示。

20.在界面底部的工具栏上单击Logix5000任务监视器将其最大化,如图12-9所示。

注意,该两个原本处于运行中状态的任务现已停止,因为控制器发生故障,如图12-10所示。

978-7-111-47798-3-Chapter01-221.jpg

图12-8 控制器面板

978-7-111-47798-3-Chapter01-222.jpg

图12-9 工具栏上的Logix5000任务监视器窗口

978-7-111-47798-3-Chapter01-223.jpg

图12-10 监控任务列表

21.最小化Logix5000任务监视器并单击RSLogix5000屏幕中文字“故障”(Faulted)旁边的“控制器”(Controller)图标978-7-111-47798-3-Chapter01-224.jpg。将出现一个下拉菜单。选择“转到故障部分”(Go To Faults),如图12-11所示。

22.将出现“控制器属性-A2_program_task”(Controller Properties-A2_program_task)窗口。发生的错误是“主任务”(MainTask)(连续任务)的“看门狗故障”(Watchdog Fault),如图12-12所示。这意味着连续任务未能在500ms内完成执行过程。发生这一情况的原因是因为周期性任务耗用了连续任务的执行时间。

23.单击“清除主要故障”(Clear Majors)按钮。

978-7-111-47798-3-Chapter01-225.jpg

图12-11 故障菜单

978-7-111-47798-3-Chapter01-226.jpg

图12-12 控制器属性界面

24.单击“确定”(OK),关闭“控制器属性”(Controller Properties)窗口。需要修改周期性任务的周期,以防止“看门狗故障”的再次发生。

25.在“标签监视器”(Tag Monitor)窗口中,在Task_22的值列中输入27000并按回车键。这会将周期任务周期更改为27ms。

26.在“标签监视器”(Tag Monitor)窗口中,在Periodic_to_22的值列中输入1并按回车键。这会令对周期进行的更改生效。

27.将控制器设为运行模式。Periodic_to_22的值将恢复为零。此时控制器未发生故障。

28.打开“主任务”(MainTask)的“属性”(Properties)窗口。

29.出现“任务属性-主任务”(Task Properties-MainTask)窗口后,单击“监视”(Monitor)选项卡。

30.单击“重置”(Reset)按钮,如图12-13所示。

978-7-111-47798-3-Chapter01-227.jpg

图12-13 打开的任务属性窗口

可注意到,该任务的扫描时间已大幅增加。在之前情况下,连续任务是唯一的任务,执行的时间为217.919~268.739ms。发生这种情况的原因是周期性任务的优先级要高于连续任务。

31.单击“确定”(OK),关闭“任务属性”(Task Properties)窗口。

32.在界面底部的工具栏上单击Logix5000任务监视器,将其最大化。Logix5000任务监视器将显示如图12-14所示界面。

978-7-111-47798-3-Chapter01-228.jpg

图12-14 监控任务列表

可注意到,Logix5000任务监视器显示连续任务和6个正在执行的周期性任务,如图12-15所示。连续任务的“最长扫描时间”(Max Scan)值(在图12-15中突出显示)实际上显示已超出“看门狗”(Watchdog)值,从而导致控制器故障。

978-7-111-47798-3-Chapter01-229.jpg

图12-15 监控任务列表中导致故障的任务信息

978-7-111-47798-3-Chapter01-230.jpg

图12-16 通信菜单

33.关闭并退出Logix5000任务监视器。

34.在RSLogix 5000的工具栏菜单中,选择“通信>脱机”(Communication>Go Offline),如图12-16所示。

35.在工具栏菜单中,选择“文件>退出”(File>Exit),退出并且不保存所做的更改。

免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。

我要反馈