回复:Variant数据类型/Struct数据类型和地址映射

西家讲师

官方工程师

  • 帖子

    3342
  • 精华

    0
  • 被关注

    33

论坛等级:奇侠

注册时间:2018-05-23

普通 普通 如何晋级?

发布于 2018-07-30 09:51:50

1楼

1.Variant类型是一个参数数据类型,只能出现在除FB的静态变量以外的OB/FC/FB接口区。
Variant类型的实参是一个可以指向不同数据类型变量的指针。它可以指向基本数据类型,也可以指向复杂数据类型、UDT等。
调用某个块时,可以将该块的Variant参数连接任何数据类型的变量。除了传递变量的指针外,还会传递变量的类型信息。该块中可以利用Variant的相关指令,将其识别出并进行处理。
Variant指向的实参,可以是符号寻址,也可以是绝对地址寻址,还可以是形如P#DB1.DBX0.0 BYTE 10这种指针形式的寻址。

当Variant类型的实参指向形如P#DB1.DBX0.0 BYTE 10,指令内部将判断该形参为一个10字节的数组。

以上是Variant 数据类型的基本信息。常见的Variant类型处理指令有TypeOf,TypeOfElements,VariantGet,MOVE_BLK_VARIANT。

问:那么可以在此数据类型中处理模拟量数据嘛?最后通过MOVE指令读出,不知道可不可以,想法不是很成熟?

答:不是不可以,但是觉得有点杀鸡用牛刀了,直接处理INT类型的数据就OK了。

2.问:Struct数据类型和地址映射/Struct数据类型中在一段程序中可指定不同的数据类型吗?如果不一样那么PLC又是如何将它映射过来的,很是看不明白?

答:有点没太明白您的问题,跟截图也没对上,您能再详细描述下吗。

ps:S7-1200支持隐式转换,当指令形参与实参数据类型不同时,程序自动转换。具体信息参考教材4.2.7章节。

评论
编辑推荐: 关闭

请填写推广理由:

本版热门话题

S7-1200精英训练营

共有1959条技术帖

相关推荐

热门标签

相关帖子推荐

guzhang

恭喜,你发布的帖子

评为精华帖!

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

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

  • 分享

  • 只看
    楼主

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