业务销售;竭诚为你服务.
公司主营西门子PLC模块,数控伺服,触摸屏等系列产品,产品*,质保一年
![]() |
参考价 | ¥670 |
订货量 | 1 |
更新时间:2019-08-09 16:05:06浏览次数:448
联系我们时请说明是化工仪器网上看到的信息,谢谢!
西门子6ES7822-1AA00-0YL5集成商
所有产品均为西门子原装,所有产品非人为损坏质保一年,(烧坏、客户保管不善)访问“#Field[#index]"变量时出错。尽管读取/访问发生错误,#TagOut 操作数仍返回
状态“1",并使用值“0.0"执行乘法。如果出现这种错误情况,我们建议您在执行乘法之后
设定“获取本地错误信息"指令以获取错误。“获取本地错误信息"指令提供的错误信息
将通过比较进行评估。如果“#Error.REACTION"结构组件的值为“1",则表示出现读取/
访问错误,程序执行将再次从跳转标签 LABEL 处开始。
参见
有效数据类型概述 (页 247)
状态字的基本信息 (页 200)
转换程序状态的显示格式 (页 8834)
指令 GET_ERROR 和 GET_ERR_ID 的用法 (页 177)
STL 基础知识 (页 8341)
指令
4.1 指令
对 PLC 进行编程
编程和操作手册, 10/2018 1685
GET_ERR_ID:获取本地错误 ID (S7-1500)
说明
可以使用“获取本地错误 ID"指令查询块内发生的错误。该错误通常为访问错误。从上一
次执行该指令后如果在块执行中报告发生块执行错误,则将变量中所发生个
错误的错误 ID 存储在输出 RET_VAL 中。
RET_VAL 输出中只能 WORD 数据类型的操作数。如果块中存在多处错误,则在更正
了个错误后仅输出该指令中下一个错误的错误 ID。
说明
只有在存在错误信息时才能更改 RET_VAL 输出。可以通过以下在处理错误之后将输
出设置回“0":
● 在块接口的“Temp"部分声明变量。
● 在调用指令之前将变量重置为“0"。
如果存在错误信息,则只能设置“获取本地错误 ID"指令的输出。即使不其中的某个
条件,剩余的程序执行不受“获取本地错误 ID"指令的影响。
有关该指令的执行和其它故障排除的示例,请参见“另请参见"。
说明
“获取本地错误 ID"指令支持在块内进行本地错误处理。在将“获取本地错误 ID"指令插
入块的程序代码中时,如果发生错误,则将忽略任何预定义的响应。
错误处理
有关相应的错误处理概述,请参见:错误处理机制概览 (页 149)
有关包含有多种错误处理的局部错误处理详细示例,请参见:有关处理程序执行错误
的示例 (页 179)
参数
下表列出了“获取本地错误 ID"指令的参数:
参数声明数据类型存储区说明
RET_VAL Output WORD I、Q、M、D、L 错误 ID
指令
4.1 指令
对 PLC 进行编程
1686 编程和操作手册, 10/2018
RET_VAL 参数
下表列出了可通过参数 RET_VAL 输出的值:
RET_VAL*
(十六进制)
RET_VAL*
(十进制)
说明
0 0 无错误
2503 9475 指针无效
2520 9504 STRING 无效
2522 9506 读取错误:操作数超出有效范围
2523 9507 写入错误:操作数超出有效范围
2524 9508 读取错误:操作数无效
2525 9509 写入错误:操作数无效
2528 9512 读取错误:数据对齐
2529 9513 写入错误:数据对齐
252C 9516 指针无效
2530 9520 写入错误:数据块
2533 9523 使用的引用无效
2538 9528 访问错误:DB 不存在
2539 9529 访问错误:使用了错误 DB
253A 9530 全局数据块不存在
253C 9532 故障信息或函数不存在
253D 9533 函数不存在
253E 9534 故障信息或函数块不存在
253F 9535 块不存在
2550 9552 访问错误:DB 不存在
2551 9553 访问错误:使用了错误 DB
2575 9589 程序嵌套深度出错
2576 9590 本地数据分配出错
2577 9591 未选择块属性“通过寄存器传递参数"。
25A0 9632 TP 中发生内部错误
25A1 9633 变量为写保护
25A2 9634 变量的数值无效
2942 10562 读取错误:Input
指令
4.1 指令
对 PLC 进行编程
编程和操作手册, 10/2018 1687
RET_VAL*
(十六进制)
RET_VAL*
(十进制)
说明
2943 10563 写入错误:Output
* 在程序编辑器中,错误代码可显示为整数或十六进制值。有关切换显示格式的更多信
息,请参见“另请参见"。
示例
以下示例说明了该指令的工作原理:
STL 说明
L #Field[#index] // 访问 #Field[#index] 变量
L 40.5 // 加载值 40.5
*R // 将变量值乘以 40.5。
T #TagOut // 将乘积传送到操作数 #TagOut。
CALL GET_ERR_ID // 调用指令。
RET_VAL := #TagID // 如果出错,错误 ID 将保存在 #TagID 操作数中。
T #TagID // 读取 #TagID 操作数的错误 ID。
L 16#2522 // 加载值 16#2522
==I // 错误 ID 的值与 16#2522 的值进行比较。
CALL MOVE // 调用指令。
IN := 100.0 // 值 100.0 被到 #TagOut 操作数。
OUT := #TagOut // 该指令的输出
访问“#Field[#index]"变量时出错。尽管读取/访问发生错误,#TagOut 操作数仍返回
状态“1",并使用值“0.0"执行乘法。如果出现这种错误情况,我们建议您在执行乘法之后
设定“获取本地错误 ID"指令以获取错误。“获取本地错误 ID"指令提供的错误 ID 将通
过比较进行评估。如果“#TagID"操作数返回 ID 16#2522,则表示有读取/访问错误,并且
值“100.0"被到 #TagOut 输出。
下一篇:西门子6ES7997-1BD00-4AX2集成商