故事作者:万泉河

最近创作

看看TA的故事

【万泉河】WINCC C脚本变量查找替换,以及关于就事论事

已锁定

万泉河

  • 帖子

    10885
  • 精华

    132
  • 被关注

    892

论坛等级:至圣

注册时间:2003-06-06

钻石 钻石 如何晋级?

【万泉河】WINCC C脚本变量查找替换,以及关于就事论事

4277

6

2021-03-14 09:43:45

【万泉河】WINCC C脚本变量查找替换,以及关于就事论事


昨天, 一个标准化学习营的学员,发个图,问我个问题



问:这个脚本可以根据报警情况改变背景颜色,但是每调用一次就得在脚本里面改变量吗?


你们大家看了问题可能未必一下子看懂头在问什么。


但我立马就懂了。


标准化的学员们,跟我一样,特别注重工作效率,而不是仅仅能实现目的。他这里是借来了别人的一段程序可以用,但想复制多个,如果要逐个进程序里面改变量名字,就累了。


所以来问我。


我想了一下,虽然我知道他要实现什么,跟他解释起来还是很难。所以索性把程序原文字要来,给改了一下,发回给他。


#include "apdefap.h"

 long _main(char* lpszPictureName, char* lpszObjectName, char* lpszPropertyName)

{

// WINCC:TAGNAME_SECTION_START

 #define Tag_H "主减轴温1_H"

 #define Tag_HH "主减轴温1_HH"


// next TagID : 1

// WINCC:TAGNAME_SECTION_END



// WINCC:PICNAME_SECTION_START

// syntax: #define PicNameInAction "PictureName"

// next PicID : 1

// WINCC:PICNAME_SECTION_END



int temp=GetTagBit(Tag_H)+GetTagBit(Tag_HH)*10;


switch( temp){

case 1 : return 64255;  //黄

              break;

case 10 : return 255;  //红

              break;

case 11 : return 255;  //红

              break;

default : return 1677786880;

}



}


然后他就可以用查找替换的方式修改变量了。

这样子:


关于WINCC中变量的查找替换, 以及文本的查找替换, 是一个基本功,不会的同学自己去学习一下,


非常重要,非常重要,非常重要!


这位学员就是因为平素我给他们讲的多,所以上瘾了, 这里没有这个功能,就傻眼了。


在C脚本中被使用过的变量, 要被能WINCC交叉引用查找到,并进行替换,是需要特殊处理的。


所谓的特殊处理,就是你在加入一段新的C脚本时冒出来的那一批注释。那是WINCC的特殊规范,或者说为了应对C脚本环节的缺陷专门设计的。


上面脚本中

// WINCC:TAGNAME_SECTION_START

// WINCC:PICNAME_SECTION_START

的那两段。


这部分知识我在我的上一本专著《西门子WINCC从入门到精通》中P129页详细讲解了此功能,但看来还是有很多人没学习到。



看看, 我又在卖弄推销我的书了。


为啥我说又呢?因为上一篇文章《【万泉河】PLC全局变量M正确使用大法-2》

https://mp.weixin.qq.com/s/zTVVi1YIECjwqg3U1bWfRg


我也同样提到过这本书中的知识点。


然后上一篇文章发出后,就有不少网友追问哪里能买到书。


而已经拥有此书的网友估计都赶紧去翻看原书了。


然而,我想, 一些知识点恐怕在谁的脑子里,就永远在谁的脑子里了。别人要学到,真的很难。那些知识点尽管我曾经写到了书里,然而也只有我一个人记得。别人哪怕是花了钱,买了书, 也认真看了,但一些重要的知识点,未必能发现,未必能get到!


作者总不能在书里到处划重点,这里是知识点,那里也很重要吧?那样,整本书都成了重点,也同样没了重点。


所以,我在想,大家更需要的还是一个开放的,能互相帮助互相提醒的交流平台。


遇到什么小问题, 无关企业技术机密以及核心竞争力的小问题, 一时间自己找不到答案的时候,平台里问一下,然后谁了解,谁就顺便给回答了。


然而,这不能是只盯着一个高手,即所谓的大佬,给人发问题问自己的问题。那样不对等,没人欠你的。


同时,平台也需要有一定的互信度。像楼上这个问题,是曾经交过学费的标准化学员问我,我感情上就比较亲近,就愿意多花一点精力帮他。然而,如果是泛泛而交的网友,恐怕连翻书告诉他在书的第几页的精力都不会舍得投入。搞不好还会被骂趁机卖书。


后面内容比较火爆。 请移步看原文

https://mp.weixin.qq.com/s/CifRWY8osbojuzXs6l8a3A



【万泉河】WINCC C脚本变量查找替换,以及关于就事论事 已锁定
编辑推荐: 关闭

请填写推广理由:

本版热门话题

网友专栏

共有3227条技术帖

相关推荐

热门标签

相关帖子推荐

guzhang

恭喜,你发布的帖子

评为精华帖!

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

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

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