返回主站|会员中心|保存桌面

尼得科变频器专营    

变频器,驱动器

联系方式
  • 联系人:方经理
  • 电话:13073017555
新闻分类
  • 暂无分类
首页 > 新闻中心 > 尼得科 PLC 周期任务的优先级是如何影响任务执行的?
新闻中心
尼得科 PLC 周期任务的优先级是如何影响任务执行的?
发布时间:2026-08-22        浏览次数:0        返回列表

尼得科 MP2300‑S / MP3300,周期任务(Cyclic Task)、中断任务共用一套0‑7 级优先级体系;数字越大优先级越高,7 最高,0 最低,这点和西门子、ABB 相反,极易记混。 调度机制:抢占式调度;高优先级周期任务可以打断正在运行的低优先级周期任务、主扫描任务;支持任务嵌套。

一、基础参数说明

  1. 优先级:0~7,数值越大优先级越高

    • 7 级:最高,运动闭环、高速周期逻辑

    • 4‑6 级:中等周期任务,PID、工艺逻辑

    • 0‑3 级:低速周期任务,HMI 交互、数据记录、通讯处理

  2. 周期时间:任务触发间隔,最小 500μs;到达定时点任务变为就绪。

  3. 看门狗时间:任务允许最大执行时间,超过看门狗,CPU 报任务溢出故障停机。

  4. 多周期任务:同一个优先级的多个周期任务,按照就绪先后排队执行,不互相抢占

二、优先级如何改变任务执行行为

1、抢占打断

当 CPU 正在执行低优先级周期任务,高优先级周期任务定时时间到:

  1. CPU 执行完当前正在执行的那一条指令,保存现场(寄存器、堆栈、程序断点);

  2. 暂停低优先级任务,跳转执行高优先级周期任务完整逻辑;

  3. 高优先级任务全部执行完毕,释放 CPU;

  4. 回到低优先级任务被打断的断点继续往下执行,不是从头重新扫描低优先级任务

举例:

  • TaskA:周期 2ms,优先级 7(高,运动控制)

  • TaskB:周期 10ms,优先级 3(低,普通工艺逻辑) TaskB 正在运行,2ms 定时到达,TaskA 就绪;立刻抢占 TaskB,跑完 TaskA,回到 TaskB 断点继续执行。

如果高优先级周期任务就绪时,CPU 正在运行更高优先级任务,则该任务进入就绪队列排队等待。

2、优先级对任务触发的影响

  1. 周期定时到达,仅把任务置为就绪状态,不一定立刻执行;CPU 优先运行就绪队列里优先级最高的任务。

  2. 如果高优先级任务占用 CPU 时间过长,低优先级周期任务会发生错过周期(Miss Cycle):定时点已经到,但 CPU 没有空闲,任务推迟执行,抖动变大,严重会丢扫描。

工程准则:高优先级任务最坏执行时间必须远小于自身周期,给低优先级任务留出 CPU 时间。

3、优先级与任务嵌套

高优先级周期任务运行时,如果又有比它优先级更高的周期任务触发,可以再次被抢占,实现任务嵌套。

嵌套不要层级太深,会增大系统抖动,甚至触发看门狗报警。

4、优先级与 IO 快照机制

尼得科 MP 每个周期任务任务启动瞬间做一次 IO 快照拷贝;任务内部逻辑全程使用本次快照;任务结束把输出写到输出缓冲区。

不同优先级任务,各自拥有独立 IO 快照副本。高优先级任务修改全局变量 / IO,低优先级任务的快照不会自动更新;多任务共享变量会出现数据撕裂。 对策:访问共享变量前使用DI临时屏蔽任务,访问完成执行EI打开任务。

三、优先级不同带来的典型现象

  1. 高优先级任务执行时间过长 → 低优先级周期任务严重抖动、丢周期例:7 级周期任务周期 2ms,每次执行 1.8ms;留给其他任务 CPU 极少,10ms 周期的 3 级任务经常推迟执行。

解决:高优先级任务内部只放核心高速逻辑;通讯、数据记录放到低优先级任务。

  1. 同优先级多个周期任务:不会互相抢占,按就绪顺序依次排队执行;如果前一个任务执行时间长,后面同优先级任务全部推迟。

  2. 周期任务与硬件中断任务的优先级关系硬件外部中断同样使用 0‑7 优先级;中断任务和周期任务之间完全遵循抢占规则:7 级硬件中断可以打断任意低优先级周期任务;7 级周期任务也可以打断低优先级硬件中断。

四、配置实操要点

  1. 运动控制、高速闭环逻辑分配高优先级(6‑7 级);HMI、Modbus 通讯、日志记录分配低优先级(0‑3)。

  2. 高优先级任务代码尽可能简短,禁止长延时、大数据通讯指令。

  3. 看门狗设置:看门狗时间设置为任务周期的 3‑5 倍,吸收偶然抖动,防止误停机。

  4. 不要把多个关键高速任务放在同一优先级;同优先级任务排队会带来不可预测延迟。

  5. 多任务共享全局变量:临界区使用DI屏蔽任务,执行完EI恢复,防止数据撕裂。

  6. 在线监控:MPE720 可以监控每个周期任务实际执行时间、抖动、miss‑cycle 计数,用来评估优先级分配是否合理。

五、与其他 PLC 优先级规则对比

表格

控制器优先级规则抢占行为
尼得科 MP0‑7,数字越大优先级越高高优先级打断低优先级,保存断点返回
西门子 S7‑1200 OB数字越小优先级越高中断 OB 打断 OB1,断点返回
ABB AC5000‑31,数字越小优先级越高事件 / 周期任务抢占,断点返回
罗克韦尔 Logix1‑15,数字越小优先级越高抢占,断点恢复执行

尼得科 MP 是少数数字越大优先级越高的 PLC,做题、配置时极易踩坑。

收缩
  • QQ咨询

  • 电话咨询

  • 13073017555
  • 添加微信客服