Files
cnc_wams/web-rtcp-5axis-xyzbc-trt-sim-plan/doc/assets/xyzbc-trt-logic-map.svg
2026-07-02 08:01:34 -04:00

98 lines
5.6 KiB
XML
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
<svg xmlns="http://www.w3.org/2000/svg" width="1800" height="1100" viewBox="0 0 1800 1100">
<defs>
<style>
text { font-family: "Noto Sans CJK SC", "Microsoft YaHei", Arial, sans-serif; fill: #172033; }
.title { font-size: 42px; font-weight: 700; }
.sub { font-size: 24px; fill: #475569; }
.box { stroke-width: 3; rx: 18; }
.file { fill: #eef6ff; stroke: #2563eb; }
.core { fill: #f4fbf7; stroke: #16a34a; }
.ui { fill: #fff7ed; stroke: #f97316; }
.data { fill: #f8fafc; stroke: #64748b; }
.warn { fill: #fef2f2; stroke: #ef4444; }
.head { font-size: 28px; font-weight: 700; }
.body { font-size: 20px; }
.small { font-size: 18px; fill: #475569; }
.line { stroke: #334155; stroke-width: 3; fill: none; marker-end: url(#arrow); }
.dash { stroke-dasharray: 8 7; }
</style>
<marker id="arrow" markerWidth="14" markerHeight="14" refX="12" refY="7" orient="auto" markerUnits="strokeWidth">
<path d="M 0 0 L 14 7 L 0 14 z" fill="#334155"/>
</marker>
</defs>
<rect width="1800" height="1100" fill="#ffffff"/>
<text x="60" y="70" class="title">xyzbc-trt 程序逻辑总图</text>
<text x="60" y="112" class="sub">从文件装载、运动学、HAL、界面、执行到证据采样的完整逻辑链路。</text>
<rect x="60" y="170" width="330" height="170" class="box file"/>
<text x="95" y="218" class="head">配置与程序文件</text>
<text x="95" y="262" class="body">xyzbc-trt.ini</text>
<text x="95" y="298" class="body">xyzbc-trt.xml</text>
<text x="95" y="334" class="body">switchkins_postgui.hal</text>
<rect x="60" y="380" width="330" height="210" class="box file"/>
<text x="95" y="428" class="head">演示与参数文件</text>
<text x="95" y="472" class="body">xyzbc_switchkins.ngc</text>
<text x="95" y="508" class="body">428/429/430 remap</text>
<text x="95" y="544" class="body">xyzbc-trt.tbl / xyzbc.var</text>
<text x="95" y="580" class="body">remap_subs/*.ngc</text>
<rect x="470" y="155" width="410" height="230" class="box core"/>
<text x="510" y="205" class="head">启动与装载</text>
<text x="510" y="250" class="body">rip-environment 设置 RIP 环境</text>
<text x="510" y="286" class="body">linuxcnc 读取 xyzbc-trt.ini</text>
<text x="510" y="322" class="body">HALFILE / POSTGUI_HALFILE 装配</text>
<text x="510" y="358" class="body">open_file = ./demos/xyzbc_switchkins.ngc</text>
<rect x="470" y="430" width="410" height="240" class="box core"/>
<text x="510" y="480" class="head">运动学与 HAL</text>
<text x="510" y="524" class="body">xyzbc-trt-kins.c</text>
<text x="510" y="560" class="body">switchkins.c / kinstype.is.N</text>
<text x="510" y="596" class="body">trtfuncs.c / xyzbc forward-inverse</text>
<text x="510" y="632" class="body">motion.switchkins-type &lt;= motion.analog-out-03</text>
<text x="510" y="668" class="body">tool-offset / x-offset / z-offset / conventional-directions</text>
<rect x="965" y="155" width="370" height="230" class="box ui"/>
<text x="1000" y="205" class="head">界面与交互</text>
<text x="1000" y="249" class="body">AXIS 主界面</text>
<text x="1000" y="285" class="body">PyVCP SWITCHKINS 面板</text>
<text x="1000" y="321" class="body">MDI / 点动 / DRO / 程序</text>
<text x="1000" y="357" class="body">vismach-clear / 相机视图</text>
<rect x="965" y="430" width="370" height="240" class="box ui"/>
<text x="1000" y="480" class="head">三维机床模型</text>
<text x="1000" y="524" class="body">xyzbc-trt-gui.py</text>
<text x="1000" y="560" class="body">table-x / saddle-y / spindle-z</text>
<text x="1000" y="596" class="body">tilt-b / rotate-c / tool-offset</text>
<text x="1000" y="632" class="body">Three.js 等价模型</text>
<text x="1000" y="668" class="body">显示路径、刀具、工件、姿态</text>
<rect x="1405" y="205" width="330" height="205" class="box data"/>
<text x="1440" y="255" class="head">运行状态</text>
<text x="1440" y="299" class="body">task_state / interp_state</text>
<text x="1440" y="335" class="body">joint.*.pos-fb / DRO</text>
<text x="1440" y="371" class="body">kinstype.is-0/1/2</text>
<rect x="1405" y="470" width="330" height="205" class="box data"/>
<text x="1440" y="520" class="head">路径证据 JSON</text>
<text x="1440" y="564" class="body">previewPath / executionPath</text>
<text x="1440" y="600" class="body">samplePeriodMs = 20</text>
<text x="1440" y="636" class="body">screenshots / compare-report</text>
<rect x="470" y="760" width="1265" height="220" class="box warn"/>
<text x="510" y="812" class="head">关键约束</text>
<text x="510" y="856" class="body">1. switchkins 切换前必须同步解释器和 motion程序中用 M428/M429/M430 或等价 HAL/MDI 触发。</text>
<text x="510" y="892" class="body">2. 真实系统与 Web 系统的路径采样周期必须一致,当前统一为 20 ms禁止一端快一端慢。</text>
<text x="510" y="928" class="body">3. UI 只反映 HAL 和状态机,不直接篡改机床内部状态;所有操作必须回到 HAL/任务/运动学层。</text>
<text x="510" y="964" class="body">4. 五轴姿态、tooloffset、x/z offset、conventional-directions 与原型系统一致后,才能进入对比验收。</text>
<path d="M390 255 L470 255" class="line"/>
<path d="M390 490 L470 490" class="line"/>
<path d="M880 265 L965 265" class="line"/>
<path d="M880 545 L965 545" class="line"/>
<path d="M1335 255 L1405 255" class="line"/>
<path d="M1335 545 L1405 545" class="line"/>
<path d="M1130 395 L1130 430" class="line dash"/>
<path d="M1550 410 L1550 470" class="line"/>
</svg>