车辆厂PLM项目方案落地指南:Teamcenter与NX集成配置及BOM变型管理
简介这份96页PPT方案聚焦西门子PLM软件在中集车辆数字化企业建设中的落地实践面向车辆制造企业的信息化规划人员、PLM实施顾问及数字化转型研究者系统解答了专用车企业如何从二维设计向三维设计仿真一体化、从劳动密集型生产向自动化柔性化制造转型的问题。资源包为单一pptx文件约25.53MB内容涵盖数字化设计与管理、生产执行与管理、数字化运营三大建设领域并给出发展战略与阶段性规划。方案以东莞工厂为起点详细展开NX三维建模、焊接助手文档管理、产品结构与配置管理、设计变更管理、MBOM管理、三维作业指导书、NX CAE仿真、NX与Teamcenter集成等一期关键功能同时覆盖BOM搭建、物料审批入库、产品协同研发等业务场景。目前已有119人学习适合需要参考车辆行业PLM项目蓝图、功能清单与实施路径的读者借鉴。1. 车辆厂 PLM 项目方案96 页 PPT 背后到底要解决什么如果你在车辆厂轨道交通、商用车、工程车辆都算做过信息化大概率见过这样的场景设计院发来的图纸是 CATIA 或 NX 格式工艺部门要拆成 BOM采购要按件号下单车间又要看三维装配动画结果每个环节都在用 Excel 和共享盘传文件。一份 96 页的《车辆厂 PLM 项目方案》PPT本质上就是把这条断掉的链路重新接起来——用 Teamcenter 做数据主线把 NX 的 CAD 模型、EBOM、工艺路线、变更单串成一个闭环。它适合两类人看一类是正在做 PLM 系统选型和方案汇报的技术负责人另一类是刚接手 PLM 实施、需要把 PPT 里的架构图翻译成可落地配置的工程师。热搜里“plm系统选型看企业痛点”这句话说得直白车辆厂的痛点就三个多配置变型、跨专业协同、变更追溯。这份方案能不能落地取决于你有没有把这三件事拆成具体的对象类型和权限规则而不是停留在“打通数据孤岛”这种口号上。2. 从 96 页 PPT 里拆出可落地的 PLM 架构西门子全家桶怎么摆一份车辆厂 PLM 方案 PPT 通常前 20 页讲现状和痛点中间 50 页讲架构和模块最后 20 页讲实施计划和报价。真正对工程师有用的是中间那部分——它决定了你后面要配哪些服务器、装哪些客户端、开哪些端口。车辆厂和普通离散制造最大的区别在于产品是按项目定制的同一款车不同批次可能底盘不同、内饰不同、信号系统不同所以 PLM 的核心不是管一个固定 BOM而是管“配置 选项 有效性”的组合。2.1 车辆厂 PLM 的四层架构与西门子产品映射常见做法是把架构分成四层每层对应西门子的具体产品。第一层是数据层用 Teamcenter 的 Volume 管理物理文件Oracle 或 SQL Server 存元数据第二层是应用层NX 负责三维设计Teamcenter 的 My Teamcenter 和 Structure Manager 负责 BOM 和审批第三层是集成层用 TcIC 或 Active Workspace 做 Web 访问用 T4S 或 NX 的 Teamcenter Integration 做 CAD 与 PLM 的实时交互第四层是展示层给车间和采购看的是 Active Workspace 的轻量化视图不需要装 NX。层级功能西门子产品车辆厂特殊要求数据层文件存储与元数据Teamcenter Volume Oracle单文件常超 500MB需独立高速存储应用层三维设计与 BOMNX Teamcenter支持大装配需配置轻量化缓存集成层CAD/PLM 实时交互NX-TC 集成 TcIC跨专业借用件需实时更新展示层车间与采购视图Active Workspace支持离线查看和批注这张表不是让你照抄而是提醒你PPT 上画的那几层框每一层都要落到具体的安装包和 License。车辆厂最容易被忽略的是数据层——一个转向架装配体动辄几个 GB如果 Volume 还放在普通 NAS 上NX 打开一次要十几分钟工程师直接骂娘。我一般会建议把 Volume 放在全闪存阵列上元数据单独放数据库服务器两者之间走万兆内网。2.2 用 NX 和 Teamcenter 搭最小验证环境在正式铺开之前先搭一个最小环境验证 NX 和 Teamcenter 能不能正常握手。这个环境不需要完整 License用 Teamcenter 的 Two-Tier 模式加 NX 的 Teamcenter Integration 就能跑通。下面是典型的安装后验证步骤命令和配置项按实际路径调整。# 1. 确认 Teamcenter 服务端已启动Two-Tier 模式下客户端直连数据库 # 检查 Oracle 监听和 Teamcenter 的 FSC 服务 lsnrctl status # 查看 FSC 卷服务是否在 1999 端口监听 netstat -an | grep 1999 # 2. 配置 NX 的 Teamcenter 集成环境变量 # 在 NX 启动脚本或 .env 文件中设置 export TC_ROOT/opt/siemens/teamcenter export TC_DATA/opt/siemens/teamcenter/tcdata export FMS_HOME/opt/siemens/teamcenter/fms # 指定 NX 使用的 Teamcenter 集成模块 export UGII_TC_ENABLE1 export UGII_TC_HOSTplm-server.vehicle.com export UGII_TC_PORT1572 # 3. 启动 NX 并验证连接 # 启动后打开一个装配体检查是否出现 Teamcenter 菜单 /opt/siemens/nx/bin/ugraf -tc这段脚本的关键在最后一行ugraf -tc是带 Teamcenter 集成启动 NX 的入口。如果启动后菜单栏没有出现 Teamcenter 的“文件-打开-从 Teamcenter”选项说明环境变量没生效或者 FSC 服务没通。参数UGII_TC_HOST填 Teamcenter 服务器的主机名UGII_TC_PORT填 FSC 的端口默认是 1572但车辆厂常因为防火墙策略改成 15720 或别的端口以实际配置为准。验证通过的标准是在 NX 里能直接检出和检入零件且检入后 Teamcenter 的 BOM 里能看到对应条目。2.3 车辆厂 BOM 变型配置的建模思路车辆厂的 BOM 不是一棵树而是一张网。同一节车厢A 项目用西门子牵引系统B 项目用另一家但车体结构完全一样。如果每个项目都建一套完整 BOM维护量会爆炸。常见做法是用 Teamcenter 的 Variant Configuration 加 Option 和 Choice 来管理。具体来说把车体、转向架、牵引、制动、内装作为顶层节点每个节点下挂可选件用 150% BOM 的方式表达所有可能配置再通过选项条件过滤出 100% BOM。配置步骤大致是先在 Teamcenter 里定义 Option 组比如“牵引系统”下有“西门子”和“其他”两个 Choice然后在 BOM 行上挂 Variant Condition写表达式如牵引系统西门子最后在创建具体项目时选择对应的 Option 组合系统自动过滤出该项目的 BOM。这里最容易翻车的地方是条件表达式的优先级——如果多个条件同时命中Teamcenter 默认按行号顺序取第一个所以要把最特殊的条件放在最前面。我见过一个项目因为把通用件条件写在专用件前面导致所有车都装上了错误的空调支架车间装配到一半才发现。3. 把 PPT 里的实施计划翻译成可执行的配置清单PPT 上的实施计划通常是一张甘特图写着“需求调研 2 周、系统安装 1 周、配置开发 8 周、上线支持 4 周”。但真正干活的人知道这 8 周配置开发里有 5 周是在跟数据较劲。车辆厂 PLM 实施的核心工作量不在装软件而在把历史数据洗干净、把编码规则定死、把权限矩阵理清。这一章把 PPT 里那些“完成 XX 模块配置”的条目拆成你能直接照着做的清单。3.1 历史数据迁移从共享盘到 Teamcenter 的批量导入车辆厂的历史数据通常散落在共享盘、个人电脑、甚至光盘里格式有 NX 的 prt、CATIA 的 CATPart、还有 AutoCAD 的 dwg。迁移的第一步不是写脚本而是定规则哪些数据进 PLM哪些不进。常见做法是只迁移近三年的量产项目数据样车和预研数据单独放一个库。导入时用 Teamcenter 的 Bulk Import 或 PLM XML 导入工具但更可控的方式是写脚本调用 Teamcenter 的 ITK 或 SOA 接口。# 使用 Teamcenter SOA 接口批量创建 Item 和 Dataset # 依赖requests 库Teamcenter 的 SOA 服务已开启 import requests import json import os TC_URL http://plm-server.vehicle.com:8080/tc/services SESSION requests.Session() def login(username, password): 登录 Teamcenter 获取会话令牌 payload { Header: {state: {format: SOA}}, Body: { login: { user: username, password: password, role: dba, group: Engineering } } } resp SESSION.post(f{TC_URL}/Core-2006-01-SessionService, jsonpayload, headers{Content-Type: application/json}) return resp.json()[Body][loginResponse][sessionTicket] def create_item(session_ticket, item_id, item_name, item_typePart): 创建一个 Itemitem_id 为件号item_name 为名称 payload { Header: {state: {format: SOA}, sessionTicket: session_ticket}, Body: { createItems: { items: [{ itemId: item_id, name: item_name, type: item_type, revision: A }] } } } resp SESSION.post(f{TC_URL}/Core-2006-01-DataManagementService, jsonpayload, headers{Content-Type: application/json}) return resp.json() # 遍历本地目录按件号规则创建 Item # 假设文件名格式为 件号_名称.prt def batch_import(root_dir, session_ticket): for dirpath, _, filenames in os.walk(root_dir): for fname in filenames: if fname.endswith(.prt): parts fname.replace(.prt, ).split(_) if len(parts) 2: item_id parts[0] item_name parts[1] result create_item(session_ticket, item_id, item_name) print(f创建 {item_id}: {result.get(Body, {}).get(createItemsResponse, {})}) if __name__ __main__: ticket login(infra_admin, password) batch_import(/data/legacy_nx, ticket)这段代码的逻辑是先登录拿到 sessionTicket然后遍历本地 NX 文件按文件名解析出件号和名称逐个调用创建 Item 的接口。参数说明TC_URL是 Teamcenter 的 SOA 服务地址车辆厂内网通常是http://服务器名:8080/tc/servicesitem_type默认是 Part如果车辆厂有自定义的“标准件”“外购件”类型要改成对应的类型名revision初始版本设为 A后续升版由变更流程控制。注意批量导入前一定要在测试库跑一遍因为一旦创建了 Item删除会留下审计记录清理起来很麻烦。3.2 权限矩阵车辆厂多部门协同的访问控制车辆厂 PLM 的权限比一般制造企业复杂因为涉及设计、工艺、采购、车间、质量、供应商六个角色而且不同项目组的权限还不一样。PPT 上通常画一个矩阵行是角色列是操作格子里打勾。但落到 Teamcenter 里这个矩阵要翻译成 Access Manager 的规则。常见做法是按“项目 专业 角色”三个维度建组比如P2024-牵引-设计、P2024-车体-工艺然后把权限挂在组上而不是挂在人上。具体配置时在 Teamcenter 的 Access Manager 里定义规则对于设计组给 Part 和 Assembly 的读、写、删权限对于工艺组只给读和创建工艺计划的权限对于采购组只给读和导出 BOM 的权限。这里有个血泪经验不要给任何人“删除”权限包括管理员。车辆厂的 BOM 一旦被误删恢复起来要停线。我一般会把删除权限收归到系统管理员且必须走变更单。另外供应商的访问要用单独的 Web 入口只开放特定项目的特定数据集不能让他们看到整个库。3.3 变更流程从 ECN 到 ECO 的闭环配置车辆厂的变更比普通产品频繁一个项目从设计到量产可能有上千个变更单。PPT 上通常写“建立变更管理流程”但实际要配的是谁发起、谁审批、谁执行、谁验证。常见做法是用 Teamcenter 的 Change Management 模块把变更分成 ECN工程变更通知和 ECO工程变更指令两级。ECN 用于提出变更请求ECO 用于执行变更。配置步骤先定义变更类型和状态机状态包括“新建-审批中-已批准-执行中-已完成-已关闭”然后定义审批路由车辆厂通常需要设计、工艺、质量三方会签最后定义变更影响分析当变更涉及已发布的数据时系统自动列出受影响的 BOM 和图纸。这里容易踩的坑是变更单和 Item 的版本没有绑定导致变更执行后旧版本还在被引用。解决办法是在 ECO 里强制关联“受影响对象”和“变更后对象”并在发布时自动升版。4. 车辆厂 PLM 实施中最容易翻车的五个坑PLM 实施有个玄学演示的时候一切正常上线第一天就各种报错。下面这五个坑是我在车辆厂项目里真实遇到过的每个都按“现象-原因-解决”写清楚你照着排查能省不少时间。4.1 现象NX 打开装配体时提示“找不到 Teamcenter 数据集”原因通常有三个一是 FSC 卷服务没启动或端口不通二是 NX 的环境变量指向了错误的 Teamcenter 实例三是数据集在 Teamcenter 里被移动了位置但引用没更新。排查时先看 FSC 日志再检查UGII_TC_HOST和UGII_TC_PORT是否和服务器实际配置一致。如果是数据集位置问题用 Teamcenter 的“修订引用”功能重新指向。4.2 现象BOM 展开后件号重复同一零件出现多次原因是同一个零件被多个装配引用但 Teamcenter 的 BOM 默认按装配结构展开不自动去重。解决方法是配置 BOM 视图时勾选“按件号汇总”或者在报表里用SUM函数按件号聚合。车辆厂常需要“单台用量”和“总用量”两个视图前者去重后者按装配数量累加。4.3 现象变更单审批通过后车间看到的还是旧图纸原因是变更执行时只升版了 Item但没有更新车间使用的轻量化视图或 PDF。Teamcenter 的 Active Workspace 有缓存机制需要手动刷新或配置自动刷新策略。解决方法是设置“发布时自动生成可视化文件”并让车间客户端每次打开时强制从服务器拉取最新版本。4.4 现象批量导入时部分文件失败日志只写“未知错误”原因是文件名里有特殊字符如空格、中文括号或件号不符合编码规则。Teamcenter 对件号的字符集有限制通常只允许字母、数字和短横线。解决方法是导入前用脚本清洗文件名把中文括号替换成英文括号空格替换成下划线并校验件号长度不超过 32 位。4.5 现象系统运行一段时间后越来越慢查询要等几十秒原因是数据库没有定期维护或者 Volume 存储碎片化。车辆厂的数据量增长很快一个项目就可能产生几十万个文件。解决方法是设置数据库的定期索引重建和统计信息更新Volume 存储用 RAID 10 并定期做碎片整理。另外Teamcenter 的查询要加索引不要用全表扫描。5. 用 Active Workspace 做车间无纸化一个具体技巧车辆厂 PLM 上线后最大的价值往往体现在车间。设计在 NX 里改了模型车间工人手里的平板能立刻看到最新版本而且能旋转、剖切、看装配动画。这个场景靠 Active Workspace 就能实现不需要给每个工位装 NX。具体做法是在 Teamcenter 里配置 Active Workspace 的车间视图只显示已发布的、当前有效的 BOM 和可视化文件然后给车间平板装 Active Workspace 的移动客户端用只读账号登录绑定到对应工位。这里有个技巧车辆厂的装配现场往往网络不稳定所以要在本地缓存最近查看的模型。Active Workspace 支持离线缓存但默认只缓存缩略图。要缓存完整模型需要在服务器端配置FMS的缓存策略把车间常用的装配体标记为“高优先级缓存”。另外车间工人不习惯用鼠标所以要在平板上配置手势操作双指旋转、单指平移、双击剖切。这些配置在 Active Workspace 的管理界面里都能改不需要写代码。验证方法很简单在 NX 里改一个零件的尺寸走完变更流程发布然后看车间平板上的模型是否在 5 分钟内更新。如果没更新检查 Active Workspace 的缓存刷新周期默认是 15 分钟可以改成 5 分钟。但改太短会增加服务器压力车辆厂一般设 10 分钟比较平衡。我做了这么多年车辆厂 PLM最大的教训是别信 PPT 上的“无缝集成”所有集成都是要调参数的。NX 和 Teamcenter 的集成尤其如此版本匹配、端口开放、环境变量一个不对就报错。所以每次上线前我都会自己拿一个真实的转向架装配体从检出、修改、检入、升版、发布走一遍全流程走通了才敢让其他人用。希望帮到你。本文还有配套的精品资源点击获取

