回复:西门子S7-200的PLC内部寄存器地址是如何分配的,如何判断进来的信号的类型,是字还是字节,或者是整数、双整数、浮点数?

yanxiao

版主

  • 帖子

    12145
  • 精华

    46
  • 被关注

    183

论坛等级:至圣

注册时间:2003-06-06

钻石 钻石 如何晋级?

发布于 2017-02-05 23:49:15

11楼

 S7200的程序,系统不作变量类型检查。

此话怎讲呢?

象C语言,编译系统默认是作变量类型检查的。如果你定义一个int(整形)变量,想把它当成一个中文字符,虽然编码都是16位长,但C编译系统是不允许这样直接操作的,你要费些文字,显式告诉编译系统,这样做是你的意图,不是错误(如键入错误)。

但是S7200的系统程序,却不做这种类型检查,你存一个整数到一个16位的变量中,稍后把它当作一个中文字符使用,完全没有问题,不用作任何说明。也就是说,你可把AIW模拟量读进来,当作一个中文字符送去显示,可能这个中文字是个乱码,但这是一个合法的操作。


所以,在S7200,定义,或者存入一个特定的变量类型值到一个存贮器,和从该存贮器取出使用时所需的变量类型,两者是否相匹配,是由编程者来决定和保证,不是PLC系统。


这个变量类型的自由度,你可以参照C语言的 union 类型,有点相似性。

评论
编辑推荐: 关闭

请填写推广理由:

本版热门话题

SIMATIC S7-200

共有33257条技术帖

相关推荐

热门标签

相关帖子推荐

guzhang

恭喜,你发布的帖子

评为精华帖!

快扫描右侧二维码晒一晒吧!

再发帖或跟帖交流2条,就能晋升VIP啦!开启更多专属权限!

  • 分享

  • 只看
    楼主

top
您收到0封站内信:
×
×
信息提示
很抱歉!您所访问的页面不存在,或网址发生了变化,请稍后再试。