================================================================ 大肥鱼PLC助手 公测版 使用说明 ================================================================ 作者:大肥鱼工作室 版本:1.0.2(公测版) 日期:2026-11-04 公测期间免费使用。软件仍在持续迭代,功能可用,但一定有 bug, 请把它当成"能帮你省点事的助手",而不是"可以托付的同事"。 重要工程上用它之前,先自己在小工程上试一遍手感。 首次启动会先显示《用户协议》和《隐私政策》,勾选同意才能进入。 其中「诊断信息」和「经验笔记」默认开启,随时可以在「设置」里关掉—— 说明在第七节。 ================================================================ 一、它能干什么 ================================================================ 用一句话说:你用中文说你要干什么,它直接去操作博图。 比如: "这个工程里有哪些设备?" "把 OB1 导出成 XML 我看看" "新建一个 FB,做一个电机起保停逻辑,带故障复位" "把这个 SCL 文件导进去" "列出所有块的编译状态" "把 HMI 变量表里的变量绑到 PLC 的某个 DB 成员上" "把 4.信号检查 这张画面整屏复制一份,叫 6.信号检查_副本" 它能读工程、建块、写逻辑、改画面、整屏复制画面、导变量表、**绑点**、编译、导出核对。 1.0.1 的界面已经改成按功能分模块,左侧一栏可以随时收起: 新对话 / 当前工程 清空对话前自动归档,并显示当前打开的工程 多工程 计划、程序、画面分工生成;也可以一次处理多个工程 质检 静态规范检查 + 深度仿真找反例,不连博图、不改工程 IO监控 只读查看 I/Q/M 点的实时状态,不写 PLC、不自动重连 选型 按 IO 点数推荐 PLC 和触摸屏,并核对本机博图硬件目录 记忆 本机积累的调试经验;全局笔记可以共享,工程笔记只留本机 历史 找回以前的对话,换工程或新对话时自动存下 复制画面是把整张画面连控件、动画、变量绑定一起抄过来的。两件事先说清: 画面里「点一下跳到某张画面」的按钮,复制完还是跳回原来那张(它不改写引用); 新画面的号要是跟现有的撞了,它会自己挑一个空号,并在结果里告诉你了。 ================================================================ 二、只支持博图 V20 ================================================================ ⚠️ 只支持 TIA Portal V20。装了 V16/V17/V18/V19 都不行。 这不是懒得适配,是西门子的 Openness 接口每个大版本都不兼容, 认准 V20 的安装目录才能加载。 另外,程序要求 .NET Framework 4.8。 Windows 10(1903 以后)和 Windows 11 都自带,不用管。 更老的系统请先装: https://dotnet.microsoft.com/download/dotnet-framework/net48 脚本会自己检查这两项,缺了会告诉你。 ================================================================ 三、怎么装(三分钟) ================================================================ 第 1 步:把这个文件夹解压到任意位置 (别放在 C:\Program Files 下面,那里改东西要管理员权限) 第 2 步:双击「加入Openness用户组.bat」 会弹一次管理员权限申请,点是。 它自动做这些事: - 检查 .NET Framework 版本 - 检查有没有装博图 V20 - 把你的账号加进 Windows 本地组「Siemens TIA Openness」 ⚠️ 加完之后必须注销再重新登录(或者重启电脑)。 用户组的改动要重新登录才生效,这一步不能省。 第 3 步:双击「大肥鱼PLC助手.exe」 就这三步。 【如果提权时输入的是别人的管理员密码】 脚本会把你加进组。但脚本在提权前已经记下了你自己的用户名, 所以正常情况下不会加错人。万一还是不对, 让那个管理员手动把你加进「Siemens TIA Openness」组即可: 控制面板 → 计算机管理 → 本地用户和组 → 组。 ================================================================ 四、第一次运行要填什么 ================================================================ 有两个东西要填:**授权码** 和 **API 密钥**。 授权码 在官网「账号与授权」页申请(一个码可以绑 2 台电脑,见下面) API 密钥 需要你自己去 DeepSeek 开放平台注册、充值、生成 点左侧「选项」里的「设置」,粘进去,保存。 授权码的申请流程: · QQ 登录接入后,登录官网 → 提交申请 → 有名额立即发,没有名额自动排队; · 接入完成前,发邮件到 2461562055@qq.com 申请,主题写「申请授权码」; · 公测期间不收取授权费。 【授权码】长这样:TIA-XXXXX-XXXXX-XXXXX-XXXXX 它是给**每个人**单独发的,一人一个,别外传。 第一次用的时候,它会自动跟你这台电脑绑上,之后不用再管。 一个码最多绑 **2 台**电脑(比如办公室一台、现场笔记本一台)。 ⚠️ 你必须能连上外网才能用 —— 这个工具的工作规则不放在程序里, 每次启动都从授权服务器上取。取不到就用不了。 (程序本来就要联网调 AI,所以这条一般不额外碍事。) 换电脑、换系统盘怎么办? 绑的是这台机器,换了机器它就不认了。发邮件到 2461562055@qq.com 申请解绑旧设备, 解绑后再用同一个码激活新机器,不用重新要码。 (官网账号页接入后可以自助解绑。) 两台都换 / 重装系统时,需要全部解绑一次;旧电脑开不了机也在邮件里说明即可。 万一看到「程序现在用不了」,先看它下面那句话,五种情况分开说的: 没填码 / 码抄错了 / 这个码是给另一台机器的 / 这个码被停用了 / 连不上 对着那句话办就行,或者把原话发到 2461562055@qq.com。 【API 密钥】长这样:sk-……(一长串) 怎么拿:打开 https://platform.deepseek.com ,注册账号 → 充值 → 在「API keys」里创建一个,复制那一长串(以 sk- 开头)。 调用 AI 是按量计费的,费用由你自己的账号承担;不充值用不了。 密钥是要花钱的,请别外传。 密钥在你本机是用 Windows 自带加密(DPAPI)存起来的, 文件被拷走也解不开,但换台电脑就得重新填。 设置里**没有**「接口地址」这一项 —— 接口是写死的,不用管,也别去找。 能改接口地址就等于能把程序发出去的提示词改道截走,所以这一项是故意拿掉的。 万一你的网络连不上,发邮件到 2461562055@qq.com,别自己想办法绕。 设置里还有「档位」三选一: 快速 便宜、快,适合查资料、看列表这类只读的活 强力 贵、慢,但写 SCL、生成画面这类活得靠它 自动 默认。程序自己判断:这一轮只读就用快速, 要动工程就整轮都用强力 拿不准就用「自动」。 ================================================================ 五、它动你工程之前会自动备份 ================================================================ 任何会改工程的操作,程序都会先用博图自带的归档功能, 存一份 .zap20 快照,然后才动手。 备份位置: %APPDATA%\TiaAgent\backups (在资源管理器地址栏粘 %APPDATA%\TiaAgent 就能进去) 保留策略:每个工程留最近 5 份,总量上限 20 GB。 ⚠️ 但请记住:备份是"出事了能回去",不是"随便折腾"。 真要改重要工程,还是先在测试工程上过一遍。 另外:只查不改的操作(问设备、看块、导出)不会改你的工程文件, 也不会存盘。这是程序特意做的区分。 ================================================================ 六、它有时候会"挡住"你,那是正常的 ================================================================ 博图有几个坑非常阴:操作看起来成功了, 但结果其实是错的,而且要到很后面才报一句莫名其妙的错。 举两个真实的例子: - 函数的逻辑体用某种 XML 写法导进去,博图**不报错**, 但逻辑会被整个丢掉,你得到一个"有接口没逻辑"的块。 只留一条 warning,没人会注意到。 - 新建块的块号和已有块撞了,导入**不报错**, 等到编译才炸一句 "There are objects with ambiguous addresses"。 这时工程已经被写脏了。 这种失败对使用者是最不友好的 —— 你以为成功了,实际白干。 所以程序在这些地方加了拦截:导入之前先检查,发现问题就停下来, 并且告诉你具体哪里不对、该怎么改。 看到这种拦截时: · 它不是在报 bug,是在替你挡一次静默失败 · 按它说的改,然后重试 · 别靠换文件名、反复重试去绕过它 【万一它判错了,挡住了正常操作】 校验是启发式的,可能误判。真遇到正常操作被挡住: 关掉程序,在命令行里执行下面两行再启动: set TIA_AGENT_SKIP_HARD_RULES=1 大肥鱼PLC助手.exe 这时校验降级成提示、不再拦截。 (记得发邮件说明,好把这条例外补进规则里) ================================================================ 七、反馈:它会回传什么 ================================================================ 遇到问题想直接找人,发邮件到:2461562055@qq.com (程序里「关于」→「用户协议与隐私政策」,最后一节「联系方式」也是这个地址。 发之前先看一眼版本号, 连同报错截图一起发,能省掉一轮来回。) 为了让这个工具越用越好用,程序会把每一轮的运行情况发回到反馈服务器。 发出去的时机是两个: · 你**关掉它的时候**; · **下次启动的时候** —— 补发上次没发成功的, 也补发上次没来得及发的(比如上次是被强制结束的, 这种情况关掉时那一步根本没执行)。 传这些东西: · **你在对话框里输入的要求原文** · AI 调了哪些工具、参数摘要、成功还是失败、各花了多久 · 报错的原文 · 环境自检的结果(有没有装博图、Openness 能不能加载等) · 这一轮消耗的 token 数 不传这些东西: · 工具返回的正文内容(也就是你工程里的块名、画面名、SCL 源码) · 你的 API 密钥 · 用户名、机器名、工程路径(这些会被替换成占位符再发) 【第二类上传:经验笔记】(默认开启,2026-10-29 起只上行全局笔记) 只把标记为 global(哪个工程都能用)的 markdown 笔记传给服务器, 汇成一个公共经验库,让所有人的踩坑经验能被别人看到。 标记为 project 的工程笔记**只留在本机,不上行也不下行**, 可以放心写具体工程名、点位和块号。 全局笔记仍可能包含人名、厂名、项目编号,共享前请自己判断; 涉密的删掉或关掉这个开关。上传前程序会自动把本机用户名、机器名、 工程目录路径、sk- 开头的密钥替换成占位符(你本机那份原文不动)。 服务器上会记录每条笔记是哪张授权码提交的(**不会下发给别人**, 只在排查问题、或你要求删除时用来定位)。 **诊断反馈**里没有 QQ 账号:程序只带一个随机的安装标识, 脱敏后认不出具体是谁。 【但要把话说完】授权码那一条路是**会认的**,那是它的本分: · 服务器上存的是「哪个码、绑在哪台机器上」,为的是一人一码、收得回来; · 机器码取的是 Windows 装机时生成的那串 GUID,**先哈希再上传**, 服务器上留的不是原始值,也反推不出你的机器; · 授权码本身**不会进任何日志**(走请求头,不走网址,访问日志里只看得到 「POST /api/v1/pack 200」这种)。 两条路各管各的:反馈里没有授权码,授权记录里也没有你提的需求原文。 [!] 关于"提问原文"这一条,特别说明一下: 它的作用是我在收到反馈后,能复原出"你到底提了什么要求、 AI 又是怎么理解的"。只有这些,出问题时才查得动。 但**提问是你自己打的字,自动脱敏兜不住**, 所以输入时请不要写客户名称、项目编号这类敏感信息。 (工程路径、用户名这些还是会照常被替换成占位符的。) 发不出去(比如断网)也不会丢:先存在本地,下次启动再补传。 强制结束掉的那一轮同样会补。 不想让它传怎么办(随时生效,不用重装): 点左侧「选项」里的「设置」→「数据与隐私」,把下面两个勾去掉: · 共享调试经验到公共知识库 (对应上面的经验笔记) · 回传诊断信息帮助修复缺陷 (对应上面的运行情况) 关掉之后不再上传新数据;已经传上去的,可以通过反馈渠道要求删除。 完整条款见「关于」→「用户协议与隐私政策」。 ================================================================ 八、出问题了怎么办 ================================================================ 问题排查先看日志: %APPDATA%\TiaAgent\logs\tia-日期.log 它在里面记了每一步做了什么、博图回了什么错。 博图的报错经常只有一句没头没尾的 COM 异常, 没有这份日志就只能靠猜。 常见问题: 一启动就说「程序现在用不了」,输入框是灰的 -> 卡在授权那一关。程序下面会写清是哪一种,对着办: 没填授权码 -> 点「设置」把它填上 授权码不对 -> 抄错了,或者你手上是别人的码 这个码是给另一台机器的 -> 两台都绑满了,发邮件申请解绑 这个码已被停用 -> 发邮件说明授权码,问清停用原因 连不上授权服务器 -> 先确认这台机器能上外网;能上网还这样,发邮件反馈 ⚠️「设置」按钮一直是能点的 —— 那是唯一的出路。 别去翻配置文件、也别重装程序,都不是那条路。 双击没反应 -> 大概率是 .NET Framework 缺了。跑一遍「加入Openness用户组.bat」, 它会告诉你。 启动报"无法加载西门子 Openness 程序集" -> 要么没跑那个 bat,要么跑了但没注销重新登录。 要么这台机器上装的不是 V20。 报"当前用户不在 Siemens TIA Openness 组中" -> 同上。 提示工程打开失败,说"包含多个起动器文件" -> 你选的目录里不止一个 .ap20,选到更具体的那一层。 提示工程被博图占用了 -> 先用博图把这个工程关掉。程序需要独占打开。 点「打开工程…」之后卡在"正在打开工程…",一直没动静 -> 十有八九是博图弹了一个「Openness 访问」的框,被别的窗口盖住了 (也可能缩在任务栏里闪)。它在问:"…大肥鱼PLC助手.exe 正试图访问 TIA Portal,是否授予访问权限?" 找到它,点**「全部选定」**——注意不是左边那个"是"。 "全部选定"会把授权存下来,以后同一份程序不再问; 点"是"的话,下次打开工程还得再点一遍。 程序在等一分半之后也会在状态那行提醒你去找这个框。 实在搞不定:把日志发到 2461562055@qq.com。 另外,程序窗口的「关于」里有免责声明,也写了反馈的具体范围; 点「用户协议与隐私政策」可以随时重看首次启动时同意的那两份文件。 ================================================================ 九、说句实话 ================================================================ 公测期间免费使用,但软件仍在边用边改。 它有的地方很聪明,有的地方会犯很低级的错误。 请默认它是"一个很勤快但需要你盯着的新同事": 它干活你去泡杯茶可以,但它交活你一定要看一眼。 尤其是这几件事,务必自己确认: · 写完逻辑后,让它导出核对一遍(它会做,但你也看一眼) · 编译结果要 0 错误 · 首次在某个工程上用之前,先确认备份真的生成了 用完有什么想法、哪里别扭、哪里出错了, 直接发到 2461562055@qq.com,或者写在程序的反馈里。 本软件由大肥鱼工作室开发,著作权归作者所有;公测期间免费使用。 不得反编译、改名换皮后转发,也不得用于商业经营。 ================================================================ 十、版权与第三方组件 ================================================================ © 2026 大肥鱼工作室 保留所有权利 本软件著作权自开发完成之日起产生,开发者保留申请登记的权利。 本软件内嵌以下开源组件,均为 MIT 许可,未做修改: · Newtonsoft.Json 13.0.3 (JSON 序列化) https://github.com/JamesNK/Newtonsoft.Json · Costura.Fody 5.7.0 (单文件打包) https://github.com/Fody/Costura · Fody 6.5.5 (Costura 的织入框架) https://github.com/Fody/Fody 本软件不包含、不分发任何西门子程序集或许可文件; Openness 组件全部来自您本机已安装的博图。 ================================================================