相关新闻

C++ cout格式化输出全解析:从标志位到流操纵器

C++ cout格式化输出全解析:从标志位到流操纵器

1. 这不是“语法糖”&#xff0c;而是C程序员每天都在用的输出控制权你有没有在调试时疯狂加cout << "x" << x << ", y" << y << endl;&#xff0c;结果输出一堆挤在一起、小数点后位数乱飞、正负号对不齐的数字&#xff1f…

2026/10/12 23:19:49 阅读更多 →
无人机ROS控制程序包架构设计与真机调试实战

无人机ROS控制程序包架构设计与真机调试实战

1. 从零拆解一个无人机ROS控制包的真实全貌搞无人机ROS开发的人&#xff0c;几乎都经历过这样一个阶段&#xff1a;仿真里飞得挺稳&#xff0c;一到真机就各种飘、各种炸&#xff0c;最后发现根子不在PID参数上&#xff0c;而在整个控制程序包的架构就没搭对。我前后做过几个基…

2026/10/12 23:19:49 阅读更多 →
64位ROP链构造原理与实战:从调用约定到execve利用

64位ROP链构造原理与实战:从调用约定到execve利用

1. 项目概述&#xff1a;为什么64位ROP链构造是PWN实战的分水岭在攻防世界PWN进阶区&#xff0c;“welpwn”这道题几乎是所有刚跨过栈溢出基础门槛的学习者必经的一道坎。它不考花里胡哨的堆利用技巧&#xff0c;也不依赖内核漏洞&#xff0c;而是用最纯粹的方式拷问你对64位程…

