#region << 版 本 注 释 >> /*---------------------------------------------------------------- * 命名空间:WIDESEAWCS_QuartzJob * 创建者:胡童庆 * 创建时间:2024/8/2 16:13:36 * 版本:V1.0.0 * 描述:堆垛机接口层 * * ---------------------------------------------------------------- * 修改人: * 修改时间: * 版本:V1.0.1 * 修改说明: * *----------------------------------------------------------------*/ #endregion << 版 本 注 释 >> using HslCommunication; using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; using WIDESEAWCS_Communicator; using WIDESEAWCS_Core.Enums; using WIDESEAWCS_QuartzJob.DeviceBase; using WIDESEAWCS_QuartzJob.DTO; using WIDESEAWCS_QuartzJob.StackerCrane; namespace WIDESEAWCS_QuartzJob { /// /// 堆垛机接口层 /// public interface IStackerCrane : IDevice { /// /// 堆垛机通讯对象 /// BaseCommunicator Communicator { get; } /// /// 堆垛机协议信息 /// List DeviceProDTOs { get; } /// /// 堆垛机协议明细信息 /// List DeviceProtocolDetailDTOs { get; } /// /// 上一次执行的任务 /// int LastTaskNum { get; } /// /// 当前正在执行的任务 /// int CurrentTaskNum { get; } /// /// 上一次任务类型 /// int? LastTaskType { get; set; } /// /// 与设备的心跳 /// void Heartbeat(); /// /// 发送任务命令 /// /// 任务命令 /// bool SendCommand(T command) where T : IDataTransfer, new(); /// /// 堆垛机任务完成事件 /// event EventHandler StackerCraneTaskCompletedEventHandler; /// /// 读取PLC协议地址的数据 /// /// 协议信息的枚举对象信息。 /// 读取数据的类型对象信息。 /// 枚举值 /// 读取到的数据 TRsult GetValue(TEnum value) where TEnum : Enum; /// /// 根据参数名称写入堆垛机对应的数据。 /// /// 参数名称枚举类型。 /// 要写入的数据类型。 /// 参数名称。 /// 要写入的数据。 /// 返回写入成功或失败 /// bool SetValue(TEnum @enum, TValue value) where TEnum : Enum where TValue : notnull; } }