关于MCGS的!DataGetInt指令问题请教 点击:196 | 回复:7



DrMai

    
  • 精华:0帖
  • 求助:2帖
  • 帖子:10帖 | 64回
  • 年度积分:16
  • 历史总积分:234
  • 注册:2013年5月30日
发表于:2025-01-01 11:36:34
楼主

企业微信截图_17357021007650.png请教各位大神,使用MCGS嵌入版,现在我这里通过循环脚本获取位状态信号,现在的情况是图中XV001_Stat_bInOrg和XV001_Stat_bPerms这两个的状态读取不到给XV_InOrg_Temp和XV_Perm_Temp,但是XV001_Stat_bInEnd能正常读取到给XV_InEnd_Temp;不通过!DataGetInt这个指令,控件直接关联XV001_Stat_bInOrg,状态是正常的。



楼主最近还看过

t002002

  • 精华:0帖
  • 求助:0帖
  • 帖子:0帖 | 63回
  • 年度积分:0
  • 历史总积分:0
  • 注册:1900年1月01日
发表于:2025-04-13 09:05:04
1楼

谢谢楼主分享

回复本条

    

ozoner

  • 精华:0帖
  • 求助:0帖
  • 帖子:17帖 | 897回
  • 年度积分:3
  • 历史总积分:9112
  • 注册:2017年1月12日
发表于:2025-04-15 15:41:40
2楼

没用到这个函数,找到原因了吗?

回复本条

    

丸子爱玩

  • 精华:0帖
  • 求助:0帖
  • 帖子:4帖 | 83回
  • 年度积分:68
  • 历史总积分:1257
  • 注册:2021年12月30日
发表于:2025-04-17 13:35:23
3楼

这个是那个版本的

回复本条

    

bantouyan

  • 精华:0帖
  • 求助:1帖
  • 帖子:3帖 | 42回
  • 年度积分:29
  • 历史总积分:163
  • 注册:2018年1月01日
发表于:2025-04-18 11:29:08
4楼

!DataGetInt(DatNameValue)  

函数意义: 通过数据对象名读取整数数据对象的值

返 回 值: 整数
= 0,执行成功
<>  0
,执行失败
= 1,类型不匹配
= 3,数据对象不存在

可以根据这个函数的返回值调试一下

回复本条

    

DrMai

  • 精华:0帖
  • 求助:2帖
  • 帖子:12帖 | 64回
  • 年度积分:6
  • 历史总积分:243
  • 注册:2013年5月30日
发表于:2025-06-14 09:45:45
5楼

谢谢各位的回复,问题找到了,是因为昆仑通触摸屏的通讯机制导致的问题,虽然变量在变量表里定义了,触摸屏程序界面中我是通过指令变址的方式进行数据读写的,由于需要读取的寄存器或线圈在当前页面中没有实际使用,所以触摸屏在调用该弹出窗口前未对指向的寄存器及线圈进行读操作,内部仍保留最后一次读取获得的数据,当窗口弹出时,!DataGetInt指令只从本地数据库中获取值,而非产生一次实质的通讯请求。解决方式是在当前页面中将那些计划需要弹窗显示的变量绑定控件,然后把控件放置在界面显示范围外,当打开该页面的会更新当前页面所有控件绑定的变量地址的值,或者通过策略工具周期读取更新不在页面直接显示的变量地址。

回复本条

    

星辰似海丶

  • 精华:0帖
  • 求助:0帖
  • 帖子:2帖 | 226回
  • 年度积分:34
  • 历史总积分:220
  • 注册:2021年3月27日
发表于:2025-06-15 04:00:32
6楼

下载学习一下,感谢楼主分享这么好的资料!

回复本条

    

ozoner

  • 精华:0帖
  • 求助:0帖
  • 帖子:17帖 | 902回
  • 年度积分:30
  • 历史总积分:9139
  • 注册:2017年1月12日
发表于:2025-06-16 05:39:08
7楼

引用 "DrMai" 的回复,发表在5楼
        内容: 谢谢各位的回复,问题找到了,是因为昆仑通触摸屏的通讯机制导致的问题,虽然变量在变量表里定义了,触摸屏程序界面中我是通过指令变址的方式进行数据读写的,由于需要读取的寄存器或线圈在当前页面中没有实际使用,...

谢谢分享!

回复本条

    

热门招聘
相关主题

官方公众号

智造工程师