wincc实用问答

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---->选择变量发生类型,有线性的、随机的、布尔型的等。然后--active--激活。

list of tags----->start simulation 开始模拟。

7、结构变量组

具体如下:

建立结构变量组1,定义BIT变量H,HH,L,LL,建立结构变量

Motor1.H,Motor1.HH,Motor1.L,Motor1.LL.

建立结构变量组2,定义FLOAT变量H,HH,L,LL,建立结构变量

Motor2.H,Motor2,HH,Motor2,L,Motor2,LL.

在当前画面有自定义对象1和画面窗口1,点击自定义对象1,弹出画面窗口1 关联的画面2。在画面2点击按钮1,2,3,4和I/O域1,2,3,4,对关联的结构变量操作。自定义对象1 C脚本如下:

SetTagCharWait("HH_Enable","Motor1.HH");

SetTagCharWait("H_Enable","Motor1.H");

SetTagCharWait("L_Enable","Motor1.L");

SetTagCharWait("LL_Enable","Motor1.LL");

SetPropChar(lpszPictureName,"画面窗口1","tagprefix","Motor2。");

在画面2上按钮1,2,3,4分别关联HH_Enable,H_Enable,L_Enable,LL_Enable,点击使其状态变化。

I/O域1,2,3,4的输入输出关联H,HH,L,LL变量。

现在的现象是对画面2的操作中,只有I/O域操作有效,按钮的操作无效。在自定义对象1中,把第二组结构变量的语句去掉,则画面2中的按钮操作有效。可见2组结构变量的使用互斥。

应该是自定义对象1中的C脚本问题。

1、SetPropChar(lpszPictureName,"画面窗口1","tagprefix","Motor2。");

按钮不起作用的问题在于脚本中把前缀变量都替换成“Motor2.”引起的,即按钮

中的变量前缀也变成了“Motor2.”。可以这样:

建立结构变量组1,定义BIT变量M,MM,N,NN,建立结构变量Motor1.M,

Motor1.MM,Motor1.N,Motor1.NN。

自定义对象1 C脚本如下:

SetTagCharWait("HH_Enable","Motor1.MM");

SetTagCharWait("H_Enable","Motor1.M");

SetTagCharWait("L_Enable","Motor1.N");

SetTagCharWait("LL_Enable","Motor1.NN");

SetPropChar(lpszPictureName,"画面窗口1","tagprefix","Motor2.");

变量前缀没有改过来,在你打开的画面(画面二)时默认的结构变量前缀还是画面(画面一)的前缀。要用SetTagPrefix();来转变。前缀是跟据画面变化时的C语言脚本变的。你要在画面切换时用上,SetTagPrefix来转变前缀。

8、项目复制

1.WinCC项目复制推荐使用系统自带的项目复制器Project Duplicator来复制,直接拷贝文件夹的复制方式可能会造成文件的丢失或者损坏。

2.使用项目复制器复制后的项目,只包含组态数据,不包含运行数据(例如归档文件)。

3.用项目复制器复制项目的操作步骤:

开始--SIMATIC--WINCC--Tools--Project Duplicator

“选择要复制的项目”中找到项目中的.MCP文件,另存即可。

4.整个wincc项目直接拷贝步骤:

“开始”--“运行”,输入reset_wincc.vbs,确定后会关闭WinCC的相关进程,然后直接复制项目即可。

打开项目时,还需注意WinCC版本信息,低版本WinCC打开高版本WinCC组态过的项目是会报错的

WINCC常用功能

