西门子控制单元6AU1400-7AA05-0AA0销售
产品别名 |
PLC模块,数字量模块,输出模块,CPU模块 |
面向地区 |
|
<p>
西门子控制单元6AU1400-7AA05-0AA0销售
</p>
<p>
上海斌勤电气技术有限公司 业务顾问;康工竭诚为你服务,急你所需、公司地址:上海市松江区三新北路1800弄(电子商务园)24号楼5005室所售均为西门子原装全新未开封产品,图片仅供参考,一切以型号为准,实物全新,敬请放心购买.本公司销售的产品一律(原装*假一罚十*质保一年) 本公司可以签约正式的销售合同,并可以开具17%票、如需票,税点另算。所售均为西门子原装产品,敬请放心购买!量大价优,欢迎选购!如果本店没有找到你需要的西门子产品的话,可以联系我,质量·服务诚信·价格实惠本公司宗旨:本着以诚信为本,以顾客为中心,为用户提供的自动化产品及服务!本公司长期销售西门子S7-200,300,400,1200,西门子PLC附件,西门子电机,西门子人机界面,西门子变频器,西门子数控伺服,西门子总线电缆现货供应,折扣低,货期准时,并且备有大量库存.长期有效
</p>
S7-1200可编程控制器
系统手册,V4.2, 09/2016, A5E02486685-AK
基本指令
8.8程序控制操作
表格8- 146 ErrorStruct数据结构的元素
结构组件 数据类型 说明
ERRORJD Word 错误丨D
FLAGS Byte 显示块调用期间是否出错。 • 16#01:块调用期间出错。 • 16#00:块调用期间未出错。
REACTION Byte 默认响应: • 0:忽略(写入错误), • 1:以替代值“0”继续(读取错误), • 2:跳转指令(系统错误)
CODE_ADDRESS CREF 有关块地址和类型的信息
BLOCK_TYPE Byte 出错块的类型: • 1: OB • 2: FC • 3: FB
CB_NUMBER UInt 代码块的编号
OFFSET UDInt 对内部存储器的引用
MODE Byte 访问模式: 卜艮据具体的访问类型,可输出以下 F信息:
模式 (A) (B) (C) (D) (E)
0
1 偏移
2 区域
3 位置 范围 编号
4 区域 偏移
5 区域 DB编号 偏移
6 伙伴编 号/访问 区域 DB 编号 偏移
7 伙伴编 号/访问 插槽号/范 围 区域 DB 编号 偏移
S7-1200可编程控制器
系统手册,V4.2, 09/2016, A5E02486685-AK
341
基本指令
8.8程序控制操作
结构组件 数据类型 说明
OPERAND_NUMBER Ulnt 机器命令的操作数
POINTER_NUMBER_ LOCATION Ulnt (A)内部指针
SLOT_NUMBER_SCOPE Ulnt (B)内部存储器中的存储区
data_address NREF 有关操作数地址的信息
AREA Byte (C)存储区: • L: 16#40 - 4E、86、87、8E、8F、C0 - CE • I: 16#81 • Q: 16#82 • M: 16#83 • DB: 16#84、85、8A、8B
DB_NUMBER Ulnt (D)数据块编号
OFFSET UDInt (E)操作数的相对地址
GET ERROR ID
表格8- 147 GetErrorlD 指令
LAD/FBD
SCL
说明
GET_ERR_ID()
指示发生程序块执行错误,并报告错误的ID (标识符代码)
表格8-148参数的数据类型
参数 数据类型 说明
ID Word ErrorStruct ERROR_ID成员的错误标识符值
342
S7-1200可编程控制器
系统手册,V4.2, 09/2016, A5E02486685-AK
基本指令
8.8程序控制操作
表格8-149 Error_ID 值
ERROR ID 十六进制值 ERROR ID 十进制值 程序块执行错误
0 0 无错误
2520 9504 损坏的字符串
2522 9506 操作数超出范围读取错误
2523 9507 操作数超出范围写入错误
2524 9508 无效区域读取错误
2525 9509 无效区域写入错误
2528 9512 数据分配读取错误(位赋值不正确)
2529 9513 数据分配写入错误(位赋值不正确)
252C 9516 未初始化指针错误
2530 9520 DB受到写保护
2533 9523 使用了无效指针
2538 9528 访问错误:DB不存在
2539 9529 访问错误:使用了错误DB
253A 9530 全局DB不存在
253C 9532 版本错误或FC不存在
253D 9533 指令不存在
253E 9534 版本错误或FB不存在
253F 9535 指令不存在
2550 9552 访问错误:DB不存在
2575 9589 程序嵌套深度错误
2576 9590 局部数据分配错误
2942 10562 物理输入点不存在
2943 10563 物理输出点不存在
S7-1200可编程控制器
系统手册,V4.2, 09/2016, A5E02486685-AK
343
基本指令
8.8程序控制操作
运行
默认情况下,CPU通过将错误记录到诊断缓冲区来响应块执行错误。
但是,如果在代码块中放置一个或多个GET_ERROR或GET_ERROR_ID
指令,即将该块设置为在块内处理错误。在这种情况下,CPU
不在诊断缓冲区中记录错误。而是在GET_ERROR或GET_ERROR_ID
指令的输出中报告错误信息。可以使用GET_ERROR指令读取详细错误信息,或使用
GET_ERROR_ID指令只读取错误标识符。
因为后续错误往往只是个错误的结果,所以个错误通常重要。
在块内次执行GET_ERROR或GET_ERROR_ID
指令将返回块执行期间检测到的个错误。在块启动到执行GET_ERROR或
GET_ERROR_ID期间随时都可能发生该错误。随后执行GET_ERROR或
GET_ERROR_ID 将返回上次执行 GET_ERROR 或 GET_ERROR_ID
以来发生的个错误。不保存错误历史,执行任一指令都将使PLC
系统重新捕捉下一个错误。
可以在数据块编辑器和块接口编辑器中添加GET_ERROR指令所使用的ErrorStruct
数据类型,这样程序逻辑便可以访问这些值。从数据类型下拉列表中选择ErrorStruct
以添加该结构。您可以使用的名称创建多个ErrorStruct元素。不能重命名
ErrorStruct 的成员。
ENO指示的错误条件
如果 EN = TRUE 且 GET_ERROR 或 GET_ERROR_ID 执行,贝 ij:
• ENO = TRUE表示发生代码块执行错误并提供错误数据
• ENO = FALSE表示未发生代码块执行错误
可以将错误响应程序逻辑连接到在发生错误后激活的ENO。
如果存在错误,该输出参数会将错误数据存储在程序能够访问这些数据的位置。
GET_ERROR 和 GET_ERROR_ID
可用来将错误信息从当前执行块(被调用块)发送到调用块。
将该指令放置在被调用块程序的后一个程序段中可以报告被调用块的终执行状态。
344
S7-1200可编程控制器
系统手册,V4.2, 09/2016, A5E02486685-AK
基本指令
8.8程序控制操作
8.8.9 RUNTIME (测量程序运行时间)
表格8- 150 RUNTIME指令
LAD/FBD SCL 说明
RUNTIME EN ENO MEM Ret.Val Ret Val := RUNTIME( lread inout ); 测量整个程序、各个块或命令序列的运行时间。
如果要测量整个程序的运行时间,请在OB1
中调用指令“测量程序运行时间”。运行时间的测量从次调用指令开始,输出
RET_VAL
将在第二次调用后返回程序的运行时间。测得的运行时间包括程序执行期间可能发生的所
有CPU
进程,如,由更别的事件或通信所引发的中断。“测量程序运行时间”指令读取CPU
的内部计数器并将值写入IN-OUT参数
MEM。该指令根据内部计数器频率计算当前程序运行时间并将其写入输出RET_VAL。
如果要测量单个块或单个命令序列的运行时间,您需要三个单的程序段。在程序内的单
个程序段内分别调用指令“测量程序运行时间”。在调用该指令时设置运行时间测量的
起点。然后在下一程序段中调用所要测量的程序块或命令序列。在另一个程序段中,第二
次调用“测量程序运行时间”指令,然后如同在次调用该指令那样,为IN-OUT参数
MEM分配相同的内存。在第三个程序段中,“测量程序运行时间”指令读取内部CPU
计数器,然后根据内部计数器频率计算程序块或命令序列的当前运行时间并将其写入输出
RET_VAL。
“测量程序运行时间”指令使用内部高频计数器来计算时间。如果计数器溢出,该指令返回
值 <= 0.0。请忽略此类运行时间值。
说明
CPU
不能准确确定某个命令序列的运行时间,因为在程序的优化编译期间,命令序列内的指令
序列会发生变化。
<p>
</p>
<p>下一篇:<a href="">西门子控制单元6AU1435-2AA00-0AA0集成商</p>
查看全部介绍