step7 在调用和参数化 SFB、SFC 和 IEC 标准功能时的一些技巧和提示-PLC技术网(www.plcjs.com)-可编程控制器技术门户


step7 在调用和参数化 SFB、SFC 和 IEC 标准功能时的一些技巧和提示

 (点击题目可以在互联网中搜索该题目的相关内容)
日期:2007-8-2 21:03:16     来源:   作者: 点击:
点击【 大  中  小 】,可以选择字体的大小,以便你阅读.
  1、如何设置 IEC 标准功能 FC11(FIND)的输入参数 “IN1”和“IN2”? 
所设置的字符串“IN2”一定不能与字符串“IN1”相同。如果两个字符串一致,使用块 FC11 (FIND) 依然报告“0”。对于检查是否相等应使用 FC10 (EQ_STRNG) 或两者一起使用。
2、当设置 SFC14/15  ANY 类型的“RECODE”参数指向 ARRAY 或 STRUCT 数据区时应注意什么?
STEP 7 总是以字(WORD)在内存中来存储 ARRAY 和 STRUCT 类型的数据。一个奇数字节长度 的数组(例如 ARRAY [1..5])会多加一个字节来填满,所以使用 ANY 指针会传送一个错误的长度。这会导致如下错误信息: 
80B1:“The length of the specified target area is not equal to the length of the user data configured with STEP 7”
ANY 指针的长度必须指定为字节,例如 :“P#M280.0 BYTE 5”。
3、为什么 SFC 20 返回值“ RET_VAL”根据所使用的 CPU 的不同而不同?
当分配了一个长度为“0”的不许可的 ANY 类型的指针,对于 S7 300 和 S7 400 返回值有所不同,SFC20 不同的返回值是由于 CPU 对错误处理的方式不同。
4、为什么尽管字符串变量在允许范围内但 IEC 功能 FC 38 返回值仍为“0”? 
如果 IEC 功能 FC 38 的字符串变量所赋值的参数是在 DB 中定义的并没有初值,那么实际长度将为“0”个字节。变量并未在 DB 中初始化。这意味着变量带有“ 已定义”长度的信息,但没有任何实际长度信息。现在,如果在变量表中输入一个与实际字节长度不符的字符串,此字符串 CPU 将不识别。只有与实际长度相符的字符串才会被 CPU 识别。 
 
上一篇: Step7 v5.3安装步骤
下一: s7-300的编程问题