WINCC常用功能(2012-06-13 11:22:46) 标签:wincc 功能 问题 文化分类:自动控制 1问:如何触发计算机扬声器的声音? 答:编写如下C-Action: #pragmacode("kernel32.dll"); BOOLBeep(DWORDdwFreq,DWORDdwDuration); #pragmacode(); Beep(500,500); 2、问:如何通过C脚本来确定报警信息? 答:首先必须在画面中插入报警控件,可以用如下两种方式来确认信息: (1)、确认单条信息 4版本和高于此版本的WinCC BOOLOnBtnSinglAckn(char*lpszPictureName,char*lpszObjectName) 5版本和高于此版本的WinCC BOOLAXC_OnBtnSinglAckn(char*lpszPictureName,char*lpszObjectName) (2)、确认报警窗口所有可见的报警 4版本和低于此版本的WinCC BOOLOnBtnVisibleAckn(char*lpszPictureName,char*lpszObjectName) 5版本和高于此版本的WinCC BOOLAXC_OnBtnVisibleAckn(char*lpszPictureName,char*lpszObjectName) 3、问:如何在WinCC中读取系统时间? 答:通过如下C-Action: #pragmacode("kernel32.dll"); VoidGetLocalTimes(SYSTEMTIME*lpst); #pragmacode(); SYSTEMTIMEtime; 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对话框实现。具体如下: #include"apdefap.h" voidonClick(char*lpszPictureName,char*lpszObjectName, char*lpszPropertyName) {ProgramExcute("c:\\win98\\control.exetimedate.cpl");} 其中执行的程序路径,需根据具体情况填写。 5、问:如何在WinCC中调用SQL语言? 答:1、创建一个SQL文件,此文件在ISQL中建立,文件内包含所要执行的SQL语句。Windows对话框实现。具体如下: 2、在WinCC中用CScript调用上述SQL文件,如下所示: #include"apdefap.h" voidOnLButtonDown(char*lpszPictureName, char*lpszObjectName, char*lpszPropertyName, UINTnFlags,intx,inty) { char*a="c:\\siemens\\common\\SQLANY\\ISQL-q-b-c UID=DBA;PWD=SQL;DBF=E:\\testsql\\testsqlRT.DB; DBN=CC_testsql_99-12-03-12:48:26R;READ E:testsql\\test.sql"; Printf("%s\r\n",a); ProgramExcute(a); } 下面是一个简单的SQL文件内容: select*frompde#hd#t#test; outputtoe:\\test2.txtFORMATascii 注意:文件名及路径中不要带空格。 6、问:如何整点启动归档? 答:在"GlobleScript"下的Projectfunction编写程序函数:cyclicarchive BOOLcyclicarchive() { #pragmacode("kernel.dll"); voidGetLocalTime(SYSTEMTIME*lpsz); #pragmacode(); SYSTEMTIMEtime; Intt1; GetLocalTime(&time); T1=time.wMinute; If(t1==00) { SetTagBit("startarchive",1); Return(BOOL)(GetTagBit("startarchive")); } } 在Tagloging中的"Propertiesofprocesstag"中的"archivetag"Tab下的Archivetype选择Cycle-selective,在"Event"标签下的"StartEvent"内选择cyclicarchive函数。 7、问:HowcanIsetandresetaWinCCvariablebymouseclickwithCscript? 答:ThefollowingfunctionshowshowyoucanalternatelysetandresetaWinCCvariablebymouseclick. #include"apdefap.h" voidOnClick(char*lpszPictureName,char*lpszObjectName,char*lpszPropertyName) { BOOLz; z=GetTagBit("MyBitVariable"); if(z==0) SetTagBit("MyBitVariable",1); else SetTagBit("MyBitVariable",0); } 8、问:HowcanIprogramawaitingfunction(Sleep)inWinCC? 答:Thefollowingsampleprogramshowshowthe"Sleep"isused. #pragmacode("Kernel32.dll") voidSleep(intmilliseconds);

WinCC部分考试题目

WinCC部分 笔试考题: 1、生成一个新的项目的时候,该项目默认的路径是。该项目的路径由用户自己选择想要放置的驱动器和文件夹。 A.安装WinCC的目录中的projects文件夹中,不能。 B.安装WinCC的目录中的projects文件夹中,可以。 C.C:\ Program Files\WINCC\projects文件夹中,不能。 D.C:\ Program Files\WINCC\projects文件夹中,可以。 答案:B 2、一个项目的要和西门子400系列的PLC进行通讯,我们要在变量标签中添加一个驱动器,该驱动器是。它的作用是。A.SIMATIC S5 Ethernet ,使PLC和WinCC进行通讯。 B.SIMATIC S5 Programmers Port ,在PLC和WinCC之间生成一个逻辑接口。C.SIMATIC S5 Profibus ,使PLC和WinCC进行通讯。 D.SIMATIC S7 Protocol ,在PLC和WinCC之间生成一个逻辑接口。 答案:D 3、当我们要调用一个历史趋势图的控件,并将变量的数值反映到趋势图当中,我们需要将这个变量建立到,主要设置其属性。 A.变量管理器、类型和地址。 B.报警记录、报警等级。 C.变量记录、采集周期。 D.报表设计、周期或时间。 答案:C 4、在WinCC项目名称的属性里有一个刷新周期,如果刷新周期如果设置得比较长,会对生产造成什么影响? 答:会造成WinCC项目对现场实际情况的采集数据失真,使画面不能反映现场的实际情况。(或刷新周期是WinCC系统访问一次过程数据的时间,设置的时间过长,会造成数据失真) 5、当我们要将计算机A里运行过的项目拷贝到另一台计算机B里,并且要在同一个网络上进行同时运行时候,我们需要修改和注意那些方面的问题? 答:1、我们要检查两台计算机的名称是否重复,如果重复,我们要将计算机B的名称进行修改。 2、我们要检查计算机B的IP地址,不能与计算机A和PLC的IP地址重复。 3、我们要将计算机B里刚拷贝过来的项目打开,修改其计算机属性里的计算机名, 使它和计算机B的名字相同。查看变量标签中的驱动器里的TCP/IP属性,看 其网卡的驱动和计算机里的网卡是否一致。

