WINCC的40个经典问题解答
- 格式:pdf
- 大小:268.36 KB
- 文档页数:15
1、Wincc online trend控件实现多条曲线查询项目要求,查询任意时段内的两条曲线的历史数据1、首先在变量记录中设置需要记录的变量,如果需要在一个控件内显示两条曲线,做数据归档时,归档属性最好是一致的,归档属性不一样是否会出现问题,这个没测试,有兴趣的可以测试一下。
2、数据记录设置OK后,新建画面插入online trend控件,我的项目需要把趋势打印出来,所以把控件的工具栏全部隐藏。
3、双击online trend控件,添加需要显示的归档变量。
选择公共X,Y轴等参数。
坐标显示根据自己使用选择,基本上不用设置太多参数。
4、添加需要显示的历史归档变量后,就需要写脚本了,西门子工控网论坛有实例,实例提示针对于一条曲线时使用,咨询西门子技术支持,如果需要同时显示两条曲线时,需要对两条曲线分别进行设置属性“控件.index=0,1”,但是测试其实只设置index=0的起始及结束时间就OK,就是论坛给的实例不是只针对于一条曲线,两条曲线时同样适用,再多的曲线就没测试了。
5、西门子默认的时间格式为“MM-DD-YYYY HH-MM-SS”格式,所以在设置趋势起始及结束时间时需要注意。
6、注:导入归档数据需要一定的时间,建议按钮触发。
尝试在画面打开时触发脚本,有的时候会出现历史数据加载不上来。
7、脚本如下,仅供参考Dim objConnectionDim strConnectionStringDim strSQLDim objrsDim chaxun'定义曲线控件Dim TRENDDim strval_1Dim strval_2Dim strval_t1Dim strval_t2'初始化程序,省略N行。
'初始化程序,省略N行。
chaxun=HMIRuntime.Tags("管号查询输入").Read strConnectionString = "Provider=MSDASQL;DSN=REPORT;UID=;PWD=;" strSQL = "select * from report where guanhao='"&chaxun&"';"Set objConnection = CreateObject("ADODB.Connection") objConnection.ConnectionString = strConnectionString objConnection.OpenSet objrs = CreateObject("ADODB.RecordSet")objrs.open strSQL,objConnection/赋值程序,省略,,,,,,,,,,,,,,,,,,,,,,//赋值程序,省略,,,,,,,,,,,,,,,,,,,,,,/objrs.closeSet objrs = NothingobjConnection.CloseSet objConnection = Nothing'趋势时间设定Set trend = ScreenItems("控件1")strval_r=HMIRuntime.Tags("测试日期_read").Readstrval_t1=HMIRuntime.Tags("开始时间_read").Readstrval_t2=HMIRuntime.Tags("测试时间_read").Readstrval_1=strval_r+" "+strval_t1strval_2=strval_r+" "+strval_t2trend.Index=0trend.Online=Falsetrend.TimeRange=Falsetrend.BeginTime=strval_1trend.EndTime=strval_2mand="Reload"实际效果如下:2、Wincc ODBC连接ACCESS数据库,MshflexGird控件显示数据1、wincc自带安装SQL数据库,连接不上,退而求其次只能使用ACCESS数据库了,好多人说ODBC方法过时了,但是对于我们这些对数据查询量较小,查询频率较低的高级语言初学者来说,该方法还是比较实用。
1、WINCC在进入某一画面时出现Unhandled exception was raised.Lookfile"c:\program Files\semens\w incc\Diagnose\PDLRTSEH.LOG"for details.出现这种情况前只是删除了该画面的一个矩形图。
--------------------------------------------------------------简单的矩形图删除不会有这个问题的,打开记事本看看进一步的错误信息,有什么错误代码.才能进一步找到错误原因.2、在停电之后5611网卡通讯不上,硬件图标上有黄色的叹号,点测试显示“错误0x0382:未找到内部驱动程序信息(L2)”--------------------------------------------------------黄色的叹号或者感叹号说明没有给CP5611驱动,请手动查阅目录C:\WINDOWS\INF或者C:\WINNT\INF,驱动的信息(OEM**.INF)会在这些目录中,卸载CP5611重新安装即可.CP5611完全卸载方法步骤:1.设备管理器卸载.2.打开注册表WINDOWS START MENU->RUN->"REGEDIT",删除下面路径中的所有的条目:HKEY_LOCAL_MACHINE\SOFTWARE\SIEMENS\SINEC\LOGDEVIES.3.重新启动计算机,再次安装5611驱动.WINCC组态服务器不可用,是否打开项目,将本地计算机作为服务器2011-11-21 15:07:56| 分类:iphone | 标签:|字号大中小订阅/leishuang2005/blog/item/e6ce8c47654a2a046b63e50e.html我从别人那考了一个WINCC例子看可是为什么一打开就是显示“组态服务器不可用,是否打开项目,将本地计算机作为服务器”我点了启动本地服务器为什么总是错误,望高人指点问题在于你直接拷贝人家已经在使用的项目文件夹,哪个文件夹是共享的,特别是人家正在运行的项目,这样的项目文件直接复制过来是不能用的,会缺少文件.正确的复制方法:1)关闭正在运行的WINCC项目,可以在WINCC浏览器里关闭,也可以在开始彩单->运行->输入CMD ->在里面窗体输入命令RESET WINCC来强制关闭WINCC及相关文件.2)取消项目文件夹的共享标记.然后复制项目文件夹(当然项目中也可能调用其它可执行文件,这些你需要向设计方了解),也可以是WINCC安装路径里面的项目复制器复制项目到指定计算机.只有用这样的方法复制的项目文件才能保证WINCC功能部分软件是完整可用的(WINCC内部直接调用可执行文件的执行的功能除外).你如果是拷贝的整个项目的话,你需要启动本地服务器,然后更改项目里面的计算机名字为你的本机名字,然后关闭wincc再重新打开wincc。
wincc v7.0问题
win7系统中安装了winccv7.0sp3,打开项目显示cannotopenwinccproject--projectmanagerforconfiguredwinccser verisnotalreadyrunning--startprojctmanagerforconfiguredserver.
图片说明:1,wincc 错误提示
最佳答案
项目可能是从别的计算机中考贝过来的。
这样项目中的计算机名与上所使用的计算机名不同。
导致项目在打开后无法运行。
具体解决办法:右击桌面上我的电脑图-----属性-----机算机名,在机算机名中记下机算机名称。
然后再在wincc中修改计算机名:右击winccexplorer项目中的计算机图标-----属性----机算机名。
在机算机列表中,将原先记下的机算机名替换现有的机算机名称----确定,关闭wincc,再重新打wincc即可。
WinCC实用问题问答1、wincc Online Table control 监测的数值有中间划横线、有后面是u的是什么意思?确保WinCC运行正常和通讯没有故障的情况下,出现这种现象的原因:1、归档变量的归档时间点不同;2、归档变量在wincc 在线表格控件中显示时,使用了公共的时间列。
解决方法:1、将要在wincc 在线表格控件中的归档变量的归档周期系数设置成相同、归档/显示周期设置也设置成相同。
2、指定定时器(归档/显示周期所使用的定时器)的循环起始点(如都指定为 0)。
3、取消激活项目,再重新激活项目。
2、两个WINCC和一个PLC通信还是各控制各的如果是前者的话用一个交换机就可以了具体的你可以参考西门子工业网络通讯指南这本书很全面的3、wincc运行时间久了,速度变慢是很正常的。
做一下处理很有必要删除历史数据感觉影响不大,关键是删除归档数据。
先做个备份,然后再删除。
另外,你要注意,有没有配方等数据存在数据库里,如果没有,可以放心删除,如果有,一定要仔细点。
还有,项目的文件,不要放在c盘,否则,系统会更快变慢4、我在笔记本上运行WInCC项目,可以正常运行,可以完成一些组态开发功能,下面提示栏显示变量305/许可证1024,但是我想要激活项目时,进度条第一条显示45%,第二条显示0,不再运行,而且没有任何提示,是什么原因呢?检查:a.项目路径是否有中文名;b.错误的脚本;b.否安装了STEP7,且版本有冲突;c.安装了中文版杀毒软件及防火墙(尤其是瑞星和金山毒霸),建议将你的杀毒软件卸掉;d.更改或删除了项目文件夹内的文件;计算机名、项目存放的完整路径中不能有中文5、用按钮执行settag脚本只能实现一次绑定,当执行之后外部变量如果变化,中间变量就不变化了,怎么样才能实现始终绑定在全局脚本中使用周期脚本比如两秒一个周期,脚本内容:SetTagFLoat("内部变量",GetTagFLoat("外部变量"));6、我用的是内部变量,想用变量模拟器来模拟液位的变化,前几步做完后,到最后一步start simulation是灰色的,为什么?变量模拟器需要在wincc运行时使用,先激活项目,然后开始菜单->SIMATIC->WinCC->Tools->WinCC Tag Simulator ,打开之后edit----->new tag----->选择你需要的变量properties---->选择变量发生类型,有线性的、随机的、布尔型的等。
WinCC部分笔试考题:1、生成一个新的项目的时候,该项目默认的路径是。
该项目的路径由用户自己选择想要放置的驱动器和文件夹。
A.安装WinCC的目录中的projects文件夹中,不能。
B.安装WinCC的目录中的projects文件夹中,可以。
C.C:\ Program Files\WINCC\projects文件夹中,不能。
D.C:\ Program Files\WINCC\projects文件夹中,可以。
答案:B2、一个项目的要和西门子400系列的PLC进行通讯,我们要在变量标签中添加一个驱动器,该驱动器是。
它的作用是。
A.SIMATIC S5 Ethernet TF.CHN,使PLC和WinCC进行通讯。
B.SIMATIC S5 Programmers Port AS511.CHN,在PLC和WinCC之间生成一个逻辑接口。
C.SIMATIC S5 Profibus FDL.CHN,使PLC和WinCC进行通讯。
D.SIMATIC S7 Protocol Suite.CHN,在PLC和WinCC之间生成一个逻辑接口。
答案:D3、当我们要调用一个历史趋势图的控件,并将变量的数值反映到趋势图当中,我们需要将这个变量建立到,主要设置其属性。
A.变量管理器、类型和地址。
B.报警记录、报警等级。
C.变量记录、采集周期。
D.报表设计、周期或时间。
答案:C4、在WinCC项目名称的属性里有一个刷新周期,如果刷新周期如果设置得比较长,会对生产造成什么影响?答:会造成WinCC项目对现场实际情况的采集数据失真,使画面不能反映现场的实际情况。
(或刷新周期是WinCC系统访问一次过程数据的时间,设置的时间过长,会造成数据失真)5、当我们要将计算机A里运行过的项目拷贝到另一台计算机B里,并且要在同一个网络上进行同时运行时候,我们需要修改和注意那些方面的问题?答:1、我们要检查两台计算机的名称是否重复,如果重复,我们要将计算机B的名称进行修改。
wincc的经典问题解答123421: WINCC--如何在程序中动态修改用户密码1、点击“开始”--》“设置”--》“控制面板”--》“管理工具”--》“数据源(ODBC)”,打开ODBC数据源管理器2、在用户DSN页面的用户数据源中找到与当前项目所关联的一项,其名称为“CC_项目名_项目建立日期时间”,记下该项的名称3、在脚本中加入以下代码:#pragma code("UseGen.dll") #i ncl"USEGENAP.H"#pragma code()LPCMN_ERROR err; //定义的LPCMN_ERROR型变量,在函数调用中需使用if (PWGENConnect("CC_ass_04-09-21_16:35:22",err)) //建立与数据库的联接,其中CC_ass_04-09-21_16:35:22用第二步中记下的名称取代{ if (PWGENChangePassword(GetTagChar("user"),GetTagChar("oldp assword"),GetTagChar("password"),err)) //修改密码,user,oldpassword,password分别为存贮用户名,原密码,新密码的内部变量,类型为文本变量8位字符集{ //密码修改成功后的操作,如给用户提示等 }}PWGENDisconnect(err); //断开与数据库的联接4、编译运行程序5、工作完成6、与用户管理相关的函数定义存贮在APPLIB目录下的USEGENAP.H文件中,可根据上面示例自行完成添加用户,修改权限等功能。
22:WinCC6.0 中归档时和5.1版本为什么不同了?WinCC V6.0 的后台数据库采用了MS SQL Server 2000,所以归档方式与V5.1 有所不同,它的运行数据存放在数据片段(segment)当中,工程师可以根据尺寸需求组态最大容量或根据时间周期启动新的数据库归档片段。
转自西门子网站WinCC Panel IPC/PG论坛,作者西门子Lemon使用 WinCC 有很多禁忌,违反了它们,可能会导致 WinCC 运行不正常,而且通常没有挽救方案。
以下总结了一些常见的禁忌,引以为戒。
1、计算机名称,变量名称等不要含有特殊字符,包括中文字符这些特殊字符或中文字符在某些情况下,将无法被 WinCC 正常解释,可能会导致WinCC 运行异常。
在 WinCC 在线帮助的“使用 WinCC〉使用项目〉附录〉非法的字符”中可以找到那些不允许使用的字符。
2、安装 WinCC 后,不要修改系统时间或时区时间作为项目归档数据的重要参数,如果混乱,将导致数据库紊乱。
/WW/view/en/20423033、WinCC 安装完成后,不要再更改计算机名称因为 WinCC 使用 SQL Server,更改计算机名称后,并非数据库中关联计算机名称的所有参数都能自动更新,这将导致在某些访问下会出错。
如果 WinCC 安装后,发现计算机名称不符合要求,那就请先卸载 WinCC,再卸载 SQL Server,然后再重新安装 SQL Server 和 WinCC 吧。
4、项目名称及存储项目的路径中不要包含中文热线上经常接到 WinCC 项目无法激活的问题,其原因就是项目路径中包含中文字符。
此时只需将项目另存为到纯英文的路径下即可。
5、登录计算机的用户名不要使用中文,密码不要为空默认情况下密码为空的用户权限受限。
虽然可以按照如下设置取消受限,但不建议这么做。
在 Windows 控制面板的“管理工具〉本地安全设置〉本地策略〉安全选项”中,账户:限制密码为空的账户的访问权限。
6、不要轻易修改操作系统的安全设置,DCOM 设置等参数对于 WinCC 的分布式应用,以及 OPC 应用中,这些参数至关重要。
如果由于擅自改动无法正常运行,可以按照如下操作恢复即可(适用于 WinCC 6.2 sp2 以上的版本):开始〉程序〉SIMATIC〉SIMATIC Security Control〉创建设置,单击“应用”按钮即可。
、问:如何触发计算机扬声器的声音答:编写如下C-Action:#pragma code("");BOOL Beep(DWORD dwFreq,DWORD dwDuration);#pragma code();Beep(500,500);2、问:如何通过C脚本来确定报警信息答:首先必须在画面中插入报警控件,可以用如下两种方式来确认信息:(1)、确认单条信息4版本和高于此版本的WinCCBOOL OnBtnSinglAckn(char*lpszPictureName,char*lpszObjectName)5版本和高于此版本的WinCCBOOL AXC_OnBtnSinglAckn(char*lpszPictureName,char*lpszObjectName)(2)、确认报警窗口所有可见的报警4版本和低于此版本的WinCCBOOL OnBtnVisibleAckn(char*lpszPictureName,char*lpszObjectName)5版本和高于此版本的WinCCBOOL AXC_OnBtnVisibleAckn(char*lpszPictureName,char*lpszObjectName)3、问:如何在WinCC中读取系统时间答:通过如下C-Action:#pragma code("");Void GetLocalTimes(SYSTEMTIME*lpst);#pragma code();SYSTEMTIME time;GetLocalTime(&time);SetTagWord("Varname",;SetTagWord("Varname",;SetTagWord("Varname",;SetTagWord("Varname",;SetTagWord("Varname",;SetTagWord("Varname",;SetTagWord("Varname",;SetTagWord("Varname",;4、问:如何经Windows对话框设置日期时间答:通过调用Windows对话框实现。
1、问:如何触发计算机扬声器的声音?答:编写如下C-Action:#pragma code("kernel32.dll");BOOL Beep(DWORD dwFreq,DWORD dwDuration);#pragma code();Beep(500,500);2、问:如何通过C脚本来确定报警信息?答:首先必须在画面中插入报警控件,可以用如下两种方式来确认信息:(1)、确认单条信息4版本和高于此版本的WinCCBOOL OnBtnSinglAckn(char*lpszPictureName,char*lpszObjectName)5版本和高于此版本的WinCCBOOL AXC_OnBtnSinglAckn(char*lpszPictureName,char*lpszObjectName)(2)、确认报警窗口所有可见的报警4版本和低于此版本的WinCCBOOL OnBtnVisibleAckn(char*lpszPictureName,char*lpszObjectName)5版本和高于此版本的WinCCBOOL AXC_OnBtnVisibleAckn(char*lpszPictureName,char*lpszObjectNa me)3、问:如何在WinCC中读取系统时间?答:通过如下C-Action:#pragma code("kernel32.dll");Void GetLocalTimes(SYSTEMTIME*lpst);#pragma code();SYSTEMTIME time;GetLocalTime(&time);SetTagWord("Varname",time.wYear);SetTagWord("Varname",time.wMonth);SetTagWord("Varname",time.wDayOfWeek);SetTagWord("Varname",time.wDay);SetTagWord("Varname",time.wHour);SetTagWord("Varname",time.wMinute);SetTagWord("Varname",time.wSecond);SetTagWord("Varname",time.wMilliseconds);4、问:如何经Windows对话框设置日期时间?答:通过调用Windows对话框实现。