2. WinCC系统架构与远程访问基础
WinCC 的远程监控能力并不是一个单独的功能按钮,而是由系统架构、访问方式和通信链路共同决定的。理解这三者的关系,才能在实际工程中判断“该用 C/S 还是 B/S”“WebUX 和 WebNavigator 有什么区别”“远程画面为什么打不开”。本节从架构出发,逐步落到通信原理与网络拓扑。
一、WinCC 的三种基本架构形态
WinCC 项目在部署形态上可以分为单机、C/S(客户端/服务器)和 B/S(浏览器/服务器)三类。单机架构中,WinCC 运行在一台计算机上,画面、变量、归档、报警全部本地处理,适合小型设备或独立工位。C/S 架构则把项目拆分为服务器和客户端:服务器负责与 PLC 通信、采集变量、维护归档和报警,客户端通过 WinCC 自身的客户端机制访问服务器上的画面和数据。B/S 架构进一步把访问端简化为浏览器,用户无需安装 WinCC 客户端,通过 HTTP/HTTPS 即可查看画面。
需要特别注意的是,C/S 和 B/S 并非互斥。一个典型的远程监控系统往往是“服务器 + WinCC 客户端 + 浏览器客户端”并存:控制室内用 WinCC 客户端获得完整操作能力,管理人员用浏览器查看关键画面。架构选择的核心依据是访问端的数量、是否需要操作权限、网络环境是否允许安装客户端软件。
二、C/S 架构:分布式系统的分工
在 WinCC C/S 架构中,服务器项目包含过程变量、归档、报警和画面,客户端项目只保存本机设置和指向服务器的配置。客户端启动时,通过“服务器数据”包与服务器建立连接,加载服务器上的画面和变量。客户端并不直接与 PLC 通信,所有过程数据都经由服务器转发,这一点决定了服务器是通信瓶颈,也是安全边界。
WinCC 支持多服务器架构,多个服务器可以组成分布式系统,客户端通过“服务器列表”选择要连接的服务器。实际工程中常见的做法是:按工艺区域划分服务器,例如“锅炉服务器”“水处理服务器”,客户端按需连接。这样做的优点是单台服务器故障不会导致全厂画面不可用,缺点是跨服务器变量访问需要额外配置。
客户端访问服务器时,WinCC 使用自身的通信协议(基于 TCP/IP),默认端口为 135、139、445 等 Windows 网络端口,以及 WinCC 专用的 1030、1031 等端口。如果远程客户端无法连接服务器,首先应检查这些端口是否被防火墙拦截,其次检查客户端与服务器是否在同一网段或已配置路由。
三、B/S 架构:WebUX 与 WebNavigator 的分工
WinCC 的 B/S 能力主要由两个组件提供:WebUX 和 WebNavigator。两者定位不同,容易混淆。
WebNavigator 是 WinCC 较早的 Web 发布方案,它把 WinCC 画面通过 Web 服务器发布,客户端使用浏览器访问。WebNavigator 支持完整的 WinCC 画面显示和部分操作,但需要安装 WinCC WebNavigator 服务器组件,且对浏览器版本和插件有一定依赖。它更适合“把现有 WinCC 画面原样搬到浏览器”的场景。
WebUX 是较新的 Web 用户界面方案,基于 HTML5 和现代 Web 技术,不依赖浏览器插件,支持 PC、平板和手机访问。WebUX 的画面需要单独组态,不能直接复用 WinCC 经典画面,但它提供了响应式布局和更现代的交互方式。WebUX 适合需要移动访问、跨平台访问的新建项目。
选择建议:如果项目已有大量 WinCC 经典画面且只需在 PC 浏览器查看,WebNavigator 改造成本低;如果是新建项目且需要手机、平板访问,优先考虑 WebUX。两者可以同时部署,但需要分别组态和授权。
四、远程访问的通信原理
无论 C/S 还是 B/S,远程访问的本质都是“客户端通过网络向服务器请求数据,服务器返回画面或变量值”。区别在于请求的协议和返回的内容格式。
C/S 模式下,WinCC 客户端与服务器之间使用 WinCC 私有通信协议。客户端启动时先通过 TCP 135 端口向服务器请求 RPC 服务,随后建立数据通道。画面切换时,客户端向服务器请求画面文件;变量更新时,服务器主动推送变化值。这种方式的优点是响应快、功能完整,缺点是必须安装客户端软件,且对网络延迟敏感。
B/S 模式下,浏览器通过 HTTP/HTTPS 向 Web 服务器请求页面。WebNavigator 返回的是经过转换的 WinCC 画面,WebUX 返回的是 HTML5 页面。浏览器与 Web 服务器之间是标准的请求-响应模式,服务器再通过内部通道从 WinCC 服务器获取实时数据。这种方式的优点是零安装、跨平台,缺点是实时性略低于 C/S,且画面复杂度受浏览器能力限制。
实际工程中,远程访问通常还要经过 VPN 或防火墙。如果使用 VPN,客户端先建立加密隧道,再访问 WinCC 服务器,此时 WinCC 看到的源 IP 是 VPN 地址。如果使用端口映射,需要把 WinCC 所需端口映射到公网,但这种方式安全性较低,不建议直接暴露在公网。
五、网络拓扑与部署要点
一个可落地的远程监控网络拓扑通常分为三层:现场层、控制层和访问层。现场层是 PLC 和现场总线;控制层是 WinCC 服务器和工程师站;访问层是 WinCC 客户端、Web 服务器和浏览器终端。三层之间通过交换机或路由器连接,控制层与访问层之间建议部署防火墙。
部署时需要注意几个关键参数。第一,服务器与客户端必须能互相解析主机名,建议使用 DNS 或 hosts 文件。第二,WinCC 服务器需要开启“Web 服务器”和“远程访问”相关服务。第三,如果使用 WebUX,需要在 WinCC 项目中启用 WebUX 并分配授权。第四,浏览器访问时,若使用 HTTPS,需要配置证书,否则浏览器会提示不安全。
六、架构选型对照
| 对比项 | 单机 | C/S | B/S(WebUX / WebNavigator) |
|---|---|---|---|
| 客户端安装 | 无需 | 需安装 WinCC Client | 仅需浏览器 |
| 操作能力 | 完整 | 完整 | WebUX 支持操作,WebNavigator 部分支持 |
| 实时性 | 最高 | 高 | 中(受 HTTP 刷新影响) |
| 跨平台 | 否 | 否 | 是(WebUX 支持移动端) |
| 典型场景 | 小型设备 | 控制室多工位 | 管理层移动查看 |