WINCC安装出现的2个问题及解决方法

WINCC安装出现的2个问题及解决方法 [530] 有一种似是而非的说法:“WINCC应该在WIN2000下运行更为稳定和方便。” 我觉得在6.0之前似乎是这样的。但这种说法现在不具有指导意义了,WINCC可以在WINCXP下很完美的运行。目前XP的先进程度是2000不能比拟的。 还有一种似是而非的说法是:“WINCC应该安装在纯净的XP系统之下,所以我们应该使用XP光盘一步一步的安装,而不能使用市面上常用的GHOST盘来克隆XP”。这种说法有一定的道理,但是也不是全部,因为大家应该都有感觉,并不是所有的克隆XP都不能安装WINCC。那么到底原因是什么呢?原因是在于市面上某些克隆XP为了系统速度将WINDOWS 的一些服务关闭了,而这些不常用的服务正是WINCC正常运行的关键。下面就两个典型错误来阐述: 1、WINCC在创建项目时出现“找不到网络路径”错误,一旦出现,项目即不能被创建,WINCC无法正常运行。这种错误是由于在安装WINCC的时候没有关闭防火墙所致。WINCC安装时系统会提醒使用者关闭防火墙,很多使用者忽略了,在大多数不关闭防火墙就安装的情况下,WINCC也能正常运行,但是有一定概率出现这个“找不到网络路径”错误。 那么解决办法呢?最根本的解决办法是重装系统(这个也是网上大多数同仁推荐的),但是这很麻烦。我推荐的办法是,先关闭防火墙(所有的!包括WINDOWS自带的,各种杀毒软件附加的,和360SAFE!!)看错误是否能解决,经验证有可能能恢复正常,如果WINCC 能创建项目了,那么在创建项目之后再把防火墙都启动,使系统仍受其保护。如果还是不能恢复正常,就进入安全模式将防火墙卸载再回到正常启动的XP,看是否芙饩觯 绻 芙饩鼍椭刈胺阑鹎剑 绻 舛疾恍校 蔷椭缓弥刈跋低沉恕K 苑阑鹎皆赪INCC之后再安装是非常重要的,这一点在使用瑞星防火墙的用户尤其关键,如果将瑞星装在WINCC前面,系统都进不去!!! 2、WINCC出现“Automation License Manager has not been started Please start the service”错误。这个错误会在两种情况下出现: (1)系统硬件发生了变化,WINCC对系统要求似乎比较高,某些同仁实在受不了开发机器缓慢的速度,就直接给系统添加了内存。殊不知一旦系统硬件发生变化,WINCC即认为重新被安装在了其他机器上了,根据授权的原则,就会出现这个错误。 (2)对于某些克隆XP的用户来说是由于系统默认将Automation License Manager service关闭了所致。 那么解决办法呢?网上大多数方法是进入“控制面板”----“管理工 具”--------“服务”-----将“Automation License Manager service”开启,似乎是很完美的,在有些时候的确能解决问题。但是有些情况下却不行,WINCC仍然报“Automation License Manager has not been started Please start the service”错,这个时候我们就需要检查一下,进入“服务”之后发现刚刚开启的“Automation License Manager service”居然又是关闭的了!!!仔细观察才发现原来在这个服务上面的“Automation

wincc标准函数介绍

