
简介《WinCC V7.5 SP2 使用WinCC系统手册 说明书》是一份西门子SIMATIC HMI WinCC V7.5 SP2官方系统手册面向工业自动化、SCADA组态工程师及现场调试人员适合需要系统掌握人机界面项目开发与维护的中高级学习者。内容系统覆盖项目管理器、变量管理、过程画面创建与动态更新、消息系统、过程值归档、用户自定义归档、交叉索引、页面与行布局、多语言项目、用户权限管理及与SIMATIC Manager集成等16个功能模块能帮助读者从项目规划到运行管理建立完整认知。资源仅包含1个PDF文件整体约22.8MB文档具备清晰目录结构包含法律资讯、警告提示、操作说明和智能工具介绍可按模块快速跳转查阅。目前已有2370人学习适合作为WinCC V7.5 SP2工程实施中的随查手册也适合用于技术培训和自我提高。1. 打开这份WinCC V7.5 SP2手册前先搞清它解决什么问题拿着一份《WinCC V7.5 SP2 系统手册》大多数人的第一反应是当字典遇到报错翻目录找不到就全文搜。这个习惯不坏但浪费了手册八九成的价值。V7.5 SP2的手册体系实际是按任务拆解的——安装、工程组态、Runtime运行、通信、脚本、选件各自成册系统手册则是把分散信息按功能聚合成一本带书签的“索引”。对刚接触WinCC的人它回答的是“从哪里开始组态一个能跑起来的项目”对用过V6、V7老版本的人它提供的是SP2相对早期版本在变量管理、分布式系统、选件集成上的差异。真正高效的使用路径不是从头读而是先看手册的章节地图再按任务定位到具体功能块最后用示例脚本和参数说明验证自己的做法。这里有一个反直觉的结论手册里最有价值的不一定是正文而是目录、索引表和书签的层级关系——它们直接映射了WinCC的对象模型和功能边界。适合读这份手册的人不是初学者而是已经知道WinCC大体怎么用、但需要把变量、画面、脚本、通信之间关系理清的人。2. 从手册的目录结构反推WinCC V7.5 SP2的功能边界2.1 系统手册的章节地图先看目录再决定看哪里拿到PDF后建议先花十分钟把书签完整展开一次。V7.5 SP2系统手册的书签结构大致分为这几块安装与授权、变量管理、画面组态、报警与归档、通信组态、脚本系统、诊断与排错。这个顺序本身就有意义——它对应WinCC项目从创建到投运的自然路径。安装与授权章节里常见内容包括SQL Server实例的安装要求、授权文件ESD的导入方式、和Windows环境变量的关系变量管理章节会讲标签Tag和结构变量的区别以及变量如何在画面、脚本、归档之间传递。提示PDF书签中带“入门”“概览”章节的页面往往是手册作者对整块功能的抽象说明读熟能减少你后续检索很多次。常见做法是先读安装与授权部分的“系统要求”表格因为V7.5 SP2对SQL Server版本和Windows Server版本有强耦合要求。这块不看手册光靠搜索引擎补课往往得到过时信息。读目录时建议用不同颜色高亮自己关注的功能块比如做报表的标“SQL”、做数据交互的标“OPC UA”、做界面逻辑的标“VBS脚本”。这比直接翻正文的效率高得多。2.2 用全文搜索定位对象模型手册与TIA Portal WinCC RT Advanced的差异WinCC V7.5 SP2的手册体系与TIA Portal里WinCC RT Advanced的手册体系不是一回事。V7.5 SP2是经典WinCC也叫WinCC Classic组态环境是独立的WinCC Explorer脚本对象模型基于HMIRuntime而TIA Portal里的WinCC RT Advanced基于博途框架对象模型和组态方式完全不同。检索手册时要注意这一点搜出来的关键词可能是“WinCC Explorer”“变量管理”“图形编辑器”而不是博途里的“HMI变量”“画面管理”。用全文搜索时最有效的方式是组合关键词而不是单个名词。比如要查VBS脚本怎么操作变量直接的搜法是“HMIRuntime.Tags”而不是“脚本”。要查画面窗口切换逻辑搜“画面窗口”加“动态向导”会更精准。PDF阅读器的搜索框支持通配符和短语匹配建议把“变量管理”“归档”“OPC UA”这类复合词加引号搜能过滤掉大量无关结果。3. 把手册里没写透的部分补齐SQL数据库、授权命名与OPC UA服务器配置3.1 报表和SQL数据库的建立先分清系统库和归档库做WinCC报表的人很容易被SQL Server绕晕。WinCC V7.5 SP2安装时会自动安装一个SQL Server实例默认实例名通常是WINCC这个实例里存在系统库和项目库。系统库负责WinCC运行时的内部配置项目库存放变量记录、报警记录等归档数据。手册的报表章节会提到“报表系统”“数据归档”但未必会告诉你手动建库时该用什么样的脚本参数。常见做法是直接在SQL Server Management Studio里建一个独立归档库用于报表查询。一个可用的建库脚本如下CREATE DATABASE WinCCArchive ON PRIMARY ( NAME NWinCCArchive, FILENAME ND:\WinCC\Archive\WinCCArchive.mdf , SIZE 5MB , MAXSIZE UNLIMITED , FILEGROWTH 10MB ) LOG ON ( NAME NWinCCArchive_log, FILENAME ND:\WinCC\Archive\WinCCArchive_log.ldf )这个脚本里NAME是逻辑文件名FILENAME是物理文件路径MAXSIZE UNLIMITED表示无上限增长FILEGROWTH 10MB控制每次自动增长的步长。手动建库的用途是给外部报表系统提供独立数据源避免直接读取WinCC运行时正在写入的库造成锁表。要注意WinCC运行系统的归档数据是连续写入的外部查询优先查独立归档库或使用只读副本不要直接对运行时库执行重型查询。3.2 WinCC密钥名称与授权文件的识别规律关于“WinCC密钥名称”这个词在工程师圈子里通常指的是授权管理器中显示的许可证名称和ESD文件名。WinCC V7.5 SP2的授权文件以ESD为后缀存放位置一般在安装目录的授权文件夹内但更稳妥的方式是打开“Automation License Manager”查看已安装的授权列表。识别授权有几个要点一是区分“单机授权”和“浮动授权”二是确认授权是“永久的”还是“时间限制的”三是核对授权类型是否覆盖你当前使用的选件。若授权种类不匹配WinCC运行系统通常会在启动时提示缺少许可证而不是直接拒绝运行。排错时先看Windows事件查看器里与授权相关的日志再回到许可证管理器确认状态比反复重装软件有效得多。3.3 将WinCC V7.5 SP2作为OPC UA服务器的配置步骤“wincc做opc ua服务器需要哪些配置”是最近被问得比较多的问题。WinCC从V7.4开始原生支持OPC UA服务器V7.5 SP2的配置路径基本一致。核心步骤分三步启用OPC UA服务器、配置端口和证书、在客户端测试连接。启用OPC UA服务器的位置在WinCC Explorer的“OPC服务器”设置里。把“OPC UA服务器”选成启用后需要指定端口默认端口常见是4860UA TCP和4862HTTPS。证书部分WinCC会使用本机Windows证书库里的证书证书的“预期用途”必须包含服务器身份验证。客户端连接时如果报证书错误大多数情况下是客户端没有信任WinCC服务器证书。导出证书的方式打开证书管理控制台certmgr.msc找到WinCC相关证书导出为.cer文件再导入到客户端的“受信任的根证书颁发机构”。用PowerShell可以检查证书的指纹和有效期确认服务器证书没有过期Get-ChildItem -Path Cert:\LocalMachine\My | Where-Object { $_.Subject -like *WinCC* -or $_.Subject -like *Siemens* } | Select-Object Thumbprint, Subject, NotAfter | Format-Table -AutoSize这条命令枚举本地计算机个人证书存储区中与WinCC或西门子相关的证书并列出指纹、主题和过期时间。客户端连接失败时优先查这几项WinCC服务器是否启用OPC UA、防火墙是否放行4860端口、证书链是否完整、客户端是否启用了加密策略且匹配服务器。配置项常见值排错要点OPC UA TCP 端口4860防火墙放行TCP入站规则HTTPS 端口4862用于浏览Endpoint测试时可暂时关闭客户端安全策略Basic256Sha256需与服务器支持的策略一致证书有效期一年或自定义过期后连接报“证书已过期”4. 画面组态与脚本弹窗打不开、循环脚本和趋势图的VBS写法4.1 画面弹窗关闭一次就打不开的排查方法“wincc画面弹窗关闭一次就打不开了”是搜索热度很高的一个问题现象是弹窗第一次能打开关闭后再点打开按钮就无响应。这类问题九成出在画面窗口对象的释放逻辑上。WinCC的弹窗通常用画面窗口Picture Window或画面对象Picture Object实现。第一次关闭时如果脚本里执行了ScreenItems(窗口名).Clear或直接将其Visible属性置为False没有把对象引用置为Nothing第二次点击按钮时脚本找不到有效引用于是静默失败。另外按钮的“允许操作”属性可能被脚本误改。比较可靠的写法是每次打开弹窗时都重新获取对象引用而不是在全局变量里缓存引用。Sub OpenPopup() Dim objScreen Set objScreen HMIRuntime.ScreenItems(MainScreen) Dim objWin Set objWin objScreen.ScreenItems(PopupWindow) objWin.Visible True objWin.ObjectName objWin.ScreenName SubScreen.PDL objWin.X 200 objWin.Y 150 End Sub这段VBS代码在每次点击时重新从主画面中获取“PopupWindow”这个画面窗口对象再设置可见性、关联画面名称和位置。ScreenName指定弹窗实际加载的画面文件X和Y控制弹窗位置。这样做的优点是对象引用始终从当前画面层级获取规避了因对象被卸载而导致的引用失效。关闭弹窗的代码要做的只是隐藏窗口不要做多余清理Sub ClosePopup() Dim objScreen Set objScreen HMIRuntime.ScreenItems(MainScreen) Dim objWin Set objWin objScreen.ScreenItems(PopupWindow) objWin.Visible False End Sub4.2 画面中做循环脚本的几种方式与触发时机“wincc画面中怎么做循环脚本”这个问题需要区分两个层面一是画面里的对象采用“触发器”定时执行二是在全局脚本中通过“动作”配置循环。画面对象执行循环动作的底层机制是WinCC的变量触发器或时间触发器不建议自己写死循环的VBS。正确做法是在画面对象的“事件”里添加一个动作选择时间周期触发例如每500毫秒执行一次。动作脚本里写取变量、计算、赋值画面对象的逻辑。如果需要在全局层面循环扫描就在全局脚本里创建一个动作并将触发周期设为固定时间。全局动作里通常配合HMIRuntime.Tags来读写变量例如Dim val1, val2 val1 HMIRuntime.Tags(AnalogInput1).Read val2 val1 * 0.8 HMIRuntime.Tags(AnalogOutput1).Write val2这个动作读取变量AnalogInput1乘以0.8后写入AnalogOutput1。注意Read和Write都是阻塞调用如果循环周期太短而变量较多会锁住脚本线程。常见做法是让动作周期大于所有变量读写总耗时或者把高频数据交换放到PLC侧完成脚本只做低频逻辑。对于需要长周期扫描的场景可以在动作内部记录上次执行时间避免每次触发都执行重逻辑等业务逻辑用最小化间隔来控制。4.3 趋势图控件的VBS脚本一条曲线的动态绑定趋势图控件WinCC Online Trend Control在V7.5 SP2里仍以ActiveX方式嵌入画面。用VBS动态添加曲线时需要在脚本里先获取控件对象再调用对象的方法和属性。Dim objTrend Set objTrend ScreenItems(Trend1) objTrend.ClearData objTrend.AddConnection ProcessTag1, 1 objTrend.RemoveConnection ProcessTag2 objTrend.TimeRange 600这里ClearData清空所有曲线配置AddConnection把变量ProcessTag1绑定到趋势图控件上RemoveConnection则移除指定曲线。TimeRange参数单位是秒600代表显示最近10分钟的数据。执行这段脚本的触发条件通常是画面打开事件或按钮点击事件。实际项目里动态绑定常用来实现“多组曲线切换”的需求——下拉框选哪个变量趋势图就显示哪个变量脚本只需在下拉框事件里调用RemoveConnection和AddConnection。4.4 静态文本的位置X动态化坐标系统与锚点“wincc静态文本几何属性里的位置x的动态是什么意思”这个问题本质是WinCC对象“几何属性”里位置参数与动态动画之间的绑定机制。静态文本的Position X和Position Y可以直接填写固定值也可以点击右侧的小灯泡图标连接到一个变量或表达式实现对象位置的动态移动。这里的坐标系是画面坐标原点在画面左上角单位是像素。动态X值的典型用途是让设备状态文字跟随一个移动的游标或轨道位置变化。连接变量时要留意变量的量纲和范围。例如变量值是0到100画面宽度是1920像素就需要在表达式里做线性换算形如GetTagFloat(PositionValue) * 10。不过WinCC的“动态对话框”里可以直接配置线性转换的上下限比在脚本里换算更直观也更容易维护。使用动态对话框时属性面板会显示一个“范围”表格把变量的0映射到坐标0变量的100映射到坐标1000系统会自动线性插值。5. 用手册配合SQL查询验证项目数据是否真正落库5.1 从归档表反查数据报表系统的验证思路对于做报表的人来说最怕的问题是“WinCC画面组态都写好了报表里却没有数据”。判断数据有没有落库最快的验证方式不是打开WinCC画面看趋势而是直接用SQL查询WinCC的归档数据库。WinCC的归档数据存放表名通常是带前缀的不同版本前缀略有差异常见如DBA_开头。直接查原始归档表能确认数据是否在写入也能确认变量名称是否符合归档配置。USE WinCCArchive; SELECT TOP 100 TimestampValue AS Timestamp, Value FROM DBA_AnalogArchiveTable ORDER BY TimestampValue DESC;这条查询取了归档表最近100条数据按时间戳倒序排列。如果返回结果为空说明归档没有数据写入排查方向是变量是否加入归档记录、记录周期是否合理、运行系统是否处于激活状态。如果返回有数据但报表查不到问题就出在报表取数的SQL语句与归档表的字段名不匹配。WinCC V7.5 SP2的归档表结构在不同项目里可能因为选件不同而略有差异查字段名最稳妥的方式是先执行SELECT TOP 1 * FROM DBA_AnalogArchiveTable看实际列名再写正式查询。5.2 全局脚本里的试运行脚本在手册里验证对象模型手册的脚本章节往往只给出方法名和参数说明不提供可以直接运行的大段示例。想要验证一个对象模型是否使用正确最快的方法是在WinCC的全局脚本编译环境里写一段最小化脚本点击运行后看脚本诊断窗口的输出。下面是一段验证画面对象引用是否有效的脚本On Error Resume Next Dim objScreen Set objScreen HMIRuntime.ScreenItems(MainScreen) If Err.Number 0 Then HMIRuntime.Trace ScreenItem found: objScreen.ObjectName vbCrLf Else HMIRuntime.Trace ScreenItem not found, Error: Err.Description vbCrLf End If这段脚本用HMIRuntime.Trace把调试信息输出到“诊断”窗口作用是把找不到画面对象时的错误信息输出出来而不是让脚本静默失败。On Error Resume Next让脚本在出错时继续执行Err.Number判断是否发生错误。脚本诊断输出是排查VBS运行时问题最重要的工具手册里对HMIRuntime.Trace的说明往往只有一句话但在实际调试中的作用极大。5.3 静态文本动态位置在报表场景中的延伸用法静态文本的“位置X动态”还有一个不常用但很实用的延伸在报表画面的模拟量指示条上把文本标签的X坐标绑定到某个变量的实时值让文字沿着标尺移动。此时X坐标的换算必须考虑文本对象自身的宽度否则文字会在标尺末端跑出画面。换算公式可以在动态对话框里做一个二次线性映射也可以在脚本里用HMIRuntime.ScreenItems(Tag).Width读取对象宽度自行修正。这类做法在手册里不会直接给出现成答案但组合使用“几何属性动态化”和“脚本对象属性”两个章节的内容就能实现。本文还有配套的精品资源点击获取