本页目录
Studio 工程管理
本页负责本地工程的创建、隔离、运行验证、打包及发布回传。维护多个现场连接与批量程序更新见现场管理;到现场应用项目和守护进程见Watchdog 手册。
工程准备与生命周期
功能入口与准备
登录 Studio Web 后,点击菜单中的“工程管理”。新建、导入、上传或覆盖工程前,先确认工程名称、目标系统与 CPU 架构、Watchdog 连接和可回滚备份。生产发布应安排维护窗口,并确认短时中断不会影响现场控制和数据接收。
“工程管理”用于在 Studio 中维护工程并在本机独立运行网关。也可以在本机单独运行一个 Gateway,直接通过其 Web 页面完成配置和调试;现场接入与远程管理从“现场管理”进入。首次部署中心与现场时,按中心与边缘部署全流程完成安装、接入、发布、采集和同步;日常任务入口见 Studio Web 操作手册。
页面用途
工程管理用于维护本地工程,并完成本机运行、导入导出、上传 Watchdog、从 Watchdog 下载工程等操作。
| 区域或操作 | 说明 |
|---|---|
| 排序 | 支持按更新时间、创建时间或名称排序。 |
| 工程搜索 | 输入名称或描述筛选本地工程。搜索框旁提供“导入工程”和“从网关下载”入口。 |
| 视图切换 | 桌面端可在列表和卡片之间切换。手机使用卡片显示全部操作,返回桌面后保留原视图。 |
| 新建工程 | 打开工程抽屉,创建本地工程。 |
| 停止运行 | 每个运行中的工程可独立停止,其他工程继续运行。 |
| 导入工程 | 从 ZIP 工程包导入本地工程。 |
| 从网关下载 | 从已配置的 Watchdog 服务下载项目包。 |
| 本机端口 | 直接显示端口,点击编辑入口修改;运行中需先停止该工程。 |
| 工程操作 | 点击“打开工程”进入编辑页面;每个工程保留启动/停止、更多菜单中的编辑属性、导出、上传和删除。 |
随包网关与工程隔离
Studio 发布包已包含与该版本、该平台配套的完整网关程序。本机运行直接启动随包网关;导入、导出和仅上传配置时直接打包工程。发布包按快速开始安装 .NET 10 Runtime。
所有工程共用 Studio 随包的网关程序,每个工程使用独立进程和数据目录,分别保存以下内容:
| 工程内容 | 说明 |
|---|---|
| 工程信息与配置 | 工程名称、描述、本机端口,以及工程根目录下独立的 appsettings*.json 和 Configuration/。 |
| 数据库 | 工程数据库和其他业务数据库各自独立。外部数据库仍应为不同工程配置独立库或独立连接。 |
| 脚本、节点与规则 | 脚本、自定义节点、用户扩展及规则引擎配置随工程保存。 |
| OPC UA 证书 | 工程的应用证书、私钥、信任库及拒绝库随工程保存。 |
| 工程资源与协议状态 | 工程的公开资源、IEC 61850 文件和 SNMP 状态随工程保存。 |
新建工程不继承另一个工程的数据库、脚本、节点、用户扩展、缓存或 OPC UA 证书。Studio 与 Watchdog 自身的账号、管理证书和隧道接入信息由各自服务管理,不属于工程包。
每个工程的 Configuration/ 都独立读取和保存,包括数据库连接、Web 配置、JWT、日志和授权状态。随包网关的默认配置只用于补齐工程缺失的配置文件,不会覆盖工程已有文件。本机运行端口由 Studio 单独传入,工程配置中保存的现场端口不被修改。
工程数据库已使用相对路径时,本机运行保留其位置。例如 Data Source=custom.db 继续打开工程根目录的原库,不会另建为 DB/custom.db。数据库配置中明确声明的工程内 SQLite 文件(如 archives/custom.db)也参与看门狗上传、下载、切换和备份恢复。迁移或下载工程后,应确认能够读取原有数据,再继续编辑和发布。插件自定义的历史库建议放在 OTHERDB 下;不要把业务数据放在不参与工程传输和备份的 Logs、PluginCache 或临时目录中。
工程根目录的 PluginCache 仅为运行现场缓存,不属于工程内容,不随导入、导出、上传、下载或备份恢复传递。工程资源目录内的同名子文件夹属于用户资源,仍完整传递。Watchdog 以现场已有缓存为准,Studio 的本机缓存不会复制到现场。同一 Watchdog 切换工程时继续使用现场缓存,不切换、清空或覆盖它;工程恢复也不会回滚现场缓存。
同一个 Studio 可以同时运行多个工程。本机 Web 端口被占用时,启动会提示错误,该工程不启动,已运行的其他工程继续运行。每个工程的日志、本机 PluginCache、SQLite 插件历史库、脚本、自定义节点和 OPC UA 证书使用各自目录;停止、导出或上传某个工程只影响该工程。OPC UA 等额外监听端口、外部数据库和硬件连接也需要分别规划,避免配置到同一外部资源。
工程生命周期
| 阶段 | Studio 操作 | 说明 |
|---|---|---|
| 创建 | 新建工程或导入 ZIP | 建议写清工程名称和描述,便于发布、备份和回传识别。 |
| 本地调试 | 本机运行 → 打开工程 | Studio 启动该工程的网关,打开 Web 后继续配置通道、设备、变量、脚本等。 |
| 发布 | 上传到 Watchdog | 选择目标 Watchdog,按需勾选“同时更新网关程序”。 |
| 回传 | 从网关下载 | 将现场 Watchdog 中的项目下载回 Studio,便于排查和二次维护。 |
| 归档 | 导出 ZIP | 用于版本留存、迁移或交付。 |
维护并验证本地工程
新建或编辑工程
点击“新建工程”,或在工程更多菜单中点击“编辑”,打开工程抽屉。
| 配置项 | 说明 |
|---|---|
| 工程名称 | 必填,长度校验为 2-50 个字符。建议包含现场、产线或设备组信息。 |
| 工程描述 | 可选,用于记录用途、版本说明、现场差异或维护备注。 |
| 本机端口 | 工程在本机运行时的 Web 端口,范围为 1-65535,默认 5000;应避开其他工程或服务占用的端口。修改端口前先停止该工程。 |
| 保存 | 新建时创建工程,编辑时更新工程名称、描述和本机端口。 |
| 取消 | 关闭抽屉。已提交的保存仍会完成;重新打开后填写的新草稿独立保留。 |
启动本地运行时
在列表或卡片中点击“打开工程”,Studio 会在运行时及编辑页面入口就绪后打开 TGateway Web。键盘操作时,按 Tab 聚焦该按钮,再按 Enter 或空格打开。“本机运行”只启动该工程;“停止运行”停止该工程。工程名称和整行不触发打开操作。手机卡片同样保留端口、打开、启停和更多菜单。
| 状态 | 页面表现 | 操作建议 |
|---|---|---|
| 未运行 | 启停按钮显示“本机运行”。 | 点击后等待网关启动,启动中卡片会显示遮罩。 |
| 运行中 | 工程显示运行状态,启停按钮可停止运行时。 | 点击“打开工程”直接进入 TGateway Web。 |
| 多工程运行 | 不同端口的工程分别显示运行状态。 | 可以分别打开或停止,各工程互不替换。 |
| 端口冲突 | 启动失败并显示被占用的端口。 | 编辑本机端口后重试,已运行的工程保持运行。 |
开发运行说明
工程管理页面负责启动和停止各工程在本机运行的网关。进入 TGateway Web 后,通道、设备、变量、脚本、节点、数据转发等配置按 TGateway 的操作手册执行。
修改本机端口
- 在工程列表或卡片中找到“本机端口”,点击其旁的编辑按钮。
- 运行中的工程先点击“停止运行”,再打开编辑面板。填写未占用的端口并保存。
- 点击“本机运行”,确认该工程启动成功,再点击“打开工程”。多个工程使用不同端口时可同时运行。
本机端口只影响 Studio 中该工程的本机运行,不会修改现场 Gateway、Watchdog 的监听端口,也不会修改现场连接和隧道映射。 上传工程配置时,工程中保存的现场端口继续保留。现场实际端口需要在现场单独配置;Studio“现场管理”中的端口只是连接目标,也不会替远端修改监听。
手机操作
手机使用卡片视图,保留本机端口、编辑入口、“打开工程”、启停按钮和“更多”菜单。点击对应按钮完成操作,无需单击或双击卡片;需要导出、上传或删除时打开“更多”菜单。
导入工程
点击工具栏“导入工程”,选择 ZIP 工程包。
| 配置项 | 说明 |
|---|---|
| 工程包 | 仅支持完整 ZIP 工程包,根目录必须有有效的 project.json。空包、仅程序包或额外嵌套一层的包会被拒绝。可以拖拽到上传区域,也可以点击选择。 |
| 导入工程名称 | 可选。填写后使用该名称导入;不填写时使用工程包原始名称。 |
| 确认 | 文件列表中存在 ZIP 时可导入。删除所选文件后需重新选择;关闭并重开不会保留上次文件。 |
导入后应检查工程列表中名称、描述、更新时间是否符合预期,并启动本地运行时核对工程配置。普通 ZIP 导入保留包内的本机端口;启动前检查是否与本机其他服务冲突,需要时在“编辑”中修改端口。
导出工程
在工程更多菜单中点击“导出”。浏览器会下载 ${工程名称}.zip 工程包,可用于迁移、归档、直接上传到 Watchdog,或提交给维护人员排查问题。
Studio 导出与 Watchdog 下载使用相同的 ZIP 工程包结构:project.json 和工程目录直接位于压缩包根目录。使用原始完整 ZIP,不要额外套一层文件夹。Watchdog 手工上传以 ZIP 文件名作为目标工程名称;重命名 ZIP 后上传会使用新名称。
| 使用场景 | 说明 |
|---|---|
| 版本归档 | 在发布前后各导出一次,便于回滚和比对。 |
| 迁移交付 | 将工程移动到另一台 Studio 或交给现场人员。 |
| 问题排查 | 将现场工程导出给维护人员复现。 |
导出或上传正在运行的本机工程时,该工程会短暂停止以生成一致的工程包,请安排在允许中断的时段。使用页面导出或下载完整工程包,不要只复制 SQLite 的 .db 文件,以免遗漏尚未合并的 WAL 数据或其他工程文件。
现场发布与回传
上传工程到 Watchdog
在工程更多菜单中点击“上传”,打开上传抽屉。
| 配置项 | 说明 |
|---|---|
| 工程名称 | 当前待上传工程,只读显示。 |
| 目标网关 | 从“现场管理”中已保存的现场选择;没有可选项时,先新增现场并测试连接。 |
| 同时更新网关程序 | 默认不勾选,只上传工程数据,使用目标已安装的匹配网关程序。勾选后同时携带随包网关并更新目标程序,目标系统与 CPU 架构必须匹配随包运行平台。 |
| 上传 | 目标网关已选择后可执行上传。 |
发布前检查
- 在“现场管理”页面测试目标 Watchdog 连接成功。
- 在 Watchdog Web 的“备份管理”中为当前工程创建备份,必要时另行下载工程归档。
- 仅更新配置时,保持“同时更新网关程序”未勾选,并确认目标已安装匹配的网关版本。配置上传不要求目标平台与 Studio 本机相同。
- 需要随工程更新网关程序时,先确认所用 Studio 发布包的版本及平台与目标系统及 CPU 架构匹配,再勾选“同时更新网关程序”。其他平台的现场可先在现场管理下载并更新对应平台的正式网关包,再只上传工程配置。
- 确认允许短时中断后执行上传。
发布后验证
- 在 Watchdog Web“项目管理”确认目标项目已上传并成为预期当前项目。
- 在“仪表盘”确认 TGateway 运行状态符合预期、启动失败次数没有增加。若此前手工停止网关,上传后仍保持停止,需在允许运行时手工启动或重启。
- 查看 Watchdog 日志,确认没有项目包、运行时或端口错误。
- 登录目标 TGateway,核对工程名称、通道和设备数量。
- 抽查一个采集变量和一个数据转发目标,确认真实数据链路恢复。
上传完成提示只证明文件传输结束;以上运行与数据检查通过后,发布才算完成。
从网关下载工程
点击工具栏“从网关下载”,打开下载抽屉。
| 配置项 | 说明 |
|---|---|
| 源网关 | 选择已配置的 Watchdog 服务。 |
| 项目列表 | 选择该 Watchdog 上的项目包。切换源网关后会重新加载项目列表。 |
| 本机工程名称 | 选择远端工程后默认填入同名名称,可以改为新的本机名称;不会重命名现场工程。 |
| 覆盖本机同名工程 | 按“本机工程名称”查找覆盖目标;未勾选时,同名下载会被拒绝。 |
| 下载 | 选择源网关、远端工程并填写有效本机名称后执行下载。 |
下载当前工程时取得现场在线工程的最新内容;下载非当前工程时取得该工程已保存的内容。首次从 Watchdog 下载到 Studio 的工程使用本机默认端口 5000,启动前检查端口占用。本机名称不能包含路径、文件名保留字符、连续句点或首尾空格,也不能以句点结尾。改用新的本机名称会创建独立工程,原本机同名来源工程及现场工程保持不变。勾选“覆盖本机同名工程”时,先停止目标本机工程;覆盖保留目标的标识、路径、创建时间和本机端口,替换其工程内容。
下载后打开本机工程,进入 TGateway Web 编辑配置并核对数据库、脚本、自定义节点、规则及 OPC UA 证书。保存并完成本机验证后,可以再次上传到目标 Watchdog。Watchdog 上的备份恢复不会自动回写本机副本,需要重新下载才能取得恢复后的现场内容。
常见问题
| 现象 | 处理建议 |
|---|---|
| 新建工程保存失败 | 检查工程名称是否为空、长度是否在 2-50 个字符之间。 |
| 点击“打开工程”后打不开 TGateway Web | 检查该工程是否启动成功及端口是否被占用,必要时停止该工程后重新启动。 |
| 上传抽屉没有目标网关 | 先到“现场管理”页面新增现场并测试连接。 |
| 上传失败 | 检查 Watchdog 连接、工程包、磁盘空间和服务日志;勾选“同时更新网关程序”时还要核对随包平台。 |
| 下载工程列表为空 | 检查源 Watchdog 是否在线、账号密码是否正确、Watchdog 项目管理中是否存在项目包。 |
| 发布后网关无法启动 | 检查目标网关版本、系统与 CPU 架构、GatewayApp 完整性及 Watchdog 启动日志。 |







