水电电工知识
西门子PLC变量类型自动转换小技巧
2024-10-10  浏览:27
 西门子PLC,S7-200系列内存格式与我们常用PC机正好相反,它是高字前,低字后。我们可以将字变量放后两个字节,程序初始化时将前两个字节清零(程序其它方不使用这两个字节)。
  如我们定义符号时将字变量定义VW2,同时保持VW0值为零。则程序中可以用VW2以字型访问该变量,同时也可以VD0以双字型访问,避免了类型转换。
  避免使用时混淆,最好以明确符号定义来区分字类型和双字类型。此强烈推荐类匈牙利命名法:以前缀指示变量类型,用首字母大写有意义英文单词组合作变量名。本人习惯下缀:
  b----字节型变量(byte)
  w----字型变量(word)
  d----双字变量(double)
  r----实型变量(real)
  f----位变量(flag) btn---自复位按钮式输入(button)
  sw----切换开关或自锁按钮输入(switch)
  sig---传感器、编码等电平信号输入(signal)
  rly---输出继电器位(relay)
  ……
  当然,这个个人习惯来,没有定则,主利于自己区分。
  有一个字类型变量名为VarName,为使用前面转换技巧,我们可以这样定义:
  wVarName----VW2
  dVarName----VD0
  程序初始化时将VW0清零是不需要记忆变量,直接将dVarName清零也可)数据块中将VW0设置为零。则以后需要以字类型访问变量时就用wVarName,需要以双字类型访问变量时就用dVarName。完全不需要类型转换。
  本方法可以极大减少程序语句数,使程序更简洁、可读性更好,不需要做耗时类型转换,程序运行效率也到提高。且数学运算量越大,效率提高越明显。
  缺点是要多占用两字节内存,以后程序中不能使用VW0。但西门子S7-200系列RAM空间很大,一般是用不完,以西门子PLC,CPU226为例,有多达10KRAM,本人从来没有超过1K。这些RAM都是花钱买来,不用白不用,不用也是浪费了。
  同理,有字节型变量经常需要与字类型变量相互转换,让字节变量占用一个字内存宽度浪费一个字节,避免类型转换。
更多»您可能感兴趣的文章:
更多»有关 水电 电工维修 的产品:
  • 水电电工资讯
  • 发表评论 | 0评
  • 评论登陆
  • 移动社区 陶瓷头条 空调头条 卫浴头条 洁具头条 油漆头条 涂料头条 地板头条 吊顶头条 衣柜头条 家居头条 老姚之家 灯饰之家 电气之家 全景头条 陶瓷之家 照明之家 防水之家 防盗之家 博一建材 卫浴之家 区快洞察 建材 深圳建材 香港建材 佛山建材 广州建材 东莞建材 惠州建材 南宁建材 崇左建材 来宾建材 河池建材 贺州建材 百色建材 玉林建材 贵港建材 钦州建材 防城港建材 北海建材 梧州建材 桂林建材 柳州建材
    (c)2015-2017 BO-YI.COM SYSTEM All Rights Reserved