start和driver是外部输入输出接口。
例:如果在TEMP接口中新建一个变量A,数据类型为BOOL,地址0.0
1,正确的FC程序如下:
| #start
#A
|--| |---------()
|
| #A
#driver
|--|/|---------()
2,错误的例子:
| #A
#driver
|--|/|---------()
|
| #start
#A
|--| |---------()
分析:
程序的扫描是从上到下。S7 FC中的接口TMEP中的变量必须遵守:先赋值后使用的原则。
1程序,当start的值从0变为1,A也将从0变为1。扫描到第一段程序时,因为A的值已经发生改变,程序将成功扫描到A的常闭触点从1变为0,那么driver线圈将成功得从原来的1改变为0。
2程序,因为扫描到第一段程序的时候CPU没有发现A的值改变。之后A值将一直保持不变,即使start的值从0变为1,A值也不会发生改变;结果是程序没有反应。 下面是大家的一些心得体会
西门子这一点比其他的PLC都灵活,FB的DB作为FB的变量的固定存放地址,而Temp则是有系统分配临时区L地址。比如:存在FC1,FC2两个功能,它们都有两个Temp,那么当调用FC1时,系
例:如果在TEMP接口中新建一个变量A,数据类型为BOOL,地址0.0
1,正确的FC程序如下:
|
|--| |---------()
|
|
|--|/|---------()
2,错误的例子:
|
|--|/|---------()
|
|
|--| |---------()
分析:
程序的扫描是从上到下。S7 FC中的接口TMEP中的变量必须遵守:先赋值后使用的原则。
1程序,当start的值从0变为1,A也将从0变为1。扫描到第一段程序时,因为A的值已经发生改变,程序将成功扫描到A的常闭触点从1变为0,那么driver线圈将成功得从原来的1改变为0。
2程序,因为扫描到第一段程序的时候CPU没有发现A的值改变。之后A值将一直保持不变,即使start的值从0变为1,A值也不会发生改变;结果是程序没有反应。 下面是大家的一些心得体会
西门子这一点比其他的PLC都灵活,FB的DB作为FB的变量的固定存放地址,而Temp则是有系统分配临时区L地址。比如:存在FC1,FC2两个功能,它们都有两个Temp,那么当调用FC1时,系
