关于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日 下午12:05
下一篇 2019年6月11日 下午12:06

相关推荐

  • sp3下安装wincc 6.2

    我在xp sp3下安装wincc 6.2老出问题,请问是怎么回事?请高人详细介绍一下安装过程,谢谢! 最佳答案 确实是与系统兼容的问题,不过论坛有朋友做了个re…

    SIMATIC WinCC 2019年6月11日
  • 如何把报警条目删除?

    以前别人做的项目,因工艺改变了,有些报警就不需要了,但是不想更改程序,我是否可以在报警记录里直接把相应的报警行删除就行了?这样当有不需要的报警来到时我的蜂鸣器就不响了?还用动别的吗…

    2019年6月11日
  • WINCC安装程序

    那位有WINCC6.2中文版安装程序,麻烦给我发下,谢谢了。我是名初学者。邮箱是:huangyeluo003@163.com 最佳答案 WINCC6.2的安装程序大小差不多1G,&…

    SIMATIC WinCC 2019年6月11日
  • wincc脚本触发

    wincc激活运行系统时触发一次脚本,怎么弄? 问题补充:wincc激活运行系统时触发一次,不是通过其他方式触发,就是激活了运行系统会有相关的变量或者系统变量作为标志吗?就像200…

    SIMATIC WinCC 2021年7月5日
  • WINCC 用户登录界面有时候为什么会显示英文,有时间英文??

    WINCC 用户登录界面有时候为什么会显示英文,有时间英文??WINCC 用户登录界面有时候为什么会显示英文,有时间英文??WINCC 用户登录界面有…

    2020年11月1日
  • WinCC_flexible_SMART_V3SP1 无法安装的问题

    在win10系统中安装,总是弹出重启windos,请问这个怎么解决,系统是新装的。 问题补充:最新版本SP1是支持WIN10系统的。 图片说明:    &nbs…

    2021年7月5日
  • 请问这个DB块里面变量的属性是什么作用呢?

    wincc在访问有属性和无属性的变量时有区别吗?而且这个变量是直接用step7导过来的吗请问?图3是wincc所有变量的截图,下面是我自己新建的变量,图4是原先工程带的变量;是因为…

    2020年11月1日
  • 触摸屏如何设置使操作时需要确认?

    用户有个要求,触摸屏操作的时候需要确认一遍,例如点击屏幕某个按钮,或更改数据,需要确认才生效。本人菜鸟,不知道如何实现? 问题补充:品牌肯定是西门子的了,型号不一定,主要是触摸屏,…

    SIMATIC WinCC 2019年6月10日
  • wincc冗余服务器之间非要用串口电缆连接吗?如果可以用网线应该怎么设置

    wincc冗余服务器之间非要用串口电缆连接吗?如果可以用网线应该怎么设置 最佳答案 你的冗余服务器肯定要和客户端连接它们的连接应该是通过以太网,那么服务器就可以通过以太网来连接,硬…

    SIMATIC WinCC 2019年6月11日
  • WINCC 无法屏蔽系统热键

    在WINCC的参数设置中禁止了系统热键,但不起作用,系统键还可以照常使用。而且是有的机器起作用,有的不起作用。不知道有没有朋友碰到过类似的情况,如何解决?谢谢了! 最佳答案 是的,…

    SIMATIC WinCC 2019年6月11日