2026/10/12 23:19:49 阅读更多 →

最新新闻

LiteLLM实战:统一大模型API网关的部署、路由与预算控制

LiteLLM实战:统一大模型API网关的部署、路由与预算控制

做AI应用这一年多&#xff0c;我最大的感受是&#xff1a;模型本身其实不是瓶颈&#xff0c;真正让人头大的是怎么把一堆杂七杂八的模型接入、路由、计费、限流这些东西收拾利索。LiteLLM这个开源项目&#xff0c;说白了就是帮你把这件事打包干完——它把市面上主流的大模型API…

2026/10/13 8:38:54 阅读更多 →
大模型Agent技能库设计:从工具调用到编排的工程实践

大模型Agent技能库设计:从工具调用到编排的工程实践

接手 agent-skills 这个选题时&#xff0c;我脑子里马上浮现出前段时间做某客服智能体项目时被技能设计折磨的经历。agent-skills&#xff0c;说白了就是给大模型 Agent 配备的"能力工具箱"&#xff0c;让它能按需调用搜索、计算、查库存、发消息这些具体动作。它不是…

2026/10/13 8:38:54 阅读更多 →
CFCA精品可可认证:证书之外,校友网络才是真正的行业入场券

CFCA精品可可认证:证书之外,校友网络才是真正的行业入场券

