1.9 KiB
1.9 KiB
applyTo
| 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
中文说明
硬件访问规则:
- 统一通过
HardwareManager作为主要硬件入口 - 不要平行新建另一套硬件访问层
- 硬件命名和组织方式保持与现有项目一致
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.
中文说明
轴名规则:
- 所有轴名都应在现有轴名定义类中声明为常量
- 命名统一使用
Axis_前缀 - 如果新增轴,必须补充常量定义,不要在业务代码中硬编码字符串轴名
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
中文说明
IO 规则:
- IO 点定义通过 CSV 配置加载
- 复用现有
DeviceIoPointDefinition和 IO 分组结构 - 如已有模拟 IO 状态机制,应保持兼容
- IO 相关命名要采用设备级命名,不要使用过于物流化的命名,除非业务明确需要
Safety Preference
- Validate device state before critical actions
- Do not assume hardware is ready
- Keep generated code conservative and traceable
中文说明
安全原则:
- 关键设备动作前先校验设备状态
- 不要默认硬件已经 ready
- 生成代码时要偏保守、可追踪