问题:
为何需要理解 SIMATIC PCS V6.0 的扩展状态报告中状态列表的结构?n
解答:
扩展状态报告的作用是为过程画面实现流程画面结构的标准化。它可以用于用户对象中,可通过“GraphicsUpdate wizard”集中更改。扩展状态报告的使用减少了 C 脚本的应用,因此可以带来更高的系统性能。扩展状态报告可以将最多 4 个状态字和最多 6 个状态报告(报警、警告、干扰等)组合到一起。结果可提供 478 个组合(状态字的相关位和块的集合值的状态),用于在扩展状态报告的组态中分配一个基本画面和一个交互画面。优先选用“VSTATUS”变量或 OS 变量中的一个任意的数字性变量作为状态变量。
通过两个步骤组态扩展的状态报告。第一步,定义状态字的哪些位与评估有关,以及块的集合值是否将被包括在表示中。定义集合值中单个报警的优先级( 0=无效,1=高优先级,6=低优先级)。
运行系统中报告优先级的行为:
如果一个到来的事件被确认,事件将被设置到后台,而无论其优先级如何。尚未确认的低优先级事件优先于已经得到确认的高优先级事件,而被显示。只要有一个高优先级事件被显示为“离去但未被确认”(gone without confirmation),低优先级事件将不被显示。离去事件的显示会受到影响。为此,请打开扩展状态报告的对象属性并在“Properties”属性组中的“Gone status visible”属性上的设置期望的行为。
图 1:PCS 7 V6.0 中扩展状态显示的组态对话框 ( 19 KB ) n
应用举例:
三个不同的应用案例和附在状态列表之后用于组态的伴随值。n
1. 案例:
未选择状态字。仅仅通过诸如报警、警告、错误、公差、扰动等状态信息并使用来自 PCS 7 报警块的伴随变量“EventState”的要求来进行组态。n
状态字 1-4 | 状态信息(优先级) | 索引表中的值 | 状态表中的值 |
没有 选择状态字 |
无(全为 0) | 0 (一切正常) | 0 |
没有 选择状态字 |
报警 = 1 剩余 = 0 |
1-6 置位(1= AH,- 2= AH,+ 3= AH,+Q 4= AL,- 5= AL,+ 6= AL,,+Q |
0 |
没有 选择状态字 |
公差 = 1 剩余 = 0 |
13-18 置位 (13= TH,- 14= TH,+ 15= TH,+Q 16= TL,- 17= TL,+ 18= TL,+Q |
0 |
没有 选择状态字 |
错误 = 1 剩余 = 0 |
22-24 置位(22= F,- 23= F,+ 24= F,+Q |
0 |
没有 选择状态字 |
警告 = 1 剩余 = 0 |
7-12 置位(7= WH,- 8= WH,+ 9= WH,+Q 10= WL,- 11= WL,+ 12= WL,+Q |
0 |
没有 选择状态字 |
扰动 = 1 剩余 = 0 |
19-21 置位(19= S,- 20= S,+ 21= S,+Q |
0 |
没有 选择状态字 |
运行要求 = 1 剩余 = 0 |
25-27 置位(25= OR,- 26= OR,+ 27= OR,+Q |
0 |
扰动的示例(所有其它状态类似):n
- S,- ........扰动消失n
- S,+ ........扰动发生n
- S,+Q .... 扰动发生并被确认
如果在该应用案例中同时选择了所有优先级,则您可以决定将状态 0-27 位于索引表中,通常用于分配基本和闪烁画面。
图 2:选择了所有优先级但不带有状态字的索引/状态表 ( 22 KB ) n
2. 案例:
每次选择一个状态字,带有状态信息的组态始终被完全配置。这意味着优先级域中始终输入不等于 0 但小于 6 的值。也可以分配相同的优先级。在一个状态字之内选择位或者是否选择状态字 1、2、3 或 4 与索引和状态列表的结构无关。n
状态字 1-4 | 状态信息(优先级) | 索引表中的值 | 状态列表中的值 |
选择了状态字 1 未选择其余的状态字 |
全部选择 | 0 - 27 | 0 |
选择了状态字 1 未选择其余的状态字 |
全部选择 | 30 - 57 | 1 |
选择了状态字 2 未选择其余的状态字 |
全部选择 | 0 - 27 | 0 |
选择了状态字 2 未选择其余的状态字 |
全部选择 | 60 - 87 | 2 |
选择了状态字 3 未选择其余的状态字 |
全部选择 | 0 - 27 | 0 |
选择了状态字 3 未选择其余的状态字 |
全部选择 | 120 - 147 | 4 |
选择了状态字 4 未选择其余的状态字 |
全部选择 | 0 - 27 | 0 |
选择了状态字 4 未选择其余的状态字 |
全部选择 | 240 - 267 | 8 |
定义:
状态列表的组成来自于 1 号案例的描述。所有状态信息总是被集成到扩展状态显示中,并带有状态字的相关位用于分配基本和闪烁画面。状态列表中的各个条目来自于所选状态字的十进制表示。n
序列号 | 状态字组合 | 状态列表的值 |
0 | 状态字 1 = 0 状态字 2 = 0 状态字 3 = 0 状态字 4 = 0 |
0 |
1 | 状态字 1 = 1 状态字 2 = 0 状态字 3 = 0 状态字 4 = 0 |
1 |
2 | 状态字 1 = 0 状态字 2 = 1 状态字 3 = 0 状态字 4 = 0 |
2 |
3 | 状态字 1 = 1 状态字 2 = 1 状态字 3 = 0 状态字 4 = 0 |
3 |
4 | 状态字 1 = 0 状态字 2 = 0 状态字 3 = 1 状态字 4 = 0 |
4 |
5 | 状态字 1 = 1 状态字 2 = 0 状态字 3 = 1 状态字 4 = 0 |
5 |
6 | 状态字 1 = 0 状态字 2 = 1 状态字 3 = 1 状态字 4 = 0 |
6 |
7 | 状态字 1 = 1 状态字 2 = 1 状态字 3 = 1 状态字 4 = 0 |
7 |
8 | 状态字 1 = 0 状态字 2 = 0 状态字 3 = 0 状态字 4 = 1 |
8 |
9 | 状态字 1 = 1 状态字 2 = 0 状态字 3 = 0 状态字 4 = 1 |
9 |
10 | 状态字 1 = 0 状态字 2 = 1 状态字 3 = 0 状态字 4 = 1 |
10 |
11 | 状态字 1 = 1 状态字 2 = 1 状态字 3 = 0 状态字 4 = 1 |
11 |
12 | 状态字 1 = 0 状态字 2 = 0 状态字 3 = 1 状态字 4 = 1 |
12 |
13 | 状态字 1 = 1 状态字 2 = 0 状态字 3 = 1 状态字 4 = 1 |
13 |
14 | 状态字 1 = 0 状态字 2 = 1 状态字 3 = 1 状态字 4 = 1 |
14 |
15 | 状态字 1 = 1 状态字 2 = 1 状态字 3 = 1 状态字 4 = 1 |
15 |
状态字的各个值总是被分配到状态列表。这意味着各个组合可能发生的结果总是位于同一位置,可被用于分配基本和闪烁画面。
由于在本例中(2 号案例)仅仅选择了一个状态字,我们仅仅得到了相应位可能等于 0 或 1 的可能性。但是现在通过状态列表的相应值,可以在其它索引号上找到所有带有相同信息的状态信息(索引表 0-27)。对应于 bit = 0 的状态信息始终位于索引 0...27 上(有问题请参阅 1 号案例)。索引表中对应于 bit = 1 的状态信息的位置取决于选择的状态字。它们包含相同的信息,而与选择了哪个状态字无关。只有索引表中的“Start point”(起点)被移动了。
图 3:选择了没有优先级的状态字 1 后的索引/状态表 ( 20 KB )
图 4:选择了没有优先级的状态字 2 后的索引/状态表 ( 20 KB )
3. 案例:
该应用案例解释了多个状态字的使用以及状态信息的使用。由于状态字组合的出现,索引表中的状态信息出现了“起始点”(伴随用于“Value into status list”的表)。如前所述,它们始终包含相同的信息,而无论选择了 哪个状态字或状态字如何组合。
图 5:不使用优先级同时选择了状态字 1 和 2 时的索引/状态表 ( 20 KB )
如果优先级“0”被分配给多个报警的组态,则不存在伴随状态信息。因此索引表中并不列出伴随索引。
举例:
选择状态字 1 和 2 且只有“Alarm”的优先级等于 0
图 6:使用优先级“Alarm”并选择了状态字 1 和 2 时的索引/状态表。 ( 22 KB )
原创文章,作者:ximenziask,如若转载,请注明出处:https://www.zhaoplc.com/plc335464.html