威纶通人机界面宏指令执行机制说明

相关主题
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

威纶通人机界面宏指令执行机制说明

2013.06

Q:一般会有多个宏指令同时被触发,那么多个宏指令并发执行的机制是什么,是顺序执行还是如何?如何避免多个宏指令同时执行时发生碰撞冲突?如何排序各个宏指令的周期式执行?

A:

●【HMI分时系统】HMI是一个time-slicing分时系统;PLC控制,事件登录各部分独立运作,没有优

先权。HMI会平均把命令丢给COM口的序列,COM依次执行;

●【顺序执行机制】宏指令执行时,依照宏指令编号顺序, 依序检视宏指令是否被触发执行。

●【不存在碰撞的问题】因PLC的COM port就是一个,不可能同时执行两个MACRO的读写;

●【一执行,余闲置】当某一条宏指令在执行时, 其余的宏指令将处在idle闲置状态;

●【等待时交出执行权】执行中的宏指令,如读写到PLC地址或DELAY动作时, 会将命令发送到

command queue中, 并等待命令执行完成的讯息。而在将命令发出的同时,会将执行权交给下一条等待执行的宏指令;

⏹如:同一个LB0上升沿触发多个宏指令(macro 0、macro1、macro2......macro7),那么将先执行

macro 0,然后执行macro2,继而是macro3......

⏹在执行macro 0时,如果读写到PLC地址或DELAY(dleay_tme)动作,那么会等待回复,并把执行

权交出,先执行macro1;

⏹Macro1同样如此,如果读写到PLC地址或DELAY(dleay_tme)动作,那么会等待回复,并把执行权

交出,先执行macro3......

⏹一直到macro7,然后再从macro0继续,如此反复循环;

●【等待被检视机制】接收到命令完成讯息的宏指令, 也不是立即恢复执行状态, 而是等到下一次被检

视时, 才会恢复执行状态;

●【周期执行方式】如需周期式执行宏指令, 可以利用物件设定触发周期, 或是直接设定宏指令的执行

周期(EB8000 V4.65.06)

●【多个位信号触发同一个宏指令的顺序】宏指令被触发执行后,假使仍处于执行状态,则不再接受

其它触发讯号,因此宏指令在执行状态时,并不会因被触发多次而多次执行。

●【人为控制】如有需要控制宏指令的执行顺序, 用户可以利用同步与异步的命令来控制;

ASYNC_TRIG_MACRO 异步触发宏指令

[Description]

This function will trigger the designated MACRO and continue the next instructions.

此函数将触发指定宏指令,并继续执行接下来的接下来的指令;

[Usage]

ASYNC_TRIG_MACRO(macro_id) // macro_id is a constant or variable

[Example]

ASYNC_TRIG_MACRO(5) // execute MACRO 5

SYNC_TRIG_MACRO 同步触发宏指令

[Description]

This function will trigger the designated MACRO and wait for the end of the execution of this designated MACRO.

此函数将触发指定宏指令,并等待指定宏指令执行完毕;

[Usage]

SYNC_TRIG_MACRO(macro_id) // macro_id is a constant or variable

[Example]

SYNC_TRIG_MACRO(5) // execute MACRO 5

相关文档
最新文档