顺序功能表图中,步活动状态的进展按有向连线规定的路线进行。进展由一个或多个转换的实现来完成,并与控制过程的发展相对应。
转换(Transition)表示从一个或多个前级步沿有向连线变换到后级步所依据的控制条件。转换的图形符号是垂直于有向连线的水平线。通过有向连线,转换与有关步的图形符号相连。转换也称为变迁或过渡。每个转换有一个相对应的转换条件。步的进展规则如下:
1)步经过有向连线连接到转换。
2)转换经过有向连线连接到步。
1.使能转换和实现转换
转换分为使能转换和非使能转换两类。如果通过有向连线连接到转换符号的所有前级步都是活动步,该转换称为“使能转换”,否则该转换称为“非使能转换”。
如果转换是使能转换,同时该转换相对应的转换条件满足,则该转换称为“实现转换”或“触发”(Firing)。因此,实现转换需要两个条件:①该转换是使能转换;②相对应的转换条件满足,即转换条件为真。
实现转换产生两个结果:①与该转换相连的所有前级步成为非活动步,即转换的清除;②与该转换相连的所有后级步成为活动步。转换的实现使过程得以进展。
只有当某步的所有前级步都是活动步时,该步才有可能通过转换的实现成为活动步。
2.转换条件
每个转换有相应的转换条件,它是一个单布尔表达式的求值的结果。如果转换条件是真,可表示为符号1或关键字TRUE;反之,如果转换条件为假,则该逻辑变量的值为0或关键字为FALSE。因此,转换条件是一个单布尔表达式求值的结果。
转换条件有多种表示方法。例如,直接将转换条件写在转换符号附近、采用连接符、采用文本声明转换条件或采用转换名等。表4-4列出转换和转换条件的表示方法。
表4-4 转换和转换条件的表示
(续)
①如果支持表4-3的序号1的性能,则也应支持本表序号1、2、3、4、5、6、9、10或11的性能。
②如果支持表4-3的序号2的性能,则也应支持本表序号7、8、12或13的性能。
(1)转换条件直接写在转换附近
转换条件直接写在转换附近时,不同编程语言有下列不同表示方法:
1)ST编程语言表示的转换条件设置在垂直有向连线的附近,它用布尔表达式描述,见表4-4的序号1。
2)LD编程语言表示的转换条件设置在垂直有向连线的附近,它是一个梯形图网络,见表4-4的序号2。
3)用FBD编程语言表示的转换条件设置在垂直有向连线的附近,它是一个FBD网络,见表4-4的序号3。(www.xing528.com)
(2)使用连接符
转换条件可用连接符表示在转换附近,见表4-4的序号4。对LD或FBD的网络,转换条件输出用一个连接符与垂直有向连线相交叉,见表4-4的序号5或6。
(3)采用文本声明
ST和IL编程语言中,用文本声明表示转换条件。
1)用ST编程语言的TRANSITION…END_TRANSITION结构描述转换条件,见表4-4的序号7。转换条件应包括下列内容:
①关键字TRANSITION FROM和其后的前级(Predecessor)步(如果有多于一个的前级步,用前级步的一个括号表,例如,(S_1,S_2)表示两个前级步)的步名。
②关键字TO和其后的后级(successor)步(如果有多于一个的后级步,用后级步的一个括号表)的步名。
③赋值操作符(:=),和其后用ST编程语言表示的一个布尔表达式描述的转换条件。
④终止关键字END_TRANSITION。
2)用IL编程语言的TRANSITION…END_TRANSITION结构描述转换条件,见表4-4的序号8。转换条件应包括下列内容:
①关键字TRANSITION FROM和其后的前级步(如果有多于一个的前级步,用前级步的一个括号表)的步名。
②关键字TO、其后的后级步(如果有多于一个的后级步,用后级步的一个括号表)的步名及冒号(:)。
③从一个单独的行开始,用IL编程语言编制的一个指令表,它的计算结果即在累加器的最终结果确定转换条件。
④用一个独立的行表示的终止关键字END_TRANSITION。
(4)采用转换名
通过有向连线右面的一个标识符形式的转换名,见表4-4的序号9,转换名标识符被列写在TRANSITION…转换名 END_TRANSITION结构中,其求值将导致布尔值赋值到由转换名标记的变量。
1)使用LD编程语言中的网络,见表4-4的序号10。
2)使用FBD编程语言中的网络,见表4-4的序号11。
3)使用IL编程语言中的指令表,见表4-4的序号12。
4)使用ST编程语言中的布尔表达式的赋值,见表4-4的序号13。
转换名的范围对转换所在的程序组织单元是局部变量。注意,列写转换条件时应避免所有冲突的发生。例如,两个使能转换以同一步为条件时,应确保与这两个转换相连的转换条件是不相容的,即不会同时为真。
免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。