标准函数 该系统包含标准函数。可以按需要修改这些函数。此外,还可以自己创建标准函数。 该系统包括一个标准函数集。 一、Alarm - 简短描述 Alarm组包含控制WinCC报警控件的函数。标准函数可用于工具栏中的每一个按钮。这些函数可用来创建自定义工具栏,例如选择画面,或者定义控件上的设置。 1.void AcknowledgeMessage(DWORD MsgNr)函数,确认消息系统中带编号的消息,该编号被传递为参数。 使用标准函数操作WinCC报警控件的实例 {//确认选择的报警记录消息 AcknowledgeMessage(GetTagWord("U08i_MsgNr")); } 指定待确认的消息号。在本例中是从变量读取的。 2.BOOL AXC_OnBtnArcLong(char* lpszPictureName, char* pszMsgWin)函数,在消息窗口中该函数表示消息存储在长期归档中。 使用标准函数操作WinCC报警控件的实例 {// 跳转到WinCC报警控件中的第一条消息 AXC_OnBtnMsgFirst("gs_alarm_00","Control1"); } AXC_OnBtnMsgFirst函数参数: “gs_alarm_00”是在其中组态WinCC报警控件的画面的名称。 Control 1是WinCC报警控件的对象名。 3.BOOL AXC_OnBtnArcShort(char* lpszPictureName, char* pszMsgWin)函数,在消息窗口中该函数表示消息存储在短期归档中。 使用标准函数操作WinCC报警控件的实例 {// 跳转到WinCC报警控件中的第一条消息 AXC_OnBtnMsgFirst("gs_alarm_00","Control1"); } AXC_OnBtnMsgFirst函数参数: “gs_alarm_00”是在其中组态WinCC报警控件的画面的名称。 Control 1是WinCC报警控件的对象名。 Control 1是WinCC报警控件的对象名。 4.BOOL AXC_OnBtnComment(char* lpszPictureName, char* pszMsgWin)函数 外部消息窗口操作,该函数显示先前所选消息的注释。 使用标准函数操作WinCC报警控件的实例 {// 跳转到WinCC报警控件中的第一条消息 AXC_OnBtnMsgFirst("gs_alarm_00","Control1"); } AXC_OnBtnMsgFirst函数参数: “gs_alarm_00”是在其中组态WinCC报警控件的画面的名称。 Control 1是WinCC报警控件的对象名。 5.BOOL AXC_OnBtnEmergAckn(char* lpszPictureName, char* pszMsgWin)函数,外部消息窗口操作,此函数打开确认对话框(紧急确认/复位)。

Wincc系统函数

报警 1、ClearAlarmBuffer 应用:删除HMI设备报警缓冲区中的报警。说明:尚未确认的报警也被删除。 2、ClearAlarmBufferProtoolLegacy 应用:该系统函数用来确保兼容性。 它具有与系统函数“ClearAlarmBuffer”相同的功能,但使用旧的ProTool编号方式。参数:Alarm class number 将要删除其消息的报警类别号: -1 (hmiAllProtoolLegacy) = 所有报警/事件 0 (hmiAlarmsProtoolLegacy) = 错误 1 (hmiEventsProtoolLegacy) = 警告 2 (hmiSystemProtoolLegacy) = 系统事件 3 (hmiS7DiagnosisProtoolLegacy) = S7 诊断事件 3、SetAlarmReportMode 应用:确定是否将报警自动报告到打印机上。 4、ShowAlarmWindow 应用:隐藏或显示 HMI 设备上的报警窗口。 5、ShowSystemAlarm 应用:将已传递参数的值显示为 HMI 设备上的系统报警。 编辑位 1、InvertBit 应用:对给定的“Bool”型变量的值取反。如果变量具有值 1(真),它将被设置为 0(假)。如果变量具有值 0(假),它将被设置为 1(真)。说明:不要使用循环事件或递归事件或具有外部变量的系统函数。 在画面中创建一个开关。该开关连接到外部布尔类型变量“Tag1”。将系统函数“InvertBit”分配给“更改”事件。该系统函数连接到外部变量“Tag1”。 在运行期间,这会导致无法预料的行为。 2、InvertBitInTag 应用:对给定变量中的位取反:如果变量中的位为值 1(真),它将被设置为 0(假)。如果变量中的位为值 0(假),它将被设置为 1(真)。 在改变了给定位之后,系统函数将整个变量传送回 PLC。不检查此过程期间变量中是否有其它位发生更改。在变量被传送回 PLC 之前,操作员和 PLC 对变量具有只读访问权限。 说明:如果 PLC 支持 BOOL 型变量,不要使用该系统函数。而是使用“InvertBit”系统函数。不要使用循环事件或递归事件或具有外部变量的系统函数。 在画面中创建一个开关。该开关连接到外部布尔类型变量“Tag1”。将系统函数“InvertBitInVariable”分配给“更改”事件。该系统函数连接到外部变量“Tag1”。 在运行期间,这会导致无法预料的行为。 3、ResetBit 应用:将“Bool”型变量的值设置为 0(假)。 4、ResetBitInTag 应用:将给定变量中的一个位设置为 0(假)。 在改变了给定位之后,系统函数将整个变量传送回 PLC。不检查此过程期间变量中是否有其它位发生更改。在指示的变量被传送回 PLC 之前,操作员和 PLC 对变量具有只读访问权限。说明:如果 PLC 支持 BOOL 型变量,不要使用该系统函数。而使用系统函数“ResetBit”。 5、SetBit 应用 将“Bool”型变量的值设置为 1(真)。

WinCC 授权的使用方法及常见问题处理

WinCC7.0授权的使用方法及常见问题处理 WinCC 软件受法律保护,且只能在具有有效许可证的完整状态下使用。安装的每个软件以及所用的每个选件都需要获得有效的许可证,才能不受限制地使用 WinCC。从WinCC7.0开始,亚洲版(Asia)的WinCC实行硬狗授权的模式,即WinCC在使用的过程中既要检测系统里是否安装了匹配的授权文件,同时还检测LICENSE_KEY硬件狗是否插在电脑上。下面就如何正确使用WinCC7.0授权以及在使用过程中出现的常见问题的处理方法进行简单介绍。 1授权的使用方法 购买了WinCC7.0的授权后,会得到一套WinCC安装软件和一个用来安装授权的LICENSE_KEY,LICENSE_KEY中包含所购买WinCC功能的授权,LICENSE_KEY外观如图1。 图1 安装好WinCC软件后,将此LICENSE_KEY插到电脑的USB口上,然后通过Automation License Manager (授权管理器,随WinCC软件一起提供,且使用Automation License Manager不需要授权)将 LICENSE_KEY中的授权导入到电脑中,只有标记有“Hardlock”字样的LICENSE_KEY,在传送完授权后仍然需要插到电脑上。导入授权的方法如下:打开Automation License Manager,如果安装了SIMATIC Logon,将会弹出一个登录对话框,如图2, 图2 点“Cancel”将进入如下界面,如图3。 图3

用鼠标选中“LICENSE_KEY”,右边会列出LICENSE_KEY中的授权文件,选中LICENSE_KEY中的授权文件拖拽到电脑的目标盘(不建议放到系统盘,避免系统崩溃造成授权文件丢失);或者用鼠标选中 LICENSE_KEY中的授权文件,点击右键,如图4。 图4 选Transfer(传送),选中目标路径,如图5,至此WinCC的授权导入就完成了。 图5 注意:a. WinCC的一套授权只能同时在一台电脑中使用(不支持复制),如果想将授权转移到其他电脑中使用,按照如上方法将授权传送回LICENSE_KEY,传送授权时需要关闭WinCC,正在使用的授权是不能传送的。授权的状态检查可以参考图4,点击Check,会弹出授权状态信息,如图6。 图6 b.WinCC7.0授权只有RT和RC类授权检测硬件狗,也就是说这两种型号授权对应的LICENSE_KEY必须插在电脑上,而其他型号的WinCC授权,只需要将授权文件通过Automation License Manager将授权文件导入电脑,对应的LICENSE_KEY是不需要插在电脑上的,比如,一用户购买了WinCC7.0的一套RC128点授权和一套Server授权,那用户就会收到两个LICENSE_KEY,将LICENSE_KEY中的授权文件导入到电脑中,此时只需将RC128点的LICENSE_KEY硬件狗插在电脑上, Server授权的LICENSE_KEY是不需要插在电脑上

wincc_课程设计报告

摘要 本设计是利用WINCC7.0设计一个单用户的项目,内容包括基本过程界面的组态,及常用变量的关联及使用方法。在设计中使用过程值归档,并利用表格趋势控件输出过程值归档。报警显示使用报警控件,显示模拟量报警。WINCC支持脚本语言,设计中包括有VB脚本及C脚本的使用。利用画面窗口控件可以实现多画面切换,便于多画面显示。在最后利用MSCOMM控件实现了简单的串口通信,通过虚拟串口与串口调试助手进行通信。 关键词:WINCC VB脚本C脚本

目录 摘要 (1) 目录 (2) 1 概述 (3) 1.1 WINCC浏览器概述 (3) 1.2 设计目的 (3) 1.3 设计任务 (3) 2 主界面配置及主画面介绍 (4) 2.1 主界面配置(main.Pdl) (4) 2.2 多画面切换 (4) 2.3 主画面 (5) 3 过程值归档及表格、趋势控件配置 (6) 3.1 过程值归档 (6) 3.2 表格控件使用 (6) 3.3 趋势控件使用 (7) 4 报警记录组态 (8) 4.1 组态报警及模拟量报警 (9) 4.2 报警控件组态 (9) 5 脚本介绍 (10) 5.1 C脚本使用 (10) 5.2 VB脚本使用 (13) 6 MSCOMM控件及添加 (15) 6.1 Active控件添加 (15) 6.2 MSCOMM控件使用 (16) 7 心得体会 (18) 8 参考文献 (19)

1 概述 1.1 WINCC浏览器概述 SIMATIC WinCC是第一个使用最新的32位技术的过程监视系统,具有良好的开放性和灵活性。 从面市伊始,用户就对SIMATIC WinCC(Windows Control center)印象深刻。一方面,是其高水平的创新,它使用户在早期就认识到即将到来的发展趋势并予以实现;另一方面,是其基于标准的长期产品策略,可确保用户的投资利益。凭籍这种战略思想,WinCC,这一运行于Microsoft Windows 2000和XP下的Windows控制中心,已发展成为欧洲市场中的领导者,乃至业界遵循的标准。如果你想使设备和机器最优化运行,如果你想最大程度地提高工厂的可用性和生产效率,WinCC当是上乘之选。 WINCC软件包括WINCC项目管理器及图形编辑器。 项目管理器支持的组态工具包括变量管理、画面生成、组态消息系统的编辑器、过程值存档、报表系统、脚本建立、用户管理系统等。 图形编辑器主要用来对新建画面的配置,添加控件。在对象调色板里包括标准对象、智能对象、窗口对象、管对象及Active控件类。还可以在库中选择控件等。 1.2 设计目的 使用常用控件制作一个综合界面,可以实现画面切换,过程值组态及表格趋势控件使用。组态报警变量实现报警功能。利用VB或C脚本实现对变量值的自增一功能及切换画面等。 1.3 设计任务 1、学会使用变量及基本画面的组态 2、学会过程值的归档 3、表格及趋势控件的组态 4、报警控件的组态 5、VB脚本及C脚本的使用

wincc经典问题

、问:如何触发计算机扬声器的声音? 答:编写如下C-Action: #pragma code("kernel32.dll"); BOOL Beep(DWORD dwFreq,DWORD dwDuration); #pragma code(); Beep(500,500); 2、问:如何通过C脚本来确定报警信息? 答:首先必须在画面中插入报警控件,可以用如下两种方式来确认信息: (1)、确认单条信息 4版本和高于此版本的WinCC BOOL OnBtnSinglAckn(char*lpszPictureName,char*lpszObjectName) 5版本和高于此版本的WinCC BOOL AXC_OnBtnSinglAckn(char*lpszPictureName,char*lpszObjectName) (2)、确认报警窗口所有可见的报警 4版本和低于此版本的WinCC BOOL OnBtnVisibleAckn(char*lpszPictureName,char*lpszObjectName) 5版本和高于此版本的WinCC BOOL AXC_OnBtnVisibleAckn(char*lpszPictureName,char*lpszObjectName) 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对话框实现。具体如下: #i nclude"apdefap.h" void onClick(char*lpszPictureName,char*lpszObjectName, char*lpszPropertyName) {ProgramExcute("c:\\win98\\control.exe timedate.cpl");} 其中执行的程序路径,需根据具体情况填写。

WINCC问答_1

1、WINCC在进入某一画面时出现 Unhandled exception was raised.Lookfile"c:\program Files\semens\wincc \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 | 标签:|字号大中小订阅 https://www.360docs.net/doc/871475274.html,/leishuang2005/blog/item/e6ce8c47654a2a046b63e50e.html 我从别人那考了一个WINCC例子看可是为什么一打开就是显示“组态服务器不可用,是否打开项目,将本地计算机作为服务器”我点了启动本地服务器为什么总是错误,望高人指点 问题在于你直接拷贝人家已经在使用的项目文件夹,哪个文件夹是共享的,特别是人家正在运行的项目,这样的项目文件直接复制过来是不能用的,会缺少文件. 正确的复制方法: 1)关闭正在运行的WINCC项目,可以在WINCC浏览器里关闭,也可以在开始彩单->运行->输 入CMD ->在里面窗体输入命令RESET WINCC来强制关闭WINCC及相关文件. 2)取消项目文件夹的共享标记.然后复制项目文件夹(当然项目中也可能调用其它可执行文件, 这些你需要向设计方了解),也可以是WINCC安装路径里面的项目复制器复制项目到指定计算机. 只有用这样的方法复制的项目文件才能保证WINCC功能部分软件是完整可用的(WINCC内部直接调用可执行文件的执行的功能除外). 你如果是拷贝的整个项目的话,你需要启动本地服务器,然后更改项目里面的计算机名字为你的本机名字,然后关闭wincc再重新打开wincc。就好了。

WINCC的安装注意问题

关于一些已知的安装问题的解决方法 当内部错误286的信息弹出时的做法 当你在runtime卸载将要完成(即文件已删除)时出现‘内部错误286’信息时,此时在windows注册项中仍显示为已安装以致SP1的安装会被取消。这意味着SP1的工程部分不能在系统中安装。 解决方法: 只需在windows注册项中的注册码删除: HKEY_LOCAL_MACHINE\Software\Siemens\AUTSW\HmiRtm 我们建议同时删除运行时间系统中所有的安装文件(如果仍存在)。请检查原始安装文件夹中的无属性的文件。 如果你需要重新安装已安装过的WinCC flexible Runtime. 请查看‘怎样安装WinCC flexible Runtime’一章。 之后你需要重新安装服务包(请查看‘怎样重新安装服务包’一章)。 安装软件时HmiEs.exe 冲突 安装WinCC flexible 2004 incl. SP1时,我们过早建立一些高速缓冲存储器.这有时会引致一个叫HmiEs.exe的冲突过程. 解决方法: 忽略这个冲突,继续安装。 没有任何副作用!当你第一次申请,创建一个新项目时,会完成高速缓冲存储器的建立。 安装无法完成(重建高速缓冲存储器时出现锁机) 这种安装无法完成(Windows任务管理器显示CPU有段时间不运转)的现象有时会出现。安装WinCC flexible 2004时,已知一些不能创建一些高速缓冲存储器的状况。 解决方法: 你只需在Windows任务管理器中结束叫HmiEs.exe的程序。 没有副作用!当你第一次运行WinCC flexible 2004 ,创建新项目时,高速缓冲存储器会建立。 申请时HmiEs.exe冲突 可能WinCC Flexible 2004 的SP1未正确安装。 解决方法: 执行在“怎样重新安装服务包”一章中描述的步骤。 不能创建新项目 成功安装完WinCC flexible 2004之后,可能会出现不能创建新项目的状态(会出现一个消息告诉你原因)。 不能安装SP1 在一些情况下有必要重新安装SP1,尤其在修改安装时。执行“怎样重新安装服务包”一章中的步骤。一般来说,点击开始→SIMANTIC→信息→已安装软件,其中会告知WinCC flexible 2004的版本为V1.0。 安装硬件支持包(HSP) 目前没有不能安装HSP的案例。 唯一可以检查的是你已经安装了WinCC flexible 2004 包括 SP1。 对解决以上问题有用的安装步骤

分布式控制系统课程设计

分布式控制课程设计 设计题目:课题八:3台电动机的顺序控制 学校:上海工程技术大学 院系:机械工程学院

二任务描述: 在现代工业生产中,电动机自动与手动正反转的设置得到了广泛的应用。设计三台电动机的顺序控制程序的原则是: (1)自动每隔离十分钟启动一台电机,中间可急停,到了八小时后都自动关闭。 (2)手动顺序启动,手动反序停止。 设计四段程序,第一段是自动顺序启动三台电机,由SB1总起T0,T1延时触发。第二段程序是到点自动停止,每个电机配备一个定时器加计数器来实现。第三段程序是手动顺序启动由SB2总起,T5,T6延时触发。第四段程序是手动反序停止由中间继电器M1.0,M1.1,M1.2线圈触发,而在第三段程序的起停保电路中用它们的常闭触点来实现。 控制任务和要求: (1)启动操作:按启动按钮SB1,电动机M1启动,10s后电动机M2自动启动,又经过8s,电动机M3自动启动。 (2)停车操作:按停止按钮SB2,电动机M3立即停车;5s后,电动机M2自动停车;又经过4s,电动机M1自动停车。 (3)要求启动时,每隔10min依次启动1台,每台运行8h后自动停车。在运行中可用停止按钮将3台电动机同时停机。 三电动机及其PLC控制器的介绍 1.系统设计功能 1)电路设计 本课题的三台电动机应满足以下要求 (1)自动时,当第二台电动机延时启动时,不关闭第一台电动机。当第三台电动机延时启动时,不关闭第一,第二台电动机。且三者自各自启动就开始计数器计时,准备 关闭。 (2)用急停按钮使三台电动机同时停移,但时间必须在自动停止时间范围内。 (3)手动时,当第二台中动机延时启动时,必须等三台电动机按顺序都启动后才可以按下手动反序停止按钮,使他们各自停止。 2)主电路设计 由三台电机组成,启动电路由自动开关QF0.,接触器KM0-KM3.热继电器FR1-FR3各台电

