关于wincc 趋势,C脚本的问题请教。

问题1:想做历史趋势画面,加了2个控件,随意控制曲线名称,以后可以重复利用的。
 以下是自己参考论坛里的资料的写的,觉得不怎么好,想改进一下:
 请问:1.我手动对曲线的属性修改,如曲线颜色,时间宽度,起始时间等等,其实我想知道这些属性、参数值的写法(最好把常用的属性及其参数值说多点)
       2.麻烦把对下面的代码写法完善一点。现在只是简单的实现功能,如果设置时间什么的,还要到里面设置,比较繁琐。
       3.查归档时,发现无法查询前天的数据,这是为什么啊?是不是我的归档设置里的数据库设置小了啊?我想查询半月或更长的应该怎么设置。

 这是一条曲线的代码
 Sub OnClick(Byval Item)                          
 Dim trendObj1,trendObj2
 Set trendObj1=ScreenItems("Control1")
 Set trendObj2=ScreenItems("Control2")
 trendObj1.Visible = True
 trendObj2.Visible = False

 trendObj1.Caption ="Ractor/Level_PID1.PV_IN"
 trendObj1.TagName ="AS08_server::SystemArchive\Ractor/Level_PID1.PV_IN"

 End Sub

 这是三条曲线的代码
 Sub OnClick(ByVal Item)                        
 Dim trendObj1,trendObj2
 Set trendObj1=ScreenItems("Control1")
 Set trendObj2=ScreenItems("Control2")
 trendObj1.Visible = False
 trendObj2.Visible = True
 trendObj2.Caption ="PID"
 trendObj2.Index = 0
 trendObj2.TagName ="AS08_server::SystemArchive\Ractor/Level_PID1.PV_IN"
 trendObj2.Index = 1
 trendObj2.TagName ="AS08_server::SystemArchive\Ractor/Level_PID1.SP"
 trendObj2.Index = 2
 trendObj2.TagName ="AS08_server::SystemArchive\Ractor/Level_PID1.LMN"
 End Sub

 问题2
 参考:http://www.ad.siemens.com.cn/service/answer/solution.asp?Q_id=26590&cid=1032 我对块的SMC属性修改后(对某一阀门块FB73进行了修改),pcs7编译发现所有的块都不能上传了,编译后出现一警告,意思是对变量作了比较,不一致什么的。后来我恢复原样后,又好了。(有些属性我知道是不能取消的,所以我选了不重要的变量) 请问这是什么原因啊?

 问题3
 请教一段c脚本函数 function(bool a,bool b,bool c),返回真假就可以啦,想在变量的动态对话框中直接调用全局C函数,就是求几个bool量的或值。

问题补充:
dcount107 你好,我在全局库中改了后,复制后拷贝到AS项目块中,发现还是不行,编译后记录中有:
  列出过程标签的参数:
  BA_EN BA_ID BA_NA HYS MO_PVHR MO_PVLR MSG_LOCK M_SUP_AH M_SUP_AL M_SUP_WH M_SUP_WL OCCUPIED OOS QERR QMSG_SUP STEP_NO U U_AH U_AL U_WH U_WL VSTATUS 

  操作员控制连接列表:
  BA_EN BA_ID BA_NA HYS MO_PVHR MO_PVLR MSG_LOCK M_SUP_AH M_SUP_AL M_SUP_WH M_SUP_WL          OOS QERR QMSG_SUP STEP_NO U U_AH U_AL U_WH U_WL VSTATUS 

  *** 出错 ***: 结构化 DM 变量 Ractor/Level_PID1_PV(类型 MEAS_MON)的 参数数量与操作员控制的连接数量不匹配。 是否要显示日志?
  请问这怎么解决?是不是更新的方法不对。顺便问下,全局库中修改了后,怎么更新所有子项目中的块。
 找到了,在blocks/options/charts/update 吧?对所有的AS进行统一的更新。
 

最佳答案

