客户机服务器结构 WinCC客户机服务器结构
1 服务器客户机结构概述
1.1 服务器客户机结构的介绍
WinCC 客户机/服务器结构(Client/Server结构,以下简称C/S结构)是一种在网络基础上,以数据库管理为后援,以微机为工作站的系统结构。这种结构将任务合理分配到客户机端和服务器端,降低了系统的通讯开销,充分的利用了两端硬件环境优势。WinCC 可组态含有多个客户机和服务器的C/S系统,从而更有效地操作和监控大型系统,通过在多个服务器中分配操作和监控任务,平衡了服务器的使用率,从而使性能得到更大的改善。
图1 图2
1.2 与操作系统的兼容性
对于安装,必须满足操作系统和软件组态的某些要求,不同版本的WinCC 服务器客户机与操作系统的兼容性参考以下链接:
8795716
1.3 服务器客户机结构的限制条件
服务器端:
每台WinCC 服务器上都必须安装“WinCC Server”授权
客户机端:
根据需求可以分为客户机,Web 客户机和瘦客户机。
表1
1) 中央归档服务器会被视为一个服务器。但它无法被同时当作操作单元使用。
2) 如果服务器也作为操作单元使用,则此服务器的客户机数目会减少到四个。
3) 混合组态: 32 个客户机 + 3 个 Web 客户机
4) 混合组态: 50 个 Web 客户机 + 1 个 WinCC 客户机(也适合工程用途)
2 服务器客户机结构组态介绍
2.1 服务器客户通讯前提
> 网络连接正常
客户机/服务器系统中所有计算机都必须通过网络(局域网)相互连接。
可以通过Ping 命令 查看通讯是否正常
最好使用ping 来查看通讯是否正常
因为IP 地址和计算机名称的映射需要通过NETBIOS 解析完成,在某些情况下ping IP地址并不能确保整体网络连接正常,更多信息请参考Microsoft MSDN相关文档
连接正常如下图:
图3
> 分配Windows 用户权限
服务器客户机使用相同的用户名(推荐)
服务器端
用户◊本地用户和组◊管理工具◊1) 点击Windows 开始菜单
图4
2) 创建一个新用户或者使用默认Administrator, 为用户分配Administrators ,SIMATIC HMI和 SQLServer2005MSSQLUSER$$WinCC三个用户组。并且为该用户设置密码
图5
客户机端:
创建或者使用与服务器端相同的用户名和密码,检查这个用户是否属于Administrators ,SIMATIC HMI和 SQLServer2005MSSQLUSER$$WinCC三个用户组 服务器客户机使用不同的用户名
服务器端
本地用户和组◊管理工具◊1) 点击Windows 开始菜单
2) 创建一个新用户或者使用默认Administrator, 为用户分配Administrators ,SIMATIC HMI和 SQLServer2005MSSQLUSER$$WinCC三个用户组。并且为该用户设置密码
3) 添加客户机登陆用户的用户名到服务器用户列表中并为其设置与客户机登陆用户相同的密码,依照步骤二为这个用户添加三个用户组。(注意:添加的是客户机登陆用户用户名而不是计算机名称)
图6
客户机端
检查客户机的登陆用户是否属于Administrators ,SIMATIC HMI和
SQLServer2005MSSQLUSER$$WinCC三个用户组
注意:
> Windows登陆用户必须有密码,否则会造成用户权限的限制
> 禁用来宾(Guest )用户的访问
2.2 客户机类型介绍
WinCC 的客户机对服务器的访问方式可以分为多用户系统和分布式系统
多用户与分布式系统的特性:
表2
2.3 多用户系统
特点:
多个操作站通过过程驱动器连接访问服务器上的项目。在多用户情况下,客户端没有必要组态项目,服务器负责实现所有公共功能
组态步骤
1) 在服务器上创建类型为“多用户项目”的新项目。
图7
2) 在项目里组态必需的项目数据(画面、归档、变量……)
3) 在项目的计算机属性中添加远程访问的客户机计算机名称,并组态相应的启动,参数属性
图8
4) 在项目中组态客户机的登录用户和权限(此处的登录用户为WinCC 项目的登录用户) WinCC 项目管理器→用户管理器
创建客户机的登录用户,为此用户分配1000 远程激活,1001远程组态权限
图9
5) 在服务器上生成服务器数据包
WinCC 项目管理→服务器数据右键→隐含更新(确保自动导入选上)→创建服务器数据包
图10
6) 在服务器上激活项目
7) 在客户机上通过网上邻居或者Simatic Shell浏览服务器项目, 激活项目
以Simatic Shell为例:
找到服务器的项目选择互连,再弹出的登陆对话框中输入在步骤3中建立的具有1000,1001权限的用户名和密码
图11
注意:
如果在Simatic Shell中看不到服务器计算机。
> 检查网络的连接状况
> 检查计算机是否属于相同的工作组
> 检查Simatic Shell的设置中默认网卡的设置是否正确
图12
> 重新注销登录用户
2.4 分布式系统
特点:
分布任务在多个服务器上,减轻单个服务器负荷,客户机具有自己的项目,可以浏览多个服务器上的数据,服务器所更新的数据将通过数据包导出特性传送到客户机。使大型系统获得更好的性能。
组态步骤:
1) 在每个服务器上创建类型为“多用户项目”的新项目。
图13
2) 在服务器项目里组态必需的项目数据(画面、归档、变量……)。
单个服务器所承担的任务可根据技术或功能等方面进行分配:
> 技术方面: 每个服务器对过程/系统的指定区进行管理。
> 功能方面: 每个服务器在运行时完成整个过程中的某个指定任务,例如报警记录或归档。
3) 组态具有远程组态能力的客户机,必须在服务器项目中添加此客户机计算机名称
4) 在服务器上生成服务器数据包
WinCC 项目管理→服务器数据右键→隐含更新(确保自动导入选上)→创建服务器数据包
图14
5) 在客户机上创建类型为“客户机项目”的新项目
图15
6) 客户机项目加载所需要的服务器数据(数据包)
通常,服务器数据包将以名称“*.pck”存储在目录“...\\\\Packages\”中。
图16
7) 在客户机项目中组态服务器数据
图17
注意:
并不是所有的数据都包含在数据包内(e.g. 菜单和工具栏,全局脚本,报表编辑器,用户管理器,交叉索引)如果客户机想要执行以上服务器数据内容,则需要在客户机端组态相应内容或者将服务器相应内容拷贝到客户机对应文件夹下。
3 常见问题
Q :多用户系统下客户机打开服务器项目提示“服务器项目不可用”的可能原因?
图18
A :1. 服务器端项目没有打开
2. 检查客户机端的Guest 来宾用户是否关闭
Q : 多用户系统下打开服务器项目提示“数据库上下文不存在或者无效”?
图19
A :项目在创建时缺少相应用户权限,请检查创建项目的用户是否属于ADMINISTRATORS 用户组。
Q :多用户系统下打开服务器项目提示“用户没有执行该操作的权限”
图20
A :请检查服务器客户机的登陆用户是否属于Simatic HMI用户组
Q :打开服务器文件夹提示没有相应访问权限
图21
A :当前登录用户没有权限访问这个文件夹,检查这个文件夹的共享权限和安全权限,保证当前的登陆用户能够访问这个文件夹。
Q :客户端打开服务器项目提示“Server is not available”?
A :打开“Workstation Configuration”设置成“Multi-user system”
Q :错误消息“Not enough server memory available for this command."?
A :IRPStackSize ,操作系统所使用的 I/O 请求数据包 (IRP) 中堆栈数目太少所造成的,一般来讲是在安装防火墙后,在启动WinCC 项目的时候有可能出现,可以修改注册表来人为的增大堆栈数目
Q :客户机定义了启动画面(服务器端),但是启动项目提示找不到起始画面?
A :1. 检查此时WinCC 图形编辑器中的画面是否存在,如果编辑器中的画面也丢失,有可能是病毒关闭了此用户的共享权限,建议查杀病毒,重新生成服务器数据包。
2. 检查服务器和客户机的用户是否设置了密码,如果没有,添加相同的密码。