我见过太多人冲着“证书”去报名&#xff0c;却忽略了证书背后那张真正值钱的关系网。CFCA&#xff0c;一个在精品可可行当里低调但口碑很硬的专业认证项目&#xff0c;它的校友网络是我近几年见过最典型的“证书圈子”组合。精品可可这行&#xff0c;技术固然重要&#xff0c;…

2026/10/13 8:38:54 阅读更多 →
ClickHouse性能调优实战:从system库到工具组合的全链路指南

ClickHouse性能调优实战:从system库到工具组合的全链路指南

1. 调优第一步&#xff1a;把ClickHouse自带的system库当成第一套性能工具箱 接手ClickHouse集群运维的第一年&#xff0c;我踩得最深的一个坑就是&#xff1a;服务变慢之后不知道从哪儿下手抓原因。那时候我习惯先看机器CPU和内存&#xff0c;再翻日志&#xff0c;折腾半小时还…

2026/10/13 8:38:54 阅读更多 →
AI编码工具冲击下,程序员真正的护城河到底是什么?

AI编码工具冲击下,程序员真正的护城河到底是什么?

大约是半年前&#xff0c;我接到一个订单中心模块的重构任务&#xff0c;顺手把一部分“状态流转”的代码丢给了某主流AI编码工具。 当时的心态其实是试探性的&#xff0c;觉得它能生成一个骨架就算成功&#xff0c;毕竟这个模块牵扯到订单取消、超时关单、支付回调、幂等控制…

