TIAv17环境下再次学习练习STL-71MCR(主控继电器)
标签:
西门子tiastl编程mcr |
分类: 西门子软硬件 |
继续学习TIA环境下的STL编程,这一篇学习MCR主控继电器。
关于使用 MCR 功能的重要注意事项。
为了防止人员受伤或财产损失,切勿使用 MCR
来代替紧急停止功能硬接线的机械主控继电器。
主控继电器(MCR)是一个用于通电和断电的继电器梯形图逻辑主站开关。由下列位逻辑触发的指令和传送指令取决于 MCR:
- = <位>
- S <位>
- R <位>
- T <字节>、T <字>、T <双字>
如果 MCR 为 0,T 指令(用于字节、字和双字)将 0
写入到存储器。S 和 R 指令则不改变现有值。指令=将"0"写入所给定地址的位中。
取决于
MCR 的指令和它们对 MCR 信号状态的响应
MCR( - 开始 MCR 区域,)MCR - 结束 MCR
区域
MCR 由一个一位宽八位深的堆栈控制。当所有八个条目都为 1 时,MCR
激活。MCR( 指令将 RLO位复制到 MCR 堆栈中。)MCR
指令从堆栈中移除最后一个条目,并将空出来的位置设为 1。
MCR(和)MCR
指令必须始终成对使用。当发生故障时,即当连续使用超过八个 MCR(指令,或者试图在 MCR 堆栈为空时执行 MCR)指令时,将触发 MCRF
出错消息。
MCRA - 激活 MCR 区域,MCRD - 取消激活 MCR
区域
MCRA
和 MCRD 必须始终成对使用。在 MCRA 和 MCRD 之间所编的指令将取决于 MCR 位的状态。
在 MCRA-MCRD 序列之外所编的指令与 MCR
位状态无关。
必须在被调用块中使用 MCRA 指令编定块中功能(FC)和功能块(FB)的
MCR 依存关系。
关于使用 MCR 功能的重要注意事项
请小心使用那些已用 MCRA 激活主控继电器的块
- 如果 MCR 已取消激活,将由 MCR(和)MCR 之间的程序段中的所有赋值指令(T、=)写入 0 值。
- 如果在 MCR(指令之前,RLO = 0,则 MCR 将取消激活。
危险:PLC 处于 STOP
状态或未定义的运行特征!
编译器也使用在 VAR_TEMP
中为计算地址而定义的临时变量,对本地数据进行写访问。这意味着,下列命令序列将把 PLC 设为 STOP
模式,或导致未定义的运行特性:
形式参数访问
- 访问 STRUCT、UDT、ARRAY、STRING 类型的复杂 FC 参数的构成成分。
- 访问具有多重背景能力的块(版本 2 型块)中 IN_OUT 区域的 STRUCT、UDT、ARRAY、STRING 类型的复杂 FC 参数的构成成分。
- 如果其地址大于 8180.0,访问具有多重背景功能的功能块(版本 2 型块)的参数。
- 访问具有多重背景功能的功能块(版本 2 型块)的 BLOCK_DB 类型的参数,打开 DB0。其后任何数据访问都将会把 CPU 设为 STOP 模式。T 0、C 0、FC0 或 FB0 也将始终用于TIMER、COUNTER、BLOCK_FC 和 BLOCK_FB。
参数传递
进行参数传送的调用。
LAD/FBD
梯形图中的 T 分支和中线输出或 FBD 以 RLO = 0 开始。
纠正方法
解除上述命令的 MCR 依存关系:
1st
在有关的声明或程序段之前使用 MCRD 指令取消激活主控继电器。
2nd 在有关的声明或程序段之后使用 MCRA
指令重新激活主控继电器。
还是有点懵,通过后面学习和实际练习来体会吧。

加载中…