n
描述
在 STEP 7 V5.x 中,适用于 S7-300/400 的系统状态列表(SSL)不支持 S7-1200 的 CPU 模块。可使用“ModuleStates”和“DeviceStates”指令块读出 S7-1200 的模块状态信息。这两个指令块可以在“扩展指令>文件夹:诊断”中找到。从固件 V2.2 开始的 S7-1200CPU ,可以在程序编辑器中,使用拖放的方式将这些指令块插入程序,并为其赋参数。n
图. 01n
使用的“ModuleStates”指令,可以读出模块的状态信息,而使用“DeviceStates”指令,输出一个 IO 系统的模块状态。通过不同的 LADDR 和 MODE 参数,可以选择要读取的状态信息。STATE 参数用来输出选择 MODE 参数所选择的模块的状态。STATE 参数是 VARIANT 数据类型,状态信息是以位字符串的形式输出。n
图. 02 展示一个例子,介绍这两个指令块是怎样参数化的。n
图. 02n
VARIANT参数是一个指针,可以指向不同数据类型的变量。VARIANT 的指针可以识别结构并指向不同的结构组件。操作数为 VARIANT 的数据类型不占用任何存储空间。图02 示例中,位字符串存储在两个数据块中:n
- “DeviceDiag”(DB2 用于“DeviceStates”指令)n
- “ModulDiag”(DB1 用于“ModuleStates”指令)。
DB 变量“State”是数组数据类型“Array[1.. 8] of Byte”,因此,指针指向的是相关数据块的 8 个字节。n
- “ModulDiag”状态参数对应的格式:P#DB1.DBX0.0 BYTE7。n
- “DeviceDiag”状态参数对应的格式:P#DB2.DBX0.0 BYTE7。
LADDR 参数是数据类型 HW_DEVICE(“ModuleStates”指令)和 HW_IOSYSTEM(“DeviceStates”指令)和接收的数据的硬件标识。硬件标识符用来标识模块或模块的功能单元,由一个整数组成。系统随着诊断报警报告出这个整数,使得有故障的模块或功能单元被定位。条目号 ID 42781105 提供了如何查找到硬件标识符和如何参数化 LADDR 参数的详细说明。n
更多消息
有关参数的更多详细信息,可参考 STEP 7 V11 的在线帮助。方法是用鼠标点亮“ModuleStates”或“DeviceStates”指令块,并按下“F1”键即可打开。
创建环境
本 FAQ 的拷屏图片被 STEP 7 V11+SP2 检验过。
原创文章,作者:ximenziask,如若转载,请注明出处:https://www.zhaoplc.com/plc330010.html