WINCC配置OPCUA服务器的步骤和故障解决
本次配置实例的环境:
在同一局域网内的两台计算机,均为windows7SP1系统
一台计算机安装,并建立项目,项目在运行状态
一台计算机安装UAExpert(测试用OPCUA客户端软件)
WINCC配置为OPCUA服务器操作相对简单,主要为以下几个步骤:
1、修改OPCUA的配置文件
WINCCOPCUA的配置文件位于"wincc项目\OPC\UAServer"文件夹下,用记事本打开对此文件内容可进行修改配置(不修改也能用,但是默认包含未加密的连接方式,最好删除未加密方式),如需修改最好先备份一个副本。

服务器IP地址要记下来,默认端口号4862,一般不需要修改,改的话要注意不要与系统内已被占用的端口冲突。
2、建立并运行wincc项目。
wincc项目不在运行状态时,OPCUA客户端是无法与OPCUA服务器建立连接的。
3、打开OPCUA客户端软件,添加并浏览服务器
本次测试用的客户端软件是UaExpert,可在unifiedautomation官网下载,开源免费软件。

按照上图所示步骤1、2、3添加服务器。//后面填写服务器IP地址或计算机名称,记住在英文字符下输入,尤其中间的冒号不要错输入为中文的。

添加搜索到服务器,可以看到是加密的连接方式。


证书信任后,证书名称从红色变为橙色,这时仅是客户端对服务器证书进行了认证。服务器并没有信任客户端的证书。

4、在服务器端进行对客户端证书的认证
打开wincc安装路径下的CA文件夹,里面多出一个rejected文件夹,这个文件夹没有任何OPCUA客户端连接到此项目时是不存在的,当OPCUA客户端进行连接时自动创建。

打开rejected文件夹

把里面的证书文件转移到下图路径文件夹内,完成对证书的信任操作。


在下方的AddressSpace内可以看到wincc内变量,连接成功。

拖动一个变量到右侧窗口内,可看到变量数据和刷新的时间标签

至此,完成了OPCUA客户端对wincc服务器的访问。
以上步骤初次操作难免会失误,多试验几次最终会成功,这次试验过程也遇到一些故障问题。
故障一:服务器配置文件修改结束后无法在客户端找到服务器,WINCC项目已经是运行状态了,还是无法发现服务器。
只好打开服务器命令行工具,输入netstat-n-a命令,看到下图中红线标出的一行了吗?4862端口可以看到,那么客户端就可以找到服务器。偏偏开始的时候,根本没这一行,也就是4862端口没开放。继续找原因。

打开服务器的任务管理器,发现一个opcUaServerWincc的服务,状态在是"已停止",这个服务没启动等于wincc的OPCUA服务是关闭的。
故障二:opcUaServerWincc服务被禁用了
在任务管理器里重新启动此服务发现启动失败,打开服务器的服务列表,找到opcUaServerWincc服务,发现被禁用了,右键属性里把禁用改为自动并启动服务。此时回到任务管理器发现服务状态为"正在运行",这时从客户端再搜索服务器就能正常发现了。


这两个拦路虎解决以后,客户端就能顺利找到服务器了,再配合后面的证书互相信任的操作之后,客户端就能和服务器正常通讯了。