通过WinCC运行系统给Step7里的变量赋值失败

在WinCC的图形界面放入一个输入/输出域,连接内部变量QCwp_HI_1,类型浮点数32位。
同一画面内放入一个按钮写入C动作:
#include "apdefap.h"
void OnLButtonDown(char* lpszPictureName, char* lpszObjectName, char* lpszPropertyName, UINT nFlags, int x, int y)
{
SetTagDWord("QCwp_HI",GetTagDWord("QCwp_HI_1"));
}
//QCwp_HI是外部变量,类型浮点数32位,地址MD0。

在Step7里,我确定以及肯定只有这一条语句中有用到MD0。
    A     M    200.0
    =     L      0.0
    BLD   103
    CALL  "SCALE"                FC105        --数值转换
     IN     :=PIW432
     HI_LIM :="QCwp_HI"          MD0          --前池液位上限
     LO_LIM :="QCwp_LO"          MD10         --前池液位下限
     BIPOLAR:=L0.0
     RET_VAL:="QCwp_IN1"         MW4
     OUT    :="QCwp_OUT4"        MD20         --前池实际液位
    A     BR
    R     M    200.0

打开仿真器,下载到PLCsim,PLC点选RUN。
打开OS站,WinCC激活,用诊断工具看到连接正常。

在WinCC运行界面,输入/输出域输入11.8按下回车,输入/输出域固定在11.8。
点击按钮,Step7的变量监控窗口,MD0闪了一下又恢复为0.0,点击一次闪一次。

网上找了很多,说是PLC程序也在控制MD0。但我找不到问题所在,被困扰多时。

希望各位大大帮帮忙,我想要输入/输出域输入回车并固定在一个值,同时MD0也固定在这个值。
如何解决?跪求答案。

问题补充:
谢谢  满  大工程师的指点,问题解决了。
  
  我想进一步学习一下,MB0,M0.0,MW0,MD0之间是什么关系?
举个例子,分析一下。十分感谢

最佳答案

1、你用交叉引用在STEP7中查一下MD0是不是在别的地方掉用了。比如:M0.0,MB0,MW0都不能用在别的地方。
2、脚本没有语法错误,但浮点数的赋值应该为:
SetTagFloat("QCwp_HI",GetTagFloat("QCwp_HI_1"));
3.、程序没问题,你在仔细查一查吧。

提问者对于答案的评价:
其他地方我确实用了M0.0,MW0。
  谢谢解惑。膜拜

原创文章,作者:more0621,如若转载,请注明出处:https://www.zhaoplc.com/plc268439.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2019年6月11日 上午6:01
下一篇 2019年6月11日 上午6:02

相关推荐

  • WINCC 变量累加

    各位大哥,我想知道我的水系统里总的流量是多少(比如一个月用了多少水),在WINCC里怎么做流量累加呀,我只是采集了瞬时流量 问题补充:能给个实例吗?我对编脚本很头疼的,我邮箱lov…

    SIMATIC WinCC 2019年6月11日
  • WCC报警滞后怎么回事啊

    各位师傅:我在wcc视窗控制上做了一些报警,但是从外界触发这个报警时,wcc上跳出报警条目时有点慢,但是之前老外做的只要一触发就会跳出相应的报警说明,但我自己做的好像延迟一点!怎么…

    SIMATIC WinCC 2019年6月11日
  • PC&PG接口

    我的电脑装了STEP7  5.3 SP3 和WINCC 6.0 SP3 机器要和PLC通信,WINCC需要设置…

    SIMATIC WinCC 2019年6月11日
  • wincc和S7-200smart夸网段通讯

    工厂有多段10.164.54.x到10.164.56.x网络。plc在这些网络上分部,1#车间两plc地址192.168.1.10和192.168.1.11及相应触摸屏12.13,…

    SIMATIC WinCC 2021年7月5日
  • 按钮事件中按左键和释放左键直接连接变量分别置1和置0,但是为释放左键后变量不置0?保证鼠标没有问题。

    Wincc6.2 按钮事件中按左键和释放左键直接连接变量分别置1和置0,但是为何释放左键后变量不置0?我保证鼠标没有问题。 最佳答案 不知道你是怎么知道变量没变的如果你是…

    SIMATIC WinCC 2019年6月11日
  • wincc用户登录的函数在哪里

    wincc用户登录的函数,知道函数的内容。但是从哪里找到它?内部函数,还是标准函数里面? 问题补充:2楼是没用的话 最佳答案 是ODK函数,wincc 帮助里也没有相关说…

    SIMATIC WinCC 2018年3月6日
  • S7集成WINCC的问题

    在做一个项目时,把WINCC集成在了S7下面,软件版本分别是STEP75.3SP2WINCC6.0SP3,集成后把WINC的项目直接插入在S7项目的下面,而没有建立PC站再插入,请…

    SIMATIC WinCC 2019年6月11日
  • wincc运行界面的数据存储

    wincc运行界面上有许多变量(内部和外部),这些变量的当前值如何存储?能存多少?以便下次开机时使用?谢谢! 最佳答案 外部变量与PLC有关,可以放在DB块中以保存。 &…

    SIMATIC WinCC 2019年6月11日
  • 以下代码错在哪里!!!

    用多个WINCC变量写入数据库不成功 求助各位高手,本人在WINCC下建立两个内部变量A1,A2,然后想把这两个变量的值写入ACCESS数据库(用ODBC建好关系),但是…

    SIMATIC WinCC 2019年6月11日
  • 数据存储

    Wincc中数据存储第一步是保存数据,第二步读取数据,我在网上看到一个例程,http://www.ad.siemens.com.cn/club/bbs/post.asp?b_id=…

    SIMATIC WinCC 2019年6月11日