wincc的n个经典问题解答之三

wincc的n个经典问题解答之三 作者:激情如火,2005-12-27 17:23:00 发表于:《Siemens自动化软件论坛》共有15人回复, 送留言 部分非本人原创,整理在一起旨在给大家提供方便! 41:用C编程解决授权点数不够用的问题(acsun提供) 当需要的工艺参数超过WinCC版本限制的Tag数目,可以用C语言编程实现多个工艺参数打称重系统有146个参数超过了WinCC的128个Tag的限制就可以用C语言编程决这一问题而不需 基本思想就是把多个参数在下位机内存中连续排列然后在WinCC中定义一个Tag它的长度是多个分成多个参数 例如下位机有两个参数LTN44001和LTN44023都是16位整数分别存放在DD99.DW146和DD99.DW1在WinCC中定义一个外部Tag命名为PackageTag类型为32位整数并联地址为DD99.DBD146再定LTN44023在 Global Script全局脚本中C语言编程如下 Union { Long Dword Int Word[2] }union Union.Dword=GetTagDword("PackageTag") SetTagWord("LTN44001",Union.Word[0]) SetTagWord("LTN44023",Union.Word[0]) 这样两个参数LTN44001和LTN44023就通过一个Tag传送上来了理论上只要下位机内存足够可以版本外部Tag数目的限制. 42:如何在WinCC里用C语言调用SQL语言? 1、创建一个SQL文件。 此文件在ISQL中创建,文件内容是所希望执行的SQL语句。 2、在WinCC的C Script中编写程序调用此SQL文件,如以下程序所示: #i nclude "apdefap.h" void OnLButtonDown(char* lpszPictureName, char* lpszObjectName, char* lpszPropertyName, UINT nFlags, int x, int y) { char*a="C:\\SIEMENS\\Common\\SQLANY\\ISQL-q-b-c