你的问题还真多啊,呵呵。
  问题1:
  1.VBS支持自动列出对象属性的,常用的有Color(曲线颜色,和Index配合使用),BeginTime(起始时间,格式yyyy-mm-dd HH:MM:SS),EndTime(结束时间,格式yyyy-mm-dd HH:MM:SS),这些在帮助中都有。
  2.我印象中VBS做不到动态设置OnlineTrend的时间段。C脚本倒是没有问题。如果你用VBS实现了请别忘了告诉我,^_^!
   SetPropDouble(lpszPictureName,"OnlineTrend1","Online",0); '停止更新
   SetPropDouble(lpszPictureName,"OnlineTrend1","Timerange",0); 
   SetPropChar(lpszPictureName,"OnlineTrend1","BeginTime","2008-9-11 22:10:0"); ’设置起始时间
   SetPropChar(lpszPictureName,"OnlineTrend1","EndTime","2008-9-11 22:11:00");  '设置终止时间
   SetPropDouble(lpszPictureName,"OnlineTrend1","Activate",0);  '
   SetPropDouble(lpszPictureName,"OnlineTrend1","Activate",1);  '更新数据,VBS中的Activate与此意义不同,我想这可能是VBS无法实现的原因吧。

  3.应该是你设置的太小了。到变量记录中,选择归档名称,选择快速归档,查看单个/所有分段的时间段设置。

  问题2:你可能没改好。修改FBxx块应当是在"项目_Lib"中修改,然后统一更新。

  问题3:你要的是这个吗?
  BOOL TestFunc(BOOL a,BOOL b,BOOL c)
  {
   return (a||b||c); 
  }
  其实这个根本用不着编写函数,动态对话框中直接写就可以,'TagA'||'TagB'||'TagC' 。

 补充:修改Lib中的FB_xx后,再拖一个到CFC中,根据系统提示替换现有块,最后完全编译一次。但我没有用过Ractor块,不知道WinCC的面板是否引用了哪些变量,因此我建议你还是不要随意修改的好。

提问者对于答案的评价:
问题基本上搞清楚了。谢谢您。ractor块是西门子的仿真块,培训的时候拷过来的,不是系统带的。

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

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

相关推荐

  • Wincc怎么访问带有密码的Excel

    我已经成功的能用Wincc访问Excel里面的数据了,但现在客户提出要把Excel加上密码,密码功能是只能打开但不能修改Excel里的数据。这样问题就来了,我在用Wincc访问Ex…

    SIMATIC WinCC 2017年11月4日
  • 如何更改保存数据路径

    我厂的工控机突然不好使了(WINCC V6.0),点任何按钮设备都没有反应,经过检查是C盘已经满了,(前两天工控机总是提示虚拟内存不足)好像是保存数据路径在C盘,我该如何…

    SIMATIC WinCC 2019年6月11日
  • pc677 12″如何备份

    现在厂里有十几个PC677,但是不清楚如何备份,究竟能否用wincc备份组态,还是应该用什么系统备份软件直接备份系统,现在有点摸不到头脑,求高手教导,谢谢 最佳答案 建议:1、先对…

    SIMATIC WinCC 2018年1月1日
  • 装在虚拟机中的winCC如何与300PLC通讯

    近期在虚拟机中安装了step7 V5.5  SP4、博途V14、winCC V7.3,在使用时发现设置PG/PC接口时找不到winCC与PL…

    2020年11月1日
  • wincc 无线远程

    请教:由于设备和中控室距离太远,想无线通讯。Wincc 有IE版本的吗?PLC连接DTU无线模块,上位机的WINCC 和PLC无线通讯,有这类模块或者协议吗? …

    SIMATIC WinCC 2017年7月26日
  • wincc7.3 不能安装到已安装tiav16的电脑

    wincc7.3 不能安装到已安装tiav16的电脑 的解决办法?公司不让装虚拟机. 钻石用户推荐最佳答案 最简单,有效,稳定,可行的办法就是换系统,换成win…

    SIMATIC WinCC 2021年7月5日
  • 毕设

    基于%ignore_a_1%的毕业论文 要用到什么软件??? 问题补充:题目是基于wincc的电梯控制系统设计,我的电脑系统是win7的能安装吗?然后学校的设备有s7-1…

    SIMATIC WinCC 2021年7月5日
  • WINCC 输入格式问题

    在STEP7中不用程序转换情况下如何实现以下功能: WINCC输入输出域中,变量是INT型。 比如WINCC中输入100,实际传送到PLC的数据是1000;&n…

    SIMATIC WinCC 2019年6月11日
  • 装上wincc之后怎末不能上网了?

    我的电脑装上wincc之后怎末不能上网了? 那位高工知道应该怎末设置一下啊 问题补充:装过step7还能上网,自从装上wincc之后就不能了,可是我把防火墙上与wincc…

    SIMATIC WinCC 2019年6月11日
  • wincc里的历史趋问题

    我的WINCC工程文件里,历史趋势只能保持7天的历史记录.我想保持两个月的记录应该怎样做. 最佳答案 1.打开变量记录,归档属性里的存储位置选项里的记录编号改一下就可以了。&nbs…

    SIMATIC WinCC 2019年6月11日