跳到主要内容

7.14.3 读取当前TASK运行信息

功能

读取当先TASK的信息

LD图形

RD_TASKINFO

参数说明

接口变量声明数据类型说明
RD_TASKINFO返回值INT返回指令状态
NAMEOut_PutSTRING在任务配置中所定义的任务名
TYPE_IDOut_PutINT显示任务类型
PRIORITYOut_PutINT显示任务的优先级
Overlap_CountOut_PutINT重叠情况:如果新触发器所针对的任务就是正在运行的任务,那么新触发器将被丢弃。 每次任务触发器被丢弃,计数器加一。任务重叠计数为0,说明任务执行正常,非零值表示中断周期需要延长。
CYC_TIMEOut_PutTIME配置的循环周期时间(ms),仅定周期循环任务有效。
WATCH_TIMEOut_PutTIME任务配置的看门狗时间(ms)
LAST_LTIMEOut_PutLTIME上一个任务周期的执行时间,单位为 ns
AVG_LTIMEOut_PutLTIME任务平均所需的执行时间,单位为 ns
MAX_LTIMEOut_PutLTIME任务最大执行时间,单位为 ns
MIN_LTIMEOut_PutLTIME任务最小执行时间,单位为 ns

返回值:RD_TASKINFO (...)

返回指令状态(W#16#....)

说明

  • 0000 无错误。
  • FF00 无法读取当前TASK状态。
  • 在程序编辑器中,错误代码可显示为整数或十六进制。

示例

  • LD示例如下动图所示:

RD_TASKINFO_GIF

  • ST示例如下代码所示:
定义参考:
Name :STRING;
ID:INT;
Priority:INT;
Overlap_I:INT;
Cyc_T TIME;
Watch_T:TIME;
Last_LT:LTIME;
Avg_LT:LTIME;
Max_LT:LTIME;
Mint_LT:LTIME;
OUT3:INT;

代码实现:
OUT3:=RD_TASKINFO(
NAME=>name,
TYPE_ID=>ID,
PRIORITY=>Priority,
Overlap_Count=>Overlap_I,
CYC_TIME=>Cyc_T,
WATCH_TIME=>Watch_T,
LAST_LTIME=>Last_LT,
AVG_LTIME=>Avg_LT,
MAX_LTIME=>Max_LT,
MIN_LTIME=>Mint_LT
);