wincc的n个经典问题解答

wincc的n个经典问题解答 1、问:如何触发计算机扬声器的声音? 答:编写如下C-Action: #pragma code("kernel32.dll"); BOOL Beep(DWORD dwFreq,DWORD dwDuration); #pragma code(); Beep(500,500); 2、问:如何通过C脚本来确定报警信息? 答:首先必须在画面中插入报警控件,可以用如下两种方式来确认信息:(1)、确认单条信息 4版本和高于此版本的WinCC BOOL OnBtnSinglAckn(char*lpszPictureName,char*lpszObjectName) 5版本和高于此版本的WinCC BOOL AXC_OnBtnSinglAckn(char*lpszPictureName,char*lpszObjectName) (2)、确认报警窗口所有可见的报警 4版本和低于此版本的WinCC BOOL OnBtnVisibleAckn(char*lpszPictureName,char*lpszObjectName) 5版本和高于此版本的WinCC BOOL AXC_OnBtnVisibleAckn(char*lpszPictureName,char*lpszObjectName) 3、问:如何在WinCC中读取系统时间? 答:通过如下C-Action: #pragma code("kernel32.dll"); V oid 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对话框实现。具体如下: #include"apdefap.h" void onClick(char*lpszPictureName,char*lpszObjectName,

Wincc课程设计报告

