feat(gui,cli): 界面全面中文化并优化打包选项为紧凑网格布局

- gui.py: 全部用户可见文本直接写中文,选项区从 QFormLayout 改为 QGridLayout 两列布局,缩小窗口默认高度至720px,收紧控件间距
- cli.py: argparse 帮助文本和输出消息全部中文化
- docs: 新增 A1 SwapMod 换板 G-code 内容分析文档,按三类策略(基础/双轮抖板/安全换板)对比5个模板差异
- swap_gcode: 新增 LX_0.01.01 基础弹板模板
This commit is contained in:
2026-07-27 11:22:40 +08:00
parent 6ac5331932
commit c5849af14e
4 changed files with 336 additions and 134 deletions
+138
View File
@@ -0,0 +1,138 @@
# A1 SwapMod 换板 G-code 分析
**版本**: v0.5.0 | **日期**: 2026-07-27
## 文件清单
共 5 个模板,按内容复杂度分为三类:
| 类型 | 包含文件 | 主要特征 |
|------|----------|----------|
| 类型 A — 基础弹射 | `LX_0.01.01.gcode` | G380 S3/S2 交替下压,单轮弹射,无 M400/M17 |
| 类型 B — 双轮抖板 | `LX_0.07.22.gcode` | G380 S3/S2 交替下压,双轮 Shake,无 M400/M17 |
| 类型 C — 安全换板 | `LX_1.02.26.gcode`<br>`LX_1.02.26_slow.gcode`<br>`LX_1.02.26_slow_safeZ.gcode` | G1 Z- + G380 S2 下压,M400/M17 保护,双轮 Shake |
## 类型 A — 基础弹板(LX_0.01.01
**行数**: 35 行 | **复杂度**: 最低
```
Z 轴下压(G380 S3/S2 交替)→ Y 归零 → 推到 Y266
→ Z 轴轻压(G380 S2 Z20)→ 关闭软限位(M211 X0 Y0 Z0
→ Y266→Y0 高速前推 → Z 轴回压 → 单次弹射 Y-2 F5000
→ 归位 Y150
```
**特点**
- `M211 X0 Y0 Z0` 关闭软限位,允许超行程运动(其他版本均无此行)
- 仅单轮弹射,无 Shake 抖板机制
- 使用相对坐标 `G91` 大量操作
-`M400`/`M17` 保护
- 换板结束后 Z 轴停留在低位
## 类型 B — 双轮抖板(LX_0.07.22
**行数**: 100 行 | **复杂度**: 中等
```
G28 Y → Y262 → Z 轴下压(G380 S3/S2 ×4轮)
→ G4 P2000 → Y15→Y150→Y40 → G380 S2 Y264
→ Z 轴上升(G1 Z-55)→ Y120 → G28 Y → Y-1
→ 抖板第1轮(6段: 1→1.5→2→2.5→3→3.5mm 往复)
→ Y235→Y110→Y200 → G380 S2 Y264 → G4 P1000
→ Y40 → Y-2 F5000
→ 抖板第2轮(6段: 1→1.5→2→2.5→3→3.5mm 往复)
→ Y120 归位
```
**特点**
- 首次引入双轮抖板,且抖板偏移量最大(最大 3.5mm)
- G380 S3/S2 交替多轮下压确保板贴合
-`M400`/`M17`
## 类型 C — 安全换板(LX_1.02.26 / slow / slow_safeZ
**行数**: 115~128 行 | **复杂度**: 最高
### C1 — 标准版(LX_1.02.26
```
G28 Y → Y262 F2000 → M400 → M17 Z0.4
→ Z 轴下压(G1 Z- + G380 S2 纯力控,4轮)
→ G4 P2000 → Y15→Y150→Y40 → G380 S2 Y264
→ Z 轴上升(G1 Z-70)→ Y200 → Y25 → Y-1 F20000 → G28 Y
→ 抖板第1轮(5段: 1→1.5→2→2.5→2.5mm 往复)
→ Y235→Y110→Y200 → G380 S2 Y264 → G4 P1000
→ Y25 → Y-2 F20000
→ 抖板第2轮(5段: 1→1.5→2→2.5→2.5mm 往复)
→ Y262→Y120 归位
```
### C2 — 慢速版(LX_1.02.26_slow
与 C1 完全相同,仅 **一处差异**
- 第2轮弹射 `Y-2 F20000``Y-2 F1000`
### C3 — 慢速安全版(LX_1.02.26_slow_safeZ
与 C2 完全相同,尾部追加 **Z 轴安全回位**
```gcode
G4 P3000 ; 驻留 3 秒
M400
G90
G1 Z30 F600 ; Z 轴升至 30mm
M400
```
> 由 QQ 群用户 **风信子号** 提供
**特点**
- 引入 `M400`(同步等待)+ `M17 Z0.4`(降低 Z 电机电流),防止碰撞损伤
- Z 轴下压从 G380 S3/S2 交替改为 G1 Z- + G380 S2 纯力控
- 抖板偏移收窄到 2.5mm(原 3.5mm
- Y262 归位提速 F1200→F2000
## 三类对比总表
| 特性 | 类型 A | 类型 B | 类型 C1 | 类型 C2 | 类型 C3 |
|------|--------|--------|---------|---------|---------|
| **M400/M17** | ❌ | ❌ | ✅ | ✅ | ✅ |
| **M211 关限位** | ✅ | ❌ | ❌ | ❌ | ❌ |
| **Z 下压方式** | G380 S3/S2 | G380 S3/S2 | G1 Z-+G380 S2 | G1 Z-+G380 S2 | G1 Z-+G380 S2 |
| **抖板轮数** | 0 | 2 | 2 | 2 | 2 |
| **抖板最大偏移** | — | 3.5mm | 2.5mm | 2.5mm | 2.5mm |
| **Z 轴上升量** | — | -55mm | -70mm | -70mm | -70mm |
| **第2轮弹射速度** | F5000 | F5000 | F20000 | F1000 | F1000 |
| **Safe Z 回位** | ❌ | ❌ | ❌ | ❌ | ✅ Z30 |
| **总行数** | 35 | 100 | 115 | 115 | 128 |
## 换板原理
A1 SwapMod 利用 **Y 轴运动 + 热床摩擦力** 来弹射和更换打印板:
- **弹射** — Y 轴推到后端 → Z 轴下压使板贴合热床 → Y 轴骤推到前端 → 惯性 + 力传感器校准 → Z 轴上升留出空间 → Y 轴高速反弹把旧板弹下
- **抖板** — 在板脱落位置做微小 Y 轴往复,通过振动确保板完全脱离
- **推板** — `G380 S2 Y264` 力控推到最前端,为下一块板留出插入空间
## 关键 G-code 指令
| 指令 | 含义 |
|------|------|
| `G28 Y` | Y 轴归零(寻找限位开关) |
| `G380 S2 <目标>` | **A1 专有** — 力传感器目标位移动。以预设力矩正向推进 |
| `G380 S3 <目标>` | **A1 专有** — 力传感器碰撞退出。同向移动直到力反馈下降 |
| `M400` | 等待所有运动队列清空 |
| `M17 Z0.4` | Z 轴电机电流降至 0.4A,降低运动阻力 |
| `M211 X0 Y0 Z0` | 关闭软限位,允许超行程运动 |
| `G4 Pxxx` | 驻留 xxx 毫秒 |
| `G91` / `G90` | 相对坐标 / 绝对坐标切换 |
## 建议
推荐保留两个模板作为不同使用场景:
| 场景 | 推荐模板 | 原因 |
|------|----------|------|
| **日常推荐** | C3 — 慢速安全版 | 弹射温和、Z 轴安全回位,最不容易出问题 |
| **追求速度** | C1 — 标准版 | 弹射速度快、节拍最短 |
| **实验/备选** | A — 基础弹板 | 极简实现,适合调试 |