添加 MX-PD-盘古 项目文件

将 MX-PD-盘古 - new 目录下的所有文件添加到主仓库
This commit is contained in:
Shi.Ji
2026-05-18 11:43:09 +08:00
parent 03632a379d
commit e31d3560bb
739 changed files with 99783 additions and 0 deletions

View File

@@ -0,0 +1,68 @@
---
applyTo: "MainShell/Hardware/**/*.cs,MainShell/DeviceMaintance/**/*.cs,MainShell/Manual/**/*.cs,MainShell/ToolBox/**/*.cs"
---
# Hardware and IO Instructions
## Hardware Access Rules
- Reuse HardwareManager as the primary hardware entry point
- Do not invent parallel hardware access layers unless explicitly requested
- Keep hardware naming and organization consistent with existing project patterns
## <20><><EFBFBD><EFBFBD>˵<EFBFBD><CBB5>
Ӳ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʹ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
- ͳһͨ<D2BB><CDA8> `HardwareManager` <20><>Ϊ<EFBFBD><CEAA>ҪӲ<D2AA><D3B2><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
- <20><>Ҫƽ<D2AA><C6BD><EFBFBD>½<EFBFBD><C2BD><EFBFBD>һ<EFBFBD><D2BB>Ӳ<EFBFBD><D3B2><EFBFBD><EFBFBD><EFBFBD>ʲ<EFBFBD>
- Ӳ<><D3B2><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>֯<EFBFBD><D6AF>ʽ<EFBFBD><CABD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ŀһ<C4BF><D2BB>
## Axis Naming Rules
All axis names should be defined as constants in the existing axis naming class.
Naming pattern:
- Axis_ prefix
- Examples:
- Axis_SZ
- Axis_PHS_X1
- Axis_WS_X3
- Axis_Stage_Y3
If a new axis is introduced, define a constant in the existing axis name holder.
## <20><><EFBFBD><EFBFBD>˵<EFBFBD><CBB5>
<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
- <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ӧ<EFBFBD><D3A6><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϊ<EFBFBD><CEAA><EFBFBD><EFBFBD>
- <20><><EFBFBD><EFBFBD>ͳһʹ<D2BB><CAB9> `Axis_` ǰ׺
- <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><E1A3AC><EFBFBD><EFBFBD><EFBFBD><E4B3A3><EFBFBD><EFBFBD><EFBFBD><EFBFBD><E5A3AC>Ҫ<EFBFBD><D2AA>ҵ<EFBFBD><D2B5><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ӳ<EFBFBD><D3B2><EFBFBD><EFBFBD><EFBFBD>ַ<EFBFBD><D6B7><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
## IO Rules
- IO point definitions are loaded from CSV configuration
- Reuse DeviceIoPointDefinition and existing IO grouping structures
- Preserve support for simulated IO states if relevant
- Keep IO service/model/event naming device-oriented
Use:
- DeviceIoMonitorService
- DeviceIoSnapshot
- DeviceCylinderService
Avoid logistics-specific names unless the domain explicitly requires them:
- ConveyorIoService
- LoaderIoMonitor
## <20><><EFBFBD><EFBFBD>˵<EFBFBD><CBB5>
IO <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
- IO <20><EFBFBD><E3B6A8>ͨ<EFBFBD><CDA8> CSV <20><><EFBFBD>ü<EFBFBD><C3BC><EFBFBD>
- <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> `DeviceIoPointDefinition` <20><> IO <20><><EFBFBD><EFBFBD><EFBFBD>
- <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ģ<EFBFBD><C4A3> IO ״̬<D7B4><CCAC><EFBFBD>ƣ<EFBFBD>Ӧ<EFBFBD><D3A6><EFBFBD>ּ<EFBFBD><D6BC><EFBFBD>
- IO <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ҫ<EFBFBD><D2AA><EFBFBD><EFBFBD><EFBFBD><EFBFBD><E8B1B8><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ҫʹ<D2AA>ù<EFBFBD><C3B9><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ҵ<EFBFBD><D2B5><EFBFBD><EFBFBD>ȷ<EFBFBD><C8B7>Ҫ
## Safety Preference
- Validate device state before critical actions
- Do not assume hardware is ready
- Keep generated code conservative and traceable
## <20><><EFBFBD><EFBFBD>˵<EFBFBD><CBB5>
<EFBFBD><EFBFBD>ȫԭ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>
- <20>ؼ<EFBFBD><D8BC><EFBFBD><E8B1B8><EFBFBD><EFBFBD>ǰ<EFBFBD><C7B0>У<EFBFBD><D0A3><EFBFBD>豸״̬
- <20><>ҪĬ<D2AA><C4AC>Ӳ<EFBFBD><D3B2><EFBFBD>Ѿ<EFBFBD> ready
- <20><><EFBFBD>ɴ<EFBFBD><C9B4><EFBFBD>ʱҪƫ<D2AA><C6AB><EFBFBD>ء<EFBFBD><D8A1><EFBFBD>׷<EFBFBD><D7B7>