using XP.Hardware.MotionControl.Abstractions.Enums; namespace XP.Hardware.MotionControl.Abstractions { /// /// 旋转轴策略接口 | Rotary Axis Strategy Interface /// 定义旋转轴的运动控制能力 | Defines rotary axis motion control capabilities /// public interface IRotaryAxis { /// 轴标识 | Axis identifier RotaryAxisId Id { get; } /// 实际角度(度)| Actual angle (degrees) double ActualAngle { get; } /// 轴状态 | Axis status AxisStatus Status { get; } /// 是否启用 | Is enabled bool Enabled { get; } /// 移动到目标角度 | Move to target angle /// 目标角度(度)| Target angle (degrees) /// 操作结果 | Operation result MotionResult MoveToTarget(double targetAngle, double? speed = null); /// Jog 启动 | Jog start /// true=正向,false=反向 | true=positive, false=negative /// 操作结果 | Operation result MotionResult JogStart(bool positive); /// Jog 停止 | Jog stop /// 操作结果 | Operation result MotionResult JogStop(); /// 回零 | Home /// 操作结果 | Operation result MotionResult Home(); /// 停止 | Stop /// 操作结果 | Operation result MotionResult Stop(); /// 从 PLC 更新状态 | Update status from PLC void UpdateStatus(); } }