河南理工大学《组态软件技术基础》设计报告 水位、水温检测系统 姓名: 学号: 专业班级: 指导老师: 所在学院: 2012年7月6 日

摘要 本设计是基于SIMATIC WinCC的水位水温监控系统,可以自动完成蓄水和排水功能,满足工业生产过程中的需要。SIMATIC WinCC是第一个使用最新的32位技术的过程监视系统,具有良好的开放性和灵活性。 随着科学技术的发展,工业生产过程的自动化水平越来越高,相应的要求其控制界面也应该越来越人性化和简洁化,人们也逐渐意识到原有的上位机编程的开发方式。组态王软件是一种通用的工业监控软件,它把过程控制设计、现场操作以及工厂资源管理与一体,实现最优化管理。它基于Microsoft Windows XP/NT2000操作系统,用户可以在企业网络的所有层次的各个位置上都可以获得系统的实时信息。采用组态王软件开发工业监控工程,可以极大地增强用户生产控制能力、提高工厂的生产力和效率、提高产品的质量、减少成本及原材料的消耗。它适用于从单一设备的生产运营管理和故障诊断,到网络结构分布是大型集中监控管理系统的开发。它以标准的工业计算机软、硬件平台构成的集成系统取代传统的封闭式系统。 关键字:WinCC、组态王软件、工业监控

Abstract This design is based on SIMATIC WinCC and water temperature control system, you can auto-complete of water storage and drainage features, and meet the needs of industrial production processes. SIMATIC WinCC is the first process monitoring systems with the latest 32-bit technology, openness and flexibility with good. With the development of science and technology, the industry increasingly higher level of automation of the production process, the corresponding requirements under its control interface should be more humane and simplicity of, people also come to realize that the original development of computer programming. Kingview software is a general industrial monitor software, it design, hands-on process control and plant resource management and integration, achieving optimal management. It is based on the Microsoft Windows XP/NT2000 operating system, the user can at all levels of the corporate network wherever it can get real time information system. Using the kingview software development industry to monitor the project, can greatly enhance user control, to improve productivity and efficiency, improve product quality, reduce costs and raw material consumption. It is suitable for production and operations management from a single device and troubleshooting to the network structure is the distribution of the large concentrated monitoring system development. It to a standard industry computer software and hardware platforms constitute integrated system to replace the traditional closed systems. Keywords: WinCC, kingview software, industrial monitor

相关文档
最新文档