数据格式

PLC中定义个FC,共31个二进制点,对应地址:M120~M123.6(双字差一位M123.7),再在WinCC中定义个无符号的32位数:地址MD120,连接画面上的IO域,在PLC端强制各点M120~M123.6断,Wincc中IO域显示值为:128(这个32位数的第8位,好像是M123.7,可未在PLC中定义),请问这是怎么回事?在PLC依次强制各个点位,相应IO域中的值都增加128,例如第17位值为65664,请问我这段脚本对吗:
 #include "apdefap.h"
 int gscAction( void )
 {unsigned int y;
   y=GetTagDWord("mixer1" );
 if ( (y&65664)==65664)             
  SetTagBit"run9706",1);                            
 else  SetTagBit("run9706",0);
 是&65665还是&65536呢?

问题补充:
请教dcount 107,如果我不在变量表里对M123.7复位的话,那么我这样判断位对吗? DWORD y;
    y=GetTagDWord("mixer1" );
    if ((y&0x1000)==0x10000)
    SetTagBit"run9706",1);                            
  else  SetTagBit("run9706",0);
 

最佳答案

1.MD120初始值如为128,则M123.7值肯定是1,你可以到PLC中监控确认一下。检查有没有程序给M123.7赋过值,如没有可用变量表将M123.7复位。
  2.C脚本判断位的方法:X&2^n ,第17位n=16,因此应当与2^16与才对,即65536,65536不直观,可用16进制表示法0x10000。
     DWORD y;
     y=GetTagDWord("mixer1" );
     if ((y&0x1000)==0x10000)
     SetTagBit"run9706",1);                            
   else  SetTagBit("run9706",0);

 补充:当然可以,你可以用内部变量测试一下!
 

提问者对于答案的评价:
谢谢

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

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

相关推荐

  • wincc脚本格式

    为什么这个格式会报错?改怎么写才不会报错? 图片说明:    最佳答案 以第一段为例你的意思是当变量“湿电冲洗阀”是真的时候,湿电运行等于0吗?如果是的话当前选…

    2021年7月5日
  • wincc 背景模板

    wincc 有没有背景模板,用来给每个页面的共同部分调用的?如果没有背景模板的话,每个页面都要新作一个即时报警窗口,会不会影响wincc的运行性能 最佳答案 wincc不…

    SIMATIC WinCC 2019年6月11日
  • wincc文本库写保护问题

    wincc打开运行都正常,但是在打开文本库时会显示:“该编辑器已在另一台计算机上启动,您无法修改任何数据。”之前一直都是可以编辑的,不知什么原因。首先这台计算机没有连接任何网络。还…

    2017年6月24日
  • wincc 7.3.跟仿真器连接不上!

    s7 v5.5程序仿真可以监控了,但是wincc跟仿真器没通讯? 问题补充:tcp/ip都有了 图片说明:       &nbsp…

    2017年6月3日
  • 如何在WINCC中保存数据

    我想在WINCC 中设定电机转速警告点,比如设定为500转,如何将其永久记录在WINCC中,直到使用都更改为止。 最佳答案 这个你只要对应PLC里面的一个DB块里面的地址…

    SIMATIC WinCC 2019年6月11日
  • WINCC 7.0 安装不上 SQL Sever Database Srvices 错误!

    SQL Sever Database Srvices 错误!弹出:不能安装下列程序:N:\InstData\SQLStandard\Setu…

    SIMATIC WinCC 2017年11月18日
  • WinCC flexible SMART V3不能下载

    WinCC flexible SMART V3打开程序字体变大了,电脑跟屏连上了,不能下载程序到屏里 图片说明:    &nbsp…

    2021年7月5日
  • 服务器安装WINCC7.5 SP1,如何搭建冗余

    客户端访问两台服务器,要实现服务器冗余,如何实现,希望有搭建系统的指导文件。 最佳答案 参考这个链接 参考资料:http://www.ad.siemens.com.cn/produ…

    SIMATIC WinCC 2021年7月5日
  • WICC里模拟量报警颜色变化

    现在自己在做一个项目,对于Wicc里C语言变成这块还是比较陌生。现在业主要求我们在Wicc里的模拟量显示框里(也就是WICC的输出域)里做出当上限报警,上上限报警,下限,下下限报警…

    2017年11月25日
  • wincc组态画面上清零画面激活后无法清零

    wincc图形编辑下有一个:ZERO.PDL画面,画面激活后点击落清零按钮,显示:insufficient permission.请问如何处理? 最佳答案 你需要先登录后…

    SIMATIC WinCC 2017年11月13日