using System.Collections.Generic; using XP.Hardware.MotionControl.Abstractions.Enums; namespace XP.Hardware.MotionControl.Abstractions { /// /// 运动系统顶层管理接口 | Motion System Top-Level Management Interface /// 持有所有轴和安全门实例 | Holds all axis and safety door instances /// public interface IMotionSystem { /// 按 AxisId 获取直线轴 | Get linear axis by AxisId /// 直线轴标识 | Linear axis identifier /// 直线轴实例 | Linear axis instance ILinearAxis GetLinearAxis(AxisId axisId); /// 按 RotaryAxisId 获取旋转轴 | Get rotary axis by RotaryAxisId /// 旋转轴标识 | Rotary axis identifier /// 旋转轴实例 | Rotary axis instance IRotaryAxis GetRotaryAxis(RotaryAxisId axisId); /// 安全门实例 | Safety door instance ISafetyDoor SafetyDoor { get; } /// 轴复位实例 | Axis reset instance IAxisReset AxisReset { get; } /// 所有直线轴 | All linear axes IReadOnlyDictionary LinearAxes { get; } /// 所有旋转轴 | All rotary axes IReadOnlyDictionary RotaryAxes { get; } /// 更新所有轴和门的状态 | Update all axis and door status void UpdateAllStatus(); } }