Commit 04c6d1f4 张东亮

料架缓存问题优化

1 个父辈 1a6e71f0
......@@ -197,6 +197,20 @@ namespace DeviceLibrary
try
{
AgvInfo agv = AGVManager.agvInfo[i];
//if (agv.CurJob == null)
//{
// Job job = GetJob(agv);
// if (job != null)
// {
// agv.CurJob = job;
// }
//}
//else
//{
// agv.CurJob = agv.CurJob.Execute(agv);
//}
if (!agv.IsCon) continue; //AGV网络连接
if (!AGVManager.agvInfo[i].Auto) continue; //AGV是否可用
if (AGVManager.agvInfo[i].StateID.Equals(eAGVState.Error))
......
......@@ -582,7 +582,7 @@ namespace DeviceLibrary
if (agv.TaskRunState.CheckTaskFinished(agv.Name))
{
//设置任务状态为料架换缓存
MissionManager.SetMissionState(JobParam.GetMissionInfo().missionId, service.model.MissionState.料架缓存, out string msg);
MissionManager.SetMissionState(JobParam.GetMissionInfo().missionId, service.model.MissionState.料架缓存_返回, out string msg);
ResetMissionOccupiedAgv(JobParam.GetMissionInfo());
//执行取空成品任务
Node src = manager.NodeManager.GetNode(SettingString.LIFT_D2, NodeType.Lift);
......
......@@ -18,8 +18,8 @@ namespace DeviceLibrary.bean.jobType
{
public override Job GetNewJob(AgvInfo agv)
{
if (!agv.IsIdle())
return null;
//if (!agv.IsIdle())
// return null;
if (LiftContext.CheckHasEmptyFinished(agv, SettingString.LIFT_D2, out LiftStatus liftStatus))
return null;
service.model.MissionInfo missionInfo = manager.MissionManager.BuffToLiftMission(agv);
......@@ -39,11 +39,7 @@ namespace DeviceLibrary.bean.jobType
Common.LogUtil.error($"无法生成任务,电梯不存在:{missionInfo.liftName}");
return null;
}
//if (TargetIsOccupied(agv, missionInfo.liftName))
//{
// return null;
//}
if (missionInfo.state.Equals(MissionState.前往电梯))
if (missionInfo.state.Equals(MissionState.料架缓存))
{
JobParam jobParam = new JobParam(src, dest, null, missionInfo);
MissionManager.SetMissionOccupied(missionInfo, agv);
......@@ -58,12 +54,12 @@ namespace DeviceLibrary.bean.jobType
else
return new LineToLiftJob(jobParam);
}
else if (missionInfo.state.Equals(MissionState.返回电梯))
else if (missionInfo.state.Equals(MissionState.料架缓存_返回))
{
JobParam jobParam = new JobParam(dest, src, null, missionInfo);
MissionManager.SetMissionOccupied(missionInfo, agv);
LiftToLinesJob job = new LiftToLinesJob(jobParam);
job.JobRunStep.ToNextStep(RunStep.SD_LiftToLine_11_BackToLift);
job.JobRunStep.ToNextStep(RunStep.SD_LiftToLine_11_BackToLift);
LiftContext.SetLiftNodeOccupied(agv, dest.Name);
return job;
}
......
......@@ -279,7 +279,7 @@ namespace DeviceLibrary.manager
var missions = GetMissionInfos().Where(w => w.state != MissionState.中止
&& w.state != MissionState.取消 && w.state != MissionState.完成).ToList();
missionInfo = missions.Find(s => (s.state.Equals(MissionState.料架缓存) &&
missionInfo = missions.Find(s => ((s.state.Equals(MissionState.料架缓存) || s.state.Equals(MissionState.料架缓存_返回)) &&
agv.Scope.Tasks.Contains(s.projectType.ToString())
));
if (missionInfo != null && AgvCanGetMission(missionInfo))
......
......@@ -223,7 +223,8 @@ namespace DeviceLibrary.service.model
/// </summary>
完成,
等待成品回收,
料架缓存
料架缓存,
料架缓存_返回
}
/// <summary>
/// 项目类型
......
支持 Markdown 格式
你添加了 0 到此讨论。请谨慎行事。
Finish editing this message first!