using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; namespace MainForm.ClassFile.XiaomiClass { public class AGVHelper { /// /// 容器搬运请求接⼝ /// 协议:x5 /// ⽤途: SMT装备向物流服务发送空箱搬运下线的请求;装备之间物料的纯搬运动作,不经过MES. /// PATH:${HOST /// ls/x5/task/carry/create /// X5_METHOD: createCarryTask /// #region 输入字段描述 public class Request_AGV_t { public string taskType="CARRY"; //必填:否 任务类型 ‘CARRY' public string containerCode; //必填:是 容器编码;如果⽆法知晓当前容器编码,传当前时间戳 public string startingContainerCode; //必填:是 起始点:料站点(接驳⼝/地⾯码) public string containerType; //必填:否 容器类型 public string startingArea; //必填:否 起始区域 public string targetArea; //必填:否 ⽬标区域 public string targetContainerCode; //必填:否 ⽬标料站点 } #endregion #region 输出字段描述 public class Response_AGV_t { public ResponseHeaderAGV_t header; //必填:是 响应头 public ResponseBodtyAGV_t body; //必填:是 返回值,如果有返回的话 } public class ResponseHeaderAGV_t { public int code; //200表⽰成功,⾮200表⽰失败 public string desc; //code为⾮200,这⾥表⽰具体的失败原因,如果code为200,这⾥成功的描述,可能是空 } public class ResponseBodtyAGV_t { public string taskNo; //必填:是 任务编码 } #endregion #region AGV⼊料 //1.1 AGV向装备⼊料请求 //Topic:iiot_tm_comm_control_down/tm/down/control/${portCode #region AGV向装备⼊料请求 public class Request_AGV_PassIn_t { string things; AgvService_t service; string time; } public class AgvService_t { string callId; //"1660412396530" string identifier; //"control/incoming" AgvInputItems_t inputItems; } public class AgvInputItems_t { string portCode; //接驳⼝编码 string quantity; //送料数量.空箱传0 } #endregion //1.2 装备向AGV返回【是否允许】----⼊料请求 //Topic:iiot_tm_comm_control_up/tm/up/control/agv #region 装备向AGV返回是否允许 public class Response_AGV_PassIn_t { string time; string things; AgvResponseBody_t service; } public class AgvResponseBody_t { string identifier; //"control/incoming" string callId; //"1660412396530" string executeStatus; //"SUCCESS" AgvOutputItems_t outputItems; } public class AgvOutputItems_t { string portCode; //接驳⼝编码 string message; //"agree" or "refuse } #endregion //1.3 AGV向装备发送⼊料完成 //Topic:iiot_tm_comm_control_down/tm/down/control/${portCode} #region AGV向装备发送⼊料完成 public class Request_AGV_PassInFinish_t { string things; AgvRequestPassInFin_t service; string time; } public class AgvRequestPassInFin_t { string callId; //"1660412396530" string identifier; //"control/incoming/finish" AgvInputItems_t inputItems; string time; } #endregion //1.4 装备向AGV返回⼊料完成 //Topic:iiot_tm_comm_control_up/tm/up/control/agv #region 装备向AGV返回⼊料完成 public class Response_AGV_PassInFinish_t { string time; string things; AgvResponsePassInFin_t service; } public class AgvResponsePassInFin_t { string identifier; //"control/incoming/finish" string callId; //"1660412396530" string executeStatus; //"SUCCESS" AgvOutputItems_t outputItems; } #endregion #endregion #region AGV出料 //2.1 该信号在未收到装备允许的信号前会持续发送,频率为2秒⼀次 //Topic:iiot_tm_comm_control_down/tm/down/control/${portCode} #region AGV向装备出料请求 public class Request_AGV_PassOut_t { string things; AgvServiceOut_t service; string time; } public class AgvServiceOut_t { string callId; //"1660412396530" string identifier; //"control/outgoing" AgvInputItemsOut_t inputItems; } public class AgvInputItemsOut_t { string portCode; //接驳⼝编码 } #endregion //2.2 装备向AGV返回出料请求 //Topic:iiot_tm_comm_control_up/tm/up/control/agv #region 装备向AGV返回出料请求 public class Response_AGV_PassOut_t { string time; string things; AgvResponseServiceOut_t service; } public class AgvResponseServiceOut_t { string identifier; //"control/outgoing" string callId; //"1660412396530" string executeStatus; //"SUCCESS" AgvOutItemsOut_t outputItems; } public class AgvOutItemsOut_t { string portCode; //接驳⼝编码 string message; //"agree" or "refuse" } #endregion //2.3 AGV向装备发送出料完成 //Topic:iiot_tm_comm_control_down/tm/down/control/${portCode} #region AGV向装备发送出料完成 public class Request_AGV_PassOutFinish_t { string things; AgvRequestServiceOutFinish_t service; string time; } public class AgvRequestServiceOutFinish_t { string callId; //"1660412396530" string identifier; //"control/outgoing/finish" AgvInputItemsOutFin_t inputItems; } public class AgvInputItemsOutFin_t { string portCode; //接驳⼝编码 } #endregion //2.4 装备向AGV返回出料完成 //Topic:iiot_tm_comm_control_up/tm/up/control/agv #region AGV向装备发送出料完成 public class Response_AGV_PassOutFinish_t { string time; string things; AgvResponseServiceOutFinish_t service; } public class AgvResponseServiceOutFinish_t { string identifier; //"control/outgoing/finish" string callId; //"1660412396530" string executeStatus; //"SUCCESS" AgvOutputItemsOutFin_t outputItems; } public class AgvOutputItemsOutFin_t { string portCode; //接驳⼝编码 } #endregion #endregion } }