UVPrinter v1.0 发版说明(内部测试)
版本: v1.0.0
构建日期: 2026-04-21
性质: 内部测试版(非正式发布)
发布对象: 内部测试人员、试点现场工程师
一、本版是什么
这是 UVPrinter 的第一个可交付版本,包含从加载图像到驱动硬件打印的端到端完整管线,功能覆盖:
- Onepass 多喷头 UV 打印控制
- 分色 / 抖动 / 羽化 / 喷嘴映射等 RIP 核心
- 多头舰队(HeadFleet)管理与并行数据传输
- 打印历史持久化(SQLite)
- Underrun 自愈策略、急停、断连重试
- 波形配置、OTA 固件升级
- 设备曲线(DeviceCurve)色彩校准
- PRE-RIP TIFF 通道套件导入
- 一键诊断包导出、崩溃自动兜底
二、本版新增 / 变更(相对上一轮开发快照)
新增
- MPC Console 新外壳
UI 已切换为左侧 首页 / 打印 / 设备 / 历史 / 高级 导航,顶部保留设备状态、告警、连接 / 断开和急停。日常打印改为 打印 页三步流程:选择文件、校验输入、提交打印。
- 测试图流程
首页可生成测试图文件夹;生成后的 PNG 通过 打印 页三步流程提交。若现场构建仍启用专项测试向导,可继续使用喷嘴检测 / 色彩套准 / 按-bank 套准等场景验收提示。
- 设备状态维护卡
首页 KPI、报警中心和 高级 维护页展示电源状态、24VP 过流保护提示、站位输入、相机 / Kicker 辅助输出、闪喷、授权只读状态和时基状态,方便现场快速判断能否继续打印。
- 喷头排布和套准工具
打印 页显示只读有效分辨率;喷头排布、4/2/1 色排布、bank 走纸偏移和颜色模式一致性提示统一放在 设备 页和 打印 高级设置的边界内。
- OTA 升级增强
高级 -> 固件升级 页面显示包名称、目标版本、产品、镜像、设备当前版本和待提交版本;升级前会断开打印通道,并在设备重启或 IP 变化时按 SN 重新确认目标。
- 高级工具门控
高级 默认锁定,解锁后包含版本信息、固件升级、高压配置、闪喷操作、波形设置、鉴权管理和系统设置,降低操作员误触维护动作的风险。
- 崩溃兜底机制
未处理异常会自动生成诊断包到桌面(UVPrinter_Crash_*.zip),路径复制到剪贴板,弹对话框提示用户。防重入,崩溃不会雪崩。
- 版本号注入
状态栏显示 UV Printer v1.0.0 (abc1234),sha 跟随 git commit,诊断包和日志也会带版本号,问题回溯不再靠猜。
- Windows 安装包
Inno Setup 打出的 self-contained exe,无需单独装 .NET 运行时。
改进
- 日志策略:主日志按天滚动 + 50MB 单文件上限,协议帧 hex dump 独立通道。
%LocalAppData%\UVPrinter\下统一管理用户数据(日志 / 历史库 / 路径配置)。- 连接状态跟随真实心跳更新;设备重启后如 IP 变化,优先通过自动发现和 SN 确认同一台设备。
- 打印暂停后可从首页当前作业卡继续;
Space也可用于暂停 / 继续。 闪喷简化为连续模式:设置频率后开始闪喷,持续喷射直到点击停止。- 在线文档开始支持界面截图,便于现场按图定位入口。
三、测试重点建议
按优先级列出。越靠前的风险越大、越值得集中验证。
P0 — 核心通路(必须通过)
- 完整打印流程:加载图像 → 设置 → 添加队列 → 连接 → 打印 → 完成。
- 单头、多头分别跑。
- 小图(< 1 MB)/ 中图(~20 MB)/ 大图(> 100 MB)都试。
- 多喷头拼接
- 2 头、3 头、4 头各打一张过拼接的大图。
- 看拼缝:斜线是否连续、圆是否不变形、色块是否无缝。
NozzleOverlap调大/调小各试一次,观察羽化是否生效。
- 暂停 / 恢复 / 停止 / 急停
- 打印中各按钮都摁一遍,确认硬件和软件状态一致。
- 急停后再次打印能否正常起步。
- 断连恢复
- 打印中拔网线 / 关设备电源 → 看软件反应。
- 重连后能否继续 / 能否重打。
P1 — 稳健性(常见使用场景)
- 连续打印 N 条(「打印全部」)
- 让队列挂 10+ 条跑一宿,看第二天是否还在。
- 日志中搜 Underrun / 异常堆栈,反馈出现频率。
- Underrun 触发 & 自愈
- 故意把速度调极高 / 在慢磁盘上运行,让 Underrun 发生。
- 看自动暂停是否触发、恢复后是否继续。
- 测试图流程
- 首页
生成测试图能生成测试图文件夹。 - 生成后的测试图能通过
打印页三步流程提交。 - 若现场构建仍启用专项测试向导,6 个场景各至少跑一次。
- 诊断包导出
- 主动点「导出诊断包」,zip 打开后内容完整?history.db 能用 DB Browser for SQLite 打开?
- 故意触发一次异常(比如断网后强打),看崩溃诊断包是否生成、路径剪贴板是否有效。
- 打印历史
- 打印 50+ 条后打开历史窗口,性能是否可接受。
- 批量删除是否按预期工作。
P2 — 边界 / 次要
- OTA 固件升级
- 先用非生产设备练手,不要在生产机试第一次。
- 确认包信息、设备版本、待提交版本和活动日志是否清晰。
- 升级中断测试(拔网线)后能否恢复 / 提示用户重试。
- 设备重启或 IP 变化后,是否能按 SN 重新确认目标设备。
- 波形下发
- 加载 / 下发 / 保存到 flash 的完整流程。
- 错误文件的报错信息是否清晰。
- 设备曲线
- 加载后同一张图有无色彩变化。
- 曲线文件损坏时是否报错而不是闪退。
- 路径带中文 / 空格的场景
- 源图片路径带中文 / 空格
- RIP 输出目录改到
D:\我的打印\ - 安装到
C:\Program Files\UVPrinter\(默认带空格)
- 同一设备多个实例启动
- 同时开两个 UVPrinter 窗口,看是否抢连接端口导致异常。
四、已知问题 / 限制
出厂时已知、不必重复反馈的问题:
| # | 问题 | 当前状态 | 计划 |
|---|---|---|---|
| K1 | 安装包未签名,Windows 首次运行弹 "无法识别的发布者" | 测试期妥协 | 正式版引入代码签名证书 |
| K2 | 升级包 / 自动更新机制未实现,每次新版需手动重装 | 已知 | 待 Velopack 或类似方案 |
| K3 | 仅支持 Windows 10 1809+(10.0.17763+)/ Windows 11 x64 | 硬性限制 | 不计划支持更老系统 |
| K4 | 多语言安装向导仅英文 | 轻量问题 | 后续加入中文语言包 |
| K5 | 打印历史批量导出(CSV)未实现 | 已知 | 下一版补 |
| K6 | Underrun 策略参数(阈值 / 行为)尚未暴露到 UI,目前只能改代码 | 已知 | 下一版暴露为设置项 |
| K7 | 部分 ViewModel 有可空性警告(编译能过,运行时不受影响) | 技术债 | 持续清理 |
| K8 | 应用第一次启动后,如 %LocalAppData% 所在盘满了可能失败 |
环境限制 | 加启动自检 |
| K9 | 不支持专业 RIP(Wasatch / ColorGATE / Caldera / ONYX / EFI 等)输出的 PRN 文件;支持源图像和已准备好的 PRE-RIP TIFF 通道套件目录 | 已知 | PRN 兼容性后续单独评估 |
五、问题反馈流程
5.1 通用 bug
- 记录现象(做了什么 → 期望 → 实际)。
- 若能稳定复现:写清最小复现步骤。
- 导出诊断包(首页
导出诊断或高级->系统设置)。 - 提交到内部 issue 系统 / 测试群,必附:
- 版本号(状态栏右下角,例 "v1.0.0 (abc1234)")
- daily build build id 或安装包文件名
docs-index.json或README_build.txt中对应的文档链接- 使用的是 HTML 在线文档还是 PDF 离线文档
- 诊断包 zip
- 截图或视频
- 现象描述
- 复现步骤和期望结果
5.2 崩溃
- 桌面会自动出现
UVPrinter_Crash_<时间戳>.zip。 - 路径已复制到剪贴板——直接 Ctrl+V 粘到反馈群。
- 把 zip 发回来即可(里面已包含异常堆栈、上下文日志、打印历史、环境信息)。
5.3 紧急故障(现场阻断性)
打电话。联系人:[项目经理填入]。
5.4 文档建议
本手册 / 发版说明发现错误或有改进建议,可直接在测试群 @ 文档维护人 [填入]。
六、下一版路线图(仅供参考)
| 计划项 | 优先级 |
|---|---|
| 代码签名证书 → 消除 SmartScreen 警告 | 高 |
| Velopack / Squirrel 自动更新 | 高 |
| Underrun 策略参数暴露到 UI | 中 |
| 打印历史 CSV 导出 | 中 |
| 安装向导中文化 | 中 |
| 电脑端波形可视化编辑器 | 低 |
| 远程诊断(通过云端协议) | 低 |
以上为预期,具体排期以产品计划为准。
七、致谢
感谢所有参与内测的工程师和现场人员。你们的诊断包和反馈是下一版能不能更稳定的关键。
祝测试顺利。