EtherCat用户工程中的任务与配置

每个任务组可以分别设定其执行触发条件、执行周期、执行优先级等

任务配置的要点

1、设为“循环”类型,“任务周期”是指执行该类任务的时间间隔,一般的逻辑控制,普通 IO 端口变量状态变化比较慢,任务周期设定周期可以比较大一些,比如任务周期可设为 20ms;若需要及时处理的任务,任务周期设定周期则可以小一些。

 2、EtherCAT 总线通信的任务配置,是一个比较特殊的“循环”类型的任务,具有最高的优先级,其任务周期的设定值,也将是 EtherCAT 总线的通信周期,一般为设为 1ms~4ms;设定值越小,运动控制的精度越高;当 所需控制的轴数越多,则需要设定周期越大,否则容易导致 CPU 的计算负荷过载。

3、CANopen 总线通信的任务配置,是另一个比较特殊的“循环”类型的任务,具有第二优先级,其任务周期的设定值,也将是 CANopen 总线的通信周期,一般为设为 4ms~8ms;设定值越小,运动控制的精度越高;当所需控制的轴数越多,通信所需的时间更长,则需要设定周期越大。

4、还有一些任务则在满足某些状态的情况下,才开始执行,例如由高速 IO 端口(HSIO)的状态变化,也称HSIO 中断信号,引发任务执行,不是按时间间隔来执行。

 5、一个任务配置,只能设为一种执行类型、时间间隔及优先级,若要得到不同的执行特性,可以通过添加多个 任务配置;

6、一个任务配置内,允许包含有多个 POU,该多个 POU 将均以相同的时间间隔执行,执
行时按该任务中 POU添加顺序执行。
如下图中所示,在 InoProShop 编程环境的“任务配置”下有 4 个任务。双击已经存在的任务,右侧窗口可以看到任务的设置参数:

鼠标选中“任务配置”,点击右键,可以增加新的任务。

请注意,上图中具有“ETHERCAT.EtherCAT_Task”项目的任务,将会是 EtherCAT 总线任务,其任务的优先级应设为 0。

任务优先级的安排

 AM600 控制器的系统软件,默认对不同类型的任务配置,安排了不同的优先级,确保对运动控制等重要任务 优先执行,在一些需要高性能运动控制(MC)的应用中,可让控制器的性能得到合理利用。

任务优先级顺序如下,(用户不要强行修改优先级顺序):

优先级设定值越小,优先级越高;高优先级的 POU 可以打断低优先级 POU 的执行,如下图,其中ECT代表EtherCAT。

从上图可知:

控制器执行任务时,有一个用户观察不到的时间对准点,如上图左侧,在这个时间点开始,按最高优先级次高优先级...最低优先级的顺序开始执行;

低优先的任务在执行时,可能被高优先级的任务打断,待高优先级任务执行完成后,返回被打断的任务,继 续执行该低优先级任务;

EtherCAT 任务为最高优先级任务,按 EtherCAT 周期进入该任务,完整执行一遍该任务内的所有 POU 后,才返回较低优先级任务;

任务配置中的执行周期设定的要求

AM600 系统软件采用多任务方式来执行用户程序的“任务”,而每个“任务”分配了不同的执行周期,
有些 全局变量可能要在不同的 POU 之间被访问和修改,于是需要对全局变量进行交互同步,也
是在任务的“时 间对准点”进行的,在设置循环类型任务的周期时,呈整数倍数的关系。
比如,设 EtherCAT 周期为 1ms、2ms 或 4ms,而普通循环任务的周期为 20ms,更低优先级的循环任务周期为 100ms 等等。EtherCAT 周期不要设为 3ms、6ms、7ms、9ms 等,容易造成非整数倍的关系。
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值