Commit d8108e54 张东亮

风林门内返回充电不开门

1 个父辈 95a7f760
...@@ -17,6 +17,7 @@ namespace DeviceLibrary.bean ...@@ -17,6 +17,7 @@ namespace DeviceLibrary.bean
#endregion #endregion
#region 充电任务 #region 充电任务
CHARGE_OUTAIR,
/// <summary> /// <summary>
/// 等待AGV到达充电位 /// 等待AGV到达充电位
/// </summary> /// </summary>
......
using Common; using Common;
using DeviceLibrary.bean; using DeviceLibrary.bean;
using DeviceLibrary.manager;
using System.Runtime.ConstrainedExecution;
namespace DeviceLibrary namespace DeviceLibrary
{ {
/// <summary> /// <summary>
...@@ -24,12 +27,25 @@ namespace DeviceLibrary ...@@ -24,12 +27,25 @@ namespace DeviceLibrary
/// <param name="agv"></param> /// <param name="agv"></param>
public override Job Run(AgvInfo agv) public override Job Run(AgvInfo agv)
{ {
Job job = this;
agv.SetJobContext(new bean.agv.JobContext() agv.SetJobContext(new bean.agv.JobContext()
{ {
}); });
if (JobRunStep.IsStep(RunStep.NONE)) if (JobRunStep.IsStep(RunStep.NONE))
{ {
ClearLiftNodeOccupied(agv); ClearLiftNodeOccupied(agv);
if (NodeManager.linesInAirShower[agv.Scope.Workshop].Contains(JobParam.SrcNode.Name))
{
JobParam.CrossDoor.CurNode = JobParam.SrcNode;
JobParam.CrossDoor.NextNode = JobParam.CurTargetNode;
JobParam.CrossDoor.IsIn = false;
JobParam.CrossDoor.IsAir = true;
GenJobCallBack(this.GetType(), RunStep.CHARGE_OUTAIR, JobParam);
job = new CrossDoorJob(JobParam);
}
}
else if(JobRunStep.IsStep(RunStep.CHARGE_OUTAIR))
{
if (!ChargePileManager.HasEmpty(agv, out ChargePile charge)) if (!ChargePileManager.HasEmpty(agv, out ChargePile charge))
{ {
runInfo = $"无空闲充电桩,从" + JobParam.SrcNode + "回到待机位"; runInfo = $"无空闲充电桩,从" + JobParam.SrcNode + "回到待机位";
...@@ -68,7 +84,7 @@ namespace DeviceLibrary ...@@ -68,7 +84,7 @@ namespace DeviceLibrary
} }
else if (agv.Battery >= BatteryMin) else if (agv.Battery >= BatteryMin)
{ {
Job job = AGVManager.control.GetJob(agv); job = AGVManager.control.GetJob(agv);
if (job != null && ((job is ChargeJob) || (job is StandyJob))) if (job != null && ((job is ChargeJob) || (job is StandyJob)))
{ {
} }
...@@ -97,7 +113,7 @@ namespace DeviceLibrary ...@@ -97,7 +113,7 @@ namespace DeviceLibrary
} }
else if (agv.Battery >= ChargePileManager.GetChargePiles().BatteryMin) else if (agv.Battery >= ChargePileManager.GetChargePiles().BatteryMin)
{ {
Job job = AGVManager.control.GetJob(agv); job = AGVManager.control.GetJob(agv);
if (job != null && ((job is ChargeJob) || (job is StandyJob))) if (job != null && ((job is ChargeJob) || (job is StandyJob)))
{ {
} }
...@@ -119,7 +135,7 @@ namespace DeviceLibrary ...@@ -119,7 +135,7 @@ namespace DeviceLibrary
JobRunStep.EndJob(); JobRunStep.EndJob();
return null; return null;
} }
return this; return job;
} }
/// <summary> /// <summary>
......
...@@ -205,7 +205,7 @@ namespace DeviceLibrary.manager ...@@ -205,7 +205,7 @@ namespace DeviceLibrary.manager
/// key:车间名 /// key:车间名
/// val:线体名 /// val:线体名
/// </summary> /// </summary>
static Dictionary<string, List<string>> linesInAirShower = new Dictionary<string, List<string>>(); public static Dictionary<string, List<string>> linesInAirShower = new Dictionary<string, List<string>>();
static void InitLinesInAirShower() static void InitLinesInAirShower()
{ {
//添加3D的 //添加3D的
......
支持 Markdown 格式
你添加了 0 到此讨论。请谨慎行事。
Finish editing this message first!