- {{item.name}}
多用户工程
- 0
- 413
Multiuser Engineering 概述
使用 TIA Portal 中的 Multiuser Engineering,可以多个用户同时在一个项目中开展工作,通过在多用户项目中并行处理不同对象,可以显著缩短项目规划和调试时间。
自 TIA Portal V14 起支持 Multiuser Engineering,在 Multiuser Engineering 框架内可以同时与多名工程师合作开展多用户服务器项目,每个工程师自行创建一个本地会话,在本地会话中,相应的工程师可以添加更改,然后将其检入到多用户服务器项目以进行发布,检入后,本地会话中所做的更改将再次提供给服务器项目中的所有工程师。
自 TIA Portal V15.1 起在 Multiuser Engineering 中增加了专门用于调试的组件 Multiuser Commissioning ,使用 Multiuser Commissioning 可轻松快速的完成调试工作。TIA Portal V15.1 中 Multiuser Commissioning 只支持同步模式调试, TIA Portal V16 中 Multiuser Commissioning 增加了异步模式调试,进一步节省了调试时间。
Multiuser Engineering 功能可实现多种服务器组态,本应用示例将介绍如何使用 “临时项目服务器” 对项目进行并行处理,如下图 1 所示。
图1:项目服务器类型
应用示例内容
内容概览:
1. 网络组态及添加客户端用户
2. 安装及组态项目服务器
3. 管理项目服务器
4. 创建服务器项目
5. 创建客户端本地会话
6. 本地会话使用
7. 管理项目的历史信息及修订版本
8. 多用户调试
实验环境
在本应用示例中,使用以下产品实现 Multiuser Engineering 和 Multiuser Commissioning 功能。
图2:实验拓扑结构
软件:
TIA Portal V16 (TIA Portal Project Server V16 -Administration/Configuration)
硬件:
CPU 1511-1PN V2.8
SCALANCE X204 IRT V5.3
2台 PC (系统为Win10 1903 版本,PC1 服务器,PC2 客户端)
组态及使用 Multiuser Engineering
1、网络组态及添加客户端用户
1.1、通过交换机或路由器连接整个网络,配置固定 IP 地址,使各组件实现互通,可以使用 Windows 自带 Command Prompt 中 Ping 指令检测网络互通性,如下图 3 所示。
图3. Ping 命令
1.2 在项目服务器 PC 上为客户端创建用户账户
进入 Windows 中 “设置>账户>家庭和其他用户” 界面,单击 “将其他人添加到这台电脑” 按钮来添加账户,并设置密码,如下图 4 所示。
图4. 添加账户
2、安装及组态项目服务器
2.1、TIA Portal Multiuser Engineering 作为 TIA Portal 中的一个选件,可以在安装 TIA Portal 勾选 “TIA Project Server”一起安装,也可以独立安装,注意 TIA Portal V15.1 及以前版本的名称为 “Multiuser Server” ,如下图 5 所示。
Multiuser Engineering 的授权许可证
使用 Multiuser Engineering 对本地会话进行编辑时,需要安装多用户授权许可证,授权许可证可包含在 TIA Portal 的安装中,也可在安装后通过授权管理器进行传送。每次打开本地会话时,Multiuser Engineering 将检查是否包含有效的许可密钥, 如果找到有效的许可密钥,则本地会话打开,用户可操作该本地会话且无任何限制,如果未找到有效许可密钥,则将显示一条错误消息。 安装 Multiuser Engineering后,系统将自带一个试用版授权,第一次打开本地会话时可以激活试用版授权,期限为21天,过期后则需要安装一个有效的多用户许可证。
在 Multiuser Engineering 系统中执行以下操作,无需具备许可证:
● 组态和启动项目服务器
● 打开服务器项目管理
● 将项目添加到项目服务器
● 创建本地会话
● 删除本地会话
● 将本地会话导出为单用户项目
图5. 软件安装
2.2、组态项目服务器
在 PC1 服务器上通过开始菜单打开 “TIA Portal Project Server V16 - Configuration” 工具来安装服务,安装之前可以选择使用哪种协议连接以及连接的端口号,根据网络性能选择超时配置文件速度,新项目可以选择创建新的自签名证书,以及服务器项目存储位置,每次下载都会生成一个新修订版,如果到达设定的修订版数量就会删除最早保存的版本,保存修订版数量可以根据服务器存储空间来定,没有上限,如下图 6 所示。
图6. 安装服务
服务安装成功后,通过启动按钮来启动服务。如下图 7 所示。
图 7 启动服务
项目服务器完成组态并正常启动。如下图 8 所示。
图8. 服务器启动
3、管理项目服务器
3.1、创建服务器连接
在 PC1 服务器上通过开始菜单打开 “TIA Portal Project Server V16 - Administration” 工具,单击添加服务器,在添加服务器对话框中输入服务器用户名或IP地址及端口号,选择连接机制,这些信息在图 8 中可以找到,如下图 9 所示。
图9. 添加服务器
通过服务器名称前三角形展开并激活连接,并单击 “OK” 确认证书,如下图 10 所示。
图10. 确认证书
3.2、为客户端分配访问权限
Manager(完全访问权限);Contributor(部分访问权限,无删除权限);Member(只读权限)。这里为图 4 中为客户端创建的账户分配为 Contributor 权限,如下图 11 所示。
图11. 添加用户权限
4、创建服务器项目
4.1、添加服务器连接
在 PC1 服务器上进入 TIA Portal “选项>设置>项目服务器” 界面,双击 “添加服务器连接” ,根据图 8 设置服务器分主机名或IP地址及端口号,还可以自行定义别名,最后单击 “添加” 按钮,如下图 12 所示。
图12. 添加服务器连接
4.2、创建服务器项目
要创建多用户服务器项目,建议启动一个满足以下要求的单用户项目:
- 该项目应包含有带有所有所需连接的硬件配置。
- 将该用户程序拆分为多个相互独立的程序段。
- 为各用户待编辑的对象,创建一个带有文件夹和组的技术类实用项目结构。
- 构建该项目时,应确保多名用户可同时和独自操作不同的项目目录。
- 对于调用子程序中各函数的每个程序部分,使用一个主 OB 和一个中央 FB 或 FC。
- 如果可能,尽量为每个组创建一个单独的 PLC 变量表。
- 应提前定义相关工程组态系统使用的所有所需项目语言。
- 创建要在多用户项目中编辑的所有连接。
- 定义屏幕的分辨率并指定 HMI 画面的大小。
- 使用全局数据块保存各个程序部分的数据,不使用位存储器。
- 将基于这些规则创建的单用户项目加载到项目服务器时,该项目将变为一个服务器项目。
- 在本地会话中,多名用户可同时编辑该服务器项目中定义的对象。在本地会话中创建新对象时,需确保使用不同的符号名称。
打开一个单用户项目,进入 “项目>项目服务器>管理服务器项目” 界面,选择图 12 所创建的服务器,双击 “将项目添加到服务器中” 并勾选 “创建本地会话” ,也可以单独创建本地会话,单击“添加”,如下图 13 所示。
图13. 添加服务器项目
添加完成后会自动弹出 “创建本地会话” 对话框,选择工程组态类型,这里选择多用户工程组态,然后选择是否打开本地会话,单击 “创建” 完成本地会话的创建,如下图 14 所示。
图14. 创建本地会话
至此完成了服务器端的配置工作:添加服务器连接、创建服务器项目、创建并打开本地会话。
5、创建客户端本地会话
5.1、添加服务器连接
在 PC2 客户端上进入 TIA Portal “选项>设置>项目服务器” 界面,双击 “添加服务器连接” ,根据图 8 设置服务器分主机名或IP地址及端口号,还可以自行定义别名,最后单击 “添加” 按钮,如下图 15 所示。
图15. 添加服务器连接
5.2、创建客户端本地会话
打开一个空 TIA Portal 项目,进入 “项目>项目服务器>管理服务器项目” 界面,选择图 15 所创建的服务器,双击 “新建本地会话” ,选择工程组态类型,这里选择多用户工程组态,然后选择是否打开本地会话,单击 “创建” 完成本地会话的创建,如下图 16 所示。
图16. 创建客户端会话
至此完成了客户端的配置工作:添加服务器连接、创建并打开本地会话。
6、本地会话使用
本章介绍了服务器和客户端的本地会话使用方法。
6.1、打开本地会话
通过管理服务器项目界面来打开本地会话,也可直接在本地会话存储路径下双击项目名称打开,如下图 17 所示。
图17. 打开本地会话
6.2、标记对象
为了可以并行编辑多用户服务器项目中的对象,每个客户端必须标记在其本地会话中分配给他要编辑的对象,只有标记为检入的对象,才能在编辑后传送到服务器项目中。 可以通过鼠标右键对象选择 “为检入标记对象”,也可以直接单击对象前端的小旗子图标,标记后会变换相应的颜色,各种颜色图标所代表含义如表 1 所示,如下图 18 所示。
图18. 标记对象
表1 标记图标
6.3、检入对象
在本地会话中编辑完标记的对象后,可以将对象检入服务器项目中,通过工具栏检入图标(图标含义如表 2 所示)进入检入界面,检入前可以对标记的对象进行折叠、展开以及显示冲突操作,还可以在检入前选择是否进行编译,编译方式可选择“设备软件(仅更改)”或是“标记的对象(仅更改)”, 为了记录更改状态,可以在注释栏输入所做的更改情况,单击 “开始检入” 按钮进行检入,如果有冲突对象需要确认是否继续检入,如下图 19 所示。
图19. 检入对象
表2.工具栏图标
如果在检入界面勾选 “显示服务器项目视图” 选项,在单击 “开始检入” 按钮后会打开服务器项目视图,可以对本次检入操作进行选择,“放弃更改”可以取消这次检入操作,“保存更改”可以把更改同步到服务器来完成本次检入操作,如下图 20 所示。
图20. 服务器项目视图
检入完成后会提示是否保留标记或是保留本地会话,单击确定完成检入。在成功签入服务器项目的内容后,本地会话将被刷新并打开,如下图 21 所示。
- 与此同时,本地会话在刷新后将显示已检入到服务器项目中的所有更改。
- 如果在服务器项目中添加了新对象,则这些对象也将显示在本地会话中。
- 如果在服务器项目中删除了对象,则这些对象将不再显示在本地会话中。
- 如果选项 “保留对象标记” 没有选中,则系统将自动删除本地会话中的标记。
- 检入后,服务器连接将再次断开。工具栏中显示的服务器状态将从“忙” 变为 “可用”。
图21. 检入成功
6.4、刷新本地会话
其他用户更改和检入的对象在本地会话中的对象状态图标上标记为(见表 1),如果希望将这些对象从其他用户转移到本地会话,需要刷新本地会话,通过工具栏刷新会话图标(见表 2 )进入刷新视图,刷新前可以对标记的对象进行折叠、展开以及显示冲突操作,单击 “开始刷新” 按钮执行刷新,如下图 22 所示。
图22. 刷新本地会话
刷新完成后,本地会话中所有未标记的对象都已更新,而标记的对象没有与服务器同步。如果操作失误或是不想本次刷新了,还可以通过刷新视图中的 “恢复” 按钮来恢复本次的刷新之前的状态,如下图 23 所示。
图23. 刷新成功
6.5、打开/关闭服务器项目视图
不支持在本地会话中标记和检入的对象,可以直接在服务器项目视图中编辑,通过工具栏按钮来打开或关闭服务器项目视图,当打开服务器项目视图后,工具栏中的服务器状态图标变为锁定状态(见表 2),鼠标悬停在图标上可以显示服务器项目由哪个用户锁定的,服务器锁定后所有本地会话不可再执行检入操作,如下图 24 所示。
在服务器项目视图中可执行以下操作:
- 添加服务器项目中之前不存在的新对象。
- 添加或更改硬件配置和连接。
- 对所用的指令进行版本更改。
- 使用项目间工程组态 (IPE)
- 编辑所有对象,无论这是否标记。
- 重命名、移动和删除对象。
- 与 CPU 建立在线连接并下载或上传对象。
- 执行 Multiuser Engineering 支持的所有 TIA Portal 功能。
图24. 打开服务器项目视图
6.6、导出单用户项目
可以通过管理服务器项目把本地会话导出为一个单用户项目,单用户项目下修改的程序块还可以重新拷贝到本地会话或是服务器项目中,如下图 25 所示。
图25. 导出单用户项目
6.7、离线运行
如果暂时无法与服务器建立连接,可以临时使用离线运行模式(TIA Portal V15及以上版本支持),勾选“离线运行”后工具栏中服务器状态图标由绿色变为灰色,当重新与服务器建立连接后,要把修改部分重新检入服务器,并刷新服务器项目,如下图 26 所示。
图26. 离线运行
7、管理项目的历史信息及修订版本
通过 “TIA Portal Project Server V16 - Administration” 工具可查看所创建项目的历史信息并对现有项目修订版进行管理,可执行以下功能(如下图 27 所示,):
- 回滚到所选修订版本(可以把项目回滚到选定版本)
- 导出所选修订版(把修订版本导出为单用户项目)
- 导出历史信息(导出为 XML 格式的文件)
- 保存修订版(为了防止修订版被自动删除,可以保存值得保存的修订版本)
- 显示详细信息(包含注释信息以及发生更改的对象)
- 删除修订版数据(通过右键弹出快捷菜单选择)
图27. 历史信息及修订版管理
8、多用户调试
在 TIA Portal V15.1 及以上版本中,可使用 Multiuser Engineering 在 “工程组态模式” 与 “调试模式” 之间进行切换。自 TIA Portal V16 起,Multiuser Commissioning 在 “同步模式” 和 “异步模式” 下均可用。
使用 Multiuser Commissioning 进行调试时,请注意以下事项:
- 在调试阶段使用 Multiuser Commissioning 进行多用户操作前,这些项目需已通过 Multiuser Engineering 进行了编辑且包含有完整的硬件配置、所需块、连接和全局设置。
- 请事先与其它用户进行协商,避免同时操作同一个对象。
- 所有全局设置(如,设备组态更改)必须在服务器项目视图(即,中央服务器项目)中完成。
- 多用户项目的所有对象均可在服务器项目视图中编辑。还可对不支持 Multiuser Engineering 功能的对象进行编辑。
- 所有更改从本地会话检入服务器项目前必须进行编译,从而始终确保服务器项目的版本一致。
- 下载到 CPU 中之后,服务器项目将自动更新。每次下载后,系统都将为该服务器项目创建一个新的修订版。
8.1、激活多用户调试
在 PC 1 服务器上打开 “TIA Portal Project Server V16 - Administration” 工具,选择相应服务器项目,通过单击 “多用户调试” 按钮来激活或取消激活调试模式。激活后工具栏中调试按钮显示为(同步模式)或(异步模式),如下图 28 所示。
图28. 激活多用户调试
8.2、选择调试模式
自 TIA Portal V16 起,Multiuser Commissioning 在 “同步模式” 和 “异步模式” 下均可用。可以在 TIA Portal 设置中通过 “选项 > 设置 > 多用户 > 调试设置” 切换同步和异步调试,如下图 29 所示。
图29. 调试模式
对于当前会话,可使用项目树中的按钮进行模式切换。但是,此切换仅在会话关闭之前保持活动状态。重新打开本地会话时,将再次使用 TIA Portal 设置中的默认设置,如下图 30 所示。
图30. 工具栏
8.3、同步调试模式
在本地会话下选中要下载的对象执行下载,在下载期间,本地会话中的所有更改执行编译并检入服务器项目中,下载到 CPU 之后,服务器项目和本地会话都将自动刷新,之后,其他用户进行的更改也将显示在本地会话中,每次下载到 CPU 之后,系统都将为该服务器项目创建一个新的修订版,如下图 31 所示。
图31. 同步下载
在 “调试模式” 下开始下载到 CPU 中时,系统将尝试与多用户服务器建立连接,对项目服务器中的本地会话进行更新,如果此时项目服务器无法访问,则在弹出的对话框中将显示一条相应消息, 如下图 32 所示。
- 尝试重新连接项目服务器。
- 切换为 “工程组态模式”,并从本地会话下载到 CPU 中而不更新服务器项目。
- 取消该操作。
图32. 未连接服务器
8.4、异步调试模式
在异步调试模式下操作的步骤:
- 在异步模式下,TIA Portal 的第二个实例在后台运行,这样可以显著缩短调试时间。
- 下载时用户仅会收到是否需要决策和行动以下载到设备的通知。
- 如果不需要用户决策,则在后台异步下载到设备。
- 如果在编译或下载期间发生错误并且需要用户决策,则会在巡视窗口的 “信息 > 常规” 选项卡中显示信息和警告,单击巡视窗口中的绿色箭头(如图中所示)打开调试编辑器, 如下图 33 所示。
图33. 调试编辑器
- 在调试编辑器中,用户将收到有关用户需要采取哪些操作或决策的更多信息,系统将提示用户解决服务器项目视图中的错误或警告,通过勾选 “Continue” 并选择应用来继续执行下载,还可以通过取消按钮来撤销下载请求, 如下图 34 所示。
图34. 调试编辑器
- 如果发生错误且无法在异步模式下解决,则应切换到同步调试模式,然后打开服务器项目视图并解决所示错误,之后,通过服务器项目视图开始检入,如有需要,可以在此操作之后切换回异步模式。
- 下载过程中所有详细信息将在调试消息中显示,如下图 35 所示。
图35. 调试消息
常见问题
1、项目服务器的数量结构
要有效地使用项目服务器,最多可创建 100 个服务器连接。 到达该限值时,系统将显示一条消息,指示无法创建任何新的服务器连接。删除不再需要的任何服务器连接后,即可再次创建新的服务器连接,直至达到最大数目。
根据所用硬件,项目服务器的组态限值如下所示:
2、项目服务器与 TIA Portal 的兼容性
在以下应用程序中,支持在项目服务器与 TIA Portal 之间进行数据通信。
3、如何升级服务器项目?
要在最新版本的 TIA Portal 中使用旧版本的服务器项目,请执行以下操作步骤:
- 使用创建本地会话时的旧版本 TIA Portal 打开本地会话。
- 需确保本地会话中的所有变更均已保存在相关的服务器项目中。
- 将创建时版本的服务器项目导出为一个单用户项目。
- 使用新版本 TIA Portal 打开该项目,并执行建议的项目升级。
- 将升级后的项目作为新的服务器项目添加到当前的项目服务器中。
- 为当前的服务器项目新建一个本地会话。
- 评论
-
分享
扫码分享
- 收藏 收藏
- 点赞 点赞
- 纠错 纠错
{{item.nickName}}