2026/10/13 8:38:54 阅读更多 →
基于PaddleOCR与PyQt5的GUI车票识别系统设计与实现

基于PaddleOCR与PyQt5的GUI车票识别系统设计与实现

简介&#xff1a;这是一套基于GUI的OCR车票识别完整毕业设计项目&#xff0c;面向计算机视觉、机器学习方向的本科生及入门开发者&#xff0c;重点解决车票日期、车次、座位号等关键信息的自动提取与可视化操作问题。压缩包共82个文件&#xff0c;整体约4.01MB&#xff0c;包含…

2026/10/13 8:37:52 阅读更多 →

日新闻

物联网系统集成避坑指南:从选型到验收的关键要点

物联网系统集成避坑指南:从选型到验收的关键要点

做了这么多年物联网系统集成的项目&#xff0c;我最大的感受是&#xff0c;大部分坑不是出在技术前沿&#xff0c;而是出在一些看起来很平常的地方。设备选了便宜的、协议没问清楚、现场没摸透、验收标准写得含糊——这些细枝末节&#xff0c;最后都会变成延期、超支和扯皮的大…

2026/10/13 0:00:57 阅读更多 →
ESP32舵机控制全攻略:从PWM原理到高级玩法与常见故障排查

ESP32舵机控制全攻略:从PWM原理到高级玩法与常见故障排查

