请教点关于IFix标签拆点的问题 点击:877 | 回复:3



voodooy91a

    
  • 精华:0帖
  • 求助:1帖
  • 帖子:3帖 | 5回
  • 年度积分:0
  • 历史总积分:58
  • 注册:2011年4月21日
发表于:2011-04-21 16:19:44
楼主

项目中通过OPC和RSLinx来连接PLC

现在有一16位的字(称呼可能不同,也可能是数组),欲对其其中一位进行读写操作,但是不能影响其他位的值

例: 标签名TEST

          I/O地址Server1;Group1;【QZServer】TEST【0】;No Access Path

          类型DR

已经试过D16的 Fix32.FIX.TEST.F_CV【0】来读取,出现Fix32.FIX.TEST.F_CV【1】未定义的情况。直接采用,对Fix32.FIX.TEST.F_CV赋值。不论TEST值为多少Fix32.FIX.TEST.F_CV【0】与Fix32.FIX.TEST.F_CV【1】值相同,且Fix32.FIX.TEST.F_CV赋值为3,  读取的数字却为1.

试过对Fix32.FIX.TEST.F_1的方法进行对位操作 结果是PLC中读取的是直接给TEST【0】赋值,切用数据链接戳读取的Fix32.FIX.TEST.F_N(N为位数),每个都是相同

请教各位前辈,到底应该如何做才能达到我的需求呢




王勇hao

  • 精华:0帖
  • 求助:0帖
  • 帖子:2帖 | 5回
  • 年度积分:0
  • 历史总积分:31
  • 注册:2004年8月22日
发表于:2011-04-25 22:41:05
1楼
xiexie 111111

青青子衿

  • 精华:0帖
  • 求助:0帖
  • 帖子:1帖 | 323回
  • 年度积分:0
  • 历史总积分:6487
  • 注册:2004年11月01日
发表于:2011-04-28 12:19:17
2楼
没看懂。

voodooy91a

  • 精华:0帖
  • 求助:1帖
  • 帖子:3帖 | 5回
  • 年度积分:0
  • 历史总积分:58
  • 注册:2011年4月21日
发表于:2011-05-03 08:50:27
3楼
额。。。好吧

简单的来说就是如何来拆点。试过网上说的以下方法

例如:使用SIM驱动器,建立一个AO块地址是0,低限是0,高限是65535。再建立一个DR块地址是0:0。AO块的值设为45(二进制值为101101)。DR块的当前值会显示1,在画面中建立6个数据连接动画,分别用F_0、F_1、F_2、F_3、F_4、F_5,运行画面,会分别显示1、0、1、1、0、1,拆位成功

但是没成功。我DR块的地址设置为Server1;Group1;[QZServer]TEST[0];No Access Path

TEST[0]是一个16位的量

想在不影响其他位的情况下对单独某一位进行读写,可以做到么?

热门招聘
相关主题

官方公众号

智造工程师