200局部变量

各位高工:
       s7-200cpu226 cn的每个局部变量的字节数是多少?我已用2个字节(L0.0-L1.7)后面的就写不进去,不知为何?还有编局部程序的时候老是出现错误代码52。请您们指教。

最佳答案

不至于吧?可能是系统块的设置有问题。
 请参考:
 在S7-200的子程序中使用局部变量类型 OUT 和 TEMP 时需要注意什么?
 说明: 

 S7-200有一类用作临时存储或传递形参的局部存储器。 

 局部存储器: 

 给主程序分配64字节局部存储器 
 给共8级的每一级子程序嵌套分配64字节局部存储器 
 给中断服务程序分配64字节局部存储器
 注意: 

 如果使用 LAD 或 FBD 编程,局部存储器的最后四个字节为 STEP 7 Micro/WIN 保留。 

 如果在 STEP 7 Micro/WIN 中的同一级嵌套里调用多个子程序,那么这些子程序使用相同的局部存储器。 

 当使用变量类型 OUT 和 TEMP 时,这些局部地址从相同嵌套级别的前一子程序取值。 

 预先定义的局部变量会生成正确的结果。如果不预先定义,相同嵌套级别的上一次被调用的子程序中的值会被保持。这样会导致问题,特别是在边沿信号检测时。 

 原因: 

 当子程序被调用时,局部数据类型 IN 和 TEMP 不被初始化和删除。 

 但是,局部数据类型 IN 和 IN_OUT 在子程序开始调用时被定义为分配的值或全局变量。 

 措施: 

 将局部输出变量定义为 "IN/OUT" ,而不是 "OUT" 或 "TEMP" 可以增加可靠性。在下一个循环选择全局变量做进一步测试。 

 为了评估这种行为,可以在开发程序时在每一嵌套级别的网络1中调用子程序。 

 通过检查程序功能,可以快速发现选错的变量类型。 

 下载: 

 下面的项目“Local_data”是本主题的 STEP 7 Micro/WIN 例子程序。 

 项目说明了当其它子程序在同一嵌套层定义相同本地存储区时选择“OUT”或“IN_OUT”作为子程序的输出参数的变量类型的区别。 

 Local_data.zip ( 2 KB ) 

 说明: 

 更多关于局部存储器和子程序使用方面的信息请参阅 S7-200 系统手册(条目号: 1109582)。 

  
  
  条目号:7116338     日期:2009-04-09   
  
  http://support.automation.siemens.com/CN/llisapi.dll?func=cslib.csinfo&lang=zh&siteid=cseus&objid=7116338
  
  
  
 

提问者对于答案的评价:
谢谢您

原创文章,作者:ximenziask,如若转载,请注明出处:https://www.zhaoplc.com/plc350309.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2021年7月5日
下一篇 2021年7月5日

相关推荐

发表回复

登录后才能评论