如果你玩ESP32有一阵子了&#xff0c;很难不碰到舵机控制这道坎。做智能小车要转方向&#xff0c;做机械臂要抬关节&#xff0c;做云台要偏航俯仰&#xff0c;背后都是同一个东西在干活&#xff1a;舵机。而我见过太多人卡在“代码能编译、舵机就是不听话”这个阶段&#xff0c…

2026/10/13 0:00:57 阅读更多 →
CAN总线原理与STM32实战:抗干扰、仲裁、错误处理全解析

CAN总线原理与STM32实战:抗干扰、仲裁、错误处理全解析

1. 为什么CAN总线至今仍是工业现场的“硬通货”&#xff1f;——从汽车底盘到智能温室的真实需求你有没有拆过一辆老款燃油车的中控台&#xff1f;或者调试过某高校实验室里那台跑着Modbus协议却频频丢帧的PLC控制柜&#xff1f;又或者&#xff0c;在某个农业物联网项目里&…

2026/10/13 0:00:57 阅读更多 →

周新闻

流感时间序列预测实战:ARIMA/LSTM全流程拆解与避坑指南

流感时间序列预测实战:ARIMA/LSTM全流程拆解与避坑指南

简介&#xff1a;基于 ARIMA、LSTM、Transformer 等模型的流感时间序列预测 Python 源码&#xff0c;面向计算机相关专业课程设计与期末大作业学生&#xff0c;以及项目实战学习者。内容覆盖预处理、平稳性检验、定阶、残差分析、多模型对比预测的完整时序建模流程&#xff0c;…

2026/10/13 2:54:56 阅读更多 →
影刀RPA新手教程:键盘模拟输入实战——输入文本与模拟按键的区别

影刀RPA新手教程:键盘模拟输入实战——输入文本与模拟按键的区别

影刀RPA新手教程&#xff1a;键盘模拟输入实战——输入文本与模拟按键的区别 做影刀RPA自动化&#xff0c;十个新手有八个栽在"往输入框里填东西"这件事上&#xff1a;要么填不进去&#xff0c;要么填了一半&#xff0c;要么直接把原来内容追加在后面。这背后的根因&…

2026/10/12 0:16:38 阅读更多 →
影刀RPA新手教程:阅文起点小说数据采集实战——书籍信息与章节内容

影刀RPA新手教程:阅文起点小说数据采集实战——书籍信息与章节内容

影刀RPA新手教程&#xff1a;阅文起点小说数据采集实战——书籍信息与章节内容 1. 认识影刀&#xff1a;什么场景该用RPA采小说数据 起点中文网的页面结构相对稳定——分类榜单、书籍详情、章节内容三块独立页面&#xff0c;跳转链路清晰。这种场景非常适合影刀自动化&#x…

2026/10/13 1:58:08 阅读更多 →

月新闻

我发现了一个新思路:用 Remotion + Claude Code 像写代码一样自动化生成短视频

我发现了一个新思路:用 Remotion + Claude Code 像写代码一样自动化生成短视频

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/12 21:05:09 阅读更多 →
Windows下 Codex 中 Chrome 和 Computer Use 插件不可用问题排查及解决参考方式:TaoToken 统一 Key 配置与验证

Windows下 Codex 中 Chrome 和 Computer Use 插件不可用问题排查及解决参考方式:TaoToken 统一 Key 配置与验证

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/12 14:48:49 阅读更多 →
黑夜航拍船只数据集训练YOLOV5模型全流程解析

黑夜航拍船只数据集训练YOLOV5模型全流程解析

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/12 18:11:17 阅读更多 →